NEWS
Restlaufzeit Shelly Plug S
-
Vielen Dank, funktioniert super!
-
@paul53 said in Restlaufzeit Shelly Plug S:
@erich-1 sagte: wie ich sowas realisieren kann?
Z.B. per Blockly, das auch gleich den Shelly nach Ablauf der in einem Datenpunkt eingestellten Zeit ausschaltet.
Hab das mal umgesetzt und es funktioniert auch recht gut. Einzigs, wenn die Zeit abgelaufen ist, dann zählt er in den Minus-Bereich einfach weiter ...
Da muss ich noch was einbauen.
-
@erich-1 sagte in Restlaufzeit Shelly Plug S:
Da muss ich noch was einbauen.
Eigentlich nicht, wenn dein Blockly exakt genauso aussieht.
Bitte zeigen!
-
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="`3-s]Pi^V2d8N9J-76fO">Rest</variable> <variable type="interval" id="Intervall">Intervall</variable> </variables> <block type="on" id=".0K53IaR?_D^E^0Qr5}A" x="63" y="88"> <field name="OID">shelly.0.SHPLG-S#DDB4D9#1.Relay0.Switch</field> <field name="CONDITION">gt</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="variables_set" id="=VB)QX`VIsFqa?%dv*/+"> <field name="VAR" id="`3-s]Pi^V2d8N9J-76fO">Rest</field> <value name="VALUE"> <block type="math_arithmetic" id="eS{QUa6y@lfj^#6,Oh#m"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="7nK#jz~d3KX?o]fQ:M/w"> <field name="NUM">10</field> </shadow> </value> <value name="B"> <shadow type="math_number" id="K~b;$sQw#)NjQwQh`Aw."> <field name="NUM">1</field> </shadow> <block type="get_value" id="P$3Tge$tbi#ee:DJmDR2"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Datenpunkte.Gartenpumpe.Laufzeit</field> </block> </value> </block> </value> <next> <block type="timeouts_setinterval" id="OIwHQs|PCd5#%oEjIa7K"> <field name="NAME">Intervall</field> <field name="INTERVAL">6</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="math_change" id="s;cX%Jh7wG?9Q!7Jqy=;"> <field name="VAR" id="`3-s]Pi^V2d8N9J-76fO">Rest</field> <value name="DELTA"> <shadow type="math_number" id="Uivu%JL?GZJ%KmTMlk7;"> <field name="NUM">-1</field> </shadow> </value> <next> <block type="update" id="7t(p,Syit;%jem/{G5!j"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.Gartenpumpe.Restminuten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="]3]MzdqtYE0:d;}ou0b-"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="1yb@9@Vr^BR+-y4E?QsB"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="!~y2XoKP0yV0OQyK8pTw"> <field name="VAR" id="`3-s]Pi^V2d8N9J-76fO">Rest</field> </block> </value> <value name="B"> <shadow type="math_number" id="|nHD{4P4Q+|Wekr{5[Sj"> <field name="NUM">10</field> </shadow> </value> </block> </value> <next> <block type="controls_if" id="oVv#NBAx]^NjD$#isELN"> <value name="IF0"> <block type="logic_compare" id="r/.r#tf.+]ku0qZxOpfa"> <field name="OP">LT</field> <value name="A"> <block type="variables_get" id=".3XFGd.-1ZO~#./41o^v"> <field name="VAR" id="`3-s]Pi^V2d8N9J-76fO">Rest</field> </block> </value> <value name="B"> <block type="math_number" id="VeJQlK+PMZ4{+In3D*Cc"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_clearinterval" id=".Swg1BM$Y*6{hK:7giFF"> <field name="NAME">Intervall</field> <next> <block type="control" id="zv)}0mRZW|7pJKeJD(5w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">shelly.0.SHPLG-S#DDB4D9#1.Relay0.Switch</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="6,b[sF=en3kx5ZbgERlr"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </xml>
MOD-EDIT: Code in code-tags gesetzt!
-
@erich-1 bitte einen Screenshot vom Skript zeigen.
-
-
-
@erich-1 wie weit zählt er ins negstive?
dein Vergleichsoperator stimmt nicht ganz -
@homoran Ich lass ihn mal laufen. Aber auch wenn der Shelly vor dem Ablauf der vorgegebenen Zeit ausgeschaltet wird, dann läuft der Zähler ebenso weiter und dann eben auch in den Bereich unter 0.
-
@erich-1 sagte in Restlaufzeit Shelly Plug S:
wenn der Shelly vor dem Ablauf der vorgegebenen Zeit ausgeschaltet wird, dann läuft der Zähler ebenso weiter
Davon war ja auch nie die Rede, dass das abgefangen werden soll.
@erich-1 sagte in Restlaufzeit Shelly Plug S:
eben auch in den Bereich unter 0.
so steht es ja auch in deinem Blockly
-
@homoran Ja, das kann ich mir schon vorstellen. Aber den Fehler zu lokalisieren, ist für mich doch noch eine Herausforderung.
-
@erich-1 sagte in Restlaufzeit Shelly Plug S:
Aber den Fehler zu lokalisieren, ist für mich doch noch eine Herausforderung.
deswegen hab ich ihn dir ja genannt;
@homoran sagte in Restlaufzeit Shelly Plug S:
@erich-1 wie weit zählt er ins negstive?
dein Vergleichsoperator stimmt nicht ganz -
@homoran Im Moment sagt er -5,9 Minuten und ein Ende ist nicht in Sicht. er zählt vermutlich ewig weiter.
Da stehe ich doch noch irgendwie auf dem Schlauch. So fit in den Blocklys bin ich dann doch noch nicht.
-
@erich-1 sagte in Restlaufzeit Shelly Plug S:
Im Moment sagt er -5,9 Minuten
das wundert mich allerdings!
hiernach
darf er bis -0.1 gehen.was genau hast du gemacht?
wie sehen die beiden Datenpunkte Laufzeit und Restminuten aus? -
@erich-1 sagte: Im Moment sagt er -5,9 Minuten und ein Ende ist nicht in Sicht.
Wenn während der Laufzeit erneut aus- und wieder eingeschaltet wird, laufen mehrere Intervalle, die nicht gestoppt werden können. Um das zu verhindern, setze als ersten Befehl im Trigger zusätzlich ein "stop zyklische Ausführung Intervall".
-
So klappt es auch noch nicht, es wird nach wie vor weitergezählt ...
Aber er hört bei -0,1 auf !!!
-
@homoran said in Restlaufzeit Shelly Plug S:
@erich-1 sagte in Restlaufzeit Shelly Plug S:
Im Moment sagt er -5,9 Minuten
was genau hast du gemacht?
wie sehen die beiden Datenpunkte Laufzeit und Restminuten aus?Da mache ich am Abend weiter, jetzt muss ich dann weg ...
-
@erich-1 sagte: er hört bei -0,1 auf
Er hört bei 0 auf, wenn der Vergleich geändert wird in
falls Rest <= 0 -
@erich-1 sagte in Restlaufzeit Shelly Plug S:
Aber er hört bei -0,1 auf !!!
Nichts nachträglich hinzufügen, auch nicht wenn es das ist, was ich die ganze Zeit sage;
@homoran sagte in Restlaufzeit Shelly Plug S:
hiernach
darf er bis -0.1 gehen.
@homoran sagte in Restlaufzeit Shelly Plug S:
@erich-1 sagte in Restlaufzeit Shelly Plug S:
Aber den Fehler zu lokalisieren, ist für mich doch noch eine Herausforderung.
deswegen hab ich ihn dir ja genannt;
@homoran sagte in Restlaufzeit Shelly Plug S:
@erich-1 wie weit zählt er ins negstive?
dein Vergleichsoperator stimmt nicht ganz -
@erich-1 sagte: wenn der Shelly vor dem Ablauf der vorgegebenen Zeit ausgeschaltet wird, dann läuft der Zähler ebenso weiter
Soll er dann stehen bleiben? Dann müsste auf "wurde geändert" getriggert werden und "falls
Wert
" geprüft werden.