NEWS
[gelöst]Trockenlaufschutz, Problem mit Blockly
-
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Beide Varianten mit "aktualisieren" und mit "geändert" habe ich ausprobiert, aber das Skript schaltet die Pumpe immer noch aus mir unerklärlichen Gründen aus.
"auf Änderung" kann eine weiter Option zu Finetunig sein.
Im Moment passt die von dir angewandte Logik IMHO in keinem Fall zu der geplanten Aufgabe -
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
@homoran Ja, ich habe den Denkfehler nur noch nicht gefunden.
Ja, was?
Schreib bitte mal auf, was passieren soll wen welcher Zustand existiert.
Ich habe dir schon einige spezifische Fragen gestellt, ohne deren Antwort eine Hilfe nicht möglich ist
Leider kommen diese Antworten nicht, nur immer neue UngereimtheitenDu solltest am besten nochmal komplett neu auf Start gehen
-
@homoran Ok, die Pumpe soll automatisch abgeschaltet werden wenn sie trocken läuft um dann mit Wasser aufgefüllt manuel am Sonoff PowR2 wieder eingeschaltet werden.
Im Trockenlauf liegt die Pumpe zwischen 150 und 190 Watt.
Im Normal Pumpbetrieb bei über 300 Watt, allerdings wenn die Pumpe bei erreichen des Wasserdrucks selber abschaltet werden noch ein paar Watt zwischen 4 und 15 angezeigt bis sie dann auf 0 Watt geht.
Ich hatte jetzt mal folgendes Blockly gebastelt:<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout5">timeout5</variable> </variables> <block type="on_ext" id="s@2OLG^WQ0Uz${3=]rcu" x="-487" y="963"> <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="Ai;g1E]yx1YU@CvQU0_?"> <field name="oid">sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="BFG#q9C:Ry7e,fB1,ReS"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="}0|Ibdz}[$u!,s@1umt+" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="umRBm=/5V?A]aGtdTt,("> <field name="OP">GT</field> <value name="A"> <block type="on_source" id="iU5;dy./4gJ2yO1Yy,w,"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="pVQ+AKU+f$FBVl?7#xdZ"> <field name="NUM">51</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="rP:D]GlY.!b+*YH+yKGB"> <field name="OP">LT</field> <value name="A"> <block type="on_source" id="v/2uJg+d3`wLl!~G*m!R"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="[XFgC?0]Uk+4ioWy$bh2"> <field name="NUM">190</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="NkHbFSo4*d9Q*`.:YX{("> <field name="NAME">timeout5</field> <next> <block type="control" id="]Dno,P3;6dYZ:5Xp4;E`"> <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="%`XG|!/aW/;C[bnZj%8f"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id=",XnI}PNQCo`}8_M}Wh{8"> <field name="NAME">timeout5</field> <field name="DELAY">30</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="KRlV$DRq[]=@3e6wW~^Y"> <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="1?u+p!PCnX{mK*+Fc.oY"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="@w,+i@%MeuH{lT)|XxBH" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="Lc64TT##]i[Mj0XMkJH("> <field name="OP">LT</field> <value name="A"> <block type="on_source" id="GYWZfP!GgQH)]K@e[h)6"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="EnF1k6FG|l{~tOj-bmV;"> <field name="NUM">50</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="O]kgyw2#SRIiy|f9Unv."> <field name="OP">GT</field> <value name="A"> <block type="on_source" id="lG/{Z`298OF.VUq~Hhzr"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="h1;v$D/G!wHNBhYqBq;j"> <field name="NUM">191</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_cleartimeout" id="a4*9:he[uuWGBNB9E:#t"> <field name="NAME">timeout5</field> <next> <block type="control" id=")jNRwK{Uik_:R$lzdORT"> <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="vq-KULo#Tk?qM!WE^c[+"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="debug" id="hR+`P5qaHhOUzOb2oFF#"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="U9Upn~:#r}gU|h^9`RwR"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="EjlpL|_8ocdIR=pUZ:GN"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="~W4iG)g]v[b--o;@IZE]"> <field name="TEXT">Watt:</field> </block> </value> <value name="ADD1"> <block type="on_source" id="}^ELsWj}n/S7ee^X@lO1"> <field name="ATTR">state.val</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> </xml>
-
@nole Screenshot vom Blockly?
-
@nole kann man bei deinem Sonoff Schalter auch dann noch die Leistung erfassen/ablesen, wenn dieser ausgeschaltet ist?
Nach meinem Verständnis schaltest Du genau den Sonoff aus, der dir eigentlich erzählen soll wie hoch die Leistungsaufnahme eigentlich ist??
sonoff.0.Sonoff-POWR2-Hauswasserpumpe.ENERGY_Power sonoff.0.Sonoff-POWR2-Hauswasserpumpe.POWER
-
Nein, kann er nicht. Desshalb manuell wieder einschalten.
-
@bbtown bzw ist die Leistung auf Null da ja kein Strom geschaltet ist. Nur der Sonoff hat noch seinen Betriebsstrom, aber die Watt-Anzeige ist dann Null.
-
@nole Skript ist jetzt zu testen eingeschaltet, meine Frau und Kinder gehen jetzt duschen.
Kurze Erklärung: wir wohnen seit einem Jahr wieder in Thailand. -
@nole mit "geändert"
-
-
-
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
manuel am Sonoff PowR2 wieder eingeschaltet werden.
ok - das würde passen, bedingt aber, dass du rund um die Uhr zu Hause (oder wo auch immer) bist.
@bbtown sagte in Trockenlaufschutz, Problem mit Blockly:
Nach meinem Verständnis schaltest Du genau den Sonoff aus, der dir eigentlich erzählen soll wie hoch die Leistungsaufnahme eigentlich ist??
Habe keine sonöffer, aber bei HM geht das. Auch wieder anschalten, denn..
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
bzw ist die Leistung auf Null da ja kein Strom geschaltet ist. Nur der Sonoff hat noch seinen Betriebsstrom, aber die Watt-Anzeige ist dann Null.
@nole
dann bleibt noch die Frage, wann es zum Trockenlaufen kommen kann....@homoran sagte in Trockenlaufschutz, Problem mit Blockly:
kann das auch passieren, dass die Pumpe anspringt ohne dass Wasser da ist?
Oder nur, dass die Pumpe nicht ausgeht, nachdem sie gepumpt hat?Je nach Antwort muss man beide Richtungen überprüfen.
Was soll denn der 30 minütige Timeout bewirken?EDIT:
habe mal auf die Schnelle was gezimmert, daher ohne Gewähr:
EDIT2:
dein steuere mit wahr/falsch ergibt in meinen Augen überhaupt keinen Sinn.
Du schaltest die Pumpe doch manuell am Sonoff an.
Was soll da noch anschalten?
oder, wie schon @BBTown schrieb: Wie soll der Sonoff auf Leistungsänderung reagieren, wenn die Pumpe vorher aus war? -
@homoran Das mit dem Trockenlauf liegt wohl an dem Einlass der Pumpe, da ist irgendwie ein stopfen der hochgedrückt wird. Ich vermute das die dazugehörige Feder nicht mehr ok ist. Der Handwerker sagt aber ok.
Nachfolgendes Bild bei Trockenlauf gerade eben. Pumpe wird wohl scheinbar abgeschaltet, das Skript schaltet sie dann aber wieder ein. -
@homoran werde ich mir gleich ansehen, muß erstmal Wasser auffüllen.
-
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Das mit dem Trockenlauf liegt wohl an dem Einlass der Pumpe, da ist irgendwie ein stopfen der hochgedrückt wird. Ich vermute das die dazugehörige Feder nicht mehr ok ist. Der Handwerker sagt aber ok.
Was hat das jetzt mit dem Skript zu tun?
Bitte gehe das Skript mal ganz neu strukturiert an. Das ist bei Logikoperationen unabdingbar.
Hier geht es schon viel zu lange immer wieder kreuz und quer ohne Struktur!Beispiel/Grundlage:
normale Funktion eines Hauswasserwerks:- Stromzufuhr an
- Druck baut sich auf
- Leistung 200-300 W
- Druck erreicht
- Pumpe schaltet ab
- Leistung 0
Nimm dies mal als Grundlage und schreibe an den entsprechenden Stellen dazu was
- passieren kann
- du von dem Skript an diesen Stellen für Aktionen erwartest.
So kann ich z.B. überhaupt nicht nachvollziehen, warum du bei Druck erreicht - Leistung 0 den Strom abschalten willst?
-
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
das Skript schaltet sie dann aber wieder ein
das ist ja was ich schreibe!
-
@homoran Ich möchte bei Leistung 0 nicht den Strom abschalten, der soll nur abgeschaltet werden wenn die Pumpe sich im Trockenlauf befindet da in der Pumpe kein Wasser mehr ist. Dann kann ich Wasser nachfüllen und den Strom vom Sonoff zur Pumpe am Sonoff bzw iobroker oder web wieder einschalten und die Pumpe nimmt keinen Schaden. Ansonsten soll der Strom immer zur Pumpe durchgeschaltet sein damit diese immer im Standby ist und bei Bedarf den Wasserdruck wieder aufbauen kann. Also bei Leistung 0 ist die Pumpe im Standby sofern das Skript den Strom zur Pumpe gekappt hat weil die Pumpe im Trockenlauf war.
-
@homoran wenn ich bei dem Skript den sonst falls Teil weglasse sollte das doch gehen, oder liege ich da falsch?
-
@nole sagte in Trockenlaufschutz, Problem mit Blockly:
Ich möchte bei Leistung 0 nicht den Strom abschalten, der soll nur abgeschaltet werden wenn die Pumpe sich im Trockenlauf befindet
Mir ist das klar, wie es laufen sollte.
Leider habe ich immer noch nicht alle Informationen.So kommen wir nicht weiter.
Beantworte bitte alle offenen Fragen
-
@homoran Mache ich, aber das muß ich jetzt leider auf morgen verschieben. Ich werde mir morgen früh deinen Vorschlag ansehen und deine Fragen beantworten. Heute sehe ich glaube ich vor lauter Bäumen den Wald nicht mehr. Bis morgen und schonmal vielen herzlichen Dank