NEWS
Test Adapter Zendure Solarflow
-
@diet99 3x AB1000
-
@nograx paßt!
Anderes Thema: ich schrieb ja schon mal, daß mein PV-Hub erst ab 30% Akkufüllstand mit dem Einspeisen der Maximalleistung von 600W an den Wechselrichter beginnen soll, aber nur dann, wenn gleichzeitig mindestens 150W Solarleistung anliegen. Abends/Nachts soll die Einspeisung dann wieder auf 0W geschaltet werden, sobald der Akku seine untere Entladegrenze, derzeit 15%, erreicht hat. Damit soll ein automatisches Wiederanlaufen am nächsten Tag verhindert werden.
Hintergrund ist, daß ich ein „Ping-Pong“ vermeiden möchte, indem der Speicher automatisch anfängt einzuspeisen, sobald 1% mehr als die untere Grenze im Akku sind, die dann aber bei schwacher Sonne gleich wieder weg sind.
Nach einigem Tüfteln und wertvollen Hinweisen hier im Forum habe ich das jetzt so gelöst:
Die eigentliche Nulleinspeisungs-Regelung mache ich mit OpenDTU-onBattery.
-
@rene55 sagte in Test Adapter Zendure Solarflow:
@nograx Ok, dann ergibt das einen Sinn. Stimmt schon, man geht in die Einstellungen eher selten rein. Ist nur unüblich - soviel ich weiß macht das (bisher) kein Adapter.
Hi, in der neusten Version im Beta-Kanal (1.4.0) bleibt das Passwort wieder gesetzt und das Eingabefeld wird nicht geleert.
-
Und hier noch mal als kurze Zusammenfassung, Version 1.4.0 ist im Beta Kanal:
- neue weitere States verfügbar: wifiState, hubState (Standby oder Abschalten wenn Entladegrenze erreicht), pvBrand and inverseMaxPower
- In den Einstellungen funktioniert das Passwort-Eingabefeld wieder wenn man die Einstellungen neu aufruft
- In den Einstellungen habe ich ebenfalls das Feld "Benutzername" in "E-Mail" umbenannt damit es hier keine Missverständnisse gibt
- Es gibt 2 zusätzliche Berechnungen für PV1 und PV2. Hier kann man also den Tages-Ertrag für beide Kanäle getrennt auswerten
-
@nograx Hervorragend! Sogar die (bisher missverständlichen Namen) wurden sauber angepasst. Sind jetzt alle Features vom SF ausgelesen oder versteckt sich da noch mehr?
-
@rene55 Die Liste ist noch lang.... das Problem ist allerdings nachzuvollziehen was die einzelnen Werte bedeuten. Der MQTT Dienst überträgt nur Zahlen, und diese werden dann in der App zu einem Text oder einer Schaltfläche gemappt.
Bei den "Controls" habe ich halt im Testen und Debuggen immer das Problem das ich Angst habe was kaputt zu machen. Außerdem bastel ich ungern an meiner eigenen Anlage rum - die läuft nämlich aktuell sehr gut.
-
@diet99 könntest du das Script bitte einmal posten. Will das auch gerne so umsetzen wie du mit der Steuerung. Danke vorab.
-
@the_stig Kann ich gerne machen, wenn ich das nächste Mal am Rechner bin. Du mußt es dann eben an Deine Datenpunkte anpassen.
-
Da isses ...
var maxAusgangsleistung; maxAusgangsleistung = getState('zendure-solarflow.0.73bkTV.UjCfKXh1.control.setOutputLimit').val; on({ id: 'zendure-solarflow.0.73bkTV.UjCfKXh1.electricLevel' /* SOC Gesamtsystem */, change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; if ((obj.state ? obj.state.val : "") >= 30) { if (getState('zendure-solarflow.0.73bkTV.UjCfKXh1.solarInputPower').val > 150) { maxAusgangsleistung = 800; } } else if ((obj.state ? obj.state.val : "") <= 15) { maxAusgangsleistung = 0; } if (maxAusgangsleistung != getState('zendure-solarflow.0.73bkTV.UjCfKXh1.control.setOutputLimit').val) { setState('zendure-solarflow.0.73bkTV.UjCfKXh1.control.setOutputLimit' /* Einzustellende Ausgangsleistung */, maxAusgangsleistung); } }); on({ id: 'zendure-solarflow.0.73bkTV.UjCfKXh1.control.setOutputLimit' /* Einzustellende Ausgangsleistung */, change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; if ((obj.state ? obj.state.val : "") > 15 && (obj.state ? obj.state.c : "") != 'script.js.common.Zendure_LimitOutput') { maxAusgangsleistung = (obj.state ? obj.state.val : ""); } });
-
Hier nochmal als Blockly:
Der letzte Trigger-Block ist dafür da, um Änderungen der Einzustellenden Ausgangsleistung im control-Folder abzufangen, die außerhalb des Scripts passieren, z.B. wenn man diesen Wert in der ioBroker-Objekt-Übersicht manuell ändert oder wenn er durch ein anderes Script geändert werden sollte. Ins grüne Feld muß der Script-Name rein.
-
@diet99 Danke dir sehr. Bin morgen aus dem Urlaub zurück und hoffe, dass dann auch alles vom netten DHL-Boten gebracht wurde. Dann lege ich los und berichte, ob es klappt. Danke nochmal!
-
@diet99
Moin,
ich würde in dein Scripts noch Timeouts mit einbauen. So verhinderst du das bei wechselnder Bewölkung die Werte sich ständig ändern. So etwas in etwa: -
@lesiflo said in Test Adapter Zendure Solarflow:
@diet99
Moin,
ich würde in dein Scripts noch Timeouts mit einbauen. So verhinderst du das bei wechselnder Bewölkung die Werte sich ständig ändern.Moin! Und danke für den Hinweis.
Eigentlich schalte ich ja nur oberhalb einer Schwelle ein und unterhalb der Entladegrenze wieder aus. Da sollte es zu keinen wilden Schaltvorgängen kommen können. Und die Hysterese sind immerhin 15%
Oder habe ich möglicherweise was übersehen? -
@nograx said in Test Adapter Zendure Solarflow:
@rene55 Die Liste ist noch lang.... das Problem ist allerdings nachzuvollziehen was die einzelnen Werte bedeuten. Der MQTT Dienst überträgt nur Zahlen, und diese werden dann in der App zu einem Text oder einer Schaltfläche gemappt.
Bei den "Controls" habe ich halt im Testen und Debuggen immer das Problem das ich Angst habe was kaputt zu machen. Außerdem bastel ich ungern an meiner eigenen Anlage rum - die läuft nämlich aktuell sehr gut.
Moin!
Toll wäre, wenn man den Smart CT oder Smart Matching Modus schalten könnte. Vielleicht findest Du das ja auch noch eines Tages raus.
Aber auch so ist es schon klasse, daß man den Output und Bypass steuern kann -
Servus,
mein Hub2000 ist gestern auch angekommen und bin gerade dabei ein Blockly für die Steuerung zu machen.
Eine Frage.. sehe ich es richtig, dass du in deinen Blockly einfach bei Akkustand > 30% und PV-Leistung gesamt > 150Watt die Ausgangsleistung einfach auf 800Watt setzt ohne vergleich ob der Hausverbrauch nur bei z.B. 400Watt liegt? Würde ja bedeuten wenn die PV-Leistung 600Watt ist das 200 Watt eingespeist werden wobei sie im Akku besser aufgehoben sind oder übersehe ich was? -
@xbit er steuert die Ausgangsleistung zusätzlich vom Wechselrichter und begrenzt darüber.
-
Aber da wird doch die erzeugte PV-Energie die aus dem Hub kommt am Wechselrichter "verbrannt" zwar nicht Eingespeist aber auch nicht gespeichert?
Oder ist es anders? -
@xbit nein, alles was der Wechselrichter nicht abnimmt geht in die Akkus.
-
@nograx said in Test Adapter Zendure Solarflow:
@xbit er steuert die Ausgangsleistung zusätzlich vom Wechselrichter und begrenzt darüber.
Genau. Ich verwende OpenDTU OnBattery, um eine Nulleinspeisung zu machen, also genau so viel einzuspeisen, wie gerade im Netz verlangt wird (natürlich bis zur Obergrenze von 600 bzw. zukünftig 800W - im Script ist schonmal testweise 800W drin). Geht natürlich nur, wenn man einen OpenDTU-kompatiblen Wechselrichter im Einsatz hat. Ansonsten könnte man auch vom Script aus die PV-Hub-Ausgangsleistung je nach Anforderung steuern. Müßte man mal ausprobieren, wie schnell das geht, und ob das nicht zu träge wird.
-
@diet99 said in Test Adapter Zendure Solarflow:
Ansonsten könnte man auch vom Script aus die PV-Hub-Ausgangsleistung je nach Anforderung steuern. Müßte man mal ausprobieren, wie schnell das geht, und ob das nicht zu träge wird.
Das versuche ich gerade der Hub taktet etwas langsam aber mal schauen.
Bin auf dem Gebiet kein Profi kannst du mir sagen wie es geht wenn du dem Hub sagst Speise 800 Watt ein.... dann sind die 800 Watt ja erstmal im MPP-Tracker vom Wechselrichter..... diesen sagst du über OpenDTU speise nur 600Watt ins Hausnetz ein.... wie kommen die 200Watt wieder aus dem Tracker zurück ins Hub und weiter in den Akku?