Durch Fahrassistenzsysteme sowie Komfort- und Sicherheitsausstattungen wird die elektronische Vernetzung in Pkw immer komplexer. Der Datenaustausch der verschiedenen Komponenten ist wesentlich umfangreicher als bisher und muss dennoch fehlerfrei sein. Die Bussysteme CAN, LIN, MOST, FlexRay und Ethernet vernetzen mehr als 100 Steuergeräte, die in einem Fahrzeug zusammenspielen müssen. TZM hat einen innovativen Prozess entwickelt, um diese zahlreichen Datensender und -empfänger effektiv zu testen. Dabei wird auf einen hohen Automatisierungsgrad gesetzt. Die Testabläufe sind soweit wie möglich standardisiert und berücksichtigen dennoch die individuellen Anforderungen des Systems. So können einfache LIN-Slaves ebenso getestet werden wie komplexe Gateways, die mehrere oft verschiedene Bussysteme verbinden.

Motivation zur Testautomatisierung

Die stetige Zunahme von Funktionen und Steuergeräten in Fahrzeugen ist offensichtlich. Als weitere Herausforderungen kommt die Verkürzung von Entwicklungszeiten hinzu. Dies bedingt, dass immer mehr Steuergeräte mit immer umfangreicheren Funktionen in immer kürzerer Zeit getestet werden müssen. Doch nicht nur die Menge bringt das manuelle Testen an seine Grenzen. Je nach Fahrzeugausstattung ergeben sich unzählige Kombinationsmöglichkeiten, oft verbunden mit unterschiedlichen Funktionsumfängen. Dies führt zu einer Variantenbildung, das heißt, von einem Steuergerät existiert in der Regel nicht nur eine einzige Version, sondern oft zwei bis drei, in manchen Fällen sogar noch mehr. Seit vielen Jahren ist es daher üblich, sogenannte Testskripte zu verwenden, die immer gleiche Testfälle selbstständig durchführen. Dies spart Zeit und sichert aufgrund der Reproduzierbarkeit die Qualität der Testergebnisse ab. Somit ist es möglich, selbst Untersuchungen mit langen Durchlaufzeiten zu realisieren, bei Bedarf auch über Nacht.

Testskripte mit einer Vielzahl an Testfällen laufen bereits heute oft Stunden durch, ohne dass ein Testingenieur aktiv werden muss. Somit kann er sich um mehrere Testaufbauten parallel kümmern. Analysen der bisherigen Testabläufe bei TZM haben gezeigt, dass Testskripte allein nicht ausreichen, um die Herausforderungen durch die hohe Zahl an Steuergeräten und Varianten zu beherrschen. Eine weitere wesentliche Möglichkeit, Testzeiten zu reduzieren, bietet eine Verkürzung der Liegezeiten, in denen ein Steuergerät nicht für die Tests verwendet wird. Sie entstehen, wenn eine Testreihe beendet und eine neue noch nicht gestartet wurde. Diese Zeiten reichen von wenigen Minuten, etwa wenn sich der Testingenieur gerade um einen anderen Test kümmert, bis hin zu mehreren Stunden, wenn ein Test in der Nacht oder am Wochenende zu Ende geht.

Durch hochautomatisiertes Testen ist es möglich, diese Liegezeiten zu minimieren. Dabei wird eine nahezu beliebige Anzahl von Tests parallel durchgeführt. Mit Fortschreiten der Integrationskette werden neue Tests automatisch gestartet. Der Eingriff des Testingenieurs ist nur noch während des Rüstens und bei der Auswertung erforderlich.

Schritt für Schritt zum automatisierten Test

Gemeinsam mit dem Ingenieurbüro Brinkmeyer und Partner hat TZM die Vision vom hochautomatisierten Testen umgesetzt. Das Konzept basiert auf dem De-facto-Standard für das Testen vernetzter Systeme, der Entwicklungs- und Test-Software CANoe der Vector Informatik GmbH und des zugehörigen VT-Systems als Hardware-in-the-Loop(HIL)-Umgebung, erweitert um ein Steckplatzmodul zur konfigurierbaren Anbindung der Steuergeräte, Bild 1. Damit ist ein System entstanden, mit dem Schritt für Schritt die Integration vom einzelnen Steuergerät bis zum umfassenden Verbundtest durchgeführt werden kann.

BILD 1
figure 1

Leiterplatte mit Schaltmatrizen für bis zu sechs Steuergeräte (© TZM)

Automatisierte Integrationskette

Hochautomatisiertes Testen beginnt bereits bei der Vorbereitung. Der Testingenieur kann sich anhand eines Touchscreen-Monitors stets ein aktuelles Bild vom Rüstzustand des Testaufbaus machen, Bild 2. Falls nicht alle für die Untersuchung notwendigen Steuergeräte bestückt sind, muss er die Bauteile manuell ergänzen. Die Anzeige auf dem Monitor wird automatisch aktualisiert. Haben alle Steuergeräte den für den Test notwendigen Stand, kann das Testsystem Softwareaktualisierungen automatisch durchführen. Hardwareaktualisierungen erfordern manuelles Nachbestücken.

BILD 2
figure 2

Der Touchscreen-Monitor gibt einen Überblick über den Bestückungsstatus (© TZM)

Nach Abschluss der Vorbereitung kann mit dem Testen begonnen werden. Entsprechend der Notwendigkeiten können Tests ausgewählt, parametriert und der Testablauf gestartet werden. Zunächst wird damit begonnen, diverse Funktionen einzelner Steuergeräte zu prüfen. Dies kann parallel oder sequenziell erfolgen. Nach Abschluss der Steuergeräteeinzeltests folgt die nächste Integrationsstufe. Die Steuergeräte werden dabei mittels einer Schaltmatrix zu einem System vernetzt. Die Integrationskette endet, wenn alle Steuergeräte im Fahrzeugverbund miteinander verknüpft sind. Die Integration erfolgt vollständig automatisiert. Nach Abschluss aller Tests liegt am Ende ein umfassender Testbericht der Integrationskette vor.

Automatisierung allein reicht nicht aus

Je höher der Automatisierungsgrad wird, desto größer ist der Aufwand bei der Entwicklung eines geeigneten Testsystems. Um das für den Kunden optimale Kosten-Nutzen-Verhältnis zu erreichen, gilt es, zwischen dem Entwicklungsaufwand für das Testsystem und dem Aufwand für die Tests zu unterscheiden. Es reicht nicht aus, die Betrachtung allein auf die Automatisierung zu beschränken. Vielmehr gilt es, alle Schritte entlang des Testprozesses sowie der -entwicklung umfassend zu betrachten. Bereits bei der Testentwicklung lässt sich der Aufwand erheblich minimieren und damit die Rentabilität der Testautomatisierung steigern. Entscheidend ist es dabei, wiederkehrende Testschritte zu identifizieren, diese zu abstrahieren und durch geeignete Parameter vielfach verwendbar zu gestalten. Auf diese Weise kann eine große Zahl unterschiedlicher Testfälle mit einer überschaubaren Zahl parametrierbarer Testschritte innerhalb kurzer Zeit umgesetzt werden.

Qualitätssicherung bei der Testentwicklung

Zu einer ganzheitlichen Betrachtung des Testprozesses gehört auch die Auswertungsphase nach Ablauf aller Tests. Die Analyse der Testberichte lässt sich mit aussagekräftigen Testfällen deutlich vereinfachen und beschleunigen. Viel entscheidender ist jedoch die Verlässlichkeit der Testfälle. Dabei geht es nicht nur darum, so viele Auffälligkeiten wie möglich aufzudecken. Vielmehr geht es darum, zu ermitteln, ob der vermeintliche auch ein tatsächlicher Fehler ist. In der täglichen Praxis wird sehr viel Zeit darauf verwendet, das Auftreten eines Fehlers zu belegen oder Testergebnisse in Zweifel zu ziehen. Deshalb ist die Qualitätssicherung während der Entwicklung, beispielsweise durch entwicklungsbegleitende Tests der Testfälle, unerlässlich. Bei TZM spielen dabei grundlegende Standards aus der Softwareentwicklung, wie Code-Analyse und Unit-Tests, eine wichtige Rolle.

Flexible Anschlussmöglichkeiten

Steuergeräte unterscheiden sich in ihrer Funktion und, für die Entwicklung eines Testsystems entscheidend, in der Art und der Anzahl ihrer Anschlüsse. Das hochautomatisierte Testsystem für Komponenten- und Verbundtests verfügt deshalb an jedem Steckplatz über viele verschiedene Anschlussmöglichkeiten, Bild 3. Neben unterschiedlichen Versorgungs-spannungen und Busschnittstellen stehen auch Möglichkeiten zur Verfügung, Eingänge zu stimulieren und Ausgangssignale zu erfassen. Dabei ist es möglich, neben einfachen Signalen zusätzlich komplexe Umgebungsmodelle, die beispielsweise mithilfe des Programms Simulink erstellt worden sind, zu verwenden. Auf diese Weise lässt sich nicht nur die Reaktion des Prüflings auf ein einzelnes Ereignis, sondern auch das Verhalten beim Eintreten bestimmter Szenarien testen.

BILD 3
figure 3

Steckplatz zum Anschließen eines Steuergeräts (© TZM)

Testauswertung

Bei der Auswertung des Tests werden Auffälligkeiten genau bewertet. Ziel ist es, Fehler aufseiten der Testumgebung auszuschließen. Dabei muss beispielsweise die Frage geklärt werden, ob der Fehler im Steuergerät oder bei der Parametrierungen innerhalb des Systems zu finden ist. Auf Grundlage der Bewertung erstellen erfahrene Testingenieure sogenannte Tickets im Bug-Tracking-System. Sollte es sich um ein Problem beim Testsystem handeln, wird der Test nach entsprechenden Korrekturen wiederholt. Erfahrungen aus der Auswertung fließen außerdem in die kontinuierliche Verbesserung des Testsystems ein.

Integration in Entwicklungsprozesse

Ein hochautomatisiertes Testsystem kann nicht isoliert betrachtet werden. Vielmehr muss das Testsystem in den gesamten Entwicklungsprozess eingebunden werden. Wesentliche Eigenschaft des Testsystems ist seine Parametrierbarkeit. Die erforderlichen Kenngrößen stammen in der Regel aus der Testspezifikation und dem System- beziehungsweise Komponentenlastenheft. Wann welche Tests durchgeführt werden können, ist dem Testplan zu entnehmen und hängt vom Entwicklungsfortschritt (Feature Rollout) ab. Durch die Anbindung der Testumgebung an das sogenannte Application-Lifecycle-Management können die erforderlichen Informationen automatisch und ohne Übertragungsfehler an das Testsystem weitergegeben werden. In der höchsten Ausbaustufe des Systems beginnen die Tests, sobald eine neue Softwareversion für eine Komponente verfügbar ist. Umgekehrt stehen Testergebnisse zur Verfügung, sobald ein Test abgeschlossen ist. Eine durchgängige Nachverfolgbarkeit ist selbstverständlich.

Gut gerüstet in die Zukunft

Die hohen Investitionen in ein hochautomatisiertes Testsystem lassen sich nur rechtfertigen, wenn es über einen möglichst langen Zeitraum seinen Nutzen behält. Während des Lebenszyklus einer elektrisch-elektronischen Architektur nimmt der Funktionsumfang zu. Neue Steuergeräte und Schnittstellen kommen hinzu. TZM hat sich deshalb für einen modularen Aufbau entschieden. Dieser besteht aus kleinen Gruppen von Schalt- und Anschlusselementen, die auf mehreren Ebenen verteilt und zu Gruppen zusammengefasst sind. Über ein Stecksystem können sie an das Steuermodul des Testsystems angeschlossen werden. Bei Bedarf kann das Testsystem skaliert und um die erforderlichen Module erweitert werden.

Fazit

Der Testprozess wird genau dokumentiert und läuft nach einem festgelegten Muster automatisiert ab, bei dem sowohl die einzelnen Steuergeräte selbst als auch deren Vernetzung geprüft werden. Das Testsystem steuert der Reihe nach erst einzelne Steuergeräte für den Komponententest an und schaltet danach Teil- sowie zum Abschluss Gesamtverbundtests, Bild 4. Einmal richtig eingerichtet, laufen diese Prüfungen mehrere Tage, ohne dass die Notwendigkeit eines menschlichen Eingriffs besteht. Mit dem Testsystem kann eine deutliche Verkürzung der Durchlaufzeiten erreicht werden. Die Durchführung eines Vernetzungstests bei TZM gibt so schnellen, genauen und zielführenden Aufschluss über Fehlerpotenziale oder zeigt, dass ein System wie gewünscht funktioniert und im täglichen Einsatz genutzt werden kann.

BILD 4
figure 4

Stationen während des Testprozesses (© TZM)