Jump to content

Unterstützung für Batteriespeicher - Betatest


MatzeTF

Recommended Posts

Gute Nachrichten für alle mit Batteriespeicher: In dieser Beta-Firmware ist eine Unterstützung für Batteriespeicher enthalten, mit der zwei der am häufigsten gemeldeten Probleme der Vergangenheit angehören sollten:

  • Wenn morgens genug PV-Leistung zur Verfügung steht, fängt keine Ladung an, sondern es wird erst der Batteriespeicher vollgeladen.
  • Wenn abends die PV-Leistung nicht mehr ausreicht, wird weiter das Auto geladen und dafür die Batterie geleert.

Neu in dieser Version ist:

  • Es kann ausgewählt werden, ob der Speicher oder das Auto bevorzugt geladen werden soll.
  • Abends wird bei nicht ausreichender Leistung abgeschaltet, statt den Batteriespeicher zu leeren. Soll abends trotzdem weiter geladen werden, muss man auf den Schnell-Modus oder Min + PV wechseln. Abgeschaltet wird wie üblich erst nach ein paar Minuten nicht ausreichender PV-Leistung, die mit der Batterie überbrückt werden.

Das Ganze funktioniert mit allen Batteriespeichern, die von der Wallbox ausgelesen werden können, sowie über die üblichen HTTP- und MQTT-APIs.

Auch wenn die aktuelle Wetterlage leider nicht mehr viel PV-Leistung hergibt, freue ich mich auf reges Feedback zu dieser Testversion, sowohl hinsichtlich der reinen Funktionalität, als auch zur Verständlichkeit der Einstellungsmöglichkeiten, die ihr bei den anderen Einstellungen zum PV-Überschussladen findet.

04.10.2024 Update: Unterstützung für Batteriespeicher per Modbus TCP repariert.

warp3_firmware_2_6_1_66ffe3a1_c470a121f17d7e9_merged.bin warp2_firmware_2_6_1_66ffe2ab_6a424d957b00151_merged.bin warp_firmware_2_6_1_66ffe123_6a424d957b00151_merged.bin

Link zu diesem Kommentar
Share on other sites

Wird auf der Zählerseite in der Tabelle (nicht aufgeklappt) ein Leistungswert für den Zähler angezeigt und gibt es für ihn eine Kurve in der Grafik? Der Batteriespeicher verwendet den selben Wert und sollte funktionieren, wenn Wert und Kurve angezeigt werden.

Poste mal einen Debug-Report, damit ich sehen kann, was für Werte der Zähler vom Speicher tatsächlich hat.

Link zu diesem Kommentar
Share on other sites

  • 2 weeks later...

Die Beschreibung der Optionen bei der Energieflussrichtung bezieht sich auf den Leistungswert, der für den Speicher auf der Stromzähler-Unterseite der Wallbox angezeigt wird. Sieh dir einfach den Wert an, wenn am Abend die Sonne weg ist und der Speicher garantiert entladen wird. Ich vermute stark, dass der Wert dann negativ ist und die Energieflussrichtung auf „Normal“ stehen sollte. Falls der Wert beim Entladen doch positiv ist, ist „Invertiert“ richtig.

Link zu diesem Kommentar
Share on other sites

OK,

da bin ich jetzt etwas spät dran, Speicher ist leider schon wieder leer.

Das sind die Werte, die ich auf der Stromzähler-Unterseite beim Wechselrichter (an dem der Speicher hängt) angezeigt bekomme.

Da sehe ich keinen Wert der sich auf den Speicher bezieht. Oder habe ich da noch den falschen Zähler angelegt. Ich muss da nochmal suchen.

image.thumb.png.f3cf42b76a6839c9bec32f03e5ffb4af.png

Link zu diesem Kommentar
Share on other sites

Das sieht nach dem Zähler für die PV-Leistung aus. Der hat dementsprechend nur Einspeisung. Der Zähler für den Batteriespeicher sollte sowohl Einspeisung (Entladen) als auch Bezug (Laden) haben und auch einen Wert für den SOC (Ladestand).

Vielleicht verrät @pene8, wie er den Batteriespeicher in der Wallbox konfiguriert hat.

Link zu diesem Kommentar
Share on other sites

On 10/4/2024 at 3:06 PM, MatzeTF said:

Es gab noch ein Problem bei der Unterstützung von Batteriespeichern, die per Modbus TCP ausgelesen werden. Mit den neuen Firmware-Dateien aus dem ersten Post sollte das jetzt auch funktionieren.

Mit der aktuelleren Version der Firmware kann ich den CerboGX Battery Meter auswählen

Link zu diesem Kommentar
Share on other sites

Bei mir sind die Einstellungen so:

 

image.thumb.png.abed11573b9ebafa26351c3c06352a7d.png

 

Sehe ich im Log was genau das Abschalten verursachtr hat? Die letzte Zeilen im Log sind:

2024-10-15 15:39:32,275 | charge_manager   | Allocating current
2024-10-15 15:39:32,275 | charge_manager   |     Allocated 0 mA @ 0p to warp3-2ayZ (127.0.0.1).
2024-10-15 15:39:33,379 | users            | Charger state changed from 3 to 1

der relevante teil des Debuglog ist angehängt

trace_log_2024-10-15_15-39.txt

Link zu diesem Kommentar
Share on other sites

Hast du die ~ 5 Minuten vor 15:39 noch? Die wären vorallem der interessante Teil.

Im Log steht folgendes:

2024-10-15 15:39:32,273 
Hysteresis 4757
0: raw(5447 13920 13920 13920) min(5408 13920 13920 13920) spread(1547 13920 13920 13920) max_pv 5965
0: [ 0     0@1p;4220Wh]
1: don't have B1
1: 0: alloc_ge_thres 0 min_active 1 rot 0 keep_active 1 can p-switch 1
2: filtered 1 to 0, sorted to | 0 
  Calc Wnd
    0 wnd_min (6000 6000 6000 6000)
    current_avail_for_3p 5447
    0 (1p unknown rot) wnd_max (9060 9060 9060 9060)
  Wnd (6000 6000 6000 6000)->(9060 9060 9060 9060)
3: filtered 1 to 1, sorted to 0 | 
3: wnd_min 6000 <= p1 raw 13920
3: wnd_min 6000 <= p2 raw 13920
3: wnd_min 6000 <= p3 raw 13920
3: wnd_min 6000 > max_pv 5965
3: shut down 0
  Calc Wnd
    current_avail_for_3p 5447
  Wnd (0 0 0 0)->(0 0 0 0)
4: don't have active chargers.
4: filtered 1 to 1, sorted to 0 | 
4: Can activate 0?
    Does not improve spread
    Can't activate: p0 min 5408 < required 18000
4: No
4: 0 retrying 1p
    Does not improve spread
    Can't activate: p0 min 5408 < required 6000
4: No
5: have active chargers.
5: filtered 1 to 0, sorted to | 0 
6: filtered 1 to 0, sorted to | 0 
8: filtered 1 to 0, sorted to | 0 
9: raw(5447 13920 13920 13920) min(5408 13920 13920 13920) spread(1547 13920 13920 13920) max_pv 5965
9: [         0        ]


PM PV m=   28w avl= -228w  -991<< -991< -991< 5965  L1 m= 5536 p= 5441 err=26239 adj=26239 13920<<13920<16000  L2 m=-2818 p=-2801 err=34481 adj=34481 13920<<13920<16000  L3 m=-3051 p=-3040 err=34720 adj=34720 13920<<13920<16000

Das ist der Durchlauf des Verteilungsalgorithmus, der die Wallbox abgeschaltet hat + die erste Stromzählermessung danach.

Kurzes Tutorial im Trace-Log-Lesen: Alles mit PM am Anfang sind die Stromzählerwerte + der Regler, der mit diesen Werten den PV-Überschuss bestimmt. Timestamp + alles mit einer Ziffer am Anfang sind der Verteilungsalgorithmus, die Ziffern sind die 9 Stufen (siehe auch hier: https://docs.warp-charger.com/docs/warp_charger/charge_management_details)

Die Zeile "3: shut down 0" sagt, dass die nullte Wallbox (also die erste in Informatiker-Zählweise) abgeschaltet wurde, darüber steht "3: wnd_min 6000 > max_pv 5965". Das bedeutet, dass, damit die Wallbox aktiv bleiben darf 6000 mA PV-Überschuss verfügbar sein müssten (das ist wnd_min, also das Minimum des Verteilungsfensters), es standen aber nur maximal 5965 mA in den letzten 4 Minuten zur Verfügung.

Zusammengefasst: Der PV-Überschuss war vier Minuten lang unter dem notwendigen Minimum um die Wallbox aktiv zu halten, also wird abgeschaltet.

Link zu diesem Kommentar
Share on other sites

Am 15.10.2024 um 16:11 schrieb rtrbt:

Die Zeile "3: shut down 0" sagt, dass die nullte Wallbox (also die erste in Informatiker-Zählweise) abgeschaltet wurde, darüber steht "3: wnd_min 6000 > max_pv 5965". Das bedeutet, dass, damit die Wallbox aktiv bleiben darf 6000 mA PV-Überschuss verfügbar sein müssten (das ist wnd_min, also das Minimum des Verteilungsfensters), es standen aber nur maximal 5965 mA in den letzten 4 Minuten zur Verfügung.

Zusammengefasst: Der PV-Überschuss war vier Minuten lang unter dem notwendigen Minimum um die Wallbox aktiv zu halten, also wird abgeschaltet.

das heißt,  es wurde von der Wallbox geschalten und nicht von einer, von mir aus der Hausautomatisation übriggebliebenen Schaltung?

Also funktioniert eure Firmware genauso wie erwartet :)

 

trace_log_2024-10-15_15-33.txt

Link zu diesem Kommentar
Share on other sites

Ja, sieht so aus. 👍

Kannst du mal einen Debug-Report posten? Damit meine ich nicht das Trace-Log, sondern das Ding, das man unter dem Menüpunkt „Ereignis-Log“ runterladen kann. Ich würde gerne deine Einstellungen für den Batteriespeicher auf der Stromzähler-Unterseite sehen und in einem Trace-Log sind keine Einstellungen drin.

Link zu diesem Kommentar
Share on other sites

Die gute Nachricht ist, dass die Abschaltung funktioniert, wie sie soll. Man sieht sowohl im nicht gekürzten Trace-Log als auch im Debug-Report, dass die zur Verfügung stehende Leistung vor dem Abschalten immer weniger wurde. Zwischenzeitlich war sie schon mal kurz auf Minimum, hat sich dann aber noch etwas erholt, bis sie dann zu lange unter dem Minimum lag und abgeschaltet wurde.

Die Frage ist eher, wieso das bei überhaupt funktioniert, da du den Batteriespeicher falsch eingerichtet hast: nämlich gar nicht. Du hast das Fronius Smart Meter am Netzanschluss als Zähler eingetragen und verwendest das sowohl für den Netzbezug, als auch für die Speicherleistung, was nicht richtig ist. Der Stromzähler für den Batteriespeicher muss die Lade- und Entladeleistung der Batterie messen können. Da kann man nicht einfach stattdessen den Netzbezug reinstecken.

Wenn ich das richtig sehe, führt die falsche Zählereinstellung bei dir dazu, dass immer der doppelte Netzbezug gemessen wird. Eigentlich wird die Leistung des Batteriespeichers vom Netzbezug abgezogen, aber da du den Batteriespeicher auf „Invertiert“ gestellt hast, wird „Netz - (-Batterie)“ gerechnet. Durch den doppelt so großen Wert wird jetzt einfach das Ausschaltkriterium sicher erreicht, was vorher nur mit dem Netzbezugszähler nicht funktioniert hat. Auch wenn jetzt abgeschaltet wird, hast du jetzt weder gutes PV-Überschussladen, noch eine korrekte Speicherunterstützung.

Die Frage wäre, ob man an die Batterieleistung deines Speichers drankommt, um sie korrekt zu verarbeiten. Kannst du mal einen SunSpec-Scan gegen deinen Wechselrichter laufen lassen und das Log hier anhängen? Wahrscheinlich ist es dafür am besten, den WR aus der Zählerliste zu löschen, dann einmal neustarten und erst dann den Scan laufen lassen. Teilweise stehen sich der Scan und die Abfragen von einem bereits laufenden Zähler gegenseitig auf den Füßen.

Link zu diesem Kommentar
Share on other sites

der Speicher, der Zähler und der Wechselrichter sind über dfie gleiche TCP Adresse zu erreichen. Sowohl als API (nur lesend) als auch über modbus-TCP.

Die sunspec Werte findet man auf der Fromius Seite unter

https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://www.fronius.com/~/downloads/Solar%20Energy/Operating%20Instructions/42,0410,2649.pdf&ved=2ahUKEwiqnuuh15CJAxWhg_0HHTO-KQ0QFnoECAkQAQ&usg=AOvVaw0UFQllVXPhTjIPspg06PKj

bzw alle register:

http://www.fronius.com/QR-link/0024

und hier endet auch schon mein "ich kenn mich aus" :)

Ich sehe über die TCP-API  folgende Storage Werte:

Storage_0_Controller_Capacity_Maximum
Storage_0_Controller_Current_DC
Storage_0_Controller_DesignedCapacity
Storage_0_Controller_Details_Manufacturer
Storage_0_Controller_Details_Model
Storage_0_Controller_Details_Serial
Storage_0_Controller_Enable
Storage_0_Controller_StateOfCharge_Relative
Storage_0_Controller_Status_BatteryCell
Storage_0_Controller_Temperature_Cell
Storage_0_Controller_TimeStamp
Storage_0_Controller_Voltage_DC

und folgende Power Fow Werte:

PowerFlow_Inverters_1_Battery_Mode
PowerFlow_Inverters_1_E_Total
PowerFlow_Inverters_1_P
PowerFlow_Inverters_1_SOC
PowerFlow_Site_BackupMode
PowerFlow_Site_BatteryStandby
PowerFlow_Site_E_Total
PowerFlow_Site_Meter_Location
PowerFlow_Site_Mode
PowerFlow_Site_P_Akku
PowerFlow_Site_P_Grid
PowerFlow_Site_P_Load
PowerFlow_Site_P_PV
PowerFlow_Site_rel_Autonomy
PowerFlow_Site_rel_SelfConsumption

wobei diese drei

PowerFlow_Site_P_Akku
PowerFlow_Site_P_Grid
PowerFlow_Site_P_Load

die relevanetn sind
PowerFlow_Site_P_Akku -> Watt, in btw aus der Batterie,
PowerFlow_Site_P_Grid  -> Watt, Bezug bzw Einspeisung ins Netz
PowerFlow_Site_P_Load -> Watt, aktueller Verbrauch.

Diese Werte sollten auch über modbus-TCP verfügbar sein (siehe 2. Link)

 

 

bearbeitet von pene8
Link zu diesem Kommentar
Share on other sites

Lasse bitte die Wallbox einen SunSpec-Scan durchführen und hänge das Log hier an, damit wir sehen können, was davon über SunSpec auslesbar ist und ob wir ggf. noch eine manuelle Unterstützung für den Batterie-Teil nachlegen müssen. Bitte vor dem Scan das Smart Meter entfernen und neustarten.

Edit: @Steff49 Mit einem SunSpec-Scan meine ich, dass du auf der „Stromzähler“-Unterseite einen neuen Zähler vom Typ SunSpec auswählen und dort auf „Suche starten“ klicken solltst. Anschließend das Log abspeichern und hier anhängen.

Link zu diesem Kommentar
Share on other sites

Fronius meldet die Speicherwerte nicht direkt über SunSpec, sondern missbraucht dafür MPP Tracker 3 und 4 im SunSpec Modell 160.

Für den Moment hier erstmal eine Firmware mit Support für den Fronius GEN24 Plus Speicher. Das ist absolut ungetestet. Im schlimmsten Fall funktioniert es einfach nicht.

Vor dem Update die Batteriespeicher-Option auf "Kein Batteriespeicher" stellen und speichern, soll ich von MatzeTF ausrichten. Danach dann den neuen Zähler einrichten und auswählen.

Für den neuen Zähler als Klasse Modbus/TCP wählen, Anzeigename und Host eintragen, Port auf 502 belassen, als Registertabelle Fronius GEN24 Plus Hybrid-Wechselrichter wählen, als Vir­tu­eller Zähler Speicher wählen und Geräte­adresse auf 1 belassen. Dann Hinzufügen, Speichern und Neustarten klicken. Im besten Fall funktioniert das einfach so und die Messwerte für den Speicher werden angezeigt.

warp3_firmware_2_6_1_670eb457_d3fc8b00f4a19f3_feature-fronius-gen24-battery_merged.bin

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...