Kithara-Echtzeit für FlexRay, CAN, CAN FD und LIN

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 Computertechnik sowie standardisierte Bussysteme für die Vernetzung der einzelnen Systeme. Die erfolgreichsten Bussysteme sind FlexRay, CAN/CAN FD und LIN.

Kithara RealTime Suite stellt mit seinem modularen System verschiedene Mechanismen bereit, um für derartige Aufgabenstellungen eine perfekte Lösung zu bieten. Hier einige grundlegende Eigenschaften:


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 sensorgestü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übertragung 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 so optimale Testergebnisse zu erreichen.


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 (Controller Area Network) und CAN FD

CAN ist ein serielles Bussystem, das ursprünglich speziell für die Steuerung in Automobilen entworfen wurde, sich jedoch auch sehr gut für die Vernetzung intelligenter Geräte sowie Sensoren und Aktoren in einer Maschine oder Fabrik 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 Zugriffsvorgangs 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

CAN-Kommunikation in Echtzeit unter Windows

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 benutzbar und daher nicht echtzeitfähig sind. Das CAN Module schließt diese Lücke und ermöglicht CAN-Kommunikation auch in Echtzeit.

Das CAN Module von Kithara RealTime Suite ergänzt die Windows-Erweiterung und ermöglicht viele Automatisierungslö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 einfach anwendbares und intuitives API. Anwenderspezifische Echtzeit-Message-Filter lassen sich ebenso installieren wie Fehlerbehandlungsroutinen für bestimmte Bus-Situationen. Auch ein Listen-Only-Mode ist möglich.

Zur einfachen Diagnose wurde Kithara Kernel Tracer erweitert, damit der gesamte CAN-Datenverkehr in Mikrosekunden-Auflösung mitgeschnitten werden kann.

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

CAN FD

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.

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 (Local Interconnect Network)

Das Netzwerkprotokoll LIN 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.

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.
     

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 der RealTime Suite als Erweiterung für das Network Module