# Hardware in the Loop

Hardware in the Loop (HiL, auch HIL, HitL, HITL) bezeichnet ein Verfahren, bei dem ein eingebettetes System (z. B. reales elektronisches Steuergerät oder reale mechatronische Komponente, die Hardware) über seine Ein- und Ausgänge an ein angepasstes Gegenstück angeschlossen und getestet wird. Letzteres heißt im Allgemeinen HiL-Simulator und dient als Nachbildung der realen Umgebung des Systems. Hardware in the Loop ist aus Sicht des Tests eine Methode zum Absichern von eingebetteten Systemen, zur Unterstützung während der Entwicklung sowie zur vorzeitigen Inbetriebnahme von Maschinen und Anlagen. Wird nicht die Zielhardware eingesetzt und lediglich eine Simulation der Software durchgeführt, spricht man von Software in the Loop.

## Anwendungsbereiche

HiL wird in den folgenden Gebieten eingesetzt.

### Eingebettete Systeme

Das zu steuernde System (z. B. Auto) wird über Modelle simuliert, um die korrekte Funktion des zu entwickelnden Steuergerätes (z. B. Motorsteuergerät) zu testen. Die HiL-Simulation muss meist in Echtzeit ablaufen und wird in der Entwicklung benutzt, um Entwicklungszeiten zu verkürzen und Kosten zu sparen. Insbesondere lassen sich wiederkehrende Abläufe simulieren. Das hat den Vorteil, dass eine neue Entwicklungsversion unter den gleichen Kriterien getestet werden kann wie die Vorgängerversion. Somit kann detailliert nachgewiesen werden, ob ein Fehler beseitigt wurde oder nicht (siehe auch Fehlernachtest, englisch re-testing).
Die Eingänge des Steuergeräts werden mit Sensordaten aus dem Modell stimuliert. Um die Reglerschleife (englisch loop) zu schließen, wird die Reaktion der Ausgänge des Steuergeräts, z. B. das Ansteuern eines Elektromotors, in das Modell zurückgelesen.
Der HiL-Simulator besteht also aus einem Rechner, der die Echtzeitbedingungen der jeweiligen Anwendung erfüllen kann (zunehmend auch PC-basiert), digitalen und analogen Ein- und Ausgabe-Schnittstellen zum Steuergerät und Ersatzlasten, die der steuergeräteinternen Endstufendiagnose simulieren, dass alle Aktoren korrekt angeschlossen seien.
Die Tests an realen Systemen lassen sich dadurch stark verringern und zusätzlich lassen sich Systemgrenzen ermitteln, ohne das Zielsystem (z. B. Auto und Fahrer) zu gefährden.
Die HiL-Simulation ist immer nur eine Vereinfachung der Realität und kann den Test am realen System deshalb nicht ersetzen. Falls zu große Diskrepanzen zwischen der HiL-Simulation und der Realität auftreten, sind die zugrundeliegenden Modelle in der Simulation zu stark vereinfacht. Dann müssen die Simulationsmodelle weiterentwickelt werden.

### Automobilbereich

Mit der rapiden Zunahme von elektronischen Steuergeräten und steigendem Funktionsumfang, insbesondere in der Antriebselektronik, mit einer Fülle neuer regelbasierter Funktionen, wurde Anfang der 1990er Jahre Hardware in the Loop als Maßnahme zur Verbesserung der Testmöglichkeiten im Automobilbereich eingeführt. In dieser Domäne wird HiL in drei wesentlichen Ausprägungen für den Test angewandt:
* Adaption eines elektronischen Systems (z. B. Motor-, Getriebe- oder Bremsenelektronik) an einen HiL-Simulator als sogenannter Komponenten- oder Modulprüfstand.
* Adaption mehrerer elektronischer Systeme an einen bzw. mehrere gekoppelte HiL-Simulatoren als sogenannter Integrationsprüfstand. Dabei gehören die elektronischen Systeme im Allgemeinen zum gleichen Teilbereich des Automobils (Antriebselektronik, Komfort- bzw. Karosserieelektronik, Infotainmentelektronik). Die Verwendung der Bezeichnung HiL im Zusammenhang mit Komfort- und Infotainmentelektronik ist umgangssprachlich zwar üblich, aufgrund des Fehlens echter Regelkreise bei diesen Systemen jedoch nur in manchen Fällen korrekt.
* Adaption von Realmessfahrten an einen bzw. mehrere gekoppelte HiL-Simulatoren als sogenannter Realfahrprüfstand.
Bei der Durchführung von Tests mit HiL werden die in der Anfangsphase manuell durchgeführten Tests durch automatische Testabläufe ersetzt. Dieses Verfahren nennt man Testautomatisierung. Dadurch lassen sich Tests nahezu beliebig parametrisieren und präzise wiederholen. Eine Kontrolle der Fehlerabstellung ist somit wesentlich besser möglich. Die Testautomatisierung hat dem HiL-Testverfahren zum Durchbruch verholfen und aus dem entwicklungsbegleitenden Testverfahren einen festen Bestandteil des Erprobungsprozesses gemacht.
Durch die mittlerweile hohe Güte der verwendeten Modelle im Fahrdynamik- oder auch Motorbereich findet das HiL-Verfahren seit Anfang der 2000er Jahre immer mehr Anwendung in der Entwicklung neuer Regelalgorithmen. Das führt mittlerweile zu erheblichen Verkürzungen der Entwicklungszeiten.
Neben der reinen Anbindung des elektronischen Steuergeräts an einen HiL-Simulator gibt es auch die Variante des mechatronischen Verfahrens. Hier wird auch ein Teil der Mechanik in die Regelschleife integriert. Dieses Verfahren wird oft bei elektronischen Lenksystemen verwendet, wobei ein Teil des Lenkgestänges als reale Mechanik an den HiL-Simulator gekoppelt ist.

### Maschinen- und Anlagenbau

Im Maschinen- und Anlagenbau wird für Hardware in the Loop in der Regel eine speicherprogrammierbare Steuerung über einen Feldbus an ein Physikmodell einer Maschine bzw. Anlage angeschlossen. Man verwendet dafür auch die Bezeichnung Anlagensimulation. Die Anlagensimulation enthält in der Regel eine Abbildung des Verhaltens sowie des Materialflusses. Über eine optionale 3D-Visualisierung sowie Ausgaben der Physiksimulation kann dann ein Beobachter die Maschinenfunktion überwachen.
Zweck ist die Erstellung und Erprobung von Steuerungsprogrammen, bevor die Bauteile einer Maschine gefertigt und montiert sind. Dadurch lässt sich die Inbetriebnahmephase verkürzen. Ein weiterer Vorteil liegt in der Möglichkeit, ohne Gefahr für den Bediener Grenzsituationen zu testen, wie z. B. das Fahren auf Hardware-Endschalter.
Künftige Anwendungsfelder können die Ferndiagnose und Fernwartung von Maschinen und Anlagen mit einschließen. Über eine Telekommunikationsleitung (z. B. über Internet) wird der aktuelle Zustand einer Steuerung vom Maschinenbetreiber in ein Service-Center beim Maschinenhersteller übertragen. Dort können dann anhand des physikalischen Modells erste Diagnosen gestellt und Empfehlungen abgeleitet werden.

### Luft- und Raumfahrt

In der Luft- und Raumfahrt werden in HiL-Systemen Zustände getestet, die am Boden nicht immer nachzubilden sind. Für die Zulassung der Flugsteuerung wird bereits für den Superjet 100 der Iron Bird durch den virtuellen oder Electronic Bird ersetzt.

### Leistungselektronik

Für die Simulation von leistungselektronischen Anlagen werden zunehmend HiL-Systeme eingesetzt. Die Anwendungsfälle sind zumeist:
* Virtuelle Erstinbetriebnahmen, um später im Feld Zeit zu sparen. Der Vorteil gilt besonders für Offshoreanlagen mit schlechter Erreichbarkeit.
* Automatisierte Softwaretests zur Sicherstellung der Softwarequalität.
* Zertifikattransfers für Zulassungs-/Homologationsprüfungen. Die rechtlichen Randbedingungen für die Anwendung bei Zulassungsprüfung sind derzeit noch in der Entstehung (Stand 2020).
Die HiL-Systeme können eine Einzelanlage wie z. B. einen Windenergiekonverter nachbilden, größere Systeme können komplette Microgrids simulieren. Dies umfasst dann beispielsweise eine kombinierte Simulation von kompletten Windparks, Speichersysteme, Solarpanels und Notstromaggregaten.
Als Besonderheiten für die HiL-Echtzeitsimulationen von IGBT-gestützten Umrichtern sind die hohen Hardwareanforderungen. Die Rechenschritte müssen sehr viel kürzer sein als die zumeist im Kilohertz-Bereich befindliche PWM-Frequenz. Die Signalerfassung muss daher zwingend auf einem schnellen Prozessor erfolgen, üblicherweise einem FPGA. Die Berechnung des Modells kann downgesampled mit einem Mittelwertmodell auf einem langsameren Coprozessor erfolgen – oder bei entsprechender Modelloptimierung ebenfalls auf dem FPGA.

## Systemarchitektur von HiL-Simulatoren

Die Systemarchitektur von marktüblichen HiL-Simulatoren variiert, nachfolgend eine Auswahl:
* Nvidia: Die HiL-Simulatoren dienen primär für Entwicklungen von Fahrassistenzsystemen und autonomen Fahrfunktionen. Primär GPU-basiert wird ähnlich zu einem Rennspiel auf einer Spielekonsole ein 3D-Modell von Straße/Umgebung berechnet. Sämtliche Fahrzeugsensoren (Lidar/Radar/etc.) werden direkt mit gerechneten Modelldaten gespeist, die angeschlossenen Fahrzeug-Steuergeräte können feldnah betrieben werden. Verschiedene Wettersituationen und Streckenprofile können mit physikalisch vorhandenen Steuergeräten automatisiert gefahren werden.
* dSPACE: Die größeren Echtzeitsimulatoren basieren zumeist auf einer Kombination von Intel-Xeon- und FPGA-Prozessoren. Die Systeme können modular in Racks anwendungsspezifisch zusammengestellt werden. Die Modellentwicklung erfolgt in MATLAB/Simulink mit eigenen Bibliotheken zur Schnittstellendefinition, während herstellereigene Software die Benutzeroberfläche zur Steuerung und Visualisierung bereitstellt. Die Systeme von dSpace sind vor allem im Automotive-Bereich weit verbreitet.
* OPAL-RT: Häufig werden Intel-Xeon-Prozessoren in Kombination mit FPGA-Boards verwendet, wobei auch hier, ähnlich zu den Simulatoren von dSPACE, anwendungsspezifische Systeme erstellt werden können. Die Entwicklungsumgebung ist ebenfalls MATLAB/Simulink, welche auch als Benutzeroberfläche dient. Daneben wird auch herstellereigene Software für die Visualisierung verwendet. Die Echtzeitsimulatoren von OPAL-RT werden hauptsächlich in der Energietechnik und in der Leistungselektronik eingesetzt.
* Typhoon HiL: FPGA in Kooperation mit Coprozessoren, softwareseitig gibt es proprietäre Modelle mit Schnittstellen und Einbindemöglichkeiten zu C/Python/Matlab Programmen. Schwerpunkt liegt auf Leistungselektronik. Das Angebot geht von kleineren Echtzeitsimulatoren bis zu Custom-Anlagen für große Microgrids. SiL-Lösungen sind ebenfalls möglich.
* PLECS: RT-Box, Xilinx Zynq System-on-Ship mit FPGA und mehreren CPU-Cores, softwareseitig gelöst durch Matlab-Anbindung mit zusätzlichen proprietären Zusatzbibliotheken oder mit komplett eigenständiger Software. Schwerpunkt liegt auf Leistungselektronik. SiL-Lösungen sind ebenfalls möglich.
* Micronova: Diverse Systeme zur Simulation von Fahrzeugkomponenten, Lösungen für elektrifizierte Antriebe sind vorhanden.
* Siemens: Für einfachere Anwendungen werden industrieweit oft die klassischen, hauseigenen SPS-Lösungen von Siemens verwendet. Neuere Produkte des Konzerns umfassen die virtuelle Inbetriebnahme von vollautomatisierten Fertigungsstraßen inkl. umfangreichen Softwarebibliotheken.
Die Mehrheit der Simulatoren simuliert Matlab-Modelle. Diese werden zumeist mit third-Party-Software oder hauseigenen Compilern für die verwendeten Prozessorsysteme (FPGA, GPU, ARM etc.) kompiliert und auf den HiL-Speicher transferiert. Nach der Kompilation wird auf dem Nutzer-PC ein SCADA-Interface geöffnet, um manuell oder automatisiert mit dem Modell zu interagieren. Bei den meisten Marktlösungen basieren die SCADAs auf der Programmiersprache Python.
Durch die meist offen gestalteten Interfaces und die weite Verbreitung von Python können zumeist mehrere Tools für SCADA und/oder Testautomatisierungstools verwendet werden. Ein Beispiel ist das im VW-Konzern und in Deutschland weit verbreitete Micronova EXAM. Viele HiL-Hersteller bieten auch eigene Lösungen an, Endkunden-Eigenentwicklungen sind ebenfalls üblich.
In vielen Fällen bestehen größere industrielle HiL-Systeme aus Hardware und Software von verschiedenen Herstellern. Spezielle Module übernehmen die Buskommunikation zu den getesteten Steuergeräten, andere HiL-Module rechnen in Echtzeit die Physikmodelle, wiederum andere Module erledigen das physikalische Signalrouting zwischen den Steuergeräten und den Simulatoren. Für kleinere Projekte gibt es jedoch auch all-in-one-Lösungen.

## HiL versus reale Welt

Durch den technologischen Fortschritt und die Entwicklung von leistungsstarken Mikroprozessoren ist es mittlerweile Stand der Technik, dass HiL-Systeme zunehmend die reale Umwelt ersetzen. Gerade für die Entwicklung elektronischer Steuergeräte wird mit Hilfe des HiL-Simulators so die Erstellung einer idealen Testumgebung im Labor ermöglicht. Je nach Systemanforderungen bewegt sich die Berechnungszeit eines kompletten Simulationszyklus im Bereich von 1 ms, bei Spezialanwendungen reicht es bis in den Mikrosekundenbereich.
Unabhängig von den technischen Möglichkeiten stellt der HiL-Simulator jedoch immer nur einen begrenzten und großteils reduzierten Ausschnitt der realen Umgebungswelt dar. Insbesondere bei Funktionen, bei denen der Kunde in Interaktion mit der Technik steht, stößt man schnell an die Grenzen der Simulationsfähigkeit.
Eine Umweltsimulation basiert immer nur auf den vorliegenden Erkenntnissen, erhobenen Mess- und Erfahrungswerten, welche in vereinfachte mathematische Formeln überführt werden und sich dann als Modelle im HiL-Simulator wiederfinden. Auf Grund dessen und trotz der Fortschritte in der Umweltsimulation kann der HiL-Simulator nur in einem begrenzten Rahmen den Test in der realen Welt ersetzen.