projet pince index-pouce

Bonjour,
Je suis en classe de spécialité SI en 1ère et nous devons réaliser une pince avec deux doigts articulés (pouce et index) lors d'un projet. Cela fait bien trop longtemps que je patauge et j'ai donc décidé de vous demander de l'aide. Le but est de pouvoir prendre et tenir des gobelets par la pince. Nous avons pour cela des boutons poussoirs pour commander le serrage des doigts (avec la Covid, on a pas le temps pour utiliser une commande vocale). Le programme doit donc permettre à l'appui de l'un ou de l'autre bouton le serrage plus ou moins important de la pince suivant la taille du gobelet (les boutons disent au programme la taille du gobelet). La pince est également sensé serrer, grâce à un capteur de force, le gobelet pour le déformer de 10% mais bon, ça, on a pas réussi à trouver les valeurs. En conséquence, nous ne pouvons pas encore faire cette partie là du programme. Cependant, je comprend pas comment faire et pourquoi il ne fonctionne pas déjà, mon cerveau refuse de comprendre ! Mon programme est donc le suivant :

#include <Servo.h>
#define br_BP 4
#define br_BPpetit 3
const int impulsion_init = 2200;
const int angle_diametre_gobelet = 34.2;
const int angle_diametre_gobelet_petit = 40.2;
boolean etat_BP;
int impulsion;
boolean etat_BPpetit;

Servo mon_servo;

void setup() {
Serial.begin(9600);
mon_servo.attach(2);
pinMode(br_BP,INPUT);
pinMode(br_BPpetit,INPUT);
mon_servo.xriteMicroseconds(impulsion_init);
}

void loop(){
etat_BP=digitalRead(br_BP);

 if(etat_BP==HIGH);
{
 impulsion=((angle_diametre_gobelet-193.31)/-0.0841);
 mon_servo.writeMicroseconds(impulsion);
}
 else (etat_BPpetit=digitalRead(br_BPpetit));
{
  if(etat_BPpetit==HIGH);
  {
   impulsion=((angle_diametre_gobelet_petit-193.31/-0.0841);
   mon_servo.writeMicroseconds(impulsion);
  }
  else
   mon_servo.writeMicroseconds(impulsion_init);
  }
}

Merci d'avance pour votre aide,
En vous souhaitant une bonne journée.

Mettre des nombres à virgules dans des entiers ça ne va pas être génial

Relisez comment on écrit un if/else et le rôle des accolades et de parenthèses

———— SVP ————
corrigez votre post précédent et rajoutez les balises de code autour du code:
[code]`` [color=blue]// votre code ici[/color] ``[/code].

ça doit ressembler à cela:// votre code ici
(faites aussi ctrl-T (PC) or cmd-T (Mac) dans l’IDE avant de copier le code pour qu’il soit indenté correctement)

(lisez les messages épinglés en haut du forum)

Merci de vos conseils, je vais tenter de les suivre !

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.