NEWS
Steuerung Poolpumpe
-
so? `
Sieht gut aus. Teste es !Bitte keine überlappenden Zeiten (2. Startzeit während Pumpe noch läuft), da eine gemeinsame Variable cnt verwendet wird.
-
so? `
Sieht gut aus. Teste es !Bitte keine überlappenden Zeiten (2. Startzeit während Pumpe noch läuft), da eine gemeinsame Variable cnt verwendet wird. `
Mache ich morgen mit dem Testen… nein es wird keine überlappenden Zeiten geben
7:00 für 1h und 22:00 für 3h
Kann man noch einbauen das wenn man die Pumpe per Hand startet diese dann eine Stunde läuft und dann wieder ausgeht oder sollte man das dann in ein extra Script paken?
-
Kann man noch einbauen das wenn man die Pumpe per Hand startet diese dann eine Stunde läuft und dann wieder ausgeht oder sollte man das dann in ein extra Script paken? `
Ob im gleichen oder einem weiteren Script, ist egal. Man muss nur detektieren, dass manuell eingeschaltet wurde, wozu der "Ursprung" (state.from) des Trigger-Datenpunktes dienen kann.
-
so? `
Sieht gut aus. Teste es !Bitte keine überlappenden Zeiten (2. Startzeit während Pumpe noch läuft), da eine gemeinsame Variable cnt verwendet wird. `
Ich denke mal es kapt hab 2 Zeiten eingetragen das Script beendet kurz gewartet und die Scripts wieder angemacht… trotzdem ist die Pumpe dann zur zeit anmgegengen
DANKE
EDIT: Versuche gleich mal den Handbetrieb...
-
so? `
Sieht gut aus. Teste es !Bitte keine überlappenden Zeiten (2. Startzeit während Pumpe noch läuft), da eine gemeinsame Variable cnt verwendet wird. `
Ich denke mal es kapt hab 2 Zeiten eingetragen das Script beendet kurz gewartet und die Scripts wieder angemacht… trotzdem ist die Pumpe dann zur zeit anmgegengen
DANKE
EDIT: Versuche gleich mal den Handbetrieb... `
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="#ZZesOLr7C4v+J,/5{d5" x="113" y="63"><mutation items="1"></mutation> <field name="CONDITION">ne</field> <value name="OID0"><shadow type="field_oid" id="m*cxVGtPx2R{T44l}%m7"><field name="oid">fritzdect.0.DECT200_087610446720.state</field></shadow></value> <statement name="STATEMENT"><block type="timeouts_cleartimeout" id="oibZ.QJ]MLI[-cW%88XT"><field name="NAME">timeout</field> <next><block type="controls_if" id="B.:c|MDhyI|H8NZDB}.b"><value name="IF0"><block type="logic_operation" id="E,uK8;h]CABc`8e`^~.}"><field name="OP">AND</field> <value name="A"><block type="variables_get" id="6i(JY*q;ft_n~(D3oWHp"><field name="VAR">Wert</field></block></value> <value name="B"><block type="logic_compare" id="%C%cR93cDhDCmJT)H+C#"><field name="OP">NEQ</field> <value name="A"><block type="variables_get" id="uUV,XpB/[#Rd/IPc{}^e"><field name="VAR">Uhrsprung</field></block></value> <value name="B"><block type="text" id="8@)%y@dx{|M076k)C*uU"><field name="TEXT">system.adapter.javascript.0</field></block></value></block></value></block></value> <statement name="DO0"><block type="timeouts_settimeout" id="iC@!c3iuR{Z^?ptRtwXv"><field name="NAME">timeout</field> <field name="DELAY">60</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="control" id="!4j+oSnQV/lL[j@dZ3s]"><mutation delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT200_087610446720.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="NJMbGI2D?I{gV6BkFput"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></next></block></statement></block></xml>
Ist das Code so richtig? Habe ihn in ein extra Script gepackt, leider funktioniert er nicht :oops:
-
Was ist Uhrsprung ? Ursprung ist eine Eigenschaft des Trigger-Datenpunktes (so wie auch Wert)
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="#ZZesOLr7C4v+J,/5{d5" x="113" y="63"><mutation items="1"></mutation>
<field name="CONDITION">ne</field><value name="OID0"><shadow type="field_oid" id="m*cxVGtPx2R{T44l}%m7"><field name="oid">fritzdect.0.DECT200_087610446720.state</field></shadow></value> <statement name="STATEMENT"><block type="timeouts_cleartimeout" id="oibZ.QJ]MLI[-cW%88XT"><field name="NAME">timeout</field> <next><block type="controls_if" id="B.:c|MDhyI|H8NZDB}.b"><value name="IF0"><block type="logic_operation" id="E,uK8;h]CABc`8e`^~.}"><field name="OP">AND</field> <value name="A"><block type="on_source" id="t,[JH-1e;vq@B@MQG{3I"><field name="ATTR">state.val</field></block></value> <value name="B"><block type="logic_compare" id="%C%cR93cDhDCmJT)H+C#"><field name="OP">NEQ</field> <value name="A"><block type="on_source" id="/#sh?WXkP0R7/nB9CsD;"><field name="ATTR">state.from</field></block></value> <value name="B"><block type="text" id="8@)%y@dx{|M076k)C*uU"><field name="TEXT">system.adapter.javascript.0</field></block></value></block></value></block></value> <statement name="DO0"><block type="timeouts_settimeout" id="iC@!c3iuR{Z^?ptRtwXv"><field name="NAME">timeout</field> <field name="DELAY">60</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="control" id="!4j+oSnQV/lL[j@dZ3s]"><mutation delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT200_087610446720.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="NJMbGI2D?I{gV6BkFput"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></next></block></statement></block></xml>
-
Was ist Uhrsprung ? Ursprung ist eine Eigenschaft des Trigger-Datenpunktes (so wie auch Wert)
Blockly_DP_Props.JPG
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="#ZZesOLr7C4v+J,/5{d5" x="113" y="63"><mutation items="1"></mutation>
<field name="CONDITION">ne</field><value name="OID0"><shadow type="field_oid" id="m*cxVGtPx2R{T44l}%m7"><field name="oid">fritzdect.0.DECT200_087610446720.state</field></shadow></value> <statement name="STATEMENT"><block type="timeouts_cleartimeout" id="oibZ.QJ]MLI[-cW%88XT"><field name="NAME">timeout</field> <next><block type="controls_if" id="B.:c|MDhyI|H8NZDB}.b"><value name="IF0"><block type="logic_operation" id="E,uK8;h]CABc`8e`^~.}"><field name="OP">AND</field> <value name="A"><block type="on_source" id="t,[JH-1e;vq@B@MQG{3I"><field name="ATTR">state.val</field></block></value> <value name="B"><block type="logic_compare" id="%C%cR93cDhDCmJT)H+C#"><field name="OP">NEQ</field> <value name="A"><block type="on_source" id="/#sh?WXkP0R7/nB9CsD;"><field name="ATTR">state.from</field></block></value> <value name="B"><block type="text" id="8@)%y@dx{|M076k)C*uU"><field name="TEXT">system.adapter.javascript.0</field></block></value></block></value></block></value> <statement name="DO0"><block type="timeouts_settimeout" id="iC@!c3iuR{Z^?ptRtwXv"><field name="NAME">timeout</field> <field name="DELAY">60</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="control" id="!4j+oSnQV/lL[j@dZ3s]"><mutation delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT200_087610446720.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="NJMbGI2D?I{gV6BkFput"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></next></block></statement></block></xml>
```` `
Danke für die Vorlage
so mit deim Script ging es leider nicht hab es ein wenig geändert und jetzt gehts
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="#ZZesOLr7C4v+J,/5{d5" x="113" y="63"><mutation items="1"></mutation>
<field name="CONDITION">ne</field><value name="OID0"><shadow type="field_oid" id="m*cxVGtPx2R{T44l}%m7"><field name="oid">fritzdect.0.DECT200_087610446720.state</field></shadow></value> <statement name="STATEMENT"><block type="timeouts_cleartimeout" id="oibZ.QJ]MLI[-cW%88XT"><field name="NAME">timeout</field> <next><block type="controls_if" id="B.:c|MDhyI|H8NZDB}.b"><value name="IF0"><block type="logic_operation" id="E,uK8;h]CABc`8e`^~.}"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="L)|!-z|?3cq?Q~]/D7#."><field name="OP">EQ</field> <value name="A"><block type="get_value" id="=}qX(=3u`[RKBBVaGo)N"><field name="ATTR">val</field> <field name="OID">fritzdect.0.DECT200_087610446720.state</field></block></value> <value name="B"><block type="logic_boolean" id="jqiSwk0B@?FG,3ejkj=J"><field name="BOOL">TRUE</field></block></value></block></value> <value name="B"><block type="logic_compare" id="%C%cR93cDhDCmJT)H+C#"><field name="OP">NEQ</field> <value name="A"><block type="on_source" id="/#sh?WXkP0R7/nB9CsD;"><field name="ATTR">state.from</field></block></value> <value name="B"><block type="text" id="8@)%y@dx{|M076k)C*uU"><field name="TEXT">system.adapter.javascript.0</field></block></value></block></value></block></value> <statement name="DO0"><block type="debug" id="6RQH;wwBA%Jxo[+Wyag/"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="ZOoKnSmzhEfz:{Br@b_0"><field name="TEXT">Pumpe per Hand an</field></shadow></value> <next><block type="timeouts_settimeout" id="iC@!c3iuR{Z^?ptRtwXv"><field name="NAME">timeout</field> <field name="DELAY">2</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="control" id="!4j+oSnQV/lL[j@dZ3s]"><mutation delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT200_087610446720.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="NJMbGI2D?I{gV6BkFput"><field name="BOOL">FALSE</field></block></value> <next><block type="debug" id="G/PA2bNsibP?P5VsFVEH"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="%,RXrq*zg2g/!Rm}:bQt"><field name="TEXT">Hand Pumpe aus</field></shadow></value></block></next></block></statement></block></next></block></statement></block></next></block></statement></block></xml>
[7208_1.png](/assets/uploads/files/7208_1.png)
-
so mit deim Script ging es leider nicht hab es ein wenig geändert `
Wenn ich es mit meinem Blockly-Export teste, funktioniert es. -
-
Hallo, ich bins noch mal :oops:
nach ein paar Tagen Testlauf habe ich fest gestellt, das die Hand Automatik leider auch an geht wenn die Vollautomatik startet
Ich habe versucht das ganze zu Fixen aber ohne erfolg ich brauch noch mal eure Hilfe
Ich habe den kompletten Pfad angegeben zum Vollautomatik Script.
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="#ZZesOLr7C4v+J,/5{d5" x="113" y="63"><mutation items="1"></mutation>
<field name="CONDITION">ne</field><value name="OID0"><shadow type="field_oid" id="m*cxVGtPx2R{T44l}%m7"><field name="oid">fritzdect.0.DECT200_087610446720.state</field></shadow></value> <statement name="STATEMENT"><block type="timeouts_cleartimeout" id="oibZ.QJ]MLI[-cW%88XT"><field name="NAME">timeout</field> <next><block type="controls_if" id="B.:c|MDhyI|H8NZDB}.b"><mutation else="1"></mutation> <value name="IF0"><block type="logic_operation" id="E,uK8;h]CABc`8e`^~.}"><field name="OP">AND</field> <value name="A"><block type="logic_operation" id="N85}=/PAp+]W3-=J%CQz"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="L)|!-z|?3cq?Q~]/D7#."><field name="OP">EQ</field> <value name="A"><block type="get_value" id="=}qX(=3u`[RKBBVaGo)N"><field name="ATTR">val</field> <field name="OID">fritzdect.0.DECT200_087610446720.state</field></block></value> <value name="B"><block type="logic_boolean" id="jqiSwk0B@?FG,3ejkj=J"><field name="BOOL">TRUE</field></block></value></block></value> <value name="B"><block type="logic_compare" id="X980r2ass6{^IHoovyo|"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="bB3.bO@^YhjO7rSyy~4_"><field name="ATTR">val</field> <field name="OID">javascript.0.Pool.Filteranlage.Automatik_an_aus</field></block></value> <value name="B"><block type="logic_boolean" id="j|B)ZSaJ0~?tvG`AlrdS"><field name="BOOL">TRUE</field></block></value></block></value></block></value> <value name="B"><block type="logic_operation" id="{CbG~yjJp?7tBV?y7bx["><field name="OP">OR</field> <value name="A"><block type="logic_compare" id="D;N?3Op4aR?yIO{`4;[}"><field name="OP">NEQ</field> <value name="A"><block type="on_source" id="3iYS15w8REonn1a?R*NC"><field name="ATTR">state.from</field></block></value> <value name="B"><block type="text" id="S)A/QUNL#MZypkaEHp@Y"><field name="TEXT">javascript.0.scriptEnabled.common.Pool.Filtersteuerung1</field></block></value></block></value> <value name="B"><block type="logic_compare" id="%C%cR93cDhDCmJT)H+C#"><field name="OP">NEQ</field> <value name="A"><block type="on_source" id="/#sh?WXkP0R7/nB9CsD;"><field name="ATTR">state.from</field></block></value> <value name="B"><block type="text" id="8@)%y@dx{|M076k)C*uU"><field name="TEXT">javascript.0.scriptEnabled.common.Pool.Filtersteuerung2</field></block></value></block></value></block></value></block></value> <statement name="DO0"><block type="debug" id="6RQH;wwBA%Jxo[+Wyag/"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="ZOoKnSmzhEfz:{Br@b_0"><field name="TEXT">Pumpe per Hand an</field></shadow></value> <next><block type="timeouts_settimeout" id="iC@!c3iuR{Z^?ptRtwXv"><field name="NAME">timeout</field> <field name="DELAY">60</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="control" id="!4j+oSnQV/lL[j@dZ3s]"><mutation delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT200_087610446720.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="NJMbGI2D?I{gV6BkFput"><field name="BOOL">FALSE</field></block></value> <next><block type="debug" id="G/PA2bNsibP?P5VsFVEH"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="%,RXrq*zg2g/!Rm}:bQt"><field name="TEXT">Hand Pumpe aus</field></shadow></value></block></next></block></statement></block></next></block></statement> <statement name="ELSE"><block type="timeouts_cleartimeout" id="f*{(}8AR`0jbJan(9iPW"><field name="NAME">timeout</field></block></statement></block></next></block></statement></block></xml>
[7208_script_hand_aus.png](/assets/uploads/files/7208_script_hand_aus.png)
-
Ich habe den kompletten Pfad angegeben zum Vollautomatik Script. `
Das ist aber nicht das, was als Ursprung übergeben wird. Logge (debug-Block) mal den Ursprung vor dem stopp timeout. -
Ich habe den kompletten Pfad angegeben zum Vollautomatik Script.
Das ist aber nicht das, was als __Ursprung__ übergeben wird. Logge (debug-Block) mal den __Ursprung__ vor dem __stopp timeout__.
Ja ist nicht mehr ganz das alte aber habe es ja nur um zwei Variablen erweitert… Wie Debuge ich den Ursprung :oops:
EDIT: Ganz vergessen zu schreiben das Script läuft in einem extra SCript und nicht in der Vollauitomatik Script mit
-
-
Also per Hand schalte ich entweder an der DECT Steckdose direckt oder im VIS
hier der Log dazu, eingeschalten im VIS
javascript.0 2018-06-16 14:07:05.910 info script.js.common.Pool.Filtersteuerung_Hand: debug Ursprung:system.adapter.web.0
javascript.0 2018-06-16 14:07:05.909 info script.js.common.Pool.Filtersteuerung_Hand: Pumpe per Hand an
javascript.0 2018-06-16 14:07:05.909 info script.js.common.Pool.Laufzeit: Laufzeit Poolfilter start
-
Und was kommt im Log, wenn die Pumpe per Automatik eingeschaltet wird ?
Es sollte system.adapter.javascript.0 sein.
-
Und was kommt im Log, wenn die Pumpe per Automatik eingeschaltet wird ?
Es sollte system.adapter.javascript.0 sein. `
ja er logt system.adapter.javascript.0
javascript.0 2018-06-16 14:59:00.515 info script.js.common.Pool.Filtersteuerung_Hand: debug Ursprung:system.adapter.javascript.0
javascript.0 2018-06-16 14:59:00.514 info script.js.common.Pool.Filtersteuerung_Hand: Pumpe per Hand an
javascript.0 2018-06-16 14:59:00.514 info script.js.common.Pool.Laufzeit: Laufzeit Poolfilter start
javascript.0 2018-06-16 14:59:00.514 info script.js.common.Pool.Filtersteuerung2: telegram['Georg']: Poolfilter automatik an.
javascript.0 2018-06-16 14:59:00.514 info script.js.common.Pool.Filtersteuerung2: Poolfilter an
fritzdect.0 2018-06-16 14:59:00.514 info SWITCH ID: 087610446720 identified for command (state) : true
javascript.0 2018-06-16 14:57:35.510 info script.js.common.Pool.Filtersteuerung2: 14:59
-
ja er logt system.adapter.javascript.0 `
Dann ist der VergleichUrsprung != "system.adapter.javascript.0"
richtig ! In diesem Fall würde der Timeout nicht gestartet.
-
Wenn der Timer des manuellem Betriebs auch dann zurück gesetzt werden soll, wenn die Automatik einschaltet während die Pumpe noch im manuellen Betrieb läuft, muss wurde geändert in wurde aktualisiert verändert werden.
-
Leider wird die Hand Ausschaltautomatik ständig mit eingeschalten ich verstehe auch nicht warum
-
Leider wird die Hand Ausschaltautomatik ständig mit eingeschalten ich verstehe auch nicht warum `
Wie sieht Dein Blockly jetzt aus, bei dem dies passiert ? Anders als meins (abgesehen von zusätzlichen Debug-Blöcken) ?