DOCA0132IT-01

Uso degli SDO

Introduzione

I telegrammi SDO consentono di accedere in modo aperiodico a qualsiasi oggetto CANopen programmando una richiesta. Il servizio SDO ha un telegramma di richiesta e uno di risposta.

Telegramma SDO di richiesta

Richiesta di informazioni dal client al controller LTMR :

COB-ID

Byte 0

Byte 1

Byte 2

Byte 3

Byte 4

Byte 5

Byte 6

Byte 7

0x600 + Node-ID

Codice di richiesta

Indice oggetto

Sottoindice oggetto

Dati richiesti

LSB

MSB

Bit 7-0

Bit 15-8

Bit 23-16

Bit 31-24

Telegramma SDO di risposta

Richiesta di informazioni dal client al controller LTMR :

COB-ID

Byte 0

Byte 1

Byte 2

Byte 3

Byte 4

Byte 5

Byte 6

Byte 7

0x580 + Node-ID

Codice di risposta

Indice oggetto

Sottoindice oggetto

Dati di risposta

LSB

MSB

Bit 7-0

Bit 15-8

Bit 23-16

Bit 31-24

Codici di richiesta e risposta

I dati della richiesta e della risposta possono variare nei contenuti in funzione dei codici di richiesta e risposta utilizzati. La tabella seguente mostra i dati relativi ai diversi codici di richiesta:

Codice di risposta

Descrizione del comando

Byte 4

Byte 5

Byte 6

Byte 7

0x23

Scrittura di dati a 4 byte

Bit 7-0

Bit 15-8

Bit 23-16

Bit 31-24

0x2B

Scrittura di dati a 2 byte

Bit 7-0

Bit 15-8

0x00

0x00

0x2F

Scrittura di dati a 1 byte

Bit 7-0

0x00

0x00

0x00

0x40

Leggi dati

0x00

0x00

0x00

0x00

0x80

Annullare il comando SDO corrente* 1

Bit 7-0

Bit 15-8

Bit 23-16

Bit 31-24

La tabella seguente mostra i dati relativi ai diversi codici di risposta:

Codice di richiesta

Descrizione del comando

Byte 4

Byte 5

Byte 6

Byte 7

0x23

Dati letti: 4 byte di dati

Bit 7-0

Bit 15-8

Bit 23-16

Bit 31-24

0x2B

Dati letti: 2 byte di dati

Bit 7-0

Bit 15-8

0x00

0x00

0x2F

Dati letti: 1 byte di dati

Bit 7-0

0x00

0x00

0x00

0x40

Scrivi una risposta con dati a 1/2/4 byte

0x00

0x00

0x00

0x00

0x80

Risposta di errore rilevato: codice di interruzione restituito*

0x00

0x00

0x00

0x00

Codici di annullamento SDO

Codici di annullamento supportati:

Codice di annullamento

Descrizione

0x 0503 0000

Trasferimento segmentato: il bit di commutazione non ha cambiato stato

0x 0504 0000

Timeout del protocollo SDO

0x 0504 0001

Codice di richiesta non valido o sconosciuto

0x 0601 0000

Disinnesto durante l'accesso al parametro (ad esempio, una richiesta di scrittura su un parametro in sola lettura)

0x 0601 0001

Tentativo di richiesta di lettura su un parametro con accesso in sola scrittura

0x 0601 0002

Tentativo di richiesta di scrittura su un parametro con accesso in sola lettura

0x 0602 0000

L'indice inviato nella richiesta si riferisce a un oggetto che non esiste nel dizionario

0x 0604 0041

Mappatura oggetto PDO: impossibile mappare il parametro sul PDO; questo errore rilevato si verifica quando si scrive sui parametri 0x1600, 0x1A00, 0x1605 e 0x1A05 (mappature PDO)

0x 0604 0042

Mappatura oggetto PDO: il numero o la lunghezza dei parametri da mappare supera la lunghezza massima del PDO

0x 0609 0011

Il sottoindice inviato nella richiesta non esiste

0x 0609 0030

Superato il range di valori del parametro (solo per l'accesso in scrittura)

0x 0609 0031

Valore del parametro scritto troppo elevato

0x 0609 0032

Valore del parametro scritto troppo basso

0x 0609 0036

Il valore massimo del parametro è inferiore al valore minimo

0x 0800 0000

Si è verificato un errore generale rilevato

Esempio di SDO di scrittura

Di seguito si riporta un esempio di SDO di scrittura programmato in linguaggio testuale strutturato per PLC Premium.

Esempio di SDO di lettura

Di seguito si riporta un esempio di SDO di lettura programmato in linguaggio testuale strutturato per PLC Premium.

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Le informazioni sono state utili?