Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Script zum Laden/Entladen von Zendure Solarflow

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Script zum Laden/Entladen von Zendure Solarflow

Scheduled Pinned Locked Moved Blockly
149 Posts 10 Posters 19.2k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    lesiflo
    Most Active
    wrote on last edited by lesiflo
    #1

    Hallo zusammen,
    ich habe mal meinem Blocky zum Laden/Entladen von Zendure Solarflow ein eigenes Thema spendiert.
    Ihr könnt damit euren Hub+ACE oder Hyper ohne die App und auch ohne openDTU steuern.

    Es beinhaltet:
    Laden nach Preis, z.B. Tibber (Tibberadapter notwendig)
    Entladen mit Hilfe eines Shelly 3EM oder Smartmeter (Triggerwert)
    PV Leistung im Haus verbrauchen
    Bypass wenn Akku voll
    Überschussladen, z.B. von externer PV

    Benötigt wird dafür der Zendure Solarflow Adapter von @nograx

    Im oberen Teil des Blockly könnt ihr eigene Schwellwerte festlegen:
    output_Abzug: Wert der von der Ausgangsleistung eures Hub/Hyper abgezogen wird
    input_Abzug: Wert der von einer externen AC-Ladequelle (z.B. andere PV Anlage) abgezogen wird.
    entladen_ab_PV_Leistung: Ab welcher PV Leistung der Mini PV Soll eine Einspeisung ins Haus erfolgen
    min_PV_Leistung_laden: Mit welcher minimale PV Leistung soll der Akku aus der Mini PV geladen werden.
    ausgang_max_soll: Maximal Leistungsabgabe ans Haus

    ab70f52d-bc2d-45f8-aa8d-77ffd16a2bd7-image.png
    8e2bec5d-0716-4552-8d62-acf45509e36d-image.png
    1256837e-d9b6-405b-9956-3d01670ebb18-image.png

    Ohne Tibber müsst ihr die Teile im Script rausnehmen.

    514ca95c-f607-47ce-a160-be93f702a1cb-image.png
    8435ebbc-f57e-433a-9027-a3e6fe35764c-image.png

    Release v1.01, Stand 23.04.2025

    Änderung

    • Zusätzlicher Timer beim Umschalten in den Ausgabe-Modus

    Script: Energie.Hyper_V1.01.txt

    T 1 Reply Last reply
    2
    • L lesiflo

      Hallo zusammen,
      ich habe mal meinem Blocky zum Laden/Entladen von Zendure Solarflow ein eigenes Thema spendiert.
      Ihr könnt damit euren Hub+ACE oder Hyper ohne die App und auch ohne openDTU steuern.

      Es beinhaltet:
      Laden nach Preis, z.B. Tibber (Tibberadapter notwendig)
      Entladen mit Hilfe eines Shelly 3EM oder Smartmeter (Triggerwert)
      PV Leistung im Haus verbrauchen
      Bypass wenn Akku voll
      Überschussladen, z.B. von externer PV

      Benötigt wird dafür der Zendure Solarflow Adapter von @nograx

      Im oberen Teil des Blockly könnt ihr eigene Schwellwerte festlegen:
      output_Abzug: Wert der von der Ausgangsleistung eures Hub/Hyper abgezogen wird
      input_Abzug: Wert der von einer externen AC-Ladequelle (z.B. andere PV Anlage) abgezogen wird.
      entladen_ab_PV_Leistung: Ab welcher PV Leistung der Mini PV Soll eine Einspeisung ins Haus erfolgen
      min_PV_Leistung_laden: Mit welcher minimale PV Leistung soll der Akku aus der Mini PV geladen werden.
      ausgang_max_soll: Maximal Leistungsabgabe ans Haus

      ab70f52d-bc2d-45f8-aa8d-77ffd16a2bd7-image.png
      8e2bec5d-0716-4552-8d62-acf45509e36d-image.png
      1256837e-d9b6-405b-9956-3d01670ebb18-image.png

      Ohne Tibber müsst ihr die Teile im Script rausnehmen.

      514ca95c-f607-47ce-a160-be93f702a1cb-image.png
      8435ebbc-f57e-433a-9027-a3e6fe35764c-image.png

      Release v1.01, Stand 23.04.2025

      Änderung

      • Zusätzlicher Timer beim Umschalten in den Ausgabe-Modus

      Script: Energie.Hyper_V1.01.txt

      T Offline
      T Offline
      tege0
      wrote on last edited by
      #2

      Vielen Dank, @lesiflo, für das großartige Skript.

      Ich verwende eine ESP Leskopf und kann die OBIS-Werte aus meinem Stromzähler auslesen. Leider habe ich Tibber nicht, was bewirkt in deinem Skript:

      a1078d80-e04b-4357-bbec-a080ef2398ec-image.png

      Womit könnte ich das füllen?

      leider verstehe ich auch nach deinen ausführlichen Beschreibung die Schwellwerte nicht.

      output_Abzug: Wert der von der Ausgangsleistung eures Hub/Hyper abgezogen wird
      Welche Aspekte sollte ich beachten, wenn ich den Hyper mit Akku und PV-Modul nutze? Wozu führt der Wert?

      input_Abzug: Wert der von einer externen AC-Ladequelle (z.B. andere PV Anlage) abgezogen wird.
      Ich habe eine weitere Mikroanlage mit 600 Wp und würde diese 600 W in die Berechnung einbeziehen, aber ich verstehe nicht, welche Konsequenzen sich daraus ergeben.

      entladen_ab_PV_Leistung: Ab welcher PV Leistung der Mini PV Soll eine Einspeisung ins Haus erfolgen
      Priorität 1 sollte sein, dass der Akku geladen wird. Sollte dann noch Leistung übrig sein, wird das Haus versorgt. Ist die Batterie voll, wird die überschüssige Energie wieder ins Haus geleitet. Wenn die Leistung der zweiten Anlage mit 600 W den Verbrauch abdeckt, soll die Batterie geladen werden.

      min_PV_Leistung_laden: Mit welcher minimale PV Leistung soll der Akku aus der Mini PV geladen werden.
      Alles sollt abhängig vom tatsächlichem Hausverbrauch sein.

      ausgang_max_soll: Maximal Leistungsabgabe ans Haus
      max 1200 bzw. das was das Haus aktuell bracht.

      L 1 Reply Last reply
      0
      • T tege0

        Vielen Dank, @lesiflo, für das großartige Skript.

        Ich verwende eine ESP Leskopf und kann die OBIS-Werte aus meinem Stromzähler auslesen. Leider habe ich Tibber nicht, was bewirkt in deinem Skript:

        a1078d80-e04b-4357-bbec-a080ef2398ec-image.png

        Womit könnte ich das füllen?

        leider verstehe ich auch nach deinen ausführlichen Beschreibung die Schwellwerte nicht.

        output_Abzug: Wert der von der Ausgangsleistung eures Hub/Hyper abgezogen wird
        Welche Aspekte sollte ich beachten, wenn ich den Hyper mit Akku und PV-Modul nutze? Wozu führt der Wert?

        input_Abzug: Wert der von einer externen AC-Ladequelle (z.B. andere PV Anlage) abgezogen wird.
        Ich habe eine weitere Mikroanlage mit 600 Wp und würde diese 600 W in die Berechnung einbeziehen, aber ich verstehe nicht, welche Konsequenzen sich daraus ergeben.

        entladen_ab_PV_Leistung: Ab welcher PV Leistung der Mini PV Soll eine Einspeisung ins Haus erfolgen
        Priorität 1 sollte sein, dass der Akku geladen wird. Sollte dann noch Leistung übrig sein, wird das Haus versorgt. Ist die Batterie voll, wird die überschüssige Energie wieder ins Haus geleitet. Wenn die Leistung der zweiten Anlage mit 600 W den Verbrauch abdeckt, soll die Batterie geladen werden.

        min_PV_Leistung_laden: Mit welcher minimale PV Leistung soll der Akku aus der Mini PV geladen werden.
        Alles sollt abhängig vom tatsächlichem Hausverbrauch sein.

        ausgang_max_soll: Maximal Leistungsabgabe ans Haus
        max 1200 bzw. das was das Haus aktuell bracht.

        L Offline
        L Offline
        lesiflo
        Most Active
        wrote on last edited by lesiflo
        #3

        @tege0 Die beiden Werte der "oder" Verknüpfung kannst du löschen, werden nur bei Tibber benötigt.

        0ba97ef5-9dd8-4421-85b9-cc1c64902a14-image.png

        output_Abzug
        Wenn der Wert auf z.B. 50 steht werden 50 Watt weniger als benötigt in Haus vom BKW eingespeist. Wertebereich sollte so zwischen 30 bis 60 sein. Je kleiner der Wert desto eher kann es passieren das was ins öffentliche Netz einspeist wird.

        input_Abzug
        Sollte deine andere Anlage dafür sorgen, das Strom ins öffentliche Netz eingespeist wird, so kannst du mit diesem Wert festlegen um wieviel dieser Wert reduziert wird.
        Beispiel
        300 Watt gehen ins Netz, der Wert steht auf 50, dann wird dein BKW über den Hyper oder ACE mit 250 Watt über AC geladen. Je grösser der Wert desto weniger werden deine Akkus über die zweite Anlage geladen. Ist er zu klein, wird eventuell aus dem öffentlichen Netz geladen, Bereich zwischen 50 und 80.

        entladen_ab_PV_Leistung und min_PV_Leistung_laden
        Damit wird festgelegt das z.B. wie hier ab 100 W dein Haus/Wohnung bevorzugt aus dem BKW versorgt wird,
        Beispiel
        Die PV Panels deines BKW erzeugen z.B. 400 Watt. Da dieser Wert grösser ist als die 100 Watt von entladen_ab_PV_Leistung wird Strom von deinem BKW ins Haus eingespeist,. Aber immer um Wert min_PV_Leistung_laden reduziert. Somit gehen in dem Fall 350 W ins Haus und 50 W in deine Akkus.

        ausgang_max_soll:
        max 1200 bzw. das was das Haus aktuell bracht. -> Ja, korrekt.

        T 1 Reply Last reply
        1
        • L lesiflo

          @tege0 Die beiden Werte der "oder" Verknüpfung kannst du löschen, werden nur bei Tibber benötigt.

          0ba97ef5-9dd8-4421-85b9-cc1c64902a14-image.png

          output_Abzug
          Wenn der Wert auf z.B. 50 steht werden 50 Watt weniger als benötigt in Haus vom BKW eingespeist. Wertebereich sollte so zwischen 30 bis 60 sein. Je kleiner der Wert desto eher kann es passieren das was ins öffentliche Netz einspeist wird.

          input_Abzug
          Sollte deine andere Anlage dafür sorgen, das Strom ins öffentliche Netz eingespeist wird, so kannst du mit diesem Wert festlegen um wieviel dieser Wert reduziert wird.
          Beispiel
          300 Watt gehen ins Netz, der Wert steht auf 50, dann wird dein BKW über den Hyper oder ACE mit 250 Watt über AC geladen. Je grösser der Wert desto weniger werden deine Akkus über die zweite Anlage geladen. Ist er zu klein, wird eventuell aus dem öffentlichen Netz geladen, Bereich zwischen 50 und 80.

          entladen_ab_PV_Leistung und min_PV_Leistung_laden
          Damit wird festgelegt das z.B. wie hier ab 100 W dein Haus/Wohnung bevorzugt aus dem BKW versorgt wird,
          Beispiel
          Die PV Panels deines BKW erzeugen z.B. 400 Watt. Da dieser Wert grösser ist als die 100 Watt von entladen_ab_PV_Leistung wird Strom von deinem BKW ins Haus eingespeist,. Aber immer um Wert min_PV_Leistung_laden reduziert. Somit gehen in dem Fall 350 W ins Haus und 50 W in deine Akkus.

          ausgang_max_soll:
          max 1200 bzw. das was das Haus aktuell bracht. -> Ja, korrekt.

          T Offline
          T Offline
          tege0
          wrote on last edited by
          #4

          @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
          0
          • T tege0

            @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 Offline
            L Offline
            lesiflo
            Most Active
            wrote on last edited by
            #5

            @tege0 Moin, wie sieht denn dein Script aus?

            T 1 Reply Last reply
            0
            • L lesiflo

              @tege0 Moin, wie sieht denn dein Script aus?

              T Offline
              T Offline
              tege0
              wrote on last edited by
              #6

              @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
              0
              • T tege0

                @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 Offline
                L Offline
                lesiflo
                Most Active
                wrote on last edited by lesiflo
                #7

                @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
                0
                • L 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 Offline
                  T Offline
                  tege0
                  wrote on last edited by
                  #8

                  @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
                  0
                  • T tege0

                    @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 Offline
                    L Offline
                    lesiflo
                    Most Active
                    wrote on last edited by
                    #9

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

                    T 1 Reply Last reply
                    0
                    • L lesiflo

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

                      T Offline
                      T Offline
                      tege0
                      wrote on last edited by
                      #10

                      @lesiflo danke

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

                      1 Reply Last reply
                      0
                      • L Offline
                        L Offline
                        lesiflo
                        Most Active
                        wrote on last edited by
                        #11

                        Neue Version
                        Release v1.01, Stand 23.04.2025

                        Änderung

                        • Zusätzlicher Timer beim Umschalten in den Ausgabe-Modus
                        T 1 Reply Last reply
                        0
                        • L lesiflo

                          Neue Version
                          Release v1.01, Stand 23.04.2025

                          Änderung

                          • Zusätzlicher Timer beim Umschalten in den Ausgabe-Modus
                          T Offline
                          T Offline
                          The_Stig
                          wrote on last edited by The_Stig
                          #12

                          @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
                          0
                          • T 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 Offline
                            L Offline
                            lesiflo
                            Most Active
                            wrote on last edited by lesiflo
                            #13

                            @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
                            0
                            • L 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 Offline
                              T Offline
                              The_Stig
                              wrote on last edited by
                              #14

                              @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
                              0
                              • T The_Stig

                                @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 Offline
                                L Offline
                                lesiflo
                                Most Active
                                wrote on last edited by
                                #15

                                @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
                                0
                                • L lesiflo

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

                                  T Offline
                                  T Offline
                                  The_Stig
                                  wrote on last edited by
                                  #16

                                  @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
                                  0
                                  • T The_Stig

                                    @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 Offline
                                    L Offline
                                    lesiflo
                                    Most Active
                                    wrote on last edited by lesiflo
                                    #17

                                    @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
                                    0
                                    • L 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 Offline
                                      T Offline
                                      The_Stig
                                      wrote on last edited by
                                      #18

                                      @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
                                      0
                                      • T The_Stig

                                        @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 Offline
                                        L Offline
                                        lesiflo
                                        Most Active
                                        wrote on last edited by
                                        #19

                                        @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
                                        0
                                        • L lesiflo

                                          @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 Offline
                                          T Offline
                                          The_Stig
                                          wrote on last edited by
                                          #20

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

                                          T 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          638

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe