Table of Contents
Lesen von anderen Formaten
Um OOBD mit Daten zu versorgen aus denen dann lua Skripte erstellt werden können, arbeiten wir daran verschiedene Übersetzungsmethoden zu finden, die andere potentielle Quellen nutzbar machen. Diese verschiedenen Wege werden hier beschrieben.
Nutzen von MDX Dateien
MDX Dateien, eine OEM (Original Equipment Manufacturer) spezifischer Dialekt von ODX (Open Diagnostic Data Exchange, ODX-Standard (ASAM MCD-2D)), arbeitet bereits problemlos. Lies bitte die OpenDiagX Dokumentation um die Hintergründe zu erfahren.
Nutzen von Vector DBC Dateien
DBC Dateien beschreiben die Realdaten auf dem CAN-Bus ( Letztlich ist das auch ein Teil den wir abdecken möchten). Im Moment nutzen wir folgenden Ansatz:
Schritt 1: Konvertieren von .dbc in Kayak Definitions Dateien(.kcd)
Kayak ist ein nützliches Werkzeug unter Linux um RealCAN-Datenströme zu lesen. Erfreulicherweise existiert bereits ein Tool, welches das Vector dbc Dateiformat in ein xml Basiertes für Kajak übersetzt, CANBabel. Leider unterstützt der CANBabel Internetauftritt nur den Sourcecode, sodaß wir das ausführbare Programm selbst erzeugen müssen. Um Dir den Start zu erleichtern findest Du ein inoffizielles Binärfile hier CANBabel Binary.
Schritt 2 Übersetzung der Kayak Definition Dateien (.kcd) via XSLT
Wenn eine kcd Datei existiert, ist es einfach dies mit XSLT zu übersetzen eben wegen seiner xml Struktur. Unter Windows ist es schwer ein Programm für diesen Zweck zu finden, weil die “klickiklickibunti” basierten Oberflächen eher kompliziert, überladen oder teuer oder alles zusammen sind. (Falls Du doch mal ein einfaches findest, lass es uns wissen…)
Auf der Kommandozeile ist es meist nur ein Fingerschnipp, falls Du unter Linux oder Cygwin arbeitest. Es ist das XMLStarlet Paket, das es zum Arbeiten bringt. Nutze einfach das Shell Skript und eins der preparierten XSLT Transformationsdateien zur Verfügung gestellt durch den OBBD Projekt Ordner. Bitte stelle sicher das Du das richtige xmlstarlet Programm nutzt, welches mit dem Cygwin package Manager zur Verfügung gestellt wird. Hier kannst Du ein HowTo install Cygwin packages finden.