DCC-BiDi (RailCom ®) für Lokomotiven
Datagramme
- Die Rückübertragung bei Railcom erfolgt als serielle Nachricht zu 2, 4, oder 6 Bytes.
Diese werden einer Redundanzkodierung (4-8-Coding) unterworfen, so dass nach dem Dekodieren
eines Bytes 70 mögliche Code-Zustände übertragen werden. von diesen 70 Codes werden
6 für eine direkte Übermittlung von Systeminformation verwendet (sog. Acknowledgement Messages),
die anderen 64 Zustände werden paarweise zu sogenannte Datagrammen zusammengefaßt.
Diese Datagramme können dann 12, 24 oder 36 Bit lang sein.
Im Kanal 1 werden immer 2 Byte übertragen, es sind als nur ACK's oder Datagramme mit 12 Bit vorhanden, der Kanal 2 kann alle Arten von Datagrammen enthalten.
Acknowledgement Messages
- Acknowledgement Messages bestehen aus 2 Bytes, sind also kurze Datagramme.
Im ersten Byte wird eine Quittung des vorangegangenen Befehls übertragen.
- Lokdekoder:
Flags für Lokdekoder Bit Erläuterung 5, 4 Identifier: immer 0,0 bei Lokdekoder 3 0: keine weiteren Daten 1: weitere Daten, vorhanden, Zentrale soll nochmal nachfragen 2 0: kein Fehler 1: Dekoder hat einen Fehlerzustand 1 0: kein Consist 1: Decoder hat eine aktive Consist 0 0: Lok bewegt sich vorwärts 1: Lok bewegt sich rückwärts - Zubehördekoder:
Flags für Zubehördekoder Bit Erläuterung 5, 4 Identifier: immer 1, 0 bei Zubehördekoder 3 0: keine weiteren Daten 1: weitere Daten, vorhanden, Zentrale soll nochmal nachfragen 2 0: kein Fehler 1: Dekoder hat einen Fehlerzustand 1, 0 Zustand des Ausgangs
00: Fehlerhafter Zustand, keine Spule leitet 01: Ausgang 1 aktiv 10: Ausgang 2 aktiv 11: Weiche im Umlauf
| Code | Bin | Erläuterung |
|---|---|---|
| ACK-1 | 00001111 | Kommando empfangen |
| ACK-2 | 10000111 | Kommando empfangen, wird jedoch nicht unterstützt |
| ACK-3 | 11000011 | Kommando empfangen und der Zustand des Decoder stimmt überein. |
| ACK-4 | 11110000 | Kommando empfangen und der Zustand des Decoder stimmt nicht überein. |
| ACK-5 | 00111100 | Kommando empfangen und angefragte Wert ist größer als der aktuelle. |
| ACK-6 | 11100001 | Kommando empfangen, kann nicht ausgeführt werden |
Zusätzlich zu dieser Quittung können im 2. Byte 6 Flags übertragen werden, diese sind normal gemaß 4-8-Coding kodiert. Diese Flags sind für Lokdekoder und Zubehördekoder (Accessory) unterschiedlich.
Adresse Senden
- Um die leichtere Identifikation einer Lok zu ermöglichen, wurde ein spontaner Address-Broadcast eingeführt.
Diese Nachricht darf eine Lok im Kanal 1 ungefragt senden. Sie schreit also quasi ihre eigene Adresse aufs Gleis. Neben der Adresse ist auch
das Übertragen der 'Routing Number' (=Inhalt CV874) möglich, damit kann die Lok ihren Wunsch nach einem bestimmten
Fahrweg kundtun - z.B. als Güterzuglok.
- Nicht nach Broadcast - also Adresse 0
- Nicht nach Programmierbefehlen
- Wenn der Decoder mit der eigenen Adresse angesprochen wird, soll er ein ACK schicken (anstelle des Gebrülls) Diese ungefragte Übermittlung der Lokadresse hilft natürlich beim ersten Einsetzen der Lok, die Kakophonie bei mehreren Loks parallel auf dem Gleis verhindert hingegen eine sinnvolle Kommunikation. Deshalb kann dieses spontane Adresse-Senden mit Bit 0 in CV28 abgeschaltet werden.
| ID | Bedeutung |
|---|---|
| 0001 | Adresse, 1. Byte |
| 0010 | Adresse, 2. Byte |
| 0101 | Routing Number |
| 1. Byte | 2. Byte | Bedeutung |
|---|---|---|
| 0,0,0,0,0,0,0,0 | 0,a6,a5,a4,a3,a2,a1,a0 | kurze Adresse, a6...a0 ist die Adresse (CV1) |
| 1,0,a13,a12,a11,a10,a9,a8 | a7,a6,a5,a4,a3,a2,a1,a0 | lange Adresse, a13...a0 ist die Adresse (CV17, CV18) |
| 0,1,0,0,0,0,0,0,0 | a7,a6,a5,a4,a3,a2,a1,a0 | Consist, a17...a0 ist die Adresse (CV19) |
Programmierrückmeldungen
- Programmierbefehle werden per BiDi bestätigt. Dies ist eine 12-Bit Nachricht, die Bits 7 bis 0 geben den CV-Inhalt an.
Diese Nachricht kann in Kanal 1 oder 2 gesendet werden.
| ID | Bedeutung |
|---|---|
| 0000 | Wert der zuletzt geschriebenen / gelesenen CV |
Geschwindigkeitsmeldungen
- Der Decoder meldet die aktuelle Geschwindigkeit und auch die aktuelle Last zurück.
| ID | Bedeutung | ||||
|---|---|---|---|---|---|
| 0011 |
|
| ID | Bedeutung | ||||||
|---|---|---|---|---|---|---|---|
| 0011 | Geschwindigkeitswert in km/h
|
Dekoderzustand
- Der Decoder meldet die aktuelle Temperatur sowie Zustandsflags zurück. Hierfür gibt es zwei IDs.
| ID | Bedeutung | ||||
|---|---|---|---|---|---|
| 0100 | Flags, siehe hierzu die Bits 3..0 bei den ACK Nachrichten. Bits 5,4 sind hier auf 7,6 zugeordnet, die zwischenliegenden Bits (5 und 4) sind als undefined reserviert. | ||||
| 1000 | Temperatur
|