Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Script zum Laden/Entladen von Zendure Solarflow

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script zum Laden/Entladen von Zendure Solarflow

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tege0 @lesiflo last edited by

      @lesiflo Hi danke nochmal für deine Unterstützung, der Adapter und das Script läuft aber der Speicher bleibt weiterhin voll, bzw. ich habe nicht das Gefühl das Energie aus dem Speicher genommen wird. Nachdem der Speicher einmal geladen worden ist ist er jetzt im Bypass

      L 1 Reply Last reply Reply Quote 0
      • L
        lesiflo Most Active @tege0 last edited by

        @tege0 Moin, wie sieht denn dein Script aus?

        T 1 Reply Last reply Reply Quote 0
        • T
          tege0 @lesiflo last edited by

          @lesiflo Moin,

          c4ebe981-aeea-4923-9ecf-73d260ecf4cf-image.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="O}e3|VjTzH+.dHc-BE_:">output_Abzug</variable>
              <variable id="Pmn^Rfs2`%vXob$!J=UX">input_Abzug</variable>
              <variable id="C3%p`nQ`AJ8yklMQKidv">entladen_ab_PV_Leistung</variable>
              <variable id="[ZaP{gfTZqGf@aQ2FZ~q">min_PV_Leistung_laden</variable>
              <variable id="8]~yHC.tW6]*GfkCbq)^">ausgang_max_soll</variable>
              <variable id="u8CL)Wex?DocZ58y(/n*">output</variable>
              <variable id="s3oTgk^d]QTYtWfpyOk6">input</variable>
              <variable type="timeout" id="timeout4">timeout4</variable>
              <variable id="4.#!}3STBog53dwlcFl-">ausgang_max</variable>
            </variables>
            <block type="comment" id="aB?G:5$JZsZVN]k[FMf$" x="2512" y="-1538">
              <field name="COMMENT">Setzen der Variablen </field>
              <next>
                <block type="variables_set" id="%T^F?(~}g~8Mo.96hbPc">
                  <field name="VAR" id="O}e3|VjTzH+.dHc-BE_:">output_Abzug</field>
                  <value name="VALUE">
                    <block type="math_number" id="Cd-LtKS?ZQR;3fE)1OfR">
                      <field name="NUM">50</field>
                    </block>
                  </value>
                  <next>
                    <block type="variables_set" id="Kd6%X$(E%a#8:/4N[o[d">
                      <field name="VAR" id="Pmn^Rfs2`%vXob$!J=UX">input_Abzug</field>
                      <value name="VALUE">
                        <block type="math_number" id="6chO$JcvEJqo#aCjc+es">
                          <field name="NUM">50</field>
                        </block>
                      </value>
                      <next>
                        <block type="variables_set" id="uB]{;BN[bdupMg$7^N%|">
                          <field name="VAR" id="C3%p`nQ`AJ8yklMQKidv">entladen_ab_PV_Leistung</field>
                          <value name="VALUE">
                            <block type="math_number" id="[h?+?1Bkt{sL]3tL~hWI">
                              <field name="NUM">100</field>
                            </block>
                          </value>
                          <next>
                            <block type="variables_set" id="Nh!l?R;)f=75+K9:iO@v">
                              <field name="VAR" id="[ZaP{gfTZqGf@aQ2FZ~q">min_PV_Leistung_laden</field>
                              <value name="VALUE">
                                <block type="math_number" id="oOA~o%:[)dg2rqcignZi">
                                  <field name="NUM">50</field>
                                </block>
                              </value>
                              <next>
                                <block type="variables_set" id="C7WP.yVY.~yLboTO)--M">
                                  <field name="VAR" id="8]~yHC.tW6]*GfkCbq)^">ausgang_max_soll</field>
                                  <value name="VALUE">
                                    <block type="math_number" id="!o~v`/:*+;(]p]{H?WTA">
                                      <field name="NUM">1200</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="comment" id="DJvkJQJ02otHqWQ#`O-O">
                                      <field name="COMMENT">Entladen</field>
                                      <next>
                                        <block type="on_ext" id="/S(;`QABriIC^M+!}7T:">
                                          <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^]7^w1{B-!$n`7Iy491">
                                              <field name="oid">mqtt.0.iot.smartmeter.sensor.1.obis.1-0:16.7.0.255.value</field>
                                            </shadow>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="comment" id="cN$0iHH^ClAq2iXC%h2f">
                                              <field name="COMMENT">Setzen der Ausgangsleistung</field>
                                              <next>
                                                <block type="variables_set" id="S2o8L=RQS++7ipXOjjW5">
                                                  <field name="VAR" id="u8CL)Wex?DocZ58y(/n*">output</field>
                                                  <value name="VALUE">
                                                    <block type="math_arithmetic" id="hYf4Qb{Ih$jw*N;WscVV">
                                                      <field name="OP">ADD</field>
                                                      <value name="A">
                                                        <shadow type="math_number" id="9gy04mb1^QNucYMt=}0h">
                                                          <field name="NUM">50</field>
                                                        </shadow>
                                                        <block type="math_arithmetic" id="*1]Xu7P5!!NOH(N|hVz:">
                                                          <field name="OP">MINUS</field>
                                                          <value name="A">
                                                            <shadow type="math_number" id="b{`6?WEyk*89jf,ZZB$.">
                                                              <field name="NUM">50</field>
                                                            </shadow>
                                                            <block type="on_source" id="fT5WF[G1:geas5bB(dK_">
                                                              <field name="ATTR">state.val</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <shadow type="math_number" id="fm2M,2zo4VbkMa}j=/{E">
                                                              <field name="NUM">40</field>
                                                            </shadow>
                                                            <block type="variables_get" id="P_*d{TGR}~6)FGp?beAd">
                                                              <field name="VAR" id="O}e3|VjTzH+.dHc-BE_:">output_Abzug</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <shadow type="math_number" id="3(GI4:w3kpQ]XWp!0hOr">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                        <block type="get_value" id="Qo}VOqo;3/)bnhXo)WG?">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.outputHomePower</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="comment" id="jfTMAZ*=]Yc9N:)Y_sD1">
                                                      <field name="COMMENT">Setzen der Eingangsleistung</field>
                                                      <next>
                                                        <block type="variables_set" id="=I!*y|ga6BOdj=O!X0BN">
                                                          <field name="VAR" id="s3oTgk^d]QTYtWfpyOk6">input</field>
                                                          <value name="VALUE">
                                                            <block type="math_arithmetic" id="~LBc9fG5Z6lJd12/)jT4">
                                                              <field name="OP">ADD</field>
                                                              <value name="A">
                                                                <shadow type="math_number" id="9gy04mb1^QNucYMt=}0h">
                                                                  <field name="NUM">50</field>
                                                                </shadow>
                                                                <block type="math_arithmetic" id="7*xCVML~1.vqU9HsbESx">
                                                                  <field name="OP">MINUS</field>
                                                                  <value name="A">
                                                                    <shadow type="math_number" id="b{`6?WEyk*89jf,ZZB$.">
                                                                      <field name="NUM">50</field>
                                                                    </shadow>
                                                                    <block type="math_arithmetic" id="h8,cPd68a?7lws8h++F@">
                                                                      <field name="OP">MULTIPLY</field>
                                                                      <value name="A">
                                                                        <shadow type="math_number" id="K%zdB%]da)JMw$_M{`0A">
                                                                          <field name="NUM">1</field>
                                                                        </shadow>
                                                                        <block type="on_source" id="4-h:R`sm6~t8DD=?|~bF">
                                                                          <field name="ATTR">state.val</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <shadow type="math_number" id="ruG^sz:{eEwbTM5f6,,3">
                                                                          <field name="NUM">-1</field>
                                                                        </shadow>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <shadow type="math_number" id="$D6ZCKCT8FTu_$opwTau">
                                                                      <field name="NUM">80</field>
                                                                    </shadow>
                                                                    <block type="variables_get" id="l1AP,7Z]*amiz~W%-%1U">
                                                                      <field name="VAR" id="Pmn^Rfs2`%vXob$!J=UX">input_Abzug</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <value name="B">
                                                                <shadow type="math_number" id="3(GI4:w3kpQ]XWp!0hOr">
                                                                  <field name="NUM">1</field>
                                                                </shadow>
                                                                <block type="get_value" id="^#eZ+R?)2{J(aB:7ue?R">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.gridInputPower</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="controls_if" id="9{oE^c13a:31;2ut.DI$">
                                                              <mutation elseif="2" else="1"></mutation>
                                                              <value name="IF0">
                                                                <block type="logic_operation" id="FM{=CcWqi$cZiLrTUt|c" inline="false">
                                                                  <field name="OP">AND</field>
                                                                  <value name="A">
                                                                    <block type="logic_compare" id="8T*pvHzokS3$DFxF[cJw">
                                                                      <field name="OP">GT</field>
                                                                      <value name="A">
                                                                        <block type="variables_get" id="~PO!:gZkJmZA*2|eHeLF">
                                                                          <field name="VAR" id="u8CL)Wex?DocZ58y(/n*">output</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="math_number" id="[w:QpHOP~OO[[A!*WhCR">
                                                                          <field name="NUM">0</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <block type="logic_compare" id="h,i~#@yPRw(6/9i72ti]">
                                                                      <field name="OP">GT</field>
                                                                      <value name="A">
                                                                        <block type="get_value" id="-+SJ366xWJKVS[GlnD+M">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.solarInputPower</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="variables_get" id="cH,sON~zP`WQrqn3m2ZP">
                                                                          <field name="VAR" id="C3%p`nQ`AJ8yklMQKidv">entladen_ab_PV_Leistung</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO0">
                                                                <block type="comment" id="U9B/k%5s]K%^b3s)xv(L">
                                                                  <field name="COMMENT">1. Entladen</field>
                                                                  <next>
                                                                    <block type="controls_if" id="lqfMN+oTfpMH$r=IF.]*">
                                                                      <mutation else="1"></mutation>
                                                                      <value name="IF0">
                                                                        <block type="logic_compare" id="jraX-U4NvmG~iU5_!b_-">
                                                                          <field name="OP">GT</field>
                                                                          <value name="A">
                                                                            <block type="get_value" id="RJ{ZOBC`JZxk?Wh2AUqw">
                                                                              <field name="ATTR">val</field>
                                                                              <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.solarInputPower</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="variables_get" id="a81S}b!V{aCPJeQ@5ZVB">
                                                                              <field name="VAR" id="C3%p`nQ`AJ8yklMQKidv">entladen_ab_PV_Leistung</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO0">
                                                                        <block type="comment" id="BCb_o;s~#Iozzv%Cas0r">
                                                                          <field name="COMMENT">PV Leistung in Hausverbrauch</field>
                                                                          <next>
                                                                            <block type="variables_set" id="^q}qt_N]BU5Q%/J!*t]v">
                                                                              <field name="VAR" id="4.#!}3STBog53dwlcFl-">ausgang_max</field>
                                                                              <value name="VALUE">
                                                                                <block type="math_arithmetic" id="8~SRMHO?%%VAP*(QC#;f">
                                                                                  <field name="OP">MINUS</field>
                                                                                  <value name="A">
                                                                                    <shadow type="math_number" id="Oro!0u03Bc+Eq-2~1;/v">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="get_value" id="2aEM-Q)HyYfnX|7M~YPe">
                                                                                      <field name="ATTR">val</field>
                                                                                      <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.solarInputPower</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="B">
                                                                                    <shadow type="math_number" id="`~i$BG^Jk:{8Au^!MQP:">
                                                                                      <field name="NUM">50</field>
                                                                                    </shadow>
                                                                                    <block type="variables_get" id="}/~/H[`cKB?7xVui=l;-">
                                                                                      <field name="VAR" id="[ZaP{gfTZqGf@aQ2FZ~q">min_PV_Leistung_laden</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </statement>
                                                                      <statement name="ELSE">
                                                                        <block type="variables_set" id="/3-);`|8@{UwDnWT6ksK">
                                                                          <field name="VAR" id="4.#!}3STBog53dwlcFl-">ausgang_max</field>
                                                                          <value name="VALUE">
                                                                            <block type="variables_get" id="I%qi{|oZzXlO9z5nSJu?">
                                                                              <field name="VAR" id="8]~yHC.tW6]*GfkCbq)^">ausgang_max_soll</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </statement>
                                                                      <next>
                                                                        <block type="controls_if" id="C##I)|jndO21{Wa2E/f)">
                                                                          <value name="IF0">
                                                                            <block type="logic_compare" id="}iB?SwpSesKSeva}j?mw">
                                                                              <field name="OP">GT</field>
                                                                              <value name="A">
                                                                                <block type="variables_get" id="*SIAUI61WHJZJ[9o%^2d">
                                                                                  <field name="VAR" id="u8CL)Wex?DocZ58y(/n*">output</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="variables_get" id="B2Z^A/08Ee)7/RPmaoO:">
                                                                                  <field name="VAR" id="4.#!}3STBog53dwlcFl-">ausgang_max</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="DO0">
                                                                            <block type="variables_set" id="SagM`KaJL1rMfwm7Y#3k">
                                                                              <field name="VAR" id="u8CL)Wex?DocZ58y(/n*">output</field>
                                                                              <value name="VALUE">
                                                                                <block type="variables_get" id="Pte_tl99JT[=-/(cgh{3">
                                                                                  <field name="VAR" id="4.#!}3STBog53dwlcFl-">ausgang_max</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                          <next>
                                                                            <block type="controls_if" id="ot$lj:w=.bWFXSy+#U!!">
                                                                              <value name="IF0">
                                                                                <block type="logic_compare" id="S]$B_(:yN`iD@#4cnrbt">
                                                                                  <field name="OP">NEQ</field>
                                                                                  <value name="A">
                                                                                    <block type="get_value" id="tKYKdGEvJ{(Ap`z33|3/">
                                                                                      <field name="ATTR">val</field>
                                                                                      <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.acMode</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="B">
                                                                                    <block type="math_number" id="*-lP0bAkarz+MWbKMpD!">
                                                                                      <field name="NUM">2</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                              <statement name="DO0">
                                                                                <block type="control" id="hkXp_(9CI|Tlx6@w4O;-">
                                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                                  <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.control.acMode</field>
                                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                                  <value name="VALUE">
                                                                                    <block type="math_number" id="5kp15tIIz~ILp@rb3kgW">
                                                                                      <field name="NUM">2</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </statement>
                                                                              <next>
                                                                                <block type="control" id=";Db^:4O1EN|E83*|k[36">
                                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                                  <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.control.setOutputLimit</field>
                                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                                  <value name="VALUE">
                                                                                    <block type="variables_get" id="cj|vI+5rE;a$Z}XkQz`B">
                                                                                      <field name="VAR" id="u8CL)Wex?DocZ58y(/n*">output</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <next>
                                                                                    <block type="timeouts_cleartimeout" id="cP-3iM|ldCLOjhu8Y-ws">
                                                                                      <field name="NAME">output_Abzug</field>
                                                                                    </block>
                                                                                  </next>
                                                                                </block>
                                                                              </next>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                              <value name="IF1">
                                                                <block type="logic_multi_and" id="rcwQ-{!+**l.RM.=S8yt">
                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                                                  <value name="AND0">
                                                                    <block type="logic_compare" id="vOs6dWh(3vUrB_2{m/NV">
                                                                      <field name="OP">GTE</field>
                                                                      <value name="A">
                                                                        <block type="get_value" id="cyB@uS2tIbt2~(|B$ZF]">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.electricLevel</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="math_number" id=";3DCR]/^X8u}`5XE|_-(">
                                                                          <field name="NUM">99</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="AND1">
                                                                    <block type="logic_compare" id="[0jp6f!|5%:|l7y7[6t=">
                                                                      <field name="OP">EQ</field>
                                                                      <value name="A">
                                                                        <block type="get_value" id="x`(O@JLy{A,mc*K[~glM">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.solarInputPower</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="math_number" id="h{g.7y^5fuBZ(x}%o,8!">
                                                                          <field name="NUM">0</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO1">
                                                                <block type="comment" id="%R+{KG.$/r5$P+|4?%Cw">
                                                                  <field name="COMMENT">2. Bypass ein wenn Akku voll, AC Modus auf Output 2. Mode</field>
                                                                  <next>
                                                                    <block type="control" id=";naGVGNG%EO3]/D7la@,">
                                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                      <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.control.acMode</field>
                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                      <value name="VALUE">
                                                                        <block type="math_number" id="_1woz/)YsVt:d!FqS=:i">
                                                                          <field name="NUM">2</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                              <value name="IF2">
                                                                <block type="logic_multi_and" id="RpscAq3vo.ceGvt}lzM;">
                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                                                                  <value name="AND0">
                                                                    <block type="time_compare_ex" id="4Mh;.M3%8}QAkhPEtcv$">
                                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                                      <field name="USE_ACTUAL_TIME">TRUE</field>
                                                                      <field name="OPTION">between</field>
                                                                      <value name="START_TIME">
                                                                        <shadow type="text" id="2Km3*[bQnyaNB:XI6]9%">
                                                                          <field name="TEXT">06:00</field>
                                                                        </shadow>
                                                                      </value>
                                                                      <value name="END_TIME">
                                                                        <shadow type="text" id="KO`i!C([`f|6juoQ~d-d">
                                                                          <field name="TEXT">22:59</field>
                                                                        </shadow>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="AND1">
                                                                    <block type="logic_compare" id="=;k+]!:`FgPIl(ffM)0z">
                                                                      <field name="OP">LT</field>
                                                                      <value name="A">
                                                                        <block type="get_value" id="o55n7*4D=LYnb:P_11Mb">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.electricLevel</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="math_number" id="`))[;%51tDu_Jj9qhYs}">
                                                                          <field name="NUM">100</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="AND2">
                                                                    <block type="logic_compare" id="BdTZijA^#anVn3j{PwI*">
                                                                      <field name="OP">GT</field>
                                                                      <value name="A">
                                                                        <block type="variables_get" id="TtqY39_BvS=6H}t)mLEe">
                                                                          <field name="VAR" id="s3oTgk^d]QTYtWfpyOk6">input</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="math_number" id="wjR@%Hg`by9T-|5Qupoe">
                                                                          <field name="NUM">0</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO2">
                                                                <block type="comment" id="zC5_szd6=wy}Q*]%d_Rb">
                                                                  <field name="COMMENT">3. Laden mit PV Überschuss Hyper</field>
                                                                  <next>
                                                                    <block type="control" id=";512Sny^l9[8H~)*$JIi">
                                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                      <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.control.setInputLimit</field>
                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                      <value name="VALUE">
                                                                        <block type="variables_get" id="_p]0p.2.)e;=_p)|+$|v">
                                                                          <field name="VAR" id="s3oTgk^d]QTYtWfpyOk6">input</field>
                                                                        </block>
                                                                      </value>
                                                                      <next>
                                                                        <block type="controls_if" id="0rLs]HZ7;/1{okt~*dfX">
                                                                          <value name="IF0">
                                                                            <block type="logic_compare" id="Wbb3SQ#qDz^yYA2cpc,Q">
                                                                              <field name="OP">NEQ</field>
                                                                              <value name="A">
                                                                                <block type="get_value" id=")^qtiMQK)k{e-0Ni$R*{">
                                                                                  <field name="ATTR">val</field>
                                                                                  <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.acMode</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="math_number" id="!F;R8(I#,#[B*X:#oO~.">
                                                                                  <field name="NUM">1</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="DO0">
                                                                            <block type="control" id="CCIQ_ICwzn9aV7t#9o%7">
                                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                              <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.control.acMode</field>
                                                                              <field name="WITH_DELAY">FALSE</field>
                                                                              <value name="VALUE">
                                                                                <block type="math_number" id="tX)1OdbEtqK(Q:y^C3Z^">
                                                                                  <field name="NUM">1</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                          <next>
                                                                            <block type="timeouts_cleartimeout" id="@T7,,}^VeetBp^h*!pnp">
                                                                              <field name="NAME">output_Abzug</field>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                              <statement name="ELSE">
                                                                <block type="comment" id="T1mOiNRi*1jPnM#~?:mM">
                                                                  <field name="COMMENT">4.  Ein/Ausgangsleistung auf 0 setzen</field>
                                                                  <next>
                                                                    <block type="timeouts_settimeout" id="?(Ecr)F7}.Cd/9{8%v+=">
                                                                      <field name="NAME">timeout4</field>
                                                                      <field name="DELAY">30</field>
                                                                      <field name="UNIT">sec</field>
                                                                      <statement name="STATEMENT">
                                                                        <block type="control" id="Qhy=K`*Kim%|cM0RX[fs">
                                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                          <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.control.setOutputLimit</field>
                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                          <value name="VALUE">
                                                                            <block type="math_number" id="_E5[`;YcRI]zD#G$VW2C">
                                                                              <field name="NUM">0</field>
                                                                            </block>
                                                                          </value>
                                                                          <next>
                                                                            <block type="control" id="|[L_^Xt!x3J6MHCL]Mbz">
                                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                              <field name="OID">zendure-solarflow.0.gDa3tb.nGY7x38q.control.setInputLimit</field>
                                                                              <field name="WITH_DELAY">FALSE</field>
                                                                              <value name="VALUE">
                                                                                <block type="math_number" id="N!gtEfKU|I%=EMCI:Pm@">
                                                                                  <field name="NUM">0</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </statement>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </xml>
          
          L 1 Reply Last reply Reply Quote 0
          • L
            lesiflo Most Active @tege0 last edited by lesiflo

            @tege0 Wenn du keine andere Bedingung ausser "output" beim Entladen hast solltest du die 2. Bedingung rausnehmen. Ansonsten wird nur entladen wenn deine PV Leistung über dem Schwellwert ist. Nachts dann natürlich nicht.

            T 1 Reply Last reply Reply Quote 0
            • T
              tege0 @lesiflo last edited by

              @lesiflo bin echt nicht so drin im Thema sorry, aber viele Dank für diene Unterstützung.

              Was meinst du mit zweiter Bedingung?
              2. Bypass ein wenn Akku voll, AC Modus auf Output
              753c1f88-1096-4e56-9fd6-83df2f89898f-image.png

              Oder
              ffacafc3-6329-4bb2-9b26-a172be37ab0a-image.png

              Vielleicht von meiner bedingung her heraus.
              Ich habe zwei Anlagen:

              • 1 Anlage: Zendure Hyper 2000 mit AB200S 4x JAM60S20 a 385 Wp Süd eine einzel angeschlossen
              • 2 Anlage: Microwechselrichter mit zwei mppt Ost 330wp und West 330wp

              Ich nutze einen ESP Lesekopf der mir per mqtt die Werte an iob gibt.

              Ich stelle mir vor, dass der Speicher je nach aktueller Quelle (entweder Anlage 1 über DC oder Anlage 2 über AC) geladen wird, und dass ich danach meinen Strombedarf möglichst aus der PV-Anlage und der Batterie decken kann.

              L 1 Reply Last reply Reply Quote 0
              • L
                lesiflo Most Active @tege0 last edited by

                @tege0 Ich meine damit die und-Verknüpfung direkt über "1.Entladen". Die rausnehmen und nur "output > 0" rein.

                T 1 Reply Last reply Reply Quote 0
                • T
                  tege0 @lesiflo last edited by

                  @lesiflo danke

                  acb66854-1cfe-4531-8dcd-f7f440d26765-image.png

                  1 Reply Last reply Reply Quote 0
                  • L
                    lesiflo Most Active last edited by

                    Neue Version
                    Release v1.01, Stand 23.04.2025

                    Änderung

                    • Zusätzlicher Timer beim Umschalten in den Ausgabe-Modus
                    T 1 Reply Last reply Reply Quote 0
                    • T
                      The_Stig @lesiflo last edited by The_Stig

                      @lesiflo Danke dir erstmal für deine Arbeit. Ich will das jetzt auch gerne mal angehen endlich und habe aber keinen Hyper und kein Tibber, sondern nur einen Hub2000. Da ist demnach einiges in deinem Script, was ich nicht brauche bzw. nutzen kann. Jetzt versuche ich grad mal mein Glück, aber so recht blicke ich noch nicht durch, was benötigt ist und was nicht. Wäre dir dankbar, wenn du mal drüber schauen würdest, ob ich da auf dem richtigen Weg bin...

                      So sieht es aktuell bei mir aus:

                      8be53949-522b-4ef5-9304-8c69a50f6793-image.png

                      EDIT: Die Eingangsleistung kann ich ja eigentlich rausnehmen, oder? Die kann ja immer auf dem Max stehen.

                      L 1 Reply Last reply Reply Quote 0
                      • L
                        lesiflo Most Active @The_Stig last edited by lesiflo

                        @the_stig Ja, sieht schon gut aus. Ich würde aber den "sonst falls"-Zweig fürs Laden komplett rausnehmen. Den Bypass würde ich auf Auto (Wert 0) setzen oder jeweils ein- (2) und ausschalten (1).

                        So etwa:
                        024a0016-9866-4295-ac77-def35f3741fc-image.png

                        T 1 Reply Last reply Reply Quote 0
                        • T
                          The_Stig @lesiflo last edited by

                          @lesiflo Danke dir für die schnelle Rückmeldung. Schaue ich mir an. Habe deine Logik offen gesagt noch nicht verstanden und überlege gerade, es mir selbst aufzubauen, damit ich es auch verstehe, was ich steuere 😉 Aber da deine Lösung ja offenbar schon lange gut funktioniert ist das eigentlich auch verschwendete Zeit. Ich werde mal basteln.

                          Noch etwas: ich habe derzeit ein anderes Script, dass morgens meinen Min-Soc von den standardmäßigen 10% temporär auf 5% reduziert. Hintergrund des Gedankens ist, dass ich damit nicht immer dieses morgendliche Auf- und Entladen haben, welches die Zendure-Steuerung macht (bei Min Soc 10% lädt er erst auf 13% und entlädt dann wieder). Bis dann genug PV-LEistung für die Nulleinspeisung da ist, passiert das ein paar Mal. Das möchte ich verhindern. Kann ich dann vor dein Script sowas hier einfach davor packen - oder steht sich da dann die Regelungen gegenseitig im Weg?
                          80b129c6-0eff-462c-9a80-67c30fb6d8b9-image.png

                          L 1 Reply Last reply Reply Quote 0
                          • L
                            lesiflo Most Active @The_Stig last edited by

                            @the_stig Das kannst du so alleine stehen lassen. Der min SOC wird ja in meinem Script nicht berücksichtigt.

                            T 1 Reply Last reply Reply Quote 0
                            • T
                              The_Stig @lesiflo last edited by

                              @lesiflo Danke dir. Da ich ehrlich gesagt wirklich einige deiner Schleifen nicht verstehe, habe ich mal selbst angefangen zu basteln. Deins ist vermutlich deutlich durchdachter, aber so könnte ich mich doch erstmal ranwagen und die ersten Tests starten, oder?

                              2ca1521a-1208-47d0-b755-48f8b8f59f2b-image.png

                              Den 10-Sek Timeout hast du eingebaut, damit nicht sekündlich oder noch mehr nachgeregelt wird, richtig?

                              L 1 Reply Last reply Reply Quote 0
                              • L
                                lesiflo Most Active @The_Stig last edited by lesiflo

                                @the_stig sagte in Script zum Laden/Entladen von Zendure Solarflow:

                                Den 10-Sek Timeout hast du eingebaut, damit nicht sekündlich oder noch mehr nachgeregelt wird, richtig?

                                Nein, der ist dazu da, dass nicht sofort zwischen entladen und PV-Laden umgeschaltet wird. Beim Hyper braucht man keinen Timer, der regelt sehr schnell.

                                Wenn du das so macht's wie oben solltest du im "sonst" Zweig einen Timeout einbauen je nachdem wie schnell der Hub ist und im "mache" Zweig mit "stop timeout" wieder aufheben. Somit wird verhindert, das bei der kleinsten Unterschreitung von 0 der Ausgangswert auf 0 geht und sich dann wieder langsam hochregeln muß.

                                Dein "Zielwert_Einspeisung" sollte auch nicht mit bei der Berechnung des "output" rein. Der dient dazu z.B. 30 Watt von der benötigten Leistung abzuziehen um zu verhindern, das was eingespeist wird.

                                Was genau verstehst du sonst nicht?

                                T 1 Reply Last reply Reply Quote 0
                                • T
                                  The_Stig @lesiflo last edited by

                                  @lesiflo said in Script zum Laden/Entladen von Zendure Solarflow:

                                  Was genau verstehst du sonst nicht?

                                  Ich versuchs mal strukturiert:

                                  8e66fa2b-c3f9-4b46-876c-c625d23b3de2-image.png
                                  -> du setzt hier den Wert Output mit dem output_Abzug, aber warum addierst du den Regelwert einzustellende Ausgangsleistung (das ist doch der in der vorherigen REgelung gesetzte Output-Wert, oder? Verstehe ich logisch einfach nicht.

                                  24c0154e-9b85-4294-a4f7-e5866adcc3a8-image.png
                                  -> das verstehe ich auch nicht. ausgang_max setzt du warum?

                                  2f26dfe4-b3bd-4caf-b005-a226d4fbbc47-image.png
                                  -> Fortfolgend dazu: warum wird dann output mit ausgang_max gesetzt?

                                  Generell: irgendwie fehlt mir noch das Verständnis, wo da Bezug auf den aktuellen Verbrauch genommen wird. Irgendwo müsste doch der output durch einen Verweis auf den aktuellen Gesamtverbrauch genommen werden. Wie gesagt - sorry. Bin da irgendwie ziemlich planlos...

                                  L 1 Reply Last reply Reply Quote 0
                                  • L
                                    lesiflo Most Active @The_Stig last edited by

                                    @the_stig sagte in Script zum Laden/Entladen von Zendure Solarflow:

                                    @lesiflo said in Script zum Laden/Entladen von Zendure Solarflow:

                                    Was genau verstehst du sonst nicht?

                                    Ich versuchs mal strukturiert:

                                    8e66fa2b-c3f9-4b46-876c-c625d23b3de2-image.png
                                    -> du setzt hier den Wert Output mit dem output_Abzug, aber warum addierst du den Regelwert einzustellende Ausgangsleistung (das ist doch der in der vorherigen REgelung gesetzte Output-Wert, oder? Verstehe ich logisch einfach nicht.

                                    24c0154e-9b85-4294-a4f7-e5866adcc3a8-image.png
                                    -> das verstehe ich auch nicht. ausgang_max setzt du warum?

                                    2f26dfe4-b3bd-4caf-b005-a226d4fbbc47-image.png
                                    -> Fortfolgend dazu: warum wird dann output mit ausgang_max gesetzt?

                                    Generell: irgendwie fehlt mir noch das Verständnis, wo da Bezug auf den aktuellen Verbrauch genommen wird. Irgendwo müsste doch der output durch einen Verweis auf den aktuellen Gesamtverbrauch genommen werden. Wie gesagt - sorry. Bin da irgendwie ziemlich planlos...

                                    Zu 1.
                                    "output_Abzug" nehme ich als Puffer um die Ausgabeleistung etwas abzusenken damit zwischen zwei Regelungen keine Einspeisung erfolgt.
                                    Bsp.:
                                    Wert = 300 Watt (ist der Wert aus dem Trigger)
                                    output_Abzug = 50 Watt (kann auch kleiner oder grösser gewählt werden)
                                    out ist dann = 250 Watt

                                    Die Ausgangsleistung muss addiert werden um das was mit output gesetzt wird wieder auszugleichen. Dabei ist der Wert der Ausgangsleistung immer der vorherige Wert.

                                    1. ausgang_max ist der maximale Wert, der vom BKW ins Netz geht wenn Bedarf besteht

                                    PV = 500
                                    min_PV_Leistung_laden = 100
                                    500 - 100 = 400 Watt gehen dann maximal ins Netz und 100 in den Akku

                                    1. Begrenzung des output und somit der einzustellenden Ausgangsleistung

                                    Der Verweis auf den aktuellen Gesamtverbrauch erfolgt hiermit:

                                    0b568b57-0c15-4378-a202-c8b862f8b4c6-image.png

                                    Wert = Triggervariable

                                    T 1 Reply Last reply Reply Quote 0
                                    • T
                                      The_Stig @lesiflo last edited by

                                      @lesiflo Merci vielmals. So wird einiges klarer. Ich teste weiter...

                                      T 1 Reply Last reply Reply Quote 0
                                      • Wildshunter
                                        Wildshunter last edited by Wildshunter

                                        Danke für das Script, läuft seit einigen Wochen komplett "Offline".
                                        Was mir auffällt, bzw. gerne optimieren möchte ist das Schalten des Bypass Relais meines Hyper 2000 im Blocky Script, das schaltet doch sehr häufig. Mit welchen SOC Werten bzw. Ober / Untergrenze arbeitet Ihr denn? Eingestellt ist hier Untergrenze 10% und Obergrenze 98%. Wie würde man im Script das monatliche Laden auf SOC 100% realisieren?
                                        Kann man hier im Blocky etwas optimieren, damit es nicht so häufig schaltet? Wie oft klickert bei Euch das Relais an den Grenzen? (Braun = SOC / gelb = Bypass ON/Off).
                                        PS: Ahhh, ich sehe gerade, Lesliflo, hast oben wohl das Blocky Script paar Änderungen drin, ich verwende ein aelteres, angepasstes von Dir. Ich stelle mal um auf Dein "Neues"....evtl. liegt da das Problem. Vielleicht könntest Du oben in Deiner Beschreibung noch kurz schreiben, was man deaktivieren sollte, wenn kein Tibber vorhanden. Danke!

                                        a5baf2d7-d136-446c-8080-9769aaf5db5c-image.png

                                        L 1 Reply Last reply Reply Quote 0
                                        • L
                                          lesiflo Most Active @Wildshunter last edited by lesiflo

                                          @wildshunter
                                          Hab das mit Tibber jetzt oben beschrieben. Die neue Version beinhaltet genau diese Timeouts gegen das hin und herschalten. Ich arbeite ständig mit 10% und 100%

                                          Laden am 1. des Monats auf 100 % so etwa. Um 00:01 Uhr wird auf 100% gesetzt, um 23:01 Uhr wieder auf 98%. Klappt aber nur wenn an dem Tag auch genug Leistung zum Aufladen vorhanden war.

                                          80951930-825c-4c21-880e-69ff6222e078-image.png

                                          Ansonsten kannst du versuchen noch pvforecast mit einzubauen um einen Tag zu erwischen an dem genug PV-Leistung vorhanden wäre.

                                          Wildshunter 1 Reply Last reply Reply Quote 0
                                          • Wildshunter
                                            Wildshunter @lesiflo last edited by Wildshunter

                                            @lesiflo
                                            klasse, besten Dank, ich teste...

                                            nutzt Du einen Hyper 2000?
                                            Hatte gestern Abend auf das neue Script umgestellt und die beiden Modulteile bzgl. Tibber deaktiviert. Gestern Abend hat Zendure dann noch die Batterie bis ca.60% geladen. AC Modus 2.
                                            Als ich heute morgen geschaut habe war dann Batterie auf 98% (voll), aber keine Solareinspeisung (obwohl Sonne) und keine Abgabe ins Hausnetz. Modus: AC Modus 1 und Bypass aus.... komisch. Manuell jetzt auf Modus 2 gesetzt und Solar läuft wieder, aber im Bypass.... irgendwas scheint da noch nicht korrekt zu laufen im Hyper...

                                            Grüße

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            917
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            74
                                            6017
                                            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