24-48V BMS
Anleitung zum Aufbau und Inbetriebnahme
Systemübersicht
Cortex Stecker
Batterieanschlussklemmen
Leistungsmosfets
Hardwareänderungen
Schematischer Aufbau, Komponenten Akkumulator
Grundlegendes
Anschluss Akkumulator
Batterieanschlusskabel
Anschlusskabel für Zellspannungsmessung und Temperatursensoren
Aktualisierung des Boardlayouts
Platinenherstellung und Bestückung
Gehäuse, Platinenbefestigung
Flashvorgang
Anschluss an Raspberry Pi zur Überwachung und Datenauswertung
Einrichtung der Kanäle im „web Frontend“ und in der Konfigurationsdatei „vzloggerconf“
Web Frontend
Einrichten der „vzlogger.conf“
Starten des vzloggers über WinSCP
Export von Datenbanksätzen
Stromverbrauch BMS
Anpassungen im Quellcode für den Prozessor STM32
Anleitung zum Aufbau und Inbetriebnahme
Folgende Anleitung zum Aufbau und zur Inbetriebnahme des BMS 24V-48V von LibreSolar soll einen Leitfaden darstellen, um den selbständigen Nachbau und die Inbetriebnahme des BMS zu ermöglichen. Der Leitfaden orientiert sich am Aufbau eines BMS für einen LiFePO Akkumulator mit 9 Zellen (28,8V) integriert in einem DC Solarstromspeicher und hat keinen Anspruch auf Vollständigkeit.
Randdaten des realisierten Projektes:
- Akkupack 9x 3,2V 60Ah Innopower LiFePo Akkumulatoren, verspannt mit Kunststoffband
- Max. Ladestrom 30A über 2x MPPT 100-15 Victron Laderegler
- Max. Entladestrom von 11A über Wechselrichter AE Conversion
Grundlegende Informationen zum BMS sind unter folgenden Links zu finden:
- Genereller Überblick über das BMS, BMS-Features, Einordnung, zukünftige Entwicklungen, bisheriger Einsatz etc. [1]
- Vollständiges Repository aller Daten (Sourcecode, Leiterplattenlayouts) für das BMS, neueste Entwicklungen, Verbesserungen, Fortschritte im Projekt, behobene Bugs etc. [2]
- Überblick über die verschiedenen Elektronikentwicklungen von Martin Jäger, Einordnung BMS 24-48V [3]
- Beschreibung der Hardware BMS Controllerboard [4]
- Beschreibung der Hardware des Switch N Sense [5]
Zum selbstständigen Aufbau und zur Inbetriebnahme des BMS sind folgende Kenntnisse unbedingt erforderlich:
- Grundkenntnisse der Elektrotechnik
- Ggf. Löten von SMD Bauteilen
- handwerkliches Geschick
Systemübersicht
Das LibreSolar BMS 24-48V besteht aus zwei Hauptkomponenten: das BMS Controllerboard und das BMS Leistungsboard.
Das BMS Controllerboard ist zuständig für die Spannungsüberwachung der angeschlossenen Zellen, deren Balancing (Entladung von Zellen mit zu hohem Spannungsniveau über Widerstände), Temperaturüberwachung, Stromüberwachung, Berechnung des SoC, der Ansteuerung des BMS Leistungsboards zur Unterbrechung des Lade- und Entladeprozesses im Fehlerfall über Leistungsmosfets, der Ansteuerung des Kommunikationsinterfaces (CAN, UART/I2C/SPI) und der Abarbeitung des Hauptprogramms.
Das BMS Leistungsboard (Switch-N-Sense) enthält je 2 parallel geschaltete Hochleistungsmosfets für jede Stromrichtung in antiserieller Anordnung und einen High-Side-Treiber. Die Ansteuerung erfolgt über das BMS Controllerboard. Dort befindet sich auch der Shunt für die Strommessung. Der dazugehörige A/D-Wandler sitzt im bq769x0. Ein maximaler Strom von 80A kann geschalten werden, wobei dabei unbedingt Kühlkörper auf den Mosfets (Unterseitig auf dem BMS Leistungsboard) zur Abfuhr der Verlustleistung angebracht werden müssen. Kühlungsbedarf besteht insbesondere auch dann, wenn die MOSFETs nur in einer Stromrichtung durchgeschaltet sind und der Strom durch die Body-Dioden der anderen MOSFETs fließt.
Folgendes Bild beschreibt die wesentlichen Bestandteile der Platinen:
Das aktuelle eagle Layout, Stromlaufpläne etc. inklusive Beschreibung aller Bauteile sind unter [6] sowie [7] zu finden.
Das eigentliche Zellbalancing (Überwachung, Balancing und Hauptsicherheitsfeatures) führt der Balancing-IC bq769x0 durch. Dieser wird je nach Anzahl der angeschlossenen Zellen und Spannungsniveau des Akkupacks ausgewählt:
bq76920: 3-5 Zellen Spannung ist abhängig von Zellchemie, BMS kann nicht nur LiFePO
bq76930: 6-10 Zellen
bq76940: 9-15 Zellen
Das vorliegende Platinenlayout BMS 48V ist für den IC bq76930 (6-10 Zellen) bzw. bq76940 (9-15 Zellen ) ausgelegt. Die abweichende Bestückung beim Einsatz des bq76930 ist im Schaltplan angegeben.
Ist ein BMS für ein Akku mit bq76920: 3-5 Zellen notwendig, so kann das 5-cell Battery Management System (12V) von Matin Jäger verwendet werden [8]. Der hier in der Anleitung verwendete Balancing IC ist der bq76930. Das Datenblatt „bq769x0 Family Top 10 Design Considerations“ bzw. „bq769x0 3-Series to 15-Series Cell Battery Monitor Family
for Li-Ion and Phosphate Applications“ ist unter [9] zu finden.
Der Balancingstrom von ca. 100 mA bei 3,3V wird bestimmt durch die 33Ohm Balancingwiderstände. Allerdings verwendet der bq769x0 pro Zyklus 30% der Zeit für die Messung und nur 70% für das Balancing, so dass sich ein effektiver Balancingstrom von ca. 70mA einstellt. Weiterhin können bedingt durch das Schaltungsdesign nebeneinanderliegende Zellen nicht gleichzeitig entladen werden.
Im oben dargestellten Bild ist der IC (bq76930) (6-10 Zellen ) verwendet, sodass die Balancingwiderstände für die Zellen (11-15) nicht bestückt sind.
Werden weniger als 10 bzw. 15 Zellen verwendet, müssen überzählige Zellanschlüsse nach einem im Datenblatt dargestellten Schema überbrückt werden. Dies kann entweder durch verbinden der betreffenden Zellanschlusskabel oder durch Lötbrücken direkt an den Pins des Molex-Steckverbinders auf der Platine erreicht werden. Im vorliegenden Projekt (9 Zellen) wurden die Kontakte C8 und C9 gebrückt. In folgender Tabelle, entnommen aus dem Datenblatt des bq76930 auf Seite 46/47, ist beispielhaft der notwendige Zellkurzschluss für eine unterschiedliche Zellanzahl dargestellt.
Datei:Abbildung 3 Zellverbindungen unterschiedlicher Akkupacks beispielhaft für bq76930
Das Datenblatt für den Prozessor STM32F072 ist verfügbar unter:
[10]
Für das vorliegende Setup benötigen wir keine CAN Schnittstelle, sondern verwenden den UEXT (Universal EXTension) Anschluss. Im ersten Schritt wird daran bspw. über einen 10-poligen Wannenstecker ein I2C fähiges Display (OLED SSD1306) an dem BMS Controllerboard angeschlossen, um so direkte Auskunft zu Lade-/Entladestrom, Akkuladezustand und Spannungsniveau der einzelnen Zellen zu bekommen.
Über die UEXT Schnittstelle stehen die seriellen Schnittstellen I2C, SPI and RS232 bereit (auch gleichzeitig!), um mit anderer Hardware zu kommunizieren. Der UEXT Standard wird unter folgenden Links erklärt:
Anschlussreihenfolge für OLED: Gelb
Anschlusspin OLED | UEXT Pin
I2C1_SDA | Pin 6
GND | Pin 2
+3V3 | Pin 1
I2C1_SCL | Pin 5
Cortex Stecker
An den Cortex-Stecker auf dem BMS Controllerboard wird der Cortex ST-Link Adapter angeschlossen (verfügbar unter [14] Bestellung unter: [15]) mithilfe dessen und einem Nucleo Board der Flash- bzw. Debug-Vorgang des STM32 erfolgt. Genaue Vorgehensweise siehe unter Flashvorgang.).
Datei Abbildung 4 Cortex_ST-Link_Adapter
Batterieanschlussklemmen
Die Anschlussblöcke für Batterie und Stromverbraucher auf dem BMS Leistungsboard sind PowerOne Buchsen von Würth Electronic (Nr. 93172) [16] Würth Power Elements WP-BUCF (order code 7461059) und müssen z.B. mithilfe eines Schraubstockes in das BMS Leistungsboard eingepresst werden. Dies ist auch bei schon bestückter Platine möglich, erfordert aber folgende speziell ausgeschnittene bzw. ausgelaserte Unterlegscheiben bspw. aus Holz oder stabiler Pappe.