Sitemap

Know-How

Druckansicht

Technologieeinführungen

Einführung FlexRay

FlexRay ist ein schnelles, deterministisches und fehlertolerantes Bussystem für den Einsatz im Automobil, welches auf den Erfahrungen von DaimlerChrysler aus der Entwicklung von Prototypanwendungen sowie dem byteflight-Kommunikationssystem von BMW basiert. byteflight wurde von BMW vor allem für den Einsatz in passiven Sicherheitssystemen (Airbag) entwickelt. Um auch die Anforderungen aktiver Sicherheitssysteme zu erfüllen, wurde byteflight durch das FlexRay-Konsortium vor allem in Bezug auf zeitlichen Determinismus und Fehlertoleranz erweitert. Im FlexRay-Konsortium (www.flexray.com) sind heute CORE-Partner die Automobilbauer BMW, DaimlerChrysler, General Motors, Volkswagen sowie die Firmen Bosch, freescale und Philips Semiconductors vertreten.

Heute erfolgt der Datenaustausch zwischen den zahlreichen Steuergeräten, Sensoren und Aktoren in Kraftfahrzeugen weitestgehend über CAN-Netzwerke. Mit der Einführung der neuen x-by-wire Systeme ergeben sich jedoch erhöhte Anforderungen insbesondere an Fehlertoleranz und Echtzeitanforderung der Nachrichtenübertragung. FlexRay erfüllt diese erhöhten Anforderungen durch eine Nachrichtenübertragung in festen Zeitschlitzen und durch die fehlertolerante und redundante Nachrichtenübertragung auf zwei Kanälen.

Zugriff auf das Übertragungsmedium

FlexRay arbeitet nach dem Verfahren des TDMA (Time Division Multiple Access). Dabei sind den Komponenten bzw. Nachrichten feste Zeitschlitze zugewiesen, in denen sie einen exklusiven Zugriff auf den Bus haben. Die Zeitschlitze wiederholen sich in einem festgelegten Zyklus. Der Zeitpunkt, zu dem eine Nachricht über den Bus übertragen wird, kann exakt vorausgesagt werden, der Buszugriff erfolgt daher deterministisch.

Die feste Zuordnung der Bus-Bandbreite auf die Komponenten bzw. Nachrichten durch feste Zeitschlitze hat aber den Nachteil, dass die Bandbreite nicht optimal ausgenutzt wird. Deshalb unterteilt FlexRay den Zyklus in einen statischen und einen dynamischen Teil. Die festen Zeitschlitze befinden sich im statischen Teil am Anfang eines Buszyklusses. Im dynamischen Teil werden die Zeitschlitze dynamisch vergeben. Darin wird der exklusive Buszugriff jeweils nur für eine kurze Zeit (den sog. "Minislots") ermöglicht. Nur wenn innerhalb eines Minislots ein Buszugriff erfolgt, wird der Zeitschlitz um die benötigte Zeit verlängert. Bandbreite wird also nur verbraucht, wenn sie auch tatsächlich benötigt wird.

Diagramm - FlexRay Kommunikationszyklus
Bild 1: FlexRay Kommunikationszyklus

Datenrate von FlexRay

FlexRay kommuniziert über zwei physikalisch getrennte Leitungen mit einer Datenrate von je 10 MBit/s. Die zwei Kanäle dienen hauptsächlich der redundanten und damit fehlertoleranten Übertragung von Nachrichten, können jedoch auch unterschiedliche Nachrichten übertragen, wodurch sich die Datenrate verdoppelt.

FlexRay kann auch mit niedrigeren Datenraten von 2,5 oder 5 MBit/s betrieben werden. Für die Datenübertragung sind Bus-Topologien, aktive und passive Stern-Topologien sowie gemischte Topologien definiert.

Synchronisierung der Teilnehmer

Um synchrone Funktionen zu realisieren und die Bandbreite durch kleine Abstände zwischen zwei Nachrichten zu optimieren, benötigen die verteilten Komponenten im Kommunikationsnetzwerk eine gemeinsame Zeitbasis (globale Zeit). Für die Uhrensynchronisation werden spezifische statische Nachrichten als Synchronisationsnachrichten übertragen. Mit Hilfe eines speziellen Algorithmus wird die lokale Uhrzeit einer Komponente so korrigiert, dass alle lokalen Uhren zu einer globalen Uhr synchron laufen.

Struktur eines FlexRay-Netzknotens

Ein FlexRay-Netzknoten besteht aus Host-Prozessor, FlexRay-Communication-Controller (CC), optionalem Bus-Guardian (BG) und Bus-Treiber (BD). Der Host-Prozessor liefert und verarbeitet die Daten, die über den FlexRay-Controller übertragen werden.

Über den Bus-Treiber erfolgt die Anschaltung an den Bus, der Bus-Guardian überwacht den Zugriff auf den Bus. Der Host-Prozessor teilt hierbei dem Bus-Guardian mit, welche Zeitschlitze der FlexRay-Controller belegt hat. Der Bus-Guardian erlaubt dann dem FlexRay-Controller nur in diesen Zeitschlitzen den Sendezugriff. Der Empfang von Daten ist jederzeit möglich.

Diagramm - FlexRay Netzknoten
Bild 2: FlexRay Netzknoten