NEWS
DIY Batteriespeicher mit Sungrow
-
Ich helfe gerade einem Freund seine DIY Batterie dem SH10RT zu verkaufen.
Der Post von @Foxy99 war da schon recht hilfreich. Außerdem habe ich auch noch einen BYD emulator auf github gefunden:
https://github.com/SunshadeCorp/can-service
konkrete infos zu den CAN Nachrichten hier:
https://github.com/SunshadeCorp/can-service/blob/master/display.json@twiker Damit hab ich die Tabelle erweitern können:
Die Implementierung via CAN ist noch ausständig, gerne berichte ich dann.
-
@blab1 Vielen Dank.
Ich sehe mir das Ganze die nächste Woche mal an. Ich muss noch ein Kabel zum Wechselrichter legen und die Solarpanels anschliessen. Sobald ich das habe werde ich mal die CAN-Nachrichten mit 0 Amp an den Wechselrichter schicken und sehen, was dann passiert....
Wenn ich bei der Implementierung des CAN-Interafces helfen kann -> Nachricht.
Ich werde wohl erstmal einen Olimexino-STM32 verwenden. Der kann mit maple oder Arduino programmiert werden und hat einen CAN-Tranciever drauf. -
super, dass immer mehr Leute sich an "Hochvolt-Batterien" trauen. Da mache ich gerne mit bzw. bringe meine Erfahrungen ein.
Ich habe mir auch grade einen Speicher aus eAuto Batterien und dem REC BMS passend zu dem Sungrow SH10RT gebaut und mich deshalb damit beschäftigt. (LGChem 40kWh Li-MNC aus dem Daimler EQC).
Sehr wahrscheinlich sucht ihr erst einmal dieses Protocol:
https://onlineshop.gcsolar.co.za/wp-content/uploads/2021/07/CAN-Bus-Protocol-Sermatec-high-voltage-V1.1810kW.pdfEs ist das CAN Hochvoltbatterien Protokoll, dass auch die Pylontech Hochvolt Batterien (SC1000 und SC0500) implementiert haben und der Sungrow SHxxRT versteht.
Ich persönlich finde es etwas sicherheitskritisch das BMS über den iobroker mit den Sungrow Wechselrichter zu verbinden. Hoffentlich hat Euer BMS auch Sicherheitsmechanismen und hoffentlich einen Schütz, der bei Überladung öffnet.... Ich bin ein Riesen IOBroker-Fan, aber denke iobroker ist nicht das richtige für sicherheitsrelevante Steuerungen! Man kommt ja auch nicht auf die Idee die Einspritzpumpe eines Ölbrenners mit IOBroker zu steuern.
Für mich muss ein BMS direkt via CAN mit dem Wechselrichter sprechen. Ohne eine IP Strecke dazwischen. Alles muss mit max 200ms reagieren. IP Netze können ausfallen. Ein brennende Batterie will keiner.
Leider gibt es im Moment kein BMS für DIY Batterien das Out-Of-The-Box das Hochvolt-CAN Protokoll unterstützt. Man könnte es mit dem Orion BMS2 konfigurieren, dass in vielen Autos und im Sonderfahrzeugbau verwendet wird. (https://evshop.eu/en/bms/275-180-kit-standard-orion-2-bms.html) Das hat aber nur 250mA Regeleingriff.
Das beste BMS für solche Konfigurationen ist meiner Meinung nach das REC-Master Slave https://www.rec-bms.com/wp-content/uploads/2021/04/UserManual_REC_MS.pdf das auch für 1000V zugelassen ist und 1 A Regel-Eingriff hat. Damit halten LiFePO oder LiMNC Batterien 30 Jahre wenn man sie nicht zu sehr stresst.
Leider mann man den CAN Master Controller von REC nicht selbst programmieren. Ich habe deshalb mit den Entwicklungsleiter von REC Kontakt aufgenommen und ihm angeboten auf meiner Sungrow-REC Konfiguration zu testen. Er will in den nächsten Wochen die Firmware entsprechend schreiben. Es ist der gleiche der auch die 48V Version des CAN Protocols geschrieben hat. Deshalb bin ich zuversichtlich.
Natürlich kann man das REC und den Sungrow nachher wieder zum monitoren in iobroker bringen. Bei mir wird das auch passieren und der iobroker wird den Tesla Ladestrom steuern und einen Solar-Heizstab einschalten, wenn PV Leistung übrig ist usw. Aber das ist alles außerhalb des sicherheitskritischen Wechselrichter-BMS Kreises.
Sobald das BMS richtig mit dem Wechselrichter läuft, hat man eine reliable connection die auch auf alle Ausnahmesituationen getestet ist. Falls man das im iobroker abbildet, denkt bitte unbedingt daran diese Emergency Situationen zu testen:
- BMS sagt SOC 100%, Wechselrichter (kaputt) lädt trotzdem weiter, was passiert?
- BMS sagt SOC <5%, Wechselrichter (kaputt) entlädt trotzdem weiter, was passiert?
- Temperatur in der Batterie ist zu hoch, Wechselrichter muss aus gehen ---> bei mir geht das sofort der Schütz zur Batterie auf und mein Handy klingelt.
- BMS sagt ok, aber findet Wechselrichter nicht --> Alarm - defekten Wechselrichter checken. Möglicherweise Blitzschlag.
- Sungrow ok, aber BMS tod --> defektes BMS checken.
- CAN Kabel wird unterbrochen (controller können kaputt gehen) Anlage muss stehen bleiben.
- BMS wünscht sich einen kleineren Ladestrom - Sungrow muss reagieren, wenn nicht, Schütz auf! Achtung, die Wechselrichter machen einfach weiter, wenn sie nicht gestoppt werden. Das ist #1 Grund für Solar-Batterie-Brände.
- Was ist mit den ganzen Grid-On/Off Szenarien? Nicht nur das BMS sondern auch der ganze iobroker muss dann auf der USV sein, oder sicher wieder hoch starten.
- Darkstart - also das Szenario wenn bei einem Stromausfall die Batterie komplett leer ist, das System runter fährt, und dann am nächsten Tag wieder Sonne kommt. Wie startet das alles wieder hoch?
Man sieht da ist eine Menge zu tun, bzw. wurde von REC schon für 48V getan. Das wird dann auch alles wieder für Hochvolt gehen.
Ich werde berichten wie mein Projekt weitergeht.
Grüße
StefanPS: Ich hoffe alle hier, kennen sich mit Hochvolt-Batterien aus und schalten nicht einfach 5 mal 48V Batterien in Serie. Die Batterie muss als Hochvoltbatterie gebaut sein und 1000V Spannungsfest zu ihrem geerdeten Gehäuse sein.... usw.
Wenn alles läuft poste ich eine komplette Bauanleitung mit den wichtigsten Sicherheitstipps. -
Servus,
coole Sache mit dem Pylontech und dem Sungrow Hybrid.
Wir sind auch gerade an einem Setup für eine DIY Batterie in Verbindung mit einem SMA Sunnytripower Smart Energy 10.0.
Aktuell arbeiten wir an der Dekodierung der CAN - Nachrichten.... aber der SMA WR CAN Bus macht mich total kirre..... Leider hat dieser eine komplett andere BMS Datenbasis ect. integriert.
Leider ähneln sich die Pylontech und ein original Goodwe (BMS - CAN - Bus) Dokument und auch die Exceltabelle sowas von gar nicht mit dem SMA WR ;(Aktuell läuft "noch" eine BYD HVS 5.1 dran.... soll dann aber (nach erfolgreicher) Decodierung durch was Selbstgebautes ersetzt werden.
Wenn jemand Lust und Zeit hat zu unterstützen, dann schaut gerne bei meinem Thread bei secondlifestorage vorbei.
Beste Grüße
Michael -
@stefanried kleines Update:
Das REC BMS rennt jetzt bei mir mit einer Beta version von REC.
Es gibt noch eine kleine Macke, aber grundsätzlich ist das System schon mal seit Tagen sehr stabil.2x10kWh Batterie-Module aus dem Daimler EQC
1xSungrow SH10RT
1x REC Master BMS
3x REC Slave BMSIch melde mich wieder wenn es fertig ist.
Dann freue ich mich auf die iobroker Anbindung. Herzlichen Dank schon mal an alle die sich mit den Holding-Registern auseinander gesetzt haben. -
@stefanried Von REC gibt es jetzt eine fertige Firmware, die bei mir stabil mit Hochvolt-Wechselrichtern läuft. REC BMS Hardware ist zwar nicht ganz billig, aber es ist in meinen Augen das beste BMS um aus Elektro-Auto Batterien einen professionellen Stationärspeicher zu machen, der zuverlässig direkt mit dem Wechselrichter spricht. Bitte beim Händler nach der wirklich aktuellen Firmware fragen (version von heute!).
https://www.rec-bms.com/where-to-buy/
Ich hoffe ich komme über Weihnachten dazu ein youtube über das Projekt zu drehen....
-
@stefanried
Danke für deine Überlegungen. Sich hier auszutauschen ist sehr wertvoll - auch Danke für deine Pläne zur Bauanleitung. Bitte halte uns am Laufenden!Wir haben die Konstruktionsphilosophie das die Batterie immer "eigensicher" sein muss und die Kommunikation zum WR nur nebensächlich.
Dazu verwenden wir ein chinesisches BMS von Ali ("Ghost-BMS") mit Abschaltrelais. Obwohl es ein china-bastelsystem ist wirkt es sehr qualitativ und durchdacht gebaut. Es sollte natürlich niemals so weit kommen das es auslösen muss aber damit sind die meisten Fehlerfälle schon mal abgesichert.
Die CAN Kommunikation erledigt ein Arduino mit Strom/Spannungsmessmodul unabhängig vom BMS mit der Möglichkeit das Hauptrelais zu schalten. Dazu noch eine entsprechende Hochvolt DC Schmelzsicherung für alle Fälle.
Konkret für deine Fehlerfälle:
- 1: Overcharge: BMS oder Arduino schaltet relais
- 2: Undercharge: BMS oder Arduino schaltet relais
- 3: Overtemp: BMS schaltet relais
- 4: WR-Fehler: Wird vom Arduino erkannt wenn keine CAN Nachrichten kommen - Alarm + Relais aus
- 5: BMS-Fehler: fehlt noch, siehe unten
- 6: selbes Szenario wie bei 4,
- 7: Bei Gesamtsystemüberspannung: Relais auf, Alarm und BMS überprüfen. Bei unbalancing muss das BMS abschalten.
- 8: Das System wird mit extra Stützbatterie aus der HV-Batterie gespeist und ist nie galvanisch mit dem Netz verbunden. (dazu später mehr)
- 9: Damit kann der WR umgehen, selbst ohne Batterie IIRC.
Der einzige Fall der damit nicht abgedeckt ist wäre ein Fehlverhalten des BMS in Kombination mit extremen unbalacing. (Also Gesamtspannung normal aber einzelne Zellen werden überladen UND das BMS lässt das wegen einem Defekt zu) - vermutlich werden wir extra die Zellenspannungen vom BMS auslesen, sollte jedoch die Zellenmessung defekt sein und trotzdem plausible Werte messen versagt das Konzept.
Man darf nicht vergessen das die Batteriespannung generell unabhängig von der Netzspannung ist(galvanisch getrennt) Sollte nun zB eine Zellenspannung irgendwie eine Verbindung zur Erde haben sieht der WR am Batterieeingang eine negative Spannung! x.x
@StefanRied Weißt du wie das bei gängigen Batteriesystemen gelöst ist? Batterieminus auf Erde oder galavanisch getrennt? Bei dem geeerdetem Gehäuse kann nämlich im Fehlerfall wieder genau die Situation eintreten das am WR-Eingang eine negative Spannung anliegt...
-
@blab1
Hallo,ich wollte nur mal kurz einen Update geben. Das REC BMS läuft seit zwei Monaten stabil mit dem Sungrow Wechselrichter. Als Batterien kann man praktisch alles aus den aktuellen Elektro-Autos dran hängen, was man beim Großhändler kaufen kann.
https://www.power-and-storage.de/ oder https://evshop.eu/Wenn man seine Anlage im www.marktstammdatenregister.de oder beim lokalen Netzbetreiber eingetragen hat, liefert beispielsweise Power-And-Storage das BMS und die Batterie-Module von Autos auch noch ohne UST/MwSt. !
Der Sungrow hängt bei mir wie bei vielen mit dem TCP/IP Modbus am iobroker: https://forum.iobroker.net/topic/38441/sungrow-wr-sgh10rt-erfolgreich-mit-modbus-eingebunden/2
Das REC-BMS selber hängt noch nicht direct am iobroker.
Da das BMS alle wichtigen Daten an den WR über den CAN Bus weitergibt, brauche ich allerdings auch gar nicht direkt da drauf. Wenn ich mal Zeit habe mache ich es trotzdem um die einzelspannungen aus dem REC-BMS via iobroker in Influx zu schreiben....Wünsche einen sonnigen Tag
-
Hallo @stefanried,
gibt es was Neues zu dem von dir angesprochenen Youtube-Video?
-
@mike200088
Hast du den Thread bei Secondlifestorage gelöscht? Kannst du sonst nochmal den aktuellen Link posten, ich finde ihn dort nicht.Für alle anderen: gibt es Neuigkeiten zum BYD-Protokoll?
Ich habe inzwischen gesehen, dass der "unwichtige Zähler" (zumindest bei Sungrow) der aktuelle Unix Timestamp ist und dass das 3. Wort in der 91er Nachricht vom Inverter dessen Innentemperatur ist.Leider fehlt mir die Bedeutung der anderen, fixen Werte: welche Alarm-Bits gibt es?
Und was steckt noch in den Initialisierungsbytes?
Bei 250 können die ersten beiden (03 16) eine Versionsnummer sein?
Es scheint aber auch irgendwo die Kapazität von 5,1kWh codiert zu sein, denn diese zeigt mein Sungrow jetzt an... -
@stefanried
Hallo, danke für deinen Beitrag. Ich habe jetzt auch mit RECBMS und Sungrow eine Anlage aufgebaut, ähnlich wie bei dir habe ich 170V die im Isolarcloud Portal angezeigt werden wie auch ein SOC Stand. Leider beginnt der Sungrow bei mir die Batterie nicht zu laden oder entladen. Hast du hier einen Tipp? Das System ist mit 3Stk. REC-Slaves + 1Stk. REC-Master mit der aktuellen Sungrow Software.danke für deinen Ratschlag
lg -
@stefanried Hi stefan, wäre es möglich, dass du die Sungrow Firmwareversionen hier preisgibts, mit denen das RECBMS zum laufen kommt. Bei mir werden zwar Daten von REC übertragen und im Portal angezeigt, aber die Batterie wird nicht als Gerät angezeigt und es funkt nicht ... danke!
lg