Protokoll, Prüfsumme, Besonderheiten der datenübertragung – Baumer N 152 Benutzerhandbuch
Seite 6: Broadcast-befehle

N 152
www.baumer.com
6
3.2. Protokoll
Die Spindelpositionsanzeige benützt ein ASCII-Protokoll (Klartextprotokoll). Die Protokolllänge beträgt,
je nach Befehl, 5 bis 17 Bytes.
Byte
Hex-Code
Bezeichnung
Wertebereich
1
01H
SOH = Startzeichen fest auf 01h
2
XXh
Adr = Adresse
00...31dez + 20h Offset (Adresse 00 = 20h)
3
XXh
Cmd = Befehlscode definierte Befehle
4-n
[XXh..XXh]
[Data] = Daten
20h-7Fh
n+1
04h
EOT = Endzeichen
fest auf 04h
n+2
XXh
CRC = Prüfsumme
00h...FFh
3.3. Prüfsumme
Zur Verbesserung der fehlerfreien Datenübertragung wird beim Senden nach dem Endzeichen (EOT) ein
Prüfsummenbyte CRC an den zu übertragenden String angefügt. Beim Empfang eines Befehls wird das
empfangene CRC-Byte mit dem selbsterrechneten CRC-Byte verglichen.
Algorithmus:
1) Prüfsummenbyte rücksetzen.
2) Prüfsummenbyte um 1 Bit nach links rotieren.
3) Ergebnis mit erstem Datenbyte XOR verknüpfen.
4) Ergebnis um 1 Bit nach links rotieren.
5) Ergebnis mit zweitem Datenbyte XOR verknüpfen.
:
x) Ergebnis um 1 Bit nach links rotieren.
y) Ergebnis mit letztem Datenbyte (immer 04H) XOR verknüpfen.
z) Ergebnis als CRC nach dem Endzeichen (04H) in den Sendestring einfügen.
Hinweis: 1101 0000
RL 1010 0001
Achtung: Beim Rotieren wird Bit 7 in Bit 0 geschoben
Beispiel:
Sendestring ohne CRC = 01h 20h 43h 04h
CRC-Byte =
0Ah
0000 0000
RL
0000 0000 XOR 0000 0001 (01h)
=
0000 0001
0000 0001
RL
0000 0010 XOR 0010 0000 (20h)
=
0010 0010
0010 0010
RL
0100 0100 XOR 0100 0011 (43h)
=
0000 0111
0000 0111
RL
0000 1110 XOR 0000 0100 (04h)
=
0000 1010
= CRC
Legende: RL = rotate left; XOR = Antivalenz-Verknüpfung
3.4. Besonderheiten der Datenübertragung
Im gesamten multicon-System wurde die Datenlänge aus Kompatibilitätsgründen gleich festgelegt (siehe
Tabelle Kapitel 6). Dies wurde unabhängig der Anzeigenlänge festgelegt. So ist beispielsweise beim Befehl „R“
(Istwert lesen) die übertragene Datenlänge 6 Bytes, die Anzeige jedoch fünfstellig. Die 6. Stelle bzw. die 5. Stelle
bei negativen Werten, enthält daher immer eine 0 (30h).
3.5. Broadcast-Befehle
Einzelne Befehle sind als sogenannte Broadcast-Befehle ausgelegt. Wird vom Master ein entsprechender
Befehl an die Adresse 99 gesendet, so wird dieser Befehl von allen multicon-Geräten, die sich im Netzwerk
befinden, angenommen. Jede einzelne Spindelpositionsanzeige führt die entsprechende Funktion aus, sendet
aber keine Rückmeldung an den Master zurück.