Situation :
"Contrôle d'une porte automatique"
Tu vas créer un système de porte automatique qui fonctionne avec un servomoteur pour
ouvrir et fermer la porte, un bouton poussoir pour l'actionner, et une LED pour indiquer
l'état de la porte.
Comportement attendu :
1. Lorsque tu appuies sur le bouton poussoir :
○ La LED s’allume pendant 2 secondes pour indiquer que la porte va s'ouvrir.
○ Ensuite, le servomoteur ouvre la porte (tournant à 90°).
○ Après 5 secondes, la porte se ferme (servomoteur retourne à 0°), et la LED
s'éteint.
2. Lorsque la porte est ouverte :
○ La LED reste allumée pour indiquer que la porte est en position ouverte.
code:
#include <Servo.h>>
Servo louz;
void setup() {
pinMode(3, OUTPUT);
pinMode(2, INPUT);
[Link](9);
}
void loop() {
if(digitalRead(2)==LOW){
digitalWrite(3, HIGH);
delay(2000);
[Link](90);
delay(5000);
[Link](0);
digitalWrite(3, LOW);
}
}
#include <Servo.h>
Servo monServo;
const int potPin = A0; // Broche analogique du potentiomètre
void setup() {
[Link](9); // Le servo est connecté à la pin 9
[Link](9600); // Initialiser la communication série
}
void loop() {
int val = analogRead(potPin); // Lire la valeur du potentiomètre (0 à 1023)
int pulseWidth = map(val, 0, 1023, 1000, 2000); // Convertir en largeur d'impulsion (µs)
[Link](pulseWidth); // Contrôler le servo avec précision
[Link]("Largeur d'impulsion: ");
[Link](pulseWidth);
[Link](" us");
delay(100); // Petite pause pour lisibilité
}