Diese Website nutzt Cookies, um gewisse Funktionen gewährleisten zu können. Durch die Nutzung der Website stimmen Sie unseren Datenschutz-Richtlinien zu.
Nachrichten und Informationen zu Test- und Messtechnik für Elektronik in Entwicklung, Produktion und Service.  

Newsletter abonnieren

Alle 14 Tage alle News im Überblick
captcha 
Bitte geben Sie auch den angezeigten Sicherheitscode ein.

Aktuelle Test- und Messtechnik-News

Hintergrund: Test von PSI5-Sensoren leicht gemacht

22. Juni 2021 - Die Anzahl an Sensoren beim Automobilbau nimmt mit den immer größer werdenden Ansprüchen an Sicherheit stetig zu. Sensoren wie Positionssensoren, Geschwindigkeitssensoren, Drucksensoren, Beschleunigungssensoren, Temperatursensoren bilden die Grundlage vieler aktiver und passiver Sicherheitssysteme und sind daher aus einem Auto nicht mehr wegzudenken. Um die Funktionalität und Sicherheit solcher Sensoren zu garantieren, müssen diese durch Tests abgesichert werden.

Bei vielen Projekten heißt es dann wieder aufs Neue: Testumgebung implementieren, Testspezifikationen schreiben, Testskripte schreiben. Das alles kostet Zeit. Häufig werden diese Schritte für jeden Sensor komplett neu aufgebaut, obwohl die Schnittstelle viele Sensoren oftmals dieselbe PSI5-Schnittstelle nutzen. Auch ein großer Satz an Testfällen ist für viele Sensoren identisch oder zumindest ähnlich. Auf dieser Grundlage ist die Idee eines Basis-Test-Sets (BTS) entstanden.

Generische Testumgebung

Als Hardwarekomponente für diese generische Testumgebung dient die bereits existierende iPSI5sim zum Testen und Simulieren der PSI5-Schnittstelle, die ebenfalls von iSyst Intelligente Systeme GmbH entwickelt wurde und schon in zahlreichen Projekten im Einsatz ist. Die iPSI5sim ermöglicht es verschiedenste PSI5-Sensoren zu simulieren und somit diese automatisiert zu testen. Dies umfasst das Simulieren der Grundfunktionalität des Sensors, das Injizieren von elektrischen Fehlern, das Simulieren von Protokollfehlern, als auch das Nachbilden von Sensorfehlern.

Die iPSI5sim arbeitet hierbei als Übersetzer zwischen der Ansteuerung per CAN und der Ausgabe des PSI5-Protokolls. Sowohl die Vorgabe von Sensorwerten als auch die Fehlerinjektionen werden von der Testumgebung per CAN-Bus an die iPSI5sim übertragen, während diese die Simulation von ein oder mehreren Sensoren für das „Device under Test“ (DuT) realisiert. In einem HiL-Aufbau kann so unter Echtzeitbedingungen eine direkte Reaktion des Prüflings aufgezeichnet und getestet werden. 

Die Testumgebung des PSI5 Basis-Test-Sets besteht aus Python-Bibliotheken für die Ansteuerung der iPSI5sim, zur Kommunikation mit dem DuT (PSI5-Master), sowie für die projektspezifischen Sensordaten und Anforderungen an das zu testende Gerät.

Bild 1

Abbildung 1: Basis-Test-Set Testumgebung

Die iPSI5sim Bibliotheken beinhalten alle Funktionen zur Ansteuerung der Simulationsbox (ipsi5sim_utils), sowie alle boxspezifischen Parameter und Variablen, die zur Verwendung dieser notwendig sind (ipsi5sim_param). Der Aufbau der Bibliotheken für den PSI5 Master ist äquivalent zu den iPSI5sim-Bibliotheken. Alle Funktionen zum Kommunizieren mit dem Master, sowie alle notwendigen Parameter und Variablen sind dort implementiert (psi5master_utils und psi5master_param). Als letzter Teil der Testumgebung existieren noch die Angaben der projektspezifischen Parameter. Im Python Module psi5_project_config sind alle Kanäle mit den dazugehörigen Slots definiert.

Alle Bibliotheken kommen schlussendlich im Python Module psi5 zusammen, welches zur Entwicklung und Implementierung von Testfällen verwendet wird. Die Testumgebung ist so aufgebaut, dass einem Sensor/Slot nur Funktionen zur Verfügung stehen, die für diesen auch tatsächlich angewendet werden können, wie z. B. das Senden von Raw Data. Einem Kanal stehen dagegen nur kanalspezifische Funktionen zur Verfügung, wie z.B. eine Leitungsunterbrechung. Somit wird eine fehlerhafte Bedienung der PSI5-Sensoren vermieden.

Die Module in Abbildung 1 haben unterschiedliche Farben. Grün steht hierbei für Module, die zum Testen nicht mehr angepasst werden müssen, sie sind sofort einsatzfähig. Die gelben Module können bei Bedarf erweitert werden, wenn z.B. weitere Funktionalitäten für das Projekt benötigt werden. Die Module, die auf jeden Fall zum Projektbeginn konfiguriert werden müssen, sind rot eingefärbt. Diese enthalten sensor-, kunden- und projektspezifische Daten, wie z.B. Variablen der ECU, Wertebereich des Sensors oder auch die Anzahl der Sensoren pro Kanal.

BTS-Configurator

Viele Sensordaten, die zur Konfiguration der Simulationsbox-Inbetriebnahme benötigt werden, werden auch zum Testen benötigt. Um redundante Arbeiten, die nicht selten zu Fehlern führen, beim Eingeben der Parameter für die Konfiguration der iPSI5sim Box und der oben beschriebenen Testumgebung zu vermeiden, existiert hierfür eine GUI, der BTS-Configurator.

Die GUI dient auch zur Unterstützung bei der richtigen Eingabe der Konfigurationsparameter. Sind diese alle ausgefüllt, kann die iPSI5sim Box konfiguriert werden. Zusätzlich kann auch das Python Modul psi5_project_config für die Testumgebung komplett generiert werden. Für das zweite Python Modul, das zum Projektbeginn noch ausgefüllt werden muss – psi5master_param – kann mit Hilfe der GUI eine initial vorbefüllte Vorlage erstellt werden, die bereits die Anzahl der Kanäle und dazugehörigen Slots berücksichtigt. Einträge, die hier noch manuell getätigt werden müssen, wie z.B. Variablen, Fehlerspeichereinträge, etc., sind entsprechend gekennzeichnet, was das abschließende Ausfüllen vereinfacht. Mit der GUI lassen sich auch problemlos innerhalb eines Projektes mehrere Simulationsboxen sowie Varianten anlegen, je nachdem was benötigt wird.

Testspezifikationen

Jeder Testfall beginnt mit einer Testspezifikation. Wie bereits erwähnt, ähneln sich die Testfälle bei Sensoren hierbei oftmals. Das Basis-Test-Set beinhaltet etwa 40 Testspezifikationen. Da so gut wie alle Testfälle in der Praxis projektspezifische Anteile enthalten, handelt es sich hierbei um generische Vorlagen, die noch für das jeweilige Projekt angepasst werden.

Die Testspezifikationen sind nach dem Konzept des „Keyword-Driven Testing“ aufgebaut, d.h. jeder Testschritt besteht aus einem Keyword, ggf. einem Eingabeparameter und dem erwarteten Ergebnis. Das Keyword ist dabei äquivalent zum Funktionsaufruf im psi5-Modul.

Zusätzlich enthält jede Spezifikation projektspezifische Felder, wie Testcase-ID, Anforderungen, ASIL-Level, Version, sowie eine Testidee und Testvor- und nachbedingungen.

Innerhalb der Testspezifikationen sind die Testschritte unterschiedlich formatiert, um das Anpassen und Überarbeiten zu vereinfachen. Hierbei wird unterschieden zwischen verschiedenen Optionen:

  • Testschritte, die auf jeden Fall durchgeführt werden müssen und in der Basis-Test-Set Testumgebung als Funktion bereits existieren.
  • Testschritte, die erfahrungsgemäß benötigt werden, aber nicht generell für jedes Projekt.
  • Testschritte, die benötigt werden, für welche jedoch noch kein Keyword existiert, da es nicht PSI5-spezifisch ist.
  • Szenarien, die je nach Projekt unterschiedlich eintreten können. Hierbei sind i. d. R. zwei Abläufe vorgeschlagen, aus denen gewählt werden kann. Bei Bedarf kann ein eigener Ablauf definiert werden.

Mit Hilfe dieser Vorlagen lassen sich schnell projektspezifische Testspezifikationen erstellen, vom einfachen Funktionstest (Smoketest) bis hin zu umfangreichen Fehlertests.

Testskripte

Sind alle Testfälle spezifiziert, geht es an die Implementierung der Skripte. Zu jeder Testspezifikation bietet das Basis-Test-Set auch ein dazugehöriges Skript an. Der Aufbau der Skripte ist hierbei identisch zu den Testspezifikationen. Somit können alle Anpassungen, die in einer Spezifikation vorgenommen werden, auch effizient im Skript übernommen werden. Mit Hilfe dieser Skriptvorlagen verfügt man schnell über erste lauffähige Testskripte und Ergebnisse, die man je nach Bedarf beliebig erweitern kann.

Fazit

Der Weg von einer Anforderung, über das Erstellen von Testfällen und Testspezifikationen, bis hin zu lauffähigen Testskripten ist oft lang und zeitintensiv. In Abbildung 2 ist im oberen Teil vereinfacht der durchschnittliche Arbeitsprozess dargestellt, der durchlaufen wird, um Sensoren automatisiert zu testen. Der untere Prozess zeigt den deutlich effizienteren Arbeitsprozess, der bei Verwendung des Basis-Test-Sets im Vergleich durchlaufen werden kann.

 Bild 2

Abbildung 2: Prozess zur Fertigstellung von Sensortest im Vergleich mit Basis-Test-Set

In der Abbildung ist deutlich zu sehen, dass bei Verwendung des Basis-Test-Sets einige Arbeitspakete wegfallen, da diese bereits vorhanden und für alle Arten von PSI5-Sensoren anwendbar sind. Beim Spezifizieren von Testfällen und dem anschließenden Implementieren bietet das Basis-Test-Set bereits eine umfangreiche Auswahl, die lediglich projektspezifisch angepasst und/oder erweitert werden muss. Zusammenfassend kann gesagt werden, dass der Einsatz des Basis-Test-Sets die Fehleranfälligkeit bei Testimplementierungen durch die Vermeidung von Redundanz und die Unterstützung wiederverwendbarer Anteile stark minimiert und hierdurch signifikant zur optimalen Nutzung zeitlicher und finanzieller Ressourcen beiträgt.

Autor

Anna Neumann - iSyst Intelligente Systeme GmbH

www.isyst.de/



Weitere News zum Thema:

Aktuelle Termine

embedded world 2024
09. bis 11. April
zur Terminübersicht...
Control 2024
23. bis 26. April
zur Terminübersicht...
Automotive Testing Expo Europe
04. bis 06. Juni
zur Terminübersicht...

  Weitere Veranstaltungen...
  Messe-/Kongresstermine
  Seminare/Roadshows

 


Banner-Werbung