Local Interconnect Network

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
LIN-Logo

Das Local Interconnect Network (LIN), auch LIN-Bus genannt, ist ein serieller Feldbus für die Vernetzung von Sensoren und Aktoren. Typische Anwendungsbeispiele sind die Vernetzung innerhalb der Tür oder des Sitzes eines Kraftfahrzeugs.

Als Industriestandard wurde die LIN-Spezifikation bis 2010 vom LIN-Konsortium entwickelt. Sie umfasst die physikalische Schicht, das Bus-Protokoll, die Schnittstelle zur Applikation sowie ein einheitliches Format zur Beschreibung eines gesamten LIN. Der erreichte Stand 2.2A der Spezifikation wurde der ISO übertragen und als ISO-Norm 17987-1, Road vehicles - Local interconnect network (LIN) - Part 1–8 veröffentlicht.[1][2]

CAN in Automation fungiert im Auftrag des Technical Management Board of ISO (TMB) seit 2017 als Registrierungsstelle für die LIN Supplier ID gemäß ISO 17987 Normenreihe.

Ein LIN setzt sich aus einem Commander und einem oder mehreren Responder zusammen. Üblicherweise wird die Zahl der Responder auf 16 begrenzt. Der Commander ist typischerweise ein Mikrocontroller, der als Bridge das LIN an einen CAN-Bus anbindet. Auf dem LIN bestimmt der Commander die (meist fest konfigurierte) zeitliche Reihenfolge aller Nachrichten, indem er ihren Anfang aussendet, den sogenannten Header. Dieser enthält eine Kennung, die eine Zeile in der Konfigurationstabelle adressiert. In der Tabelle ist festgelegt, welcher Teilnehmer den bis zu acht Byte umfassenden Datenteil der Nachricht senden soll, um was für Daten es sich handelt und welcher oder welche Teilnehmer die Nachricht lesen sollen. Jeder Responder muss nur den für ihn relevanten Teil der Tabelle speichern. Eine dynamische Änderung der Konfiguration im Betrieb (Plug ’n Play) ist nicht vorgesehen. Entwurfswerkzeuge für die Konfigurationstabelle stellen sicher, dass im Betrieb keine Kollisionen auftreten.

Die LIN-Spezifikation

[Bearbeiten | Quelltext bearbeiten]

Die Spezifikation sieht zwei Netzknotenzustände vor: Sleep-Mode und Normal-Mode. Der Übergang zwischen den beiden Modi wird einerseits mit einem expliziten Kommando vom Commander und andererseits über ein Wake-Up-Signal-Frame durch den Commander oder einen der Responder initiiert.

Die Diagnose wird bei LIN mit Hilfe von Kommando-Botschaften durchgeführt. Um einen Responder diagnostizieren zu können, überträgt der Commander ein bestimmtes Kommando. Die Datenübertragung innerhalb einer Diagnose zwischen Commander und Responder basiert auf dem durch die ISO 15765-2 definierten Transportprotokoll.

LIN arbeitet mit einer Signalleitung, die die Netzknoten Wired-AND-verknüpft, realisiert durch Open-Collector-Ausgänge und Pull-Up-Widerstände an der Bordnetzspannung. Der hohe Pegel (logisch 1) stellt den rezessiven Zustand sowie den Ruhezustand dar und ca. 0 V (logisch 0) den dominanten Zustand. Die Flankensteilheit ist auf etwa 2 V/μs begrenzt zugunsten akzeptabler Störausstrahlung. Entsprechend ist die Baudrate auf maximal 20 kBd begrenzt, üblich sind 2400, 9600, 10417 und 19.200 Baud. Die Bus-Transceiver werden über einen – im LIN-Kontext meist SCI (Serial Communication Interface) genannte – UART angesteuert.

Fehlerbehandlung

[Bearbeiten | Quelltext bearbeiten]

In Kapitel 6 der Spezifikation ist die Fehlerbehandlung vorgeschrieben:

  • Jeder Sender muss bitweise zurücklesen, was er sendet, und im Fehlerfall die Sendung abbrechen. Wenn der Commander erkennt, dass er nicht senden kann, muss er seiner Anwendungsschicht einen Physical-Bus-Error melden.
  • Eine Prüfsumme sichert die Daten gegen Übertragungsfehler.
  • Das Header-Byte kodiert mit sechs Bit die maximal 64 Botschaften und enthält zwei Paritätsbit, sodass alle Einzel- und viele Doppel-Bitfehler im Header erkannt werden.
  • Für ausbleibende Antworten muss beim Commander ein No-Response-Error detektiert werden.
  • Responder müssen darauf achten, dass die Flanken im Synchronisierungsfeld innerhalb der definierten Toleranz liegen.

Als fehlerhaft erkannte Botschaften werden verworfen. Fehlerereignisse werden lokal registriert. Eine Fehlersignalisierung ist nicht Teil des Protokolls, sondern muss bei Bedarf in der Anwendungsschicht definiert werden.

  • Werner Zimmermann, Ralf Schmidgall: Bussysteme in der Fahrzeugtechnik – Protokolle, Standards und Softwarearchitektur. 5. Auflage, Springer Vieweg, Wiesbaden 2014, ISBN 978-3-658-02418-5.
  • Andreas Grzemba, Hans-Christian von der Wense: LIN-Bus, Systeme, Protokolle, Tests von LIN-Systemen, Tools, Hardware, Applikationen. Franzis, Poing 2005, ISBN 3-7723-4009-1.
  • Mathias Rausch: Kommunikationssysteme im Automobil – LIN, CAN, CAN FD, CAN XL, FlexRay, Automotive Ethernet. Hanser, München 2022, ISBN 978-3-446-47035-4.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. http://www.lin-subbus.org
  2. ISO/TC 22/SC 31 Data communication.