
BMW BMW
Das BMW-Batteriespeichersystem ist ein stationäres Energiespeichersystem auf Basis von BMW-Hochvoltakkus, das in gewerblichen und industriellen Anlagen unter OpenEMS-Steuerung eingesetzt wird. Diese Modbus-Vorlage kommuniziert über Modbus RTU und liest einen umfassenden Satz BMS-Register: State of Charge, State of Health, DC-Link-Spannung, Packstrom, Zellspannungen in Millivolt, Zell- und Packtemperaturen, Isolationswiderstand, String-Topologie, verbleibende Lade- und Entladeenergie sowie den Vollzyklenzeähler. Das beschreibbare Befehlsregister erlaubt dem EMS das Auslösen von Zustandsübergängen. ModbusCloud stellt diese Daten für Monitoring, Alarmierung und Langzeitanalyse bereit.
- Protokoll
- Modbus RTU
- Anschluss
- RS485
- Register
- 36, lesen und schreiben
- Marke
- BMW
- Zuletzt aktualisiert
Register (36)
35 lesen, 1 schreiben
| Name | Einheit | Zugriff | Adresse (Verborgen bis zur Eingabe Ihrer E-Mail-Adresse) | Funktion (verborgen) | Typ (verborgen) |
|---|---|---|---|---|---|
| battery_state_command | Schreiben | ||||
| battery_state | Lesen | ||||
| max_operating_current | A | Lesen | |||
| min_operating_current | A | Lesen | |||
| charge_max_voltage | V | Lesen | |||
| discharge_min_voltage | V | Lesen | |||
| bp_discharge_bms | Lesen | ||||
| bp_charge_bms | Lesen | ||||
| max_dynamic_voltage | V | Lesen | |||
| min_dynamic_voltage | V | Lesen | |||
| connected_string_number | count | Lesen | |||
| installed_string_number | count | Lesen | |||
| battery_total_soc | % | Lesen | |||
| battery_soc | % | Lesen | |||
| remaining_charge_capacity | Lesen | ||||
| remaining_discharge_capacity | Lesen | ||||
| remaining_charge_energy | Wh | Lesen | |||
| remaining_discharge_energy | Wh | Lesen | |||
| nominal_energy | Wh | Lesen | |||
| nominal_energy_total | Lesen | ||||
| nominal_capacity | Lesen | ||||
| capacity | Wh | Lesen | |||
| soh | % | Lesen | |||
| link_voltage | V | Lesen | |||
| internal_voltage | V | Lesen | |||
| current | A | Lesen | |||
| avg_battery_temperature | °C | Lesen | |||
| min_cell_temperature | °C | Lesen | |||
| max_cell_temperature | °C | Lesen | |||
| min_cell_voltage | mV | Lesen | |||
| max_cell_voltage | mV | Lesen | |||
| avg_cell_temperature | °C | Lesen | |||
| insulation_resistance | Lesen | ||||
| discharge_max_current_high_resolution | A | Lesen | |||
| charge_max_current_high_resolution | A | Lesen | |||
| full_cycle_count | count | Lesen |
Register werden geladen…
Senden Sie Ihre Geräteliste
Steht ein Gerät noch nicht in der Bibliothek, erstellen wir die Vorlage kostenlos, sobald wir die Register haben.
Anwendungsfälle
- Vergleichen Sie battery_total_soc mit battery_soc, um Ungleichgewichte zwischen verbundenen Strings frühzeitig zu erkennen.
- Überwachen Sie soh und full_cycle_count, um vorausschauende Wartung zu planen, bevor die Kapazität unter den Schwellenwert sinkt.
- Richten Sie Alarme auf min_cell_voltage und max_cell_voltage ein, um Zelldrift zu erkennen, bevor das BMS abschaltet.
- Prüfen Sie nach Wartungsarbeiten, ob connected_string_number mit installed_string_number übereinstimmt, um sicherzustellen, dass alle Strings online sind.
- Protokollieren Sie insulation_resistance über die Zeit, um frühe Isolationsfehler im Hochvolt-Batteriegehäuse zu erkennen.
Installation
Stellen Sie sicher, dass das BMW-Batteriesystem für Modbus RTU konfiguriert ist, und notieren Sie die RS485-Slave-Adresse in den BMS- oder Systemcontroller-Einstellungen.
Verbinden Sie die RS485-Adern A und B vom Modbus-Anschluss des Batteriesystems mit den seriellen Klemmen des ModbusCloud Gateways, achten Sie auf die Polarität und setzen Sie an beiden Busenden einen 120-Ohm-Abschlusswiderstand.
Fügen Sie im ModbusCloud-Portal das Gateway hinzu, legen Sie ein neues Gerät an, importieren Sie die BMW-Batterie-Vorlage und tragen Sie die Modbus-Unit-ID entsprechend der am Speicher eingestellten Slave-Adresse ein.
Führen Sie im Portal-Konsolentool einen Live-Poll auf Register 1016 (battery_total_soc) und Register 1026 (soh) durch, um den korrekten Datenempfang zu bestätigen, bevor Sie die vollständige Dashboard-Erfassung aktivieren.
Zu beachten
Alle Register liefern null oder eine Fehlermeldung. Was soll ich prüfen?
Prüfen Sie zuerst die RS485-Verdrahtung: Vertauschte A- und B-Adern sind die häufigste Ursache. Vergewissern Sie sich anschließend, dass die Modbus-Slave-Adresse im Portal mit der am BMW-BMS eingestellten Adresse übereinstimmt. Kontrollieren Sie auch, ob Baudrate und Parität des Gateways mit der RS485-Konfiguration des Speichers übereinstimmen, typischerweise 9600 oder 19200 Baud, 8 Datenbits, keine Parität.
battery_total_soc und battery_soc weichen voneinander ab. Ist das normal?
Ja, wenn mehrere Strings installiert, aber nicht alle verbunden sind, weichen die beiden Register voneinander ab. battery_total_soc (Adresse 1016) aggregiert alle installierten Strings, battery_soc (Adresse 1017) gibt den aktiven String wieder. Vergleichen Sie beide Werte mit connected_string_number und installed_string_number, um festzustellen, ob ein String offline gegangen ist.
min_cell_voltage und max_cell_voltage zeigen unerwartet hohe Werte. Warum?
Beide Register verwenden Millivolt als Einheit: Ein Wert von 3500 entspricht 3,5 V pro Zelle. Teilen Sie Rohwerte durch 1000, um in Volt umzurechnen. Prüfen Sie in Ihrer Dashboard-Konfiguration, ob die Einheit auf mV gesetzt ist, und passen Sie den Skalierungsfaktor bei Bedarf an.
Ist es sicher, während des Betriebs in battery_state_command zu schreiben?
Gehen Sie mit Schreibregister 1400 sorgfältig um. Ein unbeabsichtigter Zustandsübergangsbefehl während eines aktiven Lade- oder Entladevorgangs kann dazu führen, dass das BMS Schütze öffnet, laufende Zyklen unterbricht und Schutzverriegelungen auslöst. Senden Sie Befehle ausschließlich im Ruhezustand der Anlage und halten Sie sich an die dokumentierte Zustandsmaschinensequenz des BMW-Batteriesystems.
Selbst sehen, wie es funktioniert?













