FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: zgadgeter am 14 Oktober 2018, 13:34:13

Titel: Solved: DOIF Licht mit sensor / sunset
Beitrag von: zgadgeter am 14 Oktober 2018, 13:34:13
Hallo, probiere gerade ein Licht zu shalten mit einem Sensor...komme aber nicht ganz weiter. Das Licht soll bei Sunset und wenn der Sensor "motion" meldet, an bleiben. Und zwar fuer mindestens 5 Minuten. Danach, wenn der Sensor kein "motion" mehr hat soll das Licht aus gehen. Ich habe folgendes probiert:

defmod Kitchenlighton DOIF ([kitchensensor:"motion"] and [(sunset()]) (set sonoffs20_2 on-for-timer 300) DOELSE (set sonoffs20_2 off)
attr Kitchenlighton devStateIcon cmd_1:general_an:cmd_2 cmd_2|initialized:general_aus:cmd_1
attr Kitchenlighton do always


Das Licht geht an, und nach der Zeit auch aus wenn kein motion da ist. Allerdings wenn das Licht an war (also motion hat getriggered), zwischendurch kein motion da war, und dann wieder motion da war, geht es trotzdem aus wenn die 5 Minuten vorbei sind.
Was ich möchte ist das der timer sich wiederholt wenn innerhalb den 5 Minuten motion da war. Bin dankbar für Tipps...
Titel: Antw:DOIF Licht mit sensor / sunset
Beitrag von: Otto123 am 14 Oktober 2018, 13:43:09
Hi,

vielleicht hilft Dir mein Flurlicht:
defmod di_Flurlicht DOIF ([PIR1:"motion:.on"] and ([?Tageslicht] eq "0" or [?PIRWg:brightness] < 130)) (set SW01_Sw01 on)(set SW01_Sw01 off)
attr di_Flurlicht do resetwait
attr di_Flurlicht room Flur
attr di_Flurlicht wait 0,180

Der PIR1 hat ein minInterval von 120

Gruß Otto
Titel: Antw:DOIF Licht mit sensor / sunset
Beitrag von: zgadgeter am 14 Oktober 2018, 13:57:32
Hallo und danke. Ein paar fragen....

Zitat von: Otto123 am 14 Oktober 2018, 13:43:09
defmod di_Flurlicht DOIF ([PIR1:"motion:.on"] and ([?Tageslicht] eq "0" or [?PIRWg:brightness] < 130)) (set SW01_Sw01 on)(set SW01_Sw01 off)
Bei mir habe ich nur "motion", aber Du hast "motion:on". Ist das ein Fehler bei mir?
Zitat von: Otto123 am 14 Oktober 2018, 13:43:09

attr di_Flurlicht do resetwait
attr di_Flurlicht wait 0,180

[/code]
Was genau machen diese Zeilen? resetwait, wait?
Zitat von: Otto123 am 14 Oktober 2018, 13:43:09
Der PIR1 hat ein minInterval von 120
Ich benutze einen Hue motion Sensor...da ist ein Attribute namens event-min-interval.....ich gehe davon aus das dies identisch ist mit minInterval?

danke nochmals.
Titel: Antw:DOIF Licht mit sensor / sunset
Beitrag von: Otto123 am 14 Oktober 2018, 14:16:26
event-min-interval ist etwas völlig anderes. Mein Sensor ist von Homematic und minInterval ist der Zeitraum in dem er nicht wieder auslöst, es ist quasi der "ON" Zeitraum.

Die Beschreibung der Attribute wait und do resetwait findest Du in der Doku zu DOIF. (https://fhem.de/commandref_DE.html#DOIF_wait) Ich setzen zwei Befehle ab in dem DOIF, der erste wird sofort ausgeführt der zweite nach 180 sec. Das bewirkt, dass das Licht mindestens 180 sec brennt, wird  in dieser zeit nachgetriggert setzt resetwait den Timer zurück.

[PIR1:"motion:.on"] ist ein trigger auf einen Event, der Event sieht bei mir so aus motion: on
Den Eventfilter musst Du natürlich an deinen Event anpassen, nimm dazu den Eventmonitor (https://wiki.fhem.de/wiki/Event_monitor)
Zum triggern mit Events siehe wieder die Doku von DOIF. (https://fhem.de/commandref_DE.html#DOIF_Ereignissteuerung_ueber_Auswertung_von_Events)

Gruß Otto
Titel: Antw:DOIF Licht mit sensor / sunset
Beitrag von: zgadgeter am 14 Oktober 2018, 14:20:44
Ok, vielen dank...da muss ich mich durchlesen. Denke für die Infos und Hinweise.
Titel: Antw:DOIF Licht mit sensor / sunset
Beitrag von: Otto123 am 14 Oktober 2018, 14:30:27
Naja Versuch macht kluch, ändere doch einfach:
(set sonoffs20_2 on-for-timer 300) DOELSE (set sonoffs20_2 off)so ab(set sonoffs20_2 on) (set sonoffs20_2 off)und setze/ändere die beiden Attributeattr Kitchenlighton do resetwait
attr Kitchenlighton wait 0,300


Titel: Antw:DOIF Licht mit sensor / sunset
Beitrag von: zgadgeter am 14 Oktober 2018, 14:41:49
Oh, das scheint zu funktionieren! Da muss ich noch ein wenig experimentieren und verstehen warum es funktioniert...danke nochmals!
Titel: Antw:Solved: DOIF Licht mit sensor / sunset
Beitrag von: Otto123 am 14 Oktober 2018, 17:08:23
Das DOIF setzt zwei Befehle ab, den ersten sofort der zweite wird verzögert  -> 0,300
Das wirkt wie on-for-timer 300
das do resetwait setzt aber diesen waittimer (300) immer wieder auf null wenn eine neue Bewegung kommt, Kannst Du schön in der Detailansicht des DOIF beobachten.
Titel: Antw:Solved: DOIF Licht mit sensor / sunset
Beitrag von: zgadgeter am 14 Oktober 2018, 17:24:50
Oh, danke.
Mir ist aber noch eine Idee gekommen. Wenn ich das Licht einfach ausmachen moechte, also nicht an sondern nur aus wenn es keine Bewegung gab...
Wuerde ich sagen das ich das doif so aendern wuerde:
defmod Kitchenlighton DOIF ([kitchensensor:"motion"] and [(sunset()]) (set sonoffs20_2 off)
Also das on nur weg lassen? Nein, funktioniert nicht.
Titel: Antw:Solved: DOIF Licht mit sensor / sunset
Beitrag von: Otto123 am 14 Oktober 2018, 18:15:48
Wenn es keine Bewegung mehr gab, ist das Licht doch nach 5 min aus? :-\
Titel: Antw:Solved: DOIF Licht mit sensor / sunset
Beitrag von: zgadgeter am 14 Oktober 2018, 18:32:48
Zitat von: Otto123 am 14 Oktober 2018, 18:15:48
Wenn es keine Bewegung mehr gab, ist das Licht doch nach 5 min aus? :-\
Stimmt, und funktioniert auch so. Aber ich habe gedacht, was ist wenn man das Licht mal nicht an haben möchte? So wie es jetzt ist geht das Licht immer an bei Bewegung und Sonnenuntergang.
Das heißt, anmachen wäre immer manuell (über den Lichtschalter:Sonoff). Aber ausmachen funktioniert über FHEM...
Titel: Antw:Solved: DOIF Licht mit sensor / sunset
Beitrag von: Otto123 am 14 Oktober 2018, 19:06:02
Du meinst set Kitchenlighton disable?  ::)
Titel: Antw:Solved: DOIF Licht mit sensor / sunset
Beitrag von: zgadgeter am 14 Oktober 2018, 19:12:13
Zitat von: Otto123 am 14 Oktober 2018, 19:06:02
Du meinst set Kitchenlighton disable?  ::)
Nein. Ich meine, das Licht wird nur ueber den Schalter an der Wand angemacht. ABer, aus sollte es FHEM machen. Das heisst, wenn FHEM merkt das es keine Bewegung mehr gibt sollte es das Licht ausmachen.
Titel: Antw:Solved: DOIF Licht mit sensor / sunset
Beitrag von: Otto123 am 14 Oktober 2018, 19:21:50
Könnte so gehen:
defmod Kitchenlighton DOIF ([kitchensensor:"motion"] and [(sunset()]) (set sonoffs20_2 off)
attr Kitchenlighton do resetwait
attr Kitchenlighton wait 300

Du musst den ersten Befehl und den ersten wait Timer weglassen.