NEWS
[gelöst]Trockenlaufschutz, Problem mit Blockly
-
@nole Der timeout 4 hat komischerweise keine Auswahlliste, kann ich die anderen beiden einfach auf 4 ändern?
-
@nole Der timeout 4 hat komischerweise keine Auswahlliste, kann ich die anderen beiden einfach auf 4 ändern?
-
@nole Du kannst die Bezeichnung des Timers ändern und die neue Bezeichnung steht danach in den Auswahllisten der Timeout Bausteine zur Verfügung
-
@nole dann kann ich dir nicht helfen.
Du hast jetzt eine Vorlage an der Du dich orientieren kannst
Entweder Du fängst ein neues Script an und versucht erneut den Import, oder aber Du legst ein neues Script manuell mit den Bausteinen gemäß Vorlage an. -
@jan1 Das skript sieht bei mir jetzt so aus:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout3">timeout3</variable> <variable type="timeout" id="timeout4">timeout4</variable> </variables> <block type="on_ext" id="FB^,o-|.DkV*l1Zpw1ev" x="-487" y="88"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="w]B4izL8Xi6Xis[a47]}"> <field name="oid">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="o9}:IIEo};jIF72b9AA."> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="k/5vYdt)FO5#4fIMa~m;" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="ViV`%UQ}k~UPs7,j-ryV"> <field name="OP">GTE</field> <value name="A"> <block type="on_source" id="u:72U[-3Dnb8^3xE,|!!"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="!{rp568)Xa_3X^/P-X67"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="{T1t5z14z,+4|DC]gOXz"> <field name="OP">LT</field> <value name="A"> <block type="on_source" id="=QYK}e_eO)R!UP9V$lM^"> <field name="ATTR">oldState.val</field> </block> </value> <value name="B"> <block type="math_number" id="hLUSUOYJL$qWXsN7kTk8"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="U_%ugF^L^YUcG@wP=]~Z"> <field name="NAME">timeout4</field> <next> <block type="control" id="hZTA=BSjCVV{]?(0pVgY"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="R||h%3X{{l}e4p`%Yawz"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id=".o~uvJbWt^KQ`oiI!e$!"> <field name="NAME">timeout4</field> <field name="DELAY">30</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="4S}(|m-Kt)y5P9txPZ+I"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="}wd]{cXQ@x{`KvgI26LW"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="!/F3qNm$R2Q]m/jo|f#T" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="iHA4@^BN{s/[}$=sq31n"> <field name="OP">LTE</field> <value name="A"> <block type="on_source" id="gQBF^?(7;hKwq*ro`;LK"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="E1Co9VoP0Z]U].V}:dk6"> <field name="NUM">50</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="2[[fJeqHxkcfP[F^]I-Q"> <field name="OP">GT</field> <value name="A"> <block type="on_source" id="f5IDFVCeLD}U6K[_XEG@"> <field name="ATTR">oldState.val</field> </block> </value> <value name="B"> <block type="math_number" id="2k,M4Zr}0C_#uR%MuF|Q"> <field name="NUM">50</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_cleartimeout" id="cL@Uuw#K=7Oj=lJL/W:h"> <field name="NAME">timeout4</field> <next> <block type="control" id="dYN%$E|/?la90IKRz{*w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="lU?:V,sk#5e#Zs@){!|m"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="debug" id=",qorWlCkGFLb!+WM7/rO"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="8h9QE+{dve}o}{xFz4^/"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="^^vC/IAZ$YnpMiFFn.nC"> <field name="TEXT">Watt:</field> </block> </value> <value name="ADD1"> <block type="on_source" id="-bW!=3`GYzyDgu_1}k0G"> <field name="ATTR">state.val</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> <block type="on_ext" id=")3Y6O)OSZ6,a.eId9_([" disabled="true" x="-487" y="688"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="FB}qA2j)SArn`ar=BQ8z"> <field name="oid">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="nT8{B{T^As}6|P1eFdAp"> <value name="IF0"> <block type="logic_compare" id="h=ll3)j0~lH*]vID@v{h"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="prv]M@]WP)O8k`WxQv,M"> <field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </block> </value> <value name="B"> <block type="math_number" id="QWMd~%R.#BvSN.-Jr7|S"> <field name="NUM">100</field> </block> </value> </block> </value> <statement name="DO0"> <block type="controls_if" id=";N~?jZO,:^+(B6c4+e.p"> <value name="IF0"> <block type="logic_compare" id="nLGp=iM$L~IydiZi8!Z?"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="#X;Nd8faxS1r?ibN,9Ur"> <field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </block> </value> <value name="B"> <block type="math_number" id="3L+Hx`ZZZ[6;bcStTgXv"> <field name="NUM">50</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="s_tu+G)JzfXKRo!,-i?j"> <field name="NAME">timeout3</field> </block> </statement> <next> <block type="timeouts_settimeout" id="|y|12`S1gi{?f|+:!d87"> <field name="NAME">timeout3</field> <field name="DELAY">30</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="]:Q/hgD*3Ye$XrhiCKVK"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="]qeVb0?p3y!^dSP8T!{!"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </statement> <next> <block type="debug" id="jv2kcn+O#/wer{(+o+DW"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="FXin0|uc^i=Wm;0R-Jtj"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="Z##h?{^2;N/L6AAv4~.."> <field name="TEXT">Watt:</field> </block> </value> <value name="ADD1"> <block type="on_source" id="t@LBx#Y!8Fv5({,pHM[,"> <field name="ATTR">state.val</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> </xml> -
@nole
Das Blockly.
Wurde auch etwas optimierte und wie man timeouts verwendet siehst ja. Es sollte immer ein stopp des timeouts davor erfolgen um sicher zu stellen, dass nicht genau dieser schon läuft, sonst passt die ein gestellte Zeit nie und man wundert sich, was exakt bei Dir zu Beginn der Grund Deiner Verwirrung war ;) -
@nole
Das Blockly.
Wurde auch etwas optimierte und wie man timeouts verwendet siehst ja. Es sollte immer ein stopp des timeouts davor erfolgen um sicher zu stellen, dass nicht genau dieser schon läuft, sonst passt die ein gestellte Zeit nie und man wundert sich, was exakt bei Dir zu Beginn der Grund Deiner Verwirrung war ;) -
@nole
Das Blockly.
Wurde auch etwas optimierte und wie man timeouts verwendet siehst ja. Es sollte immer ein stopp des timeouts davor erfolgen um sicher zu stellen, dass nicht genau dieser schon läuft, sonst passt die ein gestellte Zeit nie und man wundert sich, was exakt bei Dir zu Beginn der Grund Deiner Verwirrung war ;) -
@jan1 Das skript sieht bei mir jetzt so aus:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout3">timeout3</variable> <variable type="timeout" id="timeout4">timeout4</variable> </variables> <block type="on_ext" id="FB^,o-|.DkV*l1Zpw1ev" x="-487" y="88"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="w]B4izL8Xi6Xis[a47]}"> <field name="oid">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="o9}:IIEo};jIF72b9AA."> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="k/5vYdt)FO5#4fIMa~m;" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="ViV`%UQ}k~UPs7,j-ryV"> <field name="OP">GTE</field> <value name="A"> <block type="on_source" id="u:72U[-3Dnb8^3xE,|!!"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="!{rp568)Xa_3X^/P-X67"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="{T1t5z14z,+4|DC]gOXz"> <field name="OP">LT</field> <value name="A"> <block type="on_source" id="=QYK}e_eO)R!UP9V$lM^"> <field name="ATTR">oldState.val</field> </block> </value> <value name="B"> <block type="math_number" id="hLUSUOYJL$qWXsN7kTk8"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="U_%ugF^L^YUcG@wP=]~Z"> <field name="NAME">timeout4</field> <next> <block type="control" id="hZTA=BSjCVV{]?(0pVgY"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="R||h%3X{{l}e4p`%Yawz"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id=".o~uvJbWt^KQ`oiI!e$!"> <field name="NAME">timeout4</field> <field name="DELAY">30</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="4S}(|m-Kt)y5P9txPZ+I"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="}wd]{cXQ@x{`KvgI26LW"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="!/F3qNm$R2Q]m/jo|f#T" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="iHA4@^BN{s/[}$=sq31n"> <field name="OP">LTE</field> <value name="A"> <block type="on_source" id="gQBF^?(7;hKwq*ro`;LK"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="E1Co9VoP0Z]U].V}:dk6"> <field name="NUM">50</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="2[[fJeqHxkcfP[F^]I-Q"> <field name="OP">GT</field> <value name="A"> <block type="on_source" id="f5IDFVCeLD}U6K[_XEG@"> <field name="ATTR">oldState.val</field> </block> </value> <value name="B"> <block type="math_number" id="2k,M4Zr}0C_#uR%MuF|Q"> <field name="NUM">50</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_cleartimeout" id="cL@Uuw#K=7Oj=lJL/W:h"> <field name="NAME">timeout4</field> <next> <block type="control" id="dYN%$E|/?la90IKRz{*w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="lU?:V,sk#5e#Zs@){!|m"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="debug" id=",qorWlCkGFLb!+WM7/rO"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="8h9QE+{dve}o}{xFz4^/"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="^^vC/IAZ$YnpMiFFn.nC"> <field name="TEXT">Watt:</field> </block> </value> <value name="ADD1"> <block type="on_source" id="-bW!=3`GYzyDgu_1}k0G"> <field name="ATTR">state.val</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> <block type="on_ext" id=")3Y6O)OSZ6,a.eId9_([" disabled="true" x="-487" y="688"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="FB}qA2j)SArn`ar=BQ8z"> <field name="oid">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="nT8{B{T^As}6|P1eFdAp"> <value name="IF0"> <block type="logic_compare" id="h=ll3)j0~lH*]vID@v{h"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="prv]M@]WP)O8k`WxQv,M"> <field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </block> </value> <value name="B"> <block type="math_number" id="QWMd~%R.#BvSN.-Jr7|S"> <field name="NUM">100</field> </block> </value> </block> </value> <statement name="DO0"> <block type="controls_if" id=";N~?jZO,:^+(B6c4+e.p"> <value name="IF0"> <block type="logic_compare" id="nLGp=iM$L~IydiZi8!Z?"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="#X;Nd8faxS1r?ibN,9Ur"> <field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </block> </value> <value name="B"> <block type="math_number" id="3L+Hx`ZZZ[6;bcStTgXv"> <field name="NUM">50</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="s_tu+G)JzfXKRo!,-i?j"> <field name="NAME">timeout3</field> </block> </statement> <next> <block type="timeouts_settimeout" id="|y|12`S1gi{?f|+:!d87"> <field name="NAME">timeout3</field> <field name="DELAY">30</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="]:Q/hgD*3Ye$XrhiCKVK"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="]qeVb0?p3y!^dSP8T!{!"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </statement> <next> <block type="debug" id="jv2kcn+O#/wer{(+o+DW"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="FXin0|uc^i=Wm;0R-Jtj"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="Z##h?{^2;N/L6AAv4~.."> <field name="TEXT">Watt:</field> </block> </value> <value name="ADD1"> <block type="on_source" id="t@LBx#Y!8Fv5({,pHM[,"> <field name="ATTR">state.val</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> </xml>@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Das skript sieht bei mir jetzt so aus:
warum nie als screenshot??
Am Handy nutzt der xml-Export rein gar nix -
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Das skript sieht bei mir jetzt so aus:
warum nie als screenshot??
Am Handy nutzt der xml-Export rein gar nix -
@jan1 irgendwas stimmt noch nicht, ich weiß nur noch nicht was. Schaltet immer noch ohne erkennbaren Grund aus. Ich probiere den Fehler zu finden.
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Schaltet immer noch ohne erkennbaren Grund aus
und was steht dann im debug?
Hast du mal auf "geändert" getriggert und das Problem bleibt?
ich weiß nicht, ob der Sensor ggf. 2x hintereinander den selben Wert liefert
lass dir vielleicht zusätzlich noch den vorherigen Wert ausgeben -
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Das skript sieht bei mir jetzt so aus:
warum nie als screenshot??
Am Handy nutzt der xml-Export rein gar nix@homoran Die Pumpe hat wenn sie kein Wasser hat, also im Trockenlauf vor der ich die Pumpe schützen will, zwischen 150 und 200 Watt Verbrauch. Im Pumpen mit Wasser über 300 Watt und natürlich wenn der Wasserdruck im Haus ok ist 0 Watt.
Wenn der Druck erreicht ist und die Pumpe abschaltet zeigt die Wattanzeige vom Sonoff PowR2 kurze Zeit noch ein paar Watt an ( Zwischen 4 und 50 Watt). -
@homoran Die Pumpe hat wenn sie kein Wasser hat, also im Trockenlauf vor der ich die Pumpe schützen will, zwischen 150 und 200 Watt Verbrauch. Im Pumpen mit Wasser über 300 Watt und natürlich wenn der Wasserdruck im Haus ok ist 0 Watt.
Wenn der Druck erreicht ist und die Pumpe abschaltet zeigt die Wattanzeige vom Sonoff PowR2 kurze Zeit noch ein paar Watt an ( Zwischen 4 und 50 Watt).@nole ich hatte noch was editiert:
@homoran sagte in Trockenlaufschutz, Problem mit Blockly:
lass dir vielleicht zusätzlich noch den vorherigen Wert ausgeben
-
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Schaltet immer noch ohne erkennbaren Grund aus
und was steht dann im debug?
Hast du mal auf "geändert" getriggert und das Problem bleibt?
ich weiß nicht, ob der Sensor ggf. 2x hintereinander den selben Wert liefert
lass dir vielleicht zusätzlich noch den vorherigen Wert ausgeben -
@homoran Die Pumpe hat wenn sie kein Wasser hat, also im Trockenlauf vor der ich die Pumpe schützen will, zwischen 150 und 200 Watt Verbrauch. Im Pumpen mit Wasser über 300 Watt und natürlich wenn der Wasserdruck im Haus ok ist 0 Watt.
Wenn der Druck erreicht ist und die Pumpe abschaltet zeigt die Wattanzeige vom Sonoff PowR2 kurze Zeit noch ein paar Watt an ( Zwischen 4 und 50 Watt).@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Die Pumpe hat wenn sie kein Wasser hat, also im Trockenlauf vor der ich die Pumpe schützen will, zwischen 150 und 200 Watt
und warum prüfst du nicht auf diesen Bereich, sondern auf >100 um die Pumpe anzuschalten?
