Programmer une jauge de contrainte

Bonjour je suis en terminal Sti2d et j'ai pour projet de fin d'année de réaliser un coach connecté.

Je m'occupe de la partie concernant le pèse personne et malgrès les différent tests effectués rien ne marche. J'aurais vraiment besoin d'aide, j'ai a ma disposition une carte Arduino Uno, Un capteur différenciel groove V1.2 ainsi qu'une jauge de contrainte de 50 Kg. D'après mes professeurs les branchements sont bon j'aurais donc besoin d'aide sur la programmation.

Merci d'avance pour vos réponses.

et qu'avez vous fait comme code? (il doit y avoir 10000 tutos en lignes)

Dans ce cas, poste ton code et on t'aidera à le faire marcher...
Bien entendu, tu as déjà lu ceci...

J'ai déjà testé différents programmes voici le dernier que j'ai essayé :

int i;
int value;
float V,Vo,Vcal;
float Sum=0;

void setup()
{
Serial.begin(9600);
Serial.println("start");

//Calibration :
delay(3000);
Serial.println("Calibration");
for(i=0;i<50;i++)
{
  value=analogRead(0);
  V=value*5.00/1023;
  Sum+=V;
  delay(10);
  Vcal=Sum/50;
}

}

void loop()
{ 
float Sum=0;

for(i=0;i<50;i++)
{
  value=analogRead(0);
  V=value*5.00/1023;
  Sum+=V;
  delay(10);
}
Vo=Sum/50;
Vo=(Vo-Vcal);
Vo=Vo/0.50;
Serial.print("Mesure en Kg:");
Serial.println(Vo);
delay(1000);
}

pourquoi dans la calibration vous effectuez la moyenne au sein de la boucle for ?

for(i=0;i<50;i++)
{
  value=analogRead(0);
  V=value*5.00/1023;
  Sum+=V;
  delay(10);
  Vcal=Sum/50; // <<==== ??????????????????
}

devrait être simplement

  for (byte i = 0; i < 50; i++)
  {
    Sum += analogRead(0) * 5.00 / 1023;
    delay(10);
  }
  Vcal = Sum / 50.0;

faites le ménage dans vos variables, il y a Sum qui est à la fois globale et locale... en pratique seule la valeur de calibration devrait être globale, vous pouvez dégager les autres

au lieu de diviser par 0.5, multipliez par 2.

J'ai modifié ce que vous m'avez dis de modifier mais ça ne marche toujours pas, la valeur ne varie pas lorsque je l'utilise ...

int i;
  int value;
  float V,Vo,Vcal;
  float Sum=0;

void setup()
{
  Serial.begin(9600);
  Serial.println("start");
  
  //Calibration :
  delay(3000);
  Serial.println("Calibration");
      for (byte i = 0; i < 50; i++)
  {
    Sum += analogRead(0) * 5.00 / 1023;
    delay(10);
  }
  Vcal = Sum / 50.0;
  }

void loop()
{ 
  float Sum=0;

  for(i=0;i<50;i++)
  {
    value=analogRead(0);
    V=value*5.00/1023;
    Sum+=V;
    delay(10);
  }
  Vo=Sum/50;
  Vo=(Vo-Vcal);
  Vo=Vo*2;
  Serial.print("Mesure en Kg:");
  Serial.println(Vo);
  delay(1000);
}

c'est un torchon non indenté, il y a des variables portant le même nom en global et local... je ne peux pas lire cela... désolé.. appuyez sur ctrl-T dans l'IDE et modifiez votre post pour avoir du code proprement aligné et des variables correctement définies. seule Vcal doit être globale;

Pourquoi la seconde boucle for ne ressemble pas à la première ?

vous devriez commencer déjà par afficher ce que retourne la lecture analogique de A0 pour voir si ça varie en fonction de l'appui sur le capteur..