Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Neues Script: Hausspeicher Energiemanager Sonnen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Neues Script: Hausspeicher Energiemanager Sonnen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Scotty42
      Scotty42 @babl last edited by

      Hallo @babl,

      danke für deine Skripte, ich habe die Logik zum Laden und Sperren des Speichers auf Sungrow adaptiert. Die beiden json Dateien (Javascript Editor, nicht Blockly) verlinke ich als GitHub Gist.
      8_Speicher_sperren.json
      7_Speicher_laden.json

      Ich zeichne den Verlauf der Datenpunkte derzeit auf um das Verhalten nachvollziehen zu können. Bislang sieht es so aus, als würde alles wie beabsichtigt funktionieren und der EMS Modus schalten.
      Der Sungrow WR hat einen Force Charge Moduls (App, Web, Modbus Register), der allerdings mehr für Zweitarifzähler gedacht ist, wo grundsätzlich jede Nacht ein günstiges Fenster besteht. Dieser wird mit Ziel SoC und Uhrzeit gesetzt. Diese Änderungen versuche ich zu vermeiden.

      Daher setze ich auf den EMS Übersteuerungsmodus, der das Sungrow EMS für die Batterie deaktiviert, erzwungen Laden, Entladen oder das Sperren erlaubt. Dieser ist meinem Eindruck nach für Elektriker gedacht, die in der entsprechenden Berechtigungsebene der App für Wartungs- / Erweiterungsarbeiten des Speichers diesen Modus nutzen können.

      Für Anwender: An anderen Stellen in den Skripten finden sich Sonnen-Aliase, hier bitte selbst anpassen. In den meisten Fällen wird der SoC referenziert. Ich kommuniziere mit dem Sungrow WR (BYD Batterie) über Modbus. Bei mir ist das der Adapter 3. Bitte proaktiv selbst Eindenken und verstehen.

        Batteriespeicher_Netto_in_Wh = getState('0_userdata.0.Energiemanager.Batteriespeicher_Kapazität').val;
        Zeit_Batteriespeicher = (Batteriespeicher_Netto_in_Wh * getState('modbus.3.inputRegisters.13022_Battery_level').val) / 100;
        if ((() => { const d = new Date().getDay(); return d === 0 ? 7 : d; })() == 6) {
      

      Allerdings auch die PV DC Leistung, wie im Skript zur Berechnung des PV Durchschnitts.

      Wolkentimer_Zeit = (Wolkentimer_Zeit_in_Min * 60) / 5;
      Liste = listsRepeat(getState('modbus.3.inputRegisters.5016_Total_DC_Power').val, Wolkentimer_Zeit);
      on({ id: [].concat(['modbus.3.inputRegisters.5016_Total_DC_Power']), change: 'any' }, async (obj) => {
        let value = obj.state.val;
        let oldValue = obj.oldState.val;
      

      Oder die Last:

      liste = [];
      on({ id: [].concat(['modbus.3.inputRegisters.13007_Load_power']), change: 'ne' }, async (obj) => {
        let value = obj.state.val;
      
      1 Reply Last reply Reply Quote 1
      • B
        babl last edited by

        Es gibt 2 Änderungen, da es mit dem evcc und der Grundlastberechnung so nicht klappte, jetzt sollte um Mitternacht die Differenz berechnet werden und somit auch die reelle Grundlast richtig berechnet werden.

        Grundlast_Berechnung.txt

        Auch im Script Pv Ertrag habe ich noch was geändert, da daß mit dem PV Module voll Schnee mir so nicht gefallen hat, hier die Änderung

        PV-Ertrag_Durchschnitt.txt

        Bitte die beiden alten Scripte durch diese beiden neuen ersetzen.

        1 Reply Last reply Reply Quote 0
        • D
          Doppellhelix last edited by Doppellhelix

          Hat sich erledigt. Sorry

          1 Reply Last reply Reply Quote 0
          • B
            babl last edited by

            Es gibt 2 Änderungen und einen neuen Datenpunkt, damit die Berechnung von EVCC auch funktioniert wird jetzt der Stand um 00:00:02 ausgelesen und in den Datenpunkt geschrieben und dann abends damit gerechnet.

            Deshalb 2 Änderungen.

            1 mal im Script Datenpunkte erzeugen, dies nach der Änderung dann bitte 1 mal ausführen, so wird der Datenpunkt angelegt.

            Datenpunkte_erzeugen.txt

            und dann in der Grundlast Berechnung, es wird dann mit dem neuen Datenpunkt gerechnet.

            Grundlast_Berechnung.txt

            1 Reply Last reply Reply Quote 0
            • R
              raspmad last edited by

              Hallo Babl,
              bin gerade beim Stöbern im Forum auf dein Projekt gestoßen.
              Was für eine Arbeit, Respekt!

              Leider bin ich Fronius Nutzer (Symo Gen 24 Plus & BYD HVS) und kann das nicht 1:1 nutzen

              Bevor ich mich in die Tiefe der WR Anpassungen begebe, hier meine Frage in die Runde:

              Hat sich da schon jemand herangewagt und mag die Infos teilen?

              Würde mich riesig freuen, Vielen Dank

              B 1 Reply Last reply Reply Quote 0
              • B
                babl @raspmad last edited by babl

                @raspmad hi, lade dir mal die daten runter und schau einfach ob du das auf dein system umschreiben kannst, wenn es läuft dann könntest du es ja hier auch veröffentlichen für deine konfiguration, so haben alle was davon

                Hier sind nochmals alle Dateien aus dem Java Script exportiert.

                Energiemanager.zip

                R 2 Replies Last reply Reply Quote 0
                • R
                  raspmad @babl last edited by

                  @babl Moin babl,

                  Vielen Dank für die zur Verfügung Stellung deiner Daten.
                  Ich schaue mir das an und starte einen Versuch das auf Fronius & BYD anzupassen.
                  Wenn das funktionieren sollte, gebe ich das natürlich gerne an die Gemeinschaft weiter.

                  Grüße

                  1 Reply Last reply Reply Quote 1
                  • R
                    raspmad @babl last edited by

                    @babl Hi, kannst du mir bitte noch einen Hinweis geben, in welchen scripten ich den WR und die BYD Batterien anpassen muss. Vielen Dank

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      babl @raspmad last edited by

                      @raspmad Hausspeicher-laden und Hausspeicher Sperre

                      1 Reply Last reply Reply Quote 0
                      • mg99
                        mg99 last edited by mg99

                        @babl mal ein Danke für seine Ideen uns Scripte.

                        @raspmad, ich habe allerdings mit einem Fronius Symo & BYD HMS begonnen die Scripte anzupassen.
                        Außerdem läuft bei mir aWATTar.
                        Teilweise läuft die Anpassung - eine 1:1 Umsetzung mache ich allerdings nicht - wie gesagt, selbst erst am probieren.

                        Grob gesagt die Ansteuerung via aWATTar auf Fronius und BYD funktioniert, inwieweit ich die Grundlastberechnung etc. umsetzte weiß ich noch nicht.
                        Die Ansteuerungsmöglichkeit zu meiner Bösch Wärmepumpe via Modbus habe ich vor kurzem bekommen.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        655
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

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