LIN Master Feature EL6001

Beschreibung der „LIN-Master‑Unterstützung“ (ab FW10)

Die EL6001 realisiert eine Busanschaltung für RS232-Pegel. Ab Softwarestand 10 verfügt die EL6001 über eine Zusatzfunktion, um LIN-Telegramme senden und empfangen zu können. Diese Funktion umfasst nicht die formale Abhandlung der Protokollschichten für LIN („Protokollstack“) und auch keine physikalische LIN-Anschaltung, sondern die EL6001 kann in Schreib- und Leserichtung die zeitlich verlängerte Start/Ende-Markierung eines LIN-Telegramms behandeln.

„Oberhalb“ der Klemme ist ein z. B. in PLC realisierter LIN-Stack erforderlich, „unterhalb“ der Klemme ein Pegel-Konverter RS232 <-> 5/12V z. B. „RS232-LIN“.

Bitte prüfen Sie vor Einsatz dieser Funktion die Eignung in Ihrem System, da eine vollständige umfassende LIN-Implementierung in der EL6001 nicht gegeben ist!

Ein kompletter LIN-Frame ergibt sich aus eine Master-Anfrage mit direkt nachfolgender Slave-Antwort. Der Master sendet den Masterframe und empfängt die Daten des Slaves.
Bei aktivierter LIN-Funktionalität der EL6001 wird ein „sync‑Break“ und ein „sync‑Byte“ vor dem „Protected Identifier“ (PID) ausgegeben.
Darum kann die Klemme EL6001 unter LIN wie folgt eingesetzt werden

Aktivierung

Die für LIN erforderliche Zuschaltung eines „sync break“ und „sync-field“ beim Senden kann über das „Command“ Objekt aktiviert werden. Hierzu ist in dem CoE Objekt 0xB000:01 der Wert 0x3000 einzutragen. Die Antwort ist in dem CoE Objekt 0xB000:03 auslesbar mit den Werten 0x01 0x00 0x00 0x4C 0x49 0x4E. (4C 49 4E = ASCII „LIN“) als Bestätigung der Aktivierung dieser Funktion. Danach ist die Klemme bereit, Frames auf dem LIN-Bus, die das 13-Bit „sync break“ und das „sync-field“ (0x55) enthalten zu empfangen und lediglich die nachfolgenden Informationen in den Empfangsdaten bereit zu stellen sowie beim Senden diese Kennungen ebenfalls auch auszugeben.

Diese Einstellung wird nicht dauerhaft in der Klemme gespeichert und muss nach jedem neuen Hochfahren erneut geschrieben werden. Um diesen Umstand zu umgehen, bietet sich die Verwendung der Startup-Liste an.

Anwenderspezifische Baudrate

In das Objekt „Explicit baudrate“ (0x8000:1B) kann jede bereits verfügbare Baudrate und auch die Baudrate 10417 Baud eingetragen werden.

Weitere Parameter

Für die korrekte Funktion im LIN-Modus sind die folgenden Einstellungen im CoE Objekt 0x8000 erforderlich:

Index:Subindex

Name

Wert

0x8000:01

Enable RTS/CTS

FALSE

0x8000:02

Enable XON/XOFF supported tx data

FALSE

0x8000:03

Enable XON/XOFF supported rx data

FALSE

0x8000:04

Enable send FIFO data continuous

FALSE

0x8000:05

Enable transfer rate optimization

TRUE

0x8000:15

Dataframe

3 (8N1)

0x8000:1A

Rx buffer full notification

s. Objekte für die Inbetriebnahme

Betrieb

Die Verwendung des Control- und Statuswortes bleibt im LIN-Modus unverändert.

Die EL6001 stellt den Nutzdaten im LIN-Modus automatisch das „Break filed“ und das „Sync byte field“ voran. Beim Empfangen werden diese beiden Felder ebenfalls automatisch entfernt.

Das Prozessabbild ist wie folgt zu verwenden:

Prozessdatum

Inhalt

Ctrl.Output length

Anzahl der Nutzdatenbytes (n) + 2

Data Out 0

Geschütztes ID Feld (PID = Protected identifier field)

Data Out 1

Daten Byte 1

 

 

Data Out n

Daten Byte n

Data Out n+1

Checksumme

EL6001 LIN Beispiel

Das folgende Beispiel zur LIN-Kommunikation soll verdeutlichen, dass mittels der Zuschaltung der ergänzenden LIN-Funktionalität über das 0xB000 CoE „Command“ Objekt in Kombination mit einer physikalischen Konvertierung von RS-232 auf den LIN-BUS eine Anteilnahme einer PLC Steuerung mittels der EL6001 Klemme in einem LIN-Cluster möglich ist.

HW-Seitige Schaltung mit Verwendung eines UART-LIN Konverters

Die Umsetzung der physikalischen Schicht als Grundvoraussetzung für eine LIN – Kommunikation umfasst die Bereitstellung eines ein-Draht Busses mit entsprechenden Pegeln 0V / 12V. Hierfür bietet sich ein RS232-LIN Konverter an, der auf einem Sub-D Stecker gebracht wird und auf der anderen Seite drei Pole für Masse, Spannungsversorgung und die elektrische Verbindung zum ein-Draht LIN-Bus bereitstellt.

Die Verwendung des RS232-LIN Konverter erfordert eine Verdrahtung eines Sub-D 9 pol. Steckers an die EL6001 Klemme wie in der Abbildung gezeigt:

LIN Master Feature EL6001 1:
RS232-LIN Sub-D Stecker angeschlossen an die EL6001 Klemme

Die elektrischen Verbindungen von der Klemme EL6001 zum Sub-D 9 pol. Stecker sind:

Programmierung in ST

Eine LIN-Kommunikation ist bereits durch eine PLC- „Mastertask“ darstellbar, indem, wie in der üblichen Verwendung des LIN-Bus ein Master ein „Unconditional Frame“ sendet und lediglich die PID (Protocol Identifier) eines bekannten Slave-Knotens auf den LIN-Bus ausgibt und damit i.d.R. Daten von dem jeweiligen Slave anfordert. Im Kapitel Inbetriebnahme ist dazu ein Programmbeispiel angegeben.

In diesem Beispiel hat der Slave die ID 0x07; der Master sendet also auf dem Bus die ID 0x07 inklusive der berechneten Parität woraus sich das PID-Feld 0x47 ergibt. Die Nachricht auf dem LIN Bus sieht dann wie folgt aus:

LIN Master Feature EL6001 2:
LIN-Frame Beispiel: Anfrage vom Master an Knoten mit ID 0x07
LIN Master Feature EL6001 3:
LIN-Frame Beispiel: ID0x07 mit Daten 0xEA,0xBD,0x08,0xB7 + Checksumme 0x97

Oszilloskop-Aufnahmen LIN Frame mit ID 0x07:

LIN Master Feature EL6001 4:
Links: Anfrage auf dem LIN-Bus mit PID 0x47, rechts: LIN-Frame mit gleicher PID und Daten inkl. Checksumme