Wie kann man einen Sensor LDR mit einem Code aktivieren?
Hallo ich wollte mit dem Arduino UNO R3 eine Alarmanlage programmieren und ich habe jetzt das Problem, dass ich nicht weiß wie ich mit einem Tastenfeld 4x4 und einem Code dafür den LDR quasi aktiviert. Also das am dem Moment wo der Code eingegeben wurde die Werte vom LDR erkannt werden und bei einer Veränderung einen Lautsprecher und eine LED aktiviert
1 Antwort
Nun, das Tastenfeld musst Du einlesen und den Code speichern, wenn die Zahlenfolge stimmt, einfach eine variable setzen, die den Aktivstatus speichert. Ich würde auch eine Zeitüberwachung einbauen (kein Delay verwenden, sondern millis() ) um einen angefangene Eingabe nach xsek des letzten Tastendruckes wieder zu resetten. genauso würde ich zu dem Code eine Aktivierungstaste und eine Deaktivierungstaste vorsehen.. Also wenn der Code *xxxx ist aktivieren, #xxxx deaktiviert die Anlage, oder * und # am Ende ect... A-D geht auch... Dann kann man * zur Statusabfrage nutzen, und # zum abbrechen/reset, wenn man sich vertippt hat, oder so ähnlich... Nur als Beispiel/Denkanstoß. Das ganze ist natürlich nicht mit ein paar Zeilen getan.
Die Variable dient dann dazu, über eine If-Abfrage den LDR zu überwachen. Dies geschieht ja mit einem Spannungsteiler und Analogmesswert, oder du hast eine klassische Lichtschranke, die einfach meldet, wenn kein Licht mehr auf den LDR trifft (je nach ausführung). Dann wäre es ein digitales Signal. Bei analoger Messwerterfassung kannst Du einfach hingehen, den gelesenen Wert speichern und mit einem Referenzwert vergleichen. Gibt es eine Abweichung <> xxx dann reagierst Du drauf.Den Referenzwert kannst Du ggf nachführen, um immer eine aktuelle Ausgangssituation zu haben. So werden schleichende Änderungen durch z.B. Umgebungslicht (Tag/Nacht) berücksichtigt und führen nicht zur Auslösung, sondern nur plötzliche/starke Änderungen...