CANbedded LIN
Basis-Software für LIN Kommunikation

OEM-spezifische Embedded-Softwarekomponenten für LIN

CANbedded LIN Communication gibt es schon seit mehr als 15 Jahren und ist serienerprobt in einigen 100 Projekten. Es werden über 40 Kombinationen aus Hardware und Compiler unterstützt und auf Anfrage auch gerne weitere Kombinationen umgesetzt. CANbedded LIN Communication ist ein LIN-Kommunikations-Stack und besteht aus standardisierten Softwarekomponenten. Sie unterstützen die LIN-Spezifikationen 1.3, 2.0, 2.1/2.2(A) und ISO 17987:2016 sowie SAE J2602 und mehrkanalige LIN Konfigurationen. Die Komponenten sind bezüglich Codegröße und Laufzeit optimiert, so dass sie nur wenige Ressourcen benötigen.

 

Vorteile

  •  Standard-Softwarekomponenten, die auf einem Anteil generierten Codes basieren, sind für anwendungsspezifische Anforderungen skalierbar
  • Automatisches Generieren der Parametereinstellungen und -konfigurationen 
  • Laufzeiteffizienz
  • Geringer Bedarf an ROM- und RAM-Speicher
  • Einfache Einbindung in die Anwendersoftware
  • Kompatibilität mit der Produktpalette von Vector einschließlich Analyse-, Simulations- und Kalibrierungswerkzeuge
  • Unterstützung von LIN 1.2/1.3/2.0/2.1 und 2.2
  • Unterstützung mehrkanaliger LIN-Konfigurationen

Anwendungsgebiete

Das Local Interconnect Network (LIN) wurde entwickelt, um eine Sammlung von Automobilprotokollstandards abzurunden, aber es wurde auch in anderen Bereichen, wie der Automatisierungstechnik, übernommen. Im Fokus stehen kostengünstige Kommunikationsnetze für Steuergeräte-Subsysteme mit niedrigen Datenraten. LIN ergänzt also die vorhandenen Busprotokolle perfekt. Typische Anwendungsgebiete sind die Vernetzung innerhalb der Tür oder der Sitz eines Kraftfahrzeugs.

Funktionen

LIN-Netzwerke werden im LDF (LIN Description File) Format gemäß der „LIN Configuration Language Specification“ beschrieben. Damit sind alle Informationen zur Definition von Signalen, Botschaften, Baudrate und Schedule Tables festgelegt. Entsprechend den Erfordernissen des Steuergeräts können sämtliche LIN-Softwarekomponenten mittels eines Konfigurationswerkzeugs angepasst werden, das zur Parametrierung entweder LDF- oder NCF-Dateien (Node Capability File) importiert. Im Einzelnen bedeutet dies:

  • Anpassung der steuergerätespezifischen Parameter an das Netzwerkdesign
  • Konfiguration des LIN-Treibers auf die Gegebenheiten des Steuergerätes, z.B. Oszillatorfrequenz, UART, …
  • Konfiguration der Diagnoseservices bei LIN-Slave-Steuergeräten
  • Definition der Botschafts- und Signal-Callbacks

Die Sourcecodes der LIN-Software werden mit der Applikation kompiliert und gelinkt. Zur Integration und Analyse sowie für Testzwecke sind Vectors Simulations- und Analysewerkzeuge für LIN verfügbar (z.B. CANoe.LIN und CANalyzer.LIN sowie die CANoe.Scope Option). Für den physikalischen Buszugriff ist die XL-Interface-Familie erhältlich, die universelle serielle Busankopplung für den LIN-Bus. Die zeitliche Steuerung der LIN-Softwarekomponenten wird durch zyklisches Aufrufen von Tasks durch die Anwendung oder ein Betriebssystem realisiert. Somit werden keine zusätzlichen Timer durch den LIN-Treiber belegt.

Der Grundgedanke der Implementierung besteht darin, eine Schnittstelle zur Verfügung zu stellen, die einfach zu verwenden ist und allen Anwendungen genügt. Die standardisierte Schnittstelle umfasst:

  • Initialisierung der LIN-Hardware
  • Frei konfigurierbare Baudrate (empfohlen: 2400, 9600 und 19200 Baud)
  • Versenden von LIN-Botschaften (Bestätigung mittels Flags und Callback-Funktionen)
  • Empfang von LIN-Botschaften (Benachrichtigung durch Flags und Callback-Funktionen)
  • Schlaf- und Weckbehandlung
  • Behandlung von Protokollfehlern
  • Timeout-Überwachung von Botschaften
  • Überprüfung des Laufzeitverhaltens während der Entwicklungsphase (Debugging)
Mehr anzeigen

Für die LIN-Kommunikation werden zwei Softwarekomponenten benötigt. Die eine Komponente ist ein hardwareabhängiger Low-Level-SIO-Treiber, dessen Aufgabe die Abstraktion des Zugriffs auf die serielle Schnittstelle ist. Die zweite Komponente, der LIN-Protokolltreiber, setzt hierauf auf und stellt den höherschichtigen Komponenten ein API zur Verfügung, das alle Anforderungen des aktuellen LIN-Standards erfüllt. Der LIN-Treiber ist eine standardisierte und durch ein Konfigurationswerkzeug einfach konfigurierbare Softwarekomponente für die Kommunikation von Master- und Slave-Netzknoten. Er ist Teil der CANbedded Komponenten von Vector, so dass eine homogene Integration mit CAN-Komponenten sichergestellt ist. Zusätzlich  ist die Kombination mit MICROSAR-Software möglich. CAN-LIN-Gateways, die hauptsächlich als Master-Netzknoten realisiert sind, können somit einfach implementiert werden.

 

Mehr anzeigen

Da das Master-Steuergerät meist über einen zusätzlichen CAN-Kanal verfügt, über den von einem Tester aus diagnostiziert wird, besteht die Hauptaufgabe des LIN-Masters darin, die empfangenen Tester-Requests an die entsprechenden LIN Slaves weiterzuleiten. Hierzu wird das LIN Diagnose Transport Layer (DTL) verwendet, das entsprechend der LIN 2.0/2.1 und 2.2 Spezifikation zwei API-Typen anbietet:

  • DTL Raw wird verwendet, wenn die Daten in bereits segmentierter Form vorliegen (Routing von CAN TP Botschaften auf LIN).
  • DTL Cooked nimmt zusammenhängende Diagnosedaten entgegen und segmentiert diese entsprechend den LIN-Bus-Anforderungen (Diagnostic Service Data Units).
Mehr anzeigen

LINdiag ist eine sehr kompakte Implementierung der UDS 14229.1 Diagnose für LIN-Slave-Steuergeräte. Sie empfängt Requests, leitet diese an den entsprechenden Service weiter und stellt die Response in Interaktion mit der Applikation zusammen. Dabei wird intern ein Diagnosepuffer verwaltet, der Datenkonsistenz und Überlauf überwacht. LINdiag benötigt zum Versenden und Empfangen von Requests und Responses das LIN-Transportprotokoll, das Teil des Lieferumfangs ist.

 

Mehr anzeigen
  • Optional für Slave-Steuergeräte: Diagnose-Softwarekomponente mit zugehörigem Transportprotokoll
  • Optional für Master-Steuergeräte: Transportprotokoll mit dem raw bzw. cooked API
  • Gateway: CAN-LIN und LIN-LIN Routing für Master-Steuergeräte
  • SAE J2602: Als zusätzliche Option ist die Unterstützung der „Recommended Practice“ Spezifikation der SAE J2602 für LIN-Treiber verfügbar.
  • Flashen  von LIN Slaves
  • Kalibrieren über das XCPonLIN Protokoll
Mehr anzeigen

Produktbeschreibungen

Produktinformation:

CANbedded (PDF)

Verfügbarkeit:

Unterstützte Controller und Compiler (PDF)

Unterstützte OEMs:

Liste der unterstützten OEMs (PDF)

 

 

 

Mehr anzeigen

Haben Sie technische Fragen und suchen nach passenden Antworten? Unsere KnowledgeBase bietet das Wichtigste!

Mehr anzeigen