NEWS
E3DC Hauskraftwerk steuern
-
OK. Danke.
-
@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 DateienBei 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
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.istPV_LeistungTag_kWh
gespeichert. - Alle Objekt ID's
PrognoseProp_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseProp_kWh
gespeichert. - Alle Objekt ID's
PrognoseAuto_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseAuto_kWh
gespeichert. - Alle Objekt ID's
PrognoseSolcast90_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseSolcast90_kWh
gespeichert. - Alle Objekt
ID's PrognoseSolcast_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseSolcast_kWh
gespeichert.
-
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
-
@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 Objekte0_userdata.0.Charge_Control.History.HistoryJSON
und0_userdata.0.Charge_Control.History.HistoryJSON_01
bis12
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 den0_userdata.0.Charge_Control.USER_ANPASSUNGEN
und0_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 die0_userdata.0.Charge_Control.USER_ANPASSUNGEN
und0_userdata.0.Charge_Control.Parameter
alle Werte vom Screenshot wieder eintragen. Bei den Objekten0_userdata.0.Charge_Control.History.HistoryJSON_01
bis12
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.
-
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
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.istPV_LeistungTag_kWh
gespeichert. - Alle Objekt ID's
PrognoseProp_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseProp_kWh
gespeichert. - Alle Objekt ID's
PrognoseAuto_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseAuto_kWh
gespeichert. - Alle Objekt ID's
PrognoseSolcast90_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseSolcast90_kWh
gespeichert. - Alle Objekt
ID's PrognoseSolcast_kWh_1
bis31
werden nicht mehr benötigt. Daten werden unter der neuen Objekt ID0_userdata.0.Charge_Control.History.PrognoseSolcast_kWh
gespeichert.
-
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')
-
bitte
0_userdata.0.Charge_Control.USER_ANPASSUNGEN.10_LogHistoryLokal
auf false setzen, wenn die Datei nicht lokal gespeichert werden soll oder in0_userdata.0.Charge_Control.USER_ANPASSUNGEN.10_LogHistoryPath
den Pfad eintragen wo diese Datei gespeichert werden soll z.B /opt/iobroker/HistoryPV_LeistungBei
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.
-
@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 ...
-
@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.
-
@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. -
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) -
Ok, mein Fehler sind ja unterschiedliche Array's
Bitte bei0_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}}
-
@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')
-
@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. -
Bei der Batteriekapazität steht (null) kWh
-
@malei
ok schreib da mal 0 rein -
Hat nichts geändert
-
@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 = ' ';
-
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 ====-"}##
-
@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.