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 ArnoD

      @psrelax
      Nach dem LOG Eintrag wird in dem Moment vom Script nichts geregelt. ProgrammAblauf 10 sagt aus das die Ladeschwelle 70% nicht erreicht wurde und E3DC die Steuerung überlassen wird, da das Standardverhalten vom E3DC ist, alles an Überschuss in die Batterie zu laden.
      Notstrom SOC wurde auch nicht erreich, was der einzige Grund wäre, warum das Entladen vom Script verhindert wird.
      15:32 Uhr wurde das Script neu gestartet und danach eigentlich das Gleiche verhalten, ProgrammAblauf 10

      Wenn das Problem wieder auftritt, versuch mal nur das Script zu stoppen und nicht neu zu starten, es dürfte sich dann an deinem Problem nichts ändern.

      Kannst du mal prüfen, was du im Adapter e3dc-rscp unter Einstellungen/Zeitintervalle für Senden/SET_POWER Wiederholintervall eingetragen hast.

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

        @arnod
        Danke für die schnelle Rückmeldung.
        "SET_POWER Wiederholintervall" war auf 1 gestellt. Ist anscheinend mal bei einem Update rein gekommen.
        Kann es das gewesen sein? Was hat das für eine Auswirkung?

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

          @psrelax
          Ja das war der Fehler 🙂

          E3DC hat bei seiner Schnittstelle eine Sicherheit eingebaut, nämlich dass die Werte zur Leistungssteuerung min. alle 6 sek, wiederholt werden müssen, wenn das nicht erfolgt übernimmt E3DC wieder die Steuerung.
          "SET_POWER Wiederholintervall" bewirkt, dass der e3dc-rscp Adapter den Wert SET_POWER_VALUE innerhalb der eingestellten Zeit wiederholt.
          Das Problem ist jetzt aber, dass mein Script genau diesen Sicherheitsmechanismus nutzt und einfach keine Werte mehr setzt, wenn E3DC die Regelung wieder übernehmen soll.
          Durch die Einstellung 1 hat aber der e3dc-rscp Adapter den letzten Wert 0 vom Skript jede sek. gesetzt und somit das Entladen der Batterie verhindert.

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

            @arnod
            Ok, vielen Dank für die Info.
            Wie geht es mit der Tibber-Implementation voran? 🙂

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

              Wie geht es mit der Tibber-Implementation voran? 🙂

              Nicht einfach, aber es wird schon. 🙂

              1 Reply Last reply Reply Quote 1
              • azzkikrboy
                azzkikrboy last edited by

                Hallo @ArnoD

                Ich habe gerade ioBroker upgedated und dann folgede Meldung im Log gesehen.
                Sieht so aus, als ob der javascript-Adapter das zusätzliche Package "FS" nicht installieren kann.
                Script scheint aber trotzdem zu laufen (auf den ersten Blick ...).

                Cannot install custom npm package "fs@latest": Cannot find package '/opt/iobroker/node_modules/@iobroker-javascript.0/fs/package.json' imported from /opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/cjs/lib/adapter/adapter.js
                

                Sollte das per Hand nachinstalliert werden?

                Thomas Braun 1 Reply Last reply Reply Quote 0
                • Thomas Braun
                  Thomas Braun Most Active @azzkikrboy last edited by

                  @azzkikrboy sagte in E3DC Hauskraftwerk steuern:

                  Sollte das per Hand nachinstalliert werden?

                  Nein, lass das so.

                  azzkikrboy 1 Reply Last reply Reply Quote 1
                  • azzkikrboy
                    azzkikrboy @Thomas Braun last edited by

                    @thomas-braun

                    OK. Danke.

                    1 Reply Last reply Reply Quote 0
                    • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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