DOIF und resetwait beim Bewegungsmelder innen (HM-SEC-MDIR-2)

Begonnen von perseusarm, 06 Juli 2016, 00:54:30

Vorheriges Thema - Nächstes Thema

perseusarm

Hallo zusammen,

ich versuche jetzt schon seit ein paar Tagen mein Flurlicht per Bewegungsmelder zwischen twilight:ss_weather und twilight:sr_indoor zu schalten. Dazu habe ich folgenden DOIF angelegt:

define di_FlurUntenLichtAn DOIF ([[LichtWetter:ss_weather]-[LichtWetter:sr_indoor]] and [BMFlurUnten:"motion"] and [WZ_WifiLight:state] ne "on") (set WZ_WifiLight on)(set WZ_WifiLight off)
attr di_FlurUntenLichtAn do resetwait
attr di_FlurUntenLichtAn wait 0,60


Das funktioniert auch alles sehr gut, außer das die Nachbildung eines on-for-timer wie in der commandref beschrieben nicht funktioniert. Nach 60 Sekunden wird das Licht immer ausgeschaltet und erst wieder an wenn eine weitere "motion" erkannt wird. U.u kann das aber bis zu 15 Sekunden dauern und meine Frau steht 15 Sekunden lang mit dem Wäschekorb in den Armen im Dunklen was bedeutet das der WAF dann aber gegen 0 strebt...    :o

Zitat
Die Nachbildung eines on-for-timers lässt sich wie folgt realisieren:
define di_on_for_timer ([detector:"motion"])
(set light on)
(set light off)
attr di_on_for_timer do resetwait
attr di_on_for_timer wait 0,30
Hiermit wird das Licht bei Bewegung eingeschaltet. Dabei wird, solange es brennt, bei jeder Bewegung die Ausschaltzeit neu auf 30 Sekunden gesetzt, "set light on" wird dabei nicht unnötig wiederholt.

Was habe ich denn falsch gemacht ?
FHEM auf NUC, CUL866, HM-.*, Raspimatc, ...

Ellert


perseusarm

#2
TimerWithWait habe ich jetzt mal auf 1 gestellt, das Verhalten ist aber das gleiche.
Hier nochal meine Konfig: Vielleicht kann einer der Experten mal drüber schauen, denn ich bin da noch schwer am lernen.

Vielen Dank schonmal.

define di_FlurUntenLichtAn DOIF ([[LichtWetter:ss_weather]-[LichtWetter:sr_indoor]] and [BMFlurUnten:"motion:.on*"] and [WZ_WifiLight:state] ne "on") (set WZ_WifiLight on)(set WZ_WifiLight off)
attr di_FlurUntenLichtAn do resetwait
attr di_FlurUntenLichtAn timerWithWait 1
attr di_FlurUntenLichtAn wait 0,20
attr di_FlurUntenLichtAn room Flur


Ich hatte auch schon

attr di_FlurUntenLichtAn do resetwait


Hat aber leider auch nichts gebracht.

Vielleicht kann einer der Experten mal drüber schauen, denn ich bin da noch schwer mal lernen.

Vielen Dank schonmal.
FHEM auf NUC, CUL866, HM-.*, Raspimatc, ...

automatisierer

[WZ_WifiLight:state] ne "on"

das bewirkt, das das DOIF erst wieder getriggert wird, wenn die lampe 'off' ist. Somit wird das wait auch bei 'motion' nicht resettet.

perseusarm

 :) :D ;D
Funktioniert, viiiielen Dank für die Hilfe.

Wenn man mal so richtig drüber nachdenkt (das hätte ich vorher mal machen sollen  :-[) ist´s auch logisch.
FHEM auf NUC, CUL866, HM-.*, Raspimatc, ...