Zum Inhalt

Systemübersicht

Systemüberblick

Der BSC ist ein frei konfigurierbarer Controller, welcher eine Schnittstelle zwischen den verschiedenen Komponenten eines DIY Batteriesystems realisiert. Er kann eine Vielzahl an Kontroll- und Überwachungsaufgaben übernehmen, unter anderem die zentrale Ladesteuerung des Speichersystems oder die Realisierung einer zweiten Sicherheitsebene neben des BMS.

%%{init: {
    'theme': 'base', 
    'themeVariables': { 'fontSize': '16px', 'fontFamily': 'Arial', 'edgeLabelBackground': 'white'}
}}%%


flowchart TD
    BMS[BMS] -- "RS485<br>(Serial 0-2)" --> BSC
    TEMP_SENSOR[Temperature<br>Sensors] -- Onewire --> BSC
    NEEY[<s>NEEY<br>Balancer</s>] <-- <s>Bluetooth</s> --> BSC
    VICTRON_SHUNT[Victron<br>SmartShunt] --> VICTRON_SHUNT_CONV[RS485<br>Converter] -- RS485 --> BSC
    BSC -- CAN --> CAN[Inverter]
    BSC <-- MQTT --> MQTT_BROKER[MQTT Broker]
    BSC -- REST --> REST[REST Client]

    BSC[Extension<br>Interface] -.- E1[<a href='../hardware#bsc-display'>Display</a>]
    SE["Serial<br>Extension<br>(Serial 3-10)"] -.- BSC
    BMS -- RS485 --> SE

    BSC[Battery System Controller]:::wide

    subgraph Battery  
        BMS
        TEMP_SENSOR
        NEEY
        VICTRON_SHUNT
    end

classDef wide padding:200px
style BSC fill:#ffdbaa 

Komponenten

  • BSC: Der BSC besteht aus einer Platine und der darauf laufenden Software. Er besitzt verschiedenste Schnittstellen, um mit den externen Komponenten kommunizieren zu können (WLAN, Bluetooth, RS485, CAN-Bus, Onewire, digitale Ein- und Ausgänge)
  • Display: optional kann an den BSC ein Display angeschlossen werden, welches über einen I2C-Bus mit dem BSC kommuniziert. Weitere Informationen finden sich hier. Es bietet sich an, BSC und Display in diesem Gehäuse zu betreiben.
  • Serial Extension: Der BSC besitzt 3 RS485 Schnittstellen für den Anschluss von BMS. Falls weitere benötigt werden, kann das Serial Extension Board an den BSC angeschlossen werden um 8 weitere RS485 Schnittstellen zu erhalten. Siehe das entsprechende Github-Repo
  • BMS: Verschiedene BMS können über RS485, CAN, oder Bluetooth verbunden werden. Von diesen werden dann aktuelle Zustandsinformationen der Batterien, wie Zellspannungen, SOC oder Temperaturen abgerufen. Siehe hier im Wiki
  • Temperatursensoren: Es können zusätzliche Temperatursensoren über Onewire oder Digital- bzw. Analogeingänge angeschlossen werden, welche die Informationen des angeschlossenen BMS ergänzen.
  • Shunt: Der BSC kann den SoC einer Batterie von einem externen Shunt abrufen. Derzeit wird der Victron SmartShunt unterstützt. Für die ANbindung wird ein zusätzlicher RS485/UART Konverter benötigt.
    Siehe hier
  • Inverter: Der BSC kommuniziert mit verschiedenen Wechselrichtern über CAN-Bus, wie z.B. Victron, Solis oder DEYE. Dabei kann der aktuelle Batteriezustand gemeldet werden, und auch Konfigurationsparameter, wie z.B. zur Ladesteuerung, gesetzt werden.
    Siehe hier
  • MQTT Broker: Alle Zustandsdaten können zusätzlich über WLAN an einen MQTT Broker gesendet werden, um diese langfristig zu speichern und zu visualisieren (z.B. über Grafana).
    Siehe hier
  • REST Client: Zustandsdaten über die überwachten Batterien oder über den BSC können über eine HTTP REST API abgerufen werden.
    Siehe hier

Verfügbare Schnittstellen

  • WLAN: Zugriff auf das BSC-Webinterface, Übertragung von MQTT-Daten
  • Bluetooth: Kommunikation mit NEEY-Balancer
  • RS485: Abruf von BMS-Daten
  • CAN Bus: Kommunikation mit Wechselrichtern
  • HTTP REST: Abruf von Batterie- und BSC-Zustandsinformationen
  • Onewire: Abruf von Sensordaten, wie z.B. Temperatursensoren
  • Digitale Eingänge: Empfang von digitalen Sensordaten über einen galvanisch getrennten Eingang
  • Digitale Ausgänge: Steuerung von externen Geräten über Relais