Sommaire |
On me voit, on ne me voit plus... Lorsque je suis ici, je suis peut-être là, mais lorsque je ne suis pas là, je ne suis probablement plus ici.
Au passage d'un mouvement devant un capteur, un signal retentit mais sans aucun mouvement devant le capteur, aucun signal ne retentit.
int sonPin = 12; int inputPin = 2; // Pin d'entrée choisie pour surveiller le senseur PIR int pirMotionState = LOW; // Pour commencer, nous considérons qu'il n'y a pas de nouvement int val = 0; // Variable utilisée pour lire l'entrée Pin 2 (valeur du PIR) void setup() { pinMode(sonPin, OUTPUT); // déclarer le son comme sortie pinMode(inputPin, INPUT); // déclarer le senseur comme entrée Serial.begin(9600); } void loop(){ val = digitalRead(inputPin); // Lire la valeur d'entrée if (val == HIGH) { // Vérifier si l'entrée est HIGH tone(12,440);// Allumer le son (activité PIR) if (pirMotionState == LOW) { // Si l'état du PIR est LOW, comme nous venons de détecter un mouvement // nous changeons l'état pirMotionState à HIGH (mouvement détecté) Serial.println("Mouvement détecté!"); // Nous affichons le message seulement quand la sortie change pirMotionState = HIGH; } } else { noTone(12); // Eteindre la LED (plus d'activité PIR) if (pirMotionState == HIGH){ // Si l'état PIR est HIGH (mouvement détecté) et que la sortie du PIR // passe à LOW, c'est que le mouvement a cessé ! Serial.println("Mouvement terminé!"); // Nous affichons le message que pour le changement d'état (détection mouvement) pirMotionState = LOW; } } }
On entend un signal lorsqu’un mouvement s’effectue devant le capteur.
De manière simple, le capteur envoie un signal électrique par son fil jaune si jamais il détecte un mouvement. L’arduino capte ce signal et l’interprète grâce au code. L’arduino envoie ensuite un signal spécifique au buzzer pour que celui-ci sonne.
Allons plus loin :
La ligne de code qui capte le signal envoyé par le capteur est celle-ci
if (val == HIGH) {
Le « if », « si » en français, ce qu’on appelle une boucle débute si la condition dans les parenthèses, en l’occurrence, « val » est égale à « HIGH », est vraie alors on rentre dans les guillemets, dans la boucle. Cela se traduit en français par : Si le signal délivré par le capteur (val) est envoyé, alors on entre dans la boucle.
Peut servir d’alarme lorsque l’on n’est pas chez soi. Nous pouvons aussi dériver cette application pour allumer une lumière lorsque l’on rentre dans une pièce (même principe utilisant les capteurs). Application pour la domotique.
A l'intérieur, sur une table pour pouvoir étaler son matériel.
© Graphisme : Les Petits Débrouillards Grand Ouest (Patrice Guinche - Jessica Romero) | Développement web : Libre Informatique