Bonjour, j'ai un petit problème avec arduino sur un code pour un servomoteur, je m'explique, je dois faire en sorte d'orienter mon servomoteur pour 3 positions prédéfinis (40°,90°,130°) en fonction de 2 capteurs qui remplissent 180° (1 seul capteurs détecté et l autre non = 40°, les 2 détectent = 90°, si seulement l'autre détecte = 130°),mais hélas lorsque je me renseigne sur les forums, je ne trouve que une position fixe initiale prédéfini ou un balayage de 0° à 180°.
int button0 = 7; // broche 7
int button1 = 6; // broche 6
int button0State = 0; // on initialise l'état de nos capteurs (en attente)
int button1State = 0; // on initialise l'état de nos capteurs (en attente)
#include <Servo.h> // on inclue la bibliotech du servomoteur
Servo monServo; // on définit le nomp du servomoteur pour la suite du programme
// on définit la première position du servomoteur comme l'angle 0
int position = 90;
int position2 = 40;
int position3 = 90;
int position4 = 130;
void setup()
{
monServo.attach(9); // attache le servo au pin spécifié sur l'objet myservo
monServo.write(position);
Serial.begin(9600);
while(!Serial)
pinMode(button0, INPUT);
Serial.begin(9600);
pinMode(button1, INPUT);
Serial.begin(9600);
}
void loop()
{
if ((button0State == HIGH)&& (button1State == LOW))
{
(Serial.println("Présence détectée en A")) ;
monServo.write(position2);
delay(200);
}
if ((button0State == LOW) && (button1State == HIGH))
{
Serial.println("Présence détectée en B");
monServo.write(position4);
delay(200);
}
if ((button0State == HIGH) && (button1State == HIGH))
{
Serial.println("Présence détectée en A et B");
monServo.write(position3);
delay(200);
}
}
J'aimerais savoir si il existe une commande qui permettrait cela, Merci.