#include <Servo.h>
// Définir les broches pour le capteur ultrasonique
const int trigPin = 5;
const int echoPin = 6;
// Définir la broche pour le servomoteur
const int servoPin = 9;
// Créer un objet Servo
Servo myServo;
void setup() {
// Initialiser les broches du capteur ultrasonique
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
// Attacher le servomoteur à la broche
myServo.attach(servoPin);
// Initialiser la communication série (pour le débogage)
Serial.begin(9600);
}
void loop() {
// Mesurer la distance avec le capteur ultrasonique
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2; // Convertir en cm
// Afficher la distance sur le moniteur série
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
// Contrôler le servomoteur en fonction de la distance
if (distance < 20) {
myServo.write(0); // Déplacer le servomoteur à 0 degré
} else if (distance < 30) {
myServo.write(90); // Déplacer le servomoteur à 90 degrés
} else {
myServo.write(180); // Déplacer le servomoteur à 180 degrés
}
// Attendre 1 seconde avant la prochaine mesure
delay(1000);
}