Victron DIY-Guide Teil 3 – Ein oder mehr BMS mit Venus OS verheiraten
Hierzu gab es im Blog bereits mehrfach Anleitungen und in der Zwischenzeit auch zahlreiche Rückfragen, die ich hoffentlich mit nachfolgendem Video adressieren kann. Denn es hat sich in der Zwischenzeit einiges getan, was die Einrichtung einfacher und flexibler gemacht hat.
Zusätzlich gibt es am Anfang noch ein kurzes Update zur noch ausstehenden Möglichkeit das Venus-OS-Device mit einer unterbrechungsfreien Stromversorgung ausstatten zu können. Denn mit der richtigen Powerbank funktioniert das Ganze direkt ohne jegliche Probleme. Aber seht selbst…
Links aus dem Video
1:13
Shanqiu USV Mini UPS (Affiliate-Link)
4:01
USB Tester Messgerät 4-30V (Affiliate-Link)
5:05
JBD AP21S002 21S 200A UART&RS485
Operation Hausspeicher – Stückliste und Bezugsquellen immer aktuelle Links
5:47
LogiLink USB 2.0 Hub (10-Port) (Affiliate-Link)
7:01
Github / Louisvdw / dbus-serialbattery
7:42
lsusb
8:19
dbus-spy
8:44
wget https://raw.githubusercontent.com/Louisvdw/dbus-serialbattery/master/etc/dbus-serialbattery/install.sh
8:56
sh install.sh
9:36
nano /data/etc/dbus-serialbattery/config.default.ini
10:08
nano /data/etc/dbus-serialbattery/config.ini
11.27
FLOAT_CELL_VOLTAGE = 3.4
BMS_TYPE = LltJbd
SOC_LOW_WARNING = 0
SOC_LOW_ALARM = 0
UPDATE VOM 14.05.2024: Mitterweile sieht meine config.ini so aus:
MAX_BATTERY_CHARGE_CURRENT = 100
MAX_BATTERY_DISCHARGE_CURRENT = 100
; LOGGING = ERROR
MIN_CELL_VOLTAGE = 2.90
MAX_CELL_VOLTAGE = 3.50
FLOAT_CELL_VOLTAGE = 3.45
BMS_TYPE = LltJbd
SOC_LOW_WARNING = 0
SOC_LOW_ALARM = 0
LINEAR_LIMITATION_ENABLE = True ;False = Step Mode, True = lineare Grenzwerte
CCCM_CV_ENABLE = True ;Leistungsreduzierung auf Basis von Zellspannungen
CELL_VOLTAGES_WHILE_CHARGING = 3.65, 3.50, 3.45, 3.40, 3.30
MAX_CHARGE_CURRENT_CV_FRACTION = 0, 0.1, 0.5, 1, 1
CELL_VOLTAGES_WHILE_DISCHARGING = 2.80, 3.00, 3.10
MAX_DISCHARGE_CURRENT_CV_FRACTION = 0, 0.1, 1
CCCM_T_ENABLE = True ;Leistungsreduzierung auf Basis von Temperaturwerten
TEMPERATURE_LIMITS_WHILE_CHARGING = 0, 2, 5, 10, 15, 20, 45, 55
MAX_CHARGE_CURRENT_T_FRACTION = 0, 0.1, 0.2, 0.4, 0.8, 1, 1, 0
TEMPERATURE_LIMITS_WHILE_DISCHARGING = -20, 0, 5, 10, 15, 45, 55
MAX_DISCHARGE_CURRENT_T_FRACTION = 0, 0.2, 0.3, 0.4, 1, 1, 0
DCCM_SOC_ENABLE = False
UPDATE ENDE
13:49
reboot
15:13
dbus-spy
15:43
nano /data/etc/dbus-serialbattery/config.ini
15:57
CUSTOM_BATTERY_NAMES = /dev/ttyUSB0:Hallbude 6,/dev/ttyUSB1:Hallbude 5,/dev/ttyUSB2:Hallbude 4,/dev/ttyUSB3:Hallbude 1,/dev/ttyUSB4:Hallbude 2,/dev/ttyUSB5:Hallbude 3
16:42
reboot
19:40
Github / pulquero / BatteryAggregator
39 Kommentare
Wer kann mir sagen, wie ich ohne Cloud jedes inzelne Solarmodul einzeln auf meinem Computer anzeigen kann. Denn ich möchte nachträglich meine Solarmodule so ausrichten, um die größte möglichste Menge Solarenergie zu bekommen.
Microwechselrichter, Bluetooth, WLAN möchte ich nicht einsetzen.
Ohne SolarEdge (pro Panel ein Optimierer) oder Microwechselrichter kann das rein technisch gesehen nix werden…
Hallo zusammen,
kennt jemand die Modbus Adressen für den Battery Aggregator (pulquero).
Bei mir die ID 1024 angezeigt. Ich möchte die Kapazität auslesen, kenne jedoch die Adressen nicht.
Danke im Voraus.
VG
MartinT
Sowas ähnliches habe ich auch. Venus OS bindet Battery Aggragator mit der ID 1024 ein. Loxone lässt aber in Modbus eine solch hohe Adresse nicht zu.
Was machen wir denn da?
Reiner
Hallo,
hatte ebenfalls das Problem das BatteryAggregator immer mit ID: 1024 läuft und die höchste Modbusadresse in Loxone 255 ist.
Wenn man per SSH eine Verbindung zum Venus OS aufbaut kann man die ID in der Datei „/data/BatteryAggregator/battery_service.py“unter foglendem Eintrag „DEVICE_INSTANCE_ID = XX“ anpassen.
1. Datei öffnen
nano /data/BatteryAggregator/battery_service.py
2. Eintrag auf gewünschte ID abändern und mit STRG + X speichern.
Nach einem Neustart wird die ID übernommen.
LG
Thomas
Jup, so habe ich die ID ebenfalls geändert – glaube um einen Wert um die 200… Funktioniert 1a.
Eine weitere Frage, die sich mir gerade stellt.
Folgende Angaben:
MAX_BATTERY_DISCHARGE_CURRENT zB 90A
Ist das Absolut zu verstehen? Oder pro Batterie-Pack?
Also wäre in letzterem Fall zB 90A für ein 100A-JBD-BMS mit 10A Sicherheitspuffer die richtige Einstellung?
Das Gleiche gilt dann für CHARGE_CURRENT?
Reiner
Hallo Jörg,
vielen Dank für deine Video-Reihe. Habe damit weitestegehend das System aufgebaut. Jetzt habe ich eine Frage. Ich habe das Serialbattery System installiert und konfiguriert. Jetzt habe ich aber das Problem, dass der max charge current nicht eingehalten wird.
Zu meinem System, ich habe zwei MPPts it 12kWp. –> diese bringen schnell über 100A Ladestrom. –> Hier müssen dann die drei MP2 den überflüssigen Strom ins Netz schieben. (Selbst wenn ich in Serialbatteries den Ladestrom auf 60A reduziere wird dieser nicht eingehalten)
Jetzt habe ich verschiedenes ausprobiert und festgestellt, dass solange das System hochfährt, die Leistung auch entsprechend reguliert wird. Sobald das System jedoch komplett hochgefahren ist und Ext. control da steht, wird der Ladestrom automatisch überschrieben. Lösche ich die DC Einspeisung funktioniert auch die Regelung wieder.
Kann ich irgendwie beides haben? Dass der MP2 den überflüssgen Strom einspeißt? Wie funktioniert das bei dir?
Vielen Dank vorab.
Gruß, Pascale
Hallo Pascal,
Ich weiß nicht, ob die Antwort schon zu spät ist. Sobald du die Einspeisung einschaltest, lässt sich der Strom nicht mehr begrenzen. Der Jörg nutzt keine MPPT und hat das Problem somit nicht. Das ganze ärgert mich auch. Ich habe das Problem „gelöst“, in dem ich einfach ein weiteres Akku Pack gebaut habe. Somit teilt sich der Strom auf beide Packs auf.
Du könntest dir über Note Red oder über Blockly Skripte schreiben, mit denen du das ganze regelst. Über Mode 3. damit habe ich mich aber auch nicht beschäftigt.
Viele Grüße
Martin
Hallo Jörg,
ich hatte auch ziemlich Probleme mit dem „AggregateBatteries“. Die Frage für mich ist, wie deinstalliere ich das ganze wieder. Oder kann das neben dem „Battery Aggregator“ einfach mitlaufen?
Gruß Frank
Wenn du nach meiner „alten“ Anleitung hier vorgegangen bist, öffne einfach die rc-local-Datei:
nano /data/rc.local
Und ändere den vorhandenen Eintrag
ln -s /data/dbus-aggregate-batteries/service /service/dbus-aggregate-batteries
um in
#ln -s /data/dbus-aggregate-batteries/service /service/dbus-aggregate-batteries
Also einfach eine Raute davor packen.
Dann mit STRG + O (Speichern) und STRG + X (Schließen)
Dann noch ein
reboot
und der Dienst sollte nicht mehr automatisch laufen… Die vorhandenen Programm-Dateien könnte man auch noch löschen, aber die tun ja nicht weh. Und so kannst du durch die Entfernung der Raute den Dienst auch einfach wieder starten, sofern das notwendig werden sollte. (insb. bei Tests gut)
Viele Grüße
Jörg
Perfekt, Danke dir!
Hallo Jörg, erstmal vielen Dank für deine Videos und Erklärungen. Ohne diese wäre ich verzweifelt. Jetzt habe ich alles soweit hinbekommen bis auf eine optische Sache die mich ein wenig stört. Ich habe 2 Batteriepcks mit 2 BMS. Habe den Aggregator, jedoch wird mir am Monitor (auf der bildlichen Darstellung) nur eine Batterie angezeigt. Im Menü selbst, sehe ich die Batterien einzeln und als Aggregator zusammengefasst. Kann ich auch eine Zusammenfassung in der bildlichen Darstellung haben? Hoffe du verstehst was ich damit meine.
Vielen Dank schon mal.
Gruß
Peter
Easy. Du musst Aggregate Batteries sowohl im Menü unter Einstellungen -> DVCC -> Steuerndes BMS als auch unter Einstellungen -> System Setup -> Batteriewächter auswählen. Erst mit der zweiten Einstellung stimmt auch der Leistungswert in der Visualisierung.
Hatte ich auch in einem der nachfolgenden Videos kurz erwähnt – weil ich es selbst erst nicht wusste…
Viele Grüße und Erfolg
Jörg
Besten Dank…mach weiter so…
Hallo Jörg,
ich habe gestern versucht die Namen in Serial Battery zu ändern dabei ist mir das Programm in Venus OS verschwunden. Folge war mehrere Stunden Suche und versuchte die BMS (JK) wieder sichtbar zu machen. Nach einer Deinstallation von Serial Battery und neu- Installation funktioniert wieder alles. Jetzt meine Frage die mich nicht in ruhe lässt: Die MPs (3Phasen) sind die ganze Zeit gelaufen und haben schön auf
0 Watt ausgeglichen, es wurde auch bis wie eingestellt die Batterie beladen, wie konnte das gehen- über mehrere Stunden, wo sie doch keine Informationen vom BMS erhalten haben, woher wussten die MP wie sie sich verhalten sollte. Greift da die Grundeinstellung die man mit VE config an den MP Grundeinstellt? Redundant sozusagen?
Sg Gerald
Hallo, ich habe ein Problem mit einem der zwei JKBMs’s- eins wird nicht mehr dauerhaft gefunden es ist nur sporadisch sichtbar für eine Sekunde.
Hast du eventuell eine Tipp für mich? Bis vor kurzem lief es Stabil, habe heute versucht die Config.ini mit besseren werten zu versorgen, seither habe ich diese verhalten…(Stecker sind es nicht) Kann ich den Battery Aggregator auch mit einem laufen Lassen?
Sg Geri
Ja dann tippe ich spontan darauf, dass du deine Settings „kaputtgespielt“ hast. Ist mir auch schon passiert. Mit JK kenne ich mich im Details aber auch nicht aus.
Würde alles auf Start zurücksetzen und dann laaangsam der Reihe nach eine Einstellung nach der anderen anpassen – und dazwischen immer testen, ob es noch stabil läuft.
Battery Aggregator läuft auch mit nur einem BMS, aber dann ist dessen Sinn davon nicht mehr wirklich gegeben…
Viele Grüße und Erfolg
Jörg
Moin Geri,
hast du schon eine Lösung gefunden? ich habe vermutlich das gleiche Problem. Bei mir wird immer nur ein BMS erkannt. Ich habe zwei JK BMSs mit je einem USB-RS485. Das BMS bei dem ich den USB Konverter zuerst einstecke wird im Venus OS erkannt. Der andere bleibt tot.
Habe es erst an meinem Cerbo und jetzt nochmal an einem Raspberry Pi mit einem jungfräulichen Venus OS.
MfG Michael
Hallo Jörg
wie sieht deine config von BatteryAggregator aus – hast Du da noch erweiterte Einstellungen wie wiederkehrende Balanceladungen (alle 14 Tage oder so) oder manuelles ausbremsen der Ladung mit steigender Zellspannung konfiguriert oder nutzt du die automatische Regelung? Haben andere hier weitergehende Erfahrungen?
VG //Dirk
Hallo Jörg,
habe ein Problem beim Download des Install.sh-files.
Ich bekomme immer folgende Fehlermeldung:
root@raspberrypi4:~# wget https://raw.githubusercontent.com/Louisvdw/dbus-serialbattery/master/etc/dbus-serialbattery/install.sh
–2024-03-09 12:41:29– https://raw.githubusercontent.com/Louisvdw/dbus-serialbattery/master/etc/dbus-serialbattery/install.sh
Resolving raw.githubusercontent.com… 185.199.111.133, 185.199.108.133, 185.199.110.133, …
Connecting to raw.githubusercontent.com|185.199.111.133|:443… connected.
ERROR: The certificate of ‘raw.githubusercontent.com’ is not trusted.
ERROR: The certificate of ‘raw.githubusercontent.com’ is not yet activated.
The certificate has not yet been activated
Wahrscheinlich eher eine basic Frage, für mich jedoch ein Stoplerstein…
Danke im Voraus!
Lg Dominik
Hallo Michael,
meine Lösung war eine älter version von BatteryAggregator, die läuft 1A.
Mfg
Geri
LÖSUNG! Nach langem herumprobieren habe ich einfach statt
„wget …“ –> „wget –no-check-certificate …“ verwendet. relativ einfach…
Danke trotzdem für den Input!
Lg Dominik
Hallo Jörg,
Noch mal eine Frage zu den Spannungseinstellungen.
Mit den aktualisierten Werten für CELL_VOLTAGES_WHILE_CHARGING reisse ich die 63V Sicherung des BMS (so wie im Artikel für die Spannungseinstellungen beschrieben).
Wenn ich allerdings „konservativ“ rangehen und die so wähle, dass man nie über 63V kommt, dann lädt er die Packs (ich habe 2p 18s) nie ganz voll.
Was hast Du denn da aktuell einstellt (im serialbattery und im BMS)?
Gruß,
Rudi
Hallo an alle. Habe folgendes Problem: Mein Cerbo Gx erkennt die JBD bms nicht über RS485 Adapter . Es sind 3x AP21S002 200A mit UART&485&CAN. Die RS485 Adapter sind zusammen mitgeliefert worden mit den BMS.
Unter lsusb. und dbus-spy werden sie nicht angezeigt. Der hub wird erkannt. Habe auch einzeln versucht direkt an cerbo angeschlossen und das gleiche, sie werden einfach nicht erkannt.
Jemand ne Idee?
Bin schon am am Ende 😩
Bei mir tauchen die unter /dev/ttyACM0 und /dev/ttyACM1 auf.
Bei mir eben nicht. Vielleicht hilft wenn ich die Stecker vom bms ziehe und wieder anschließe
Sicher, dass Du die an der korrekten Buchse am BMS hast? Ich hatte meinen ersten Pack versehentlich an der Buchse daneben … dann erkennt er die nicht! Man sieht aber im SerialBattery log, dass er es versucht …
Also, habe nochmal alles überprüft und die BMS werden einfach nicht gefunden. Jemand noch ne Idee?
wenn ich den einen direkt an cerbo gx anschließe, bekomme ich das angezeigt: Bus 003 Device 002: ID 1a86:55d3 QinHeng Electronics USB Single Serial
Guten Morgen, ich habe das Problem gelöst in dem ich Debus-serialbattery über usb Stick installiert habe.
Jetzt folgendes Problem : Venus OS erkennt nur ein BMS von den drei. Einzeln erkennt er alle drei aber sobald ich mit hub alle drei anschließe, wird nur ein JBD BMS erkannt .
BatteryAgregator ist installiert und zeigt dass 1 BMS Online ist.
Woran kann es liegen?
Schau mal ins Log – wenn die Packs alle die selbe Kapazität haben, kann er die (mangels sonstiger Seriennummer) nicht auseinanderhalten. Das steht dann auch so im Log.
Also entweder die Kapazität leicht ändern (ich habe z.B. bei zwei Packs eins auf 280 und eins auf 281 gestellt), oder die Option nutzen, den device path als ID zu nutzen (bei der aktuellen Version von dbus-serialbattery verfügbar).
Dankeschön Rudi, es hat geklappt 👍🏽
Etwas ist noch merkwürdig: ab und zu wird das System neu gestartet und ich bekomme den Fehler- „BMS Connection lost“ .
Kennt das jemand?
@Rudi & Martin (Jörg?)
das habe ich noch nicht verstanden…
Bei mir wird das JBD mit der Adresse „Serial /dev/ttyACM1“ korrekt erkannt aber das mit der Adresse „Serial /dev/ttyACM0“ nicht.
Der Aggregator funktioniert, bildet aber natürlich momentan sinnfreierweise nur ein BMS ab.
Die BMS haben baugleiche Packs und sind identisch eingestellt.
Was schreibe ich in die config.ini?
Dirk
Garnichts! Du musst für ein Pack eine leicht geänderte Kapazität eintragen (über die Bluetooth App).
Hat funktioniert, danke!
Hallo,
ich bin am verzweifeln mit dem Battery Aggregator. Ich habe ein System mit einem JK BMS und einem Seplos BMS V2. Beide über can angeschlossen, so dass ich serialbattery nicht benutze. Beide werden erkannt und auch zusammengefasst.
Jetzt wollte ich mir die min/Max Zelltemperaturen und Spannungen mit Modus anzeigen lassen. Die Modus ID ist auf 1024. Dann bekomme ich eine Fehlermeldung dass die Werte nicht abgefragt werden können. Wenn ich aber die Modus Adresse wie oben erwähnt auf 201 stelle, dann erkennt der MP2 es nicht mehr und sagt Low Voltage.
Hat einer es geschafft, das System mit Modus abzusagen und wenn ja mit welcher Adresse? Hab schon alles durch von 199 bis 210.
Danke für eine Hilfestellung.
VG
Hallo zusammen, ich habe 2 Akku Systeme am laufen.
Konfiguration: 3x MP 5000 mit 3x 18s Akku in Kombination mit jeweils 3 JKbms angeschlossen über rs485
Bei beiden Systemen kann ich folgendes Phänomen beobachten:
Seriel Batterie meldet voller Ladestrom möglich bei allen 3 Packs aber battery Agregator regelt die Ladeleistung willkürlich runter. Z.t. Auf 1/3 der Leistung was laut serial battery möglich ist.
Hat jemand ein Lösungsansatz?
Hallo,
die SoC der beiden Batteriepacks werden weitergegeben, aber 25 % zu gering.
Wenn also das Pack 100% hat werden 75 % angezeigt, bei 95% sind es 73,1%.
Kennt das jemand?
Wo würdet ihr den Fehler suchen?
Dirk