NEWS
Test Adapter Zendure SolarFlow 6.0.0 – mit Nulleinspeisung
-
Die Datenpunkte acOnlyPenalty und acChargingAllowed gelten ja laut deiner Beschreibung nur für AC-Only-Geräte. Was ist aber wenn man einen Hyper hat, der genau das auch macht, ohne PV ? Wirken die da dann auch?
-
Die Datenpunkte acOnlyPenalty und acChargingAllowed gelten ja laut deiner Beschreibung nur für AC-Only-Geräte. Was ist aber wenn man einen Hyper hat, der genau das auch macht, ohne PV ? Wirken die da dann auch?
-
Ist jetzt die 6.1.1 geworden. Test also eher morgen, Sonne ist weg.

@lesiflo Da ich gesehen habe das du den Status auch schon verwendest in deiner Visu: Statt reiner Text ist es jetzt doch eine Options-Liste geworden. Syntaktisch eher richtig. Musst du dann halt noch anpassen.
-
Irgendwas passt da noch nicht. Hyper 1 steht, dafür übernehmen die beiden anderen die volle Last. Hyper 1 hat dabei den größten Ladestand. Eventuell ist das mit der Reihenfolge das Problem. So ganz habe ich das noch nicht verstanden wann welches Gerät verwendet wird.

Bei mir wird das so umgesetzt:
1. Vorab-Prüfung: Direkte PV-Nutzung vor Akku-Entnahme
Bevor überhaupt Strom aus den Akkus gezogen wird, prüft das Skript, ob die Geräte gerade eigene PV-Leistung erzeugen:
-
PV-Vorrang: Wenn ein Hyper mehr PV-Leistung liefert als eine definierte Reserve (
pvGrenze), wird diese überschüssige Energie direkt als Hausbedarf ausgegeben. -
Der Vorteil: Dieser Strom fließt direkt ins Haus, ohne den Umweg über die Batterie zu nehmen (vermeidet ca. 20 % Wandlungsverluste).
2. Berechnung des Entlade-Gewichts über den SOC (Kubische Gewichtung)
Für den verbleibenden Leistungsbedarf ermittelt das Skript für jeden der drei Speicher ein individuelles Gewicht:
-
Abstand zum Minimum: Es wird berechnet, wie viel Prozent der Batterie über dem individuell konfigurierten Mindest-SOC (
h.socMin) liegen (h.soc - h.socMin). -
Kubische Potenz (
Math.pow(..., 3)): Dieser Abstand wird hoch 3 genommen.
- Beispiel: Hat Speicher 1 einen Abstand von 40 % und Speicher 2 von 20 %, ist das Gewicht nicht einfach doppelt so hoch, sondern $40^3 / 20^3 = 64000 / 8000 = 8$-mal so hoch.
- Effekt: Speicher mit einem deutlich höheren Füllstand übernehmen fast die gesamte Last. Je näher sich die Speicher im Füllstand annähern, desto gleichmäßiger verteilt sich die Last. Speicher, die bereits auf ihrem Minimum (
h.socMin) stehen, bekommen das Gewicht0und tragen nichts mehr bei.
3. Iterative Verteilung in einer Schleife (Loop)
Da die einzelnen Speicher physikalische und konfigurierte Leistungsgrenzen haben (im Skript auf max. 1200 W pro Gerät begrenzt:
maxE), geschieht die Zuweisung in einer Schleife (bis zu 20 Durchläufe,CONFIG.MAX_LOOP_ROUNDS):-
Pro-rata-Aufteilung: Der noch offene Gesamtbedarf (
verbleibenderBedarf) wird in der Runde im Verhältnis der eben berechneten Gewichte auf die aktiven Speicher aufgeteilt. -
Kappung am Limit: Droht ein Speicher dabei sein Hardware-Limit (
maxE) zu überschreiten, wird er bei seinem Maximum gedeckelt. -
Restmengen-Verteilung: Sollte nach einem Deckelungs-Schritt noch immer Bedarf offen sein (weil ein Speicher voll ausgelastet ist), läuft die Schleife weiter und verteilt den verbleibenden Restbedarf neu auf die verbleibenden Speicher, die noch Reserven haben.
4. Das finale Ergebnis
Am Ende liefert die Funktion ein Array mit den exakten Watt-Vorgaben für die drei Wechselrichter (
werte: [e1, e2, e3]), die im Hauptskript viasetEntlademodusan die Hardware übergeben werden. -
-
@lesiflo Jede volle Stunde wird neu sortiert, Ziel ist es ein Gerät mehr zu belasten um die Effizienz zu erhöhen (und auch nur so viele Geräte zu verwenden wie nötig). Die anderen sollen dazu gezwungen werden den Wechselrichter abzuschalten damit sie auch kein Standby Verbrauch mehr haben. Schau mal bitte was um 19:00 passiert. Ein Gerät das nur AC Laden kann (oder optional aktiviert hat) wird dann mit dem penalty belegt (sprich wenn im default 50% unter dem mit DC)
-
Mittlerweile entladen alle 3 Hyper. Schaltet der 3. Hyper dazu wenn mehr Leistung benötigt wird als 2 liefern können?
-
-
OK, alles klar. Gut zu wissen. Ich hatte vorhin den Fall, das Hyper 3 stand und 1 und 2 liefen. Wichtig ist das am Ende alle 3 gleich entladen werden. Bei meinem Script werden alle 3 Hyper gleich belastet.
-
OK, alles klar. Gut zu wissen. Ich hatte vorhin den Fall, das Hyper 3 stand und 1 und 2 liefen. Wichtig ist das am Ende alle 3 gleich entladen werden. Bei meinem Script werden alle 3 Hyper gleich belastet.
@lesiflo Ich finde es halt unsinnig wenn gerade bei geringen Lasten das ganze aufgeteilt wird. Der Wechselrichter verbrät selber locker 20-30W wenn das Gerät aktiv ist. Wenn du dann nur eine Last von 300W im Haus hast und 3 Geräte jeweils 100W einspeisen kannste also noch mal 90W an Verbrauch oben drauf rechnen.
Nach ca. einer Stunde wird ja durchgerauscht und ein Gerät kann sich dann ausruhen...
-
-
Ok, dann macht deine Lösung natürlich mehr Sinn, war mir so nicht bekannt. So wie das gesehen habe macht das HEMS aber nicht so. Aktuell entlädt bei mir nur ein Hyper.
Wird der führende immer reihum getauscht oder wie wird die Auswahl getroffen? -
Exakt, jede Stunde. Gibt aber einen kleinen Puffer wenn die Differenz nicht so groß ist. Wenn H1 führend bei 80% steht wird erst getauscht wenn er knapp über 8% unter H2 oder H3 liegt. Das würde sonst dazu führen das wirklich jede Stunde getauscht wird.
-
Moin,
kannst du es noch ändern, das man den Wert für suggestedInverseMaxPower selbst anpassen kann oder die Prüfung dafür auf inaktiv setzt. Ich würde das gerne auf meine eigene Verantwortung hin anpassen können. Heute morgen hat der Adapter bei 18% SOC die Leistung dann auf 130 W gedrosselt. Dadurch habe ich diese Nacht 0,5 kWh mehr aus dem Netz bezogen als mit meinem Script. Ist nicht viel aber summiert sich halt.
Ansonsten funktioniert die Nulleinspeisung bei mir bisher sehr gut. -
@lesiflo Es gibt den globalen Schalter 'zendure-solarflow.0.adapterAutomation.ignoreSuggestedInverseMaxPower' was die Prüfung außer Kraft setzt. Dann könntest du mit zendure-solarflow.0...control.inverseMaxPower die gewünschte maximale Leistung vorgeben.
Edit: Du scheinst aber eine recht hohe Grundlast zu haben wenn du deine 3 Hyper über Nacht komplett leer ziehst?
-
Danke hat geklappt.
Edit: Du scheinst aber eine recht hohe Grundlast zu haben wenn du deine 3 Hyper über Nacht komplett leer ziehst? -> Ja, ist die Wärmepumpe !
-
-
Das wäre genau mein Stichwort, daher möchte ich mal kurz eine "dumme" Zwischenfrage stellen, ohne alles in der Tiefe gelesen zu haben.
Ich plane einen SolarFlow 3000 Mix AC+ als Zusatzspeicher zu meinem bisherigen System anzuschaffen. Also einen reinen AC Speicher und ohne extra Smartmeter. Bewusst keine Automatiken, sondern eine rein manuelle (und vor allem rein lokale) Steuerung mit Blockly für Laden/Entladen mit entsprechender Leistung.
Wenn ich hier so mitlese gewinne ich den Eindruck, dass der Adapter für meinen Bedarf scheinbar völlig oversized ist, da er auf jede Menge Automatiken setzt aber wohl mit der einfachste Weg ist, um an die benötigten Datenpunkte zu gelangen. Nur lassen die sich auch rein manuell bedienen?
-
Das wäre genau mein Stichwort, daher möchte ich mal kurz eine "dumme" Zwischenfrage stellen, ohne alles in der Tiefe gelesen zu haben.
Ich plane einen SolarFlow 3000 Mix AC+ als Zusatzspeicher zu meinem bisherigen System anzuschaffen. Also einen reinen AC Speicher und ohne extra Smartmeter. Bewusst keine Automatiken, sondern eine rein manuelle (und vor allem rein lokale) Steuerung mit Blockly für Laden/Entladen mit entsprechender Leistung.
Wenn ich hier so mitlese gewinne ich den Eindruck, dass der Adapter für meinen Bedarf scheinbar völlig oversized ist, da er auf jede Menge Automatiken setzt aber wohl mit der einfachste Weg ist, um an die benötigten Datenpunkte zu gelangen. Nur lassen die sich auch rein manuell bedienen?
@Samson71 Hey, dumme Fragen gibt es nicht

Der Adapter ist für dich nicht oversized, du kannst ihn auch nur zum bequemen auslesen nutzen. Dein Blockly kann einfach den Datenpunkt setDeviceAutomationInOutLimit zum Laden (Minuswert) oder Entladen setzen. Mit einem einfachen Lesekopf (Selbstbau, Zendure D0 oder z.B. Volkszähler) könntest du das ganze aber auch automatisieren und noch effektiver nutzen. Warum möchtest du darauf verzichten?
-
@Samson71 Hey, dumme Fragen gibt es nicht

Der Adapter ist für dich nicht oversized, du kannst ihn auch nur zum bequemen auslesen nutzen. Dein Blockly kann einfach den Datenpunkt setDeviceAutomationInOutLimit zum Laden (Minuswert) oder Entladen setzen. Mit einem einfachen Lesekopf (Selbstbau, Zendure D0 oder z.B. Volkszähler) könntest du das ganze aber auch automatisieren und noch effektiver nutzen. Warum möchtest du darauf verzichten?
@nograx sagte:
Mit einem einfachen Lesekopf (Selbstbau, Zendure D0 oder z.B. Volkszähler) könntest du das ganze aber auch automatisieren und noch effektiver nutzen. Warum möchtest du darauf verzichten?Es gibt bereits 3
und schon jede Menge andere Automationen.
Huawei DTSU666-H, Victron VM-3P75CT und einen Hichi-Lesekopf am StromzählerIch habe einen 12kW Huawei WR (kein Hybrid). Der ist mittlerweile per MQTT und VenusOS in mein Victron System mit DIY-Akkus integriert. Victron ist das führende System und steuert die Batterie-Ladung. Das Konstrukt wiederum ist in EVCC integriert, was sich um das Überschussladen des Autos kümmert. Das läuft bewusst und gewollt praktisch autark an ioBroker vorbei. Es ist aber alles darin voll integriert.
Da ich bisher "nur" DIY-Akkus habe, möchte ich dem System einen "offiziellen" (AC-)Speicher zur Seite stellen, der dann befüllt wird wenn die DIY-Akkus (nahezu) voll sind, damit ab da nicht sofort alles ins Netz für ein paar Cent eingespeist wird, sofern das Auto auch schon voll ist. Diese Entscheidung kann ein AC-Speicher aber nicht alleine in Kombination automatisch mit einem Lesekopf treffen.
Da durch den ganzen Elektro-Zoo im Haus und ein umfangreiches Unifi-System die Grundlast bei gut 500W liegt, soll der Speicher abends ab dem Moment wo kein Solarstrom mehr erzeugt wird dann mit fix 300-400W entladen und damit morgens ab erneuter Solarproduktion wieder aufhören.
-
@nograx sagte:
Mit einem einfachen Lesekopf (Selbstbau, Zendure D0 oder z.B. Volkszähler) könntest du das ganze aber auch automatisieren und noch effektiver nutzen. Warum möchtest du darauf verzichten?Es gibt bereits 3
und schon jede Menge andere Automationen.
Huawei DTSU666-H, Victron VM-3P75CT und einen Hichi-Lesekopf am StromzählerIch habe einen 12kW Huawei WR (kein Hybrid). Der ist mittlerweile per MQTT und VenusOS in mein Victron System mit DIY-Akkus integriert. Victron ist das führende System und steuert die Batterie-Ladung. Das Konstrukt wiederum ist in EVCC integriert, was sich um das Überschussladen des Autos kümmert. Das läuft bewusst und gewollt praktisch autark an ioBroker vorbei. Es ist aber alles darin voll integriert.
Da ich bisher "nur" DIY-Akkus habe, möchte ich dem System einen "offiziellen" (AC-)Speicher zur Seite stellen, der dann befüllt wird wenn die DIY-Akkus (nahezu) voll sind, damit ab da nicht sofort alles ins Netz für ein paar Cent eingespeist wird, sofern das Auto auch schon voll ist. Diese Entscheidung kann ein AC-Speicher aber nicht alleine in Kombination automatisch mit einem Lesekopf treffen.
Da durch den ganzen Elektro-Zoo im Haus und ein umfangreiches Unifi-System die Grundlast bei gut 500W liegt, soll der Speicher abends ab dem Moment wo kein Solarstrom mehr erzeugt wird dann mit fix 300-400W entladen und damit morgens ab erneuter Solarproduktion wieder aufhören.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
