IBIS Datensätze

(auch Telegramme genannt), also das was später an Linien- und Zielanzeigen oder Entwerter verschickt wird sind zunächst nur einfache Texte.

Ein Datensatz beginnt immer mit einem Kleinbuchstaben. Danach folgt ein Großbuchstabe oder eine Zahl, und weitere mögliche Zeichen.

Am Ende stehen Telegrammende und Parity, symbolisch <CR><P>. Dazu später mehr.

Hier ein paar Beispiele

l026<CR><P> Liniennummer, kleines 'l' gefolgt von 000-999 (gelegentlich auch vierstellig), Datentyp DS001.

lE01<CR><P> Sonderzeichen, 'lE', mögliche Werte sind 00-99, Datentyp DS001a.

z003<CR><P> Zielnummer für z.B. Entwerter, Rollbandanzeige, 'z' 000-999, Datentyp DS003.

u2249<CR><P> Uhrzeit, 'u' HH:MM, z.B für Entwerter, Datentyp DS005.

d02031<CR><P> Datum, 'd' DD:MM:Y, Entwerter, Fahrscheindrucker Datentyp DS006.

zA2WERKSTATTFAHRT                  <CR><P> Zieltext für Außenanzeige, 'zA', (2) Blöcke Text zu 16 Zeichen, Text, Datentyp DS003a.

aA12BETRIEBSHOF     WALDHEIM        <CR><P> Zieltext , 'aA', mit (1) AnzeigeID, und (2) Blöcke Text zu 16 Zeichen, Text, Datentyp DS021.

vBAHNHOFSVORPLATZ        <CR><P> Haltestellenvoranzeige, 'v' dann 16, 20 oder 24 Zeichen Text (ohne Zähler), Datentyp DS009.

zI4BAHNHOFSVORPLATZ<CR><P> andere Variante, Haltestellenvoranzeige, 'zI' dann (4) Blöcke zu je 4 Zeichen, Text, Datentyp DS003c.

(Bei Bedarf wird mit Leerzeichen aufgefüllt. Zähler wurden rot markiert, normale Ziffern grün. Weitere Datensätze findet man in der VDV-300 Schrift).

Texte für Ziel- und Haltestellenanzeigen werden nach VDV in Großbuchstaben übertragen. Nach Möglichkeit wandelt die Anzeige den Text in ein eigenes Schriftbild um.

Als Zeichenvorrat wird eine 7-Bit-Zeichenkodierung (ASCII) verwendet, in der es keine Umlaute gibt.

Damit diese verfügbar sind, ersetzt man sie wie folgt:

ä durch {
ö durch |
ü durch }
ß durch ~
Ä durch [
Ö durch \ (Backslash)
Ü durch ]

Später im IBIS-Gerät (z.B. Zielanzeige) werden die Zeichen wieder zurückgewandelt.

Handelt es sich um einen "Zähler", so wird das Format "IBISHex" angewendet. Dieses ist von der Hex-Darstellung abgeleitet, zum Vergleich:

Dezimal     Hex     IBISHex
===========================
 0           0       0
 1           1       1
 2           2       2
 3           3       3
 4           4       4
 5           5       5
 6           6       6
 7           7       7
 8           8       8
 9           9       9
10           A       :
11           B       ;
12           C       <
13           D       =
14           E       >
15           F       ?

Telegrammabschluß

Das Datenende stellt immer ein "Carriage Return", Hex 0D dar. Dieses darf nur einmal im Datensatz vorkommen. Wir verwenden in unserer Darstellung das symbolische Zeichen <CR>.

Zur weiteren Bearbeitung werden die Daten in den Datentyp "Byte" umgewandelt.

Paritybyte

Das Paritybyte wird aus den bisherigen Zeichen berechnet und als Prüfbyte ans Ende des Datensatzes gehängt. Der Empfänger kann entsprechend zurückrechnen und so feststellen ob die Daten in Ordnung sind. Andernfalls kann er sie verwerfen. Wir verwenden für unsere Darstellung das symbolische Zeichen <P>. Zur Berechnung deklariert man zunächst ein neues Byte mit dem Wert 7F. Dieses wird nach und nach mit jedem Byte des Datensatzes XOR verknüpft. Das Ergebnis ist das Paritybyte.

Das Telegramm welches die Liniennummer 26 auf die Anzeige schickt, sieht also so aus:

l026<0D><2A>   Die letzten beiden Zeichen entsprechen der HEX-Darstellung. Oder komplett in HEX: <6C><30><32><36><0D><2A>

Die seriellen Einstellungen sind wie folgt: 1200 Baud, 7 Datenbits, 2 Stopbits, Parity even (gerade).

(c) 2013 Stephan Schütt, Alle Angaben ohne Gewähr. Vervielfältigung verboten.

Zurück