Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Script zum Laden/Entladen von Zendure Solarflow

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.6k

Script zum Laden/Entladen von Zendure Solarflow

Geplant Angeheftet Gesperrt Verschoben Blockly
211 Beiträge 13 Kommentatoren 23.3k Aufrufe 10 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Murphy 0M Murphy 0

    Nachtrag, es gibt wohl einen Bug wenn du ein Blockly Skript mit einem XML file importierst genau diese stop Funktion nicht richtig gesetzt wird

    B Online
    B Online
    Berny-K
    schrieb am zuletzt editiert von
    #184

    @Murphy-0 gibt es bezüglich dem Bug mit dem importierten xml file eine Lösung?

    1 Antwort Letzte Antwort
    0
    • Murphy 0M Online
      Murphy 0M Online
      Murphy 0
      schrieb am zuletzt editiert von
      #185

      nein, einfach die Variable beim Stop Befehl nach dem Import neu setzen.

      1 Antwort Letzte Antwort
      0
      • Murphy 0M Online
        Murphy 0M Online
        Murphy 0
        schrieb am zuletzt editiert von Murphy 0
        #186

        @berny-k
        Den markierte Bereich ersetzt du durch ein Zahl, das begrenzt deinen Output auf den eingegebenen Wert. Oder du legst dir ein Objekt unter 0_userdata.0 an so wie ich es gemacht habe. Da schreibst du den Wert auf den du begrenzen willst rein.

        IMG_3901.jpeg

        B 2 Antworten Letzte Antwort
        0
        • Murphy 0M Murphy 0

          @berny-k
          Den markierte Bereich ersetzt du durch ein Zahl, das begrenzt deinen Output auf den eingegebenen Wert. Oder du legst dir ein Objekt unter 0_userdata.0 an so wie ich es gemacht habe. Da schreibst du den Wert auf den du begrenzen willst rein.

          IMG_3901.jpeg

          B Online
          B Online
          Berny-K
          schrieb am zuletzt editiert von
          #187

          @Murphy-0 alles klar, vielen Dank, so langsam komme ich weiter. Ich lasse jetzt mal bis morgen Früh meinen mindestens Hausverbrauch einspeisen und schaue mal ob der SF 800 Pro dann trotzdem offline geht.

          1 Antwort Letzte Antwort
          0
          • Murphy 0M Murphy 0

            @berny-k
            Den markierte Bereich ersetzt du durch ein Zahl, das begrenzt deinen Output auf den eingegebenen Wert. Oder du legst dir ein Objekt unter 0_userdata.0 an so wie ich es gemacht habe. Da schreibst du den Wert auf den du begrenzen willst rein.

            IMG_3901.jpeg

            B Online
            B Online
            Berny-K
            schrieb am zuletzt editiert von
            #188

            @Murphy-0 Hast du mir vielleicht noch einen Tipp, wie ich verhindern kann, dass in einem bestimmten Zeitraum der Akku in den Hausverbrauch entlädt?

            1 Antwort Letzte Antwort
            0
            • Murphy 0M Online
              Murphy 0M Online
              Murphy 0
              schrieb am zuletzt editiert von Murphy 0
              #189

              @berny-k
              Wie schon bei EinspeisenLimit entweder Objekte in userdata anlegen mit StartZeit und Endzeit oder statt mit Variablen dor Testfelder einfügen. Tesxtfeld z. B. mit 19:00 und 08:00 füllen so dass in der Zeit dazwischen eingespeist wird.

              IMG_3903.jpeg

              B 1 Antwort Letzte Antwort
              0
              • Murphy 0M Murphy 0

                @berny-k
                Wie schon bei EinspeisenLimit entweder Objekte in userdata anlegen mit StartZeit und Endzeit oder statt mit Variablen dor Testfelder einfügen. Tesxtfeld z. B. mit 19:00 und 08:00 füllen so dass in der Zeit dazwischen eingespeist wird.

                IMG_3903.jpeg

                B Online
                B Online
                Berny-K
                schrieb am zuletzt editiert von Berny-K
                #190

                @Murphy-0 mein Problem ist, dass ich noch nicht so recht verstanden habe wie man das Einspeisen von PV und Einspeisen vom Akku getrennt steuern kann.
                So wie ich es verstehe, kann ich mit setDeviceAutomationInOutLimit irgendwie nicht zwischen PV Einspeisung und Akku Einspeisung trennen, oder?

                1 Antwort Letzte Antwort
                0
                • Murphy 0M Online
                  Murphy 0M Online
                  Murphy 0
                  schrieb zuletzt editiert von Murphy 0
                  #191

                  Hast du nicht geschrieben dass dein Akku AC seitig angeschlossen ist?
                  Also das was an Strom im Haus verbraucht wird abzüglich das was die Solarmodule liefern wird im Ct Modus dann aus dem Akku genommen, falls vorhanden oder nicht Softwaremäßig begrenzt.

                  Grundvoraussetzung für eine sinnvolle Regelung ist ein Messgerät an der Messstelle.
                  Shelly em3 (pro) oder ähnliches.

                  Damit wird der Überschuß ermittelt und in den Akku geladen.
                  Bei Zukauf von Energie wird falls vorhanden aus dem Akku eingespeist.

                  Regeln tust du Input oder Output.
                  Beim Output kann man ganz einfach auch den Grundverbrauch von Sonnenuntergang bis Sonnenaufgang
                  einstellen und einspeisen.
                  Wie ein Input ohne Messgerät effizient funktionieren soll sehe ich nicht,

                  B 1 Antwort Letzte Antwort
                  0
                  • Murphy 0M Murphy 0

                    Hast du nicht geschrieben dass dein Akku AC seitig angeschlossen ist?
                    Also das was an Strom im Haus verbraucht wird abzüglich das was die Solarmodule liefern wird im Ct Modus dann aus dem Akku genommen, falls vorhanden oder nicht Softwaremäßig begrenzt.

                    Grundvoraussetzung für eine sinnvolle Regelung ist ein Messgerät an der Messstelle.
                    Shelly em3 (pro) oder ähnliches.

                    Damit wird der Überschuß ermittelt und in den Akku geladen.
                    Bei Zukauf von Energie wird falls vorhanden aus dem Akku eingespeist.

                    Regeln tust du Input oder Output.
                    Beim Output kann man ganz einfach auch den Grundverbrauch von Sonnenuntergang bis Sonnenaufgang
                    einstellen und einspeisen.
                    Wie ein Input ohne Messgerät effizient funktionieren soll sehe ich nicht,

                    B Online
                    B Online
                    Berny-K
                    schrieb zuletzt editiert von Berny-K
                    #192

                    @Murphy-0 Ich habe an meinem SF800pro, 4 PV-Module angeschlossen.
                    Den aktuellen Hausverbrauch messe ich mit einem Tasmota Smartmeter den ich im lesiflo Blockly Abfrage.
                    Das Blockly tut damit auch grundsätzlich was es soll und regelt meine Null-Einspeisung.
                    Jetzt möchte ich aber bestimmen wann die Akku-Entladung in den Hausverbrauch stattfinden soll und auch mit wie viel Watt entladen werden soll.
                    Mit dem lesiflo Blockly geht das aktuell ja nicht bzw. Das Blockly macht das jetzt nicht und das würde ich gerne ändern. Dafür suche ich nach Lösungsansätzen.
                    1000000387.png
                    Hier wird ja der PV-Überschuss geregelt in den Hausverbrauch eingespeist. Allerdings wird irgendwann auch vom Akku noch mit eingespeist. Das möchte ich unterbinden bzw. Selbst festlegen wann der Akku in den Hausverbrauch einspeisen soll.

                    Ich glaube ich habe mein Problem erst Mal gelöst. Ich setzte ein das Entlade Limit entsprechen hoch, dann wird auch nicht mehr entladen. Manchmal sieht man den Wald vor lauter Bäume nicht mehr.

                    1 Antwort Letzte Antwort
                    0
                    • L Online
                      L Online
                      lesiflo
                      Most Active
                      schrieb zuletzt editiert von lesiflo
                      #193

                      @berny-k
                      Moin, wenn du keinen dynamischen oder Zeitvariablen Stromvertrag hast ist doch eigentlich egal wann du einspeist. Ansonsten kannst du das über die aktuelle PV-Leistung
                      der Module regeln. Bei meinem Hyper ist das der Datenpunkt solarInputPower. Du gibst nur soviel Leistung am Ausgang zur Verfügung wie die PV Leistung ist.
                      Am besten dafür eine weitere if-Abfrage bauen. Ich nutze mittlerweile javascript, da sieht das dann so aus:

                      Setzen Modus
                      
                      if (ladenErlaubt) {zielModus = 1;}
                      else if (entladenErlaubt) {zielModus = 2;}
                      else if (aktuelleLeistung > 50 && (pvLeistung2 + pvLeistung3) > 80) {zielModus = 3;}
                      
                      Abfragezweig für Modus 3
                      ...
                      // ---------------- Modus 3: PV-gestütztes Entladen ----------------
                      const pvEntladeLimitW = Math.max(0, pvLeistung2 + pvLeistung3 - 100);  // nur Hyper-PV
                      const bedarfHausW     = Math.max(0, Math.floor(aktuelleEinspeisung)); // Netzbedarf
                      const maxLadeleistungGesamt = 800;
                      
                      else if (zielModus === 3) {
                              // --- Modus 3: PV-gestütztes Entladen ---
                      
                              const entladeGesamt = Math.min(
                                  pvEntladeLimitW,        // PV2 + PV3
                                  bedarfHausW,            // nicht mehr als benötigt
                                  maxLadeleistungGesamt   // Gerätegrenze
                              );
                      

                      Für die Math.max und Math.min Funktionen musst du dir in Blockly If-Abfragen bauen. Die gibt es nicht unter Blockly soweit ich weiss.

                      B 1 Antwort Letzte Antwort
                      0
                      • L lesiflo

                        @berny-k
                        Moin, wenn du keinen dynamischen oder Zeitvariablen Stromvertrag hast ist doch eigentlich egal wann du einspeist. Ansonsten kannst du das über die aktuelle PV-Leistung
                        der Module regeln. Bei meinem Hyper ist das der Datenpunkt solarInputPower. Du gibst nur soviel Leistung am Ausgang zur Verfügung wie die PV Leistung ist.
                        Am besten dafür eine weitere if-Abfrage bauen. Ich nutze mittlerweile javascript, da sieht das dann so aus:

                        Setzen Modus
                        
                        if (ladenErlaubt) {zielModus = 1;}
                        else if (entladenErlaubt) {zielModus = 2;}
                        else if (aktuelleLeistung > 50 && (pvLeistung2 + pvLeistung3) > 80) {zielModus = 3;}
                        
                        Abfragezweig für Modus 3
                        ...
                        // ---------------- Modus 3: PV-gestütztes Entladen ----------------
                        const pvEntladeLimitW = Math.max(0, pvLeistung2 + pvLeistung3 - 100);  // nur Hyper-PV
                        const bedarfHausW     = Math.max(0, Math.floor(aktuelleEinspeisung)); // Netzbedarf
                        const maxLadeleistungGesamt = 800;
                        
                        else if (zielModus === 3) {
                                // --- Modus 3: PV-gestütztes Entladen ---
                        
                                const entladeGesamt = Math.min(
                                    pvEntladeLimitW,        // PV2 + PV3
                                    bedarfHausW,            // nicht mehr als benötigt
                                    maxLadeleistungGesamt   // Gerätegrenze
                                );
                        

                        Für die Math.max und Math.min Funktionen musst du dir in Blockly If-Abfragen bauen. Die gibt es nicht unter Blockly soweit ich weiss.

                        B Online
                        B Online
                        Berny-K
                        schrieb zuletzt editiert von
                        #194

                        @lesiflo Danke, wieder ein wertvoller Tipp! Ich bin einfach noch unerfahren mit der Steuerung von BKW mit Speicher aber so langsam werden mir die Zusammenhänge klarer dank der Unterstützung hier. Manchmal sieht man den Wald vor lauter Bäume nicht.
                        Ich will die Akku-Entladung tagsüber begrenzen damit ich für die Nacht noch Kapazität für eine kleine Grundlasteinspeisung habe da ich festgestellt habe, dass der SF800Pro sonst in der Nacht offline geht und von selbst nicht mehr online geht.

                        L 1 Antwort Letzte Antwort
                        0
                        • Murphy 0M Online
                          Murphy 0M Online
                          Murphy 0
                          schrieb zuletzt editiert von Murphy 0
                          #195

                          Mein Vorschlag um das mit deinem benutzen Blocklx umzusetzen wäre folgender:
                          Als 1. ermittelst du wie viel Akkukapazität in % du brauchst um über die Nacht zu kommen.
                          2. erstellst du dir 2 Zeitzonen für output. Eine Tagsüber wo du nach ermitteltem Bedarf einspeist bis zu einem mindest Soc des Akkus den du für Nachts resevierst.
                          Dann die Zeitzone für Nachts wo du einen fest eingestellten Wert einspeist um den Grundverbrauch abzudecken. Wenn cih dazu komme mach ich dir später mal einen Grundaufbau um den Output deines Blocklys.

                          L B 2 Antworten Letzte Antwort
                          0
                          • Murphy 0M Murphy 0

                            Mein Vorschlag um das mit deinem benutzen Blocklx umzusetzen wäre folgender:
                            Als 1. ermittelst du wie viel Akkukapazität in % du brauchst um über die Nacht zu kommen.
                            2. erstellst du dir 2 Zeitzonen für output. Eine Tagsüber wo du nach ermitteltem Bedarf einspeist bis zu einem mindest Soc des Akkus den du für Nachts resevierst.
                            Dann die Zeitzone für Nachts wo du einen fest eingestellten Wert einspeist um den Grundverbrauch abzudecken. Wenn cih dazu komme mach ich dir später mal einen Grundaufbau um den Output deines Blocklys.

                            L Online
                            L Online
                            lesiflo
                            Most Active
                            schrieb zuletzt editiert von lesiflo
                            #196

                            @Murphy-0 sagte in Script zum Laden/Entladen von Zendure Solarflow:

                            du brauchst um über die Macht zu kommen

                            Joda lässt grüssen ...

                            1 Antwort Letzte Antwort
                            0
                            • Murphy 0M Online
                              Murphy 0M Online
                              Murphy 0
                              schrieb zuletzt editiert von
                              #197

                              😁😁😁😁 Apple Autokorrektur, da bist du machtlos

                              1 Antwort Letzte Antwort
                              0
                              • Murphy 0M Murphy 0

                                Mein Vorschlag um das mit deinem benutzen Blocklx umzusetzen wäre folgender:
                                Als 1. ermittelst du wie viel Akkukapazität in % du brauchst um über die Nacht zu kommen.
                                2. erstellst du dir 2 Zeitzonen für output. Eine Tagsüber wo du nach ermitteltem Bedarf einspeist bis zu einem mindest Soc des Akkus den du für Nachts resevierst.
                                Dann die Zeitzone für Nachts wo du einen fest eingestellten Wert einspeist um den Grundverbrauch abzudecken. Wenn cih dazu komme mach ich dir später mal einen Grundaufbau um den Output deines Blocklys.

                                B Online
                                B Online
                                Berny-K
                                schrieb zuletzt editiert von
                                #198

                                @Murphy-0 Vielen Dank, das habe ich jetzt soweit verstanden und schon mal eingebaut. Das teste ich jetzt mal und bin guter Dinge ;-)

                                1 Antwort Letzte Antwort
                                0
                                • Murphy 0M Online
                                  Murphy 0M Online
                                  Murphy 0
                                  schrieb zuletzt editiert von
                                  #199

                                  @berny-k
                                  Mal ein Entwurf auf die Schnelle:

                                  2 Zeitzonen: 07:00 bis 19:00 Einspeisen wenn Akku über 50 % SOC sonst nicht, Akku wird erst mal so weit geladen.
                                  19:00 bis 07:00 Einspeisen für Nachts fest auf 150 Watt eingestellt.

                                  Natürlich ohne Gewähr, aber um im 1. Schritt einen Versuch laufen zu lassen sollte es reichen.
                                  Dann kann man weiter sehen.

                                  Output.jpg

                                  1 Antwort Letzte Antwort
                                  0
                                  • Murphy 0M Online
                                    Murphy 0M Online
                                    Murphy 0
                                    schrieb zuletzt editiert von Murphy 0
                                    #200

                                    Du kannst auch im 'Block für den Tag die die Werte: entladen_ab_PV_Leistung und min_PV_Leistung_laden hoch setzen um den Akku tagsüber schneller zu laden. Ebenso kannst du den mindest SOC hier 50 verändern wie du es brauchst.

                                    Im Block für die Nacht kannst du 150 Watt natürlich für dich sinnvoll einstellen.

                                    Hoffe du kommst so weiter, und immer dran bleiben. Der Anfang hatte bei mir auch so seine Tücken.

                                    B 2 Antworten Letzte Antwort
                                    0
                                    • Murphy 0M Murphy 0

                                      Du kannst auch im 'Block für den Tag die die Werte: entladen_ab_PV_Leistung und min_PV_Leistung_laden hoch setzen um den Akku tagsüber schneller zu laden. Ebenso kannst du den mindest SOC hier 50 verändern wie du es brauchst.

                                      Im Block für die Nacht kannst du 150 Watt natürlich für dich sinnvoll einstellen.

                                      Hoffe du kommst so weiter, und immer dran bleiben. Der Anfang hatte bei mir auch so seine Tücken.

                                      B Online
                                      B Online
                                      Berny-K
                                      schrieb zuletzt editiert von
                                      #201

                                      @Murphy-0 Cool, du bist echt ein Held, weiß gar nicht was ich sagen soll, 1000 Dank! So ähnlich habe ich es jetzt schon umgemodelt. Was ich noch nicht so ganz kapiert habe ist, was es mit dem acMode auf sich hat und wann man den auf welchen Wert setzen muß?

                                      L 1 Antwort Letzte Antwort
                                      0
                                      • B Berny-K

                                        @Murphy-0 Cool, du bist echt ein Held, weiß gar nicht was ich sagen soll, 1000 Dank! So ähnlich habe ich es jetzt schon umgemodelt. Was ich noch nicht so ganz kapiert habe ist, was es mit dem acMode auf sich hat und wann man den auf welchen Wert setzen muß?

                                        L Online
                                        L Online
                                        lesiflo
                                        Most Active
                                        schrieb zuletzt editiert von
                                        #202

                                        @Berny-K sagte in Script zum Laden/Entladen von Zendure Solarflow:

                                        @Murphy-0 Cool, du bist echt ein Held, weiß gar nicht was ich sagen soll, 1000 Dank! So ähnlich habe ich es jetzt schon umgemodelt. Was ich noch nicht so ganz kapiert habe ist, was es mit dem acMode auf sich hat und wann man den auf welchen Wert setzen muß?

                                        acMode
                                        0 = nichts machen
                                        1 = laden
                                        2 = entladen

                                        Den brauchst du aber nur wenn du mit setInputLimit und setOutputlLmit arbeitest. Mit setDeviceAutomationInOutLimit ist der nicht notwendig.

                                        1 Antwort Letzte Antwort
                                        0
                                        • Murphy 0M Online
                                          Murphy 0M Online
                                          Murphy 0
                                          schrieb zuletzt editiert von
                                          #203

                                          Genau😁
                                          Ich habe beim Hyper den ACMode dauerhaft auf 0 und stelle nur serAutomationInOut Level weil das für den Hyper schonender ist wegen Flashrom.

                                          Wenn möglich bei deiner Hardware mache es auch so.

                                          Als nächstes gehen wir dann dran und setzen deine Hysteres .
                                          Glaub blos nicht dass du so bald fertig bist 😂😂😂

                                          B 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          606

                                          Online

                                          32.7k

                                          Benutzer

                                          82.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe