Indirekte Schlatung mit Bewegungsmelder

Begonnen von petjek, 04 Oktober 2019, 10:02:38

Vorheriges Thema - Nächstes Thema

petjek

Hallo zusammen,

ich habe einen Ikea Bewegungsmelder und möchte damit eine Leuchte schalten. Die Leuchte soll ab einem bestimmten Helligkeitswert schalten.
Das bekomme ich soweit auch hin, twilight liefert den aktuellen Helligkeitswert und über ein DOIF schalte ich bei state eq "motion" die Leuchte ein und bei "no_motion" wieder aus.
Wie kann ich aber nun verhindern, dass die Leuchte beim Wechsel zu "no_motion" ausgeschaltet wird, wenn die Leuchte manuell eingeschaltet wurde?
Szenario ist: Leuchte steht im Schlafzimmer und wenn ich dort abends noch was lese soll die Leuchte an sein. Da ich mich dabei auch gelegentlich bewege - vielleicht noch mal aufstehe -  würde der Status des Bewegungsmelders auf "motion" wechseln und 1 Minute später wieder auf "no_motion" gehen. Und - ZACK! - ist die Leuchte aus.
Hab schon überlegt, ob ich irgendwie in einem Dummy festhalte, wie die Leuchte eingeschaltet wurde. Oder kennt jemand eine elegantere Variante?

LG,
Die Möglichkeiten der deutschen Grammatik können einen, wenn man sich darauf, was man ruhig, wenn man möchte, sollte, einlässt, überraschen.

TomLee

Hallo,

mit DEVSPEC !?

Beispiel-DOIF anhand eines Amazon Echo der Radio abspielt bei Bewegung:

defmod doif_OG_Echo_Bad DOIF ([{sunrise("REAL")}-19:00] and ["MQTT2_zigbee_0x00158d00032c6d54:true"]) (set ECHO_G090LV03720400UN:FILTER=playStatus!=playing tunein s9014)\
DOELSEIF\
([{sunrise("REAL")}-19:00] and ["MQTT2_zigbee_0x00158d00032c6d54:false"]) (set ECHO_G090LV03720400UN pause)
attr doif_OG_Echo_Bad do always
attr doif_OG_Echo_Bad wait 0:180


Gruß

Thomas

Otto123

Hi,

ich würde in die Bedingung des DOIF den Status der Lampe mit einbeziehen und no_motion gar nicht verwenden.
Wenn Lampe schon an dann macht das DOIF nichts :)

Mein Flurlicht als Beispiel:
defmod di_Flurlicht DOIF ([PIR1:"motion:.on"] and (!isday("REAL")?1: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



Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

FHEM-User22

Hallo Otto,
ich klinke mich mal ein.

Mein DoIf sieht so aus und funktioniert:
([ZWave_Auge_01:state] eq "open" and (!isday("REAL")?1:0 or [?ZWave_Auge_01:luminance] < 10)) (set ZWave_ST_02 on)(set ZWave_ST_02 off)

Da der Flur sehr dunkel ist, wollte ich isday rausnehmen, aber das gelingt mir nicht. Immer kommt eine Fehlermeldung.

ich musste auch
[ZWave_Auge_01:"state:.open"] and.....
in
[ZWave_Auge_01:state] eq "open" and....
ändern. Bei Luminance zweifle ich auch ob das so richtig ist.

Hier noch das list ZWave_Auge_01

Internals:
   DEF        f712869a 3
   FUUID      5d9b4dd0-f33f-6033-a627-1f39903df4b476cf
   IMAGE     
   IODev      ZWDongle_0
   LASTInputDev ZWDongle_0
   MSGCNT     129
   NAME       ZWave_Auge_01
   NR         193
   STATE      closed
   TYPE       ZWave
   ZWDongle_0_MSGCNT 129
   ZWDongle_0_RAWMSG 00040003063105012200dd
   ZWDongle_0_TIME 2019-10-09 17:58:43
   ZWaveSubDevice no
   cmdsPending 9
   homeId     f712869a
   isWakeUp   1
   lastMsgSent 1570634003.79517
   nodeIdHex  03
   route      09
   Helper:
     DBLOG:
       temperature:
         LogDB:
           TIME       1570636723.3713
           VALUE      22.1
   READINGS:
     2019-10-09 17:13:23   CMD             ZW_APPLICATION_UPDATE
     2019-10-09 17:37:42   alarm_type_00   level 255 node 3 seconds 0
     2019-10-09 17:38:23   basicSet        0
     2019-10-09 17:13:54   luminance       1 Lux
     2019-10-09 17:18:11   neighborList    ZWDongle_0 ZWave_ST_02
     2019-10-09 17:13:25   neighborUpdate  done
     2019-10-09 17:38:23   reportedState   closed
     2019-10-09 17:38:23   state           closed
     2019-10-09 17:58:43   temperature     22.1 C
   SendStack:
     sentset:480313
     set:480314
     set:48031b
     set:48031c
     set:48031d
     set:48031e
     set:48031f
     set:480320
     set:480321
Attributes:
   DbLogInclude temperature, luminance, state
   IODev      ZWDongle_0
   classes    SENSOR_BINARY WAKE_UP ASSOCIATION BATTERY MULTI_CMD CRC_16_ENCAP MANUFACTURER_SPECIFIC VERSION CONFIGURATION MULTI_CHANNEL_ASSOCIATION SENSOR_MULTILEVEL SENSOR_ALARM
   devStateIcon closed:motion_detector open:people_sensor@lightgreen
   event-on-change-reading alarm_HomeSecurity,state
   event-on-update-reading battery,luminance,temperature,wakeup
   icon       message_presence
   neighborListPos 480.99,15.36
   room       ZWave
   userReadings state:alarm_HomeSecurity.* {(ReadingsVal($NAME,"alarm_HomeSecurity","")=~/^Motion.Detection/)?"open":"closed"}
   zwaveRoute ZWave_ST_02


Grüße aus Grimma
FHEM auf Raspberry Pi und Proxmox und... und.... und....

Otto123

Hi,

[?ZWave_Auge_01:luminance:d] weil da steht ja noch die Maßeinheit dahinter :)

Was kommt für ein Fehler?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

FHEM-User22

Moin,

ich hatte:
([ZWave_Auge_01:state] eq "open" and (!isday("REAL")?1:0 or [?ZWave_Auge_01:luminance:d] < 10)) (set ZWave_ST_02 on)(set ZWave_ST_02 off)

das
(!isday("REAL")?1:0 or
entfernt, und dabei die Klammer-zu vergessen zu entfernen. Daher der Fehler.

nun habe ich:
([ZWave_Auge_01:state] eq "open" and [?ZWave_Auge_01:luminance:d] < 10) (set ZWave_ST_02 on)(set ZWave_ST_02 off)

und es funktioniert im dunkeln. Mal schauen, wie es bei Helligkeit ist. Mit dem Fragezeichen vor Luminance komme ich noch nicht klar.

Danke erstmals
FHEM auf Raspberry Pi und Proxmox und... und.... und....

Otto123

Moin,

das Fragezeichen bedeutet, dass dieses Reading das DOIF nicht triggert. Triggern tut also jetzt nur der BM und der Wert luminance wird nur abgefragt.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz