Sicherheitszertifizierbare Software

Autonom fahren, aber sicher!

3. April 2024, 17:00 Uhr | Autor: Akihiko Tsukuda, Redaktion: Irina Hübner
© scharfsinn86 | stock.adobe.com

Ein Software-Stack, der die Entwicklung von Anwendungen für autonomes Fahren erleichtert, muss auch Echtzeit-Determinismus für die Zertifizierung funktionaler Sicherheit unterstützen. Das Embedded-Unternehmen eSOL schlägt eine dementsprechende Lösung vor.

Diesen Artikel anhören

Ein höherer Automatisierungsgrad beim Fahren verspricht mehr Sicherheit und Komfort für Fahrer und Passagiere durch eine geringere Belastung des Fahrers und einheitlichere Fahrstandards. Das ultimative Ziel ist das vollständig autonome Fahren, vom Anfang bis zum Ende jeder Fahrt. Fahrzeughersteller und Tier-1-Zulieferer verfolgen dieses Ziel und entwickeln dafür elektrische/elektronische Fahrzeugarchitekturen in Richtung eines immer ausgefeilteren und softwaredefinierten Modells.

Der Software-Stack zum Sammeln von Daten diverser Sensoren

Um autonomes Fahren zu ermöglichen, muss der Software-Stack zahlreiche Funktionen unterstützen, unter anderem das Sammeln von Daten diverser Sensoren wie Lidar, Radar, Kamera, GNSS-Empfänger, Trägheitssensoren und anderen am bzw. im Fahrzeug montierten Sensoren. Die Fähigkeit der Lokalisierung muss ebenfalls gewährleistet sein, indem geeignete Sensorinformationen mit hochpräzisen Kartendaten kombiniert werden, um den genauen Standort und die Ausrichtung des autonomen Fahrzeugs zu bestimmen.

Software für autonomes Fahren muss auch Weg des Fahrzeugs entlang der Route kennen

Weitere Sensordaten dienen der Wahrnehmung, dem Erkennen, dem Erfassen und dem Verfolgen von Objekten wie Fahrzeugen, Fahrrädern und Fußgängern sowie von Verkehrssignalen oder -zeichen. Die Software muss auch die Planung unterstützen, das heißt, sie muss anhand von Wahrnehmungsinformationen den Weg des Fahrzeugs entlang der gewünschten Route berechnen und Hindernisse vermeiden sowie anhand der Planungsinformationen präzise Steuersignale für das Fahrzeug erzeugen, also für Lenkwinkel, Bremsen und Beschleunigung.

Außerdem muss sie die Fahrzeugschnittstelle verwalten, die Steuersignale als Befehle an verschiedene Teilsysteme verteilen und die Kartierung mit hochpräzisen 3D-Kartendaten vornehmen. Entwickler müssen hierzu einen Stack erstellen, der all diese Elemente unabhängig voneinander umfasst, was jedoch arbeitsintensiv, zeitaufwendig und teuer sein kann. Auf einer bereits bestehenden Plattform aufzubauen, kann daher effizienter und kostengünstiger sein.

Software bereits in autonomen Industriefahrzeugen

Das Software-Framework Autoware ist ein Beispiel dafür. Die Open-Source-Software wurde auf der Grundlage von ROS (Robot Operating System) entwickelt. Es bietet einen Stack, der sich bereits in verschiedenen Plattformen bewährt hat, beispielsweise in autonomen Industriefahrzeugen für den Warentransport innerhalb von Fabrikgeländen oder Frachtbereichen. Im Vergleich zum öffentlichen Straßenverkehr handelt es sich hierbei um vorhersehbare und kontrollierte Umgebungen, in denen Autoware einen sicheren Betrieb nachweisen konnte. Andere Anwendungsfälle sind fahrerlose Shuttles und Taxis, die in komplexeren Umgebungen operieren, welche höhere Anforderungen an die Wahrnehmungs- und Planungsmodule der Software stellen.

ROS: Framework für autonomes Fahren

ROS ist ein Middleware-Framework bestehend aus Softwarebibliotheken und Tools, die auf Linux als Kernbetriebssystem laufen. Die Basissoftware ist Open-Source und verfügt über ein umfangreiches Ökosystem, das häufige Updates mit Fehlerbehebungen und Verbesserungen umfasst.

ROS ermöglicht es Entwicklern, Robotersteuerungen zu programmieren, die unter Linux ausgeführt werden, und wird bereits in großem Umfang für Robotik und autonome Systeme verwendet. Außerdem ist es robust genug, um ein autonomes Straßenfahrzeug zu steuern, und enthält Funktionen, um die Entwicklung, Integration und Steuerung der für das autonome Fahren erforderlichen Softwarekomponenten zu vereinfachen.

Vorteil modularer Architektur

Zu den Stärken von ROS als Framework für autonomes Fahren gehört seine modulare Architektur, mit der sich Funktionen wie Wahrnehmung, Planung und Steuerung als separate Module oder Knoten entwickeln lassen. Durch die Unterstützung der Nachrichtenübermittlung zwischen Knoten können diese Funktionen miteinander kommunizieren, was eine bessere Organisation und Verwaltung komplexer autonomer Fahrzeugsysteme ermöglicht. Insbesondere gewährleistet die Nachrichtenübermittlung eine effiziente und zuverlässige Kommunikation, die für den Datenaustausch in Echtzeit erforderlich ist – was für Aufgaben wie die Hindernisvermeidung und die Wegplanung unerlässlich ist.

ROS beinhaltet auch fertige Treiber und Pakete für eine Reihe von Sensoren, was die Integration von LiDAR, Kameras, Radar, GPS und anderen Sensoren zur Umgebungswahrnehmung vereinfacht.

Autoware, ebenfalls unter Linux entwickelt, nutzt diese Aspekte von ROS und bietet spezielle Planungs- und Steuerungsalgorithmen sowie Sensorfusion. Autoware verwendet beispielsweise ein verbessertes 3D-SLAM-Modul (Simultaneous Localization and Mapping) sowie einen speziellen ROS-Themensatz. Linux punktet mit verschiedenen Vorteilen bei der Entwicklung autonomer Fahrzeuganwendungen und ist mit zahlreichen Standard-Hardwarekomponenten kompatibel. Mit Linux lassen sich Standard-Hardware und -Treiber nutzen, was die Entwicklung und den Test autonomer Fahrzeugsysteme erleichtert. Außerdem steht ein großes Ökosystem an Tools, Bibliotheken und Entwicklungsressourcen bereit.

Linux kein Echtzeit-Betriebssystem

Obwohl Echtzeit-Patches verfügbar sind, die Determinismus für viele Aufgaben in autonomen Fahrzeugen bereitstellen, ist Linux kein Echtzeit-Betriebssystem. Es ist nicht für die funktionale Sicherheit von Fahrzeugen und die Einhaltung von Vorschriften zertifiziert. Hierfür wird ein deterministisches, sicheres POSIX-RTOS (Portable Operating System Interface – Realtime Operating System) empfohlen.

Einige autonome Systeme verwenden einen hybriden Ansatz, bei dem ein Allzweck-Betriebssystem wie Linux mit einem RTOS für spezifische zeitkritische Aufgaben kombiniert wird. Damit lässt sich der Bedarf an Echtzeitleistung mit der Flexibilität eines Betriebssystems mit vollem Funktionsumfang in Einklang bringen. Dies kann jedoch schwierig zu erreichen sein und erfordert umfangreiches Fachwissen.

Erweiterung auf funktionale Sicherheit

ROS on eMCOS: Software-Framework für die einfachere Entwicklung autonomer Fahrfunktionen, mit dem sich die Anforderungen an die funktionale Sicherheit erfüllen lassen
ROS on eMCOS: Software-Framework für die einfachere Entwicklung autonomer Fahrfunktionen, mit dem sich die Anforderungen an die funktionale Sicherheit erfüllen lassen.
© eSOL

Die ROS-on-eMCOS-Lösung von eSOL kombiniert ROS mit einem Sicherheits-RTOS und schafft so eine Plattform, die eine nahtlose Integration von Autoware-Anwendungen mit Sicherheitszertifizierung ermöglicht (siehe Bild).

Das von eSOL vorgeschlagene Framework für ROS zielt darauf ab, Echtzeit- und Sicherheitskonfigurationen zu vereinfachen und die Portierung von Linux-Vorentwicklungen auf die RTOS-Serienfertigung zu erleichtern. ROS on eMCOS ist die Antwort auf Integrationsherausforderungen, die sich jedem Projekt stellen, das eine robuste und deterministische Plattform für funktionale Sicherheit schaffen will. Dazu gehören die Optimierung von RTOS-Kernel-Treibern, die Ressourcenzuweisung und die Analyse von Engpässen sowie Code-Korrekturen, damit RTOS-, ROS- und Autoware-Umgebungen wie gewünscht interagieren können.

Deterministischer Betrieb gewährleistet

Autoware ist für die Entwicklung autonomer Fahrzeuganwendungen konzipiert und bietet ein Software-Framework, das es Entwicklern erspart, ihren eigenen Stack von Grund auf neu zu erstellen. Dieser Ansatz beschleunigt die Entwicklung und spart Projekt- und Zertifizierungskosten. Autoware und ROS erfüllen viele der Anforderungen, die für die Entwicklung autonomer Fahrfunktionen nötig sind, obwohl es Unzulänglichkeiten gibt – insbesondere in Bezug auf Bestandteile des Fahrzeugs, die den Anforderungen der funktionalen Sicherheit entsprechen müssen.

Die Integration von ROS mit einem POSIX-konformen Sicherheits-RTOS wie eMCOS POSIX behebt diese Mängel und gewährleistet einen deterministischen Betrieb. Eine gebrauchsfertige Lösung wie ROS on eMCOS umgeht die Herausforderungen der Integration und erlaubt es, sofort mit der Entwicklung zu beginnen und die Funktionen des Autoware-Stacks zu nutzen. Dies sorgt für eine schnellere Markteinführung und erleichtert die Einhaltung der funktionalen Sicherheit.

 

Der Autor

 

Akihido Tsukuda von eSOL
Akihido Tsukuda von eSOL.
© eSOL

Akihiko Tsukuda

begann seine Laufbahn als Entwickler bei eSOL im Jahr 2000 mit Schwerpunkt auf Embedded-Systeme. Im Laufe der Jahre konnte er dort sein Fachwissen im Bereich RTOS und Middleware unter Beweis stellen. 2015 führte er als Engineering Manager die ROS-Engineering-Services ein. Im Jahr 2020 wurde Tsukuda zum Executive Officer von eSOL ernannt.


Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Componeers GmbH

Weitere Artikel zu Automatisiertes Fahren

Weitere Artikel zu Automotive

Weitere Artikel zu Software/Entwicklung