Browse Source

Testcode für Bewegungsmelder HC-SR501

master
Johannes Krug 5 years ago
parent
commit
6091e42ecc
1 changed files with 36 additions and 0 deletions
  1. 36
    0
      arduino/Bewegungsmelder_HC-SR501/Bewegungsmelder_HC-SR501.ino

+ 36
- 0
arduino/Bewegungsmelder_HC-SR501/Bewegungsmelder_HC-SR501.ino View File

@@ -0,0 +1,36 @@
//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;
}

Loading…
Cancel
Save