EUtech Scientific Engineering entwickelt eine Regelung für ein Brennstoffzellensystem
Von Francesco Turoni, EUtech, Abas Sadatsakak, EUtech, Michael Mlynski, EUtech, Alexander Hlawenka, EUtech, und Michael Schreiber, EUtech
![eu_pem_fuelcel_w.gif eu_pem_fuelcel_w.gif](https://ch.mathworks.com/de/company/technical-articles/eutech-scientific-engineering-develops-a-fuel-cell-system-controller/_jcr_content/mainParsys/image_0.adapt.full.medium.gif/1469941520964.gif)
PEM-FCs stellen große Herausforderungen an die Regelungstechnik. Die in die Brennstoffzelle einströmende Gasmischung unterliegt strengen Anforderungen, gleichzeitig darf die Lastdynamik den Betrieb des Zellstapels weder beeinträchtigen noch destabilisieren – ein fehlerhafter Betrieb könnte den Stapel sogar zerstören. Die Elemente zur Gaserzeugung und -reinigung sowie zur Wärmeintegration sind wesentliche Bestandteile des gesamten Brennstoffzellen-Systems und erhöhen die Komplexität des Regelungsproblems.
EUtech Scientific Engineering sollte eine Brennstoffzellen-Regelung entwerfen – noch bevor die Brennstoffzellenanlage verfügbar war. Es gab also keine Möglichkeit, den Regler an einer realen Anlage unter echten Betriebsbedingungen zu testen. Die Lösung lag im Einsatz von Model-Based Design und Rapid Prototyping: Das Team entwickelte die Regelalgorithmen an einem Simulink-Modell der Brennstoffzelle. Durch Simulation und automatische Codegenerierung konnten so auch aufwändige Testreihen schnell, reproduzierbar und ökonomisch durchgeführt werden.
Modellierung des Brennstoffzellen-Systems
Die Ingenieure modellierten das Brennstoffzellen-System in Simulink mit Hilfe thermodynamischer Modelle aus FClib, einer als Third-Party Produkt erhältlichen Simulink-Bibliothek für thermodynamische Berechnungen und Modellierung von Brennstoffzellensysstemen. FClib ist mit xPC Target kompatibel und eignet sich daher auch für Hardware-in-the-Loop (HIL) Simulationen. Das Brennstoffzellen-System umfasst mehrere Dutzend Komponenten. Um die Entwicklung zu vereinfachen, wurde das System in acht funktionale Subsysteme aufgeteilt:
- Brenner
- Medienzufuhr
- Dampfreformer
- Gasreinigung
- Brennstoffzellen-Stack
- Elektrisches System und Spannungswandler
- Kühlkreislauf
- Systemüberwachung und -bilanzierung
Da das Brennstoffzellen-Modell sowohl für die Systemevaluierung als auch zur Optimierung eingesetzt werden sollte, wurden darin physikalische Erhaltungssätze und umfassende thermodynamische Zustandsfunktionen implementiert. Die Massen- und Energiebilanzen werden automatisch sowohl auf der Komponenten- als auch auf der Systemebene berechnet.
Polymer-Elektrolyt Membran-Brennstoffzellen
![eu_pem_pem_w.gif eu_pem_pem_w.gif](https://ch.mathworks.com/de/company/technical-articles/eutech-scientific-engineering-develops-a-fuel-cell-system-controller/_jcr_content/mainParsys/panel_0/panelParsys/image_0.adapt.full.medium.gif/1469941517327.gif)
In einem PEM-FC-System werden Wasserstoff und Sauerstoff an der Kathode (1) zu Wasser rekombiniert. Dabei entstehen elektrischer Strom und Wärme. Von der Anode, dem negativen Pol der Brennstoffzelle (2), fließen die Elektronen in einen externen Stromkreis. Dem Katalysator an der Kathode (Pluspol) wird Sauerstoff zugeführt (3).
Die Kathode leitet die Elektronen aus dem externen Stromkreis zum Katalysator, wo diese mit Protonen und Sauerstoff zu Wasser reagieren. Als Elektrolyt fungiert eine Austauschmembran (4), die positiv geladene Ionen durchlässt, Elektronen aber blockiert. In der Regel werden mehrere solcher Brennstoffzellen zu einem Zellstapel zusammengestellt.
Der Reglerentwurf
Das Verhalten des Brennstoffzellen-Systems ist ausgeprägt nichtlinear und diskontinuierlich. Während der Anfahrsequenz durchläuft die Steuerung mehrere Phasen, in denen zunächst Luft, dann Wasserdampf und schließlich Gas durch die Gaserzeugung strömen, was zu abrupten und unstetigen Eigenschaftsänderungen führt. Die Reglerparameter müssen daher ständig zustandsabhängig neu gesetzt werden. Zudem müssen die in der Gaserzeugung und der Gasreinigung stattfindenden, nichtlinearen chemischen Reaktionen berücksichtigt werden.
Angesichts der Komplexität des Brennstoffzellen-Systems entschied sich das Team, die Regelung schrittweise zu entwickeln. Man entwarf zunächst alle Subsysteme und verknüpfte diese anschließend mit den erforderlichen Steuerelementen aus einer Simulink-Bibliothek.
Die Steuerung bestand aus vier funktionellen Gruppen:
- Zustandsautomat
- Steuerungen
- Regelkreise
- Alarmüberwachung
Während des Betriebs werden die Subsysteme Gaserzeugung, Gasreinigung und Brennstoffzelle in verschiedenen Zuständen betrieben. Der jeweilige Betriebszustand wird von den Medien (Gas oder Dampf), den Lastbedingungen und dem Betriebsmodus (Anfahren, Normalbetrieb, Abschalten und Notlauf) bestimmt. Die Überwachungslogik hierfür wurde als Zustandsautomat in Stateflow® modelliert.
Die einzelnen Regelkreise sind eng miteinander gekoppelt; durch eine klar definierte Überwachungslogik ließ sich die gegenseitige Abhängigkeit jedoch deutlich reduzieren. Um sanfte Übergänge sicher zu stellen, wurden die Reglerparameter für jeden einzelnen Zustand separat abgestimmt. In den meisten Fällen genügte dazu ein gut eingestellter und gegen Selbstverstärkung (Wind-Up) geschützter PI-Regler.
Wegen des ausgesprochen nichtlinearen Verhaltens des Brennstoffzellen-Stacks konnten für diesen keine klassischen PID-Regler eingesetzt werden. Aus diesem Grund implementierten die Ingenieure einen auf dem Scalar Fuzzy Control basierenden MIMO-Fuzzyregler, der über seine Regelbasis auf den Brennstoffzellen-Stack abgestimmt wurde. Mit Hilfe zustandsabhängiger Zuordnungstabellen, die in Stateflow erstellt wurden, wurden die Sollwerte (Sollzustände) für die Aktuatoren festgelegt (Abb. 1).
Entwurf der Alarmüberwachung
Die System- und Alarmüberwachung greift nicht nur in Notfall-Situationen ein, sondern stellt auch sicher, dass der Prototyp der Brennstoffzelle jederzeit innerhalb sicherer Grenzen betrieben wird. Dies war auch aus Kosten- und Sicherheitsgründen gefordert: Einige der eingesetzten Komponenten waren Einzelanfertigungen, die nur mit hohem Kosten- und Zeitaufwand zu ersetzen gewesen wären.
Um Anpassungen ohne Codeänderungen vornehmen zu können wurde eine generische Alarmverwaltung entwickelt, die es erlaubt, Alarme über die Steuerung des Prüfstands zu löschen, neu anzulegen, zu parametrieren sowie zu aktivieren und zu deaktivieren. Diese Funktionalität erweist sich als besonders wertvoll, wenn neue oder komplexe Systeme vor Ort unter engen Zeitvorgaben getestet werden müssen.
Erzeugung von Embedded Code
Nach gründlichen Tests des Prozessmodells der Brennstoffzelle und dessen Steuerung erzeugte das Team den Embedded Code mit Real-Time Workshop® und Stateflow® Coder. Dazu wurde das Reglermodell an den I/O-Schnittstellen vom Prozessmodell getrennt. Dies gelang problemlos mit Hilfe von Datenkonvertierungs-Blöcken, die Signalwerte des CAN-Busses automatisch in physikalische Werte umwandeln und umgekehrt.
Der automatisch erzeugte Programmcode wurde kompiliert und dann mit xPC Target als Echtzeit-Betriebsumgebung getestet. Die umfangreiche Steuerungsfunktionalität erforderte leistungsfähige Hardware, hier kam die PC-kompatible xPC TargetBox® zum Einsatz. Die Kommunikation zwischen Prozess (Anlagenmodell) und Regelungssystem wurde über einen CAN-Bus realisiert, wodurch der Aufwand für die Verkabelung gering gehalten wurde.
Hardware-in-the-Loop Tests
Nach dem Kompilieren und der Installation des ausführbaren Programms auf dem Embedded System konnten die Echtzeittests der Reglersoftware beginnen. Die fertige Brennstoffzelle war zu diesem Zeitpunkt noch nicht verfügbar und außerdem wäre das Risiko, den teuren Prototypen mit ungetesteter Software zu beschädigen, einfach zu hoch gewesen.
Als alternativer Ansatz boten sich daher HIL-Tests an (Abb. 2). Das Prozessmodell musste dazu ausreichend genau sein, um die Embedded Software in allen relevanten Betriebszuständen testen zu können.
Die Echtzeitsimulation des Prozesses wurde auf einem handelsüblichen Industrie-PC eingerichtet. In der HIL-Simulation wurde das Regelungssystem sowohl im Normalbetrieb als auch unter Extrembedingungen innerhalb der Betriebsgrenzen voll ausgetestet. Dazu schrieb das Team Testskripte, die automatisch in Batch-Läufen abgearbeitet wurden und so die Entwicklungszeit signifikant verkürzten. Das Code Review und die Tests bestätigten die Effizienz des erzeugten Programmcodes.
Die Simulationsergebnisse stimmten gut mit den später gemessenen Verläufen am realen Prozess überein. Abbildung 3 zeigt, wie gut die Temperatur der Gaserzeugung auch unter extremen Lastschwankungen eingehalten wird.
![eu_pem_fig3_w.gif eu_pem_fig3_w.gif](https://ch.mathworks.com/de/company/technical-articles/eutech-scientific-engineering-develops-a-fuel-cell-system-controller/_jcr_content/mainParsys/image_3.adapt.full.medium.gif/1469941515067.gif)
Veröffentlicht 2007 - 91480v00