NEWS
E3DC Hauskraftwerk steuern
-
@abyss
Ich denke nicht das PowerMode das Problem ist, in deinem LOG ist PowerMode immer 2.
Vermute das eher die Netzleistung zu knapp am Grenzwert von 500W ist.
Ich muss mir das mal in Ruhe ansehen, um die Wechselwirkungen zu verstehen.
Problem ist einfach, dass ich es nicht bei mir testen kann, das würde dann schneller gehen, aber dein LOG hilft schon mal weiter.
Man sieht eigentlich recht schön, dass immer, wenn die Netzleistung an die 500W Grenze kommt, dann im nächsten Schritt der Heizstab wieder deaktiviert wird.
Deswegen vermute ich das in dem Moment CC die Regelung an E3DC übergibt und dann durch die Trägheit der Regelung das zu diesem Verhalten führt.
Eigentlich darf der Heizstab nur den verfuegbarerUeberschuss_W - 600W Sicherheitsabstand zur Regelung CC bekommen.
Ich schaue mir das aber erstmal in Ruhen an. -
@arnod sagte in E3DC Hauskraftwerk steuern:
Kann es sein das bei dir die Notstromreserve zum entladen freigegeben wurde ?
Nein, ist bei mir nicht eingestellt.
-
@Abyss
Die Summen passen nicht ganz zusammen.
Beispiel ohne Heizstab:21.10.2024, 10:24:01.638 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-1121W, PV=4972W, Hausverbrauch=932W, LeistungHeizstab=0W, Batterie=2898W, IstTemp=23°C, MaxTemp=61°C, SollLeistungHeizstab=0W, PowerMode=2, BatterieStatus=41, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.922W
Ins Netz werden 1121W eingespeist + Hausverbrauch=932W + LeistungWP = 5.922W + Batterie=2898W = 4956,922 W
PV=4972W bleibt eine Differenz von 30W da bleibt nichts mehr übrig für den Heizstab21.10.2024, 10:23:57.636 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-561W, PV=4976W, Hausverbrauch=1508W, LeistungHeizstab=577W, Batterie=2898W, IstTemp=22.9°C, MaxTemp=61°C, SollLeistungHeizstab=577W, PowerMode=2, BatterieStatus=41, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.551W
Ins Netz werden 561W eingespeist + Hausverbrauch=1508W + LeistungWP = 5.551W + Batterie=2898W + LeistungHeizstab=577W= 5549,551 W
PV=4976W wo kommt der Rest her, es fehlen 573,551W, was natürlich nicht stimmen kann.
Ich habe noch wage in Erinnerung, dass dieses Problem hier schon mal diskutiert wurde, dass die übermittelten Werte vom Heizstab nur verzögert übertragen werden und dadurch natürlich ein Problem bei der Berechnung entsteht. Ich weiß aber nicht mehr, was die Lösung war und ob die Einstellungen vom Heizstab die Ursache waren.
-
@psrelax
Das ist nichts, was du einstellest.
Das wird vom Script automatisch freigegeben, wenn die PV-Prognose hoch genug ist, um die Batterie zu laden.
Das kannst du aber in deinem Diagramm an dem Batterie SoC erkennen, wenn dieser bis zum Notstrom SoC entladen und dann gehalten wird und vor Sonnenaufgang bis auf 0% entladen wird. -
@arnod
Wenn ich nicht will, dass der Speicher entladen wird, dann müsste ich auf 100% stellen?
Ist mir irgendwie nie aufgefallen.In meinem geschilderten Fall, hat eine Entladung per Script nicht stattgefunden. Der Speicher war seit Abends leer, wie du an den nachfolgenden Screenshots sehen kannst. Hellgrün ist der SOC.
-
@arnod
Ja du erinnerst dich richtig, dass der Heizstab sehr träge reagiert und Werte sowie die Berechnung hier immer etwas verzögert sind und nicht mehr ganz stimmen.
Das Verhalten fühlt sich aber im Moment anders an.
Gestern sah es so aus, als ob genug PV vorhanden war, ein Teil in den Heizstab umgeleitet wurde und die Sicherheitsreserver in der Netzeinspeißung blieb. Dann aber das Script den Heizstab wieder ausgeschaltet hat und mit der nächsten Berechnung direkt wieder ein.Wenn ich dann auf das alte Script ändere, dann leitet er sauber in den Heizstab um.
-
@abyss
Du kannst es im LOG einfach prüfen ob der Rest was bei der Berechnung noch übrig bleibt > 500W ist.
Das es mit der alten Version funktioniert ist klar, da ist der Abstand zu den 500W größer, so das auch ein falscher Wert vom Heizstab diese Grenze nicht erreicht. -
wenn ich den kompletten Absatz mit dem "else if" in der Prüfung rausnehmen dann scheint es zu laufen
22.10.2024, 15:17:49.188 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-737W, PV=6352W, Hausverbrauch=951W, LeistungHeizstab=1773W, Batterie=2889W, IstTemp=54.5°C, MaxTemp=61°C, SollLeistungHeizstab=1773W, PowerMode=2, BatterieStatus=85, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.316W 22.10.2024, 15:17:49.233 [warn ]: javascript.0 (49474) at fetchAndUpdateHeizstabLeistung (script.js.VIS-Script.my-pv_Heizstab_ArnoD:131:15) 22.10.2024, 15:17:49.275 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Update: Netz=-737W, PV=6352W, Heizstab=1895.6840000000002W, Überschuss=1895.6840000000002W 22.10.2024, 15:17:54.526 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-730W, PV=6332W, Hausverbrauch=951W, LeistungHeizstab=1757W, Batterie=2889W, IstTemp=54.8°C, MaxTemp=61°C, SollLeistungHeizstab=1757W, PowerMode=2, BatterieStatus=85, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.316W 22.10.2024, 15:17:54.529 [warn ]: javascript.0 (49474) at fetchAndUpdateHeizstabLeistung (script.js.VIS-Script.my-pv_Heizstab_ArnoD:131:15) 22.10.2024, 15:17:54.572 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Update: Netz=-730W, PV=6332W, Heizstab=1875.6840000000002W, Überschuss=1875.6840000000002W 22.10.2024, 15:18:00.905 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-724W, PV=6291W, Hausverbrauch=934W, LeistungHeizstab=1741W, Batterie=2889W, IstTemp=55.1°C, MaxTemp=61°C, SollLeistungHeizstab=1741W, PowerMode=2, BatterieStatus=86, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.316W 22.10.2024, 15:18:00.910 [warn ]: javascript.0 (49474) at fetchAndUpdateHeizstabLeistung (script.js.VIS-Script.my-pv_Heizstab_ArnoD:131:15) 22.10.2024, 15:18:00.952 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Update: Netz=-724W, PV=6291W, Heizstab=1851.6840000000002W, Überschuss=1851.6840000000002W 22.10.2024, 15:18:06.216 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-703W, PV=6270W, Hausverbrauch=953W, LeistungHeizstab=1717W, Batterie=2889W, IstTemp=55.2°C, MaxTemp=61°C, SollLeistungHeizstab=1717W, PowerMode=2, BatterieStatus=86, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.821W 22.10.2024, 15:18:06.221 [warn ]: javascript.0 (49474) at fetchAndUpdateHeizstabLeistung (script.js.VIS-Script.my-pv_Heizstab_ArnoD:131:15) 22.10.2024, 15:18:06.265 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Update: Netz=-703W, PV=6270W, Heizstab=1811.179W, Überschuss=1811.179W 22.10.2024, 15:18:11.224 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-699W, PV=6241W, Hausverbrauch=967W, LeistungHeizstab=1680W, Batterie=2889W, IstTemp=55.4°C, MaxTemp=61°C, SollLeistungHeizstab=1680W, PowerMode=2, BatterieStatus=86, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.821W 22.10.2024, 15:18:11.229 [warn ]: javascript.0 (49474) at fetchAndUpdateHeizstabLeistung (script.js.VIS-Script.my-pv_Heizstab_ArnoD:131:15) 22.10.2024, 15:18:11.271 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Update: Netz=-699W, PV=6241W, Heizstab=1768.179W, Überschuss=1768.179W 22.10.2024, 15:18:16.836 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-728W, PV=6213W, Hausverbrauch=949W, LeistungHeizstab=1641W, Batterie=2889W, IstTemp=55.6°C, MaxTemp=61°C, SollLeistungHeizstab=1641W, PowerMode=2, BatterieStatus=86, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.821W 22.10.2024, 15:18:16.841 [warn ]: javascript.0 (49474) at fetchAndUpdateHeizstabLeistung (script.js.VIS-Script.my-pv_Heizstab_ArnoD:131:15) 22.10.2024, 15:18:16.847 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Update: Netz=-728W, PV=6213W, Heizstab=1758.179W, Überschuss=1758.179W 22.10.2024, 15:18:22.145 [info ]: javascript.0 (49474) script.js.VIS-Script.my-pv_Heizstab_ArnoD: Zustände abgefragt: Netz=-685W, PV=6182W, Hausverbrauch=972W, LeistungHeizstab=1631W, Batterie=2889W, IstTemp=55.8°C, MaxTemp=61°C, SollLeistungHeizstab=1631W, PowerMode=2, BatterieStatus=86, Charge_Limit=3000, M_Power_W=3000W, LeistungWP = 5.652W 22.10.2024, 15:18:22.149 [warn ]: javascript.0 (49474) at fetchAndUpdateHeizstabLeistung (script.js.VIS-Script.my-pv_Heizstab_ArnoD:131:15)
-
meinst du so ? :
if (PowerMode === 2) { if (Charge_Limit === M_Power_W && NetzLeistung_W < -Math.abs(minimumHeizstabLeistung + 500)) { M_Power_W = BatterieLeistung_W; } } else { M_Power_W = 0; }
-
Ja genau.
Ich habs momentan halt nur auskommentiert.
Der Teil hat dafür gesorgt dass nach jeder Aktivierung der Power_Mode 2 den Heizstab wieder gestoppt hat.// Bedingungen prüfen if (PowerMode === 2) { if (Charge_Limit === M_Power_W && NetzLeistung_W < -Math.abs(minimumHeizstabLeistung + 500)) { M_Power_W = BatterieLeistung_W; } // else if (Charge_Limit === M_Power_W && BatterieLeistung_W > 0) { // console.log('Power_Mode ist 2 und Batterie soll mit max. Leistung geladen werden. Heizstab wird nicht aktiviert.'); // await setStateAsync(sID_Soll_LeistungHeizstab_W, 0); // return; // } } else { M_Power_W = 0; }
-
@arnod said in E3DC Hauskraftwerk steuern:
@psrelax
Das ist nichts, was du einstellest.
Das wird vom Script automatisch freigegeben, wenn die PV-Prognose hoch genug ist, um die Batterie zu laden.
Das kannst du aber in deinem Diagramm an dem Batterie SoC erkennen, wenn dieser bis zum Notstrom SoC entladen und dann gehalten wird und vor Sonnenaufgang bis auf 0% entladen wird.Hi @ArnoD
Ich hatte letzte Nacht leider kein erweitertes Logging aktiv, aber ich frage mich gerade, warum der Akku nach Deiner Beschreibung nicht bis auf 0% entladen wurde.
Im Log sieht man, dass um ca. 2 Uhr Einstellung 2 ausgewählt war. Um halb vier wird das entladen beim Notstrom-SOC gestoppt und dann um halb fünf wird die Einstellung 1 aktiviert, die ich dann am Morgen auch vorgefunden habe - und selbst in diesem Zustand war die Prognose gut 27 kWh. Bei eingetragenen 20 kWh Tagesverbrauch wären gut 7 kWh zu Laden der Batterie eingeplant - der Notstrom-SOC wäre damit locker erreichbar. da hätte doch eigentlich die Batterie bis auf 0% entladen werden müssen.
Oder rechnest Du, dass nur dann auf 0 entladen wird, wenn am nächsten Tag voll geladen werden kann? -
@bluebean
nein, das ist von deiner Einstellung 10_minWertPrognose_kWh abhängig.
Wenn die Prognose für den nächsten Tag über diesem Wert liegt, wird die Notstromreserve freigegeben. Wenn du dort 0 eingetragen hast, ist das ganze deaktiviert und die Notstromreserve wird nicht freigegeben.Wenn ich nicht will, dass der Speicher entladen wird, dann müsste ich auf 100% stellen?
Ich denke, damit ist dann auch deine Frage beantwortet.
Steht übrigens auch in der Anleitung zu CC auf Github
-
Verflixt, übersehen... hatte ich tatsächlich mal eingetragen, weil ich das damals ausschließen wollte - danke!
-
@ArnoD
Seit gestern (da ist es mir aufgefallen) sehen die Zeiten für den Regelbereich und Ladeende sehr seltsam aus. Vor 3 Tagen war alles ok (siehe oben).
Seit gestern liegen die Zeiten für den Regelbereich und Ladeende um genau 2 Stunden weiter vorne, wie man in den Screenshots sehen kann. Verändert habe ich in der Konfig nichts.
Habe nur ich das Problem? Die Zeitumstellung ist ja erst morgen, aber hängt das u.U. damit zusammen?
Habe gerade nochmal in den JS-Adapter geschaut (v. 8.8.3): dort finden sich heute in den Astroeinstellungen die Zeiten für Sonnenaufgang 7:52 Uhr Ortszeit und Sonnenuntergang 17:49 Uhr Ortszeit, die sind also korrekt. Scheint die Berechnung gerade nicht in Bezug auf die Ortszeit zu erfolgen, sondern auf die GMT?
Was mich zudem stutzig macht - die Batterieladung lief ja offensichtlich so wie zuvor, das Ladeende2 von 95% wurde grob gegen 16:30 Uhr erreicht (vgl. auch das Ladeende vor 3 Tagen).
-
@bluebean
Die Berechnung der Zeiten steht in der Anleitung zu CC.
für Regelbeginn und Regelende wird solarNoon verwendet plus/minus offset.
für Ladeende sunset minus offset.Ich habe leider keinen Vergleich bei mir um dir zu sagen, ob dieser Sprung auch bei mir so ersichtlich ist, es ist aber nur von den Astro Zeiten im JS Adapter abhängig und wäre dann dort zu beheben.
Nachtrag: Habe es gerade noch mal geprüft. Für die Berechnungen spielt die Zeitzone keine Rolle, da ich generell alle Zeiten in Millisekunden seit dem 1. Januar 1970, 00:00:00 UTC umwandle und dann erst die Berechnungen durchführe.
-
@arnod
Die Brechnung ist mir klar, ich habe das auch im Skript angeschaut. Aber man kann ja an den Einstellungen sehen, dass irgendwo etwas schief läuft.
Die Zeiten im JS-Astro stimmen, sieht man im Screenshot.
bei meinem Offset von -3:30h für den Regelbeginn kann bei solarNoon von grob 12:50 Uhr (die zeitliche Mitte zwischen 7:52 Uhr (Sonnenaufgang) und 17:49 Uhr (Sonnenuntergang entsprechend Astro) niemals ein Regelbeginn von 7:21 Uhr herauskommen.
Wie gesagt, ich habe rein gar nichts an den Einstellungen geändert - weder im JS-Adapter, noch im CC. Und von einem Tag auf den anderen springen die Zeiten um exakt 2 Stunden nach vorne.Und auch bei Ladeende müsste ja - wie Du schreibst - bei sunset minus offset, also 17:49 Uhr (gemäß Screenshot aus meinem Astro-Screenshot aus dem JS) minus der bei mir eingestellten 1:15 h das Ergebnis 16:34 Uhr lauten. CC zeigt aber 14:34 Uhr an.
Und, jetzt kommt's: schau Dir den Screenshot mit den frischen Diagrammen von heute 16:34 Uhr an. Die Regelung erfolgt auch heute wieder genau so wie zuvor, um 16:34 Uhr hat gerade der Ladezustand 95% erreicht, genau 2 Stunden nach dem angezeigten Ladeende. Sonne gab's vorher genug, die 95% hätten auch bei dem angezeigten Ladeende von 14:34 Uhr erreicht werden können.
-
Ich habe jetzt mal einen zusätzlichen Versuch gemacht und in den Astro-Einstellungen einen Versatz von 120 min im Sonnenaufgang und Sonnenuntergang eingestellt (siehe Screenshot).
Nach Neustart vom JS-Adapter und des Skripts werden im CC unverändert Regelzeit: 07:21 Uhr - 13:36 Uhr und
Ladeende: 14:34 Uhr angezeigt. Oder muss ich zum Test tatsächlich bis morgen warten?PS:
und hier sind mal die Astro-Zeiten in den Objekten des JS-Adapters.
Da steht für solarNoon eine Zeit von 10:51 Uhr. Wenn die im Skript verwendet wird und ich davon 3:30 h offset abziehe, lande ich bei 7:21 Uhr, das was auch angezeigt wird für den Regelbeginn.
Eigentlich müsste er doch aber die Ortszeit von solarNoon als Bezug nehmen, also 12:51 Uhr.
Und das Ganze erklärt für mich nicht, warum dann auf die richtigen Werte geregelt wird, also auf die angezeigten Werte 2 Stunden draufgeschlagen werden.Oder ist es schlicht einfach so, dass nur UTC-Zeiten angezeigt werden, ansonsten aber auf die Ortszeiten gereget wird? Doch warum war das vor ein paar Tagen anders?
-
@bluebean sagte in E3DC Hauskraftwerk steuern:
Ich habe jetzt mal einen zusätzlichen Versuch gemacht und in den Astro-Einstellungen einen Versatz von 120 min im Sonnenaufgang und Sonnenuntergang eingestellt (siehe Screenshot).
Nach Neustart vom JS-Adapter und des Skripts werden im CC unverändert Regelzeit: 07:21 Uhr - 13:36 Uhr und
Ladeende: 14:34 Uhr angezeigt. Oder muss ich zum Test tatsächlich bis morgen warten?Hier kannst du nichts an den Astro Zeiten ändern und haben nur bedingt was damit zu tun.
Diese Einstellungen sind so viel ich weiß für die Variable javascript.0.variables.isDayTime und javascript.0.variables.isDaylightSaving. Da ich diese nicht verwende, kann ich dir aber auch nicht mehr darüber sagen.und hier sind mal die Astro-Zeiten in den Objekten des JS-Adapters.
Da steht für solarNoon eine Zeit von 10:51 Uhr. Wenn die im Skript verwendet wird und ich davon 3:30 h offset abziehe, lande ich bei 7:21 Uhr, das was auch angezeigt wird für den Regelbeginn.
Eigentlich müsste er doch aber die Ortszeit von solarNoon als Bezug nehmen, also 12:51 Uhr.
Und das Ganze erklärt für mich nicht, warum dann auf die richtigen Werte geregelt wird, also auf die angezeigten Werte 2 Stunden draufgeschlagen werden.Die Astro-Zeiten in den Objekten des JS-Adapters sind die, was ich auch verwende.
solarNoon 10:51 Uhr minus offset Regelbeginn 3:30 = 07:21 Uhr, was ja auch mit der Anzeige stimmt.
Da ich da nichts geändert habe, ist das eigentlich schon immer so.
Wie bereits weiter oben geschrieben rechne ich im Script nicht mit den lokalen Zeiten, sondern werden generell alle Zeiten in Millisekunden seit dem 1. Januar 1970, 00:00:00 UTC umgewandelt, um die gleiche Zeitbasis zu haben. Ob die Astrozeiten UTC sind und jetzt MEZ Zeiten oder umgekehrt spielt für die Berechnungen im Script keine Rolle. Die Anzeige in vis sollte eigentlich die lokale Zeit anzeigen.
Ich schaue mir das mal an, ob sich da was geändert hat. -
@bluebean sagte in E3DC Hauskraftwerk steuern:
solarNoon
Also bei mir wird alles in der lokalen Zeit richtig angezeigt:
Was hast du bei deinen Adaptereinstellungen den alles geändert?
Nachtrag:
Kannst du mal folgende Änderung bei dir testen, ob es dann richtig angezeigt wird.
Ab der Zeile 1686 in der Funktion MEZ_Regelzeiten() gleich am Anfang diese Änderung vornehmen:RB_AstroSolarNoon = new Date(getAstroDate("solarNoon")); RE_AstroSolarNoon = new Date(getAstroDate("solarNoon")); LE_AstroSunset = new Date(getAstroDate("sunset"));
-
@ArnoD
Hab glaub ich den Fehler gefunden, warum bei mir der Notstrom nicht nachgeladen wird.
Der Schalter aus VIS stimmt mit der Variablen unter Objekte nicht überein.Im Script wird folgendes erzeugt:
const sID_NotstromAusNetz =`${instanz}.${PfadEbene1}.${PfadEbene2[1]}.bNotstromAusNetz`; // Vorwahl in VIS true = Notstrom aus Netz nachladen
Das b bei NotstromAusNetz ist falsch und stimmt nicht mit VIS überein.