29.01.2013 Aufrufe

ATZelektronik: Virtuelle Absicherungs-Plattform [PDF] - MBtech Group

ATZelektronik: Virtuelle Absicherungs-Plattform [PDF] - MBtech Group

ATZelektronik: Virtuelle Absicherungs-Plattform [PDF] - MBtech Group

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!