Suchen

Automotive-Entwicklung iSYSTEM und Vector erleichtern Analyse von Steuergerätesoftware

Redakteur: Franz Graser

Der Schwabhausener Testspezialist iSYSTEM und der Stuttgarter Softwerker Vektor Informatik haben die Integration der CAN-Bus-Entwicklungsumgebung CANoe mit den Testlösungen winIDEA/testIDEA bekanntgegeben.

Firmen zum Thema

Die Testanordnung: Unten links das Steuergerät, in der Mitte oben der blaue iSYSTEM-Debugger. Rechts das USB-Interface für FlexRay und CAN-Busse von Vector.
Die Testanordnung: Unten links das Steuergerät, in der Mitte oben der blaue iSYSTEM-Debugger. Rechts das USB-Interface für FlexRay und CAN-Busse von Vector.
(Bild: ELEKTRONIKPRAXIS)

In den Embedded-Entwicklungslabors ist oft zu beobachten, was Erol Simsek, CEO von iSYSTEM, als „hysterisch gewachsene Tool-Landschaften“ bezeichnet. Durchgängigkeit zwischen den den Entwicklungs- und Testwerkzeugen ist dort eher die Ausnahme als die Regel.

Die Zusammenarbeit, die iSYSTEM und Vector bekanntgaben, ist insbesondere den Forderungen aus der Automobilindustrie nach durchgängigen Entwicklungs- und automatisierten Test-Tools geschuldet. In einer gemeinsamen Entwicklung wurden die Softwarewerkzeuge von Vector so erweitert, dass sie über die Debugger von iSYSTEM und die Debug-Schnittstellen von Automotive-Steuergeräten Zugriff auf die Steuergeräte bekommen.

Bildergalerie

Ergänzendes zum Thema
Hintergrundinformationen

iSYSTEM Data Acquisition (DAQ) und XCP-Implementation auf den blauen Boxen

Das XCP-Protokoll sieht zwei Arten des Speicherzugriffs vor. Zum einen kann über das sogenannte Polling völlig asynchron zur Anwendungslogik auf einem Steuergerät auf eine beliebige Speicheradresse zugegriffen werden. Dazu sendet ein XCP-Master, wie zum Beispiel CANoe.XCP oder CANape die gewünschte Adresse an den XCP-Slave auf dem Steuergerät und erhält als Antwort die Daten an jener Adresse.

Die zweite Zugriffsart ist DAQ (Data AcQuisition). In diesem Fall sendet der XCP-Slave einmal konfigurierte Datenpakete zu von ihm bestimmten Zeitpunkten mit den jeweils aktuellen Werten an den XCP-Master. Diese Zugriffsart kann somit synchron mit der Anwendung auf dem Steuergerät erfolgen. Im Unterschied zum Polling können DAQ-Events auch den internen Zeitstempel des XCP-Slaves übertragen.

Der iSYSTEM XCP-Protokoll-Slave und insbesondere DAQ sind nun direkt in der blauen Box implementiert und unabhängig vom verwendeten PC. Verschiedene Speicherbereiche können gleichzeitig gelesen und beschrieben werden. Verschiedene Sampling-Raten sind konfigurierbar, zum Beispiel bei jeder Änderung eines Speicherbereiches oder 1 ms, 10 ms, 100 ms und 1 s.

Der Polling-Mechanismus war bisher lediglich in der Host-Software winIDEA von iSYSTEM implementiert. Mit der Implementation im FPGA des Debuggers ist dies nun nahezu in Echtzeit realisiert. Außerdem wird das DAQ-Event vom Debugger mit einem exakten Zeitstempel versehen und zur Auswertung an den XCP-Master weitergeleitet. Der XCP-Master kann die Daten somit zeitlich zu anderen Messdaten korrelieren.

CANoe und die Optionen CANoe.AMD und CANoe.XCP

CANoe ist das Werkzeug für die Entwicklung, den Test und die Analyse von ganzen Steuergerätenetzwerken, aber auch von einzelnen Steuergeräten. Es unterstützt Netzwerk-Designer, Entwicklungs- und Testingenieure bei OEMs und Zulieferern im kompletten Entwicklungsprozess – von der Planung bis hin zur Inbetriebnahme kompletter verteilter Systeme oder einzelner Steuergeräte.

Aktuelle und zukünftige Steuergerätegenerationen enthalten immer mehr und immer komplexere Funktionen. Es werden Funktionen auf verschiedene Steuergeräte aufgeteilt und von unterschiedlichen Zulieferern entwickelt. Diese Entwicklungen führen dazu, dass die bisherigen Methoden zum Testen und zur Fehlersuche nicht immer ausreichend sind. Ein Blick ins Innere des Steuergeräts ist notwendig, um zum Beispiel fehlerhafte Software-Komponenten zu identifizieren oder Teilfunktionen des Steuergeräts zu testen. Dieser „Blick ins Steuergerät“ wird mit den CANoe Optionen .AMD und .XCP möglich.

Die Option .XCP erweitert CANoe um die Fähigkeit, auf den Steuergerätespeicher zuzugreifen. Dies erfolgt über das von der ASAM standardisierte XCP- oder CCP-Protokoll und wird komfortabel mit Dateien im A2L-Format konfiguriert.

CANoe bietet mit XCP/CCP den Zugriff auf steuergeräteinterne Werte für Test- und Analyseaufgaben. Im Gegensatz zum reinen Blackbox-Test, bei dem nur die externen Steuergerätesignale stimuliert und gemessen werden, lassen sich über XCP/CCP auch interne Werte verstellen und auswerten. Das Verändern dieser Parameter führt gezielt zu Fehlerzuständen, das daraus resultierende Verhalten eines Steuergeräts kann direkt getestet werden. Der Test unterschiedlicher Varianten einer Steuergeräte-Software ist ebenfalls möglich – das Umschalten erfolgt direkt über XCP. Auch können fehlende Sensorwerte simuliert werden, indem Werte via XCP/CCP in die entsprechenden Speicherstellen geschrieben werden.

Bei der Analyse ermöglicht CANoe.XCP, interne Größen des Steuergeräts parallel zu den Bussignalen zu analysieren. Statusinformationen, wie beispielsweise der Klemmenzustand oder ein Task-Wechsel, lassen sich in die Analyse einbeziehen.

Mit CANoe.AMD (AUTOSAR Monitoring und Debugging) können AUTOSAR- und nicht-AUTOSAR-Steuergeräte gemessen und stimuliert werden. Zur Konfiguration wird eine A2L-Datei passend für das Steuergerät benötigt. Durch den modularen Aufbau der AUTOSAR-Steuergeräte eignen sich diese besonders für die Option AMD. So kann zum Beispiel im SWC-(Software Component)-Editor konfiguriert werden, welche Ports gemessen werden, und mit diesen Informationen lässt sich dann eine A2L-Datei erzeugen.

Mit der Option .AMD erhält CANoe Zugriff auf den Steuergerätespeicher; dies kann zum Testen und zur Fehlersuche eingesetzt werden. Voraussetzung für die Verwendung von CANoe.AMD ist ein Steuergerätezugang über XCP/CCP oder mit der VX Mess- und Kalibrier-Hardware von Vector oder über eine Debug-Schnittstelle.

Die Vector-Entwicklungsumgebung CANoe (CAN Open Environment) ist zwar in der Lage, auf Steuergeräte-interne Werte zuzugreifen. Der Speicherzugriff wurde bisher über Bus-Interfaces oder spezielle Hardware von Vector Informatik realisiert. Dazu war es jedoch notwendig, die Steuergeräte-Software zu modifizieren. Da die iSYSTEM-Debugger mehr als 3000 Mikrocontroller unterstützen, eignen auch sie sich für den Zugang zum Steuergerät.

Für diesen Zugriff über die „Blue Box“ von iSYSTEM werden jedoch weder eine zusätzliche Hardware noch Treiber für das XCP-Protokoll (Universal Measurement and Calibration Protocol) benötigt. Es werden keine zusätzlichen Ressourcen beansprucht und auch das Echtzeitverhalten wird nicht beeinflusst.

Mark Schwager, Produktmanager für CANoe bei Vector Informatik, lobte die Vorteile dieser Vorgehensweise. So entstehe „ein weiteres Hardware-Interface mit sehr hohem Datendurchsatz“, für das keine Instrumentierung der Steuergerätesoftware nötig sei. Zudem falle für das Steuergerät entweder keine oder nur eine minimale zusätzliche Last an: „Buskommunikation und interne Steuergerätewerte lassen sich dadurch sehr einfach während der Entwicklung zusammen analysieren.“

Auch iSYSTEM-CEO Erol Simsek freute sich: „Die Werkzeuge von iSYSTEM und Vector haben bisher auf den Entwicklerarbeitsplätzen koexistiert, jetzt spielen sie zusammen. Das spart Zeit und ermöglicht viele neue Use Cases in derEntwicklung und im Test von Steuergerätesoftware.“

Artikelfiles und Artikellinks

(ID:38176030)