int buttonZaehler = 0; int letzterStatus = 0; int Schalterzustand = 0; int licht; int alarmLED = 13; // Blinker LED int alarmLED2 = 14; // Blinker LED int alarmLED3 = 27; // Blinker LED int alarmLED4 = 26; // Blinker LED int alarmBuzzer = 2; // Pin des Lautsprechers int bewegungssensor = 15; //Pin des Infrarotsensors int bewegungsStatus = 0; /* In der Variable wird gespeichert, ob eine Bewegung erkannt wird oder nicht*/ void setup() { pinMode(22, INPUT); // Eingang Schalter pinMode(13, OUTPUT); // Blinker LED Ausgang pinMode(14, OUTPUT); // Blinker LED Ausgang pinMode(27, OUTPUT); // Blinker LED Ausgang pinMode(26, OUTPUT); // Blinker LED Ausgang pinMode(17, OUTPUT); // Tagfahrlicht LED pinMode(25, OUTPUT); // Tagfahrlicht LED pinMode(33, OUTPUT); // Tagfahrlicht LED pinMode(32, OUTPUT); // Tagfahrlicht LED pinMode(2, OUTPUT); // alarmBuzzer ist ein Ausgang pinMode(15, INPUT);// bewegungssensor ist ein Eingang Serial.begin(9600); } void loop() { Schalterzustand = digitalRead(22); if (Schalterzustand != letzterStatus) { if (Schalterzustand == 1) { buttonZaehler++; } } if (buttonZaehler % 2 == 0) { buttonZaehler = 0; } letzterStatus = Schalterzustand; Serial.println(buttonZaehler); licht = analogRead(4); Serial.println(licht); if (licht < 3500) { digitalWrite(17, HIGH); digitalWrite(25, HIGH); digitalWrite(33, HIGH); digitalWrite(32, HIGH); } else { digitalWrite(17, LOW); digitalWrite(25, LOW); digitalWrite(33, LOW); digitalWrite(32, LOW); } if (buttonZaehler == 1) { Alarm(); // Funktionsaufruf } void Alarm () // diese Methode beinhaltet das Auslesen des Bewegungsstatuses und die akustischen Alarmausgabe { bewegungsStatus = digitalRead(bewegungssensor); /* Hier wird der bewegungssensorPin ausgelesen und anschließend in der Variable bewegungsStatus gespeichert*/ if (bewegungsStatus == HIGH) // Wenn eine Bewegung erkannt wird, wird der Block ausgeführt { Serial.println("Alarm"); for (int i = 0; i < 5 ; i++) // Die Schleife wird 5 mal ausgeführt { digitalWrite(alarmLED, HIGH); // Blinker LED an digitalWrite(alarmLED2, HIGH); // Blinker LED an digitalWrite(alarmLED3, HIGH); // Blinker LED an digitalWrite(alarmLED4, HIGH); // Blinker LED an digitalWrite(alarmBuzzer, HIGH); // Alarmton an delay(500); // Eine halbe Sekunde ist Alarm an digitalWrite (alarmLED, LOW); // Blinker LED aus digitalWrite (alarmLED2, LOW); // Blinker LED aus digitalWrite (alarmLED3, LOW); // Blinker LED aus digitalWrite (alarmLED4, LOW); // Blinker LED aus digitalWrite (alarmBuzzer, LOW); // Blinker LED aus delay(500); // für eine halbe Sekunde ist Alarm aus } } }