@dreffi
Stimmt nicht ganz, zurzeit ist AC nur auf 22W und der Solarinput ist trotzdem größer und der Rest geht in die Batterie. Das was du beschreibst ist dann wenn der Solar-Input > 600W ist, oder die Batterie schon zu voll ist.
NEWS
Best posts made by Ponti92
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de said in ecoflow-connector-Script zur dynamischen Leistungsanpassung:
@ponti92 Ich hatte anfangs exakt die gleichen Probleme. Das habe ich aber dann aber tatsächlich mit Software-Updates in den Griff bekommen. Ich habe im Moment die untere Ladegrenze bei 7 % liegen und es funktioniert genauso wie es soll: das System legt sich gegen 0:00 Uhr schlafen wenn die Batterie leer ist, und wacht mit den ersten Sonnenstrahlen wieder auf, läd die Batterie auf ca. 10% und beginnt dann mit dem Einspeisen.
Hab den Tipp mit den 7% min ausprobiert und heute hat es prima geklappt und die delta2Max ist wieder aufgewacht und der PS liefert Strom für die Batterie.
Danke schon mal, hoffe das bleibt so ️ -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@sirdir Es wird soweit ich weiß alle 30s geregelt und dabei der niedrigste Wert der letzten 3 Minuten genommen. Das verhindert, dass z.B. kurzzeitige Leistungsspitzen einen Überschuss aus dem Akku ins Netz einspeisen.
Alternativ kann man auch die Regelung auf den Durchschnittswert der letzten 3 Minuten hernehmen, was aber bei ständig wechselnden Lasten auch zu Fehlern führt und Strom unnötig verschenkt wird.Die Idee dahinter ist, dass man die unnötige verschenkte Menge an Energie minimiert und wirklich nur die Grundlast aus dem Akku einspeist, di ebenötigt wird. Dadurch, dass die Batterie meistens über Nacht eh leer wird, ist es nicht wichtig, ob sie ihre Energie 1-2 Stunden früher oder später ins Netz einspeist. Hauptsache du verschenkst nichts aus dem teurern Batteriespeicher und kannst alles daraus selbst nutzen.
Stell dir vor, du betreibst einen Mixer mit 800W und genau in diesem Moment wird die Einspeisung geregelt - quasi in Echtzeit. Dann wird die Einspeiseleistung an die Powerstream weitergegeben, dass 800/600W benötigt werden. Bis diese das nun regelt und eingestellt hat, ist der Mixer wieder aus. D.h. du speist dann die vollen 600/800W ein, im schlimmsten Fall direkt aus dem Akku. Danach merkt das Skript, dass der Mixer wieder aus ist und regelt wieder auf die eigentliche Last, was aber auch wieder Zeit benötigt. D.h. du hast in dieser Zeit unnötig 600/800W eingespeist, die gar nicht benötigt wurden, da das System selbst so träge ist.
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@biased Try this one:
{ id: 0, name: 'acOutCfg_D2', ValueName: 'enabled', Typ: 'D2', MT: 3 },
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de ich könnte es morgen mal testen, ich schick dir meine Adresse
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@ponti92 said in ecoflow-connector-Script zur dynamischen Leistungsanpassung:
@waly_de ich könnte es morgen mal testen, ich schick dir meine Adresse
@Waly_de Hier sind mal meine ersten Tests:
Die neuen writables werden in iobroker angelegt, jedoch lassen sich einige nicht schreiben. Ich habe dann die einzelnen Befehle aaskommentiert und die Syntax dazu angeschaut und musste feststellen, dass einige Befehle kombinierte parameter übergeben, die für mehrere dynamische oder auch statische Werte gelten.
So ist es mir bei slowChargeWatts gelungen mit dem AddParams die statischen parameter hinzuzufügen, sodass dieser Wert geändert werden konnte.Jedoch bei einigen nicht, da ich nicht weiß wie man in dieser config mehrere parameter ändern und übergeben kann. Vielleicht weißt du es ja..
//Delta 2 Max { id: 0, name: 'quietCfg', ValueName: 'enabled', Typ: 'D2M', MT: 1, OT: 'quietCfg' }, // objekt angelegt und schreibbar { id: 0, name: 'xboost', ValueName: 'xboost', Typ: 'D2M', MT: 3, OT: 'acOutCfg', AddParam: '{"enabled":255,"out_freq":255,"out_voltage":4294967295}' }, // objekt angelegt, nicht schreibber obwohl ich die parameter habe.. Evtl. weil xboost hinten steht? {"enabled":255,"out_freq":255,"out_voltage":4294967295,"xboost":0} { id: 0, name: 'bpPowerSoc', ValueName: 'bpPowerSoc', Typ: 'D2M', MT: 1, OT: 'watthConfig' }, // Objekt angelegt, nicht schreibbar kombiniert mehrere parameter in einem {"bpPowerSoc":12,"minChgSoc":0,"isConfig":0,"minDsgSoc":0} { id: 0, name: 'minDsgSoc', ValueName: 'minDsgSoc', Typ: 'D2M', MT: 2, OT: 'dsgCfg' }, // Objekt angelegt, nicht schreibbar { id: 0, name: 'maxChgSoc', ValueName: 'maxChgSoc', Typ: 'D2M', MT: 2, OT: 'upsConfig' }, // Objekt angelegt, nicht schreibbar { id: 0, name: 'bpPowerEnable', ValueName: 'isConfig', Typ: 'D2M', MT: 1, OT: 'watthConfig' }, // Objekt angelegt, nicht schreibbar braucht noch mehr parameter {"params":{"bpPowerSoc":11,"minChgSoc":0,"isConfig":1,"minDsgSoc":0}, { id: 0, name: 'newAcAutoOnCfg', ValueName: 'enabled', Typ: 'D2M', MT: 1, OT: 'newAcAutoOnCfg' }, // Braucht zwei parameter {"enabled":0,"minAcSoc":9} //{ id: 0, name: 'fastChgWatts', ValueName: 'fastChgWatts', Typ: 'D2M', MT: 1, OT: 'acChgCfg' }, // not needed? { id: 0, name: 'slowChgWatts', ValueName: 'slowChgWatts', Typ: 'D2M', MT: 3, OT: 'acChgCfg' , AddParam: '{"fastChgWatts":255,"chgPauseFlag":0}' }, // Objekt angelegt, schreibbar, das chgPauseFlag könnte verwendet werden, um die Ladung zu pausieren, könnte man parametrisieren. { id: 0, name: 'dcChgCfg', ValueName: 'dcChgCfg', Typ: 'D2M', MT: 5, OT: 'dcChgCfg' }, // Objekt angelegt, nicht schreibbar, hier werden 2 parameter gleichzeitig geändert { id: 0, name: 'dcChgCfg2', ValueName: 'dcChgCfg2', Typ: 'D2M', MT: 5, OT: 'dcChgCfg' }, // nämlich dcChgCfg und dcChgCfg2 { id: 0, name: 'USB', ValueName: 'enabled', Typ: 'D2M', MT: 1, OT: 'dcOutCfg' }, // Objekt angelegt, schreibbar { id: 0, name: '12VDC', ValueName: 'enabled', Typ: 'D2M', MT: 5, OT: 'mpptCar' }, // Objekt angelegt, schreibbar { id: 0, name: 'smartgenClose', ValueName: 'closeOilSoc', Typ: 'D2M', MT: 2, OT: 'closeOilSoc' }, // Objekt angelegt, schreibbar { id: 0, name: 'smartgenOpen', ValueName: 'openOilSoc', Typ: 'D2M', MT: 2, OT: 'openOilSoc' }, // Objekt angelegt, schreibbar { id: 0, name: 'standbyTime', ValueName: 'standbyMin', Typ: 'D2M', MT: 1, OT: 'standbyTime' }, // Objekt angelegt, schreibbar (min) { id: 0, name: 'lcdTime', ValueName: 'delayOff', Typ: 'D2M', MT: 1, OT: 'lcdCfg' , AddParam: '{"brighLevel":255}' }, //braucht 2 parameter {"delayOff":0,"brighLevel":255}
Hoffe du kannst damit etwas anfangen. Ich denke man muss bei einigen Features ganze parameter arrays übergeben und diese abspeichern und variabel machen. Man muss z.B. um einen Wert zu ändern trotzdem alle parameter übergeben und muss die alten Werte ja noch wissen, damit diese nicht immer wieder geändert werden..
Zumindest die einfachen States klappen und das SlowChargeWatts auch
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@nils_1985 das mit der Zusatzpower funktioniert ganz gut, solange genug PV Leistung da ist.
Sonst toggled das bei mir auch immer mit 20-50W hin und her
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de
Ich interpretiere das als PVin, das als Input für den Wechselrichter gilt und der Wert in der App ist schon der Wert nach dem Umwandeln abzüglich der Verluste. Ich hab meistens auch immer 93% als Faktor.
Bei einem Hoymiles hat man auch die Werte von PV1/2 die Eingangswerte, die höher sind als der summierter wert auf AC Seite. (In der DTU abgelesen).
Aber kann mich auch täuschen.. -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@karo2204
Im Batterie Modus wird die Batterie nur geladen und das Skript würde nichts regeln.Im einspeise Modus wird das Skript die Einspeisung anhand deiner Grundlast regeln und den Überschuss in die Batterie leiten. Das sollte der Standard sein, wenn man nicht nur die Batterie voll laden möchte.
Bei schönen Wetter habe ich dauerhaft auf einspeise Modus stehen, da die Batterie nie leer wird bis zum nächsten Tag.
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@karo2204 hast du den Strompreis von tibber irgendwie in iobroker zur Verfügung?
Die haben doch auch eine Vorhersage wie der Strom in den nächsten Stunden sein wird. Wenn du das auslesen kannst, dann steht dir der Weg offen das zu Skripten.Dann könntest du dir ein Skript schreiben und die Priorität bei unterschiedlichen Preisen ändern.
Die Priorität kann man ja durch dieses Skript ganz einfach in den Objekten ändern (setPrio auf 0, oder 1)
D.h du speicherst alles in der Zeit, in der der Strom günstig ist und stellst dann abends um auf Prio Einspeisung wenn es teuer ist.Je nachdem wie groß dein Speicher ist, wird der Speicher aber schon im laufe des Tages voll, also wirst du bei 100% alles darüber wieder einspeisen und die Frage ist, ob es dann überhaupt dieses Skript benötigt. Denn dann hättest du in der Anfangszeit trotzdem (günstigen) Strom verbraucht, nur um dann deinen solarstrom am Nachmittag, wenn der Speicher voll ist, zu verschenken.
Darüber hinaus kann man, wenn im Batterie Modus, nur 600W Leistung nutzen, da die maximale Leistung in die Batterie 600W sind. Im einspeise Modus kannst du bis zu 600W laden und 200W gleichzeitig einspeisen.Wie ist denn deine Auslastung und PV Ertrag zurzeit? Wird der Akku voll, oder schaffst du es nicht ihn voll zu bringen?
Wenn der Akku mittags schon voll ist und die Sonne den ganzen Tag scheint, dann macht das wohl keinen sinn..
aber das hängt ganz davon ab, wie bei dir die Gegebenheiten sind.
Latest posts made by Ponti92
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
Hi @Waly_de
Leider funktioniert das noch nicht so ganz mit der zusatzpower, wenn anschließend die Grundlast wieder höher wird.
Ich habe hier zwei Powerstreams und einer ist in die zusatzpower gegangen bevor die Hauslast hoch ging.
Dann ging der hausverbrauch hoch, jedoch hat der zweite PS die zusatzpower nicht verlassen.Der erste PS war nicht im Zusatzpower Modus und konnte deshalb mehr einspeisen:
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de
Vielen Dank! Ich werde es die nächsten Tage testen, sobald wieder mehr Sonne scheint. Zurzeit haben wir wieder Schnee -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@Waly_de
Hi, ich hab noch eine kleine Anmerkung am Regelverhalten des Skripts wenn die Zusatzpower bei PV > 600W regelt. Das funktioniert bis jetzt wunderbar, solange der Hausverbrauch gering ist und die zusätzliche PV Leistung sonst verpuffen würde.
Dazu habe ich das neue Feature mit dem ExcessCharge mit meiner D2M erfolgreich getestet und das funktioniert sogar in Koombination mit der Zusatzpower wunderbar mit ein paar Verzögerungen beim Ein- bzw. Ausschalten, was nicht so tragisch ist.Jedoch hatte ich gerade folgenden Fall:
Hausverbrauch lag bei 200W, welches durch meine kleine PV Anlage schon abgedeckt war. Die PV Leistung meines Powerstreams lag bei rund 700W (600W Batterie und 100W Zusatzpower).
Das ganze funktioniert soweit gut, dass es bei Änderung der PV Leistung auch den Zusatzpower Modus wieder verlässt.Aber sobald der Hausverbrauch steigt, z.b. durch Kochen auf 2-3kW, regelt das SKript munter im Zusatzpower Modus weiter und versucht die 600W in die Batterie zu speichern und nur den Überschuss davon ins Hausnetz zu leiten.
Das kann man auch gut im logfile erkennen (PS habe zwei Powerstreams..) :
D.h. das Skript kann den Zusatzpower Modus erst verlassen, wenn weniger PV Leistung am Powerstream ankommt und speichert dadurch erst mal so viel es kann anstatt den notwendigen Hausverbrauch zu decken.
Als die Sonne dann wieder weg war hat das Skript wieder wie gewohnt geregelt:
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@Waly_de
Eine Frage zu den WertenMaxPower
undZusatzpower_Offset
bzw. generell zur Zusatzpower.
Mein Powerstream wurde nun durch irgendein Update auf 800W erhöht und wenn ich nun den WertMaxPower
auf 800W setze, dann stimmt die Berechnung zur Zusatzpower weiter unten im Skript nicht mehr.Außerdem würde ich den Wert
MaxPower
aufspalten in die wirkliche maximale Power des Powerstreams (600W/800W) und die Leistung, die man einspeisen will. Z.b. wenn man mehrere PS hat, dann beide auf 300W/400W einstellt, um nicht generell zu hoch einzuspeisen.Wenn ich jetzt aber die
MaxPower
bei mir auf 400W stelle, dann regelt das SKript die Zusatzpower schon ab diesem Wert und resultiert dann in einem komischen Verhalten.Darüber hinaus wird die Zusatzpower ja nur benötigt, wenn die Einspeiseleistung < 200W beträgt, da die Batterie maximal mit 600W geladen werden kann.
Ich würde den Wert für die Zusatzpower nicht abhöngig von der
MaxPower
machen, sondern fix auf 600W Ladeleistung bzw. 200W Einspeiseleistung setzen, damit das sauber funktioniert. -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@guhfy9966 du kannst in iobroker den Adapter source analytics nehmen.
Dieser addiert die Wh auf und dann kannst du dir den Zählerstand zb in die influxdb schreiben lassen.
Anschließend kann man dann in Grafana die Werte pro Tag/woche/monat anzeigen lassen.Aber ist jetzt nicht so einfach, wie anscheinend bei homeassistant
Wobei ich die tatsächlichen Werte nicht aus dem EcoFlow Baum nehme, sondern meine energiesteckdose auslese.. das macht es ein Stück einfacher
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
Heute gab es ein neues Powerstream Update und das Skript läuft noch ohne Probleme!
Anscheinend soll das Problem der D2M bei wechselnder Bewölkung behoben sein.
Ich beobachte mal morgen, aber hoffentlich läuft es dann wieder -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@milchbeck das Problem ist, dass man nicht genau sagen kann, ob die Leistung aufgrund von wolken einbricht, oder aufgrund dieses Fehlers..
Man merkt nur, dass die PV Leistung heruntergeht, was aber auch durch Verschattung passieren kann.Ich habe zwei PS (einer mit D2M und einer mit D2M zusatzakku) und ein kleines Skript geschrieben, das die PV Leistung beider Systeme vergleicht. Sobald die PV Leistung beim „kaputten“ System unter 20% geht, trigger ich den Prio Modus. Das funktioniert aber nur wenn man ein Referenzsystem als Vergleich hat.
Alternativ könnte man den Wert von setAC beobachten und mit dem PV vergleichen. Sobald setAC höher als PV ist, zb bei 600W und dann wieder unter PV geht, dann muss man den Batterie Prio Modus triggern.
Jedoch wird der Bug hoffentlich bald von EcoFlow gefixed und würde nicht so viel Energie in dieses Problem stecken. Ich würd mich mal beim Support beschweren, dann schicken sie dir ein goodie als Entschädigung
Man kann anscheinend beim Support auch um ein FW downgrade bitten, was aber das gleichzeitige Laden der d2M wieder entfernt. -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@Waly_de ich hab das mal bei EcoFlow Support geschildert und es ist ein bug mit der Delta2Max.
Sie arbeiten daran…
Ich werd mir mal ein Skript schreiben, das die PV Leistung überwacht und dann bei Bedarf mal kurz auf Batterie Prio umstellt. Dann muss ich das nicht mehr händisch machen.Übrigens liegt es nicht an den Panels, hab beide Panels von einem powerstream zum anderen umgesteckt. Dachte, dass es vielleicht auch daran liegt, da ein paar Module 30V und die anderen 40V haben..
Man kann das ganze auch gut in der Früh beobachten, da legt der eine powerstream schon los und der andere ist bei 0W. Nachdem ich dann einmal den Batterieprio Modus aktiviere, legt auch der zweite los und hat ähnliche Werte wie der erste.
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de das ist ganz unterschiedlich und war heute bei ca 40-50%. Hatte das aber auch schon bei 30% sowie 70%.
Jedenfalls löst sich mein Problem kurzzeitig wenn ich von Stromversorgung auf batteriemodus wechsle. Dann geht PV wieder auf den Wert wie beim anderen PS, dafür natürlich in den Akku. Wenn ich dann wieder auf Stromversorgung umschalte, läuft es erst mal wieder.
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de
Es liegt nicht am umschalten des Prio Modus, denn es passiert wenn der Akku unter 100% ist.