NEWS
Licht schalten nach Lichtmessung [GELÖST]
-
@asman-hm sagte in Licht schalten nach Lichtmessung:
@Yodameister said in Licht schalten nach Lichtmessung:
ABER ..... hier ist mir aufgefallen das der Befehl kontinuierlich durchgeführt wird
Wie kann ich es realisieren das der Steuerbefehl nur einmal gesendet wird ?
Ich mache im Prinzip das gleiche für die Steuerung eines Nachtlichts und prüfe nicht nur ob es dunkel genug ist, sondern auch ob der Wert zuvor über dem Schwellwert lag.
Auch wenn sich die Helligkeit ändert, wird der Schaltbefehl nicht wiederholt gesendet.
Hmmm , meinst du das für mich so ?
-
@Yodameister
So wie Du das machst schon, weil da jede Änderung der Helligkeit die Deiner Falls entspricht auch ein setzten der Position zur Folge hat.
Kannst mit dem Timeout und einer zusätzlichen UND auf schon unten aber vermeiden.Du hast Funk Aktoren drin, da wirds bischen blöd mit der UND, da kein Rückkanal, oder hast da ne Möglichkeit?
-
@Jan1 sagte in Licht schalten nach Lichtmessung:
@Yodameister
So wie Du das machst schon, weil da jede Änderung der Helligkeit die Deiner Falls entspricht auch ein setzten der Position zur Folge hat.
Kannst mit dem Timeout und einer zusätzlichen UND auf schon unten aber vermeiden.Du hast Funk Aktoren drin, da wirds bischen blöd mit der UND, da kein Rückkanal, oder hast da ne Möglichkeit?
Rückkanal hätte ich , ist Homematic , allerdings verstehe ich das mit dem TimeOut nicht , wo muss das denn hin ?
Kannst Du das evtl mal mit nem Bild zeigen ? Kann dann die Änderung von oben mit dem zusätzlichen UND > wieder raus ?
Sorry , bin echt zu blöd dafür -
@Yodameister
Poste mal Dein Blockly Export.
Ich bau das später mal ein. -
@Jan1 sagte in Licht schalten nach Lichtmessung:
@Yodameister
Poste mal Dein Blockly Export.
Ich bau das später mal ein.Super , Danke schon mal
<xml xmlns="http://www.w3.org/1999/xhtml">
<block type="on" id=":1Dgj/b)/QtLMQ3Hc6JG" x="-787" y="-112">
<field name="OID">hm-rpc.1.NEQ0322642.1.LUX</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="lZhxYOrWGolw}mXAERA"> <value name="IF0"> <block type="logic_operation" id="H?Pzd~xv4w?P})0Y?vO[" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="g5D:V9UW@u)l;IZaYN.$"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="_7PChaevVy(bAmLyenI2"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.NEQ0322642.1.LUX</field> </block> </value> <value name="B"> <block type="math_number" id="_@~SN1zp.hsc/~A/@Dp)"> <field name="NUM">8</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="A
H?$9~_}?(c1%@}^Hw,">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="@bFIF%ETLeLbF}tS!ac*">
<field name="ATTR">val</field>
<field name="OID">hm-rega.0.1263</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="x9GUX~GLN1/rMw|eeOZ{">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="k^inN@vy,]$9Qu(Eo86~">
<mutation delay_input="false"></mutation>
<field name="OID">hm-rpc.1.MEQ1425913.1.LEVEL</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="math_number" id="cx|Qe{,EMf2eCB.J9nC|">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="control" id="Jt9DOTSo~Y{(h|j=yNPf">
<mutation delay_input="true"></mutation>
<field name="OID">hm-rpc.1.MEQ1731405.1.LEVEL</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">1</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="math_number" id=",E?2QhU;F?y2RfgXlT1"> <field name="NUM">0</field> </block> </value> <next> <block type="control" id="786YKl6NX8{pCLl?o{IQ"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.OEQ0365754.1.LEVEL</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">2</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="Yr7ez,fJAF1l?ZrQ(COe"> <field name="NUM">0</field> </block> </value> <next> <block type="control" id="p=6?;l^@eTbd-6.dhtaV"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.MEQ1106339.1.LEVEL</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">3</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="v#;)moUko3XZ5PHR4Uc)"> <field name="NUM">0</field> </block> </value> <next> <block type="control" id="xfGn}+!E4~5q:xTnnmS-"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.LEQ1021949.1.LEVEL</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">4</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="|0Db$aA#xz+i9z3VUF]K"> <field name="NUM">0</field> </block> </value> <next> <block type="control" id="5qAB(GP%F:cp!qd^(L=2"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.MEQ1731510.1.LEVEL</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">5</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="=_}DT|sg%Y[deB6jw=;9"> <field name="NUM">0</field> </block> </value> <next> <block type="control" id="+6Yc6b.X;)}scaXEjF=1"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.LEQ1028657.1.LEVEL</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">6</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="+UY$hylO[l$]3$ms?LC5"> <field name="NUM">0</field> </block> </value> <next> <block type="control" id="2G4+V*{y=rfVsd5tTwrk"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.MEQ0392887.1.LEVEL</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">7</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="2RL2+
QGvNXXAE?tGUW0">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="control" id="IFj!qs~OrF83q~o6CHMb">
<mutation delay_input="true"></mutation>
<field name="OID">hm-rpc.1.NEQ1687762.1.LEVEL</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">8</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="math_number" id="Kp+JxADo#Kffr]z##jQX">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="control" id="bqz,=R7VY:,n!:bv8aU9">
<mutation delay_input="true"></mutation>
<field name="OID">hm-rpc.1.NEQ0682277.1.STATE</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">30</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="rYo?yC.)#atd[-F~Zep%">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</xml> -
@Yodameister Code/Log in Code Tags gepackt. Bitte benutzt die Code Tags Funktion -> </>
Hier gehts zur Hilfe. -
@Yodameister
Hier mal auf die schnelle:
Den Trigger mal umgestellt auf kleiner als letzer. So tiggert schon mal nichts, wenn es heller wird. Dann den Timeout rein der dafür sorgt, dass nicht sofort was passiert nur weil es mal kurz dunkler war (30s ist nur ein Beispiel). Die Falls wird so nur ausgeführt, wenn der Wert kleiner als letzter war und nach 30 Sekunden immer noch keiner = 8 Lux ist.
Den UND Teil Deiner FALLS kenne ich nicht. Was sagt dieser DP aus? -
@dslraser
Sorry , kommt nicht wieder vor -
@Jan1
Sieht erstmal top aus , auch wenn ich nicht verstehe , baue das gleich mal ein und berichte morgenDen UND Teil Deiner FALLS kenne ich nicht. >>> Das ist eine Variable die unterscheidet ob wir daheim sind oder im Urlaub
-
@Yodameister
Im Spoiler ist der Export, dann brauchst nichts nachbauen.
Warum nennst die Variable nicht einfach Anwesenheit, dann ist das deutlicher was das macht