NEWS
[gelöst]Trockenlaufschutz, Problem mit Blockly
-
@bbtown kommt das durch das kopieren des Bausteins?
-
@nole benutze doch mal die Auswahlliste des Timeout-Bausteins (DropDown) und wähle die korrekte Bezeichnung aus
-
@nole Der timeout 4 hat komischerweise keine Auswahlliste, kann ich die anderen beiden einfach auf 4 ändern?
-
@nole dann lösche den Baustein und füge ihn neu hinzu
-
@bbtown dann ändert sich dieser timeout automatisch von der eingegebenen 3 auf 5
-
@nole Du kannst die Bezeichnung des Timers ändern und die neue Bezeichnung steht danach in den Auswahllisten der Timeout Bausteine zur Verfügung
-
@bbtown ich habe jetzt die beiden anderen auf 4 geändert, das hat geklappt.
-
@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. -
@nole
Das sieht ja schon ganz gut aus hier -
@jan1 was sieht gut aus?
-
@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 -
@jan1 ich arbeite mich gerade gedanklich durch das Blockly, ich habe dank euch allen heute einiges wichtige dazu gelernt. Vielen Dank an euch alle. Wenn alles läuft erfahrt ihr das natürlich. Ich gehe dann jetzt in die Testphase über.
-
@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:
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:
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 ich hatte noch was editiert:
@homoran sagte in Trockenlaufschutz, Problem mit Blockly:
lass dir vielleicht zusätzlich noch den vorherigen Wert ausgeben
-
@homoran ich werde es nochmal mit "geändert" probieren.