[gelöst] Licht mit Bewegungsmelder schalten

Begonnen von Zentia92, 09 März 2017, 18:07:41

Vorheriges Thema - Nächstes Thema

Otto123

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

Zander1st

Danke für die schnelle Antwort leider schaltet er immer noch und bei den Readings bekomme ich jetzt diese ERROR Meldung.
So sieht jetzt meines DOIF aus
([IT_V3_25778001:"on"] and [2:30-20:00]!=20:00-2:30) (set ESPEasy_LED on)


READINGS
Device                                       IT_V3_25778001                                                 2019-01-20 10:46:50
cmd                                           0                                                                          2019-01-20 10:45:40
e_IT_V3_25778001_events     off                                                                        2019-01-20 10:46:50
error                                       condition c01: syntax error, line 1, near "20:"        2019-01-20 10:46:50
mode                                      enabled                                                                  2019-01-20 10:45:40
state                                       initialize                                                                 2019-01-20 10:45:40
timer_01_c01                        21.01.2019 02:30:00                                              2019-01-20 10:45:40
timer_02_c01                        20.01.2019 20:00:00

   

Otto123

Das war kein Code das war eine Aussage  :o
Du willst
ZitatLeider klappt aber nicht das er nur von 20:00 -2:30 funktioniert.
Schreibst aber im Code [2:30-20:00] ::)
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

Damian

Zitat von: Otto123 am 20 Januar 2019, 12:16:39
Das war kein Code das war eine Aussage  :o
Du willstSchreibst aber im Code [2:30-20:00] ::)

Ich glaube, das versteht er nicht.

Du definierst:

[IT_V3_25778001:"on"] and [2:30-20:00]

willst offenbar aber:

[IT_V3_25778001:"on"] and [20:00-2:30]

Das Eine ist das Gegenteil vom Anderen.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Otto123

 ;D
Naja ich verstehe das hier auch nicht -> On und OFF sind bei mir umgekehr.
Deswegen wollte ich nicht einfach den Code korrigieren.  ::)

Der Code sieht nämlich auch nicht nach umgekehrt aus? Also vielleicht denkt er negiert?
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

Zander1st

Zitat von: Otto123 am 20 Januar 2019, 13:20:10
;D
Naja ich verstehe das hier auch nicht -> On und OFF sind bei mir umgekehr.


Damit meinte ich wenn ich on button drücke das die LED aus geht und bei off geht die LED an .
Deswegen habe ich (set ESPEasy_LED on) damit sie ausbleibt.

Zander1st

#21
Zitat von: Damian am 20 Januar 2019, 13:04:18
Ich glaube, das versteht er nicht.

Du definierst:

[IT_V3_25778001:"on"] and [2:30-20:00]

willst offenbar aber:

[IT_V3_25778001:"on"] and [20:00-2:30]

Das Eine ist das Gegenteil vom Anderen.

Richtig
ich habe beide Varianten ausprobiert
[IT_V3_25778001:"on"] and [2:30-20:00] (set ESPEasy_LED on) ->damit dachte ich das ich die led in der Zeit von 2:30-20:00 deaktiviere wen der Motion Sensor Bewegung erkennt. Passiert aber leider nichts.
Genauso wie mit diesem Befehl:
[IT_V3_25778001:"on"] and [20:00-02:30] (set ESPEasy_LED on oder off)->LED geht immer an
Einzige Variante die ich noch nicht probiert habe ist FHEM nach den einträgen und abspeichern mal neu zu starten.
Hoffe konnte mich jetzt verständlicher ausdrücken.

Den befehl habe ich so verstanden
wenn [ motiondetector : "on"] und [ die Uhrzeit zwischen 20:00und02:30 liegt ](dann schalte ESPEasy_LED ein) alles außelhalb dieser Zeit bleibt die ESPEasy_LED aus
Ist das Richtig so??

Oder gibt es eine andere Option den Motion sensor in der Zeit zu ignorieren oder stumm zu schalten?

Otto123

ZitatDen befehl habe ich so verstanden
wenn [ motiondetector : "on"] und [ die Uhrzeit zwischen 20:00und02:30 liegt ](dann schalte ESPEasy_LED ein) alles außelhalb dieser Zeit bleibt die ESPEasy_LED aus
Ist das Richtig so??
Präziser:
Wenn motiondetector  einen Event erzeugt in dem das Wort on vorkommt! Und es zwischen 20:00 und 02:30 ist, dann schalte on (was aber nach Deiner Aussage off ist  ???)

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

Zander1st

Also verstanden habe ich das und er schaltet auch aber leider den ganzen Tag und nicht nur in der gewünschten Zeit.
Würde es denn gehen fhem zu sagen er soll den Status des Sensors nur in der von mir gewünschten Zeit abrufen?

Otto123

Hi,

das kann eigentlich nicht sein. Kannst Du bitte nochmal ein aktuelles list von Deinem DOIF posten?
Bist sicher, dass nicht ein anderes Gerät auch schaltet?

Die Bedingung [motiondetector:"on"] and [20:00-02:30] wird nur wahr wenn beide Teilbedingungen wahr werden. Also außerhalb der Zeit passiert nichts, nicht von einem DOIF mit dieser Bedingung. Das glaub ich nicht.

Ich weiß immer noch nicht, ob Du mit dem on und off durcheinander kommst!

Mach das list am Besten einmal innerhalb der Zeit und einmal außerhalb der Zeit.

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

Zander1st

#25

Internals:
   CFGFN     
   DEF        ([IT_V3_25778001:"on"] and [02:00-20:30]) (set IT_V3_25778001 off)
   MODEL      FHEM
   NAME       LEDPC_aus
   NR         64251
   NTFY_ORDER 50-LEDPC_aus
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2019-01-21 18:06:12   Device          IT_V3_25778001
     2019-01-21 18:06:12   cmd             2
     2019-01-21 18:06:12   cmd_event       IT_V3_25778001
     2019-01-21 18:06:12   cmd_nr          2
     2019-01-21 18:06:12   e_IT_V3_25778001_events off
     2019-01-20 14:29:37   mode            enabled
     2019-01-21 18:06:12   state           cmd_2
     2019-01-20 20:30:00   timer_01_c01    21.01.2019 02:00:00
     2019-01-20 20:30:00   timer_02_c01    21.01.2019 20:30:00
   Regex:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::EventDoIf('IT_V3_25778001',$hash,'on',1) and ::DOIF_time($hash,0,1,$wday,$hms)
   days:
   devices:
     0           IT_V3_25778001
     all         IT_V3_25778001
   do:
     0:
       0          set IT_V3_25778001 off
     1:
   helper:
     event      off
     globalinit 1
     last_timer 2
     sleeptimer -1
     timerdev   IT_V3_25778001
     timerevent off
     triggerDev IT_V3_25778001
     DOIF_eventas:
       cmd_nr: 2
       cmd: 2
       cmd_event: IT_V3_25778001
       state: cmd_2
     timerevents:
       off
     timereventsState:
       state: off
     triggerEvents:
       off
     triggerEventsState:
       state: off
   internals:
   interval:
     0          -1
     1          0
   intervalfunc:
   intervaltimer:
   itimer:
   localtime:
     0          1548032400
     1          1548099000
   readings:
   realtime:
     0          02:00:00
     1          20:30:00
   time:
     0          02:00:00
     1          20:30:00
   timeCond:
     0          0
     1          0
   timer:
     0          0
     1          0
   timers:
     0           0  1
   trigger:
     all         IT_V3_25778001
   triggertime:
     1548099000:
       localtime  1548099000
       hash:
   uiState:
   uiTable:
Attributes:
   room       PC



Internals:
   CFGFN     
   DEF        ([IT_V3_25778001:"on"]) (set ESPEasy_LED on) (set ESPEasy_LED off)
   MODEL      FHEM
   NAME       PC_LED
   NR         64188
   NTFY_ORDER 50-PC_LED
   STATE      cmd_1
   TYPE       DOIF
   READINGS:
     2019-01-21 18:06:12   Device          IT_V3_25778001
     2019-01-21 18:05:56   cmd             1.2
     2019-01-21 18:05:56   cmd_event       IT_V3_25778001
     2019-01-21 18:05:56   cmd_nr          1
     2019-01-21 18:05:56   cmd_seqnr       2
     2019-01-21 18:06:12   e_IT_V3_25778001_events off
     2019-01-20 13:21:11   mode            enabled
     2019-01-21 18:05:56   state           cmd_1
     2019-01-21 18:05:56   wait_timer      no timer
   Regex:
   attr:
     cmdState:
     wait:
       0:
         0
         3
     waitdel:
   condition:
     0          ::EventDoIf('IT_V3_25778001',$hash,'on',1)
   devices:
     0           IT_V3_25778001
     all         IT_V3_25778001
   do:
     0:
       0          set ESPEasy_LED on
       1          set ESPEasy_LED off
     1:
   helper:
     event      off
     globalinit 1
     last_timer 0
     sleepdevice IT_V3_25778001
     sleepsubtimer -1
     sleeptimer -1
     timerdev   IT_V3_25778001
     timerevent on
     triggerDev IT_V3_25778001
     DOIF_eventas:
       cmd_nr: 1
       cmd_seqnr: 2
       cmd_event: IT_V3_25778001
       state: cmd_1
     timerevents:
       on
       off
     timereventsState:
       on
       state: off
     triggerEvents:
       off
     triggerEventsState:
       state: off
   internals:
   itimer:
   readings:
   trigger:
     all         IT_V3_25778001
   uiState:
   uiTable:
Attributes:
   do         resetwait
   room       PC
   wait       0,3



Otto123

Hi,

das mit den Codetags konntest Du doch schon mal.  ;D

Also das erste DOIF reagiert auf IT_V3_25778001 und setzt sofort auf off wenn der auf on geht.
Aktuell in dem list hatte er nicht geschaltet, er steht auf cmd_2 was es nicht gibt. Ist aber klar weil ein off Event sofort wieder kam.
Das zweite DOIF reagiert auch auf IT_V3_25778001 und schaltet ESPEasy_LED auf on und nach drei Sekunden wieder auf off

Sorry, aber verstehen tue ich den Sinn / das Konstrukt nicht. Und ich sehe auch kaum Zusammenhang zu Deiner bisherigen Fragestellung?  :-[

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

Zander1st

#27
Also werde ich mich erst mal darum bemühen das mit den on/off richtig einzustellen.
Das ist meine momentane Relais Funktion.
eventMap /gpio 4 on:off/gpio 4 off:on/status gpio 4:check/
Danke erst mal für die Unterstützung

Otto123

Kannst Du nochmal erklären, was die beiden DOIFs aus deiner Sicht machen sollten?
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

Zander1st

#29
Zitat von: Otto123 am 21 Januar 2019, 21:48:29
Kannst Du nochmal erklären, was die beiden DOIFs aus deiner Sicht machen sollten?
Nee das möchte ich jetzt nicht  :-[ (schäm)
Danke für den Denkanstoß und die Geduld.
DEF ([IT_V3_25778001:"on"] and [20:00-02:30]) (set ESPEasy_LED on) (set ESPEasy_LED off)
Habe die doifs zusammengefasst. Jetzt geht es.
Punkt 20 Uhr ist der Bewegungsmelder aktiv geworden