NEWS
E3DC Hauskraftwerk steuern
-
@smartboart sagte in E3DC Hauskraftwerk steuern:
@ArnoD Hi Arno, habe das Script Autonomiezeit weiter gepflegt und um aktivierbaren und deaktivierbaren Lastabwurf erweitert ..Falls interesse besteht.....
Ich hab' mal versucht dein Skript anzupassen und in Betrieb zu nehmen. Den Lastabwurf hab' ich wieder rausoperiert, da relativ speziell und ich auch keine Geräte habe, die ich einfach so ausschalten wollen würde. Hast du keine Angst, dass dir Spül- und Waschmaschine kaputt gehen, wenn du sie einfach irgendwo zwischendrin abbrichst? Tut das dem Geschirr oder der Wäsche gut, wenn sie irgendwann weiter bearbeitet werden (falls deine Geräte dort fortsetzen, wo sie gerade in ihrem Programm gestoppt wurden)?
Aber nun zu den eigentlichen Fragen:
- Ruckeln sich die Werte (nach jedem Skriptstart) so nach und nach zurecht, je länger das Skript läuft? Bis eben blieb die Autonomiezeit leer und die Batteriekapazität war mal 0 und mal ein einigermaßen plausibler Wert.
- Die Batteriekapazität scheint von den parametrierten 13 kWh Bruttokapazität gerechnet zu sein. Bei mir gerade 13 * 88% = 11,44 kWh. Im State steht 11,31 kWh, was ja ungefähr zusammen passt. Aber das ist doch eigentlich falsch, weil mit der Nettokapazität 11,7 kWh gerechnet werden müsste - schließlich steht ja auch nur die Nettokapazität zur Verfügung...oder werden die 10 % Unterschied noch bei der Berechnung der Restzeit abgezogen?
Edit: Hab' jetzt eben mal beide Zahlen nachgerechnet; bei Berechnung der Reststunden werden die 10 % Abzug von Brutto- zu Nennkapazität auch nicht abgezogen. Von daher sind die 13 kWh, die im Skript standen, falsch (bei einem PRO in der niedrigsten Ausbaustufe, wie wir sie haben). Falls du die verwendest, müsste der Akku eigentlich immer früher leer sein als berechnet.
-
@stevie77 sagte in E3DC Hauskraftwerk steuern:
@ArnoD So, jetzt bin ich auch endlich wieder auf dem neuesten Stand (Skript und Vis-View). Wallbox sollte theoretisch Anfang April kommen, passend zur neuen Förderung...
Eine Kleinigkeit (vermutlich - denke mal, dass trotzdem alles funktioniert) ist mir noch aufgefallen: Beim Loggen wird Dachfläche 4/2 etc. ausgegeben, aber das beeinflusst wohl nicht die Funktionalität - zumindest stehen in den 4 entsprechenden States jeweils unterschiedliche Werte...Zeile 150 ungefähr, fixe Anzahl 2:
function CallForecast() { InterrogateForecast (i,2); i--;
00:23:12.523 info javascript.0 (10985) script.js.Strom.handleE3DCControl: Rueckmeldung :{ "result": { "2020-10-18": 4005, "2020-10-19": 3944 }, "message": { "code": 0, "type": "success", "text": "", "info": { "place": "21368 Dahlenburg, Landkreis L\u00fcneburg, Niedersachsen, DE", "timezone": "Europe/Berlin", "distance": 0, "pid": "w497n78y" }, "ratelimit": { "limit": 12, "remaining": 11 } } } 00:23:12.526 info javascript.0 (10985) script.js.Strom.handleE3DCControl: Gespeichert wurde Dachfläche =3/2 : 4005 :3944 00:23:17.530 info javascript.0 (10985) script.js.Strom.handleE3DCControl: Rueckmeldung :{ "result": { "2020-10-18": 4101, "2020-10-19": 4030 }, "message": { "code": 0, "type": "success", "text": "", "info": { "place": "21368 Dahlenburg, Landkreis L\u00fcneburg, Niedersachsen, DE", "timezone": "Europe/Berlin", "distance": 0, "pid": "696jaq87" }, "ratelimit": { "limit": 12, "remaining": 11 } } } 00:23:17.532 info javascript.0 (10985) script.js.Strom.handleE3DCControl: Gespeichert wurde Dachfläche =2/2 : 4101 :4030 00:23:22.514 info javascript.0 (10985) script.js.Strom.handleE3DCControl: Rueckmeldung :{ "result": { "2020-10-18": 46105, "2020-10-19": 45589 }, "message": { "code": 0, "type": "success", "text": "", "info": { "place": "21368 Dahlenburg, Landkreis L\u00fcneburg, Niedersachsen, DE", "timezone": "Europe/Berlin", "distance": 0, "pid": "eca5qdr4" }, "ratelimit": { "limit": 12, "remaining": 11 } } } 00:23:22.515 info javascript.0 (10985) script.js.Strom.handleE3DCControl: Gespeichert wurde Dachfläche =1/2 : 46105 :45589
Stehe gerade auf dem Schlauch, was ist den jetzt genau das Problem
Die Ausgabe ist ja richtig wenn du drei Dachflächen hast oder hast du nDachflaechen=4 und es werden nur drei im LOG ausgegeben. -
@stevie77 sagte in E3DC Hauskraftwerk steuern:
Noch eine Frage: Ich hab' erst gestern entdeckt, dass in der Vis-View ja auch noch ein Icon auf den Status modbus.0.holdingRegisters.40087_EMS_CTRL eingebaut ist. Allerdings scheint das Register bei mir immer 0 anzuzeigen, auch 4 Minuten vor Ende Regelzeitraum. Nun frage ich mich, müsste das Flag auch auf 1 umspringen, wenn ich mit dem RSCPGui-Tool zum HKW verbinde (um das außerhalb des Regelzeitraums testen zu können)? Dieser Wert ist doch plain, also muss nicht noch bitweise berechnet werden wie beispielsweise modbus.0.holdingRegisters.40085_EMS_Status?
Der Status ändert sich nur wen von extern gerade gesteuert wird. Das bedeutet wenn E3DC-Control nichts ändert an der Steuerung auch wärend dem Regelzeitpunkt, dann bleibt der Status 0.
Wenn du dich nur verbindest mit dem RSCPGui-Tool wird der Status 0 bleiben, erst wenn du einen Wert ändern würdest, also schreibend auf die Schnittstelle zugreifst wird der Status 1. -
@stevie77 sagte in E3DC Hauskraftwerk steuern:
Zeile 150 ungefähr, fixe Anzahl 2:
Ok meinst du die 2 hinter der Anzahl Dachflächen ?
Das ist nur die Anzahl der Verbindungsversuche wenn es beim ersten mal nicht funktioniert.
Wenn also im LOG "Gespeichert wurde Dachfläche =2/2" steht, bedeutet das, das die Dachfläche 2 nur einen Versuch benötigt hat um die Daten abzurufen. Würde "Gespeichert wurde Dachfläche =2/1" ausgegeben, hätte das Script zwei verbindungsversuche benötigt um die Daten abzurufen. -
@ArnoD sagte in E3DC Hauskraftwerk steuern:
Ok meinst du die 2 hinter der Anzahl Dachflächen ?
Das ist nur die Anzahl der Verbindungsversuche wenn es beim ersten mal nicht funktioniert.Hehe, okay, danke für die Info. Ich hatte ja bisher zwei Dachflächen und dann stand da eigentlich immer 1/2 und 2/2. Da hab' ich die hintere zwei tatsächlich für die Gesamtanzahl der Dachflächen gehalten.
Wenn also im LOG "Gespeichert wurde Dachfläche =2/2" steht, bedeutet das, das die Dachfläche 2 nur einen Versuch benötigt hat um die Daten abzurufen. Würde "Gespeichert wurde Dachfläche =2/1" ausgegeben, hätte das Script zwei verbindungsversuche benötigt um die Daten abzurufen.
Äh, wie jetzt? Andersrum?!
Danke auch für die Info zum RSCPGui-Tool. Dann werde ich wohl mal am Samstag (wenn ich mittags zu Hause bin, die Zeiträume werden jetzt ziemlich eng langsam) kontrollieren, ob der Wert bei mir im Regelzeitraum von E3DC-Control umspringt...
-
@stevie77 sagte in E3DC Hauskraftwerk steuern:
@smartboart sagte in E3DC Hauskraftwerk steuern:
@ArnoD Hi Arno, habe das Script Autonomiezeit weiter gepflegt und um aktivierbaren und deaktivierbaren Lastabwurf erweitert ..Falls interesse besteht.....
Ich hab' mal versucht dein Skript anzupassen und in Betrieb zu nehmen. Den Lastabwurf hab' ich wieder rausoperiert, da relativ speziell und ich auch keine Geräte habe, die ich einfach so ausschalten wollen würde. Hast du keine Angst, dass dir Spül- und Waschmaschine kaputt gehen, wenn du sie einfach irgendwo zwischendrin abbrichst? Tut das dem Geschirr oder der Wäsche gut, wenn sie irgendwann weiter bearbeitet werden (falls deine Geräte dort fortsetzen, wo sie gerade in ihrem Programm gestoppt wurden)?
Aber nun zu den eigentlichen Fragen:
- Ruckeln sich die Werte (nach jedem Skriptstart) so nach und nach zurecht, je länger das Skript läuft? Bis eben blieb die Autonomiezeit leer und die Batteriekapazität war mal 0 und mal ein einigermaßen plausibler Wert.
- Die Batteriekapazität scheint von den parametrierten 13 kWh Bruttokapazität gerechnet zu sein. Bei mir gerade 13 * 88% = 11,44 kWh. Im State steht 11,31 kWh, was ja ungefähr zusammen passt. Aber das ist doch eigentlich falsch, weil mit der Nettokapazität 11,7 kWh gerechnet werden müsste - schließlich steht ja auch nur die Nettokapazität zur Verfügung...oder werden die 10 % Unterschied noch bei der Berechnung der Restzeit abgezogen?
Edit: Hab' jetzt eben mal beide Zahlen nachgerechnet; bei Berechnung der Reststunden werden die 10 % Abzug von Brutto- zu Nennkapazität auch nicht abgezogen. Von daher sind die 13 kWh, die im Skript standen, falsch (bei einem PRO in der niedrigsten Ausbaustufe, wie wir sie haben). Falls du die verwendest, müsste der Akku eigentlich immer früher leer sein als berechnet.
Hi, bei dem Lastabwurf habe ich Beispiel Geräte hinterlegt, die kann man für sich selbst entscheiden ob sinnig oder nicht. Meinen Geräten macht das nichts aus. die machen da weiter wo sie stehen geblieben sind. Lediglich meine Frau beukotiert diese Option...
Zu deiner 1. Frage.
Die Berechnung basiert natürlich immer auf den aktuellen Wert. Sind Entnahme Leistung stark schwankend ändert sich natürlich immer die Autonomiezeit. Um das zu glätten habe ich die Durchschnittsberechnung implemntiert, die jeder für sich anhand der Werte in der Konfig anpassen kann.
Ebenfaslls habe ich in diesem Breich noch ein paar Änderungen implementiert um die Anzeige plausibler zu gestalten. In Vis muss so eingestellt sein, dass Anzeige nur größer 0 möglich ist. Es gab noch Rechenfehler mit - Werten in der Zeit, was ich behoben habe.Ich habe noch eine Änderung im Script, die bei Entnahme sofort eine Zeit ausgibt und dann erst glättet anhand des Durchschnittwertes, so dass die Anzeige immer sofort erfolgt.
- Frage. Die 13 sind im Konfigurationsteil änderbar. Hier kannst du den Netto wert einfach gegen die 13 tauschen.
Ich könnte auch einen Korrekturfaktor konfigurierbar machen. Ich denke die 10 % Verlust sind noch zu gut, was ich die letzten Tage beobachtet habe.
Die Berechnung berücksichtigt ebenfalls die Notstromreserve wenn konfiguriert oder die Notstromreserve entsprechend der E3DC Control Einstellungen.
Ich werde das aktuelle Script gerne oben wieder austauschen. Da keine Resonanz da war, hatte ich diesen Post nicht weiter aktualisiert.
Wenn gewünscht verschiebe ich das auch in einen anderen Threat, hat ja mit E3DC Control nur indirekt zu tun... -
Hi hat jemand von euch auch Sued West Ausrichtung mit ähnlicher Neigung? 2 Dachfläschen bzw. 2 Strings auf dem selben Dach...
const nDeclination2 = 45;
const nAzimuth2 = 50;Mich würde mal interessieren was ihr für Werte bei Winterminimum und Sommermaximum sowie Sommerladeende fahrt.
Die Werte wirken sich ja direkt auf die Regelzeit und Ladeende aus...Ich fand den Zeitbereich bei mir zu klein und bin jetzt auf
Winterminimum 12.0
Sommermaximum 19.5
Sommerladeende 20.0
bei Enstellung 2 Sonne. -
@smartboart sagte in E3DC Hauskraftwerk steuern:
Ich werde das aktuelle Script gerne oben wieder austauschen. Da keine Resonanz da war, hatte ich diesen Post nicht weiter aktualisiert.
Wenn gewünscht verschiebe ich das auch in einen anderen Threat, hat ja mit E3DC Control nur indirekt zu tun...Ich nutze natürlich heimlich auch dein Script
Würde mich über updates hier freuen. -
@ArnoD sagte in E3DC Hauskraftwerk steuern:
Ich nutze natürlich heimlich auch dein Script
Würde mich über updates hier freuen.Hab meine letzte aktuelle Version hier aktualisiert.
Wirkungsgrad in Berechnung einbeziehen. laut Datenblatt: max. Systemwirkungsgrad inkl. Batterie (%) > 88
Bei 13 KW 13 / 100 * 88 = 11.44
einfach beivar Speicher = 11.44; // kw/h hier die Speichergröße in kwh abzüglich des Systemwirkungsgrad eintragen Bei 13 KW 13 / 100 * 88 = 11.44
eintragen.
https://forum.iobroker.net/topic/32976/e3dc-hauskraftwerk-steuern/591
-
@smartboart sagte in E3DC Hauskraftwerk steuern:
Hab meine letzte aktuelle Version hier aktualisiert.
Wirkungsgrad in Berechnung einbeziehen. laut Datenblatt: max. Systemwirkungsgrad inkl. Batterie (%) > 88
Bei 13 KW 13 / 100 * 88 = 11.44Ähmm, irgendwie bin ich noch nicht zu dir durchgedrungen, meine aber richtig zu liegen.
Du darfst nicht von 13 kWh ausgehen, sondern nur von 11,7 kWh (10 % weniger, weil diese 10 % nie nutzbar sind wegen der 90 % Entladetiefe der Batterien). Dein Speicher ist real nur 11,7 kWh groß und davon musst du dann die 88 % Wirkungsgrad/Verluste abziehen, also 11,7 / 100 * 88 = 10,3 kWh.
Das werde ich nun mal bei mir eintragen. Testen kann/will ich es aber noch nicht, da ich mit den neuen Batterien nun wieder über die Nacht komme. Naja, irgendwann wird das Wetter dann doch mal so schlecht werden, dass es nicht mehr reicht, dann kann ich die Zahl testen. -
@stevie77 sagte in E3DC Hauskraftwerk steuern:
@smartboart sagte in E3DC Hauskraftwerk steuern:
@ArnoD sagte in E3DC Hauskraftwerk steuern:
Ich nutze natürlich heimlich auch dein Script
Würde mich über updates hier freuen.Hab meine letzte aktuelle Version hier aktualisiert.
Wirkungsgrad in Berechnung einbeziehen. laut Datenblatt: max. Systemwirkungsgrad inkl. Batterie (%) > 88
Bei 13 KW 13 / 100 * 88 = 11.44Ähmm, irgendwie bin ich noch nicht zu dir durchgedrungen, meine aber richtig zu liegen.
Du darfst nicht von 13 kWh ausgehen, sondern nur von 11,7 kWh (10 % weniger, weil diese 10 % nie nutzbar sind wegen der 90 % Entladetiefe der Batterien). Richtig wäre also: 11,7 / 100 * 88 = 10,3 kWh.
Das werde ich nun mal bei mir eintragen. Testen kann/will ich es aber noch nicht, da ich mit den neuen Batterien nun wieder über die Nacht komme. Naja, irgendwann wird das Wetter dann doch mal so schlecht werden, dass es nicht mehr reicht, dann kann ich die Zahl testen.OK, jetzt verstehe ich... Ja die maximale entladetiefe habe ich nicht berücksichtigt..
Ich bin mir aber auch nicht sicher ob der Wirkungsgrad hier eine Rolle spielt... Weil die Watt werte ja schon die Verluste / Wirkungsgrad beinhalten... Somit könnten die 11.44 dennoch rechnerisch passen. Da ich keine lineare last habe wie die meisten... Wird es schwer die Zeit exakt zu kontrollieren. Diese Probleme haben auch namenhafte usv hersteller da fällt es besonders Mit abnehmender batteriespannung auf, das dann ganz schnell die Zeit runter laueft. ...
Aber super wenn du mal auf die Uhr schaust und unterstützt... Je genauer es wird desto besser.. -
@stevie77 im Prinzip denke ich würde es reichen nur die entladetiefe zu berücksichtigen also die 10 Prozent abzuziehen... Wie erwähnt werden die Verluste über die Leistung erfasst..400 Watt aus der Batterie sind 300 Watt im eigenen messgeraet / hausverbrauch bei mir.
-
script nochmal aktualisiert ...auf grund der letzten Diskussion habe ich Wirkungsgrad und Tiefenentladeschutz mit in die Berechnung einbezogen und somit die Erkenntnisse einfliessen lassen. Beide Werte sind nun konfigurierbar. Hinweise dahinter beachten...
var Wirkungsgrad = 0.88; // Faktor Systemwirkungsgrad > 88% beiS10 E Pro Beispiel 13 KW 13 / 100 * 88 = 11.44 var Entladetiefe = 0.9; // Faktor Tiefenentladeschutz 90% Nutzbar weil Tiefenentladungsschutz von E3DC 11.44 / 100 * 90 = 10,296
https://forum.iobroker.net/topic/32976/e3dc-hauskraftwerk-steuern/591
-
@smartboart
Hallo smartboart,für was ist eigentlich die Variable "Anzeige" in deinem Script gedacht ?
Wenn ich die auf true setze wird ja erstmal nichts mehr angezeigt.
Erst wenn die Entnahme >=0 ist wird diese Variable im Script wieder auf false gesetz. -
@ArnoD sagte in E3DC Hauskraftwerk steuern:
@smartboart
Hallo smartboart,für was ist eigentlich die Variable "Anzeige" in deinem Script gedacht ?
Wenn ich die auf true setze wird ja erstmal nichts mehr angezeigt.
Erst wenn die Entnahme >=0 ist wird diese Variable im Script wieder auf false gesetz.Hallo Arno, die Variable Anzeige dient als Verriegelung...
Ich möchte ja sofort bei Batteriebetrieb eine Anzeige der Autonomiezeit erreichen und dann erst in die Glättung der Anzeige gehen.
Ansonsten würde beim Starten des Batteriebetrieb erst nach der konfigurierten Zeit und Counter ( erst nach Durchschnittsberenung ) die Anzeiger der Autonomiezeit erfolgen.Im Prinzip realisiere ich damit eine sofortige Berechnung und Anzeige der Zeit und verriegle dann die Sofortberechnung. Die nächste Aktualisierung erfolgt dann erst nach der Durchschnittsberechnung.
-
Habe das Script nochmal aktualisiert und den Notstrombetrieb integriert.
V0.0.8 - Berücksichtung Notstrombetrieb:
Im Normalbetrieb erfolgt die Autonomierzeitberechnung
bis zur Notstromreserve . Im Notstrombetrieb wird die Autonomiezeit nun weiter berechnet und die Berechnung erfolgt dann bis zur Nettokapazitätsgrenze (Entladeschutz). Die Anzeige in kWh zeigt immer die Nettokapazität bis zum Entladeschutz.https://forum.iobroker.net/topic/32976/e3dc-hauskraftwerk-steuern/592
-
@smartboart
Ok super, werd ich gleich mal testen -
Mal ne Frage: Da ich ja mal dieses Modbus-Register modbus.0.holdingRegisters.40087_EMS_CTRL in Aktion sehen wollte (weil das Austauschen des Bildes bei mir möglicherweise nicht funktioniert bzw. ich es noch nicht gesehen hatte bisher), habe ich jetzt mal in der Zeit des Regelzeitraums auf mein HKW geschaut und sehe den gelben Balken nicht. E3DC-Control läuft, die Zeit müsste passen. Was mache ich falsch? Liegt es daran, dass E3DC-Control zur Zeit bei schlechtem Wetter bei meiner Einstellung 1 mit Ladeschwelle = 100 überhaupt nicht regelnd eingreift?
-
@stevie77
richtig, wenn E3DC-Control nichts macht bleibt dieser Modbus-Register auf 0.
Ich verwende beim Basic-Image Widget die Eigenschaft Signalbilder mit folgenden Einstellungen:
So sollte es funktionieren.
-
@ArnoD sagte in E3DC Hauskraftwerk steuern:
@stevie77
richtig, wenn E3DC-Control nichts macht bleibt dieser Modbus-Register auf 0.Hmm, ich hatte versucht E3DC-Control während der Regelungszeit versucht zum Steuern zu motivieren, aber hab' nur unload und ladeschwelle niedriger gesetzt. Hätte wohl besser das ladeende darunter gesetzt, fiel mir nach dem Mittagessen ein. Jetzt ist es natürlich zu spät. Naja, nächstes Wochenende dann vielleicht (davor bin ich nicht zu Hause)...