@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
Bei mir geht’s die Regelung auch nicht mehr richtig.. hoffentlich ist das nur ein EcoFlow Server Problem.
Als Alternative habe ich in der App nun auf Shelly3em umgestellt, damit läuft es auch wenn die App geschlossen ist. -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de ratedPower ist bei mir obwohl ich auf Maximal 400W gestellt habe bei 8000
Wenn ich den Wert in der App verstelle, dann zeigt mir das log folgendes an:
10:10:34.569 info javascript.0 (21466) script.js.Ecoflow1_2_5: hexString: 0a3d0a0308c20310201814200128013803401448920150035801709ecdccbb06800113880101ba0103696f73ca0110485735315a4f48345346355435353130 10:10:34.570 info javascript.0 (21466) script.js.Ecoflow1_2_5: Nachricht: {"header":[{"pdata":"08c203","src":32,"dest":20,"dSrc":1,"dDest":1,"checkType":3,"cmdFunc":20,"cmdId":146,"dataLen":3,"needAck":1,"seq":1735599774,"version":19,"payloadVer":1,"from":"ios","deviceSn":"XXXXXXXXXXXXXX"}]}
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@foxthefox Weil der immer die Last einstellt, die am Shelly 3em anzeigt, einstellt. Bei manchen springt es auch von kompletter Deckung des Hausbedarfs (shelly = 0W) zu 100-200W Grundbedarf.
Da ja der Shelly normalerweise den Gesamtverbrauch des Hauses misst, darf Ecoflow da nicht die Daten so behandeln wie einen Smartplug. Das tun sie aber zurzeit und dann kann es entweder hin und her pendeln, oder wie bei mir sich bei der Hälfte des Verbrauchs einpendeln.
Z.b. Shelly zeigt 80W an, Ecoflow speist 80W ein, da einfach der Wert vom Shelly übernommen wird. Grundlast ist aber 160W, sprich Ecoflow kann nur die Hälfte der geforderten Leistung bedienen.
Bei manchen springt es herum, wahrscheinlich am Anfang und bei wechselnden Lastspitzen.
Sagen wir du verbrauchst 200W und Ecolfow speist noch nichts ein. Dann startet die App und Ecoflow sieht die 200W am Shelly und stellt diese ein. Nun werden aber von den 200W die Einspeiseleistung von Ecoflow (~ 200W) abgezogen und der Shelly sieht theoretisch +-0W. Diesen Wert nimmt Ecoflow wieder und schaltet die Einspeisung womöglich aus. Und so schaukelt der Wert hin und her.Hier ist das log als ich es eingeschaltet habe:
Und hier beim Ausschalten:
Weiß nicht ob da was dabei ist, da ziemlich viele EInträge in wenigen Sekunden kommen..
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@ponti92
Nach kurzen Tests ist die Logik des Verhaltens leider noch falsch, da die Leistung des Shelly 3ems wie ein smartplug behandelt wird. Dadurch werden im geregelten Fall nur die Hälfte des Hausverbrauchs eingespeist. -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@bastib ich hab heute bei einem PS wieder Temperatur Daten erhalten
Muss mal schauen warum beim zweiten nicht.. -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@bombastikde übrigens gibt’s seit heute diese Option in der App. Wurde quasi ohne Update dazugeschaltet..
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@bastib ich hab das Update schon drauf und das Skript läuft noch damit.
Die Temperatur wird leider immer noch nicht aktualisiert..Es gibt nun auch die Möglichkeit die Maximale einspeiseleistung von 400-800W einzustellen, was ja schon oft hier gefordert wurde. Dadurch kann man zwei PS mit 400W betreiben ohne die 800W zu überschreiten.
Vor allem wenn der Akku voll ist, speist der PS unter gewissen Umständen 800W ein, was bei zwei PS dann schnell über die legale Grenze gelangt.. -
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@dreffi ist bei mir seit dem Update auf 195/196 leider auch der Fall..
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@accu Ja das geht über die externe config:
// EXTERNE STATES zum Manipulieren von Konfigurationsvariablen var externConfig = [ //############# Diesen Abschnitt für jeden einzelne Wert anlegen ################ //Beispielwerte: { VarName: "seriennummern[0].lowBatLimitPozOn", //Variabelname aus "ConfigData" bei Aufzählungen [0...X] in der Reihenfolge der Angaben id: "0_userdata.0.ecoflow.ExStateTest", //Das Objekt (State) das den Wert für diese Variable enthalten soll. Muss manuell angelegt werden. create: false, //true: das Object wird unterhalb von "statesPrefix" angelegt. false: Es muss existieren oder manuell angelegt werden }, { VarName: "ExcessCharge", //Variabelname aus "ConfigData" bei Aufzählungen [0...X] in der Reihenfolge der Angaben id: "ExcessCharge", //Das Objekt (State) das den Wert für diese Variable enthalten soll. create: true, //true: das Object wird unterhalb von "statesPrefix" angelegt. false: Es muss existieren oder manuell angelegt werden }, //####################################################################### ];
Jedoch hat es bei Änderung auf false das Laden der Powerstation nicht direkt gestoppt..
-
RE: ecoflow-connector-Script zur dynamischen Leistungsanpassung
@waly_de
Hi Markus, also ich hab das Skript getestet und es hat die Zusatzpower erfolgreich abschalten können. So läuft es erst mal ganz gut Ich beobachte aber noch weiter..