plus d'infos sur la notice du composant.
Pour utiliser le détecteur de mouvement il n'y a besoin d'aucunes bibliothèques car le capteur ne renvoie que deux état :
Attention, la détection peut prendre du temps car il y a une temporisation (le capteur à besoin de chauffer d'une part et lorsqu'il capte un mouvement, il reste un certain temps en état haut d'autre part.).
| Motion Sensor HC SR-501 | ||
| Avant le Setup | Importation de la bibliothèque | Aucunes bibliothèques |
| Création de l’objet | #define pirPin <numéro de broche>; // je défini la broche
int val = LOW; bool motionState = false; | |
| Dans le Setup | Démarrage de l’objet | pinMode(pirPin, INPUT); |
| Dans le Loop | Utilisation | val = digitalRead(pirPin);
if (motionState == false) |
Aucune autres fonctionnalités
#define brocheCapteur 2
int val = LOW;
bool etatDetection = false;
void setup() {
Serial.begin(9600);
pinMode(brocheCapteur, INPUT);
}
void loop() {
// la variable etatDetection sert à éviter de "trop boucler".
// cela permet de ne pas écrire en boucle les infos dans le moniteur série.
// et au contraire de n'écrire que lorsqu'il y a un changement d'état de "détecté" à "non détecté"
val = digitalRead(brocheCapteur);
if (val == HIGH) {
if (etatDetection == false) {
Serial.println("Mouvement détecté !");
etatDetection = true;
}
} else if (val == LOW) {
if (etatDetection == true) {
Serial.println("Mouvement non détecté !");
etatDetection = false;
}
}
}Item-Motion_Sensor_HC-SR501_motion_sensor_hc_sr-501.jpg Published
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #