NEWS
E3DC Hauskraftwerk steuern
-
Ich habe mir das jetzt mal angesehen was es bedeuten würde eine zweite Wallbox zu integrieren.
Der Aufwand ist doch etwas größer, da man das ganze Script überarbeiten müsste.
Leider habe ich aktuell nicht die Zeit dafür, aber ich werde das bei einer Optimierung vom Script berücksichtigen. -
@arnod
Danke Dir für den investierten Gehirnschmalz
Ich habe jetzt dein Script mit zwei Instanzen laufen und versuche gerade ein sinnvolles Prioritätenscript zu erstellen. Aus meiner Sicht kann es nur so gehen, dass eine Wallbox den Vorrang erhält und die dort benötigte Energie in der Berechnung der zweiten Wallbox nicht mehr angeboten wird.
Kleine Anmerkung /Oberlehrer an/ In der VIS taucht der Begriff Stromverbrauch auf, wäre eventuell der Begriff Energiebedarf nicht besser, denn Strom kann man nicht verbrauchen /Oberlehrer aus/. -
@goelectric
Physikalisch ist deine Aussage absolut korrekt umgangssprachlich ist der Begriff aber immer noch so weit verbreitet, dass man ihn noch verwenden kann.
Kann es aber auch in Energiebedarf ändern.
Ich würde die PV-Leistung auf die beiden Wallboxen aufteilen, wenn beide E-Autos angesteckt sind, bis die PV-Leistung für beide nicht mehr ausreicht, erst dann würde ich eine Wallbox priorisieren.
Wenn man nicht will das beide E-Autos geladen werden, kann immer noch nur ein E-Auto ansteckt.
Das beide geladen werden, würde bei mir nicht oft vorkommen bei einem min. Ladestrom von 6 A, da würde ich für beide > 8280 W Überschuss benötigen. -
Vorab Danke - tolles Projekt!
Versuche gerade das Projekt auch für mich umzusetzen. Stoße da aber aktuell an meine Grenzen, da ich die Konfiguration nicht vollständig nachvollziehen kannDas erste, wenn ich in dem js script die Parameter befülle dann werden diese in die e3dc.config.txt gespeichert?
Wenn ich die e3dc.config.txt per nano öffne sind werden die in js angelegten parameter nicht übernommen.einspeiselimit - ich darf 100% einspeisen, habe also keine Limitierung. Was gebe ich im js script an?
-
@tbsjah
fangen wir mal langsam an- Du hast geprüft, ob der User iobroker lese und Schreibrechte auf die Datei e3dc.config.txt hat ?
- Der Pfad zur e3dc.config.txt ist im Script bei der const "sPfadE3DC" richtig eingetragen ?
- Bei der Javascript Instanz in der das Script läuft ist die Option "Erlaube das Kommando "exec" aktiviert ?
Sollte so aussehen:
Wenn du kein Limit hast, kannst du unter Einspeiselimit die maximale Leistung deiner PV-Anlage eintragen.
Also bei z.B 15 kWp = 15Was ich aber nicht verstehe, wenn du kein Einspeiselimit hast, warum willst du dann deine PV-Anlage mit E3DC-Control steuern?
-
@arnod Guten Morgen und danke für deine Hilfe
Das Problem mit der Benutzerberechtigung habe ich gestern gelöst.
Die Gruppe ioBroker hatte keine Berechtigung.Das Thema warum eine Batterie nie vollge- oder entladen werden sollte haben bisher nie vollständig nachvollziehen können.
Ich dachte, auch wenn ich es nicht richtig verstehe, dass ich über das Tool von Eba und das Skript welches du obendrüber gelegt hast, die Batterie schonender laden könnte.
Die ganze Funktionalität der Steuerung für das Einspeiselimit aber außenvor lasse.Super ist natürlich deine Berechnung der Prognose. Diese habe ich für meine Heizungsteuerung adaptiert (Warmwassererzeugung)
Wenn ich es also richtig verstanden habe (ich denke nicht) würde es ausreichen wenn ich die Batterie mit voller Leistung (bei mir 3000 da E10) bis auf 95% laden lasse.
Oder ist es schonender langsamer Aufzuladen?Du merkst, eine Menge Unklarheiten auf meiner Seite
-
Es ist schon richtig, das es für die Batterie besser ist langsamer mit niedriger Leistung zu laden.
Ich habe E3DC-Control schon so lange im Einsatz, das ich ganz vergessen habe das E3DC das mit seiner Steuerung nicht kann bzw. nicht so gut kann.
Das mit dem nicht ganz voll laden bzw. nicht ganz leer entladen, sehe ich nicht so eng, da E3DC das ja bereits mit seiner Steuerung berücksichtigt. -
Also ich muss mal ein Lob loswerden: Ich bin echt super zufrieden mit der Situation E3DC-Control und dieses Skript hier mit Wetterprognose und mehreren Presets an Konfigurationseinstellungen.
Wenn es mal nicht läuft, dann sieht es so aus, und das will man ja nicht haben:Problem: Mein Raspi 4B hängt sich alle 2-3 Wochen auf, dann sind keine Netzwerkverbindungen mehr möglich. Und ich merke es leider nicht immer sofort. Weiß leider nicht, was da intern passiert, in den Logdateien habe ich nichts Erhellendes gefunden. Jetzt experimentiere ich gerade mit dem eingebauten Watchdog, der einen Crash erkennen und dann das System neu starten soll. Mal sehen, ob das funktioniert...
-
@ArnoD
Hi Arno,
kannst du mal schauen ob dein history json / function writelog funktioniert hat? Meine Datei wird angelegt, ist aber leer. Im json dann nur [] ..Habe ein bisschen rum probiert und die Ausführung writelog mal manuell gestartet, dann hat es funktioniert.
Habe jetzt eine Verzögerung eingebaut.
setTimeout(function(){writelog();},60*1000); -
Ja ist bei mir auch so.
Verstehe es zwar nicht, da ich das schon mal getestet hatte, aber mit deiner Verzögerung funktioniert es. -
Neue Version hochgeladen.
Version: 0.2.23
Änderungen:
Fehler behoben, dass in der History Sicherungsdatei keine Werte gespeichert wurden und das falsche Monat eingelesen wurde.
Die History Sicherungsdatei wird jetzt nicht jedes Mal neu erstellt, sondern es wird eine neue Zeile mit jeweiligem Datum eingefügt.
Die Anzeige PV-Leistung Prognose in VIS wird jetzt automatisch auf das aktuelle Monat umgestellt.
Danke an @smartboart. -
Hallo zusammen ich habe einen zusätzlichen E3DC Wechselrichter heute an mein S10 bekommen. Im Web ist er schon zu sehen aber leider finde ich keine Table für den Modbus (Holding Register). Kann mir einer sagen wie ich via Modbus an die Werte komme ? Danke schon mal.
So habe es gefunden leider nur die Erzeugte Leistung aber Gut. 40076 Leistung aller zusätzlichen Einspeiser in Watt 2 Int32 R
-
Bin mir zwar nicht sicher weil ich keinen zweiten Wechselrichter habe, aber werden dir nicht auch die Leistung vom L1-L3 unter Regiester 40110 - 40112 angezeigt ?
Register 40076 wird beim mir im Script bei der Anzeige und Berechnung der Gesamtleistung bereits berücksichtigt.
-
@arnod Danke für die Info leider kommen dort keine Werte. Wie sieht es mit der DAchfläche in dem Script aus ich ahbe die 2 Anlage Ost West wie muss ich das in dem Script eintragen ? Dach eins ist reine Südausrichtung das war einfach dann muss ich die 9 kWp noch mal aufteilen ?
// Dachfläche 1 nDeclination[1] = 45; // Ausrichtung der Module (Dachneigung) nAzimuth[1] = 0; // Ausrichtung der Module (-180=north, -90=east, 0=south, 90=west, 180=north) nPower_kWp[1] = 9.28; // Leistung aller Module in kWp // Dachfläche 2 nDeclination[2] = 35; // Ausrichtung der Module (Dachneigung) nAzimuth[2] = 90; // Ausrichtung der Module (-180=north, -90=east, 0=south, 90=west, 180=north) nPower_kWp[2] = 9.0; // Leistung aller Module in kWp // Dachfläche 3 nDeclination[3] = 0; // Ausrichtung der Module (Dachneigung) nAzimuth[3] = 0; // Ausrichtung der Module (-180=north, -90=east, 0=south, 90=west, 180=north) nPower_kWp[3] = 0; // Leistung aller Module in kWp // Dachfläche 4 nDeclination[4] = 0; // Ausrichtung der Module (Dachneigung) nAzimuth[4] = 0; // Ausrichtung der Module (-180=north, -90=east, 0=south, 90=west, 180=north) nPower_kWp[4] = 0; // Leistung aller Module in kWp // Dachfläche 5 nDeclination[5] = 0; // Ausrichtung der Module (Dachneigung) nAzimuth[5] = 0; // Ausrichtung der Module (-180=north, -90=east, 0=south, 90=west, 180=north) nPower_kWp[5] = 0; // Leistung aller Module in kWp
Frage zum Einspeiselimit das geht nicht höher als 12 kw in Config habe ich 12.5 eingetragen.
-
@kmuenke
Bei den Dachflächen kannst du alle Module mit derselben Ausrichtung zusammenfassen.
Wenn ich dich richtig verstanden habe, hast du drei Dachflächen, eine in Richtung Süden mit 0°, eine Richtung westen 90° und eine Richtung osten -90°. Da musst du das auch auf drei Dachflächen aufteilen.
Die Prognose von Forecast, für was diese Angeben benötigt werden, liegt bei mir oft ziemlich daneben.
Kann bei dir natürlich wieder anders sein.Das Einspeiselimit kannst du frei auswählen, habe bei mir nur als max. Wert 10,5 kWh eingestellt in VIS, das kannst du aber bei dir so einstellen wie du es benötigst.
Im Editor das Widget hqwidgets - CircleKnob anwählen und rechts unter Werte den max. Wert ändern. Es sind mehrer vorhanden und du musst das richtige in der Liste auswählen, bei mir hat es die Widget Nummer w01237. -
@arnod Super Danke für die Infos.
-
@arnod Hallo Arno,
du hattest Recht mit deiner Analyse: E3DC-Control arbeitet trotz openWB-Ladevorgang genau so weiter wie es soll. Seit ner Woche habe ich den PHEV (Skoda Superb iV) nun und das Laden funktioniert super. Eine Sorge weniger. Hatte befürchtet, ich müsste mit ebas Wallbox-Parametern hantieren.Solange ich bei jeder Fahrt zur Arbeit die PHEV-Batterie leer fahre, will ich immer zuerst das Auto laden. Erst mit einem BEV in 4 Jahren stellt sich die zweite Frage, die du erwähnt hattest: Speicher vor Auto voll laden, weil sonst bei nem großen Auto der komplette Sonnenstrom eines Tages in der Autobatterie verschwinden könnte, dort nicht komplett gebraucht wird am nächsten Tag und dann der Hausspeicher aber über Nacht leer wird (mit Bezug als Folge).
Aber ich glaube das wird kein Problem: Ich könnte die Lademenge in der openWB pro Ladevorgang automatisch begrenzen, dann könnte ich wieder die kleine PHEV-Batterie simulieren. Alternativ kann man ja auch dem Auto sagen, dass es nur einen bestimmten SoC erreichen soll.
Aber es sollte auch nativ gehen: Die openWB bietet im PV-Modus Hausspeicher-Vorrang an und kann den Wert auch lesen, denn die Ein- und Abschaltschwelle im PV-Modus bei zu wenig Sonne (E3/DC spricht da glaub ich von Halten bzw. Haltedauer) kann man in Watt (und Sekunden) angeben und über das Logfile der Wallbox konnte ich sehen, dass das genau der Speicher-Entladewert ist. Und ich hoffe mal ganz stark, dass wenn der Entladewert bekannt ist, auch der Ladewert verwendet werden kann, ist ja nur ne Vorzeichenvertauschung. -
@stevie77
freut mich das alles gut klappt bei dir
Die Funktion, einen SoC Wert für die Autobatterie einstellen zu können, bis zu der geladen wird, gefällt mir, werde ich in meinem Script auch einbauen. Wird aber wahrscheinlich nur bei mir funktionieren, da ich den SoC Wert über BMW ConnectedDrive bekomme bzw. auslesen kann.
Alternativ könnte man auch deinen Vorschlag umsetzen, die Lademenge pro Ladevorgang zu begrenzen.Das mit der "Ein- und Abschaltschwelle im PV-Modus bei zu wenig Sonne" habe ich noch nicht verstanden. Kann man da eine Haltezeit eingeben, wie lange noch mit einer min. Ladeleistung geladen werden soll, wenn die PV-Leistung nicht mehr ausreicht ?
über das Logfile der Wallbox konnte ich sehen, dass das genau der Speicher-Entladewert ist.
Welchen Speicher-Entladewert meinst du da, den vom Hausspeicher ? Kann dir ab da nicht mehr folgen
-
@arnod sagte in E3DC Hauskraftwerk steuern:
Das mit der "Ein- und Abschaltschwelle im PV-Modus bei zu wenig Sonne" habe ich noch nicht verstanden. Kann man da eine Haltezeit eingeben, wie lange noch mit einer min. Ladeleistung geladen werden soll, wenn die PV-Leistung nicht mehr ausreicht ?
über das Logfile der Wallbox konnte ich sehen, dass das genau der Speicher-Entladewert ist.
Welchen Speicher-Entladewert meinst du da, den vom Hausspeicher ? Kann dir ab da nicht mehr folgen
Ja, so in etwa. Bei der openWB kannst du definieren, ab wann die WB morgens anfangen soll mit PV-geführtem Laden. Dazu muss der Überschuss bei mir jetzt 1400 W sein, und zwar 30 Sekunden lang (Einschaltschwelle siehe Bild). Sinkt der Überschuss innerhalb der 30 Sekunden einmal unter 1400 W, dann beginnt der Zeitzähler von vorne.
Überschuss ist in dem Fall nicht der Überschuss, der ins Netz geht, sondern wenn du einen Speicher hast, dann ist das die Speicherladung. Nebenbei, vermutlich ist es Speicherladung + Überschusseinspeisung zusammen, das weiß ich aber nicht, weil ich den Fall noch nicht hatte (E3/DC-Control wollte bisher morgens immer erstmal den Speicher ein Stück laden, falls es da überhaupt schon aktiv regelt, wahrscheinlich ja nicht).
Der gleiche Fall gilt dann für die Abschaltverzögerung, nur dass man sich eben natürlich von oben her an die definierte Grenze annähert. Bis zu 1400 W darf die Wallbox aus dem Speicher ziehen, um eine Wolke am Abend abzufedern. Wird die Abschaltschwelle überschritten (also mehr als 1400 W Entladung aus dem Speicher, dann beginnt der Counter 300 Sekunden hochzuzählen und danach bricht der Ladevorgang ab, bis wieder die Einschaltbedingungen gelten. Sinkt die Ausspeicherung jedoch vor Abschaltung unter 1400 W, so wird der Counter wieder auf 0 gesetzt.
Man kann so also die Leistungsgrenze definieren und wie lange diese über- oder unterschritten werden darf (je nach Betrachtungsweise).Ich weiß, dass die E3/DC-Wallbox eine Haltedauer hat, die auch für die Wolke zwischendurch (und Überbrückung mit Strom aus dem Speicher) gedacht ist, aber kann man da auch die Schwelle definieren?
-
@stevie77
ok jetzt kann ich dir folgen
Die 1400 W werden mit den Phasen multipliziert, also 4200 W Ladeleistung bei drei Phasen.
Die 30 sek erscheinen mir ziemlich Kurtz, da das Laden dann ständig abgebrochen wird, was für die Ladeelektronik vom E-Auto wahrscheinlich auch nicht optimal ist.
Ich verwende die E3DC Wallbox mit meinem Script, um das Laden vom E-Auto zu steuern.
Somit habe ich alle Funktionen, außer das Laden bis zu einem bestimmten SoC der Batterie E-Auto.
Mit der original E3DC Steuerung wird auf die einstellbare min. Ladeleistung reduziert und eine einstellbare Zeit weitergeladen, wenn mal Wolken am Himmel sind.
In meinem Script verwende ich dafür die Haltezeit.
Die Ladeschwelle kann in meinem Script frei eingestellt werden, bei welcher PV-Überschussleistung mit dem Laden vom E-Auto gestartet wird.
Bei der original E3DC Steuerung gibt es keine Einstellmöglichkeit.