AKD CANopen | 5 CANopen-Kommunikationsprofil
5.4.5 Servicedatenobjekte (SDO)
Mit Hilfe der SDOs erfolgt der Zugriff auf das Objektverzeichnis. Die SDOs werden zur
Parametrierung und zur Statusabfrage (Polling) verwendet. Der Zugriff auf ein einzelnes
Objekt erfolgt mit einem Multiplexer über Index und Subindex des Objektverzeichnisses.
AKD unterstützt die folgenden Kommunikationsprotokolle:
l
l
l
l
l
Die Definition der einzelnen Kommunikationsdienste und der Protokolle finden Sie in DS301.
Beispiele zur Handhabung von SDOs finden Sie im Anhang ab Seite ➜ S. 146.
Da es sich bei einem SDO um einen bestätigten Dienst handelt, muss das System immer
auf das SDO-Antworttelegramm warten, bevor ein neues Telegramm gesendet werden kann.
5.4.5.1 Zusammensetzung des Servicedatenobjekts
Ein SDO setzt sich aus folgenden Komponenten zusammen:
Inhalt
1. Steuerbyte (Byte 1):
Das Steuerbyte bestimmt, ob über das SDO schreibend oder lesend auf den Eintrag im
Objektverzeichnis zugegriffen wird. Eine Darstellung des gesamten Objektverzeichnisses
für AKD finden Sie ➜ S. 123. Der Datenaustausch mit dem AKD hält sich an den Standard
CMS Multiplexed Domain Protocols, wie er im CAN-Standard DS 202 beschrieben wird.
Um Daten zu lesen, muss ein Schreibzugriff entsprechend folgender Darstellung auf das
Steuerbyte erfolgen:
Inhalt
ccs => Client Command Specifier (ccs = 2 => Initiate Upload Request)
X => beliebig
Der Wert 0100 0000 (binär) oder 40h muss im Kontroll-Byte übertragen werden.
Der Servoverstärker antwortet entsprechend mit einem Antwortbyte:
Inhalt
scs =>Server Command Specifier (scs = 2 => Initiate Upload Response)
n =>nur gültig bei e = s = 1. Ist dies der Fall, so steht in n die Zahl der Bytes, die keine Daten
enthalten.
X =>beliebig
Wenn der Lesezugriff erfolgreich war, sind im Antwortbyte immer die Bits 0 und 1 auf 1
gesetzt (e=s=1).
Kodierte Byte-Länge in der SDO-Antwort:
0x43 - 4 Bytes
0x47 - 3 Bytes
0x4B - 2 Bytes
0x4F - 1 Byte.
Wenn ein Fehler auftritt, wird scs auf 4 gesetzt, das Antwort-Byte ist 0x80 und die
Fehlerinformation
ist im 4-Byte Datenfeld enthalten. Zur Aufschlüsselung des Fehlers ➜ S. 40.
32
Kollmorgen | Mai 2014
Initiate SDO Download Protocol (Protokoll „SDO-Download starten")
Download SDO Segment Protocol (Protokoll „SDO-Segment herunterladen")
Initiate SDO Upload Protocol (Protokoll „SDO-Upload starten")
Upload SDO Segment Protocol (Protokoll „SDO-Segment hochladen")
Abort SDO Transfer Protocol (Protokoll „SDO-Transfer abbrechen")
Byte
1
2
3
R/W
Index
Subindex
Bit
7
6
5
4
ccs=2
X
Bit
7
6
5
4
scs=2
X
4
5
6
7
8
Daten
3
2
1
0
X
X
X
X
3
2
1
0
n
e
s