15. Mai 2018 Technologie

Virtuelle Absicherung: Concept in the Loop


Mit neuen Testmethoden noch früher Testen: So lassen sich schon in der Konzeptphase der Fahrzeugentwicklung effizient Fehler finden

Das Fahrzeug der Zukunft soll autonom fahren – alle Hersteller arbeiten derzeit an diesem Ziel. Eine der größten Herausforderungen dabei: Wie testet man ein autonomes Fahrzeug? Die neuen Fahrfunktionen steigern die Komplexität der Fahrzeugsoftware immer weiter. Und je mehr Verantwortung das Fahrzeug dem Fahrer abnimmt, umso besser muss sichergestellt sein, dass im Betrieb keine Fehler passieren.

Damit ein autonomes Fahrzeug am Markt zugelassen werden kann, müssen laut aktueller Studien mehr als 100 Millionen Testkilometer gefahren werden. Dies entspricht einer reinen Testzeit von etwa 2,3 Jahren – mit klassischen Methoden ist dies wirtschaftlich nicht mehr realisierbar.

Dazu kommen die Änderungen im Ökosystem der Automobilbranche: Testaufwände verschieben sich immer mehr in Richtung der Systemlieferanten. Diese müssen schon lange vor der Integration ihrer Systeme ins Gesamtfahrzeug sicherstellen, dass die entwickelten Funktionen im späteren Endprodukt fehlerfrei funktionieren.

Deshalb rückt die möglichst frühe Absicherung mithilfe von Simulation zunehmend in den Fokus: Statt am fertigen Fahrzeug zu testen, muss so viel Funktionalität wie möglich schon in früheren Entwicklungsphasen getestet werden. Dazu werden Virtualisierungsverfahren genutzt, um möglichst viele verschiedene Szenarien zu testen und eine hohe Testabdeckung zu erreichen.

Zu den aktuell etablierten Verfahren zählt Software-in-the-Loop, wobei die fertig implementierte Software am Prüfstand getestet wird. Die derzeit früheste Stufe der Absicherung ist „Model-in-the-Loop“: Hierbei werden Funktionsmodelle der Software erstellt und anschließend getestet.

Testen in der Konzeptphase

Diese Verfahren legen dabei den Fokus oft auf Realitätsnähe und umfassen vor allem die Absicherung von Modellen, Code, einzelnen oder mehreren Steuergeräten oder ganzen virtuellen Fahrzeugen. Doch in der frühesten Phase der Entwicklung – der Konzeptphase – findet noch kaum Absicherung statt. Dabei liegt gerade hier einer der Schlüssel zur Effizienzsteigerung in der Entwicklung: Der Test eines reinen Konzepts oder einer Betriebsstrategie kann die Produktqualität verbessern und die Entwicklung beschleunigen.

Das Problem: Die derzeit gängigen Tests mittels Model-in-the-Loop oder Software-in-the-Loop erfolgen erst nach der Ausarbeitung der Spezifikation und der anschließenden Implementierung als komplexes funktionales Modell oder als Steuergeräte-Software. Bis zu diesem Schritt ist schon ein erheblicher Entwicklungsaufwand in die Software beziehungsweise das Softwaremodell geflossen. Dieser Entwicklungsaufwand erfolgt in der Annahme, dass das zugrundeliegende Konzept richtig ist.

Fehler im Konzept werden daher frühestens in der ersten Absicherungsschleife Model-in-the-Loop erkannt – also nach der Implementierung des Modells. Stellt sich bei diesen Tests jedoch heraus, dass eine im Konzept enthaltene Annahme in einem bestimmten Szenario zu schlechtem oder sogar fehlerhaftem Verhalten führt, müssen Konzept, Spezifikation und Modell oder Software angepasst und erneut getestet werden.  

Gerade im Bereich des autonomen Fahrens werden Konzepte jedoch immer komplexer und enthalten hunderte von Annahmen und Abhängigkeiten, die für den Spezifikateur nur schwer zu überblicken sind. Eine Absicherungsschleife direkt in der Konzeptphase kann Klarheit schaffen und Aufwand in späteren Entwicklungsphasen reduzieren.

Noch vor der Implementierung die ersten Fehler finden

Also warum nicht schon einen Schritt vorher beim Konzept selbst anfangen? Ein Lösungsansatz zur Reduzierung dieses Zeitaufwands stellt Concept-in-the-Loop dar – ein High-Level Testverfahren, das noch vor Model-in-the-Loop angesiedelt ist. Das Ziel: Konzeptfehler möglichst früh und mit minimalem Aufwand erkennen zu können, ehe weiterer Entwicklungsaufwand in die nachfolgenden Entwicklungsschritte gesteckt wird.

Um dies zu erreichen, wird die Komplexität der Funktion soweit reduziert, dass nur noch die für das Konzept relevanten Teile wie beispielsweise Verhaltensstrategien simuliert werden. Code-Standards, manuell erstellte Szenarien oder spezifische Steuergerät-Funktionen werden absichtlich nicht berücksichtigt, um die gesamte Aufmerksamkeit auf das Konzept zu richten.

Der Begriff „Frontloading“ wird daher bei diesem Ansatz noch eine Stufe weitergetragen: Da sich Concept-in-the-Loop (CiL) analog zu den bestehenden Verfahren Model-in-the-Loop (MiL), Software-in-the-Loop (SiL) und Hardware-in-the-Loop (HiL) steuern und auswerten lässt (beispielsweise durch den Einsatz von gängigen Testautomatisierungstools, Big Data Plattformen und Data Analytics Verfahren) ist auch die Integration in die bestehende Absicherungstoolkette gewährleistet. So können die groben Modelle im weiteren Prozess nach und nach mit feineren Modellen (z.B. für Sensor- oder Umgebungssimulation) erweitert werden.

Mit Concept-in-the-Loop schneller zum richtigen Konzept

Gerade bei der Spezifikation autonomer Fahrfunktionen kann eine sehr frühzeitige Absicherung hilfreich sein: Aufgrund der Komplexität der Funktionen ist das “richtige” Konzept häufig nicht auf einen Blick ersichtlich. Ein Beispiel bietet schon eine scheinbar einfache Aufgabe wie das Einfädeln auf einer Autobahneinfahrt:

Findet sich das autonom fahrende Fahrzeug dabei direkt neben einem auf der Autobahn fahrenden Fahrzeug wieder, so hat es zwei Möglichkeiten: Gas geben und vor dem anderen Fahrzeug einscheren - und dabei eventuell ein geltendes Tempolimit überschreiten oder das Ende der Einfädelspur überfahren. Oder Bremsen und sich hinter dem anderen Verkehrsteilnehmer einordnen – und dabei möglicherweise zu stark an Geschwindigkeit verlieren oder den nachfolgenden Verkehr gefährden oder ausbremsen.

Welche Betriebsstrategie ist also die richtige? Die Antwort darauf liegt nicht unbedingt auf der Hand. Ein menschlicher Fahrer berücksichtigt bei seiner Entscheidung unbewusst eine Vielzahl weiterer Parameter wie z.B. die eigene Geschwindigkeit, Verkehrsdichte und -fluss, die Länge der Einfädelspur oder das Verhalten anderer Verkehrsteilnehmer um nur einige zu nennen. Um ein funktionstüchtiges Konzept festzulegen muss der Spezifikateur daher eine Vielzahl möglicher Szenarien durchspielen. 

Ob diese Spezifikation in der Realität dann auch zum gewünschten Verhalten führt, zeigt sich erst beim Test. Derzeit steht als erste Absicherungsschleife der Model-in-the-Loop-Test zur Verfügung. Die Funktion wird dabei initial spezifiziert, anschließend als Funktionsmodell implementiert und dann erst in einer Simulationsumgebung anhand verschiedener manuell erstellter Szenarien getestet. Ein erheblicher Entwicklungsaufwand, ohne den keine Aussage über die Wirksamkeit der Betriebsstrategie möglich ist.

Feintuning in der Konzeptphase mittels Simulation

Mit der Herangehensweise Concept-in-the-Loop erlangt man schon wesentlich früher und einfacher Klarheit über die Wirksamkeit des Konzepts:

Im Beispiel der Autobahnauffahrt kann das Konzept innerhalb sehr kurzer Zeit modelliert werden. Statt die komplette Funktion zu modellieren (und dabei eine Vielzahl von Parametern wie Bussignale oder steuergeräteinterne Variablen zu berücksichtigen) sind nur wenige Parameter für die Abbildung eines einfachen Zustandsautomaten notwendig.

Auch die Implementierung in der Testumgebung ist für Konzepttests mit wesentlich weniger Aufwand möglich: Für Model-in-the-Loop-Tests werden in der Regel aufwändige 3D-Simulationsumgebungen eingesetzt, die eine realistische Simulation des kompletten Fahrzeugs ermöglichen. Die gesamte Busumgebung und tausende von Parametern zur Fahrphysik – vom Dämpfungsgrad bis zum Rollwiderstand – werden dabei berücksichtigt. In späteren Entwicklungsstufen sind das wichtige Testparameter. Um das im Beispiel genannte Einfädel-Konzept zu testen, sind diese Daten jedoch unwichtig und müssen nicht erst aufwändig parametrisiert werden.

Eine schnellere Alternative bieten einfache Verkehrsflusssimulatoren wie SUMO oder vergleichbare Software. Diese verlangen wesentlich weniger Input bei der Gestaltung der Testszenarien und ermöglichen damit schnellere Tests des Konzepts mit viel weniger Details. Mit relativ geringem Aufwand lassen sich so tausende zufällige Szenarien generieren und testen. Die Ergebnisse dieser Tests lassen sich anschließend beispielsweise über Big Data Anwendungen auswerten.

Mit Hilfe dieser Absicherungslösung gelangt der Spezifikateur schnell zu einer Einschätzung, wie sich das Fahrzeug in Abhängigkeit von welchen Parametern verhalten sollte. Schon in der Konzeptphase ist somit Feintuning der Funktionen möglich, das derzeit erst in viel späteren Entwicklungsstufen möglich wäre. Erst wenn das Konzept grundlegend getestet und für wirksam befunden wurde, wird das komplexe Modell implementiert und in der nächsten Absicherungsstufe Model-in-the-Loop erneut getestet.

Mehr Effizienz

Die potenziellen Effizienzsteigerungen bei dieser Herangehensweise sind enorm: Für einen Concept-in-the-Loop Test ist lediglich die Implementierung eines Grobkonzepts als einfacher Zustandsautomat notwendig. Für Model-in-the-Loop Tests muss dagegen bereits ein ausgearbeitetes Funktionsmodell der Steuergeräte-Software entwickelt werden. Der Arbeitsaufwand dafür liegt nach unserer Einschätzung bei einigen Beispielen etwa beim Faktor Hundert.

Durch die frühzeitige Absicherung können Spezifikationsfehler so schon sehr früh gefunden werden, die erste Absicherung erfolgt quasi noch während der Spezifikationsphase. Der nachfolgende Entwicklungsaufwand wird reduziert, da die Wirksamkeit des Konzepts schon während der Spezifikation nachgewiesen kann und in späteren Phasen weniger Änderungen an der Software notwendig sind.

Einsatzmöglichkeiten solch einer virtuellen Konzeptbestätigung sind unter anderem die Absicherung von Betriebsstrategien für autonome und elektrifizierte Fahrzeuge, Konzepten in der Car2Car Kommunikation oder cloudbasierten Konzepten (z.B. Verkehrswarner, Stauvermeidung).

Einbindung in die Toolketten

Damit ein Concept-in-the-Loop-Ansatz aufgeht, sollte das Testverfahren nahtlos in die Toolketten der anderen Absicherungsschritte eingebunden werden: Von der Testautomatisierung über die automatisierte Testauswertung bis hin zu Data Analytics-Verfahren finden schon heute vielerlei Verfahren Anwendung, um den Absicherungsprozess zu steuern, zu überwachen und auszuwerten. Aufgrund der steigenden Anzahl von Tests und Testverfahren werden diese Prozesse immer wichtiger und erlauben eine strukturierte, entwicklungsbegleitende Absicherung.

Concept-in-the-Loop lässt sich in bestehende Toolketten einbinden und damit genauso steuern und auswerten wie die späteren Testverfahren. Der Vorteil dabei ist, dass die verwendeten Modelle nach und nach erweitert werden können, und somit eine immer genauere Absicherung erlauben. Dies reduziert Doppelaufwände und ermöglicht eine zeitnahe Absicherung, sobald neue Funktionen oder Modelle zur Verfügung stehen.