Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst]Heizstabsteuerung mit PV mit Speicher

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst]Heizstabsteuerung mit PV mit Speicher

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jwedenig Most Active @paul53 last edited by

      @paul53

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="#ZO}puq!byH)d[RA8.u~">stufe</variable>
          <variable id="SXNPrFdTCWx5V%N:sTKY">temp</variable>
          <variable id="k{nMf[SMX?gF-mm8]|=G">mode</variable>
          <variable id="S`Q7El*S8|6o7zjVveF`">ueberschuss</variable>
          <variable type="timeout" id="delayOn">delayOn</variable>
          <variable type="timeout" id="delayOff">delayOff</variable>
        </variables>
        <block type="variables_set" id="V88W|+Iln7v+rgj)=Zch" x="-87" y="37">
          <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
          <value name="VALUE">
            <block type="math_arithmetic" id="UPGMM~b*V$d-a*#;tS[D" inline="false">
              <field name="OP">ADD</field>
              <value name="A">
                <shadow type="math_number" id="~wy?L?:xH(Ni)}x,PFCD">
                  <field name="NUM">1</field>
                </shadow>
                <block type="logic_ternary" id="*J#=-SvRj,t10JsQT^g)" inline="true">
                  <value name="IF">
                    <block type="get_value" id="Di]!Es+iNie7c[+9)*;x">
                      <field name="ATTR">val</field>
                      <field name="OID">shelly.0.shellyplus1pm#d4d4da094ad0#1.Relay0.Switch</field>
                    </block>
                  </value>
                  <value name="THEN">
                    <block type="math_number" id="e=$;Dm*Kdv-Y8so-i~0#">
                      <field name="NUM">1</field>
                    </block>
                  </value>
                  <value name="ELSE">
                    <block type="math_number" id="`O}G]nrYU1J(u^B(cJ4D">
                      <field name="NUM">0</field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="B">
                <shadow type="math_number" id="};}!|b@GbaTL{Y_1M4mO">
                  <field name="NUM">1</field>
                </shadow>
                <block type="logic_ternary" id=";LD9IL!$vH=aILt*01D]" inline="true">
                  <value name="IF">
                    <block type="get_value" id="UP`ZrOpZ0?YW7(BPAKu=">
                      <field name="ATTR">val</field>
                      <field name="OID">shelly.0.shellyplus1pm#a0a3b34d7024#1.Relay0.Switch</field>
                    </block>
                  </value>
                  <value name="THEN">
                    <block type="math_number" id="_#[$Y6bW6I=KD6W@i8-H">
                      <field name="NUM">2</field>
                    </block>
                  </value>
                  <value name="ELSE">
                    <block type="math_number" id="a`){P].I3sR02/vH?$|t">
                      <field name="NUM">0</field>
                    </block>
                  </value>
                </block>
              </value>
            </block>
          </value>
          <next>
            <block type="variables_set" id="7R`M9}=u-yZAG[5j@K)$">
              <field name="VAR" id="SXNPrFdTCWx5V%N:sTKY">temp</field>
              <value name="VALUE">
                <block type="logic_compare" id="6[ohhz;+P4G2[.od]ImC">
                  <field name="OP">LT</field>
                  <value name="A">
                    <block type="get_value" id="4Pb~v{Xo!`=Cczx2o0)l">
                      <field name="ATTR">val</field>
                      <field name="OID">0_userdata.0.Warmwassertemperatur</field>
                    </block>
                  </value>
                  <value name="B">
                    <block type="math_number" id="m_`#qRy{mdN;8Wkutd}Z">
                      <field name="NUM">70</field>
                    </block>
                  </value>
                </block>
              </value>
              <next>
                <block type="on" id="LXkRS$m9ymaz|AU}(3D-">
                  <field name="OID">0_userdata.0.Warmwassertemperatur</field>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="/*xJA|RfsBE6jL/y4RMv">
                      <mutation elseif="1"></mutation>
                      <value name="IF0">
                        <block type="logic_compare" id="abt~D((tU./KQf)r!P5_">
                          <field name="OP">LTE</field>
                          <value name="A">
                            <block type="on_source" id="jxvpxN@GG/Fr3.@{p*Qg">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="math_number" id="KTT4cWRD*14oOM_eHEM-">
                              <field name="NUM">40</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="variables_set" id="B@|!KIBBsgKl%wMaLLMA">
                          <field name="VAR" id="SXNPrFdTCWx5V%N:sTKY">temp</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="~FL/KuNy;B%E^dbEM2~)">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <value name="IF1">
                        <block type="logic_compare" id="0W8i1Y/4aj=@g}9EL)5f">
                          <field name="OP">GTE</field>
                          <value name="A">
                            <block type="on_source" id="Wk:dm:!%FN!b-M}J8DT~">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="math_number" id="#L~Z[Ph@qd5Au:Y/Rxx/">
                              <field name="NUM">55</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO1">
                        <block type="variables_set" id="r+q`|M)Cmk#0{Z*?(tGl">
                          <field name="VAR" id="SXNPrFdTCWx5V%N:sTKY">temp</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="yU:Uu{8YwH%(u[JY_z|5">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                          <next>
                            <block type="timeouts_cleartimeout" id="-#-ZoUoJJzOWm:bymT4$">
                              <field name="NAME">delayOn</field>
                              <next>
                                <block type="controls_if" id="/hND@SJrrY?d.QSbT5g.">
                                  <value name="IF0">
                                    <block type="variables_get" id="uu`Y?^o}1M0kt)2+}PL/">
                                      <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="variables_set" id="8V4C*+}E*6rfG:n8v%9j">
                                      <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                      <value name="VALUE">
                                        <block type="math_number" id="c49%ZEXt|0rJ)c3%]Bg7">
                                          <field name="NUM">0</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="procedures_callnoreturn" id="B/^8#Eh:a=a,b;reJ%$U">
                                          <mutation name="Heizstab"></mutation>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </statement>
                  <next>
                    <block type="on_ext" id="^=k13pGi`kMjtE||vY.J">
                      <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="n:wY~I3GQO$7,0:+.oY=">
                          <field name="oid">evcc.0.status.gridPower</field>
                        </shadow>
                      </value>
                      <statement name="STATEMENT">
                        <block type="variables_set" id="eS.8I`Cbj?X+,h#Ii[CO">
                          <field name="VAR" id="k{nMf[SMX?gF-mm8]|=G">mode</field>
                          <value name="VALUE">
                            <block type="get_value" id="{R{!vXhV35!~PTT}Y^p%">
                              <field name="ATTR">val</field>
                              <field name="OID">evcc.0.loadpoint.1.status.mode</field>
                            </block>
                          </value>
                          <next>
                            <block type="controls_if" id="hmYi@K1![q7IP+`oD|(i">
                              <value name="IF0">
                                <block type="variables_get" id="MZl)|}gNS^ERpHs!P3{^">
                                  <field name="VAR" id="SXNPrFdTCWx5V%N:sTKY">temp</field>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="variables_set" id="U0g[6)DF7XBr6PjSBC1%">
                                  <field name="VAR" id="S`Q7El*S8|6o7zjVveF`">ueberschuss</field>
                                  <value name="VALUE">
                                    <block type="math_arithmetic" id="fF$hk1tVi-R05oeMt;V%">
                                      <field name="OP">MINUS</field>
                                      <value name="A">
                                        <shadow type="math_number" id="ixiYq]/$A+RSmijBZE[,">
                                          <field name="NUM">0</field>
                                        </shadow>
                                      </value>
                                      <value name="B">
                                        <shadow type="math_number" id="Cs,pKE7(!7+1jmwBW.2/">
                                          <field name="NUM">1</field>
                                        </shadow>
                                        <block type="on_source" id="f=2?mi+jttya*Yya7dG.">
                                          <field name="ATTR">state.val</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="comment" id="9X:XKXRgH!xZ!=zZbThm">
                                      <field name="COMMENT">3 mal 750 W</field>
                                      <next>
                                        <block type="controls_if" id="?{[99~rn+X@-!776Gil$">
                                          <mutation elseif="1"></mutation>
                                          <value name="IF0">
                                            <block type="logic_compare" id="d%IZlzT50i(a7nefKk6]">
                                              <field name="OP">LT</field>
                                              <value name="A">
                                                <block type="variables_get" id="lg4*^=8|`oo@q1o#)S/S">
                                                  <field name="VAR" id="S`Q7El*S8|6o7zjVveF`">ueberschuss</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="vP_iZf?M;`@RCY1gD^i:">
                                                  <field name="NUM">1000</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO0">
                                            <block type="timeouts_cleartimeout" id="|#WysqWLOkMz:?pQ*-CZ">
                                              <field name="NAME">delayOn</field>
                                            </block>
                                          </statement>
                                          <value name="IF1">
                                            <block type="logic_negate" id="dch2(fx(/ykyn#X-R`9x">
                                              <value name="BOOL">
                                                <block type="timeouts_gettimeout" id="xJVx:Mi5[U_(t*bw(Yq$">
                                                  <field name="NAME">delayOn</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO1">
                                            <block type="timeouts_settimeout" id="=EI:`22NaF],y?uV^b1B">
                                              <field name="NAME">delayOn</field>
                                              <field name="DELAY">5</field>
                                              <field name="UNIT">min</field>
                                              <statement name="STATEMENT">
                                                <block type="controls_if" id="L^8:G3aDU.xP#v0K7^n[">
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="rRm-_cjXetCm)~hcAE~}">
                                                      <field name="OP">LT</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="k?Bzt4RS=S!C{E%~JKR%">
                                                          <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="?UTjTS/9I`U;T!+,CaMi">
                                                          <field name="NUM">3</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="math_change" id="j%wz0Z;.Z9l}/YcJ|u@O">
                                                      <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                      <value name="DELTA">
                                                        <shadow type="math_number" id="*QTjL.s^?cd[t)LK(x*L">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="procedures_callnoreturn" id="toS^1+[sVXvM12+04n~j">
                                                          <mutation name="Heizstab"></mutation>
                                                          <next>
                                                            <block type="timeouts_cleartimeout" id="WJ?t^mxt0H|jM5A2zX=v">
                                                              <field name="NAME">delayOn</field>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                            </block>
                                          </statement>
                                          <next>
                                            <block type="controls_if" id="U^YFuAk{|bn.*b{Ep;B=">
                                              <mutation elseif="1"></mutation>
                                              <value name="IF0">
                                                <block type="logic_compare" id="GddE`U/xj*}WZ:OC-j_5">
                                                  <field name="OP">GT</field>
                                                  <value name="A">
                                                    <block type="variables_get" id="Ji]v?2~|pv5`v!eeLtH`">
                                                      <field name="VAR" id="S`Q7El*S8|6o7zjVveF`">ueberschuss</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="math_number" id=":{IrB{m-gbX@X2|pVyXZ">
                                                      <field name="NUM">100</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="timeouts_cleartimeout" id="_N.QOqsujv5EzF,e1:^`">
                                                  <field name="NAME">delayOff</field>
                                                </block>
                                              </statement>
                                              <value name="IF1">
                                                <block type="logic_negate" id="0(6[M7amQ.RY*S4wPkX3">
                                                  <value name="BOOL">
                                                    <block type="timeouts_gettimeout" id="pTQJfLPne.dmqq!4K#Q.">
                                                      <field name="NAME">delayOff</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO1">
                                                <block type="timeouts_settimeout" id="b(4T]c7c@_xcR0^(IJQ#">
                                                  <field name="NAME">delayOff</field>
                                                  <field name="DELAY">10</field>
                                                  <field name="UNIT">min</field>
                                                  <statement name="STATEMENT">
                                                    <block type="controls_if" id="N`KrOVa}E?2GEgP!,hnz">
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="!!K9CK;|;n]ddqB#Sv9x">
                                                          <field name="OP">GT</field>
                                                          <value name="A">
                                                            <block type="variables_get" id="(BxBl^T0kZqo1s{{@q2;">
                                                              <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id="aJaeQbM-4{Urt]DVf9Q.">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="math_change" id="Sq6c}B`kReZUISESR)FH">
                                                          <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                          <value name="DELTA">
                                                            <shadow type="math_number" id="!F{}xNQ_117l8Vz1)Bw-">
                                                              <field name="NUM">-1</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="procedures_callnoreturn" id="$}C4r;1}f|vwd?j_@rJ*">
                                                              <mutation name="Heizstab"></mutation>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="timeouts_cleartimeout" id="`D+24l9JDFvo/:O-kz6]">
                                                          <field name="NAME">delayOff</field>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="controls_if" id="C.Q,;pb(q@xOpG/(t]/h">
                                                  <value name="IF0">
                                                    <block type="logic_multi_and" id="2GfeB4yC2kzQT#8ReZ}=">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                                      <value name="AND0">
                                                        <block type="logic_compare" id="U8WSk0}eP|gz:_.8;6n-">
                                                          <field name="OP">LT</field>
                                                          <value name="A">
                                                            <block type="variables_get" id="oO(C6Q[/P,)5tJ1A6zn{">
                                                              <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id="cO:.k%]nbyqdZZKwR:p1">
                                                              <field name="NUM">3</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="AND1">
                                                        <block type="logic_compare" id="]!,y-!oG5N#LXvZNyy8/">
                                                          <field name="OP">EQ</field>
                                                          <value name="A">
                                                            <block type="variables_get" id="wwHeMiuZ`bFf[KL7,Cte">
                                                              <field name="VAR" id="k{nMf[SMX?gF-mm8]|=G">mode</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="text" id="=.QVc$;/f^Kv6Y{u@QTF">
                                                              <field name="TEXT">pv</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="control" id="^s0@1#IZw/Jcv!hTb%Uz">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                      <field name="OID">evcc.0.loadpoint.1.control.off</field>
                                                      <field name="WITH_DELAY">FALSE</field>
                                                      <value name="VALUE">
                                                        <block type="logic_boolean" id=".gM(n78-Gvt7U(D7mB,%">
                                                          <field name="BOOL">TRUE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                              <next>
                                <block type="controls_if" id="@6yDcOCFSz44R_a#Xe+H">
                                  <value name="IF0">
                                    <block type="logic_multi_and" id=";kLlWo4Z^KkbyE{9]G_f">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                                      <value name="AND0">
                                        <block type="logic_compare" id="!Vuk__O@p;-zFN$AS_.@">
                                          <field name="OP">GT</field>
                                          <value name="A">
                                            <block type="variables_get" id="W4}91]k0.ZkPVRWjM7N1">
                                              <field name="VAR" id="S`Q7El*S8|6o7zjVveF`">ueberschuss</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="math_number" id="BrAU7P|Y`C`QT}o]S:PP">
                                              <field name="NUM">1400</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <value name="AND1">
                                        <block type="logic_compare" id="z522o`OY#!eqiKC1j@Ka">
                                          <field name="OP">EQ</field>
                                          <value name="A">
                                            <block type="variables_get" id="9LUmxN=bd,~;kRla7c;@">
                                              <field name="VAR" id="k{nMf[SMX?gF-mm8]|=G">mode</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="text" id="dy^QGNHQbY/Pn.0cW~)N">
                                              <field name="TEXT">off</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <value name="AND2">
                                        <block type="logic_operation" id="SlR}uwy|,^$g5U~MDZl]">
                                          <field name="OP">OR</field>
                                          <value name="A">
                                            <block type="logic_compare" id="zf6iV]]vm#lHfATR9[9+">
                                              <field name="OP">GTE</field>
                                              <value name="A">
                                                <block type="variables_get" id="-J{q##33fYxWc6yfWd6N">
                                                  <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="go.d99LEa_QI6qjodvI)">
                                                  <field name="NUM">3</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="logic_negate" id="2LBj0zx0][PVJA`+Qrjo">
                                              <value name="BOOL">
                                                <block type="variables_get" id="JN-*;$0!:X~p0j5d.Q*H">
                                                  <field name="VAR" id="SXNPrFdTCWx5V%N:sTKY">temp</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="control" id=",L!7S7M.4W~]iB%(Z7|X">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">evcc.0.loadpoint.1.control.pv</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="logic_boolean" id="5Ee$xi7FS%+{f|7I?4hm">
                                          <field name="BOOL">TRUE</field>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="procedures_defnoreturn" id="Q6,+1QdD4Bq`#0DA-`[=" x="412" y="213">
          <field name="NAME">Heizstab</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
          <statement name="STACK">
            <block type="comment" id="D|D*gG#w!Gp~S%8AJBml">
              <field name="COMMENT">750W</field>
              <next>
                <block type="control" id="qYesRpdij9z`93JQ2~w%">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">shelly.0.shellyplus1pm#d4d4da094ad0#1.Relay0.Switch</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_number_property" id="2[3jGAZF1c!_#4rLN^lK">
                      <mutation divisor_input="false"></mutation>
                      <field name="PROPERTY">ODD</field>
                      <value name="NUMBER_TO_CHECK">
                        <shadow type="math_number" id="^mbt0I.5NcdGL)U11cys">
                          <field name="NUM">0</field>
                        </shadow>
                        <block type="variables_get" id="8/kAAEJZB_bXT3h*p`y9">
                          <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="comment" id="YWT-oYB^7=C$h7u@xxGd">
                      <field name="COMMENT">1,5KW</field>
                      <next>
                        <block type="control" id="S(zYFzv^}$AcCYB-`Q`e">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">shelly.0.shellyplus1pm#a0a3b34d7024#1.Relay0.Switch</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_compare" id="2L^iKhb3yF2tiPb$(%l$">
                              <field name="OP">GTE</field>
                              <value name="A">
                                <block type="variables_get" id="/QAECrxs6x0t8U~:B%E*">
                                  <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="PH|,U:I~$fQ*Ja^o2^h0">
                                  <field name="NUM">2</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="comment" id="bRqM.SjN1ACF=s1zPjsq">
                              <field name="COMMENT">Pumpe</field>
                              <next>
                                <block type="control" id="XJyIfW1Z}!M6ZNX{8tM0">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">shelly.0.shellyplus1pm#d4d4da7cdbf0#1.Relay0.Switch</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="logic_compare" id="?rr;,2B*AE76yep!==Fg">
                                      <field name="OP">GT</field>
                                      <value name="A">
                                        <block type="variables_get" id="56:a(I;HZP{%8o|ilyT4">
                                          <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="math_number" id="Ko^37ApDTALq,A?g^DD|">
                                          <field name="NUM">0</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="telegram" id="z/3Pq0u?zYU2o$t#/UAa">
                                      <field name="INSTANCE"></field>
                                      <field name="LOG"></field>
                                      <field name="SILENT">FALSE</field>
                                      <field name="PARSEMODE">default</field>
                                      <field name="ESCAPING">FALSE</field>
                                      <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                      <value name="MESSAGE">
                                        <shadow type="text" id="UNDeozYk*CL[92C}[Au=">
                                          <field name="TEXT"></field>
                                        </shadow>
                                        <block type="text_join" id="f^:ycs#*P(R:|84zvCT^">
                                          <mutation items="8"></mutation>
                                          <value name="ADD0">
                                            <block type="text" id="8RKF;A8nAvV3XoGI4*Z{">
                                              <field name="TEXT">Heizstab 750 W</field>
                                            </block>
                                          </value>
                                          <value name="ADD1">
                                            <block type="logic_ternary" id="~~tVV~oA1rDOnkItJbuy" inline="true">
                                              <value name="IF">
                                                <block type="math_number_property" id="C@4rz^-}.Zt)woz7L^}.">
                                                  <mutation divisor_input="false"></mutation>
                                                  <field name="PROPERTY">ODD</field>
                                                  <value name="NUMBER_TO_CHECK">
                                                    <shadow type="math_number" id="``l$[`aL`MZCpSm,QK{!">
                                                      <field name="NUM">0</field>
                                                    </shadow>
                                                    <block type="variables_get" id="fM|xH{svM|{GTl9WzSZ1">
                                                      <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <value name="THEN">
                                                <block type="text" id="w=yh:evG@jBi#%vv4VW(">
                                                  <field name="TEXT"> Ein</field>
                                                </block>
                                              </value>
                                              <value name="ELSE">
                                                <block type="text" id="Eu3]O!V@4{7arYrY^DHn">
                                                  <field name="TEXT"> Aus</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="ADD2">
                                            <block type="text_newline" id=":Cr#6muo9{1}yvD_n=l%">
                                              <field name="Type">\n</field>
                                            </block>
                                          </value>
                                          <value name="ADD3">
                                            <block type="text" id="=Pp3lLJI/a29j2y^K!nv">
                                              <field name="TEXT">Heizstab 1,5 kW</field>
                                            </block>
                                          </value>
                                          <value name="ADD4">
                                            <block type="logic_ternary" id="/$$,E$8Y*Ych?=fna1ve" inline="true">
                                              <value name="IF">
                                                <block type="logic_compare" id="hk6,1HRWvh8pKE,h!)Zc">
                                                  <field name="OP">GTE</field>
                                                  <value name="A">
                                                    <block type="variables_get" id="C:T6fXDC/v~SKcpqCS0(">
                                                      <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="math_number" id="AeRKfQfc+7c@VUQulbX~">
                                                      <field name="NUM">2</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <value name="THEN">
                                                <block type="text" id="IF(:Z,A-U1(rKR[qQxxV">
                                                  <field name="TEXT"> Ein</field>
                                                </block>
                                              </value>
                                              <value name="ELSE">
                                                <block type="text" id="iU1+m14WQ3PZuIfD@yvs">
                                                  <field name="TEXT"> Aus</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="ADD5">
                                            <block type="text_newline" id="lx,-qNPp9m[f.mZi-8ni">
                                              <field name="Type">\n</field>
                                            </block>
                                          </value>
                                          <value name="ADD6">
                                            <block type="text" id="G[/XZG_ufoL{w[K#%5lm">
                                              <field name="TEXT">Warmwassertemperatur  </field>
                                            </block>
                                          </value>
                                          <value name="ADD7">
                                            <block type="get_value" id="9D7sd%|ddI*q:_s[o=B/">
                                              <field name="ATTR">val</field>
                                              <field name="OID">0_userdata.0.Warmwassertemperatur</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </statement>
        </block>
      </xml>
      
      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @jwedenig last edited by paul53

        @jwedenig sagte: ob diese Anforderung eventuell in dein für mich geschriebenes Blockly integrierbar wäre oder es besser ist, separat zu behandeln

        Es ist besser, die zusätzlich Anforderung in das vorhandene Skript zu integrieren, da sonst die gegenseitige Beeinflussung kaum zu überschauen ist.

        Ich habe das ursprüngliche Skript um die Variable msg ergänzt und die drei Trigger rechts unten realisieren die zusätzliche Anforderung.

        Blockly_temp.JPG

        J 1 Reply Last reply Reply Quote 0
        • J
          jwedenig Most Active @paul53 last edited by

          @paul53
          vielen Dank, ich werde es mal nachbasteln und testen!

          J 1 Reply Last reply Reply Quote 0
          • J
            jwedenig Most Active @jwedenig last edited by

            bin schon sehr gespannt! Danke wieder einmal, hoffe, ich habe alles richtig!

            Bildschirmfoto 2024-09-06 um 16.12.07.png

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @jwedenig last edited by paul53

              @jwedenig sagte: hoffe, ich habe alles richtig!

              Sieht gut aus.
              Damit nach einem Skriptstart mitten am Tag die Variable msg nicht undefined bleibt, setze sie besser auch beim Runterschalten der Stufe.
              Da seit JS-Version 7.0.5 Blockly bei Ablauf der Verzögerung die Timer-Variable automatisch auf null setzt, können die "stop delay" innerhalb der Timeout-Blöcke entfallen.

              Blockly_temp.JPG

              J 1 Reply Last reply Reply Quote 0
              • J
                jwedenig Most Active @paul53 last edited by jwedenig

                @paul53

                So?

                Bildschirmfoto 2024-09-06 um 17.49.28.png

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @jwedenig last edited by

                  @jwedenig sagte: So?

                  Ja.

                  1 Reply Last reply Reply Quote 0
                  • J
                    jwedenig Most Active last edited by

                    @paul53

                    Heute Nacht haben die Parameter Temp und Batt scheinbar gepasst und um 4 Uhr haben sich alle Heizstäbe eingeschalten.
                    Ich bekam auch die Meldung: Erwärmung mit Batterie gestartet.
                    Nach ca 7 Minuten kam aber dann die Meldung:

                    Erwärmung per PV
                    Heizstab 750 W aus
                    Heizstab 1,5kw Ein

                    Nach weiteren 10 Minuten kam:

                    Erwärmung per PV
                    Heizstab 750 W Ein
                    Heizstab 1,5kw Aus

                    Nach weitern 10 Minuten kam:

                    Erwärmung per PV
                    Heizstab 750 W Aus
                    Heizstab 1,5kw Aus

                    War hier also die Batterie unter der Schwelle und somit wird die Routine abgespielt so wie wenn es keinen Überschuss mehr gibt?

                    Wenn es so ist, dann muss ich die Batt Schwelle ein wenig nach unten setzen, sonst bringt das nix

                    Danke vorweg für deine Antwort

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @jwedenig last edited by

                      @jwedenig sagte: Nach ca 7 Minuten kam aber dann die Meldung:

                      Es wird von Stufe 3 ausgehend runter geschaltet, da kein PV-Überschuss vorhanden ist. Das verhindert man mit einer weiteren Sperre.

                      Blockly_temp.JPG

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        jwedenig Most Active @paul53 last edited by

                        @paul53
                        werds probieren, danke!

                        J 1 Reply Last reply Reply Quote 0
                        • J
                          jwedenig Most Active @jwedenig last edited by

                          @paul53

                          Heute wars ähnlich, habe ich die Sperre falsch gesetzt?

                          IMG_2052.jpg

                          Bildschirmfoto 2024-09-09 um 07.56.18.png

                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @jwedenig last edited by paul53

                            @jwedenig sagte: habe ich die Sperre falsch gesetzt?

                            Die Sperre sollte so funktionieren. Der zu vergleichende Text ist identisch zu msg beim Starten?

                            J 1 Reply Last reply Reply Quote 0
                            • J
                              jwedenig Most Active @paul53 last edited by

                              @paul53

                              du meinst " Erwärmung mit Batterie gestartet"?

                              Es ist gleich und so wie auf dem Screenshot

                              paul53 1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @jwedenig last edited by paul53

                                @jwedenig sagte: Es ist gleich

                                Ergänze mal ein "stop delayOff" um 4:00 Uhr.

                                Blockly_temp.JPG

                                J 1 Reply Last reply Reply Quote 0
                                • J
                                  jwedenig Most Active @paul53 last edited by

                                  @paul53
                                  ok, mach ich

                                  J 1 Reply Last reply Reply Quote 0
                                  • J
                                    jwedenig Most Active @jwedenig last edited by

                                    @paul53

                                    Lieber @paul53 !

                                    Mein Heizstab hat sich heut bei 59 Grad eingeschaltet.
                                    Nur eine Frage:
                                    Sollte es nicht erst unter 49 Grad der Fall sein?
                                    Wozu dient die Angabe mit <65 Grad nochmal?

                                    Danke dir!
                                    Liebe Grüße
                                    Jürgen

                                    Bildschirmfoto 2025-08-08 um 13.49.02.png

                                    paul53 1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 @jwedenig last edited by paul53

                                      @jwedenig sagte : Mein Heizstab hat sich heut bei 59 Grad eingeschaltet.

                                      Bei Neustart des Skripts?

                                      @jwedenig sagte in [gelöst]Heizstabsteuerung mit PV mit Speicher:

                                      Wozu dient die Angabe mit <65 Grad nochmal?

                                      Der Wert ist zu hoch. Ändere ihn auf z.B. 55.
                                      Bei Skriptstart muss die Variable temp gesetzt werden, wenn sich die Temperatur innerhalb der Hysterese (49 bis 62 °C) befindet. Sie bleibt sonst undefined.
                                      Alternative, die den Wert vor Skriptneustart bei PV-Überschuss beibehält:

                                      Blockly_temp.JPG

                                      J 1 Reply Last reply Reply Quote 0
                                      • J
                                        jwedenig Most Active @paul53 last edited by

                                        @paul53

                                        alles klar, danke dir

                                        J 1 Reply Last reply Reply Quote 0
                                        • J
                                          jwedenig Most Active @jwedenig last edited by jwedenig

                                          @paul53

                                          Einmal bin ich leider noch lästig:
                                          Heute hat sich der Heizstab bei 57,8 Grad eingeschalten, er sollte habe sich erst unter 45 Grad einschalten
                                          Wo ist mein Fehler?
                                          Danke dir wieder einmal

                                          Bildschirmfoto 2025-08-10 um 15.54.36.png

                                          habe im Log auch Warnungen dazu:
                                          Bildschirmfoto 2025-08-10 um 15.59.18.png

                                          paul53 1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @jwedenig last edited by paul53

                                            @jwedenig sagte: Heute hat sich der Heizstab bei 57,8 Grad eingeschalten, er sollte habe sich erst unter 45 Grad einschalten
                                            Wo ist mein Fehler?

                                            Kann keinen Fehler entdecken, der zu diesem Verhalten führt.

                                            @jwedenig sagte in [gelöst]Heizstabsteuerung mit PV mit Speicher:

                                            im Log auch Warnungen dazu:

                                            Die Warnung betrifft den DP "mqtt.0.evcc.loadpoints.1.mode.set", der offenbar Zahlen erwartet, aber mit Strings geschrieben wird. Zeige bitte die OBJEKTDATEN dieses DP in Code tags.

                                            J 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            830
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            46
                                            2446
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo