Schwerpunkte

Automatisierte HiL-Tests

Spezifizieren per Tool statt per Script

01. September 2021, 18:00 Uhr   |  Von Sebastian Stritz und Dr. Sadegh Sadeghipour

Spezifizieren per Tool statt per Script
© ra2 studio | Shutterstock

Das automatisierte Erstellen von Testfallspezifikationen verbessert die Effizienz von Hardware-in-the-Loop-Tests (HiL-Tests) deutlich. Mithilfe von Tool-Erweiterungen können ausführbare Testspezifikationen für automatisierte HiL-Tests sogar ohne Einsatz einer Skriptsprache erstellt werden.

HiL-Testsysteme (Hardware in the Loop) sind in der Industrie weit verbreitet und ermöglichen es, leistungsfähige Testumgebungen aufzubauen und die Testabdeckung zu erhöhen. HiL-Tests bieten im Vergleich zu anderen Testverfahren einige Vorteile. Gegenüber Tests in realer Umgebung erlauben HiL-Tests ein frühzeitiges Testen in allen Entwicklungsphasen. Außerdem ermöglichen sie eine bessere Reproduzierbarkeit von Testfällen, da die simulierte Umgebung des Testobjekts die Unabhängigkeit des Testprozesses von äußeren Faktoren, wie z. B. Wettereinflüssen, gewährleistet. Zusätzlich vermeidet die HiL-Testumgebung Risiken durch Schäden am Gesamtsystem und Unfälle beim Testvorgang, die durch etwaige Defekte entstehen können – eine zusätzliche Kostenersparnis.

Andere Testverfahren die ebenfalls Simulationstechniken nutzen, wie z. B. Software in the Loop (SiL) oder Model in the Loop (MiL), haben wiederum den Nachteil, dass die zu testende Software nicht auf der eigentlichen Hardware ausgeführt wird und ihr Zusammenspiel mit externen Komponenten nicht beobachtet werden kann. Außerdem bietet das HiL-Verfahren die Möglichkeit, das Verhalten des Testobjekts an seinen Belastungsgrenzen zu beobachten, etwa durch Stresstests.

Für den HiL-Test wird das zu testende Embedded-System (SUT, System Under Test) über seine Ein- und Ausgänge an einen HiL-Prüfstand angeschlossen, der die Systemumgebung des Testobjektes mithilfe von simulierten Sensoren, Aktoren sowie mechanischen und elektrischen Komponenten modelliert. Die Eingänge des Testobjektes werden anschließend mit Daten aus dem Umgebungsmodell stimuliert.

HiL-Tests werden für gewöhnlich unter Echtzeitbedingungen durchgeführt. Die Managementsoftware für die HiL-Infrastruktur wird daher oft auf echtzeitfähiger Hardware ausgeführt. Am Markt bieten unterschiedliche Hersteller Hard- und Software für HiL-Tests an. Allgemein verbreitet sind die Systeme des Unternehmens NI (früher National Instruments). Für die Verwaltung der HiL-Hardwarekomponenten bietet NI die Softwareumgebung VeriStand an.

Die Softwareumgebung bietet zahlreiche Steuerungs- und Managementfunktionen. VeriStand ermöglicht dem Testingenieur beispielsweise die Konfiguration von E/A-Kanälen, die Integration von Simulationsmodellen, die Datenprotokollierung, Stimuluserzeugung und die Kommunikation mit der Hardware des HiL-Systems. Darüber hinaus erlaubt es VeriStand, der Testumgebung benutzerdefinierte Funktionen hinzuzufügen. Dies ist zum Beispiel für die Optimierung der Erstellung von Testfallspezifikationen eine große Hilfe.

Eine zentrale Benutzeroberfläche für die Test-Engine

Die Komplexität, die wachsende Anzahl von Funktionen und damit von möglichen Eingangs- und Ausgangssignalen eines durchschnittlichen Embedded-Systems, wie z.B. eines Automotive-Steuergerätes, führt u. a. zu einer großen Anzahl an Testfällen. Um den gewaltigen Testumfang moderner elektronischer Systeme meistern zu können, ist eine hochgradige und durchgehende Automatisierung des Testprozesses unumgänglich. Grundlage einer solchen Testautomatisierung ist die Erstellung von Testfallspezifikationen.

In VeriStand können Testspezifikationen mithilfe von Programmier- und Skriptsprachen erstellt werden. Dies setzt beim Nutzer jedoch gewisse Programmierkenntnisse voraus und ist dazu relativ zeitaufwendig. Um eine einfache Möglichkeit zur Spezifikation von Testfällen für die automatisierte Durchführung in einer Hardware-in-the-Loop-Umgebung bereitzustellen, bietet es sich an, spezialisierte Tools in die Testumgebung zu integrieren. Dafür sind verschiedene Tools unterschiedlicher Hersteller auf dem Markt verfügbar. Auch Eigenentwicklungen können diese Funktion übernehmen. ITPower Solutions hat dafür das hauseigene Testtool ContinoProva über eine Anbindung an NI VeriStand für den Einsatz in einer HiL-Umgebung optimiert.
Das Tool ContinoProva wurde ursprünglich für den Einsatz in heterogenen Tool-Umgebungen konzipiert. Es ist spezialisiert auf die Automatisierung der Testausführung und Testevaluation. Aufgrund seiner offenen Client-Server-Architektur ist ein breiter Einsatz in nahezu allen Testumgebungen und in jeder Testphase möglich. Das Tool abstrahiert von den Benutzer- und Programmierschnittstellen der Testumgebung, in der es eingesetzt wird, und stellt eine einheitliche Oberfläche für die Spezifikation von Tests und die Steuerung angebundener Hardware- und Softwaretools bereit. Voraussetzung ist natürlich, dass angebundene Tools über entsprechende APIs (Application Programming Interface) verfügen.

Die Kommunikation von ContinoProva mit externen Tools erfolgt über sogenannte Services, die alle relevanten Funktionen und Methoden des entsprechenden Tools über dessen Programmierschnittstelle (API) aufrufen sowie dessen entsprechende Rückgabewerte empfangen können. Die Kapselung der Kommunikation in Services ermöglicht den Einsatz in unterschiedlichen Tool-Umgebungen.

ContinoProva bündelt die Testtools indem es dem Testingenieur eine zentrale Bedienoberfäche zum Steuern des HiL-Testsystems bietet und mit der HiL-Software kommuniziert – hier zum Beispiel mit NI VeriStand
© ITPower Solutions

Bild 1. ContinoProva bündelt die Testtools indem es dem Testingenieur eine zentrale Bedienoberfäche zum Steuern des HiL-Testsystems bietet und mit der HiL-Software kommuniziert – hier zum Beispiel mit NI VeriStand.

Bild 1 zeigt den schematischen Aufbau der HiL-Testumgebung von NI mit dem Testtool ContinoProva. Das Tool wird auf einem Windows PC ausgeführt. Dadurch können mithilfe des Tools ausführbare Testszenarien am PC spezifiziert und die Daten anschließend an das Echtzeitsystem zur weiteren Verarbeitung übergeben werden. Grundlage für die Kommunikation zwischen ContinoProva und VeriStand ist der implementierte Service, hier NI-HiL-Service genannt. VeriStand übernimmt als Test-Engine die Ansteuerung von und die Kommunikation mit der HiL-Umgebung und dem Testobjekt. Die Ausgangssignale und Daten des Testobjekts werden zur Bewertung und weiteren Verwendung über VeriStand an ContinoProva zurückgesendet.

Teststeuerung per Tool

Der NI-HiL-Service ermöglicht den Lese- und Schreibzugriff auf alle in einem VeriStand-Projekt verwendeten Kanäle und bietet zusätzlich Operationen zur Stimulierung und Aufzeichnung der Kanäle in einem gegebenen Zeitintervall an. Diese Kanäle dienen in VeriStand dem benutzerdefinierten Bereitstellen von Funktionen wie Echtzeitstimuluserzeugung, Datenerfassung für Messungen und Parameterdefinition.
Um die Kompatibilität von Werkzeugen im Entwicklungsprozess sicherzustellen und einen durchgehenden Datenaustausch zu ermöglichen, wurde der ASAM-Standard (Association for Standardisation of Automation and Measuring Systems) entwickelt. Dieser definiert Protokolle, Datenmodelle, Dateiformate und Schnittstellen (APIs) für die Softwareentwicklung und das Testen im Automotive-Umfeld.

Die Implementierung des NI-HiL-Services erfolgte auf der Basis des ASAM-Standards »ASAM AE XIL – Generic Simulator Interface«. Mit diesem können Ports konfiguriert, Daten aufgezeichnet und Variablen stimuliert werden. Es wurden in diesem Zusammenhang die gängigen Dateiformate des ASAM-Standards verwendet.

Die VeriStand Operationen ReadChannel und WriteChannel bilden die Grundpfeiler für die Spezifikation von Testfällen im weiter unten beispielhaft dargestellten Testszenario. Durch die Operation ReadChannel kann der aktuelle Wert des entsprechenden Kanals gelesen werden. Die Operation WriteChannel setzt den Kanal auf den angegebenen Wert.

Der HiL-Service bietet nun die Möglichkeit, für die Stimulation eines Kanals in einem gegebenen Zeitintervall, Signalwertverläufe aus allen gängigen ASAM-kompatiblen Dateiformaten zu lesen. Die Aufzeichnung eines Signalverlaufs erfolgt im ASAM-Dateiformat MDF4 (Measurement Data Format). Einen für VeriStand mit ContinoProva spezifizierten Test zeigt Bild 2. Er besteht, wie in der Baumstruktur auf der linken Bildseite dargestellt, aus mehreren Testgruppen, die wiederum mehrere Testsequenzen enthalten. Eine Testsequenz wird durch eine Folge von Testschritten gebildet, die sequenziell abgearbeitet werden. Testschritte sind die kleinsten Testausführungseinheiten. Die Operationen eines Testschrittes werden Testtasks genannt.

Das Tool ContinoProva zeigt die Testspezifikation für die Übergabe an NI VersiStand in einer Baumstruktur (links) dar. Die Parameter der Testtasks können im rechten Teil bearbeitet werden
© ITPower Solutions

Bild 2. Das Tool ContinoProva zeigt die Testspezifikation für die Übergabe an NI VersiStand in einer Baumstruktur (links) dar. Die Parameter der Testtasks können im rechten Teil bearbeitet werden.

Das Beispiel in Bild 2 zeigt den Test eines Motorsteuergeräts. Rechts im Bild 2 ist exemplarisch das Fenster zum Testtask »DesiredRPM = 4000« dargestellt. Die Motordrehzahl soll auf den definierten Wert gesetzt werden. In dem Testtask wird dazu die Operation WriteChannel aus dem NI-HiL-Service und der Wert 4000 für das Eingangssignal command_RPM aufgerufen. Mit diesem Verfahren können Testfälle für alle Komponenten und Tools in der HiL-Umgebung auf einfache Art erstellt und über die zentrale Benutzeroberfläche verwaltet werden.

Test-Engine reduziert den Testaufwand

Die beschriebene Anbindung eines Testtools an ein HiL-System mit NI VersiStand als Test-Engine reduziert den Testaufwand deutlich. Testressourcen, Zeit und Kosten für die Entwicklung und Pflege von Testprogrammen und -skripten können eingespart und die von dem Tool bereitgestellte Funktion kann für den Testprozess genutzt werden.

Der Testingenieur kann Testfälle mithilfe der Tool-GUI spezifizieren, verwalten und sofort in VeriStand zur Ausführung bringen. Durch die Auslagerung der Testspezifikation aus der technischen Infrastruktur des HiL-Systems können die Testfälle unter rein logisch-fachspezifischen Gesichtspunkten entworfen werden und sind damit unabhängiger von ihrer konkreten Implementierung. Dies erleichtert die Verwaltung der Testfälle zusätzlich. hs

Literatur

[1] Spillner, A.; Linz, T.: Basiswissen Softwaretest. dpunkt.Verlag, 2012, ISBN-10: 3864900247.
[2] ASAM, Association for Standardisation of Automation and Measuring Systems: www.asam.net/standards

Die Autoren

Sebastian-Stritz von ITPower
© ITPower Solutions

Sebastian-Stritz von ITPower.

Sebastian Stritz

arbeitet als Sales & Marketing Manager bei ITPower Solutions. Nach seiner Ausbildung zum IT-Systemkaufmann arbeitete er zunächst bei Sohnix im Vertrieb und betreute dort den Bereich Datacenter und Cloud. 2018 wechselte er zu ITPower Solutions und ist dort zuständig für die Bereiche Vertrieb, PR und Marketing.

Dr. SadeghSadeghipour von ITPower
© ITPower Solutions

Dr. SadeghSadeghipour von ITPower.

Dr. Sadegh Sadeghipour

arbeitet seit vielen Jahren in den Bereichen Entwicklung und Test von Embedded Systemen. Nach seinem Informatikstudium an der Technischen Universität Berlin war er zwischen 1995 und 2000 als Research Scientist bei DaimlerChrysler tätig. Er promovierte 1998 im Fach Informatik an der Technischen Universität Berlin. Im Juni 2000 gründete Dr. Sadeghipour die Firma IT Power Consultants, jetzt ITPower Solutions, in der er seither als Geschäftsführer tätig ist.

Auf Facebook teilen Auf Twitter teilen Auf Linkedin teilen Via Mail teilen

Das könnte Sie auch interessieren

Verwandte Artikel

National Instruments Germany GmbH