NEWS
Script zum Laden/Entladen von Zendure Solarflow
-
@berny-k
Den markierte Bereich ersetzt du durch ein Zahl, das begrenzt deinen Output auf den eingegebenen Wert. Oder du legst dir ein Objekt unter 0_userdata.0 an so wie ich es gemacht habe. Da schreibst du den Wert auf den du begrenzen willst rein.
-
@berny-k
Wie schon bei EinspeisenLimit entweder Objekte in userdata anlegen mit StartZeit und Endzeit oder statt mit Variablen dor Testfelder einfügen. Tesxtfeld z. B. mit 19:00 und 08:00 füllen so dass in der Zeit dazwischen eingespeist wird.
-
@berny-k
Wie schon bei EinspeisenLimit entweder Objekte in userdata anlegen mit StartZeit und Endzeit oder statt mit Variablen dor Testfelder einfügen. Tesxtfeld z. B. mit 19:00 und 08:00 füllen so dass in der Zeit dazwischen eingespeist wird.
@Murphy-0 mein Problem ist, dass ich noch nicht so recht verstanden habe wie man das Einspeisen von PV und Einspeisen vom Akku getrennt steuern kann.
So wie ich es verstehe, kann ich mit setDeviceAutomationInOutLimit irgendwie nicht zwischen PV Einspeisung und Akku Einspeisung trennen, oder? -
Hast du nicht geschrieben dass dein Akku AC seitig angeschlossen ist?
Also das was an Strom im Haus verbraucht wird abzüglich das was die Solarmodule liefern wird im Ct Modus dann aus dem Akku genommen, falls vorhanden oder nicht Softwaremäßig begrenzt.Grundvoraussetzung für eine sinnvolle Regelung ist ein Messgerät an der Messstelle.
Shelly em3 (pro) oder ähnliches.Damit wird der Überschuß ermittelt und in den Akku geladen.
Bei Zukauf von Energie wird falls vorhanden aus dem Akku eingespeist.Regeln tust du Input oder Output.
Beim Output kann man ganz einfach auch den Grundverbrauch von Sonnenuntergang bis Sonnenaufgang
einstellen und einspeisen.
Wie ein Input ohne Messgerät effizient funktionieren soll sehe ich nicht, -
Hast du nicht geschrieben dass dein Akku AC seitig angeschlossen ist?
Also das was an Strom im Haus verbraucht wird abzüglich das was die Solarmodule liefern wird im Ct Modus dann aus dem Akku genommen, falls vorhanden oder nicht Softwaremäßig begrenzt.Grundvoraussetzung für eine sinnvolle Regelung ist ein Messgerät an der Messstelle.
Shelly em3 (pro) oder ähnliches.Damit wird der Überschuß ermittelt und in den Akku geladen.
Bei Zukauf von Energie wird falls vorhanden aus dem Akku eingespeist.Regeln tust du Input oder Output.
Beim Output kann man ganz einfach auch den Grundverbrauch von Sonnenuntergang bis Sonnenaufgang
einstellen und einspeisen.
Wie ein Input ohne Messgerät effizient funktionieren soll sehe ich nicht,@Murphy-0 Ich habe an meinem SF800pro, 4 PV-Module angeschlossen.
Den aktuellen Hausverbrauch messe ich mit einem Tasmota Smartmeter den ich im lesiflo Blockly Abfrage.
Das Blockly tut damit auch grundsätzlich was es soll und regelt meine Null-Einspeisung.
Jetzt möchte ich aber bestimmen wann die Akku-Entladung in den Hausverbrauch stattfinden soll und auch mit wie viel Watt entladen werden soll.
Mit dem lesiflo Blockly geht das aktuell ja nicht bzw. Das Blockly macht das jetzt nicht und das würde ich gerne ändern. Dafür suche ich nach Lösungsansätzen.

Hier wird ja der PV-Überschuss geregelt in den Hausverbrauch eingespeist. Allerdings wird irgendwann auch vom Akku noch mit eingespeist. Das möchte ich unterbinden bzw. Selbst festlegen wann der Akku in den Hausverbrauch einspeisen soll.Ich glaube ich habe mein Problem erst Mal gelöst. Ich setzte ein das Entlade Limit entsprechen hoch, dann wird auch nicht mehr entladen. Manchmal sieht man den Wald vor lauter Bäume nicht mehr.
-
@berny-k
Moin, wenn du keinen dynamischen oder Zeitvariablen Stromvertrag hast ist doch eigentlich egal wann du einspeist. Ansonsten kannst du das über die aktuelle PV-Leistung
der Module regeln. Bei meinem Hyper ist das der Datenpunkt solarInputPower. Du gibst nur soviel Leistung am Ausgang zur Verfügung wie die PV Leistung ist.
Am besten dafür eine weitere if-Abfrage bauen. Ich nutze mittlerweile javascript, da sieht das dann so aus:Setzen Modus if (ladenErlaubt) {zielModus = 1;} else if (entladenErlaubt) {zielModus = 2;} else if (aktuelleLeistung > 50 && (pvLeistung2 + pvLeistung3) > 80) {zielModus = 3;} Abfragezweig für Modus 3 ... // ---------------- Modus 3: PV-gestütztes Entladen ---------------- const pvEntladeLimitW = Math.max(0, pvLeistung2 + pvLeistung3 - 100); // nur Hyper-PV const bedarfHausW = Math.max(0, Math.floor(aktuelleEinspeisung)); // Netzbedarf const maxLadeleistungGesamt = 800; else if (zielModus === 3) { // --- Modus 3: PV-gestütztes Entladen --- const entladeGesamt = Math.min( pvEntladeLimitW, // PV2 + PV3 bedarfHausW, // nicht mehr als benötigt maxLadeleistungGesamt // Gerätegrenze );Für die Math.max und Math.min Funktionen musst du dir in Blockly If-Abfragen bauen. Die gibt es nicht unter Blockly soweit ich weiss.
-
@berny-k
Moin, wenn du keinen dynamischen oder Zeitvariablen Stromvertrag hast ist doch eigentlich egal wann du einspeist. Ansonsten kannst du das über die aktuelle PV-Leistung
der Module regeln. Bei meinem Hyper ist das der Datenpunkt solarInputPower. Du gibst nur soviel Leistung am Ausgang zur Verfügung wie die PV Leistung ist.
Am besten dafür eine weitere if-Abfrage bauen. Ich nutze mittlerweile javascript, da sieht das dann so aus:Setzen Modus if (ladenErlaubt) {zielModus = 1;} else if (entladenErlaubt) {zielModus = 2;} else if (aktuelleLeistung > 50 && (pvLeistung2 + pvLeistung3) > 80) {zielModus = 3;} Abfragezweig für Modus 3 ... // ---------------- Modus 3: PV-gestütztes Entladen ---------------- const pvEntladeLimitW = Math.max(0, pvLeistung2 + pvLeistung3 - 100); // nur Hyper-PV const bedarfHausW = Math.max(0, Math.floor(aktuelleEinspeisung)); // Netzbedarf const maxLadeleistungGesamt = 800; else if (zielModus === 3) { // --- Modus 3: PV-gestütztes Entladen --- const entladeGesamt = Math.min( pvEntladeLimitW, // PV2 + PV3 bedarfHausW, // nicht mehr als benötigt maxLadeleistungGesamt // Gerätegrenze );Für die Math.max und Math.min Funktionen musst du dir in Blockly If-Abfragen bauen. Die gibt es nicht unter Blockly soweit ich weiss.
@lesiflo Danke, wieder ein wertvoller Tipp! Ich bin einfach noch unerfahren mit der Steuerung von BKW mit Speicher aber so langsam werden mir die Zusammenhänge klarer dank der Unterstützung hier. Manchmal sieht man den Wald vor lauter Bäume nicht.
Ich will die Akku-Entladung tagsüber begrenzen damit ich für die Nacht noch Kapazität für eine kleine Grundlasteinspeisung habe da ich festgestellt habe, dass der SF800Pro sonst in der Nacht offline geht und von selbst nicht mehr online geht. -
Mein Vorschlag um das mit deinem benutzen Blocklx umzusetzen wäre folgender:
Als 1. ermittelst du wie viel Akkukapazität in % du brauchst um über die Nacht zu kommen.
2. erstellst du dir 2 Zeitzonen für output. Eine Tagsüber wo du nach ermitteltem Bedarf einspeist bis zu einem mindest Soc des Akkus den du für Nachts resevierst.
Dann die Zeitzone für Nachts wo du einen fest eingestellten Wert einspeist um den Grundverbrauch abzudecken. Wenn cih dazu komme mach ich dir später mal einen Grundaufbau um den Output deines Blocklys. -
Mein Vorschlag um das mit deinem benutzen Blocklx umzusetzen wäre folgender:
Als 1. ermittelst du wie viel Akkukapazität in % du brauchst um über die Nacht zu kommen.
2. erstellst du dir 2 Zeitzonen für output. Eine Tagsüber wo du nach ermitteltem Bedarf einspeist bis zu einem mindest Soc des Akkus den du für Nachts resevierst.
Dann die Zeitzone für Nachts wo du einen fest eingestellten Wert einspeist um den Grundverbrauch abzudecken. Wenn cih dazu komme mach ich dir später mal einen Grundaufbau um den Output deines Blocklys.@Murphy-0 sagte in Script zum Laden/Entladen von Zendure Solarflow:
du brauchst um über die Macht zu kommen
Joda lässt grüssen ...
-
Mein Vorschlag um das mit deinem benutzen Blocklx umzusetzen wäre folgender:
Als 1. ermittelst du wie viel Akkukapazität in % du brauchst um über die Nacht zu kommen.
2. erstellst du dir 2 Zeitzonen für output. Eine Tagsüber wo du nach ermitteltem Bedarf einspeist bis zu einem mindest Soc des Akkus den du für Nachts resevierst.
Dann die Zeitzone für Nachts wo du einen fest eingestellten Wert einspeist um den Grundverbrauch abzudecken. Wenn cih dazu komme mach ich dir später mal einen Grundaufbau um den Output deines Blocklys. -
@berny-k
Mal ein Entwurf auf die Schnelle:2 Zeitzonen: 07:00 bis 19:00 Einspeisen wenn Akku über 50 % SOC sonst nicht, Akku wird erst mal so weit geladen.
19:00 bis 07:00 Einspeisen für Nachts fest auf 150 Watt eingestellt.Natürlich ohne Gewähr, aber um im 1. Schritt einen Versuch laufen zu lassen sollte es reichen.
Dann kann man weiter sehen.
-
Du kannst auch im 'Block für den Tag die die Werte: entladen_ab_PV_Leistung und min_PV_Leistung_laden hoch setzen um den Akku tagsüber schneller zu laden. Ebenso kannst du den mindest SOC hier 50 verändern wie du es brauchst.
Im Block für die Nacht kannst du 150 Watt natürlich für dich sinnvoll einstellen.
Hoffe du kommst so weiter, und immer dran bleiben. Der Anfang hatte bei mir auch so seine Tücken.
-
Du kannst auch im 'Block für den Tag die die Werte: entladen_ab_PV_Leistung und min_PV_Leistung_laden hoch setzen um den Akku tagsüber schneller zu laden. Ebenso kannst du den mindest SOC hier 50 verändern wie du es brauchst.
Im Block für die Nacht kannst du 150 Watt natürlich für dich sinnvoll einstellen.
Hoffe du kommst so weiter, und immer dran bleiben. Der Anfang hatte bei mir auch so seine Tücken.
@Murphy-0 Cool, du bist echt ein Held, weiß gar nicht was ich sagen soll, 1000 Dank! So ähnlich habe ich es jetzt schon umgemodelt. Was ich noch nicht so ganz kapiert habe ist, was es mit dem acMode auf sich hat und wann man den auf welchen Wert setzen muß?
-
@Murphy-0 Cool, du bist echt ein Held, weiß gar nicht was ich sagen soll, 1000 Dank! So ähnlich habe ich es jetzt schon umgemodelt. Was ich noch nicht so ganz kapiert habe ist, was es mit dem acMode auf sich hat und wann man den auf welchen Wert setzen muß?
@Berny-K sagte in Script zum Laden/Entladen von Zendure Solarflow:
@Murphy-0 Cool, du bist echt ein Held, weiß gar nicht was ich sagen soll, 1000 Dank! So ähnlich habe ich es jetzt schon umgemodelt. Was ich noch nicht so ganz kapiert habe ist, was es mit dem acMode auf sich hat und wann man den auf welchen Wert setzen muß?
acMode
0 = nichts machen
1 = laden
2 = entladenDen brauchst du aber nur wenn du mit setInputLimit und setOutputlLmit arbeitest. Mit setDeviceAutomationInOutLimit ist der nicht notwendig.
-
Genau😁
Ich habe beim Hyper den ACMode dauerhaft auf 0 und stelle nur serAutomationInOut Level weil das für den Hyper schonender ist wegen Flashrom.Wenn möglich bei deiner Hardware mache es auch so.
Als nächstes gehen wir dann dran und setzen deine Hysteres .
Glaub blos nicht dass du so bald fertig bist 😂😂😂 -
Ach noch etwas, falls du es nicht schon hast aktiviere den History Adapter für alle deine verwendeten Objekte aud dem Skript.
So kannst du genau nachverfolgen was über den Tag und über die Nacht gelaufen ist.Sieht dann so oder ähnlich aus und du tappst nicht im Dunklen



-
Genau😁
Ich habe beim Hyper den ACMode dauerhaft auf 0 und stelle nur serAutomationInOut Level weil das für den Hyper schonender ist wegen Flashrom.Wenn möglich bei deiner Hardware mache es auch so.
Als nächstes gehen wir dann dran und setzen deine Hysteres .
Glaub blos nicht dass du so bald fertig bist 😂😂😂@Murphy-0 Das Thema Hysterese hat mich schon angefixt aber ich muss erst mal noch dabei bleiben die Basis vollkommen zu verstehen, dann werde ich dieses Thema aber sicher auch angehen.
Momentan experimentiere ich mit den Grundlagenthemen, wie hier:

So ähnlich stelle ich mir das mit der Grundlasteinspeisung vor um die Entladung anzupassen falls der Hausverbrauch doch mal unter den Wert der Nachtentladung fällt. -
Ach noch etwas, falls du es nicht schon hast aktiviere den History Adapter für alle deine verwendeten Objekte aud dem Skript.
So kannst du genau nachverfolgen was über den Tag und über die Nacht gelaufen ist.Sieht dann so oder ähnlich aus und du tappst nicht im Dunklen



-
@lesiflo Danke, wieder ein wertvoller Tipp! Ich bin einfach noch unerfahren mit der Steuerung von BKW mit Speicher aber so langsam werden mir die Zusammenhänge klarer dank der Unterstützung hier. Manchmal sieht man den Wald vor lauter Bäume nicht.
Ich will die Akku-Entladung tagsüber begrenzen damit ich für die Nacht noch Kapazität für eine kleine Grundlasteinspeisung habe da ich festgestellt habe, dass der SF800Pro sonst in der Nacht offline geht und von selbst nicht mehr online geht.@Berny-K sagte in Script zum Laden/Entladen von Zendure Solarflow:
@lesiflo Danke, wieder ein wertvoller Tipp! Ich bin einfach noch unerfahren mit der Steuerung von BKW mit Speicher aber so langsam werden mir die Zusammenhänge klarer dank der Unterstützung hier. Manchmal sieht man den Wald vor lauter Bäume nicht.
Ich will die Akku-Entladung tagsüber begrenzen damit ich für die Nacht noch Kapazität für eine kleine Grundlasteinspeisung habe da ich festgestellt habe, dass der SF800Pro sonst in der Nacht offline geht und von selbst nicht mehr online geht.Hast du auch so einen Wert?

Auf was steht der?
