Automobilsysteme

Echtzeit für FlexRay, CAN, CAN FD, LIN, BroadR-Reach, MDF und PCAPng

Die Automobiltechnik hat in den letzten Jahren eine rasante Entwicklung erfahren. Der Anteil von Software, zum Beispiel für Fahrzeugsicherheit, Fahrkomfort und Fahrerassistenzsysteme, steigt beständig an, und mit ihm auch die Computer­technik sowie standardisierte Bussysteme für die Vernetzung der einzelnen Komponenten und ent­spre­chen­de Mess­daten­formate. Die erfolgreichsten Bussysteme sind FlexRay, CAN/CAN FD, LIN und Automotive Ethernet, wobei für die Speicherung von Messdaten MDF und PCAPng häufig zum Einsatz kommen.

Automotive in Echtzeit

FlexRay

Der Automobil-Feldbus FlexRay wird in Fahrzeugen hauptsächlich für eher anspruchsvolle Funktionen verwendet. Durch eine hohe Übertragungsrate von 10 Mbit/s kann FlexRay optimal für High-End-Funktionen wie sensor­gestützte Fahrassistenz- oder Fahrwerksregelsysteme eingesetzt werden. Durch Zweikanal-Nutzung lässt sich entweder die Datenrate verdoppeln, oder es wird der zweite Kommunikationskanal für die redundante Daten­über­tragung zur Verfügung gestellt, wodurch mit FlexRay auch sicherheitskritische Funktionen realisierbar sind.

Echtzeiteigenschaften für FlexRay eröffnen Automobil- und Prüfstandherstellern die Möglichkeit zum effizienten Testen der genannten Fahrzeugsysteme. Durch garantierte geringe Reaktionszeiten lassen sich hochpräzise Messwerte ermitteln, um optimale Testergebnisse zu erreichen.


CAN und CAN FD

CAN (Controller Area Network) ist ein serielles Bussystem, das ursprünglich speziell für die Steuerung in Auto­mobilen entworfen wurde, sich jedoch auch sehr gut für die Vernetzung intelligenter Geräte sowie Sensoren und Aktoren eignet. Es handelt sich um ein serielles Multi-Master-Bussystem, bei dem mehrere CAN-Knoten gleichzeitig Buszugriff anfordern können. Der tatsächliche singuläre Zugriff eines Knotens wird also während des Zugriffs­vorgangs entschieden. Das in der ISO 11898 behandelte Bussystem besitzt Echtzeitfähigkeit und benutzt dabei die untersten zwei Schichten des ISO/OSI-Schichtmodells.

Die Hauptkriterien für den Einsatz von CAN sind:

  • Geringe Kosten
  • Zuverlässige Funktion auch unter schweren Umgebungsbedingungen
  • Sehr gute Echtzeitfähigkeit und einfache Benutzbarkeit

Bei der CAN-Kommunikation werden zumeist ein sicherer, zeitäquidistanter Datenaustausch sowie eine schnelle Reaktion auf externe Ereignisse gefordert. Hier versagen die mit den CAN-Karten normalerweise mitgelieferten Standard-Windows-Treiber, die nur aus dem Anwendungskontext heraus nutzbar und daher nicht echtzeitfähig sind. Das CAN Module schließt diese Lücke und ermöglicht CAN-Kommunikation auch in Echtzeit.

Die Windows-Erweiterung Kithara RealTime Suite ermöglicht mit dem CAN Module viele Automatisierungs­lösungen, bei denen eine echtzeitfähige CAN-Ankopplung gefordert wird. Die Funktionsbibliothek richtet sich vor allem an Anwender, die eine zeitkritische Bearbeitung von CAN-Messages benötigen, beispielsweise Maschinenbau-Unternehmen und Steuerungshersteller.

IXXAT PCI

Zwischenspeicher puffern die CAN-Messages beim Senden und Empfangen über ein leicht anwendbares, intuitives API. Anwender­spezifische Echtzeit-Message-Filter lassen sich ebenso installieren wie Fehlerbehandlungsroutinen für bestimmte Bus-Situationen. Auch ein Listen-Only-Modus ist möglich. Zur einfachen Diagnose wurde Kithara Kernel Tracer erweitert, damit der gesamte CAN-Datenverkehr in Mikro­sekunden-Auflösung mitgeschnitten werden kann.

Für größtmögliche Flexibilität bei der Auswahl der verwendbaren CAN-Karten stehen Echtzeittreiber für gängige CAN-Karten-Familien verschiedener Hersteller zur Verfügung, die eine Hardware-neutrale Programmierung erlauben.

CAN FD (Flexible Data Rate) ist eine Weiterentwicklung des CAN-Protokolls und erreicht durch Erweiterung der möglichen Nutzdatenlänge von 8 auf 64 Bytes eine bis zu 8-fach höhere Datenrate als das klassische CAN, ohne die Integrationskosten zu erhöhen. Durch Verbesserungen der Prüfwertbestimmung steigt zudem die potentielle Datensicherheit von Übertragungen.

Die Bus-Erweiterung wird so einen festen Platz in der Automobilentwicklung einnehmen können. Doch erst mit einer leistungsfähigen, einheitlichen Echtzeitlösung, die alle beteiligten Schnittstellen vereint, sind viele Entwicklungs- und Testprozesse für CAN FD überhaupt umsetzbar.


LIN

Das Netzwerkprotokoll LIN (Local Interconnect Network) zeichnet sich besonders durch seinen kostensparenden Einsatz bei der Elektronik in einzelnen Autokomponenten aus, wie etwa Türen, Verdeck, Klimasystem, Spiegel oder Scheibenwischer. Es wird oft verwendet, um Anwendungen günstig zu realisieren, da durch dessen Eindrahtleitung in der Kfz-Elektronik erhebliche Kosteneinsparungen erzielt werden.

Das LIN Module von Kithara RealTime Suite erlaubt Automobil- und Prüfstandherstellern, LIN-Netzwerke präzise zu entwickeln und zu diagnostizieren. Es erfüllt hohe Produktions- und Teststandards, um LIN optimal in Fahrzeuge zu integrieren. Da es in ein übergeordnetes Netzwerk eingebunden werden muss, ist der LIN-Master meist das Gateway zu einem CAN-System, das bereits von Kithara unterstützt wird. Die Programmierung findet in C/C++, Delphi und C# statt.


BroadR-Reach

BroadR-Reach ist eine physische Ethernet-Übertragungsschicht speziell für die Automobilvernetzung. Die Vorteile von Ethernet in der Automobilvernetzung liegen vor allem bei extrem schnellen Übertragungsgeschwindigkeiten, hoher Skalierbarkeit sowie Kosteneffizienz bei der Verkabelung und Programmierung. Das Echtzeit-Ethernet kann so beispielsweise als zentrales Backbone-Netzwerk verwendet werden.

Mit der Implementierung von BroadR-Reach wird die Lücke zwischen den Echtzeit-Ethernet-Treibern von Kithara und moderner Automobilvernetzung geschlossen. Durch garantierte Reaktionszeiten mit dem Kithara-Echtzeitsystem lassen sich Daten über die Ethernet-Übertragungsschicht präzise erfassen und in anspruchsvolle Testprozesse einbetten. Automobilentwickler können physische Ethernet-Netzwerke in Fahrzeugen so direkt ansteuern und testen.

Da BroadR-Reach eine physische Übertragungsschicht von Ethernet beschreibt, besteht es innerhalb von Kithara RealTime Suite als Erweiterung für das Network Module


MDF und PCAPng

MDF (Measurement Data Format) ist ein binäres Dateiformat für Messaufgaben und der De-Facto-Standard in der Automobilindustrie. Der durch die ASAM definierte Standard besticht vor allem durch eine platzsparende und flexibel konfigurierbare Speicherstruktur. So können Daten leistungseffizient komprimiert, sortiert und indiziert werden. Dadurch lassen sich Lesezugriffe optimieren, wobei sich die Dateigröße nahezu beliebig herunter- beziehungsweise hochskalieren lässt, mit einzelnen Dateigrößen selbst bis in den Terabyte-Bereich. Durch einen speziellen Allokations-Algorithmus von Kithara lassen sich erfasste Daten schnell und zuverlässig innerhalb der komplexen Strukturen einer MDF-Datei speichern.

Das deutlich einfacher aufgebaute PCAPng (Packet Capture New Generation) ist ein Dateiformat zum Erfassen von Datenpaketen innerhalb von Netzwerken. Dadurch sind Entwickler in der Lage, mit dem frei verfügbaren Programm Wireshark spezifische Messdatenpakete flexibel aufzuzeichnen, zu überwachen und als Datei auszuwerten.

Die Unterstützung beider Dateiformate basiert auf der Echtzeitdatenspeicherung des Storage Module über NVMe-SSDs

Echtzeit für Automobil-Bussysteme

Module

Echtzeit-Automobilsysteme bestehen im modularen System von Kithara RealTime Suite aus folgenden Komponenten:

FlexRay Module

FlexRay Kommunikation in Echtzeit

  • Allgemein
  • Features
  • Hardware-Unterstützung

Als Teil der Kithara-Echtzeiterweiterung stellt das FlexRay Module ein essentielles Bindeglied zwischen Prüfsoftware und Prüfstand dar, mit dem sich zyklusgenaue Echtzeiteigenschaften für Hochpräzisions-Operationen umsetzen lassen.

Mit dem FlexRay Module kann ein Windows PC als vollwertiger FlexRay-Knoten verwendet werden. Dies beinhaltet die Verwendung als Leading- oder Following-Start-Node, als aktiver sowie passiver Kommunikationspunkt innerhalb des Netzwerks. Beide FlexRay-Kanäle können unabhängig voneinander konfiguriert und die Baudrate flexibel (2,5/5/10 Mbit/s) angepasst werden.

  • Echtzeit-FlexRay-Kommunikation
  • Unabhängig voneinander kombinierbare FlexRay-Kanäle
  • Windows-PC als vollwertiger FlexRay-Knoten
  • Verwendung als Leading- oder Following-Start-Node
  • Baudrate flexibel anpassbar (2,5/5/10 Mbit/s)

Folgende FlexRay-Karten werden unterstützt:

  • FlexCard PMC II (Star Cooperation)

Diese Angaben beziehen sich stets auf die aktuelle Version unserer Software.

CAN Module

CAN-Kommunikation in Echtzeit

  • Allgemein
  • Features
  • Hardware-Unterstützung

Das CAN Module ermöglicht Echtzeit für den Feldbus CAN (CAN-2.0B-Protokoll-kompatibel) und CAN FD. Das API ist herstellerunabhängig und benötigt daher nur eine einmalige Einarbeitung, um jegliche CAN (-FD)-Hardware zu programmieren.

Die unmittelbare Reaktion auf eintreffenden Nachrichten ermöglicht unter anderem, dass durch eine Callback-Funktion sofort auf Fehlersituationen reagiert werden kann. Selbst bei schnellen Baudraten und hohen Buslasten gehen keine Nachrichten verloren, da der Sende- und Empfangsbuffer ausreichend groß genug ist. Ebenso ist es möglich, eigene Filterroutinen zu erstellen, die direkt zur Empfangszeit ausgeführt werden können.

Für Analyseaufgaben bei denen sich das CAN (-FD)-Interface völlig passiv verhalten muss, wird ein Listen-Only-Modus unterstützt. Des Weiteren kann bei Hardware mit SJA1000 CAN-Controllern das „Error Code Capture“-Register ausgelesen werden, sodass weitere Informationen zur Fehleranalyse bereitgestellt werden.

  • CAN-Nachrichtenaustausch in Echtzeit
  • Unterstützung von CAN FD (Flexible Data Rates)
  • Verzögerungsfreies Senden und sofortige Reaktion beim Empfang
  • Senden und Empfangen auf der Kernel-Ebene möglich
  • Benutzerdefinierte Filterroutinen durch Callback-Funktionen
  • Empfangen von Nachrichten per Callback im Interrupt-Kontext, auf Kernel-Ebene oder auf Anwendungsebene ist genauso möglich wie das Pollen nach Nachrichten.
  • Sende- und Empfangsroutinen direkt aus dem Echtzeitkontext aufrufbar
  • Nutzung der Kernel-Ebene unterstützt C/C++ oder Delphi (Win32 native)

Das CAN Module unterstützt derzeit PCI-basierten Karten mit 1, 2 oder 4 Kanälen von Peak, Star Cooperation (Eberspächer), EMS Dr. Wünsche, ESD, Ixxat und Kvaser (siehe Hardware-Kompatibilitätsliste). Gern unterstützen wir auch die von Ihnen verwendete Karte. Die folgende Liste bezieht sich stets auf die aktuelle Version unserer Software:

Peak System

Star Cooperation (Eberspächer)

  • FlexCard PMC-II
    • FlexTiny II CAN-HS (D_CAN), Zwei- bis Achtkanal, optional optoentkoppelt
    • FlexTiny II CAN-FD (M_TTCAN), Zwei- bis Achtkanal, optional optoentkoppelt

EMS Dr. Thomas Wünsche

  • CPC-PCI, CPC-PCIe, Ein-, Zwei- und Vierkanal und CPC-104P mit einem SJA1000

ESD – Electronic System Design CAN-PCI

  • CAN-PCI /200/266, optoentkoppelt, Ein- und Zweikanal
  • CAN-PCIe /200, optoentkoppelt, Ein- und Zweikanal
  • CAN-PCI-104 /200, optoentkoppelt, Ein- und Zweikanal
  • CPCI-CAN /200, optoentkoppelt, Ein- und Zweikanal
  • PMC-CAN /266, optoentkoppelt, Ein- und Zweikanal

Ixxat

Kvaser Advanced CAN Solutions

Die Funktionalität der Software in Verbindung mit spezifischen Komponenten ist aufgrund verschiedener Hardware-Variationen nur unter Vorbehalt gewährleistet. Für Fragen bezüglich der Kompatibilität mit einzelnen Hardware-Konfigurationen kontaktieren Sie uns bitte.

LIN Module

LIN-Kommunikation in Echtzeit

  • Allgemein
  • Features
  • Hardware-Unterstützung

Mit dem LIN Module von Kithara RealTime Suite ist es möglich, LIN in Echtzeit zu betreiben. Die Erstellung eines Master- oder Slave-Knotens wird über die UART-Schnittstelle eines handelsüblichen PCs realisiert. Anders als bei der Verwendung von Mikrokontrollern können existierende LIN-Netzwerke so einfacher protokolliert und Fehler effizienter behoben werden. Sendende Knoten überprüfen automatisch ihre übertragenen Daten wodurch sich Kollisionen entdecken lassen.

  • LIN-Datenaustausch in Echtzeit
  • Einfache Implementierung eines Master- oder Slave-Knotens mit einem handelsüblichen PC
  • Ein kostengünstiger LIN-Transceiver wird benötigt (beispielsweise Freitag RS232-LIN)
  • Bus-Kollisionserkennung
  • Automatische Prüfsummenvalidierung (LIN Version 1.x and 2.x)
  • Datenraten bis zu 20 kbit/s
  • Garantierte Latenzzeiten
  • Empfang von LIN-Nachrichten ist durch Callbacks oder Polling möglich
  • UART (zur Verwendung von üblichen RS232-Schnittstellen ist ein Pegelkonverter erforderlich, zum Beispiel Freitag RS232-LIN
  • Peak PCAN-USB Pro (in Entwicklung)
  • weitere auf Anfrage

Diese Angaben beziehen sich stets auf die aktuelle Version unserer Software.

MDF Module

Echtzeit-Datenspeicherung in MDF

  • Allgemein
  • Features
  • Hardware-Unterstützung

Das MDF Module erlaubt die Echtzeit-Datenspeicherung von komplexen hierarchisch-strukturierten Messdaten im Measurement Data Format. MDF 4.1 ist ein von ASAM bereigestelltes, binäres Dateiformat zur späteren Auswertung oder Langzeitspeicherung erfasster und berechneter Datensätze. Die Größe der zu speichernden Dateien richtet sich nur an der verwendeten Hardware (also auch im Terrabyte-Bereich möglich).

PCAPng Module

Echtzeit-Datenspeicherung im PCAPng-Format

  • Allgemein
  • Features
  • Hardware-Unterstützung

Das PCAPng Module erlaubt die Echtzeit-Datenspeicherung von komplexen hierarchisch-strukturierten Messdaten im PCAPng-Format. PCAP Next Generation (PCAPng) ist ein von Wireshark unterstütztes Dateiformat zum Erfassen von Datenpaketen innerhalb von Netzwerken. Wireshark wird deshalb zur späteren Analyse der gespeicherten Messdaten verwendet.

  • Echtzeit-Datenspeicherung im PCAPng-Format
  • Wireshark zum Auslesen von gespeicherten Datensätzen, beispielsweise Mess- oder auch Bilddaten
  • Basiert auf Storage Module