Code produit: | HC-SR501 |
Dimensions : 3,2 cm x 2,4 cm x 1,8 cm (environ)
Capteur infrarouge avec carte de contrôle
La sensibilité et le temps de maintien peuvent être ajustés
Plage de tension de fonctionnement : CC 4,5 V- 20 V
Drain de courant :<60uA
Tension de sortie : signal de haut/bas niveau : sortie TTL 3,3 V
Distance de détection : 3--7M(réglable)
Plage de détection : <140°
Délais : 5-200S (peut être ajusté, 5 s par défaut +-3 %)
Temps de blocus : 2,5 S (par défaut)
Déclencheur : L : Déclencheur non répétitif H : Déclencheur de répétition (par défaut)
Température de travail : -20-+80 °C
Méthode de déclenchement : L trigger non-remplissable / H trigger repeatable
Dans votre IDE Arduino, saisir et téléverser :
//temps de calibration du capteur (10-60 secs selon la doc technique) int calibrationTime = 15; int ledPin = 13; // pin pour la led int pinCapteur = 7; // pin pour la sortie du capteur int pirState = LOW; // nous considérons le début sans mouvement int val = 0; // variable de lecture de pin void setup() { pinMode(ledPin, OUTPUT); pinMode(pinCapteur, INPUT); Serial.begin(9600); Serial.print("Calibration du capteur "); for(int i = 0; i < calibrationTime; i++){ Serial.print("."); delay(1000); } } void loop(){ val = digitalRead(pinCapteur); // lit la valeur du capteur Serial.println(val); if (val == HIGH) { // vérifie si il y a un mouvement digitalWrite(ledPin, HIGH); // allumage de la led delay(150); if (pirState == LOW) { // we have just turned on Serial.println("Mouvement détecté!"); //changement de l'état pirState = HIGH; } } else { digitalWrite(ledPin, LOW); // extinction de la led delay(300); if (pirState == HIGH){ Serial.println("Fin du mouvement!"); //changement de l'état pirState = LOW; } } }