0% ont trouvé ce document utile (0 vote)
11 vues9 pages

Arduino

Transféré par

ada
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
11 vues9 pages

Arduino

Transféré par

ada
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

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é


}

Vous aimerez peut-être aussi