|
123456789101112131415161718192021222324252627282930313233343536 |
- //HC-SR501 als Bewegungsmelder, vergleicht alten PIR-wert mit neuem PIR-wert und lässt bei HIGH Phase LED leuchten
- //Einstellung *repeatable Trigger||single Trigger* hier egal
- //Single Trigger:Bei Bewegung läuft ein festgelegtes Zeitfenster HIGH ab (LINKER POTI, 3sec bis 5min)
- //Repeatable Trigger: Bei Bewegung läuft HIGH Zeitfester ab, wenn darin wieder Bewegung erkannt wird, wird das zeitfenster wieder neu gestartet und verlängert.
- //Nach diesen HIGH signal folgt in beiden fällen ein 3 sekündiges LOW Fenster, hier wird keine bewegung erkannt
-
- int ledPin = D1; // LED on Pin 13 of Arduino
- int pirPin = D0; // Input for HC-S501
-
- int pirValueNeu; // Place to read PIR Value
- int pirValueAlt = 0; //Place to store read PIR Value
-
-
- void setup() {
- Serial.begin(9600);
- pinMode(ledPin, OUTPUT);
- pinMode(pirPin, INPUT);
- digitalWrite(ledPin, LOW);
- }
-
- void loop() {
- pirValueNeu = digitalRead(pirPin);
-
- if(pirValueNeu != pirValueAlt){
- if(pirValueNeu==1){
- Serial.println("Motion! Level:HIGH");
- }
- else{
- //Serial.println("Ruhemodus 3 Sekunden! Level:LOW");
- //delay(3000);
- Serial.println("No motion so far! Level:LOW");
- }
- }
- digitalWrite(ledPin, pirValueNeu);
- pirValueAlt=pirValueNeu;
- }
|