NEWS
Regelung eines Hoymiles Solarinverters (Nulleinspeisung)
-
@laser
z.B das bei einem Zweirichtungszähler nicht zu viel auf dem Einspeisewert gesamt steht, wenn z.B mehr als ein 600 Watt BKW in Betrieb ist ?
Würde doch wahrscheinlich irgenwann Ärger geben wenn die Einspeisung im Jahr viel zu hoch ausfällt oder meinst du nicht ? -
@trudeludes OK, an sowas hatte ich jetzt nicht gedacht...Ich tütele immer noch an meiner Akku- Ladegeschichte rum.
-
@Kymchy erst mal vielen Dank für Deine Arbeit und das Teilen.
Das hat mir und sicher auch anderen Zeit und Mühe gespart. Mal ne Frage in die Runde, hat schon jemand einen zweiten Hoymiles mit in diese Regelung eingebunden? Ist das sinnvoll überhaupt möglich? Wenn der eine runter oder rauf regelt, ändern sich ja auch schon wieder die Werte für den anderen WR. -
@tigger66 Ich bin auch gerade dabei, mich hier einzufuchsen, und wenn es dann mal läuft, sollen am Ende 2-5 Wechselrichter gesteuert werden, daher antworte ich mal auf die Frage "zweiten Hoymiles einbinden":
Grundsätzlich sehe ich zwei Regelungsprobleme (#1 gilt auch schon bei einem einzigen Wechselrichter):
- Liegen die Module eines Wechselrichters im Schatten und produziert er z.B. gerade nur 100W, dann wird eine Drosselung von 600W auf 300W überhaupt nichts daran ändern, was dieser Wechselrichter produziert. Hat man also vorher schon Teillastbetrieb, dann ist die Berechnung des Zielwerts für Nulleinspeisung ungenau. Macht aber auch nichts, denn eine ungenaue Regelung ist ja besser als gar keine Regelung.
- Bei mehreren Wechselrichtern käme es dann darauf an, ob deren Module alle ähnlich ausgerichtet sind oder ob bei einer Ost-West-Ausrichtung die einen gerade auf Vollast laufen und die anderen dahintrödeln. Wenn alle ähnlich ausgerichtet sind, könnte ich für "maxSolarPower" und "measuredSolarPower" jeweils die Summe aller Wechselrichter nehmen. Aber das Problem von 1) besteht dann ja weiterhin. D.h. angenommen ich müsste die tatsächliche Produktion auf 50% senken, WR1 läuft auf 600W, WR2 läuft auf 100W, ich schicke an beide das Signal "senke auf 50%", dann läuft WR1 auf 300W und WR2 weiterhin bei 100W. Summe also 400W statt der gewünschten 350W. Aber es geht in die richtige Richtung und diesen Fehler auszumerzen, würde ja alles nur unnötig kompliziert machen.
Wenn ich oben so herauslese, ist das große Ziel ja eh bloß, am Jahresende keinen allzu hohen Wert auf dem 2.8.0-Zähler stehen zu haben, damit es nicht auffällt, dass die Anlage deutlich größer als die angemeldeten 600W ist. Also muß man nur schaffen, die großen Einspeiseleistungen zu verringern, es muß ja nicht genau auf Null ausgeregelt werden. So ein Zielwert von vielleicht -200W wäre eh geschickter im Sinne des Eigenverbrauchs, weil die Regelung ja doch nicht die schnellste ist, bis sie dann mal alle Schritte bis zur Umsetzung im Hoymiles durchlaufen hat. Ich bekomme z.B. 1x pro Minute die Werte des Hauszählers, kann dann reagieren, und die Änderung im Hoymiles hat bei direkter Steuerung via Ahoy auch schon ne Minute gedauert.
Aber wie gesagt, ich stehe ganz am Anfang (der Rasp ist erst einen halben Tag alt und ich mache die ersten Schritte im iobroker usw.), d.h. bis jetzt bin ich eh überrascht, wie gut und mit wie wenig Hindernissen alles läuft. Ein Powerfox liest den Hauszähler, und zur Verifikation lasse ich die Wechselrichterleistungen und die Zählerleistungen via influxdb und grafana anzeigen. Ob das mit der Abregelung jetzt auch vom iobroker aus funktioniert und ob das mit dem Topic geklappt hat, sehe ich hoffentlich heute... Auf jeden Fall schon mal vielen Dank für die Tipps hier!
Lars
-
@lars72
naja, du könntest die Leistung der einzelnen WR ins Verhältnis setzen und die Drosselung entsprechend aufteilen. Wäre ja kein allzu komplizierter Algorhythmus. -
@lars72 vielen Dank für Deine ausführliche Antwort. Auch bei mir misst ein Powerfox, aber auch noch ein Shelly 3EM. Die zwei meiner Anlagen die dies betrifft, sind tatsächlich in Ost/West ausgerichtet. Die Regelung funktioniert mit dem Blockly von @Kymchy mit einem WR bei mir sehr gut. Tatsächlich ist es mein Wunsch, auf dem 2.8.0 Zähler so wenig wie möglich stehen zu haben. Dafür würde ich sogar einen leicht höheren Bezug, als unbedingt nötig in Kauf nehmen. Meine Anlagen passen nämlich auf keinen Balkon mehr. Da sich meine Kentnisse mit dem Script schreiben leider sehr in Grenzen halten, ist der Hinweis von @Kymchy zwar sicher für den einen oder anderen hier hilfreich, hilft mir aber eher weniger. Eventuell hat ja mal noch einer Bedarf dieses umzusetzen und teil dies dann wie @Kymchy hier mit uns.
-
Ich würde meine zukünftige Lösung ja gerne veröffentlichen, aber ich hänge noch fest, weil ich die Drosselung nicht vom iobroker zum Ahoy schicken kann.
Wenn ich das Topic mit mqtt explorer veröffentliche, kann ich es ohne "/" vor ahoy in das Verzeichnis 0 schreiben, und wenn ich den / davor setze, dann kann ich ins Verzeichnis ahoy schreiben. Im Verzeichnis ahoy liegen alle Dinge, die ich von der Ahoy-DTU geschickt bekomme. D.h. die ahoy-DTU sendet unter dem Topic ahoy.
In welchen Ordner muß das rein?Das hier ist das ganz kurze Testskript:
Wenn das gelaufen ist, dann sehe ich zwar in den Objekten, dass der Wert auf 50 geändert wurde, aber der ist rot und beim Maus-over steht auch "bestätigt: false".Muß ich irgendwo noch die IP der Ahoy-DTU eintragen? Oder woher weiß das iobroker-Skript, wo es hin geschickt werden soll?
PS: Habe nun in den Objekten den / am Anfang rausgelöscht, dann erscheint nach dem Durchlaufen des Skripts die "50" kurz grün und dann gleich wieder rot.
Hier der Code des Objekts:
-
@lars72 zum Ahoy kann ich nicht viel beitragen. Da ich ständig das Problem hatte, dass sich das Teil "aufhing" bin ich zu OpenDTU gewechselt und finde es läuft stabiler. Außerdem gibt es dafür einen Adapter, der in den Objekten die nötigen Datenpunkte anlegt die man dann gut ansteuern kann. Hat die Sache für mich viel einfacher gemacht.
-
@lars72 die dürfen gerne rot sein...
-
@lars72 said in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):
Muß ich irgendwo noch die IP der Ahoy-DTU eintragen? Oder woher weiß das iobroker-Skript, wo es hin geschickt werden soll?
das regelt doch alles der MQTT Broker!
-
@tigger66
Danke,aber wie installiere ich denn den OpenDTU-Adapter?
Erledigt, habe es mit Hilfe geschafft... -
@tigger66 sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):
zum Ahoy kann ich nicht viel beitragen. Da ich ständig das Problem hatte, dass sich das Teil "aufhing" bin ich zu OpenDTU gewechselt und finde es läuft stabiler. Außerdem gibt es dafür einen Adapter, der in den Objekten die nötigen Datenpunkte anlegt die man dann gut ansteuern kann. Hat die Sache für mich viel einfacher gemacht.
Hi tigger66,
heißt das wenn du im openDTU Adapter die Leistung reduzierst (set the inverter limit ....) die Werte auch an die openDTU übertragen werden?
Bei mir funktioniert das nicht nur wenn ich über openDTU die Leistung reduziere wird das auch direkt im openDTU Adapter angezeigt.
Viele Grüße
-
@duffy Nachrichten ohne "retain"-Flag senden im MQTT-Adapter
-
-
@tigger66 aber bitte immer nur non_persistent, sonst schießt ihr euch auf Dauer den Speicher im WR ab.
-
@Kymchy nee ist schon klar. Habe ich bisher immer nur non_persistent gemacht. Hätte die beiden unteren Datenpunkte besser nicht mit einkreisen sollen. Was bringt dass mit den persistent überhaupt? Dass die Einstellung nach dem WR Neustart erhalten bleiben?
-
@tigger66 ja, genau
-
Wird der Speicher nicht zurückgesetzt wenn der WR stromlos ist?
Wird er durch persistent speichern dauerhaft beschädigt?Viele Grüße
-
@kymchy sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):
@duffy Nachrichten ohne "retain"-Flag senden im MQTT-Adapter
Sorry, was ist eine retain Flag??
und muß man das über MQTT machen oder geht das auch über den openDTU Adapter?
-
Mal zur Info, ich habe jetzt einfach, zum testen, mal ein zweites Script erstellt und dafür einen weiteren "storedNeededpower" Datenpunkt für den zweiten WR angelegt. Die Regelung läuft also für jeden WR seperat. Aber ich bin bisher mit dem Ergebniss eigentlich zufrieden. Für Verbesserungen bin ich aber immer zu haben.