Haupteinsatzgebiet von FlexRay sind äußerst sicherheits- und
zeitkritische Anwendungen im Automobil. Die Organisation der
Kommunikation im FlexRay Cluster in statische Kommunikationszyklen und
die Verknüpfung von Zeitschlitzen mit FlexRay Knoten sorgen für einen
reibungslosen deterministischen Kommunikationsablauf.
Außer Tritt geratene FlexRay Knoten können diese Harmonie stören, wenn
sie unerlaubt innerhalb ihnen nicht zugeordneter Zeitschlitze senden.
Dies zu verhindern ist die Aufgabe der sog. Busguardians.
Beim Konzept des lokalen Busguardian
ist jedem FlexRay Transceiver ein Busguardian (BG) zugeordnet, der es
dem FlexRay Transceiver nur dann erlaubt, die vom FlexRay Controller
empfangenen Daten auf den Bus durchzuschalten (wie das realisiert wird,
geht aus der Grafik „Lokaler BG“ hervor), wenn es laut
Kommunikationsplan auch vorgesehen ist.
Bei den Daten handelt es
sich um die im statischen Kommunikationssegment reservierten Slots.
Innerhalb des dynamischen Kommunikationssegments kann es einen solchen
Schutz nicht geben, da die Botschaften bedarfsabhängig von den FlexRay
Knoten gesendet werden. Es besteht lediglich die Möglichkeit, einem
FlexRay Knoten das Senden im dynamischen Kommunikationssegment komplett
zu erlauben oder komplett zu verbieten.
Zur Umsetzung seiner
Funktion muss vorausgesetzt werden, dass der Busguardian den
Kommunikationsplan und die Zeit im FlexRay Cluster kennt. Ideal ist es,
wenn der Busguardian nicht auf der vom FlexRay Controller erzeugten lokalen Zeitbasis
aufsetzt, sondern diese unabhängig vom FlexRay Controller erzeugt. Denn
erst dadurch kann ein Busguardian sicherstellen, dass ein FlexRay
Knoten nur in seinen Zeitschlitzen senden kann, weil zusätzlich zur
Überprüfung der Zeitschlitze alle Fehler der Uhr des FlexRay Controllers
festgestellt werden können.
Dazu muss der Busguardian
allerdings mit fast denselben Funktionen wie der FlexRay Controller
ausgestattet sein, was nach sich zieht, dass der Busguardian eine
ähnliche Komplexität wie der FlexRay Controller erreicht und somit die
Kosten für die FlexRay Kommunikation in die Höhe treibt. Unabhängig
davon, wie ein Busguardian die Zeit gewinnt: bis dato liegen noch keine
Implementierungen eines lokalen Busguardians vor. Die entsprechende
Spezifikation Node Local Bus Guardian Specification liegt in der Version 2.0.9 vor; ihr Status ist vorläufig.
Dasselbe gilt für die Central Bus Guardian Specification in der Version 2.0.9. Auch sie ist vorläufig und bis dato liegen keine Implementierungen eines zentralen Busguardians vor. Dabei handelt es sich um ein Konzept, bei dem sich der Busguardian auf einem aktiven Sternkoppler
befindet. Der zentrale Busguardian aktiviert innerhalb des
Kommunikationszyklus immer jenen Kommunikationszweig, an dessen Ende
jener FlexRay Knoten angeschlossen ist, der laut Kommunikationsplan
senden darf. So können Signalkollisionen ausgeschlossen werden.