Étape 7: Code
essentiellement lorsque le capteur est d’un an et demi mètre du mur, les servos devraient commencer à travailler
#define trigPin 12
#define echoPin #include 11
Servo servoOne ; Servo servoTwo ; Servo servoThree ; Servo servoFour ; void setup() {Serial.begin (9600); pinMode (trigPin, sortie); pinMode (echoPin, INPUT); servoOne.attach(3) ; servoTwo.attach(5) ; servoThree.attach(6) ; servoFour.attach(9);}
void loop() {int durée, distance, pos = 0, j’ai digitalWrite (trigPin, LOW); delayMicroseconds(2) ; digitalWrite (trigPin, HIGH); delayMicroseconds(10) ; digitalWrite (trigPin, LOW); durée = pulseIn (echoPin, HIGH); distance = (durée/2) / 29,1 ; Serial.Print(distance) ; Serial.println ("cm") ; if(distance<150) {servoOne.attach(3) ; servoTwo.attach(5) ; servoThree.attach(6) ; servoFour.attach(9) ; servoOne.write(180) ; servoTwo.write(180) ; servoThree.write(180) ; servoFour.write(180) ; delay(30000); / / / / servoOne.detach(); / / servoTwo.detach(); / / servoThree.detach(); / / servoFour.detach(); / / delay(2000) ; servoOne.write(0) ; servoTwo.write(0) ; servoThree.write(0) ; servoFour.write(0) ; delay(30000);} else {servoOne.detach() ; servoTwo.detach() ; servoThree.detach() ; servoFour.detach();} delay(100) ; }