3 CANopen Protokollbeschreibung
3.3 SDO (Servicedatenobjekt)
Mit Hilfe des Servicedatenobjekts können Parameter im Objektverzeichnis (OV) gelesen und be-
schrieben werden. Der Zugriff erfolgt über den 16-Bit-Index und den 8-Bit-Subindex. Der Motion
Controller fungiert dabei als Server, d. h. er stellt auf Anforderung des Clients (PC, SPS) Daten zur
Verfügung (Upload) bzw. empfängt Daten vom Client (Download).
Byte0
Command Specifier
Eintrag im Objektverzeichnis
Es werden 2 SDO-Übertragungsarten unterschieden:
Expedited Transfer: Übertragung von maximal 4 Byte
Segmented Transfer: Übertragung von mehr als 4 Byte
Da bei den FAULHABER Motion Controllern außer für die Abfrage der Version und des Gerätena-
mens nur maximal 4 Datenbytes übertragen werden, wird im folgenden nur der Expedited Transfer
beschrieben.
Die Telegramme sind immer 8 Byte groß und folgendermaßen aufgebaut:
Lesen von OV-Einträgen: Client Server, Upload Request
11-Bit Identifier
0x600 (1536d) + Node-ID 0x40
Server Client, Upload Response
11-Bit Identifier
0x580 (1408d) + Node-ID 0x4x
Byte0 (0x4x) gibt die Anzahl der gültigen Datenbytes in D0-D3 und den Transfertyp an und ist beim
Expedited Transfer ( 4 Datenbytes) wie folgt codiert:
1 Datenbyte in D0:
2 Datenbytes in D0-D1: Byte0 = 0x4B
Schreiben von OV-Einträgen: Client Server, Download Request
11-Bit Identifier
0x600 (1536d) + Node-ID 0x2x
Byte0 (0x2x) gibt die Anzahl der gültigen Datenbytes in D0-D3 und den Transfertyp an und ist beim
Expedited Transfer ( 4 Datenbytes) wie folgt codiert:
1 Datenbyte in D0:
2 Datenbytes in D0-D1: Byte0 = 0x2B
Falls keine Angabe der Anzahl Datenbytes erforderlich ist: Byte0 = 0x22
Server Client, Download Response
11-Bit Identifier
0x580 (1407d) + Node-ID 0x60
Byte1-2
16-Bit-Index
8 Byte Nutzdaten
Index LB
Index HB
8 Byte Nutzdaten
Index LB
Index HB
Byte0 = 0x4F
8 Byte Nutzdaten
Index LB
Index HB
Byte0 = 0x2F
8 Byte Nutzdaten
Index LB
Index HB
21
Byte3
Byte4
8-Bit-Subindex
1-4 Byte Parameter Data
Subindex
0
0
Subindex
LLB (D0)
LHB (D1)
3 Datenbytes in D0-D2: Byte0 = 0x47
4 Datenbytes in D0-D3: Byte0 = 0x43
Subindex
LLB (D0)
LHB (D1)
3 Datenbytes in D0-D2: Byte0 = 0x27
4 Datenbytes in D0-D3: Byte0 = 0x23
Subindex
0
0
0
0
HLB (D2)
HHB (D3)
HLB (D2)
HHB (D3)
0
0