Replies: 22 comments 141 replies
-
In der neuesten Version (#116) habe ich den Block fürs Laden überarbeitet.
Gruß Wiggal |
Beta Was this translation helpful? Give feedback.
-
Hallo Wiggal, testen wird gerade wieder interessant! Laden wurde 5h zu früh gestartet... |
Beta Was this translation helpful? Give feedback.
-
Noch eine andere Überlegung. Durch die Parameter "Akkuverlust" und "Gewinnerwartung" weiß man ja wie hoch der Strompreis maximal sein darf, so dass eine Ladung überhaupt Sinn macht => ist der Wert in der nächsten Stunde höher, dann muss ich überhaupt nichts berechnen. Damit wäre so ein Fall wie heute 17:00 nicht eingetroffen.... |
Beta Was this translation helpful? Give feedback.
-
bin auf dynamicPrice2... |
Beta Was this translation helpful? Give feedback.
-
Wenn ich mir die Preise von heute und morgen anschaue (Diagramme oben) und als Basis einen Ladeverlust von 10% veranschlage, dann komme ich auf folgende Ladestrategie. Ladestrategie: Preis 07:00: 0,2497 liegt + 10% Ladeverlust = 0,274 => von 12:00 bis 12:59 liegt der Preis bei 0,2805 Überlegung: Jeden Tag wenn die Preise für den Folgetag kommen berechnet man eine Ladestrategie und speichert diese ab / oder man berechnet diese immer wieder neu. Das Ergebnis dieser "Strategie" ist eine Berechnung der aufeinanderfolgenden Stunden pro Tag zu denen die Batterie geladen werden darf. Ausserhalb dieser Phasen wird der Strom aus der Batterie bezogen oder aus dem Netz. Während der Zeiten in denen ein laden der Batterie erlaubt ist, wird der Strom für den direkten Hausverbrauch immer aus dem Netz bezogen. In der Stunde bevor die erste Ladephase beginnt (1 bis n Stunden). Also heute um 22:58 läuft dann der Algorithmus um die Stunden 22:58 bis morgen 07:59 zu optimieren. Der Algorithmus sollte jedoch nur die Preise bis 07:59 einbeziehen. Spätere Preise sind nicht relevant. In den Stunden 08:00 - 11:59 sollte der Algorithmus dafür sorgen, dass der in der Batterie gespeicherte Strom kostenoptimal verbraucht wird. |
Beta Was this translation helpful? Give feedback.
-
OK, ich glaube so kommen wir nicht weiter, lass uns das ganze nochmal Schritt für Schritt von Anfang an durchsprechen:
................... |
Beta Was this translation helpful? Give feedback.
-
Hier Beispiel 1:
Wenn dann der neue Tag beginnt, läuft der Algorithmus und optimiert das Verhalten, der jeweiligen zeitlichen Phase in der "er" sich befindet => von 00:00 - 05:59:59 nur die Ladephase |
Beta Was this translation helpful? Give feedback.
-
Hier Beispiel 2: (sorry für meine Sauklaue - habe das Schreiben mit der Hand verlernt😀) Berechnung wieviele Minimum/Maximum am Tag => 2
|
Beta Was this translation helpful? Give feedback.
-
Übrigens gibt es im photovoltaikforum eine Diskussion zu einem ähnlichen Projekt, könnte man sich da auch was abschauen? |
Beta Was this translation helpful? Give feedback.
-
Bisher haben wird nur den Preis betrachtet, aber den Akkustand nicht mit einbezogen, dies kommt nun noch dazu. Wann ist der Speicher voll bzw. wann ist er leer. Folgendes Beispiel: Beim Programmlauf 7 wird festgestellt, dass am Punkt 10 der Speicher leer wird. Dies bestärkt mich eigentlich darin, jede Stunde immer nur die aktuelle Situation und die folgenden bekannten Stunden zu betrachten. Wenn ich einen Tag um 0:00 Uhr betrachte, habe ich ja auch nicht mehr die Preise vom Vortag z.B. 22:00 bis 24:00 im Blick, und mögen sie noch so günstig oder teuer gewesen sein. Ist dann sozusagen Schnee von gestern. |
Beta Was this translation helpful? Give feedback.
-
Hallo Wiggal, |
Beta Was this translation helpful? Give feedback.
-
Hi, hab jetzt mal einen Prototyp gebaut, der Akkuladen und Ladestopps je nach Bedarf mischt und so die günstigste Methode anwenden soll. |
Beta Was this translation helpful? Give feedback.
-
Anmerkung nach dem Update & prinzipiell zur Überlegung:
|
Beta Was this translation helpful? Give feedback.
-
Ok, hier die bisherige Auswertung für die gestern aktualisierte Version. Habe auf 1500w Ladeleistung reduziert. Crontab-2.log ist mir bei schneller Durchsicht aufgefallen. Heute um 08:00 und 11:00 soll aus dem Netz geladen werden ....
![]() ![]() |
Beta Was this translation helpful? Give feedback.
-
Erklärung zur aktuellen Version:
Habe gerade den DEBUG-LEVEL2 erweitert. |
Beta Was this translation helpful? Give feedback.
-
Hier die Logs von gestern bis heute Morgen. Sieht schon ganz gut aus. Aus meiner Sicht hätte jedoch ab 2025-01-04 05:00 die Batterie nicht mehr geladen werden dürfen -> Steuercodes wurden geschrieben - Batterie war jedoch schon bei 100%. Und dann schau dir mal das Dynlog für 2025-01-05 02:58:01 an -> von diesem Zeitpunkt an gab es ja nur noch fallende Preise -> es wurden Entladestops und Ladungen bestimmt -> Eis kam dann aber final nie zu einer Ladung der Batterie (was ja in Ordnung ist) |
Beta Was this translation helpful? Give feedback.
-
Hallo Manfred,
Es wird jetzt für jeden gefundenen Minimalpreis, der eine Ladung ermöglicht, geprüft, ob er sich nach Berechnung des rentablen Preises als Ladung bzw. als Entladestopp eignet. Ich hoffe, dass damit das Problem, dass der rentable Preis ja immer nur für den niedrigsten Preis gegolten hätte, erledigt hat. Ich lasse, das Skript jetzt mal eine Woche laufen, und schaue, ob noch Probleme auftreten. Gruß |
Beta Was this translation helpful? Give feedback.
-
Servus Manfred, zu deiner Info, ich werde morgen den pull request #116 in den main Zweig mergen, und eine neue Version ziehen. |
Beta Was this translation helpful? Give feedback.
-
Hallo Wiggal, Habe die Auswertung für die ganze Woche eingestellt. Musste den Dynlog zippen, da ich den log level auf 3 stehen habe und “Lastprofile Neue Tage = 0". Zusätzlich habe ich für die letzte Woche für jeden Tag Screenshots in das angehängte Dokument hinzugefügt. Das neue Programm läuft konsistent und ist ein guter Fortschritt. Das parallele Laden eines Elektroautos hat ebenfalls gut funktioniert. Für mich stellen die folgenden zwei Themen die wichtigsten Topics dar: 1.) Anpassung des Programmes, so dass aus der Batterie nur Strom bezogen wird, wenn es wirtschaftlich Sinn macht. Aus den Screenshots ist ersichtlich, dass es an der Mehrheit der Tage passiert, dass Strom aus der Batterie bezogen wird, obwohl dies aufgrund der Einstellungen (Akkuverlust + Gewinnerwartung) nicht passieren sollte. 2.) Kontext Elektroauto laden - Gibt es die Möglichkeit, dass Programm “SymoGen24Controller2.py” öfter zu starten z.B. alle 60 sec , ohne das z.B. die WR Daten jedes mal weggeschrieben werden? Viele Grüße, |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Zur Info: Zum obigen Spotprice-Beispiel von heute: Die Berechnung zum Nachladen funktioniert offensichtlich sehr gut. Hier wurde im zweiten Tiefpreisfall des Tages ebenso eine Nachladung initiiert. (um 13:00 Uhr) |
Beta Was this translation helpful? Give feedback.
-
Hallo Wiggal, |
Beta Was this translation helpful? Give feedback.
-
Fortsetzung von (#106)
Aktuelle Methode:
Getrennt nach Akkuladen und Entladung sperren werden folgende Schritte durchlaufen:
Da die Berechnung jede Stunde durchgeführt wird, kann sich vor allem bei geringen Preisunterschieden die Methode jede Stunde ändern.
Folgende Verfeinerungen sind noch möglich bzw. schon angebracht (bei Methode Laden):
Beta Was this translation helpful? Give feedback.
All reactions