Home » Presse » Fachartikel » LIN und FIBEX 

LIN und FIBEX

FIBEX (Field Bus Exchange Format) ist ein XML-basiertes Format zur Beschreibung komplexer, Nachrichten-Basierter Kommunikationssysteme. Ein LIN-Netzwerk kann, neben dem klassischen Austauschformat LDF, auch im FIBEX-Format definiert werden.

LIN

Der Lin-Bus (Local Interconnect Network) wurde für die kostengünstige Kommunikation von Steuergeräten in Kraftfahrzeugen entwickelt. LIN kommt in Bereichen zur Anwendung, in denen die grosse Bandbreite von Bussystemen wie z. B. CAN, nicht benötigt wird. Ein Beispiel für den Einsatz von LIN ist die Vernetzung von Zentralverriegelung, elektronischem Zündschloss, Lichtsteuerung oder Sitzheizung. Die Buszugriffssteuerung beruht auf dem Master-Slave-Prinzip. Der Master hat in so genannten Schedule-Tables Kenntnis über das zeitliche Verhalten der Slaves. Die Übertragung eine Nachricht wird immer durch den Master gestartet. Dabei wird vom Master ein Header gesendet. Der jeweilige Slave antwortet darauf mit der Übertragung von Daten. Die Länge der Daten kann zwischen einem und 8 Bytes variieren. Mit dem Master-Slave-Prinzip können mehrere Kommunikationsrichtungen realisiert werden.  Zum eine kann ein Slave auf eine Anfrage des Masters antworten. Ein Master kann aber auch Nachrichten an einen oder mehrere Slaves senden oder den Datenaustausch zwischen zwei Slaves initiieren. Die Nachrichten werden einmal pro Zyklus übertragen. Für eine Standardnachricht werden die Identifier 0 bis 59 verwendet. Um die Buslast zu minimieren können auch „Event-Triggered“- und „Sporadic“-Nachrichten definiert werden. Bei „Event-Triggered“-Nachrichten werden mehrere seltene Nachrichten zu einer Nachricht verbunden.  Bei „Sporadic“-Nachrichten wird in der Schedule-Table ein Slot reserviert. In diesem Slot können dann seltene Nachrichten von Slaves versendet werden. Sollten dabei mehrere Nachrichten auf dem gleichen Slot gesendet werden, wird die Nachricht mit der höchsten Priorität zuerst übertragen. Für den Austausch von Diagnosedaten können Diagnose-Nachrichten mit den Identifiern 60 und 61 verwendet werden. In Schedule-Tables wird das zeitliche Verhalten der Nachrichtenübertragung definiert. Dabei wird festgelegt, wie oft eine Nachricht auf dem Bus übertragen wird und wie die Übertragungszeit dieser Nachricht ist. Es kann jederzeit zwischen verschiedenen Schedule-Tables hin- und hergeschaltet werden.

FIBEX

Der FIBEX-Standard beschreibt ein multiprotokoll-fähiges Format zum Austausch von Daten in nachrichtenorientierten Kommunikationssystemen z.B. in  Fahrzeugnetzwerken. Das FIBEX-Format kann für den Export von Bordnetzdatenbanken bzw. für den Import in die unterschiedlichsten Tools bei der Entwicklung von Fahrzeugnetzwerken verwendet werden. Es unterstützt derzeit die Netzwerkprotokolle FlexRay, CAN, MOST und LIN. Von der Auslegung kompletter Cluster bis hin zur Definition auf Bitebene können alle relevanten Informationen für die Beschreibung von Fahrzeugnetzwerken mit dem FIBEX-Format definiert werden. Bild 1 zeigt in einem Diagramm die LIN-Elemente in FIBEX.

FIBEX ist ein frei verfügbarer firmenübergreifender Standard, der anhand von XML-Schemadateien definiert ist und damit auch validiert werden kann. Nicht den XML-Schemata entsprechende Referenzen können damit leicht erkannt werden. Aufgrund des durch die ASAM (Association for Standardisation of Automation and Measuring Systems) definierten Standards ist von vorneherein sichergestellt, dass die Konvertierung bzw. der Datenaustausch zwischen verschiedenen Tools vereinheitlicht und somit im Gegensatz zu den in der Vergangenheit oft auftretenden Inkompatibilitäten wesentlich vereinfacht wird.

Von LIN nach FIBEX

Bei LIN wird die Definition eines Netzwerkes in LDF-Dateien beschrieben. Im Folgenden wird an einem einfachen Beispiel die Konvertierung von LDF nach FIBEX dargestellt. Im ersten Abschnitt der LDF-Datei werden die Protokoll-Version, die Sprach-Version und die Baudrate angegeben. Im Anschluss wird der Name des Masters und sein Zeitverhalten, sowie die Slaves, definiert. In Bild 2 sieht man im oberen Teil diesen Ausschnitt aus der LDF-Datei und im unteren Teil die Umsetzung in FIBEX.

Im nächsten Abschnitt (Bild 3) werden die Signale definiert. Dabei wird der Signalname, die Signallänge, der Defaultwert, der Publisher (LIN-Sender) sowie der oder die Subscriber (LIN-Empfänger) angeben. Die Signallänge wird in FIBEX im Coding-Element hinterlegt. Der Publisher und die Subscriber werden in FIBEX über Funktionen definiert.

Darauf aufbauend werden die Nachrichten (Frames) erzeugt. Ein Frame (Bild 4) besteht aus dem Namen, dem Identifier, dem Publisher und optional der Framelänge. Für jedes Frame werden noch die zugehörigen Signale mit ihrer Lage in der Nachricht definiert.

Im Anschluss wird das zeitliche Verhalten in so genannten Schedule-Tables (Bild 5) hinterlegt. Dabei werden Slots für die Übertragung der Frames in die Schedule-Tables eingetragen. Die Größe eines Slots muß ein Vielfaches der Zeitbasis des Masters sein. Die Schedule-Tables werden in FIBEX unter Relatively-Scheduled-Timings definiert. Im Elternelement dieses Elementes wird noch der Identifier aus dem LDF-Frameabschnitt hinterlegt.

Die Kodierung der Signale wird im Abschnitt „Signal_encoding_types“ angegeben. Mit dem Schlüsselwort logical_value kann jedem Signalwert ein Wort zugewiesen werden. In FIBEX wird dies mit dem Coding TEXTTABLE umgesetzt. Über das Schlüsselwort physical_value kann eine Umrechung des Signalwertes bestimmt werden. Die Berechnung findet durch die Formel physical_value = scale * raw_value + offset statt. Dies kann in FIBEX über das Coding-Verhalten LINEAR abgebildet werden.

Daran anschließend wird jedem Signal eine Signalkodierung zugewiesen. In FIBEX wird die Referenz auf eine Signalkodierung schon bei der Erzeugung eines Signals definiert.