NEWS
E3DC Hauskraftwerk steuern
-
@arnod said in E3DC Hauskraftwerk steuern:
Für das Script Charge-Control benötigst du nur die Adapter e3dc-rscp und Modbus. ...
Auf Github findest du auch eine Anleitung Charge-Control, wo eigentlich alles Wichtige beschrieben ist.Cool, danke - soweit läuft's jetzt.
Zusatzfrage: Wo ließe sich denn im Charge-Control hton und htoff einstellen, falls ich das nutzen wollte? Hab ich bisher nur im Konfig-File vom E3DC-Control gesehen. -
@bluebean
Diese Funktion habe ich nicht übernommen, da es mir hier nur um die Laderegelung der Batterie geht.
Die ganzen anderen Funktionen wie aWATTar, HTon, HToff, Wallbox sind in diesem Script nicht enthalten. -
Ist nicht so entscheidend, für mich ist auch eher die dynamische Ausfallreserve wichtig.
EDIT:
Ach so, wie ist es jetzt eigentlich mit dem SET_POWER Wiederholintervall?
Wie in der Anleitung auf 0 oder wie irgendwo in einem Post gesagt auf 10 oder 9? -
@bluebean sagte in E3DC Hauskraftwerk steuern:
Ist nicht so entscheidend, für mich ist auch eher die dynamische Ausfallreserve wichtig.
EDIT:
Ach so, wie ist es jetzt eigentlich mit dem SET_POWER Wiederholintervall?
Wie in der Anleitung auf 0 oder wie irgendwo in einem Post gesagt auf 10 oder 9?Immer auf 0 einstellen, wo steht das die auf 10 oder 9 eingestellt werden soll?
Wenn das Wiederholintervall nicht auf 0 eingestellt wird, dann wird vom Adapter regelmäßig der letzte Wert gesendet und man würde nicht mehr mitbekommen, wen das Script einmal stoppt und gar nicht mehr regelt.
Bei 0 muss min. alle 9 sek. ein Befehl vom Script kommen, sonst übernimmt E3DC wieder die Regelung. -
Neue Version Charge-Control auf GitHub hochgeladen.
Version: 1.0.19
Änderungen:- Für die maximale Ladeleistung der Batterie wird jetzt das Objekt
e3dc-rscp.0.EMS.SYS_SPECS.maxBatChargePower
verwendet. - Bereinigung der html Daten Proplanta geändert
- Kleinere Optimierungen am Script durchgeführt
- Für die maximale Ladeleistung der Batterie wird jetzt das Objekt
-
@arnod
MoinHalte mich jetzt nicht für Faul
Aber meinst es wäre ne Idee die eigenen daten am Anfang des Skript mal in 0_userdata.0.XXXXXXX variablen zu packen??
Weniger Übertragungsfehler (ja, iss nur copy&paste) und Updates / Versionswechsel gehen locker easy von der HandSchönes rest Wochenende euch allen noch
-
@arnod said in E3DC Hauskraftwerk steuern:
Immer auf 0 einstellen, wo steht das die auf 10 oder 9 eingestellt werden soll?
Hier hattest Du dazu mal etwas geschrieben.
-
@arnod
HiHabe jetzt alle deine Vis und Charts übernommen bzw. nachgebaut!
Echt klasse vom Aufbau der ganzen Sachebei 3 Themen bin Ich allerdings nicht dahinter gekommen was du machst
- 26_E3DC_Diag_Leistung --> Wad dad?
- 0_userdata.0.PV_Anlage.Zaehlerstaende.Netzeinspeisung_Jahr_Prozent
--> wie bekommst du den Wert zusammen? Wenn Ich das richtig verstehe nimmst du hier den Gesamt Autarkiegrad übers Jahr?! Die Daten der Einspeisung und der entnahme bekomme Ich aus meine Stromzähler gelesen, was mir aber fehlt, ist der Eigenverbrauch / Direktverbrauch --> wo bekomme Ich den her?? - In der Vis 28_E3DC_RSCP_Batterie ist mir aufgefallen, dass Ich gar kein DCB2 habe --> hast du 3 Akkupacks oder mehr in deiner Pro? Auch dass Ich nur Zelltemperatur 0 und 1 habe ..... 3 und 4 NaN
--> Ist in dem sinne nicht wichtig, mich interressiert nur woher das evtl. kommt
-
@zelkin sagte in E3DC Hauskraftwerk steuern:
26_E3DC_Diag_Leistung --> Wad dad?
0_userdata.0.PV_Anlage.Zaehlerstaende.Netzeinspeisung_Jahr_Prozent
--> wie bekommst du den Wert zusammen? Wenn Ich das richtig verstehe nimmst du hier den Gesamt Autarkiegrad übers Jahr?! Die Daten der Einspeisung und der entnahme bekomme Ich aus meine Stromzähler gelesen, was mir aber fehlt, ist der Eigenverbrauch / Direktverbrauch --> wo bekomme Ich den her??Nein, ich berechne hier, wie viel von dem produzierten Strom in das Netz eingespeist wird.
Das interessiert mich nur, um nicht unter 10% zu kommen wegen der Steuer und um abschätzen zu können, was ich an Potenzial für den Eigenverbrauch noch habe.In der Vis 28_E3DC_RSCP_Batterie ist mir aufgefallen, dass Ich gar kein DCB2 habe --> hast du 3 Akkupacks oder mehr in deiner Pro? Auch dass Ich nur Zelltemperatur 0 und 1 habe ..... 3 und 4 NaN
--> Ist in dem sinne nicht wichtig, mich interressiert nur woher das evtl. kommtIch habe 6 Akkupacks, also maximale Bestückung.
Mit den Temperaturen ist das von E3DC unglücklich gelöst. E3DC verwendet auf der Schnittstelle je nach Typ Hauskraftwerk die gleichen Tags für unterschiedliche Werte. Bei einem Typ sind das die Temperaturwerte beim nächsten Volt Angaben. Uli hat das in seinem Adapter so gelöst das, wenn Werte unter 4.8 von der Schnittstelle kommen, geht er davon aus das es sich um V Werte handelt und über 4.8 um °C.
Bei mir sind es vier Temperaturwerte, wo die allerdings in den Zellen gemessen werden weiß ich auch nicht und kann somit auch nicht sagen was normal ist. Bei mir sind es vier Messsensoren je Batteriepack. -
@arnod Hallo Arno, hab mir das ganze jetzt heute nochmal angesehen, es wurde wieder unter Notstromreserve entladen ab ca. 7:30 Uhr da nicht genügen PV Leistung vorhanden war.
Auch um 2:10 stehen im Log Fehlermeldungen vom Script.
Log hab ich dir geschickt -
@chilihead @ArnoD
Hallo Ihr beiden,
bei mir wird die Notstrom-Grenze ebenfalls ignoriert. Heute kam ich mit weit mehr als Notstrom durch die Nacht, gestern Morgen war der Akku aber trotz errechneter 8% Notstromgrenze leer. -
@chilihead
Die Warnung um 2:10 Uhr ist mir klar, da sind auf der Homepage Proplanta anscheinend noch keine Daten für die Tage 4-6 vorhanden und deswegen stimmt die Zuordnung der einzelnen Arrays zu den Parametern nicht mehr.
Das muss ich bei mir mal logen, um zu sehen, was da genau passiert.Um 4:00 Uhr wurden die Daten von Solcast abgerufen und die Einstellung 1 angewählt.
Die Notstromreserve von 12% wurden auch eingehalten.
Um 7:30 Uhr wurde MAX_DISCHARGE_POWER, MAX_CHARGE_POWER auf 4500W eingestellt.
Soweit passt alles.Jetzt kann ich aber leider nicht erkenne, wie die Regelung vom Script ausgesehen hat, da du LogAusgabeSteuerung = false eingestellt hast.
Bitte folgende Einstellung im Script machen und morgen mal laufen lassen:
LogAusgabe = true
DebugAusgabe = false
LogAusgabeSteuerung = true -
@jans_ios
ohne LOG kann ich nur raten, was die Ursache sein könnte.
Wenn @chilihead mir morgen das LOG schickt, hoffe ich das ich den Fehler finde. -
@arnod
Ich habe die Log-Einstellungen auch wie beschrieben konfiguriert - jedoch erst heute und da war noch deutlich mehr im Akku Wenn der Fehler wieder auftritt, kann ich also auch mit einem Log dienen.Ich habe heute auf die aktuellste Version des Scripts upgedated und seitdem die folgende Meldung im Log:
2022-09-12 20:35:08.052 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Bewölkungsgrad 12 Uhr Proplanta 200 2022-09-12 20:35:08.052 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Bewölkungsgrad 15 Uhr Proplanta 200 2022-09-12 20:35:08.052 - [33mwarn[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: -==== Bewölkungsgrad_12 oder Bewölkungsgrad_15 wurde nicht abgerufen. 12=200 15=200 ====-
Was hat das zu bedeuten?
Größerer Auszug, der nach meinem Verständnis zeigt, dass Proplanta grundsätzlich abgerufen wird:
2022-09-12 20:35:00.300 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: ******************* Es wird die Globalstrahlung ab Tag 0 von Proplanta abgerufen ******************* 2022-09-12 20:35:03.550 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Rueckmeldung InterrogateProplanta XHR.Status= 200 2022-09-12 20:35:03.553 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Näste Aktualisierung Wetterdaten =21:35 Uhr 2022-09-12 20:35:03.553 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: ******************* Es wird die Globalstrahlung ab Tag 4 von Proplanta abgerufen ******************* 2022-09-12 20:35:07.254 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Rueckmeldung InterrogateProplanta XHR.Status= 200 2022-09-12 20:35:07.257 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Globalstrahlung Tag4 =0 Globalstrahlung Tag5 =0 Globalstrahlung Tag6 =0 2022-09-12 20:35:07.257 - [33mwarn[39m: javascript.0 (461) You are assigning a undefined to the state "0_userdata.0.Charge_Control.Proplanta.Datum_Tag_4" which expects a string. Please fix your code to use a string or change the state type to undefined. This warning might become an error in future versions. 2022-09-12 20:35:07.259 - [33mwarn[39m: javascript.0 (461) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1687:20) 2022-09-12 20:35:07.260 - [33mwarn[39m: javascript.0 (461) at /opt/iobroker/node_modules/iobroker.javascript/lib/tools.js:82:16 2022-09-12 20:35:07.260 - [33mwarn[39m: javascript.0 (461) at new Promise (<anonymous>) 2022-09-12 20:35:07.260 - [33mwarn[39m: javascript.0 (461) at /opt/iobroker/node_modules/iobroker.javascript/lib/tools.js:81:16 2022-09-12 20:35:07.260 - [33mwarn[39m: javascript.0 (461) at script.js.Eigene_Skripte.Charge_Control:1155:13 2022-09-12 20:35:07.260 - [33mwarn[39m: javascript.0 (461) at runMicrotasks (<anonymous>) 2022-09-12 20:35:07.260 - [33mwarn[39m: javascript.0 (461) at processTicksAndRejections (node:internal/process/task_queues:96:5) 2022-09-12 20:35:07.261 - [33mwarn[39m: javascript.0 (461) You are assigning a undefined to the state "0_userdata.0.Charge_Control.Proplanta.Datum_Tag_5" which expects a string. Please fix your code to use a string or change the state type to undefined. This warning might become an error in future versions. 2022-09-12 20:35:07.261 - [33mwarn[39m: javascript.0 (461) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1687:20) 2022-09-12 20:35:07.262 - [33mwarn[39m: javascript.0 (461) at /opt/iobroker/node_modules/iobroker.javascript/lib/tools.js:82:16 2022-09-12 20:35:07.262 - [33mwarn[39m: javascript.0 (461) at new Promise (<anonymous>) 2022-09-12 20:35:07.262 - [33mwarn[39m: javascript.0 (461) at /opt/iobroker/node_modules/iobroker.javascript/lib/tools.js:81:16 2022-09-12 20:35:07.262 - [33mwarn[39m: javascript.0 (461) at script.js.Eigene_Skripte.Charge_Control:1156:13 2022-09-12 20:35:07.262 - [33mwarn[39m: javascript.0 (461) at runMicrotasks (<anonymous>) 2022-09-12 20:35:07.262 - [33mwarn[39m: javascript.0 (461) at processTicksAndRejections (node:internal/process/task_queues:96:5) 2022-09-12 20:35:07.263 - [33mwarn[39m: javascript.0 (461) You are assigning a undefined to the state "0_userdata.0.Charge_Control.Proplanta.Datum_Tag_6" which expects a string. Please fix your code to use a string or change the state type to undefined. This warning might become an error in future versions. 2022-09-12 20:35:07.264 - [33mwarn[39m: javascript.0 (461) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1687:20) 2022-09-12 20:35:07.264 - [33mwarn[39m: javascript.0 (461) at /opt/iobroker/node_modules/iobroker.javascript/lib/tools.js:82:16 2022-09-12 20:35:07.264 - [33mwarn[39m: javascript.0 (461) at new Promise (<anonymous>) 2022-09-12 20:35:07.264 - [33mwarn[39m: javascript.0 (461) at /opt/iobroker/node_modules/iobroker.javascript/lib/tools.js:81:16 2022-09-12 20:35:07.264 - [33mwarn[39m: javascript.0 (461) at script.js.Eigene_Skripte.Charge_Control:1157:13 2022-09-12 20:35:07.264 - [33mwarn[39m: javascript.0 (461) at runMicrotasks (<anonymous>) 2022-09-12 20:35:07.265 - [33mwarn[39m: javascript.0 (461) at processTicksAndRejections (node:internal/process/task_queues:96:5) 2022-09-12 20:35:07.603 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Prognose Solcast in kWh = 65.78 2022-09-12 20:35:07.604 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Prognose Solcast 90 Perzentil in kWh = 69.73 2022-09-12 20:35:07.604 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Prognose Proplanta in kWh = 68.44907520000001 2022-09-12 20:35:07.604 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Prognose_kWh nach Abzug Korrekturfaktor = 67.1145376 2022-09-12 20:35:07.604 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Bereits produzierte PV-Leistung = 60.13671650492071 2022-09-12 20:35:07.668 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Prognose_kWh_heute für Berechnung = 6.9778210950792925 2022-09-12 20:35:08.017 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: BatterieProzent(wert)=0 2022-09-12 20:35:08.017 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Eigenverbrauch Tag = 35 2022-09-12 20:35:08.017 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: AktSpeicherSoC in % = 90 2022-09-12 20:35:08.017 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Ueberschuss in kWh 0 = (Prognose kWh 6.9778210950792925 - Berechneter Eigenverbrauch 35) - FreieKapBatterie_kWh 1.1 2022-09-12 20:35:08.017 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Ueberschuss in Prozent = 0 2022-09-12 20:35:08.052 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Bewölkungsgrad 12 Uhr Proplanta 200 2022-09-12 20:35:08.052 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Bewölkungsgrad 15 Uhr Proplanta 200 2022-09-12 20:35:08.052 - [33mwarn[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: -==== Bewölkungsgrad_12 oder Bewölkungsgrad_15 wurde nicht abgerufen. 12=200 15=200 ====-
-
@jans_ios sagte in E3DC Hauskraftwerk steuern:
Ich habe heute auf die aktuellste Version des Scripts upgedated und seitdem die folgende Meldung im Log:
2022-09-12 20:35:08.052 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Bewölkungsgrad 12 Uhr Proplanta 200
2022-09-12 20:35:08.052 - [32minfo[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: Bewölkungsgrad 15 Uhr Proplanta 200
2022-09-12 20:35:08.052 - [33mwarn[39m: javascript.0 (461) script.js.Eigene_Skripte.Charge_Control: -==== Bewölkungsgrad_12 oder Bewölkungsgrad_15 wurde nicht abgerufen. 12=200 15=200 ====-Was hat das zu bedeuten?
Das bedeutet erst mal, dass die Seite von Proplanta sich eventuell geändert hat und der Filter somit nicht richtig funktioniert. Warum auch immer, sind die Werte nicht richtig aus der HTML Seite gefiltert worden.
Das kann beim nächsten Abruf bereits wieder anders aussehen.
Ich schaue mir das aber noch mal in Ruhe an. -
Wo wird denn grade e3/dc RSCP diskutiert? Ich find mich jetzt in den einzelnen Stängen hier nicht mehr zurecht.
Gibt es eine Change die beiden Werte:
e3dc-rscp.0.EMS.BATTERY_BEFORE_CAR_MODE
e3dc-rscp.0.EMS.BATTERY_TO_CAR_MODE
auch beschreibbar zu machen? -
@matis sagte in E3DC Hauskraftwerk steuern:
Wo wird denn grade e3/dc RSCP diskutiert?
Es gibt nur das Forum für die Adapter Entwicklung , aber das Liest Uli anscheinend nicht mehr.
Da bleibt nur ein Issue auf Github zu eröffnen. -
Wie bekommst du es hin, dass er dir die Punkte Anzeigt??
Bei mir zieht er immer die linie bis zum ende durchDank noch für die Infos .... sind die Dinger (E3DC) doch so unterschiedlich
Nein, ich berechne hier, wie viel von dem produzierten Strom in das Netz eingespeist wird.
Wo bekommst du eigentlich den Wert für den Produzierten Gesamt Strom her??
-
@arnod Ja Arno daspassiert wenn man das Script aktualisiert Hab debug wieder aktiviert aber heute war es nicht...
-
@zelkin sagte in E3DC Hauskraftwerk steuern:
Wie bekommst du es hin, dass er dir die Punkte Anzeigt??
Es sind bei mir auch keine Punkte sondern Linien, nur der Zomm vom Diagramm ist auf 10 Jahre eingestellt.
Wo bekommst du eigentlich den Wert für den Produzierten Gesamt Strom her??
Ich habe einen PV-Zähler den ich auslese und mir die Werte jedes Monat in eine .json Datei speichere. Mit einem Script hole ich mir dann den Zählerstand aus der Datei vom 31.12 und den aktuellen Zählerstand von meinem PV-Zähler.