ATZelektronik: Virtuelle Absicherungs-Plattform [PDF] - MBtech Group
ATZelektronik: Virtuelle Absicherungs-Plattform [PDF] - MBtech Group
ATZelektronik: Virtuelle Absicherungs-Plattform [PDF] - MBtech Group
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Entwicklung QuALität<br />
56<br />
Autoren<br />
dr.-ing. marcus martinus<br />
ist Projektleiter <strong>Virtuelle</strong><br />
<strong>Absicherungs</strong>plattform bei der<br />
BMW <strong>Group</strong> in München.<br />
zoran cutura<br />
ist Leiter Commercial Product<br />
Development bei der <strong>MBtech</strong><br />
<strong>Group</strong> in Sindelfingen.<br />
diPl. ing. (fH) tHomas würz<br />
ist Produkt Manager Autosar<br />
Basis Software bei der Mentor<br />
Graphics Deutschland GmbH<br />
in München.<br />
EinsatzfällE dEr VaP im<br />
E/E-EntwicklungsProzEss<br />
Die <strong>Virtuelle</strong> <strong>Absicherungs</strong>plattform<br />
(VAP) ermöglicht es, die Serien-Software<br />
von Steuergeräten unabhängig von ihrer<br />
Ziel-Hardware auf einer universellen<br />
Hardware-<strong>Plattform</strong> zu integrieren, zu<br />
erleben und abzusichern [1]. Die Abstraktion<br />
der Funktions-Software von der Hardware<br />
erfolgt auf Basis der standardisierten<br />
Software-Schnittstellen, konform zu Autosar<br />
[2] beziehungsweise Genivi [3]. Die<br />
VAP bietet eine vollwertige Echtzeitplattform<br />
für Funktions-Software und Basis-<br />
Software (BSW) mit realer Kommunikation<br />
und I/O, ❶.<br />
Der Einsatz der VAP bezieht sich<br />
sowohl auf entwicklungsbegleitende Tests<br />
in der frühen Phase als auch auf Integration<br />
und Absicherung auf der rechten Seite des<br />
V-Modells, ❷. Im Folgenden sind die Einsatzfälle<br />
näher beschrieben.<br />
Der erste Usecase, ② (grün) bezieht<br />
sich auf die Sicherstellung der Wiederverwendbarkeit<br />
von Software. Dazu soll die<br />
Software, deren Schutzrechte bei der BMW<br />
<strong>Group</strong> liegen, parallel zum konventionellen<br />
Integrationsprozess auf der VAP integriert<br />
werden. Art und Version der Basis-Software<br />
richten sich dabei nach dem jeweiligen<br />
Komponentenprojekt. Der Einsatz der VAP<br />
als Hardware-<strong>Plattform</strong> für die Weitergabe<br />
von Software wird sowohl beim Tier1-<br />
Lieferanten als auch innerhalb der BMW<br />
<strong>Group</strong> eingefordert. Darüber hinaus bildet<br />
die VAP für Konstellationen, in denen<br />
Software getrennt von der Hardware<br />
beauftragt werden soll, die notwendige<br />
Referenz. Durch die Integration der Software<br />
auf der VAP können wesentliche<br />
Aspekte der Wiederverwendbarkeit nachgewiesen<br />
werden:<br />
: Nachweis der Konfigurierbarkeit: Die<br />
Konfigurations-Dateien (zum Beispiel<br />
ARXML) sind auf die VAP übertragbar<br />
und können unabhängig vom gewählten<br />
Autosar-Lieferanten in den Konfigurations-Werkzeugen<br />
bearbeitet und wiederverwendet<br />
werden. Die für die Kommunikation<br />
notwendigen Module der Basis-<br />
Software sind konfigurierbar.<br />
: Nachweis der Portierbarkeit: Die Funktions-Software<br />
(Software-Komponenten,<br />
SWCs) kann auf der VAP integriert werden.<br />
Die Kommunikation lässt sich mit<br />
den spezifizierten Basis-Software-Modulen<br />
realisieren und testen.<br />
: Nachweis des korrekten Build-Prozesses:<br />
Das Software-Projekt ist für die VAP
<strong>Virtuelle</strong> <strong>Absicherungs</strong>-PlAttform<br />
IntegratIon und WIederverWendung<br />
von SoftWare<br />
neben dem „Frontloading“ bietet insbesondere die Wiederverwendbarkeit von bereits entwickelten und abgesi-<br />
cherten Software-Funktionen erhebliches Potenzial. Software-Standards wie Autosar und Genivi liefern hierfür das<br />
notwendige rahmenwerk. Mit dem einsatz der <strong>Virtuelle</strong>n <strong>Absicherungs</strong>plattform (VAP) wird es der BMW <strong>Group</strong><br />
ermöglicht, die Serien-Software frühzeitig im entwicklungsprozess noch ohne Verfügbarkeit der Ziel-Hardware zu<br />
testen und abzusichern. Zudem lässt sich die Wiederverwendbarkeit der Software in anderen Projekten sicherstellen.<br />
Als Lieferant der VAP setzte die <strong>MBtech</strong> <strong>Group</strong> das Konzept auf Basis einer hauseigenen entwicklungs-Software<br />
inklusive Hardware in PC-technologie um. Mentor Graphics lieferte die Autosar-Software und -Werkzeuge.<br />
kompilierbar und linkbar. Für Autosar-<br />
Steuergeräte wird die RTE generiert.<br />
Der Code ist auf der VAP lauffähig.<br />
: Nachweis der Vollständigkeit: Das Software-Projekt<br />
ist hinsichtlich der definierten<br />
Schnittstellen, Konfigurations-<br />
Dateien, Bibliotheken und Quellen in<br />
sich vollständig.<br />
Zweiter Einsatzfall (blau) ist die Verwendung<br />
der VAP als Referenzplattform für<br />
die Qualifizierung von Basis-Software-<br />
Stacks. Sowohl für die Anwendung in<br />
Genivi-Projekten als auch für Autosar-<br />
Steuergeräte soll die Basis-Software auf<br />
der VAP integriert und mit einer Referenzapplikation<br />
getestet werden. Der Tier1-<br />
Lieferant führt dabei den Nachweis dieser<br />
Tests und weist die „Compliance“ seiner<br />
verwendeten Basis-Software in der initialen<br />
Projektphase nach. Eine derartige Freigabe<br />
der Basis-Software könnte auch im<br />
Rahmen zu den momentan diskutierten<br />
„Autosar-Acceptance-Tests“ [4] erfolgen.<br />
Weiterer Nutzen resultiert aus unterschiedlichen<br />
Einsatzfällen der VAP in der<br />
frühen Entwicklungsphase von Software,<br />
② (violett). Die VAP bietet dem Entwickler<br />
eine <strong>Plattform</strong>, seine Software-Baukästen<br />
unabhängig von der Ziel-Hardware zu testen<br />
und abzusichern. So kann der Entwick-<br />
01i2012 7. Jahrgang<br />
ler nach dem erfolgten Modultest (Modelin-the-Loop,<br />
Software-in-the-Loop) die<br />
Software-Funktionen auf einem realen<br />
Autosar-Stack integrieren und mit realer<br />
Kommunikation beziehungsweise I/O im<br />
Integrationstest verifizieren. Dies geschieht<br />
beispielsweise über seine gewohnte Hardware-in-the-Loop-Testumgebung<br />
des Steuergeräts,<br />
① (links). Desweiteren ist es<br />
möglich, mehrere Steuergeräteinstanzen<br />
verteilter Funktionen auf der VAP zu<br />
implementieren und ihre Partitionierung<br />
zu überprüfen, ① (rechts). Mit Hilfe der<br />
VAP kann mangelnde Verfügbarkeit realer<br />
Hardware kompensiert werden.<br />
tEcHniscHE umsEtzung<br />
Grundlage für die technische Umsetzung<br />
des VAP-Systems bilden die Bestandteile<br />
Hardware, Betriebssystem und Treiber, ein<br />
Autosarkompatibler Microcontroller-Abstraction-Layer<br />
(MCAL) für gewählte Hardware<br />
und Betriebssystem sowie ein vollständiger<br />
Autosar Basic-Software-Stack<br />
mit entsprechender Autosar-Tool-Chain.<br />
In ähnlichen Einsatzszenarien, jedoch<br />
ohne Autosar, stellte die in der <strong>MBtech</strong><br />
<strong>Group</strong> entwickelte Provetech-Tool-Suite<br />
anhand des Tools Provetech:RP bereits<br />
Lösungen dar. Mit Provetech:RP werden<br />
dabei prototypische Implementierungen<br />
für neue Fahrzeugsysteme in frühen Phasen<br />
der Funktionsentwicklung realisiert.<br />
Diese Software ist so konzipiert, dass<br />
Regelsysteme auf einem PC in einer Echtzeitumgebung<br />
eingebettet werden können.<br />
Die erforderlichen Eingangs- und Ausgangsdaten<br />
sind anhand marktverfügbarer PC-<br />
Interface-Karten realisiert. So sind inzwischen<br />
unterschiedliche PC-Karten für CAN,<br />
Digital-I/O, Analog-I/O, PWM-I/O, LIN,<br />
Ethernet und auch FlexRay unterstützt.<br />
Die Verwendung des Betriebssystems<br />
Linux mit der Echtzeiterweiterung Xenomai<br />
[5] stellt sicher, dass die harten Echtzeitanforderungen<br />
der Regelsysteme<br />
bedient werden können.<br />
Ein erster Schritt war es, Provetech:RP<br />
um eine Autosar-kompatible Runtime<br />
Environmet (RTE) so zu erweitern, dass<br />
Autosar-Software-Komponenten darin ausgeführt<br />
werden können. Darüber hi naus -<br />
gehend wurde für die VAP der vollständige<br />
Autosar-Stack „Volcano VSTAR“ von<br />
Mentor Graphics auf dem Linux/Xenomaibasierten<br />
PC mit Provetech:RP integriert.<br />
Im nächsten Schritt erfolgte die Umsetzung<br />
der Autosar-OS-Funktionen auf Xenomai.<br />
Hierdurch wurden die erforderlichen Task-<br />
57
Entwicklung QuALität<br />
VAP für virtuelle Absicherung<br />
der Software eines Steuergeräts (ECU)<br />
SWC<br />
(Autosar)<br />
C-Code<br />
CAN<br />
VAP<br />
Funktions-Software<br />
RTE<br />
SWC<br />
(Autosar)<br />
C-Code<br />
Basis-Software<br />
z. B. Autosar, Genivi<br />
OS/MCAL/CmpDrv<br />
Universelle VAP-HW<br />
HW: x86<br />
OS: Linux/Xenomai (Echtzeit)<br />
BUS: CAN, LIN, FlexRay<br />
Ethernet<br />
I/O: Digital, PWM, Analog<br />
Sensorik<br />
Aktorik<br />
HiL<br />
Realer BUS<br />
ECU ECU ECU<br />
Steuerungen im Autosar-Stack ermöglicht<br />
und erste Runables konnten auf dem System<br />
konfiguriert und ausgeführt werden.<br />
Die hierfür erforderliche Einbindung von<br />
Code-Generatoren in die Autosar-Tool-<br />
Chain erfolgte in enger Zu sammenarbeit<br />
zwischen <strong>MBtech</strong> und Mentor Graphics.<br />
Hierbei wird aus den Einstellungen, die in<br />
einer durch Autosar standardisierten Konfigurationsdatei<br />
abgelegt sind, und modulspezifischen<br />
Template-Dateien Code<br />
erzeugt. Dadurch können projektabhängige<br />
Teile ressourcenschonend als statischer<br />
Code im Build-Prozess bereitgestellt werden.<br />
Auf dieser Basis wurden die MCAL-<br />
Module für ein CAN-Interface-Board und<br />
ein Multi-I/O-Board realisiert. Auch hier<br />
wird die vollständige Konfiguration und<br />
erforderliche Code-Generierung für die<br />
MCAL-Module in die Autosar-Tool-Chain<br />
eingebettet.<br />
Funktions-Software<br />
SWC<br />
(Autosar)<br />
C-Code<br />
Das ausgewählte Hardware-System ist<br />
sowohl bei der BMW <strong>Group</strong> als auch bei<br />
<strong>MBtech</strong> bereits in verschiedener Form im<br />
Einsatz. Der verbreitete Industriestandard<br />
Compact-PCI bildet das Fundament für ein<br />
modulares und robustes System. Handelsübliche<br />
Compact-PCI-PC-Karten mit at -<br />
traktiven Leistungsmerkmalen ermöglichen<br />
die Ausführung der beschriebenen Software-<br />
Bestandteile. Die im Rahmen von VAP<br />
eingesetzten PC-Karten für PCI oder Compact-PCI-Bus<br />
bilden einen vollständigen<br />
Katalog für die Abdeckung vieler Systemanforderungen<br />
im Automotive-Umfeld.<br />
autosar – stack und tooling<br />
VAP für virtuelle Absicherung von verteilten Funktionen<br />
(eine VAP integriert mehrere logische ECUs)<br />
SWC<br />
(Autosar)<br />
C-Code<br />
CAN<br />
Realer BUS<br />
Neben der VAP-Hardware ist für die<br />
Umsetzung der <strong>Virtuelle</strong>n <strong>Absicherungs</strong>plattform<br />
als Teil der Entwicklungsumgebung<br />
sowohl eine leistungsfähige und uni-<br />
VAP<br />
Funktions-Software<br />
SWC<br />
(Autosar)<br />
C-Code<br />
SWC<br />
(Autosar)<br />
C-Code<br />
FlexRay<br />
Funktions-Software<br />
SWC<br />
(Autosar)<br />
C-Code<br />
RTE RTE RTE<br />
Basis-Software<br />
z. B. Autosar, Genivi<br />
Basis-Software<br />
z. B. Autosar, Genivi<br />
Sensorik<br />
Aktorik<br />
HiL<br />
verselle Tool-Unterstützung als auch die<br />
Integration einer konfigurierbaren Autosar<br />
Basis-Software erforderlich.<br />
autosar-Basis-softwarE<br />
SWC<br />
(Autosar)<br />
C-Code<br />
Basis-Software<br />
z. B. Autosar, Genivi<br />
OS/MCAL/CmpDrv OS/MCAL/CmpDrv OS/MCAL/CmpDrv<br />
Universelle VAP-Hardware (Ressourcen fest zugewiesen)<br />
HW: x86<br />
OS: Linux/Xenomai (Echtzeit)<br />
BUS: CAN, LIN, FlexRay Ethernet<br />
I/O: Digital, PWM, Analog<br />
❶ Schematischer Aufbau der VAP mit Szenarien für die entwicklungsbegleitende Absicherung von Software; blau hinterlegte teile sind VAP-spezifisch<br />
58<br />
ECU<br />
In der VAP kommt das Produkt „Volcano<br />
VSTAR“ der Firma Mentor Graphics zum<br />
Einsatz. Der Volcano VSTAR Basis-Software-<br />
Stack deckt den kompletten Satz an Autosar<br />
BSW Standard-Modulen ab und besteht<br />
daher aus den hardware-unabhängigen<br />
Abstraktions- und Service-Schichten, wie sie<br />
im Autosar Schichten-Modell definiert sind,<br />
❸. Die BSW enthält somit ein OSEK-kompatibles<br />
Operating System (OS), welches für<br />
alle Scalability-Klassen ausgelegt ist. Desweiteren<br />
sind neben ei nem Runtime Environment<br />
(RTE) sowohl System Services zur<br />
Speicherung, Diagnose und für das Mode<br />
Management, als auch Unterstützung für
VAP für Qualifizierung<br />
von BSW-Stacks<br />
(Autosar, Genivi)<br />
Vorleistung<br />
VAP für virtuelle<br />
Absicherung von<br />
Komponenten-SW und<br />
verteilten Funktionen<br />
System-Dienste<br />
Abstraktion<br />
Geräte-<br />
Hauptplatine<br />
Steuergeräteentwicklung<br />
Microcontroller-<br />
Treiber<br />
Anpassungen VAP<br />
VAP als Referenzplattform<br />
für Wiederverwendbarkeit<br />
von Funktions-SW<br />
die Kommunikationsprotokolle CAN, LIN,<br />
Flexray und Ethernet enthalten.<br />
Als weiterer Bestandteil der BSW ist der<br />
VAP-hardware-abhängige Anteil (VAP-<br />
MCAL) zu nennen, der speziell an die<br />
VAP-Hardware adaptiert wurde. So musste<br />
speziell das Autosar OS in den Xenomai<br />
Linux-Kontext eingebunden und die I/O-<br />
Treiber, Memory-Treiber sowie die Kommunikationstreiber<br />
an die Compact-PCI<br />
Komponenten der VAP angepasst und mit<br />
der übrigen BSW kombiniert weden.<br />
Ebenso wurden die BMW-spezifischen<br />
Systemfunktionen (BAC 3.1 beziehungsweise<br />
BAC 4.0) in den VAP-Software-Stack<br />
integriert.<br />
Ziel war es, die BSW, MCAL und BAC<br />
so zu vereinen, dass sich aus Sicht der<br />
Applikations-Software-Entwickler keinerlei<br />
Unterschiede zu einem realen Steuergerät<br />
ergeben, was für die Übertragbarkeit der<br />
Integration<br />
Applikationsschicht<br />
Autosar Runtime Environment (RTE)<br />
Speicher-<br />
Dienste<br />
Abstraktion<br />
Speicher-<br />
Hardware<br />
Speicher-<br />
Treiber<br />
Kommunikations-<br />
Dienste<br />
Abstraktion<br />
Kommunikations-<br />
Hardware<br />
Kommunikations-<br />
Treiber<br />
Microontroller<br />
❸ Volcano VStAr mit VAP-Adaption und BMW-Autosar-Core (BAC)<br />
01i2012 7. Jahrgang<br />
❷ einsatzfälle der VAP im V-Modell<br />
der e/e-Steuer geräte entwicklung<br />
Abstraktion<br />
I/O-Hardware<br />
I/O-Treiber<br />
Ergebnisse von der VAP auf die eigentliche<br />
Ziel-Hardware ein entscheidendes Kriterium<br />
darstellt.<br />
autosar-autHoring<br />
und -konfiguration<br />
BMW<br />
BAC<br />
BMW<br />
BAC<br />
Komplexe Gerätetreiber<br />
Um die VAP effektiv nutzen zu können,<br />
wird die „Volcano VSX Tool Suite“, der<br />
Firma Mentor Graphics, eingesetzt, ❹.<br />
Das Autosar Authoring Tool VSA („Vehicle<br />
System Architect“) ist bei der BMW <strong>Group</strong><br />
seit einigen Jahren im Einsatz und wird<br />
nun durch das Steuergeräte- respektive VAP-<br />
Konfigurationstool VSB („Vehicle System<br />
Builder“), erweitert. Dadurch besteht die<br />
Möglichkeit den kompletten Top-Down-<br />
Entwicklungsansatz, wie von Autosar vorgeschlagen,<br />
abzudecken.<br />
Für den Integrationsprozess auf der<br />
VAP werden analog zur konventionellen<br />
Internationale Messe und Konferenz<br />
für Leistungselektronik, intelligente<br />
Antriebstechnik und Power Quality<br />
Nürnberg, 8. – 10.05.2012<br />
Leistungsstark?<br />
…dann sind Sie<br />
hier richtig!<br />
Der Marktplatz für<br />
Entwickler und Innovatoren.<br />
Hier entsteht Zukunft!<br />
pcim.de
powered by<br />
Premium Partner<br />
Topjobs für Ingenieure!<br />
Einstieg · Umstieg · Aufstieg<br />
Karriere-Events 2012<br />
28. April: Stuttgart<br />
Jetzt vormerken:<br />
10. November: Chemnitz<br />
30. November: Darmstadt<br />
Jetzt unter<br />
www.careers4engineers.de<br />
über die Veranstaltung informieren<br />
und kostenlos anmelden!<br />
Die Karriere-Events für Automobil-Ingenieure – www.careers4engineers.de
VSA<br />
Software und<br />
System-Design<br />
VSB<br />
ECU-<br />
Konfiguration<br />
Eclipse<br />
VSTAR<br />
BSW und<br />
Generatoren<br />
Sphinx/Artop-Infrastruktur<br />
Steuergeräteentwicklung folgende Schritte<br />
durchlaufen:<br />
: Erstellen der Applikations-Software-<br />
Komponenten (SWCs) und deren Verhaltensbeschreibung<br />
(Internal Behavior,<br />
Runnables)<br />
: Verbinden der Komponenten zu einem<br />
funktionalen Netzwerk (SW-Compositions)<br />
auf VFB-Ebene (Virtual Function<br />
Bus)<br />
: Verteilen der Funktionen auf einzelne<br />
Steuergeräte (Functional De-Composition),<br />
wie zum Beispiel auf die VAP<br />
: Kommunikations-Design, oder alternativ<br />
: Importieren eines gegebenen Nachrichten-<br />
Kataloges über Austauschformate wie<br />
DBC, LDF oder FIBEX<br />
: Extrahieren der VAP-Ziel-Funktionen<br />
aus der Gesamt- oder Teil-Systembeschreibung<br />
(ECU-Extract)<br />
: Konfigurieren von BSW, MCAL und<br />
BAC<br />
: Generieren, Kompilieren, Linken, Ausführen<br />
auf der VAP.<br />
ausBlick<br />
Der Einsatz der VAP soll für neue Steuergeräte<br />
des BMW-7er-Nachfolgers mit den<br />
Lieferanten vereinbart werden. Dazu ist<br />
es notwendig, den VAP-Ansatz weiter am<br />
Markt zu verbreiten, inklusive der Auswahl<br />
für unterschiedliche Ausprägungen<br />
von Basis-Software. Neben den gezeigten<br />
Einsatzszenarien eignet sich das System<br />
auch für den Einbau in Fahrzeugen zur<br />
Erprobung neuer Funktionen lange bevor<br />
Steuergeräte-Hardware zur Verfügung<br />
steht. Die Verbindung von Standard-PC-<br />
Komponenten mit einem realen Autosar-<br />
Stack und Echtzeitfähigkeit ermöglicht<br />
einen schnellen und reibungsarmen Übergang<br />
zwischen Prototyp und Serienentwicklung.<br />
01i2012 7. Jahrgang<br />
VSX Java<br />
Plug-ins<br />
Javascript<br />
Python<br />
OpenAPI<br />
❹ Volcano-VSX-tool-<br />
Architektur<br />
litEraturHinwEisE<br />
[1] Fuchs, M., S. Jurchen u. M. Martinus: <strong>Virtuelle</strong><br />
Absicherung von e/e-umfängen. in 3. Autotest<br />
Fachkonferenz zum thema test von Hard- und Software<br />
in der Automobilentwicklung, Stuttgart, 2010.<br />
[2] Autosar Gbr: Automotive open System<br />
Architecture, 2011. urL http://www.autosar.org.<br />
[3] Genivi Alliance: Get your iVi products to<br />
market faster, 2011. urL http://www.genivi.org.<br />
[4] Autosar Gbr: Autosar Status and release<br />
roadmap. in 3 rd Autosar open Conference,<br />
Frankfurt/Main, 11.05.2011. urL http://www.<br />
autosar.org.<br />
[5] Xenomai Framework: Xenomai: real-time<br />
Framework for Linux. urL http://www.xenomai.org.<br />
download dEs BEitrags<br />
www.AtZonline.de<br />
rEad tHE EnglisH E-magazinE<br />
order your test issue now:<br />
SAM-service@springer.com<br />
Software-<br />
Werkzeuge für<br />
durchgängige<br />
Automotive-<br />
Entwicklung<br />
itemis und die<br />
YAKINDU-Werkzeuge<br />
auf der<br />
Embedded World 2012:<br />
Halle 4, Stand 4-408<br />
Freikarten auf:<br />
www.itemis.de