NEWS
Steckdose mit Philips Hue Bewegungsmelder triggern
-
Hallo zusammen,
ich habe Baumarkt-Steckdosen durch die Bedienung über einen Broadlink "smart" gemacht. Eine dieser Steckdosen soll nun die Überschrank-Beleuchtung in der Küche in Abhängigkeit des Status des Hue-Bewegungsmelders (oder von mir aus auch über Astro, wenn das besser funktioniert) geschaltet werden. Das Schalten der Steckdose an sich ist kein Problem, auch die Steuerung über Alexa (über IoT-Adapter) funktioniert.
Die Steckdose soll schalten, wenn der Bewegungsmelder "Präsenz" meldet und das Tageslicht eben nicht mehr ausreichend ist. Sobald keine Präsenz mehr gemeldet wird, soll die Steckdose nach 5 Minuten ausgeschaltet werden.
Anbei mein bisheriger Stand, mit dem die Steckdose zu mir nicht nachvollziehbaren Zeitpunkten geschaltet wird:
<block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="Y=%7}$Um--nf9GyW}fJ1" x="-1212" y="12.333343505859375"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id=",aF!-]sbAfSWG{BI1$l}"> <field name="oid">hue.0.Philips_hue.Küche_Sensor.presence</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="@fJ6e%$FH`!Q^+X]V*Y2"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="hq9s9OPVu.JwjWcFOngf" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="-rGz9g~-A?nBO0pkM-A$"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="VzCFHGxVSD/u}Q^?d(us"> <field name="ATTR">val</field> <field name="OID">hue.0.Philips_hue.Küche_Sensor.presence</field> </block> </value> <value name="B"> <block type="logic_boolean" id="$@f[4t:]WlQZeKXjXehh"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="Y(e9)}zc6Y!rXj8%4^A0"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="Y^,T@clQ6DP=@+!:SDer"> <field name="ATTR">val</field> <field name="OID">hue.0.Philips_hue.Hue_ambient_light_sensor_1.dark</field> </block> </value> <value name="B"> <block type="logic_boolean" id="032-+rwSH|G?$q4Zuy0e"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="rQA3RW6=9J8zgPHp|i)d"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.SteckdoseASchalten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="kEbxgdo;bzAnucbHyb0j"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> <value name="IF1"> <block type="logic_compare" id="e^KV`R9=1uMFERwGFKKy"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="SZ-{CQYRe/_|C{RwosF|"> <field name="ATTR">val</field> <field name="OID">hue.0.Philips_hue.Küche_Sensor.presence</field> </block> </value> <value name="B"> <block type="logic_boolean" id="^7|*GQDQT_xyUR6]L:}s"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="}8GtU1$?OES?F7.u|?2E"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">0_userdata.0.SteckdoseASchalten</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">300000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id=".g;K:p~/GzE,ThQt(7MP"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> </block>
Kann mir hier jemand helfen?
-
@schmimla sagte in Steckdose mit Philips Hue Bewegungsmelder triggern:
Hue_ambient_light_sensor
Der "Hue_ambient_light_sensor" erwartet einen Ziffernwert (Zahl aus dem Mathematik blockly), keinen boolean state.
-
Hm, so richtig will es nicht klappen. Eventuell kann mir da noch jemand Hilfestellung in Form eines Blocklys geben: Also die Steckdose soll geschaltet werden, wenn der Bewegungsmelder Präsenz meldet und es darüber hinaus natürlich nicht hell genug ist (egal ob das jetzt über Astro oder die DP des Bewegungsmelders gelöst wird). Wenn keine Präsenz mehr gemeldet wird, soll die Steckdose nach 5 Minuten ausgeschaltet werden.
Ich glaube ein Problem dabei ist auch, dass der Bewegungsmelder nicht durchgehend Präsenz = 1 meldet, wenn jemand im Raum ist, sondern der DP eben auch mal auf 0 springt. Daher wird die Steckdose dann auch ausgeschaltet, wenn jemand im Raum ist (nach den 5 Minuten eben)...
-
@schmimla sagte:
Daher wird die Steckdose dann auch ausgeschaltet, wenn jemand im Raum ist (nach den 5 Minuten eben)...
Der Ausschalt-Timer muss gestoppt werden, wenn wieder Bewegung erkannt wird: Setze mal den Haken bei "löschen, falls läuft".
-
@paul53 Das ist es leider auch nicht, ich kann eigentlich keine Änderung des Verhaltens feststellen.
-
@schmimla sagte:
Das ist es leider auch nicht
Dann versuche es mal so, wobei die Steckdose nicht unter "0_userdata.0" liegen kann.
-
@paul53 Leider auch keine Besserung. Und interesshalber: Warum darf der Datenpunkt SteckdoseASchalten nicht unter "0_userdata.0" liegen?
-
@schmimla sagte:
Warum darf der Datenpunkt SteckdoseASchalten nicht unter "0_userdata.0" liegen?
Weil dort keine Hardware (Steckdose) angebunden ist. Das sind virtuelle Datenpunkte.
@schmimla sagte in Steckdose mit Philips Hue Bewegungsmelder triggern:
ich habe Baumarkt-Steckdosen durch die Bedienung über einen Broadlink "smart" gemacht.
Dann müsste die Steckdose unter "broadlink2.0" zu finden sein.
-
@paul53 Ach so, klar. Der Datenpunkt "SteckdoseASchalten" ist ein virtueller Datenpunkt, den ich im iot-Adapter als Alexa-Gerät bekannt gemacht habe, damit ich die Steckdose auch per Sprache schalten kann. Dahinter liegt dann ein Skript, mit dem ich die Buttons im Broadlink2.0-Adapter schalte:
<block xmlns="https://developers.google.com/blockly/xml" type="on" id="0^]kU,id=C9A_,~`qN_6" x="-787" y="-1037"> <field name="OID">0_userdata.0.SteckdoseASchalten</field> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="u%:D-QR0MHp3)p/xfNu2"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="YBdz:tfutxk4W:lvX|1T"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="v}6$,t/mT2sHr2;8[?+["> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SteckdoseASchalten</field> </block> </value> <value name="B"> <block type="logic_boolean" id="pR6}]Vn~B$F9CWm)Kq}G"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="zH8q5;ItaAWug5TCN98*"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">broadlink2.0.RM:Broadlink-RMPROPLUS-88-f9-fb.L.Elro-Steckdose A an</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="wnQyd)Qms^Pl0pepn)~b"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> <statement name="ELSE"> <block type="control" id="[f.h-5olaopUif$zQ$uZ"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">broadlink2.0.RM:Broadlink-RMPROPLUS-88-f9-fb.L.Elro-Steckdose A aus</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="hY_k+[9eTGShl3ikCJ|Q"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </statement> </block>
Vielleicht macht das auch noch einen Unterschied hinsichtlich meiner Anforderungen?