06.01.2014 Aufrufe

XCP on FlexRay - HANSER automotive

XCP on FlexRay - HANSER automotive

XCP on FlexRay - HANSER automotive

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.

ENGINEERING TOOLSl AUTOMOTIVE<br />

7-8.2008l65<br />

© Carl Hanser Verlag, München www.hanser-<strong>automotive</strong>.de Nicht zur Verfügung im Intranet- und Internet-Angeboten sowie elektr<strong>on</strong>ischen Verteilern<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong><br />

AUTOSAR-KOMPATIBLE<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g>-SOFTWAREMODULE FÜR<br />

FLEXRAY-STEUERGERÄTE<br />

bei Audi<br />

Um die Parameter der <strong>FlexRay</strong>-Steuergeräte abzustimmen,<br />

kalibriert Audi diese über <str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong>. Eine<br />

Anforderung war dabei die AUTOSAR-Kompatibilität der<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g> Embedded Softwaremodule im Steuergerät. Vector<br />

Informatik passte dazu sowohl die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Master- als<br />

auch die Slave-Software an und ermöglichte den Ingolstädter<br />

Elektr<strong>on</strong>ikentwicklern die effiziente Messung<br />

und Kalibrierung dank einer dynamischen Zuordnung der<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Bandbreite für <strong>FlexRay</strong>.<br />

Ab 2009 setzt Audi in der nächsten Generati<strong>on</strong><br />

sportlicher Luxuslimousinen den <strong>FlexRay</strong>-Kommunikati<strong>on</strong>sbus<br />

ein, da dieser im Vergleich zu<br />

CAN eine wesentlich höhere Bandbreite v<strong>on</strong> 10 Mbit/s<br />

bietet. Viele elektr<strong>on</strong>ische Fahrwerks- und Fahrerassistenzsysteme<br />

werden an das deterministische und zeitgesteuerte<br />

Bussystem angeschlossen. Für die Audi Entwickler<br />

bedeutet diese Entscheidung die direkte Parametrierung<br />

mehrerer tausend Parameter verschiedener<br />

Steuergeräte über einen AUTOSAR <strong>FlexRay</strong>-Stack.<br />

Gegenüber CAN lassen sich mit <str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong> mehr<br />

als doppelt so viele Messwerte gleichzeitig erfassen.<br />

Außerdem können große Datenmengen schneller übertragen<br />

werden.<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong><br />

Die Parameter eines Regelalgorithmus lassen sich nur bedingt<br />

mit einem Labormodell bestimmen. Während die Algorithmen<br />

der Funkti<strong>on</strong>en fest im Steuergeräteprogramm<br />

enthalten sind, werden Parameterwerte wie Kennfelder, -linien<br />

und -werte erst durch Messungen am Prüfstand und in<br />

Fahrerprobungen erfasst und optimiert. Die Audi Ingenieure<br />

stimmen im Rahmen der Steuergeräte-Kalibrierung die Fahrwerksysteme<br />

und Assistenzsysteme ab und laden die Parametersatzdateien<br />

dann in den Applikati<strong>on</strong>sspeicher der Steuergeräte.<br />

Um Steuergeräte über den gesamten Entwicklungsverlauf –<br />

unabhängig v<strong>on</strong> Hersteller oder eingesetztem Bussystem –<br />

v<strong>on</strong> einem einzigen Master aus zentral und über eine ein-


66lA UTOMOTIVE<br />

7-8.2008l ENGINEERING TOOLS<br />

© Carl Hanser Verlag, München www.hanser-<strong>automotive</strong>.de Nicht zur Verfügung im Intranet- und Internet-Angeboten sowie elektr<strong>on</strong>ischen Verteilern<br />

heitliche Schnittstelle zu kalibrieren, ist ein standardisiertes<br />

Mess- und Kalibrierprotokoll erforderlich. ASAM (Associati<strong>on</strong><br />

for Standardisati<strong>on</strong> of Automati<strong>on</strong> and Measuring Systems)<br />

hat hierfür als k<strong>on</strong>sequente Weiterentwicklung v<strong>on</strong> CCP<br />

(CAN Calibrati<strong>on</strong> Protocol) im Jahr 2003 das universelle<br />

Mess- und Kalibrierprotokoll <str<strong>on</strong>g>XCP</str<strong>on</strong>g> definiert [1]. Die Kommunikati<strong>on</strong><br />

durch <str<strong>on</strong>g>XCP</str<strong>on</strong>g> erfolgt nach dem Master-Slave-Prinzip.<br />

Als Slave dient ein <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodul, das in jedem zu kalibrierenden<br />

Steuergerät integriert wird. Größter Vorteil des<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Protokolls ist eine Trennung v<strong>on</strong> Transport- und Protokollschicht.<br />

Die Protokollschicht ist bei allen Bussystemen,<br />

egal ob CAN, <strong>FlexRay</strong>, Ethernet oder SPI/SCI, gleich. Seit Februar<br />

2006 ist die Versi<strong>on</strong> 1.0 der Transport-Layer-Spezifikati<strong>on</strong><br />

für „<str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong>“ v<strong>on</strong> ASAM offiziell freigegeben.<br />

Das Audi Entwicklungsteam arbeitete bereits in früheren<br />

CAN-Projekten mit <str<strong>on</strong>g>XCP</str<strong>on</strong>g> und CANape, dem Allround-Tool der<br />

Vector Informatik GmbH für Messen, Kalibrieren und Diagnose<br />

v<strong>on</strong> Steuergeräten (Bild 1). Seit 2005 verfügt das MCD<br />

(Measurement Calibrati<strong>on</strong> and Diagnostics) -Tool über eine<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong>-Schnittstelle. Audi legte Wert darauf <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-<br />

Master (CANape) sowie die Protokoll- und Transport-Layer<br />

Softwaremodule für <str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong> v<strong>on</strong> einem Lieferanten<br />

zu beziehen.<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Einbindung im AUTOSAR-Modell<br />

Die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodule wurden v<strong>on</strong> Audi in Steuergeräte<br />

unterschiedlichster Zulieferer integriert. Auch nach der<br />

Kalibrierung sollen die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodule in den Steuergeräten<br />

weiter verfügbar bleiben. Daher sind für die Softwaremodule<br />

eine effiziente Speichernutzung und geringe<br />

Laufzeit unabdingbar; zudem sollten sie AUTOSAR-kompatibel<br />

sein. Diese Anforderung setzte Vector beim <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Transport<br />

Layer um, damit er direkt über den PDU-Router auf den<br />

AUTOSAR Kommunikati<strong>on</strong>s-Stack (<strong>FlexRay</strong> oder CAN) aufsetzt<br />

(Bild 2). Bei der Integrati<strong>on</strong> erfolgt die K<strong>on</strong>figurati<strong>on</strong><br />

der beiden <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodule mithilfe des K<strong>on</strong>figurati<strong>on</strong>swerkzeugs<br />

GENy und einer Netzwerkbeschreibungsdatei<br />

im FIBEX-Format.<br />

Bild 2: Integrati<strong>on</strong> der Vector <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodule in einer AUTOSAR 3.0<br />

kompatiblen Anwendung.<br />

Bild 1: Als <str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong> Master misst und verstellt CANape<br />

einzelne Knoten direkt über <strong>FlexRay</strong>.<br />

© <strong>automotive</strong><br />

Dynamische Verwaltung der <strong>FlexRay</strong>-<br />

Bandbreite<br />

Aus der geforderten AUTOSAR-Kompatibilität der <str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong><br />

<strong>FlexRay</strong> Softwaremodule ergeben sich spezielle Aufgaben<br />

für den PC-gestützten Master. Während der Steuergeräte-<br />

Kalibrierung über <strong>FlexRay</strong> tauschen <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Master und Slaves<br />

<strong>FlexRay</strong>-Botschaften (Frames) aus. Diese enthalten Command<br />

Transfer Objects (CTO), die nur Steuerbefehle enthalten<br />

oder Data Transfer Objects (DTO) mit Mess- oder Stimuli-Daten.<br />

Wird ein solches <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Objekt zum Master übertragen<br />

(Bild 3), übergibt der „<str<strong>on</strong>g>XCP</str<strong>on</strong>g> Transport Layer“ die<br />

Daten an den PDU-Router und somit an das „<strong>FlexRay</strong> Interface“.<br />

Auf Grund der AUTOSAR-Kompatibilität muss diese<br />

Übergabe in der Form eines AUTOSAR-k<strong>on</strong>formen PDUs<br />

(Protocol Data Unit) erfolgen. Weil der PDU aus dem <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-<br />

Modul stammt, wird er <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-PDU genannt. Das <strong>FlexRay</strong><br />

Interface vervollständigt das empfangene<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g>-PDU mit eigenen spezifischen<br />

Informati<strong>on</strong>en in der Form<br />

eines PCI Headers (Protocol C<strong>on</strong>trol<br />

Informati<strong>on</strong>) und bildet somit ein L-<br />

PDU (Data Link Layer PDU), der<br />

wiederum dem „<strong>FlexRay</strong> Driver“<br />

weitergeleitet wird. Auf diese Art<br />

und Weise vervollständigt jedes beteiligte<br />

Softwaremodul die ihm<br />

übergegebenen Daten mit modulspezifischen<br />

Informati<strong>on</strong>en, die der<br />

Rek<strong>on</strong>strukti<strong>on</strong> der Daten beim<br />

Empfänger dienen. Am Ende der<br />

Kette überträgt der <strong>FlexRay</strong>-C<strong>on</strong>troller<br />

innerhalb eines <strong>FlexRay</strong> Slots<br />

(Zeitfenster) die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Daten als<br />

Frame. Gemäß der <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Spezifikati<strong>on</strong><br />

dürfen diese Frames ausschließlich<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Daten enthalten.<br />

© <strong>automotive</strong><br />

Deshalb werden in der systemüber-


ENGINEERING TOOLSl AUTOMOTIVE<br />

7-8.2008l67<br />

© Carl Hanser Verlag, München www.hanser-<strong>automotive</strong>.de Nicht zur Verfügung im Intranet- und Internet-Angeboten sowie elektr<strong>on</strong>ischen Verteilern<br />

Bild 3: Übertragung der <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Daten über die verschiedenen Softwaremodule.<br />

© <strong>automotive</strong><br />

greifenden FIBEX-Netzwerkbeschreibungsdatei einige Slots im <strong>FlexRay</strong> Schedule<br />

ausschließlich für <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-PDUs reserviert und nicht mit Applikati<strong>on</strong>s-PDUs<br />

kombiniert.<br />

Für die Steuerbefehle (CTOs) reichen dank der Slave-bezogenen Knotenadresse<br />

(Node Adress for <str<strong>on</strong>g>XCP</str<strong>on</strong>g>, NAX) zwei einzelne <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slots für alle Steuergeräte<br />

aus. Der genaue Umfang der für die Mess- oder Stimulidaten benötigten<br />

DTOs hängt v<strong>on</strong> der aktuell durchgeführten Messung ab und kann im gesamten<br />

Verlauf einer Kalibrierung stark variieren. Damit variiert auch für jedes<br />

Steuergerät der Bedarf an <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slots.<br />

Damit die Audi Ingenieure die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Daten mehrerer Steuergeräte mit der limitierten<br />

Anzahl an verfügbaren <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slots effizient übertragen können, ist es erforderlich,<br />

die verfügbare Bandbreite zur Laufzeit flexibel allen betroffenen<br />

Steuergeräten zuzuteilen. AUTOSAR erlaubt es allerdings nicht, den „<strong>FlexRay</strong><br />

Driver“ zur Laufzeit umzuk<strong>on</strong>figurieren. Daher werden in der Integrati<strong>on</strong>sphase<br />

die „<strong>FlexRay</strong> Driver“ so k<strong>on</strong>figuriert, dass alle <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slots allen Steuergeräten<br />

zugewiesen sind. Gleichzeitig wird die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-PDU/L-PDU/<str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slot Zuordnung<br />

im Slave festgelegt (Bild 3). Als Resultat steht am Ende der K<strong>on</strong>figurati<strong>on</strong><br />

für jeden einzelnen <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Puffer ein eindeutiger <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slot im <strong>FlexRay</strong> Schedule<br />

zur Verfügung. Um die erforderliche Flexibilität zu erreichen, wird auf <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-<br />

Ebene durch den <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Transport-Layer-Befehl „FLX_ASSIGN“ vor jeder Messung<br />

die Zuordnung der <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Puffer zu den L-PDUs (bzw. <strong>FlexRay</strong> Slots) angepasst<br />

(Bild 4). Wichtig ist dabei, dass alle betroffenen Steuergeräte bei der<br />

Softwareintegrati<strong>on</strong> mit den maximal verfügbaren <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slots k<strong>on</strong>figuriert sind.<br />

Dies führt zu der gleichen Zuteilung der <str<strong>on</strong>g>XCP</str<strong>on</strong>g> Slots auf jedem Steuergerät. Vor<br />

jeder Messung werden dann nur die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Puffer markiert, die tatsächlich benötigt<br />

werden. Ein zentrales „dynamisches Bandbreitenmanagement“ stellt<br />

dabei sicher, dass die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Slot-Zuordnung über alle Slaves eindeutig ist. CA-<br />

Nape übernimmt diese Rolle mithilfe der steuergerätespezifischen A2L-Beschreibungsdateien,<br />

die Informati<strong>on</strong>en über die steuergeräteinternen Puffer<br />

liefern.<br />

07406 © 2008<br />

4. – 6. November 2008<br />

Messe Stuttgart<br />

Automotive<br />

Software<br />

& Electr<strong>on</strong>ics<br />

Neueste Technologien und<br />

Entwicklungen auf höchstem<br />

fachlichen Niveau für das<br />

Fahrzeug v<strong>on</strong> morgen.<br />

Effiziente K<strong>on</strong>takte und<br />

Problemlö sungen bietet<br />

die driveIT mit der<br />

Kombinati<strong>on</strong> aus<br />

» Fachmesse<br />

» Fachk<strong>on</strong>gress<br />

» Fachevent<br />

Gestalten Sie die Zukunft<br />

des Automobils mit!<br />

driveIT – Impulsgeber<br />

für Innovati<strong>on</strong>en<br />

und Kooperati<strong>on</strong>en.<br />

www.drive-it-expo.com<br />

H & K Messe GmbH & Co. KG<br />

Friedrichstraße 39<br />

70174 Stuttgart<br />

Telef<strong>on</strong>: +49 (0) 7 11 / 72 23 10-0<br />

Telefax: +49 (0) 7 11 / 72 23 10-20<br />

info@hundkmesse.de<br />

www.hundkmesse.de


68lA UTOMOTIVE 7-8.2008l ENGINEERING TOOLS<br />

© Carl Hanser Verlag, München www.hanser-<strong>automotive</strong>.de Nicht zur Verfügung im Intranet- und Internet-Angeboten sowie elektr<strong>on</strong>ischen Verteilern<br />

Bild 4: Vor einer Messung erfolgt die dynamische K<strong>on</strong>figurati<strong>on</strong><br />

der <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Objekte im dynamischen Segment.<br />

© <strong>automotive</strong><br />

Optimierter <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Einsatz dank <strong>FlexRay</strong><br />

Das neue dynamische Bandbreitenmanagement ist nur eine<br />

der <strong>FlexRay</strong>-spezifischen CANape Funkti<strong>on</strong>en, die Audi eine<br />

effiziente Steuergeräte-Kalibrierung ermöglicht. Die Tatsache,<br />

dass <strong>FlexRay</strong> mit bis zu 254 Byte um ein vielfaches längere<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g> Frames bietet als CAN (8 Byte), nutzt Vector gezielt<br />

in drei weiteren Funkti<strong>on</strong>en.<br />

Mit dem „Short Download“ werden in einem einzigen L-<br />

PDU gleichzeitig Adresse und Inhalt kodiert, um viel schneller<br />

als bei CAN Speicherbereiche zwischen Master und Slave<br />

auszutauschen.<br />

Außerdem ermöglicht <str<strong>on</strong>g>XCP</str<strong>on</strong>g> eine vom <strong>FlexRay</strong>-Zyklus unabhängige<br />

Überabtastung, um sehr dynamische Signalverläufe<br />

zu erfassen (Bild 5). Mit der so genannten „Incycle Multiple<br />

DAQ-List Transmissi<strong>on</strong>“-Funkti<strong>on</strong> erfasst CANape<br />

Messsignale einer vordefinierten DAQ-Liste und den dazugehörenden<br />

Zeitstempeln mehrfach pro <strong>FlexRay</strong>-Grundzyklus<br />

(in der Regel 5 ms lang).<br />

Um den Messungsstart deutlich zu beschleunigen, musste<br />

auch die dazu erforderliche Initialisierung vor jeder Messung<br />

optimiert werden. Mit dem Befehl „WRITE-DAQ-MULTI-<br />

PLE“ – eine Erweiterung des bisherigen einfachen „WRITE-<br />

DAQ“-Befehls – aus dem noch nicht verabschiedeten <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-<br />

Protocol-Layer 1.1, kann die K<strong>on</strong>figurati<strong>on</strong> mehrerer Signale<br />

durch ein einziges Kommando erfolgen.<br />

Bild 5: Mit der „Incycle Multiple DAQ List Transmissi<strong>on</strong>“ erfasst<br />

der Slave die Messsignale aus einer DAQ-Liste schneller als der<br />

<strong>FlexRay</strong>-Grundzyklus.<br />

© <strong>automotive</strong><br />

Zusammenfassung<br />

Die Audi Ingenieure setzen während der Entwicklung neuer<br />

Modelle im Rahmen v<strong>on</strong> Erprobungs- und Applikati<strong>on</strong>sfahrten<br />

das MCD-Tool CANape ein, um steuergeräteinterne Größen<br />

mit <str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong> zu messen und zu verstellen. Dazu<br />

erweiterte Vector CANape und die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodule.<br />

Die Hauptaufgabe bestand darin, neben der Erweiterung der<br />

<str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodule um die AUTOSAR-Kompatibilität auch<br />

eine dynamische Bandbreitenverwaltung für <strong>FlexRay</strong> umzusetzen.<br />

Da bei Vector sowohl die <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Softwaremodule für<br />

die Slaves als auch der <str<strong>on</strong>g>XCP</str<strong>on</strong>g>-Master CANape aus einer Hand<br />

kommen und perfekt aufeinander abgestimmt sind, fiel Audi<br />

die Wahl des Softwarelieferanten als Entwicklungspartner<br />

leicht. Alle Erweiterungen sind in der aktuellen Versi<strong>on</strong> v<strong>on</strong><br />

CANape und der <str<strong>on</strong>g>XCP</str<strong>on</strong>g> <strong>on</strong> <strong>FlexRay</strong> Softwaremodule erhältlich.<br />

(oe)<br />

Literaturhinweis:<br />

[1] www.asam.org<br />

Dipl.-Ing (FH) Christian Braun ist seit<br />

2006 bei Audi im Bereich Entwicklung<br />

Fahrwerkselektr<strong>on</strong>ik zuständig für Messtools<br />

und die Vernetzung der Systeme.<br />

E-Mail: christian.braun@audi.de<br />

Dipl.-Ing. Pascale Morizur arbeitete nach<br />

Ihrem Abschluss 1986 10 Jahre bei MAN-<br />

Nutzfahrzeuge in der Vorentwicklung im<br />

Bereich CAN, J1939 und Diagnose. Seit<br />

2005 ist sie bei Vector als Product Management<br />

Engineer im Bereich Embedded-Softwarekomp<strong>on</strong>enten<br />

tätig. E-Mail:<br />

pascale.morizur@vector-informatik.de<br />

Vector Informatik<br />

@ www.vector-informatik.de

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!