XCP on FlexRay - HANSER automotive
XCP on FlexRay - HANSER automotive
XCP on FlexRay - HANSER automotive
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