Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. E3DC Hauskraftwerk steuern

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    E3DC Hauskraftwerk steuern

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      ArnoD @psrelax last edited by

      @psrelax
      Ich habe jetzt mal die erste Version vom Tibber Skript und ChargeControl v. 1.5.0 auf Github hochgeladen.
      Branch Issue#10
      Wenn du Lust hast, kannst du das so weit mal testen.
      Es fehlen noch einige Funktionen und aktuell funktioniert das Laden zum günstigsten Stundenblock.
      Die View findest du auch auf Github zum Importieren: View Import Dateien

      Bei ChargeControl Version 1.5.0 hat sich einiges geändert und wenn du die History Daten der PV-Prognose für August benötigst, kannst du bis zum 01.09 warten oder die Daten manuell in die jeweiligen Array Objekte eintragen.

      Hier die Auflistung der Änderungen:

      • Es wird überprüft ob bei den Instanzeinstellungen des e3dc-rscp Adapter __SET_POWER Wiederholintervall auf 0 eingestellt ist.
      • Fehler behoben, dass bei Leerlauf Script ChargeControl SET_POWER_MODE nicht auf 0 gesetzt wurde.
      • Fehler im DebugLog behoben, wo zweimal die gleichen Werte sID_PvLeistung_ADD_W addiert wurden. (Danke an @psrelax für den Hinweis)
      • Kleinere Optimierungen und Fehler behoben für das Script my-pv Heizstab
      • Schnittstelle für das Skript Tibber integriert
      • Berechnung des durchschnittlichen Hausverbrauchs neu erstellt. Es wird jetzt der Durchschnitt für jeden Tag, getrennt in Verbrauch Tag und Nacht berechnet.
        Die Anzeige Autonomiezeit in VIS wurde dadurch auch angepasst. Es wird jetzt die Reichweite der Batterie mit dem neuen Durchschnittsverbrauch berechnet und mit dem aktuellen Verbrauch bei Entladung der Batterie.
      • Alle Objekt ID's IstPvLeistung_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.istPV_LeistungTag_kWh gespeichert.
      • Alle Objekt ID's PrognoseProp_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseProp_kWh gespeichert.
      • Alle Objekt ID's PrognoseAuto_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseAuto_kWh gespeichert.
      • Alle Objekt ID's PrognoseSolcast90_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseSolcast90_kWh gespeichert.
      • Alle Objekt ID's PrognoseSolcast_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseSolcast_kWh gespeichert.
      1 Reply Last reply Reply Quote 0
      • M
        MaLei last edited by

        Hallo zusammen,

        wie upgrade ich eigentlich auf eine neue Charge Control Version?

        Meine Version (1.3.1) läuft seit längerer Zeit sehr gut und ich möchte sie mir nicht "zerstören", indem ich einfach die aktuelle drüber kopiere.

        MaLei

        A 1 Reply Last reply Reply Quote 0
        • A
          ArnoD @MaLei last edited by ArnoD

          @malei
          Das Script ChargeControl 1.3.1 kannst du dir ja vorher in eine txt Datei sichern und dann durch die neue Version austauschen.
          Um eine saubere Installation zu haben, würde ich folgendermaßen vorgehen:
          Im Reiter Skripte das Skript ChargeControl stoppen, öffnen und alles löschen und die neue Version einfügen.
          Wenn du im ersten Teil "USER ANPASSUNGEN" vom Skript Änderungen durchgeführt hast, musst du diese auch in der neuen Version machen (wenn du das alte Script in eine txt Datei gesichert hast, kannst du dir die Zeilen mit Copy Paste eintragen).
          Vor dem Skript Start dann die Werte der Objekte 0_userdata.0.Charge_Control.History.HistoryJSON und 0_userdata.0.Charge_Control.History.HistoryJSON_01 bis 12 in eine txt Datei kopieren um diese nachher wieder herstellen zu können (außer du benötigst die alten PV Prognosen nicht und startest mit dem Diagramm neu).
          Von den 0_userdata.0.Charge_Control.USER_ANPASSUNGEN und 0_userdata.0.Charge_Control.Parameter würde ich nur ein Screenshot machen, um diese nachher wieder eintragen zu können.

          Danach alle Objekte 0_userdata.0.Charge_Control löschen und das Script einmal starte und die neuen Objekte erstellen lassen, danach das Script wieder stoppen und die 0_userdata.0.Charge_Control.USER_ANPASSUNGEN und 0_userdata.0.Charge_Control.Parameter alle Werte vom Screenshot wieder eintragen. Bei den Objekten 0_userdata.0.Charge_Control.History.HistoryJSON_01 bis 12 die Werte aus der txt Datei wieder kopieren und einfügen.

          Wenn du heute noch abwartest, kannst du die Version 1.5.0 von Github installieren und wärst somit auf dem neusten Stand.

          1 Reply Last reply Reply Quote 0
          • A
            ArnoD @ArnoD last edited by ArnoD

            Neue Version Charge-Control auf GitHub hochgeladen.
            Version: 1.5.0
            Änderungen:

            • Es wird überprüft, ob bei den Instanzeinstellungen des e3dc-rscp Adapter __SET_POWER Wiederholintervall auf 0 eingestellt ist.
            • Fehler behoben, dass bei Leerlauf Script ChargeControl SET_POWER_MODE nicht auf 0 gesetzt wurde.
            • Fehler im DebugLog behoben, wo zweimal die gleichen Werte sID_PvLeistung_ADD_W addiert wurden. (Danke an @psrelax für den Hinweis)
            • Kleinere Optimierungen und Fehler behoben für das Script my-pv Heizstab
            • Schnittstelle für das Skript Tibber integriert
            • Berechnung des durchschnittlichen Hausverbrauchs neu erstellt. Es wird jetzt der Durchschnitt für jeden Tag, getrennt in Verbrauch Tag und Nacht berechnet.
              Die Anzeige Autonomiezeit in VIS wurde dadurch auch angepasst. Es wird jetzt die Reichweite der Batterie mit dem neuen Durchschnittsverbrauch berechnet und mit dem aktuellen Verbrauch bei Entladung der Batterie.
            • Alle Objekt ID's IstPvLeistung_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.istPV_LeistungTag_kWh gespeichert.
            • Alle Objekt ID's PrognoseProp_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseProp_kWh gespeichert.
            • Alle Objekt ID's PrognoseAuto_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseAuto_kWh gespeichert.
            • Alle Objekt ID's PrognoseSolcast90_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseSolcast90_kWh gespeichert.
            • Alle Objekt ID's PrognoseSolcast_kWh_1 bis 31 werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID 0_userdata.0.Charge_Control.History.PrognoseSolcast_kWh gespeichert.
            M A 2 Replies Last reply Reply Quote 0
            • M
              MaLei @ArnoD last edited by

              @ArnoD

              Habe 1.5.0 nach deiner Anleitung geupgraded und folgende Fehler im Log:

              19.8.2024, 18:03:22.393 [error]: javascript.0 (23496) script.js.common.E3DC.Charge_Control: ##{"from":"Charge-Control", "message":" Die Objekt ID = 0_userdata.0.Charge_Control.USER_ANPASSUNGEN.10_LogHistoryPath enthält keinen gültigen Wert, bitte prüfen "}##

              19.8.2024, 18:03:22.443 [error]: javascript.0 (23496) script.js.common.E3DC.Charge_Control: ##{"from":"Charge-Control", "message":" Die Objekt ID = 0_userdata.0.Charge_Control.USER_ANPASSUNGEN.30_SolcastResource_Id_Dach2 enthält keinen gültigen Wert, bitte prüfen "}##

              19.8.2024, 18:03:52.235 [info ]: javascript.0 (23496) script.js.common.E3DC.Charge_Control: Fehler bei der Berechnung des reinen Hausverbrauchs: Cannot read properties of null (reading 'val')

              A 1 Reply Last reply Reply Quote 0
              • A
                ArnoD @MaLei last edited by

                @malei

                bitte 0_userdata.0.Charge_Control.USER_ANPASSUNGEN.10_LogHistoryLokal auf false setzen, wenn die Datei nicht lokal gespeichert werden soll oder in 0_userdata.0.Charge_Control.USER_ANPASSUNGEN.10_LogHistoryPath den Pfad eintragen wo diese Datei gespeichert werden soll z.B /opt/iobroker/HistoryPV_Leistung

                Bei 0_userdata.0.Charge_Control.USER_ANPASSUNGEN.30_SolcastResource_Id_Dach2 einfach nichts ' ' eintragen und null löschen.

                Fehler bei der Berechnung des reinen Hausverbrauchs: Cannot read properties of null ist normal, da erst werte gesammelt werden müssen.

                Werde aber diese Fehler im Script korrigieren und abfangen, wo es geht.

                M 1 Reply Last reply Reply Quote 0
                • M
                  MaLei @ArnoD last edited by

                  @arnod sagte in E3DC Hauskraftwerk steuern:

                  /opt/iobroker/HistoryPV_Leistung

                  Die ersten beiden Fehler sind bereinigt. Der 3. bleibt und wird alle zwei Sekunden im Log erneuert.

                  Das Format der Autonomiezeit ist noch nicht perfekt. Bei einstelligen Minuten fehlt die führende Null. Sieht irgendwie komisch aus ...

                  A 2 Replies Last reply Reply Quote 0
                  • A
                    ArnoD @MaLei last edited by

                    @malei sagte in E3DC Hauskraftwerk steuern:

                    Das Format der Autonomiezeit ist noch nicht perfekt. Bei einstelligen Minuten fehlt die führende Null. Sieht irgendwie komisch aus ...

                    Das schaue ich mir mal an, sollte eigentlich mit null sein.

                    1 Reply Last reply Reply Quote 0
                    • A
                      ArnoD @MaLei last edited by ArnoD

                      @malei sagte in E3DC Hauskraftwerk steuern:

                      Die ersten beiden Fehler sind bereinigt. Der 3. bleibt und wird alle zwei Sekunden im Log erneuert.

                      Hast du im Script unter User Anpassungen bei den Pfadangaben zur Wallbox, Wärmepumpe und Heizstab was eingetragen? oder alles unverändert gelassen?

                      Nachtrag:
                      Fehler gefunden, habe vergessen bei der Erstellung der Array Objekte diese mit 0 zu definieren.

                      Kannst du mal unter 0_userdata.0.Charge_Control.Allgemein.arrayHausverbrauch folgenden Text hier kopieren und einfügen:

                      {Montag: { night: [0], day: [0] },Dienstag: { night: [0], day: [0] },Mittwoch: { night: [0], day: [0] },Donnerstag: { night: [0], day: [0] },Freitag: { night: [0], day: [0] },Samstag: { night: [0], day: [0] },Sonntag: { night: [0], day: [0] }}
                      

                      und bei 0_userdata.0.Charge_Control.Allgemein.arrayHausverbrauchDurchschnitt das gleiche und testen ob der Fehler dann weg ist.

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        MaLei @ArnoD last edited by

                        @ArnoD

                        Habe nichts geändert in den Pfadangaben.

                        Habe in beiden Objekten jeweils den Wert eingegeben. Jetzt habe ich folgenden Fehler im Log:

                        javascript.0 20:12:55.385 error script.js.common.E3DC.Charge_Control: SyntaxError: Unexpected token M in JSON at position 1
                        javascript.0 20:12:55.386 error at ScriptStart (script.js.common.E3DC.Charge_Control:171:28)

                        A 1 Reply Last reply Reply Quote 0
                        • A
                          ArnoD @MaLei last edited by

                          @malei

                          Ok, mein Fehler sind ja unterschiedliche Array's
                          Bitte bei 0_userdata.0.Charge_Control.Allgemein.arrayHausverbrauch diesen Text einfügen:

                          {"Montag":{"night":[100],"day":[100]},"Dienstag":{"night":[100],"day":[100]},"Mittwoch":{"night":[100],"day":[100]},"Donnerstag":{"night":[100],"day":[100]},"Freitag":{"night":[100],"day":[100]},"Samstag":{"night":[100],"day":[100]},"Sonntag":{"night":[100],"day":[100]}}
                          

                          und bei 0_userdata.0.Charge_Control.Allgemein.arrayHausverbrauchDurchschnitt diesen:

                          {"Montag":{"night":100,"day":100},"Dienstag":{"night":100,"day":100},"Mittwoch":{"night":100,"day":100},"Donnerstag":{"night":100,"day":100},"Freitag":{"night":100,"day":100},"Samstag":{"night":100,"day":100},"Sonntag":{"night":100,"day":100}}
                          
                          M 1 Reply Last reply Reply Quote 0
                          • M
                            MaLei @ArnoD last edited by

                            @arnod sagte in E3DC Hauskraftwerk steuern:

                            {"Montag":{"night":100,"day":100},"Dienstag":{"night":100,"day":100},"Mittwoch":{"night":100,"day":100},"Donnerstag":{"night":100,"day":100},"Freitag":{"night":100,"day":100},"Samstag":{"night":100,"day":100},"Sonntag":{"night":100,"day":100}}

                            Jetzt kommt wieder die Info:

                            javascript.0 20:46:21.566 info script.js.common.E3DC.Charge_Control: Fehler bei der Berechnung des reinen Hausverbrauchs: Cannot read properties of null (reading 'val')

                            1 Reply Last reply Reply Quote 0
                            • A
                              ArnoD last edited by

                              @malei
                              Das sagt eigentlich aus das eine ID nicht gefunden werden kann und er diese dann nicht einlesen kann.
                              Ich kann diesen Fehler nicht reproduzieren.
                              Kannst du mal prüfen, ob bei allen Objekten, die vom Skript angelegt wurden, nirgends "null" eingetragen ist.

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                MaLei @ArnoD last edited by

                                @arnod

                                Bei der Batteriekapazität steht (null) kWh

                                A 1 Reply Last reply Reply Quote 0
                                • A
                                  ArnoD @MaLei last edited by ArnoD

                                  @malei
                                  ok schreib da mal 0 rein

                                  M 1 Reply Last reply Reply Quote 0
                                  • M
                                    MaLei @ArnoD last edited by

                                    @arnod

                                    Hat nichts geändert

                                    A 1 Reply Last reply Reply Quote 0
                                    • A
                                      ArnoD @MaLei last edited by

                                      @malei
                                      Hast du bei den Usereinstellungen im Skript, den Pfad von der Leistung Wärmepumpe gelöscht?

                                      const sID_LeistungLW_Pumpe_W = 'modbus.2.holdingRegisters.41013_WP_Aufnahmeleistung';
                                      

                                      Müsste bei dir so aussehen:

                                      const sID_LeistungLW_Pumpe_W = ' ';
                                      
                                      M 1 Reply Last reply Reply Quote 0
                                      • M
                                        MaLei @ArnoD last edited by

                                        @arnod

                                        Ok, jetzt ist die Info weg.

                                        Jetzt kommt eine Warnung:

                                        javascript.0 21:15:23.369 warn script.js.common.E3DC.Charge_Control: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}##

                                        A 1 Reply Last reply Reply Quote 0
                                        • A
                                          ArnoD @MaLei last edited by

                                          @malei
                                          Ok, das ist jetzt normal, dieser Fehler sagt aus, dass es zu viele Anfragen hintereinander bei Solcast waren.
                                          Das kommt von den vielen Neustarts und sollte spätestens beim nächsten Abruf der Daten wieder weg sein.

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            MaLei @ArnoD last edited by

                                            @arnod

                                            Sehr gut. Dann beobachte ich das weiter. Vielen Dank für deine Hilfe!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            999
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            70
                                            3270
                                            1102600
                                            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