Moin,
stehe momentan voll auf dem Schlauch. Jetzt funktioniert die Kommunikation mit der Batterie (so ein Block von Super Battery Store), nur laden will es nicht. Entladen macht er ja ganz toll.
Moin,
stehe momentan voll auf dem Schlauch. Jetzt funktioniert die Kommunikation mit der Batterie (so ein Block von Super Battery Store), nur laden will es nicht. Entladen macht er ja ganz toll.
Puuh bitte nicht gleich so viele Informationen zu deinem System ?
A bisl mehr Infos werden wir schon brauchen, zb eingestellte Ladespannung, Ladestromlimits, usw, usw
Hab die Einstellungen mal direkt rauskopiert. BMS ist max Lade/Endladeleistung 100A bei 57V.
Das hier ist der Akku : Lifepo4 48v 120ah Akku 6,14 kWh 6000 Zyklus 16s Smart BMS RS485 kann PC-Monitor 51,2 V 100ah 200ah 230ah 280ah 300ah keine Steuer - AliExpress 44
Was übermittelt das BMS für ein CCL und CVL?
100A / 57V
Was mir aufgefallen ist : Er entlädt ganz brav bis 20 %. Jetzt lädt er ganz brav mit allem was von der Sonne kommt. Nährt er sich den 25 % tritt er voll auf die Bremse, so als wären 25 % schon voll. Korrigiere : Bremst schon früher.
Probierst du gerade mit dem Min SoC Einstellungen im ESS rum? Stell denn min SoC mal unter den aktuellen SoC Wert, lädt er dann?
Zelldrift? hast du mal einen Blick auf die Zellspannung geworfen.
Woher kommt der SOC? Was hast du als Batteriemonitor ausgewählt?
Das liegt einfach daran daß diese Batterien das Pylontech-CAN Protokoll sprechen und da deren BMS eine nicht ganz perfekte Ladespannung ausgibt (welches dazu führt daß der Balancer nicht immer anspringt) hat Victron einen Hack eingebaut um das zu umgehen. Dummerweise sind die Pylontech alle 15s und die Chinesischen 16s, daher lädt es dann nicht.
Zwei Möglichkeiten gibt es zur Lösung:
min SOC ist 20%, momentan bei 22%, lädt mit3,6A. Batteriemonitor ist Pylontech Battery on CAN-Bus. Zellen min : 3273mv max : 3287mv
Genau. Aber weiter als 30% wird es nicht laden, außer du ziehst den CAN bus stecker ab, oder du nimmst eine der beiden Lösungen von oben. Dann brauchst du aber SSH zugriff auf deinem GX.
Bei einer Spannung größer 52V sollte bei einer 16s Batterie mehr als 20% Füllstand sein. Und was ist, wenn das vielleicht ein 15s ist?
Nach einer Firmwareaktualisierung des Multiplus muss dieser erst wieder angelernt werden. Bei mir ist der Multiplus der Batteriewächter. Vielleicht ist das bei deinem BMS ähnlich?
@chp Ich brech ins Essen......funktioniert. ? Problem gelöst in 20 Minuten. Geiles Forum.
@solarfreund Wenn das Multiplus selbst der Batteriewächter ist statt dem BMS, dann ist das kein Problem, dann funktioniert es auch so, aber dann reagiert der Multiplus nicht auf die Alarme und Begrenzungen vom BMS. Eigentlich auch nicht weiter schlimm, denn im Zweifelsfall würde dieses einfach abschalten.
SuperBatteryStore 48V ist 16s, so einen habe ich auch. Und da ich jetzt mein eigenes BMS Interface dafür geschrieben habe kann ich auch noch extra funktionen einbauen wie Ladestrombegrenzung kurz vor voll sowie bei niedrigen Temperaturen.
Hallo @CHP ich habe auch so einen SuperBatteryStore 48V/16s und wollte gerade Dein Script ausprobieren. Habe das Script installiert und es wird auch ausgeführt .... Kann Dein BMS aber in der Remotekonsole leider nicht finden. Es wird lediglich der Pylontech als Batterie angezeigt.
Ich habe allerdings einen PEAK-Can Dongle und keinen Can-HAT im einsatz. Der Peak läuft unter can0 (anstelle von can8 ) das habe ich in deinem Script auch angepasst aber leider bekomme ich kein Lebenszeichen von Deinem Script .... Vielleicht irgendeine Idee?
Hallo @pancho01. Du könntest mit
dbus-spy
auf der Kommandozeile nachschauen ob das com.victronenergy.battery.ttyO0 existiert und befüllt wird. Auf Fehlermeldungen testen kannst du mit
./kill_me.sh && python bms.py
dann läuft das skript auf der Kommandozeile. Eventuell musst du die MQTT Sachen auskommentieren, ich habe es leider bisher nicht konfigurierbar gemacht da ich bisher der einzige User bin. Wenn du auch interesse hast es zu nutzen mache ich die spezifischen Dinge konfigurierbar.
Hi @CHP Danke für die schnelle Antwort. Bin nun ein wenig weiter. Can-Communikation läuft nun! Habe erstmal die MQTT Sachen auskommentiert damit hats dann funktioniert. Aber leider habe ich immer noch Probleme .... laut Can-ID 0x35E ist der Manufacturer "PYLON" aber die Can Botschaften weichen von Deinen ab.
Bei Dir wird der Watchdog mit Id 0x35C getriggert. Die Botschaft kommt bei mir gar nicht. hier mal ein Auszug aus meinem candump von der Console
can0 RX - - 35A [8] 00 00 00 00 00 00 00 00 '........'
can0 RX - - 372 [8] 01 00 01 00 00 00 00 00 '........'
can0 RX - - 373 [8] 39 0D 45 0D 1F 01 22 01 '9.E...".'
can0 RX - - 379 [8] 7D 00 00 00 00 00 00 00 '}.......'
can0 RX - - 351 [8] 40 02 2C 01 F4 01 B0 01 '@.,.....'
can0 RX - - 355 [4] 58 00 64 00 'X.d.'
can0 RX - - 356 [6] 2F 15 8E 00 96 00 ' Link entfernt '
can0 RX - - 35E [8] 50 59 4C 4F 4E B4 B8 BC 'PYLON...'
can0 RX - - 359 [7] 00 00 00 00 01 00 00 '.......'
der passt nur bedingt zum Pylontech Protokoll 0x351,0x359,0x355,0x356 und 0x35E passen 0x35c fehlt und die anderen kann ich nicht zuordnen. Du verwendest in deinem Script die id 0x370 für die Zellspannungen Link entfernt Kannst Du mir sagen wo du die Definitionen hierfür gefunden hast.
Hallo @CHP habe Dein Script nun am laufen. Problem war das der freundliche Chinaman mir sagte ich solle die die DIP-Switches 5 & 6 auf on stellen. Mit der Firmware v1.2 konnte ich gar keinen Akku verbinden, nach update auf v1.3 und Schalterstellung 5 & 6 auf On hatte das VenusOs den Akku wenigstens als "PYLON" erkannt. Dann macht er aber nur dieses halbgare PYLON Protokoll wie oben gepostet.
Mit Einstellung 5=Off und 6=On sendet er nun im Pylontech Protokoll.
Habe ein paar Anpassungen an Deinem Script machen müssen, da ich 2 von den Dingern habe und bei Dir Anzahl und Systemcapacity hart codiert ist.
Aber jetzt funzt das ganze ? Top Danke.
Einzige unbekannte ist für mich immernoch die Botschaft mit ID 0x370 in der min/max Temperatur und Spannungen der Zellen gesendet werden.
Die habe ich in der Pylontech-Speck v1.2 nicht gefunden nur in der Spek vom Seplos BMS als ID 0x30 ( was wahrscheinlich 0x370 heißen soll ? )
@pancho01 Ja, interessant. In der Tat habe ich einige Sachen hardgecoded, da ich bisher der einzige User der Skripte war. Welche Version der BMS Firmware hast du denn? Einer der Akkus die ich bekommen hatte, hatte 1.0.2 und der hatte die 0x370 für die Zellspannungen auch nicht. Inzwischen habe ich alle Akkus auf 2.0.2 geupdated, zumal sonst auch die Kommunikation zwischen denen nicht richtig funktioniert hat.
Hier ist die neueste Firmware: BMS SW: DR01_16S100JC03_V2 0 0 (Victron Version) · Issue #5 · mytest4u/BMS · GitHub
Diese ließ sich nur sehr widerwillig einspielen.
Hi @CHP habe mittlerweile FW 2.0.0 installiert, damit funktioniert das ganze. Vorher 1.0.2 danach 1.0.3 ( damit funktionierte es nicht ) und seit letzter Woche die v2.0.0. Danke für den link den kannte ich nch nicht. Dort finde ich für den 100AH Akku aber nur FW 2.0.1 oder hast Du die FW für den 200AH installiert?