Feldbus-Konfigurationsdaten toolübergreifend austauschen Bordnetze entwerfen mit dem FIBEX-Editor

FIBEX (Field Bus Exchange Format) ist ein XML-Format zur Beschreibung komplexer, nachrichtenorientierter Kommunikationssysteme, wie z.B. Fahrzeug-Bordnetzwerke. Mit Hilfe dieses Austauschformates können Daten zwischen Design-, Konfigurations-, Simulations- und Monitoring-Tools ausgetauscht werden. Der FIBEX-Editor ist ein neues Werkzeug zum Bearbeiten und Erstellen dieser teilweise sehr unübersichtlichen XML-Dateien. Neben einer visuellen Darstellung der Fahrzeugnetzwerke können die Daten über vordefinierte Regeln validiert werden.

FIBEX (Field Bus Exchange Format) ist ein XML-Format zur Beschreibung komplexer, nachrichtenorientierter Kommunikationssysteme, wie z.B. Fahrzeug-Bordnetzwerke. Mit Hilfe dieses Austauschformates können Daten zwischen Design-, Konfigurations-, Simulations- und Monitoring-Tools ausgetauscht werden. Der FIBEX-Editor ist ein neues Werkzeug zum Bearbeiten und Erstellen dieser teilweise sehr unübersichtlichen XML-Dateien. Neben einer visuellen Darstellung der Fahrzeugnetzwerke können die Daten über vordefinierte Regeln validiert werden.

Der FIBEX-Standard ist 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 und CAN; MOST und LIN sollen folgen. 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. Von den in Bild 1 farbig markierten Hauptbereichen Topologie, Kommunikation, Funktion, Anforderungen, Struktur und Info sind u.a. die für eine Definition eines Netzwerks relevanten Teilbereiche Cluster, ECU, Channel, Gateway, Controller, Frames, Signale und Coding dargestellt.

FIBEX unterteilt Netzwerke in verschiedene Bereiche. Dabei gelten die folgenden Definitionen:

Cluster:
Netzwerk bestehend aus mehreren Steuergeräten (ECUs)
ECU:
Steuergerät (Electronic Control Unit)
Gateway:
Verbindung zwischen zwei Bussystemen, z.B. Flexray und CAN
Controller: Schnittstellenbaustein für ein bestimmtes Protokoll, z.B. CAN-Controller
Channel:
Physikalische Schnittstelle (Kanal) des Steuergerätes zur Außenwelt, z.B. CAN- oder FlexRay-Schnittstelle
Frame:
Übertragungseinheit auf der Netzwerkverbindung, bestehend aus mehreren Bytes
Signal:
Untereinheit eines Frames zur Übertragung einer physikalischen Größe.
Coding:
Definiert für ein Signal beziehungsweise eine Gruppe von Signalen die Art der Übertragung, also zum Beispiel die Bitlänge, die physikalische Einheit, den Offset und den Skalierungsfaktor

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 Standardization of Automation and Measuring Systems) definierten Standards ist sichergestellt, dass der Datenaustausch zwischen verschiedenen Tools genau definiert ist und nicht durch Inkompatibilitäten erschwert wird.

Mit dem FIBEX-Editor können die Bereiche Cluster, Channel, ECU, Frame, Signal, Coding, Function und Signalgroup bearbeitet werden. Dabei können nicht nur relativ einfach aufgebaute FlexRay- und CAN-Cluster definiert, sondern auch alle für einen FlexRay-Cluster relevanten Parameter spezifiziert werden. Eine Definition für einen FlexRay-Cluster kann dabei mehr als 30 FlexRay-Parameter wie z.B. Number of Static Slots, Number of Minislots usw. umfassen (Bild 2).

Das ECU-Fenster zeigt in der Standard-Ansicht, welche Steuergeräte auf welchen Kanälen welche Frames senden (Bild 3):

An dieser Stelle wird auch das Zeitverhalten (Timing) der verschiedenen gesendeten Frames bearbeitet. Man kann hier z.B. anhand der FlexRay-Parameter Base-Cycle und Repetition definieren, in welchem FlexRay-Zyklus und mit welcher Wiederholrate ein spezielles Frame übertragen werden soll. In einer zweiten Ansicht (Bild 4) bekommt man einen Überblick darüber, welche Signale von welchen Steuergeräten empfangen werden. Auch hier hat man die Möglichkeit, Änderungen durchzuführen. In dieser Ansicht kann man durch wenige Mausklicks gesendete Signale einem anderen Steuergerät zum Empfang zuweisen.

Im Frame-Fenster (Bild 5) werden Frames dargestellt und die darin definierten Signale bearbeitet. So können z.B. Signale zu einem Frame hinzugefügt oder herausgelöscht werden. In einer grafischen Übersicht werden die Signale eines Frame angezeigt. Man kann die Position eines Signals durch einfaches Verschieben verändern. In diesem Fenster werden auch alle wichtigen Parameter eines Signals dargestellt. So bekommt man einen schnellen Über-blick über die verschiedenen Framesignale mit ihren Parametern wie z.B. Maßeinheit, Fehlerwert, Minimum, Maximum, Faktor und Offset.

Signale ihrerseits werden im Sig-nal-Fenster einem zuvor definierten sog. „Coding“ zugewiesen. Ein Coding (Coding-Format Linear) definiert die Art der Übertragung für ein Signal bzw. eine Gruppe von Signalen – also z.B. das Startbit für das Signal, die Bitlänge, die physikalische Einheit, den Offset und den Skalierungsfaktor, um nur einige der wichtigsten Elemente aufzuführen. Damit wird festgelegt, wie Rohdaten in physikalische bzw. darzustellende Werte umgerechnet werden. Die darzustellenden Werte werden dabei nach folgender Formel berechnet:

Physikalischer Wert = Offset + (Faktor x Rohdatum)