Capteur de stationnement : Lumières
Fait partie de la section Projets du Journey Arduino de Coddy. Leçon 10 sur 24.
Personne ne lit les nombres en se garant. Les trois LED transforment la distance en couleur : verte sur la broche 6 quand la voie est libre, jaune sur la broche 7 quand vous vous rapprochez, rouge sur la broche 13 quand vous devez vous arrêter.
Trois plages, et exactement une LED pour chacune. Une chaîne if / else if / else convient, car une seule de ses branches s’exécute :
if (cm >= 100) {
// vert
} else if (cm >= 30) {
// jaune : de 30 à 99
} else {
// rouge : moins de 30
}Le deuxième test n’a pas besoin d’indiquer cm < 100 : else signifie que le premier test était faux, donc la distance est déjà inférieure à 100.
Éteignez les trois LED avant d’en allumer une, comme avec le feu de circulation. Sinon, la jaune reste allumée quand la rouge s’allume.
Défi
FacileAffiche la distance avec une couleur :
- configure les broches 6, 7 et 13 en sorties
- 100 cm ou plus : vert uniquement
- de 30 à 99 cm : jaune uniquement
- moins de 30 cm : rouge uniquement
Continue d’afficher la distance. Appuie sur Exécuter, fais glisser la distance du capteur, puis appuie sur Vérifier.
Essayez vous-même
// Le capteur de distance
const int trigPin = 9;
const int echoPin = 10;
// Envoie une impulsion et renvoie la distance en cm.
long readDistance() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
return duration / 58;
}
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
}
void loop() {
long cm = readDistance();
Serial.println(cm);
delay(100);
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Projets
3Capteur de stationnement
Capteur de stationnement : DistanceCapteur de stationnement : LumièresCapteur de stationnement : BipsCapteur de stationnement : AffichageEntraînez-vous par vous-même : Playground Arduino