Kurzeinführung in FlexRay
Was ist FlexRay?
FlexRay ist ein schnelles, deterministisches und fehlertolerantes Bussystem für den Automobileinsatz. Seit dem Jahre 2000 wurde von den Core-Partnern des FlexRay-Konsortiums - BMW, DaimlerChrysler, Motorola (Freescale), Philips Semiconductors (NXP), Bosch, General Motors und Volkswagen - die FlexRay-Spezifikation vorangetrieben, welche derzeit in einen ISO-Standard überführt wird.
Der Datenaustausch zwischen den verbauten Steuergeräten im Fahrzeug wird heute hauptsächlich über ein CAN-Netzwerk durchgeführt. Die Einführung neuer Technologien sowie stets wachsende Datenaufkommen führen jedoch zu steigenden Anforderungen, insbesondere in Bezug auf die Fehlertoleranz und die Zeitsteuerung bei der Nachrichtenübertragung. FlexRay erfüllt diese erhöhten Anforderungen durch eine Nachrichtenübertragung in festen Zeitfenstern und durch eine fehlertolerante und redundante Übertragung auf zwei Kanälen.
Der Physical Layer
FlexRay arbeitet nach dem Prinzip von TDMA, bei dem die Knoten oder Nachrichten feste Zeitfenster ("Slots") zugeteilt bekommen, in denen sie einen exklusiven Buszugang haben. Diese Zeitfenster wiederholen sich in einem bestimmten Zyklus. Der Zeitpunkt, an dem sich eine Nachricht auf dem Bus befindet, kann dadurch exakt vorausgesagt werden.
Die feste Zuordnung der Knoten oder Nachrichten zu festen Zeitfenstern hat jedoch den Nachteil, dass die Bandbreite nicht voll ausgeschöpft wird. Aus diesem Grund unterteilt FlexRay den Zyklus in statische und dynamische Abschnitte. Am Anfang eines Kommunikationszyklus' befindet sich das statische Segment, in dem jeder Botschaft ein fixes Zeitfenster zugeteilt ist, in dem ein Knoten immer senden muss. Wenn keine Daten vorliegen, wird in diesem Zeitfenster eine leere Nachricht (sogenannter „Nullframe“) gesendet.
Im nachfolgenden dynamischen Abschnitt werden die Zeitfenster dynamisch zugeteilt. Ein exklusiver Buszugang ist immer nur für eine kurze Zeit möglich (sogenannte "Minislots"). Dieses Zeitfenster wird dann zum Senden einer Nachricht um die dazu benötigte Zeit erweitert. Darauf folgende Nachrichten verschieben sich dadurch nach hinten. Nicht versendete Nachrichten blockieren damit nicht den nachfolgenden Datenaustausch, weil kein Zeitfenster dafür reserviert wird und die weiteren Nachrichten dementsprechend vorrücken.
Datenübertragungsgeschwindigkeit von FlexRay
FlexRay kann über zwei physikalisch getrennte Kanäle (A + B) mit einer Datenübertragungsgeschwindigkeit von jeweils 10 Mbit/s kommunizieren. Heute wird in der Praxis allerdings lediglich der Kanal A genutzt. Beide Kanäle sind hauptsächlich für eine redundante und daher fehlertolerante Nachrichtenübertragung geplant. Sie können aber auch unterschiedliche Nachrichteninhalte übertragen; in diesem Fall verdoppelt sich der Datendurchsatz.
FlexRay kann mit unterschiedlichen Datenübertragungsgeschwindigkeiten betrieben werden: 2,5 Mbit/s, 5 Mbit/s sowie 10 Mbit/s.
Knoten-Synchronisation
Zur Umsetzung des Buszugriffsverfahrens benötigen die im Kommunikationsnetzwerk verteilten Knoten eine gemeinsame Zeitbasis. Um die lokalen Uhren der einzelnen Knoten aufeinander abzustimmen, und damit eine globale Zeitbasis zu gewinnen, werden Synchronisationsnachrichten im statischen Teil des Kommunikationszyklus übertragen.
Struktur eines FlexRay-Knotens
Ein FlexRay-Knoten besteht aus einem Host-Prozessor, dem FlexRay Communication Controller (CC), dem Bus Guardian (BG) und je Kanal einem Bustreiber (BD).
Der Communication Controller ist für die Synchronisierung des Knotens mit dem Restnetzwerk zuständig. Empfangene Nachrichten werden dem Host-Prozessor zur Verfügung gestellt; Daten vom Host-Prozessor werden im entsprechenden Zeitslot vom Communication Controller versendet. Der Bustreiber hat dabei die Aufgabe aus den Daten des Communication Controllers die physikalischen Bussignale zu generieren und umgekehrt.
Der Bus Guardian überwacht den Buszugang des CC’s durch Aktivierung des Bustreibers zum Senden. Der Datenempfang ist zu jeder Zeit möglich. Der Bus Guardian findet in der Praxis derzeit jedoch keine Verwendung.
Topologie
Die Topologie des FlexRay-Netzwerks ist weitestgehend offen. Allerdings findet im Fahrzeug nur die Daisy-chain-Verbindung und der Aktive Stern Verwendung.
Der Aktive Stern ist ein aktiver Knotenpunkt, der Nachrichten an einem Zweig erhält und diese per Broadcast, ähnlich einem Hub, an die anderen Zweige verteilt.
Unter einer Daisy-Chain Verbindung versteht man lediglich das Durchschleifen einer FlexRay-Leitung von einem Knoten zum Anderen.
Wakeup, Startup
Ein Wakeup kann entweder über das FlexRay-Netzwerk oder lokal durch das Einschalten eines Knoten geschehen, wodurch sich dieser initialisiert.
Anders wie beim CAN-Netzwerk startet die Kommunikation nicht direkt nach dem Wakeup. Zum Aufstarten eines FlexRay-Netzwerks muss zuerst ein Startup-Vorgang durch sogenannnte Coldstart Knoten (dies sind Knoten, welche einen FlexRay-Netzwerkstart initiieren dürfen) mit Startup-Nachrichten durchlaufen werden.
Datenbankformat
Beim CAN-Netzwerk nutzt man üblicherweise eine *dbc-Datei als Kommunikationsmatrix. Das FlexRay Netzwerk mit allen seinen Knoten einschließlich deren Kommunikation wird entweder in FIBEX oder AUTOSAR beschrieben.
Beim FIBEX Format handelt es sich um eine XML-Datei zur Beschreibung von kompletten Fahrzeugnetzwerken, einem freien Standard, definiert durch ASAM e.V., Das FIBEX-Format ermöglicht die vollständige Beschreibung von FlexRay-, CAN-, MOST- sowie LIN-Netzwerken, inklusive aller Gateway-Verbindungen im Fahrzeug untereinander, in einer Datei.
AUTOSAR beschreibt ebenfalls die Kommunikation ähnlich dem FIBEX Standard, ergänzt dies jedoch um weitere Informationen zu Funktionen und Verhalten der Steuergeräte. Daher ist auch eine Konvertierung von AUTOSAR nach FIBEX möglich.
Vergleich: CAN vs. FlexRay
| CAN | FlexRay |
Verdrahtung | Elektrisch; Zweidraht | Elektrisch; Zweidraht; optional 2 Kanäle |
Signalpegel | ‘0‘ dominant, ‘1‘ rezessiv | Idle, ‘0‘, ‘1‘ |
Datenrate | bis 1MBit | bis 10MBit bei 2 Kanälen: bis 20MBit |
Zugriffsprinzip | eventgesteuert | zeitgesteuert |
Topologien | Bus; passiver Stern | Bus; passiver Stern; aktiver Stern |
Terminierung | 120 Ω | 90 Ω |
Arbitrierung | Höherpriore Nachricht kann eine niederpriore Nachricht „überschreiben“ | Keine Arbitrierung Wird aufgrund des TDMA Verfahrens nicht benötigt. Beide aktiven Signalzustände (‚0’ und ‚1’) sind gleichwertig. |
Acknowledgement | Empfänger „quittiert“ den Empfang eines gültigen Frames | Kein Acknowledgement Der Sender erhält keine Information ob ein Frame korrekt übertragen wurde. Fehlererkennung im Empfänger. Fehlerbehandlung durch Applikation. |
Error Frame | Ein Fehler kann im Netzwerk durch einen Error Frame kenntlich gemacht werden. | Keine Error Frames Jeder Empfänger überprüft für sich ob der empfangene Frame korrekt ist. (z.B. CRC check) |
Frame Länge | Maximal 8 Byte Nutzdaten | Maximal 256 Byte Nutzdaten |
Nachrichten-ID’s | Beliebig wählbar;
Größte ID 11-bit Länge (bzw „extended ID“ 29-bit Länge) | Je nachdem ob die Nachricht im statischen oder dynamischen Teil gesendet wird; Größte ID abhängig von der Slot-Anzahl. |
Kontakt
Eberspächer Electronics
GmbH & Co. KG
Robert-Bosch-Straße 6
73037 Göppingen
GERMANY
Tel.: +49 7161 9559-0
Fax: +49 7161 9559-455
ebel-info@eberspaecher.com
Haben Sie Fragen?




