Bewegungsmelder mit Watchdog

Begonnen von johannes1984, 19 April 2015, 15:53:19

Vorheriges Thema - Nächstes Thema

johannes1984

Hallo,

ich habe mir folgenden Code zusammengebastelt, um einen LED Streifen einzuschalten, wenn eine Bewegung wahrgenommen wird. Durch den Watchdog bleibt, solange Bewegung da ist, das Licht auch an.

define SZ_Bett_Nachtlicht_An notify SZ_Bewegungsmelder:motion {if(!isday()){ fhem ("set SZ_LED_Bett HSV 46,57,99") }}

define WD_SZ_Bett_Nachtlicht_An watchdog SZ_Bewegungsmelder:motion 00:00:30 SAME set SZ_LED_Bett off ;; setstate WD_SZ_Bett_Nachtlicht_An defined


Was mich jedoch gestört hat, ist, dass der Watchdog ja immer ausgeführt wird, auch wenn das Licht garnicht angehen würde, weil es ja noch Tag ist. Nun war meine Überlegung, den Watchdog einfach in die if-Abfrage zu integrieren:

define SZ_Bett_Nachtlicht_An notify SZ_Bewegungsmelder:motion {if(!isday()){ fhem ("set SZ_LED_Bett HSV 46,57,99") ;; define WD_SZ_Bett_Nachtlicht_An watchdog SZ_Bewegungsmelder:motion 00:00:30 SAME set SZ_LED_Bett off ;; setstate WD_SZ_Bett_Nachtlicht_An defined }}

Fehlermeldungen gibt es keine, jedoch funktioniert es auch nicht mehr - heißt, das Licht geht garnicht erst an.

Was mache ich falsch?

LG Johannes
RPi Version B, HMLAN, ZWave USB Stick, CUL

flurin

Zitat von: johannes1984 am 19 April 2015, 15:53:19
Hallo,

ich habe mir folgenden Code zusammengebastelt, um einen LED Streifen einzuschalten, wenn eine Bewegung wahrgenommen wird. Durch den Watchdog bleibt, solange Bewegung da ist, das Licht auch an.

define SZ_Bett_Nachtlicht_An notify SZ_Bewegungsmelder:motion {if(!isday()){ fhem ("set SZ_LED_Bett HSV 46,57,99") }}

define WD_SZ_Bett_Nachtlicht_An watchdog SZ_Bewegungsmelder:motion 00:00:30 SAME set SZ_LED_Bett off ;; setstate WD_SZ_Bett_Nachtlicht_An defined


Was mich jedoch gestört hat, ist, dass der Watchdog ja immer ausgeführt wird, auch wenn das Licht garnicht angehen würde, weil es ja noch Tag ist. Nun war meine Überlegung, den Watchdog einfach in die if-Abfrage zu integrieren:

define SZ_Bett_Nachtlicht_An notify SZ_Bewegungsmelder:motion {if(!isday()){ fhem ("set SZ_LED_Bett HSV 46,57,99") ;; define WD_SZ_Bett_Nachtlicht_An watchdog SZ_Bewegungsmelder:motion 00:00:30 SAME set SZ_LED_Bett off ;; setstate WD_SZ_Bett_Nachtlicht_An defined }}

Fehlermeldungen gibt es keine, jedoch funktioniert es auch nicht mehr - heißt, das Licht geht garnicht erst an.

Was mache ich falsch?

LG Johannes

Vorschlag:


define du_motion dummy
attr du_motion setList on off


define n_motion notify SZ_Bewegungsmelder:motion {if (!isday()) {fhem("set du_motion on")}}


define SZ_Bett_Nachtlicht_An notify du_motion:on set SZ_LED_Bett HSV 46,57,99


define WD_SZ_Bett_Nachtlicht_An watchdog du_motion:on 00:00:30 SAME set SZ_LED_Bett off;; set du_motion off;; trigger WD_SZ_Bett_Nachtisch_An .


Gruss
flurin