White Paper

Entwickeln von Batteriesystemen mit Simulink und Simscape

Workflow zur Entwicklung von Batteriesystemen

Die Elektrifizierung trägt maßgeblich zur vermehrten Nutzung von Batterien für eine Reihe von Anwendungen bei, wie z. B. Elektrofahrzeuge (u. a. Autos, Busse), Schiffe, elektrische Luftfahrzeuge, netzgebundene Energiespeichersysteme und Photovoltaikanlagen. Diese Anwendungen stellen unterschiedliche Anforderungen an die Entwicklung von Batteriesystemen hinsichtlich Zellauswahl, Leistungs-/Energiedichte, Volumen, Gewicht und Lebensdauer.

Die Simulation des Batteriesystementwurfs vor Testbeginn gibt Aufschluss über das dynamische Verhalten des Batteriepacks. Damit können Sie auch:

  • Software-Algorithmen untersuchen und vergleichen.
  • Operative Testfälle ausweiten.
  • Den technologischen Entwicklungszyklus von der Batteriezelle bis zum Batteriesystem verkürzen.

Der Workflow für die Entwicklung von Batteriesystemen beginnt mit dem Bau der Batteriezelle. Dabei bilden fünf zentrale Aspekte die Grundlage für die Entwicklung einer Batteriezelle hin zu einem Batteriesystem. Dazu gehören:

  • Entwicklung von Batteriepacks
  • Entwicklung von elektrischen und thermischen Komponenten für Batteriepacks
  • Entwicklung von Algorithmen für Batteriemanagementsysteme (BMS)
  • Integration von Komponenten zur Durchführung von Desktop-Simulationen
  • Hardware-in-the-Loop (HIL)-Tests und Bereitstellung

Der Brückenschlag zwischen Batteriezelle und Batteriesystem.

Mithilfe von Simulink® und Simscape™ beginnt der Workflow zur Batteriesystementwicklung mit der Integration der Systemkomponenten, sodass Sie eine Desktop-Simulation zur Validierung der Komponenten und Algorithmen durchführen können (siehe Desktop Simulation). Der nächste Schritt besteht in der Echtzeitsimulation von Modellen mithilfe von Rapid Prototyping und Hardware-in-the-Loop-Tests (siehe Echtzeit-Simulation von Batteriesystemen). Die letzten Phasen der Entwicklung umfassen die Hardware-Implementierung, die Bereitstellung und Testverfahren (siehe Hardware-Implementierung).

Ein Diagramm eines Entwicklungsworkflows, das von links nach rechts die Desktop-Simulation, die Simulation in Echtzeit und die Hardware-Implementierung zeigt.

Workflow zur Entwicklung von Batteriesystemen mit Simulink und Simscape.

Abschnitt

Entwicklung von Batteriepacks

Mithilfe der Anwendungsprogrammierschnittstelle (API) von Simscape Battery™ in MATLAB® können Sie einen Batteriepack entwickeln. Zu den Grundelementen der Entwicklung gehören das Zellendesign, die Parallelmontage, das Modul, die Modulmontage und die Entwicklung des Batteriepacks.

Eine Koordinatenebene mit der Anzahl der Zellen auf der x-Achse, der Energie in kWh auf der y-Achse und der Zelle, der Parallelmontage, dem Modul, der Modulmontage und der Entwicklung des Packs, die in dieser Reihenfolge linear ansteigen.

Entwicklung von Batteriepacks von der Zelle bis zum fertigen Pack.

Mithilfe von Simscape Battery ist Folgendes ist möglich:

  • Modellieren des elektrothermischen Verhaltens unter Einbeziehung von Ladungsdynamik, Alterung, thermischen und wärmetechnischen Übertragungseffekten in Batteriezellenmodelle.
  • Parametrisieren von Zellen gemäß Herstellerdatenblättern.
  • Erstellen und visualisieren von Batteriemodellen mit verschiedenen Geometrien und Topologien – von der Zelle zum Modul und vom Modul zum Pack.
  • Modellieren von Kühlplatten mit individuell erstellbaren Flüssigkeitspfaden und thermischen Anschlüssen am Akkupack.
  • Untersuchen von Temperaturschwankung zwischen den Zellen und messen der Kühleffizienz.
  • Generieren eines individuellen Simulink-Bibliotheksmodells für Ihre Batteriepackentwicklung.
  • Wählen einer angemessenen Modellauflösung, um ein Gleichgewicht zwischen Modelltreue und Simulationsgeschwindigkeit zu finden.

Die wichtigsten Aspekte

  • Entwickeln Sie einen individuell gestalteten Batteriepack mit verschiedenen Modellauflösungen.
  • Ergänzen Sie das Batteriemodell um thermische Effekte.
  • Generieren Sie Batteriemodelle für die Simulation mithilfe von nur einer einzigen Codezeile.

Von der Batteriezelle zum Batteriesystem

Abschnitt

Wärmemanagementsysteme für Batterien

Mit MATLAB und Simulink können Ingenieure ein Wärmemanagementsystem für Batterien entwerfen, um die Temperatur des Batteriepacks entsprechend den Spezifikationen zu regeln und eine optimale Leistung unter verschiedenen Betriebsbedingungen zu gewährleisten. 

Ein Diagramm des Kühlsystems der Batterie und des Batteriepacks.

Vergleich der thermischen Analyse einer neuen und einer alten Lithium-Ionen-Batterie mithilfe von Simscape Battery.

Mithilfe von Simscape und Simscape Battery können Sie Modelle erstellen, die auf Batteriezellenebene beginnen und anschließend Umgebungstemperatureffekte, Materialien für thermische Schnittstellen und Kühlplattenverbindungen hinzufügen, um ein repräsentativeres Modell zu erstellen. Die Wärmeübertragung kann unter den Gesichtspunkten Zelle-zu-Zelle, Zelle-zu-Platte und Zelle-zu-Umgebung betrachtet werden, indem die thermischen Pfade zur Umgebung, zum Kühlmittel und zur Position der Kühlplatte festgelegt werden. Simscape Battery verfügt über vorgefertigte Kühlplattenblöcke, die verschiedene Durchflusskonfigurationen unterstützen, darunter parallele Kanäle, U-förmige rechteckige Kanäle und Randkühlung.

Block für parallele Kanäle in Simscape Battery.

Block für parallele Kanäle in Simscape Battery.

Block für U-förmige Kanäle in Simscape Battery.

Block für U-förmige Kanäle in Simscape Battery.

Randkühlungsblock in Simscape Battery.

Randkühlungsblock in Simscape Battery.

Ein Wärmemodell auf Packebene kann erstellt werden, indem Zellen zu Modulen mit thermischen Effekten zusammengesetzt und Module innerhalb eines Packs angeordnet werden. Sie können thermische Leistungsanalysen an Batteriepacks mit unterschiedlichen Alterungsstadien durchführen, um die Garantiekriterien am Ende des Lebenszyklus (EOL) zu erfüllen.

Eine Batteriezelle neben dem Wärmemodell einer Batteriezelle.

Detaillierte 1D-Wärmemodellierung einer einzelnen Batteriezelle mithilfe von Simscape und der Thermal Elements-Bibliothek.

Modell einer Reihe von Batteriezellen, die mit einem thermischen Kühlmittelanschluss verbunden sind.

Definieren des thermischen Kühlmittelpfads für das Batteriemodul mit Simscape Battery.

Sie können die Blöcke von Simscape und Simscape Fluids™ in Gas-, Flüssigkeits- und Wärmedomänen verwenden, um aktive, passive oder hybride Kühl-/Heizlösungen zu modellieren. Darüber hinaus lassen sich die Architekturen von Kühl-/Heizsystemen anhand von Leitungs- und Instrumentierungsfließbildern zur Platzierung von Rohren, Ventilen, Wärmetauschern und Tanks untersuchen.

Bei einem Flüssigkeitskreislaufsystem ist es möglich, einen Ausgleichsbehälter für die Reserveflüssigkeit, Kühlplatten, die die Betriebsflüssigkeit in die Nähe der Batteriezellen leiten, ein motorbetriebenes Umwälzsystem mit Pumpe, Fließweg und Ventilen sowie verschiedene Arten von Wärmetauschern wie drahtgebundene Heizungen oder Radiatoren zu modellieren.

Nachdem Sie ein Modell des Kühl-/Heizsystems erstellt haben, können Sie Simulationen durchführen, Ihre Entwicklung durch Untersuchung der Komponentengrößen und Systemparameter optimieren und bestimmte Anforderungen wie Wärmeableitung und Stromverbrauch erfüllen.

Kühlsystem-Schema für eine E-Fahrzeugbatterie.

Ein mithilfe von Simulink und Simscape erstelltes Modell eines Kühl-/Heizsystems mit aktivem Flüssigkeitskreislauf für Batterien in einem Elektrofahrzeug (EV).

Mit Simulink ist es einfach, geschlossene Regelkreise zu entwerfen, die Feedforward- und PID-Techniken für die Steuerung von Zirkulationssystemen kombinieren, wie beispielsweise die Regelung des Zuflusses (Ventil), des Massenflusses (Pumpe) und der Wahl des Wärmeaustauschpfads. In Simscape Battery stehen Ihnen vorgefertigte Blöcke wie Battery Coolant Control und Battery Heater Control zur Verfügung, mit denen Sie Regelungsalgorithmen für das Wärmemanagement von Batterien erstellen können. In Verbindung mit Stateflow® lässt sich zudem eine Überwachungslogik für das Umschalten zwischen verschiedenen Betriebsmodi – z. B. Heizen oder Kühlen – in Abhängigkeit von der Umgebungs- und der Batterietemperatur entwickeln.

Ein Simulink-Modell für ein Kühlmittelregelungssystem.

Ein Simulink-Modell eines Kühlmittelregelungssystems, das den Durchfluss anhand der Temperaturen zwischen den Batteriezellen und der Umgebungstemperatur berechnet.

Die wichtigsten Aspekte

  • Erstellen Sie ein Wärmemodell auf Packebene, indem Sie Zellen zu Modulen mit thermischen Effekten zusammensetzen.
  • Verwenden Sie vorgefertigte Kühlplattenblöcke.
  • Erstellen Sie Modelle für Kühl-/Heizsysteme mithilfe verschiedener Betriebsstoffe.
  • Simulieren Sie extreme Temperaturbedingungen, um für „Was-wäre-wenn“-Szenarien gerüstet zu sein.
  • Führen Sie Szenariostudien durch, um die thermischen Auswirkungen verschiedener Entwicklungsoptionen zu bewerten.
  • Wählen Sie Komponenten aus und ermitteln Sie die richtige Größe anhand von Modellierungen und Simulationen.

Entwicklung von Wärmemanagementsystemen

Mahindra Electric optimiert das Wärmemanagementsystem für Akkus eines E-Autos mit Simulation auf Systemebene 

Abschnitt

Algorithmen für Batteriemanagementsysteme

Ein optimal konzipiertes Batteriemanagementsystem (BMS) gewährleistet maximale Leistung, einen sicheren und zuverlässigen Betrieb und eine optimale Lebensdauer unter verschiedenen Lade- und Entlade- sowie Umweltbedingungen. Simulink und Simscape ermöglichen es Ihnen hierbei, Einblicke in das dynamische Verhalten des Batteriepacks zu gewinnen, Software-Architekturen zu untersuchen, Betriebsfälle zu testen und frühzeitig mit Hardware-Tests zu beginnen, um so Entwicklungsfehler zu vermeiden. Ingenieure können die in Simscape Battery integrierten BMS-Regelungsblöcke verwenden, um die Leistung des entwickelten Batteriepacks zu bewerten, ein Wärmemanagementsystem zu entwickeln und Simulationen auf Systemebene durchzuführen.

Damit diese Ziele erreicht werden können, besteht das BMS aus Algorithmen, die das Verhalten und die Leistung des Batteriepacks steuern.

Diagramm der Komponenten des Batteriemanagementsystems.

Funktionen des Batteriemanagementsystems.

Für die Entwicklung von Algorithmen zur Schätzung des Ladezustands (State of Charge, SOC) sind exakte Batteriemodelle unerlässlich. Klassische Ansätze zur SOC-Schätzung, wie die Messung der Leerlaufspannung (Open Circuit Voltage, OCV) und die Stromintegration (Coulomb-Zählung), sind in bestimmten Fällen verhältnismäßig genau. Jedoch erfordert die SOC-Schätzung bei modernen Batterietypen, die flache OCV-SoC-Entladesignaturen aufweisen, einen anderen Ansatz. Der erweiterte Kalman-Filter (EKF) und der Unscented Kalman-Filter (UKF) sind Ansätze, die nachweislich exakte Ergebnisse mit einem akzeptablen Rechenaufwand liefern.

Simscape Battery enthält drei SOC-Schätzer: Coulomb-Zählung, adaptiver Kalman-Filter und Kalman-Filter. Im Vergleich zum SOC-Schätzer mit Kalman-Filter verfügt der SOC-Schätzer mit adaptivem Kalman-Filter über den Endwiderstand als zusätzlichen Zustand. Bei beiden, dem adaptiven Kalman-Filter-SOC-Schätzer und dem Kalman-Filter-SOC-Schätzer, besteht die Möglichkeit, einen EKF oder UKF zu wählen, um einen Beobachter-Block zur Schätzung des SOC zu entwickeln. Dieser Beobachter-Block umfasst normalerweise ein Modell des nichtlinearen Systems von Interesse (die Batterie), das den von der Zelle gemessenen Strom und die Spannung als Eingangsgrößen verwendet, sowie einen rekursiven Algorithmus, der die internen Zustände des Systems (darunter SOC) auf der Grundlage eines zweistufigen Vorhersage-/Aktualisierungsprozesses berechnet.

Ein Diagramm des tatsächlichen gegenüber dem geschätzten Prozentsatz des Ladezustands, mit der Zeit auf der x-Achse und dem Ladezustand auf der y-Achse.

Tatsächlicher SOC und mithilfe des EKF geschätzter SOC von Simscape Battery.

Im Gegensatz zu einem Kalman-Filter erfordert die Verwendung eines neuronalen Netzes zur Entwicklung eines SOC-Schätzers keine umfassenden Informationen über die Batterie oder ihr nichtlineares Verhalten. Stattdessen wird das Netz mit Strom-, Spannungs- und Temperaturdaten und dem SOC als Antwort trainiert.

Ein Diagramm eines neuronalen Netzes mit Eingängen, versteckten Schichten und Ausgängen.

Neuronales Feedforward-Netzwerk zur Berechnung des SOC mithilfe von Temperatur, Spannung und Strom.

Die wichtigsten Aspekte

  • Simscape Battery enthält drei Schätzer für den Ladungszustand (SOC): Die Coulomb-Zählung, ein adaptiver Kalman-Filter und ein Kalman-Filter.
  • Sowohl der adaptive Kalman-Filter SOC-Schätzer als auch der Kalman-Filter SOC-Schätzer haben die Möglichkeit, zwischen EKF und UKF zu wählen.
  • Ein adaptiver SoC-Schätzer mit Kalman-Filter verfügt über den Endwiderstand als zusätzlichen Zustand.
  • Ein SOC-Schätzer kann mithilfe eines neuronalen Netzes ohne weitere Informationen über die Batterie entwickelt werden.

Schätzen des Batterieladezustands mithilfe von Deep Learning

Alle Batterien, auch solche, die zum Zeitpunkt der Herstellung den Leistungsspezifikationen entsprechen, verschlechtern sich im Laufe der Zeit aufgrund der kalendarischen Lebensdauer und der wiederholten Ladezyklen, was zu einem allmählichen Verlust an Reservekapazität sowie zu einem Anstieg des Innenwiderstands führt. Während letzterer relativ einfach anhand von Kurzzeitmessungen abgeschätzt werden kann, erfordert erstere für eine genaue Berechnung eine vollständige Lade- oder Entladeexkursion, was nicht immer praktikabel ist. Diese Herausforderung hat zu einem wachsenden Interesse an der Schätzung des Gesundheitszustands (State-of-Health, SOH) und der Entwicklung von adaptiven Kalman-Filter-Formulierungen geführt, die neben den Zuständen auch die Batterieparameter berücksichtigen. Eine genaue Schätzung des aktuellen Innenwiderstands ist für das BMS zur Festlegung von Leistungsgrenzen von großem Nutzen.

Drei Diagramme, die den tatsächlichen und den geschätzten prozentualen Ladezustand, den Endwiderstand und den Gesundheitszustand über die Zeit anzeigen.

SoH-Schätzung einer Batterie mithilfe eines adaptiven Kalman-Filters in Simscape Battery.

Eine Schätzung des SOH ist subjektiver als eine Schätzung des SOC, wobei es keine allgemeingültige Übereinkunft darüber gibt, wie der SOH zu definieren ist. Infolgedessen kann jedes Unternehmen seine eigene spezifische Methode zur Quantifizierung einer SOH-Schätzung verfolgen, sodass es unmöglich ist, Standardlösungen für alle Bereiche zu verwenden. Mithilfe von Simulink und Simscape lassen sich individuell erstellte Algorithmen zur SOH-Schätzung entwickeln und simulieren, die der unternehmensspezifischen Interpretation des Batteriezustands entsprechen.

Die wichtigsten Aspekte

  • Simscape Battery verfügt über einen SOH-Schätzer-Block, der einen Kalman-Filter verwendet.

Modellgestützte Parameteridentifizierung von gesunden und gealterten Li-Ionen-Batterien für Elektrofahrzeuganwendungen

Simscape Battery bietet vorgefertigte Bibliotheksblöcke für den Zellenausgleich, die Batterieladung und den Batterieschutz.

Zellenausgleichsfunktionen sorgen für einen einheitlichen SOC in allen Zellen, indem die überschüssige Ladung durch einen Ableitwiderstand abtransportiert wird. Solche Ausgleichsmaßnahmen sind notwendig, um die Lebensdauer von Zellen zu verlängern, die durch Überladung oder Entladung beschädigt werden können. Mehrere Zellen verbessern die Kapazität, wenn die Zellen ausgeglichen sind. 

Ein Diagramm, das den Ladezustand von zwei Zellen über einen bestimmten Zeitraum vergleicht.

Zellenausgleich in Simscape Battery als Funktion des SOC und der Zeit.

Die Batterieladung wird mit einem Algorithmus für Konstantstrom/Konstantspannung (CC-CV) gesteuert. Dies ist ein gängiger Ansatz, der die Lebensdauer der Batterie verlängert, indem er Überstrom und Überspannung beim Laden verhindert. Während des Ladevorgangs wird der Strom begrenzt, bis eine vorgegebene Spannung erreicht ist.

Ein Diagramm, das den Betrieb des CC-CV-Algorithmus im Konstantstrom- und Konstantspannungsmodus zeigt.

Batterieladung in Abhängigkeit von der Zeit mithilfe eines CC-CV-Algorithmus in Simscape Battery.

Der Schutz der Batterie erfordert eine regelmäßige Überwachung von Strom, Spannung und Temperatur. Simscape Battery bietet hierfür Blöcke, die Sie in Ihre BMS-Algorithmen einbauen können.

Ein Modelldiagramm zur Batterieüberwachung.

In ein BMS-Modell implementierte Batterieüberwachungsblöcke.

Die wichtigsten Aspekte

  • Simscape Battery bietet Blöcke zum Ausgleichen von Zellen, zur Strom- und Spannungsregelung sowie zur Überwachung von Spannung, Strom und Temperatur.

Entwicklung von Batteriemanagementsystemen in Simulink

Abschnitt

Desktop-Simulation

Mit der Desktop-Simulation in Simulink können Sie die funktionalen Aspekte Ihrer Batteriesystementwicklung überprüfen. Auf dem Desktop werden das Batteriesystem, die Umgebung und die Algorithmen mithilfe von Verhaltensmodellen simuliert. Beispielsweise können Sie aktive und passive Zellenausgleichskonfigurationen sowie Algorithmen untersuchen, um die Eignung jedes Ausgleichsansatzes für eine bestimmte Anwendung zu bewerten. Sie können die Desktop-Simulation verwenden, um neue Entwicklungsideen zu untersuchen und mehrere Systemarchitekturen zu testen, bevor Sie sich auf einen Hardware-Prototypen festlegen. Ebenso ist es möglich, Anforderungsprüfungen in Desktop-Simulationen durchzuführen, z. B. können Sie überprüfen, ob Schütze am Öffnen oder Schließen gehindert werden, wenn ein Isolierungsfehler erkannt wird.

Die Fähigkeit, realistische Simulationen durchzuführen, die für die Entwicklung von BMS-Regelungssoftware von zentraler Bedeutung sind, beginnt mit einem genauen Modell des Batteriepacks. Oftmals werden Batterien mithilfe von Finite-Elemente-Analyse-Modellen (FEA) entworfen, die die physikalische Konfiguration der Batterien berücksichtigen und ihre elektrothermochemischen Eigenschaften erfassen. Obgleich sich diese Modelle hervorragend für die Entwicklung und Optimierung der chemischen Zusammensetzung und der Geometrie eines Batteriesatzes eignen, benötigen Regelungsingenieure jedoch Modelle, die besser für die Konzeption auf Systemebene und die Softwareentwicklung geeignet sind. 

„Viele unserer ersten Batteriemodelle waren empirisch und verfügten über eine ideale Spannungsquelle und eine feste Impedanz. In der Zwischenzeit verwenden wir sehr viel komplexere Modelle nach Ab-Initio-Prinzipien, wodurch wir wertvolle Erkenntnisse über die Batterie als elektrochemisches Gerät gewinnen konnten. Mithilfe von Simulink erstellten wir hochentwickelte Ersatzschaltbildmodelle, die die Leistung bei verschiedenen Ladezuständen, Entladungsraten, Temperaturen und Alterungsgraden vorhersagen können.“

„Wir haben einen ähnlichen Ansatz verwendet, um sicherheitskritische Simulationen durchzuführen, mit denen wir die Kühlleistung innerhalb der Batterie vorhersagen und somit sicherstellen konnten, dass die Batteriepacks nicht überhitzten . Die Erfassung aller physikalischen, chemischen und wärmetechnischen Übertragungseffekte in mehreren Domänen würde in der Regel ein Finite-Elemente-Analyseprogramm und einen erheblichen Aufwand erfordern. Mit den Tools von MathWorks konnten wir Analysen durchführen und Erkenntnisse gewinnen, die zu bedeutenden Fortschritten in der Batterietechnologie geführt haben.“

Die wichtigsten Aspekte

  • Simscape Battery bietet ein genaueres Modell für Batteriepacks.

Bei der Entwicklung von BMS-Algorithmen in Simulink können Sie Ersatzschaltbilder verwenden, um das thermoelektrische Verhalten der Batteriezelle zu simulieren. Das Ersatzschaltbild besteht typischerweise aus einer Spannungsquelle, einem Serienwiderstand und einem oder mehreren parallel geschalteten Widerstandskondensator-Paaren. Die Spannungsquelle liefert die Leerlaufspannung, während die anderen Komponenten den Innenwiderstand und das zeitabhängige Verhalten der Zelle modellieren. Diese Ersatzschaltbildelemente sind im Allgemeinen von der Temperatur und dem Ladungszustand (SOC) abhängig. Da diese Abhängigkeiten für jede chemische Zusammensetzung einer Batterie einzigartig sind, müssen sie mithilfe von Messungen an Batteriezellen desselben Typs ermittelt werden, für die der Regler entwickelt werden soll. Mithilfe von Optimierungen in Simulink und MATLAB können Sie ein Ersatzschaltbild über Modellkorrelation mit experimentellen Daten parametrieren.

Simulink-Screenshot, der das Ersatzschaltbild einer Batterie zeigt.

Ersatzschaltbild einer Batterie mit drei Zeitkonstanten, Innenwiderstand und Leerlaufpotential.

Die wichtigsten Aspekte

  • Verwenden Sie die Optimierung in Simulink und MATLAB, um ein Ersatzschaltbild der Batteriezelle zu parametrieren.

Automatisierung der Parameterschätzung eines Batteriemodells

Schätzung von Batteriemodellparametern mithilfe einer Mehrschichttechnik: Ein Beispiel anhand einer Lithium-Eisenphosphat-Zelle

Neben dem Modell des Batteriepacks sind für realistische Simulationen von Batteriesystemen genaue Modelle der Schaltungskomponenten erforderlich, die das Batteriesystem mit der Stromquelle und der Last verbinden. Simscape Electrical, ein Add-on-Produkt für Simulink, bietet Ihnen umfassende Bibliotheken aktiver und passiver elektrischer Komponenten, die für den Aufbau eines kompletten Batteriesystemschaltkreises benötigt werden, wie z. B. das analoge Frontend für den Zellenausgleich. Die Ladequelle kann eine Gleichstromquelle sein, z. B. eine Photovoltaikanlage (PV), oder eine Wechselstromquelle, bei der der Strom gleichgerichtet wird. 

Die Simulation auf Systemebene mit Simulink und Simscape ermöglicht es Ihnen, eine komplexe Ladequelle um die Batterie herum zu konstruieren und das Batteriesystem unter verschiedenen Betriebsbereichen und Fehlerbedingungen zu validieren. Die Last des Batteriepacks kann dabei auf ähnliche Weise modelliert und simuliert werden. So kann beispielsweise der Batteriepack über einen Wechselrichter mit einem Permanentmagnet-Synchronmotor (PMSM) in einem Elektrofahrzeug (EV) verbunden sein. Mit der Simulation können Sie den Betrieb des Elektrofahrzeugs durch verschiedene Fahrzyklen variieren und die Wirksamkeit des BMS bei veränderten Betriebsbedingungen evaluieren.

Die wichtigsten Aspekte

  • Verwenden Sie Optimierungen in Simulink und MATLAB, um ein Ersatzschaltbild der Batteriezelle zu parametrieren.

Eine Hochspannungsbatterie speist den IPMSM über einen gesteuerten dreiphasigen Wechselrichter

Wenn Sie Desktop-Simulationen in Ihre Testverfahren einbeziehen, können Sie Testfälle erstellen und ausführen, um das Batteriesystem entlang aller möglichen Zweige der Logik und Regelung geschlossener Kreisläufe zu testen – ein Abdeckungsgrad, der beim Testen mit Hardware selten erreicht wird. Bei diesem Ansatz dient das Simulationsmodell als ausführbare Spezifikation, die die Entwicklung und das Testen des Batteriesystems steuert. Mit Simulink lassen sich Tests über Desktop-Simulationen mit einer Reihe von Funktionen durchführen:

  • Integrieren Sie Anforderungen, wie z. B. Grenzwerte, Toleranzen, logische Prüfungen und zeitliche Bedingungen, in das Modell mit der Möglichkeit zur Rückverfolgung zu den ursprünglichen Spezifikationen.
  • Erstellen Sie komplexe Sequenzen simulationsbasierter Tests zur Durchführung von Funktions-, Baseline-, Äquivalenz- und Back-to-Back-Tests.
  • Verfolgen Sie branchenübliche Metriken wie die Abdeckung von Entscheidungen, Bedingungen, die Abdeckung von modifizierten Bedingungen/Entscheidungen (MC/DC) sowie die Abdeckung von relationalen Grenzen.
  • Generieren Sie Testeingaben, um eine vollständige Modellabdeckung und individuelle Ziele zu erreichen.
  • Verwenden Sie formale Methoden, um versteckte Entwicklungsfehler zu ermitteln, die zu Integer-Überlauf, toter Logik und Division durch null führen.
Schematische Darstellung der Algorithmen eines Batteriemanagementsystems.

BMS-Algorithmen und Anlagendynamik, einschließlich Batteriepack, Schütz, Wechselrichter und Ladegerät, modelliert in Simulink.

Wenn das zu entwickelnde Batteriesystem Sicherheitsanforderungen erfüllen muss, können Sie auf formalen Methoden basierende Tests in Ihren Softwareentwicklungsprozess gemäß Standards wie IEC 61508, IEC 61851 und ISO® 26262 integrieren.

Abschnitt

Echtzeit-Simulation von Batteriesystemen 

Nach der Validierung durch Desktop-Simulation können Simulink-Modelle zur Generierung von C und HDL-Code für Rapid Prototyping (RP) oder Hardware-in-the-Loop (HIL)-Tests verwendet werden, um die BMS-Algorithmen in Echtzeit weiter zu validieren. Mit RP generieren Sie anstelle von handschriftlichem Steuerungs-Softwarecode für Echtzeittests Code aus Ihrem Reglermodell und stellen diesen auf einem Echtzeitrechner bereit, der die Funktionen des Produktionsmikrocontrollers ausführt. Mit der automatischen Codegenerierung können so im Modell vorgenommene Algorithmusänderungen innerhalb von wenigen Stunden anstatt von mehreren Tagen auf Echtzeit-Hardware getestet werden. Ferner können Sie von Simulink aus mit der Echtzeit-Regelungshardware interagieren, um Algorithmusparameter zu ändern und Testdaten zu protokollieren.

Wie beim Rapid Prototyping wird auch bei HIL-Tests Code aus einem Simulink-Modell generiert und auf einem Echtzeit-Computer bereitgestellt. Im Falle von HIL-Tests wird Code aus den Batteriesystemmodellen und nicht aus den Modellen der Regelungsalgorithmen generiert, wodurch eine virtuelle Echtzeitumgebung geboten wird, die Batteriepack, aktive und passive Schaltungselemente, Lasten, Ladegerät und andere Systemkomponenten darstellt. In dieser virtuellen Umgebung können Sie die Funktionalität des BMS-Reglers in Echtzeit validieren, bevor Sie einen Hardware-Prototyp entwickeln – und das in einer Umgebung, in der die Hardware nicht beschädigt wird.

Tests, die während der Desktop-Simulation entwickelt wurden, können in die HIL-Tests übernommen werden, um sicherzustellen, dass die Anforderungen im weiteren Verlauf des BMS-Designs erfüllt werden. Obwohl HIL-Tests in erster Linie zum Testen von Code verwendet werden, der auf einem Mikrocontroller oder FPGA läuft, können Sie stattdessen auch ein Rapid-Prototyping-System wie Simulink Real-Time™ und Speedgoat®-Zielhardware verwenden und es mit der HIL-Konfiguration verbinden, bevor die Hardware für den Produktionsregler ausgewählt wird.

Die Echtzeitsimulation, die sowohl Rapid Prototyping als auch HIL-Tests umfasst, bietet Ingenieuren der leistungselektronischen Regelungstechnik zusätzliche Erkenntnisse darüber, wie sich eine BMS-Entwicklung in der Hardware verhält. Sowohl bei RP als auch bei HIL besteht das Ziel darin, einen Aspekt des Gesamtkonzepts in Hardware zu emulieren: den BMS-Regler in RP und das Gleichgewicht des Batteriesystems in HIL. Hierbei bietet die Echtzeitsimulation eine Reihe von Vorteilen bei der BMS-Entwicklung, die Ihnen Folgendes ermöglichen:

  • Durchführung von RP, um mit der Validierung der Algorithmen zu beginnen, bevor die endgültige Regler-Hardware ausgewählt wird
  • Nutzung der Flexibilität eines Echtzeit-Testsystems zur schnellen Entwicklungsiteration und für schnelle Tests
  • Durchführung von HIL-Tests, bevor die Prototyp-Hardware des Batteriesystems verfügbar ist
  • Verwendung einer Kombination aus RP- und HIL-Tests, um BMS-Algorithmen für Testfälle zu erproben, die schwierig und teuer sein oder zur Zerstörung führen können, wenn die tatsächliche Hardware verwendet wird
Ein Anlagenmodell in Simulink wird auf einem Speedgoat-Echtzeitcomputer bereitgestellt, während die BMS-Algorithmen auf einem Mikrocontroller zum Einsatz kommen. Die beiden sind zu Testzwecken miteinander verbunden.

Hardware-in-the-Loop (HIL)-Tests von Software für Batteriemanagementsysteme. Der BMS-Code wird aus in Simulink modellierten BMS-Algorithmen generiert und auf einem Texas Instruments® C2000 Mikrocontroller eingesetzt. Das Anlagenmodell (Batteriepack, Schütz, Wechselrichter, Ladegerät) wird dazu in Simulink modelliert. Code wird generiert und eingesetzt, um auf einem Speedgoat-Echtzeitrechner mit Batterie-Emulator zu laufen.

Durch die Wiederverwendung von Desktop-Simulationsmodellen in Simulink zur Generierung von Code für Echtzeitsimulationen können Sie die gesamte Entwicklungszeit verkürzen. Mit dem generierten C/C++ und HDL-Code können Sie auf Computern arbeiten, die für Echtzeitleistung optimiert sind. Der aus den Simulink-Modellen für Echtzeitsimulationen generierte Code enthält Schnittstellen, über die Sie die Steuerungsparameter während der laufenden Echtzeitsimulation anpassen können.

Während der Hardware-Testphase können Änderungen am Code des Reglers zu Verzögerungen und zusätzlichen Risiken führen. Die manuelle Änderung des Codes, die Neukompilierung und die Implementierung in den entsprechenden Mikrocontroller oder FPGA erfordert viel Zeit – möglicherweise sehr viel Zeit, wenn Sie als Entwickler von Regelungsalgorithmen auf einen Software- oder Hardware-Ingenieur angewiesen sind, der diese Änderungen vornimmt. Je nach Umfang der erforderlichen Änderungen besteht auch die Gefahr, dass bei der Implementierung des Codes neue Probleme auftreten.

Anstatt Code-Updates für die Regler-Software von Hand zu schreiben, können Sie mithilfe von Simulink Code generieren, der in Echtzeit auf einem speziellen Computer ausgeführt wird und zur Kommunikation mit der Testhardware Hochgeschwindigkeits-E/A verwendet. Neben dem Wegfall der manuellen Codierung und der damit verbundenen Zeitverluste besteht ein weiterer Vorteil dieses RP-Ansatzes darin, dass Sie Änderungen an der BMS-Software validieren können, indem Sie das Simulationsmodell zunächst auf dem Desktop ausführen, um zu überprüfen, ob keine weiteren Probleme aufgetreten sind.

Da die Konstruktion und Modifizierung von Hardware-Prototypen für ein Batteriesystem sehr aufwändig und die Reparaturen oft kostspielig sind, ist es nicht immer möglich, solche Prototypen an dem elektrischen System zu testen, in dem das Batteriesystem eingesetzt werden soll. In Anbetracht dieser Einschränkungen können selbst kleine konzeptionelle Änderungen die Entwicklungszeitpläne gefährden. Hinzu kommt, dass BMS-Konzepte in der Regel nur in kleinen Schritten weiterentwickelt werden, weil die zuständigen Teams tiefgreifende Änderungen gegenüber dem vorherigen Konzept als zu riskant ansehen.

Mit Simulink können Sie C/C++ und HDL-Code aus dem Modell der Hardware in Ihrem Batteriesystem und dem übergeordneten System, zu dem es gehört, einschließlich der Versorgung und der Last, generieren. Sobald Sie diesen Code auf einem Echtzeitrechner einsetzen, können Sie Echtzeit-Simulationen der Hardware mit Ihrem Regler-Code durchführen, bevor Sie den Controller in einem Batteriesystem-Prototypen testen. Dadurch können Sie Fehler in der Entwicklung schon finden und korrigieren, bevor diese möglicherweise teure und schwer zu ersetzende Prototyp-Hardware beschädigen. Sie können auch Hardwaredesignfehler aufdecken, wie z.B. die falsche Dimensionierung von Komponenten.

Viele HIL-Echtzeitsysteme, darunter auch die Speedgoat-Zielhardware, verfügen über Batterie-Emulatoren, mit denen Sie tragbare Batteriestromversorgungen emulieren, Batteriestapel für Elektrofahrzeuge nachbilden oder auch Stromaufnahme emulieren können, um Batterien im Ladezustand zu simulieren.

Testen von Batteriemanagementsystemen mit Hardware-in-the-Loop

Abschnitt

Hardware-Implementierung

In der Hardware-Implementierungsphase werden die mittels Desktop-Simulation, RP und HIL verifizierten Regelungsmodelle von Simulink verwendet, um effizienten, serienreifen Code für das BMS zu generieren. Bei Bedarf kann die Seriencodegenerierung in Workflows integriert werden, die den formalen Zertifizierungsstandards der Automobil-, Luft- und Raumfahrtbranche und anderen reglementierten Industriezweigen entsprechen.

Simulink generiert lesbaren, kompakten und effizienten C/C++ und HDL-Code aus Reglermodellen für die Implementierung auf Produktionsmikrocontrollern, FPGAs und ASICs. Im Gegensatz zu dem für RP generierten Code enthält der für den Produktionseinsatz generierte Code nicht die zusätzlichen Schnittstellen, die zur Unterstützung der Echtzeit-Überwachung, Parameterabstimmung und Datenprotokollierung erforderlich sind. Mit den Optimierungseinstellungen lassen sich die generierten Funktionen, Dateien und Daten exakt steuern, um die Effizienz des Codes zu verbessern und die Integration mit vorhandenem Code, Datentypen und Kalibrierungsparametern zu erleichtern.

Bei der Processor-in-the-Loop (PIL)-Simulation läuft der C/C++ oder HDL-Code auf dem Mikrocontroller oder FPGA, während das Gerät mit einem Simulink-Modell der BMS-Hardware schrittweise ausgeführt wird. Dadurch wird das Risiko der Beschädigung eines Hardware-Prototyps während der ersten Evaluierungen des BMS-Codes eingeschränkt. Obwohl PIL-Simulationen nicht in Echtzeit ausgeführt werden, sind sie bitgenau und ermöglichen es Ihnen, Ihren Code unter einer Reihe von Bedingungen zu überprüfen und sicherzustellen, dass er ordnungsgemäß ausgeführt wird, sobald er auf dem realen System eingesetzt wird.

Ob Desktop-, RP-, HIL- oder PIL-Simulationen: Sie alle ermöglichen die Verifikation und Validierung der Regelungsalgorithmen für das BMS. Mit Simulink können Sie dieselben Algorithmen als Grundlage für die Generierung von produktionsfertigem Code verwenden – entweder optimierten und stabilen C/C++ Code zur Implementierung auf Mikrocontrollern oder synthetisierbaren HDL-Code für die FPGA-Programmierung oder ASIC-Implementierung. Die automatische Codegenerierung eliminiert manuelle Übersetzungsfehler der Algorithmen und erzeugt C/C++ und HDL Code mit numerischer Äquivalenz zu den Algorithmen, die Sie in Simulink validiert haben. Indem Sie Ihre Regelungsalgorithmen unter allen möglichen Betriebs- und Fehlerbedingungen simulieren, erhöhen Sie die Sicherheit, dass der generierte Code mit denselben Bedingungen im realen System zurechtkommt, auch wenn Sie nicht auf alle Bedingungen testen können. Falls Hardwaretests später anzeigen, dass Algorithmusänderungen erforderlich sind, können Sie einfach die Algorithmen in Ihrem Modell modifizieren, Simulationstestfälle erneut ausführen, um die Richtigkeit der Änderungen zu überprüfen, und neuen, aktualisierten Code generieren. Der gesamte C/C++ und HDL-Code ist komplett portabel, lässt sich mit zahlreichen Optionen optimieren und ist bidirektional auf das Simulink-Modell zurückverfolgbar.

Screenshots, die die Bereitstellung des BMS-Codes auf dem Mikrocontroller C2000 von Texas Instruments zeigen.

Automatisch generierter BMS-Produktionscode aus in Simulink modellierten BMS-Algorithmen. Der Code wird auf einem C2000-Mikrocontroller von Texas Instruments bereitgestellt. 

Generieren von Produktionscode