Bonjour!!
J'essaye de fabriquer un petit système du style iris avec un servo 180 pour protéger l'objectif d'une caméra. Le clapet sur le palonnier se déplace a 90° et est actionné à l'aide d'un capteur de proximité (poussoir de test dans mon code).
Pas de problème pour mettre en place le servo et le capteur par contre je bloque sur la la mise en place d'une pause de la position servo lorsque le capteur est actif.
Je ne sais pas si je suis sur la bonne voie en tentant un retour?
#include <Servo.h>
int pinBouton;
const int Led = 4;
Servo clapet;
void setup() {
Serial.begin(9600);
pinBouton = 2;
pinMode(pinBouton, INPUT);
pinMode(Led, OUTPUT); // led témoin
}
void loop() {
boolean etatBouton = digitalRead(pinBouton);
if (etatBouton==HIGH)
{
Serial.println("ok");
digitalWrite(Led, LOW); // led de test
moteur();
}
else {
Serial.println("stop");
digitalWrite(Led, HIGH); //allumer L1
moteur2();
}
}
void moteur(){
clapet.attach(9);
int pos = 0;
for (pos = 0; pos <= 60; pos += 1) {
clapet.write(pos);
delay(15);
}
}
// retour du servo
void moteur2(){
clapet.attach(9);
int pos = 0;
for (pos = 60; pos >= 0; pos -= 1) {
clapet.write(pos);
delay(70);
}
}