DOCA0132IT-01

Oggetti PKW

Panoramica

Il controller CANopen supporta gli oggetti PKW (Periodically Kept in acyclic Words). La funzionalità PKW consiste di 4 oggetti specifici del produttore: da 0x3000:0x01 a 0x3000:0x04.

Questi oggetti consentono a un client CANopen di leggere o scrivere qualsiasi registro usando i PDO. Gli oggetti sono mappati per default nel PDO4 di trasmissione e di ricezione.

A seconda del codice funzione, è possibile scegliere se indirizzare un registro in base al suo numero o in base a indice e sottoindice CANopen.

Indirizzamento dei dati PKW OUT in base al numero di registro

La richiesta dati PKW OUT ( CANopen > Client LTMR ) è mappata per impostazione predefinita nel PDO4 di ricezione.

Per accedere a un registro utilizzando l’indirizzamento in base al numero è necessario selezionare uno dei seguenti codici funzione:

  • R_REG_16 = 0x25 per leggere un registro

  • R_REG_32 = 0x26 per leggere due registri

  • W_REG_16 = 0x2A per scrivere un registro

  • W_REG_32 = 0x2B per scrivere due registri.

0x3000:0x01

0x3000:0x02

Parola 1

Parola 2

Parola 3

Parola 4

MSB

LSB

Indirizzo del registro

Bit di commutazione

(bit 15)

Bit di funzione

(bit da 8 a 14)

Non usata

(bit da 0 a 7)

Dati da scrivere

Numero registro

0/1

R_REG_16

Codice 0x25

0x00

_

_

R_REG_32

Codice 0x26

_

_

W_REG_16

Codice 0x2A

Dati da scrivere nel registro

_

W_REG_32

Codice 0x2B

Dati da scrivere nel registro 1

Dati da scrivere nel registro 2

Indirizzamento CANopen dei dati PKW OUT

Per accedere a un registro utilizzando l’indirizzamento CANopen in base al numero è necessario selezionare uno dei seguenti codici funzione:

  • R_CO_16 = 0x35 per leggere un registro

  • R_CO_32 = 0x36 per leggere due registri

  • W_CO_16 = 0x3A per scrivere un registro

  • W_CO_32 = 0x3B per scrivere due registri.

0x3000:0x01

0x3000:0x02

Parola 1

Parola 2

Parola 3

Parola 4

MSB

LSB

Indirizzo del registro

Bit di commutazione

(bit 15)

Bit di funzione

(bit da 8 a 14)

Indirizzo del registro

Dati da scrivere

Indice CANopen

0/1

R_CO_16

Codice 0x35

Sottoindice CANopen

_

_

R_CO_32

Codice 0x36

_

_

W_CO_16

Codice 0x3A

Dati da scrivere nel registro

_

W_CO_32

Codice 0x3B

Dati da scrivere nel registro 1

Dati da scrivere nel registro 2

Qualsiasi modifica di questo codice funzione attiva il trattamento della richiesta (salvo quando codice funzione [b8...b14] = 0x00).

NOTA: Il bit più alto del codice funzione (bit 15) è un bit di commutazione. Cambia a ogni richiesta consecutiva.

Questo meccanismo consente all'elemento di attivazione della richiesta di rilevare che una risposta è pronta interrogando il bit 15 del codice funzione nell'oggetto 30000x:03. La risposta è pronta quando questo bit nel progetto OUT corrisponde al bit di commutazione emesso nella risposta nei dati IN (quando si avvia la risposta).

Indirizzamento dei dati PKW IN in base al numero di registro

La risposta dati PKW IN ( LTMR > CANopen client ) è mappata per impostazione predefinita nel PDO4 di trasmissione. L'unità LTMR propaga lo stesso indirizzo di registro e codice funzione o eventualmente un codice di errore rilevato:

0x3000:0x03

0x3000:0x04

Parola 1

Parola 2

Parola 3

Parola 4

MSB

LSB

Indirizzo del registro

Bit di commutazione

(bit 15)

Bit di funzione

(bit da 8 a 14)

Non usata

(bit da 0 a 7)

Dati da scrivere

Stesso numero di registro della richiesta

Uguale a richiesta

ERRORE RILEVATO

Codice 0x4E

0x00

Codice di errore rilevato

R_REG_16

Codice 0x25

Dati letti nel registro

_

R_REG_32

Codice 0x26

Dati letti nel registro 1

Dati letti nel registro 2

W_REG_16

Codice 0x2A

_

_

W_REG_32

Codice 0x2B

_

_

Indirizzamento CANopen dei dati PKW IN

L'unità LTMR propaga lo stesso indirizzo di registro e codice funzione o eventualmente un codice di errore rilevato:

0x3000:0x03

0x3000:0x04

Parola 1

Parola 2

Parola 3

Parola 4

MSB

LSB

Indirizzo del registro

Bit di commutazione

(bit 15)

Bit di funzione

(bit da 8 a 14)

Indirizzo del registro

Dati da scrivere

Stesso indirizzo CANopen della richiesta

Uguale a richiesta

ERRORE RILEVATO

Codice 0x4E

Sottoindice CANopen

Codice di errore rilevato

R_REG_16

Codice 0x55

Dati letti nel registro

_

R_REG_32

Codice 0x36

Dati letti nel registro 1

Dati letti nel registro 2

W_REG_16

Codice 0x3A

_

_

W_REG_32

Codice 0x3B

_

_

Se l'elemento di attivazione cerca di scrivere un oggetto o registro TeSys T su un valore illegale o cerca di accedere a un registro non raggiungibile, il sistema restituisce un codice di errore rilevato (codice funzione = bit di commutazione + 0x4E). Il codice di esatto si trova nelle parole 3 e 4.

Questi codici sono identici ai codici di annullamento SDO Codici di annullamento SDO.

La richiesta è rifiutata e l'oggetto/registro mantiene il valore originale.

Per riattivare lo stesso comando:

  1. riportare il codice funzione a 0x00,

  2. attendere il frame di risposta con il codice funzione uguale a 0x00,

  3. riportarlo al valore precedente.

Questa procedura è utile per i client limitati come HMI.

In alternativa, per attivare nuovamente lo stesso comando è possibile invertire il bit di commutazione nel byte del codice funzione.

La risposta è valida quando il suo bit di commutazione corrisponde a quello scritto nella richiesta (metodo più efficiente, che tuttavia richiede maggiori capacità di programmazione).

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

Le informazioni sono state utili?