CANopen

CARATTERISTICHE GENERALI, INTRODUZIONE

Il dispositivo AC 58 è un encoder rotativo assoluto (encoder, encoder angolare) che nella versione qui descritta invia la propria posizione a un altro dispositivo collegato al bus tramite il mezzo di trasmissione di un CAN bus (fisicamente: un doppino ritorto e schermato).

Il sistema di bus seriale CAN (Controller Area Network), originariamente sviluppato da Bosch / Intel per applicazioni automobilistiche, viene utilizzato sempre più nella tecnologia dell'automazione industriale. È dotato di funzionalità multi-master, ovvero i diversi dispositivi collegati al CAN bus possono inviare segnali al bus contemporaneamente. Il messaggio con la priorità più elevata (determinata dall'identificatore) verrà trasmesso per primo senza alcuna perdita di tempo.

Il trasferimento dei dati è regolato dalla priorità dei messaggi. Con il CAN bus non sono presenti indirizzi per i dispositivi o i sistemi collegati ma solo identificatori di messaggi. I messaggi inviati possono essere ricevuti contemporaneamente da tutti i dispositivi collegati (un sistema broadcast).

Utilizzando il filtro di accettazione, i dispositivi collegati accetteranno solo i messaggi destinati a loro. Il criterio per queste decisioni è l'identificatore trasmesso con ogni messaggio.

Il collegamento del bus è standardizzato a livello internazionale secondo ISQ-DIS 11898 (CAN High Speed) e consente velocità di trasmissione dati fino a 1 Mbit al secondo. La caratteristica più importante del protocollo CAN bus è l'elevato livello di sicurezza della trasmissione (distanza di Hamming = 6).

Il controller CAN Intel 82527 che utilizziamo è adatto per sistemi CAN sia di base che completi e supporta la specifica CAN 2.0 Parte B (protocollo standard con identificatore a 11 bit e protocollo extended con identificatore a 29 bit).

Finora con CANopen sono stati usati solo identificatori a 11 bit.

CAMPO DI APPLICAZIONE

Nei sistemi in cui la posizione di un azionamento o di un altro componente della macchina deve essere registrata e segnalata a un sistema di controllo, questo compito può essere eseguito da un encoder AC 58. In questo modo, le attività di posizionamento possono essere risolte, ad esempio, nei casi in cui il feedback sulla posizione attuale dell'azionamento viene segnalato da un encoder AC58 all'unità di posizionamento tramite il CAN bus.

MODELLO E PROFILI DI COMUNICAZIONE CANOPEN

livello 1 (livello fisico): ISO-DIS 11898 (CAN ad alta velocità)
livello 2 (livello di collegamento dati): ISO-DIS 11898 (CAN ad alta velocità)
livello 7 (livello di applicazione): CiA DS 301 (CAN in Automation Draft Standard, profilo di comunicazione basato su CAL CANopen) + profili dispositivi, CiA DS 4xx (profilo dispositivo CANopen per xx)

Sono già disponibili i profili per i seguenti dispositivi:

  • CiA Draft Standard Proposal 401 per moduli di ingresso / uscita,
  • CiA Draft Standard Proposal 402 per azionamenti e controlli del movimento,
  • CiA Work Item 403 per interfacce uomo-macchina,
  • CiA Work Draft 404 per controller e trasformatori a circuito chiuso,
  • CiA Work Item 405 per interfacce IEC-1 131,
  • CIA Draft Standard Proposal 406 per encoder,
  • CiA Work Item 407 per il trasporto pubblico,
  • CiA Work Item 408 per carrelli elevatori.

IL PROFILO CANOPEN

Circa 2 anni e mezzo dopo l'adozione del livello di applicazione CAN (CAL, CAN Application Layer) da parte di CAN in Automation (CiA), l'associazione degli utenti e dei produttori di prodotti CAN, è stato possibile sviluppare sistemi aperti utilizzando CANopen e i relativi profili dei dispositivi. CANopen è stato sviluppato sotto la direzione tecnica del Centro di trasferimento per l'automazione Steinbeis (STA Reutlingen, Germania) sulla base delle specifiche del livello 7 per il livello applicativo CAL. Rispetto al livello CAL, CANopen contiene solo le funzioni adatte a questa applicazione. CANopen è quindi un sottoinsieme del livello CAL ottimizzato per l'applicazione specifica e consente pertanto di utilizzare un design di sistema semplificato e dispositivi semplificati. CANopen è ottimizzato per un rapido scambio di dati in sistemi in tempo reale ed è standardizzato per diversi profili di dispositivi. L'associazione di utenti e produttori CAN in Automation (CiA) è responsabile della creazione e della standardizzazione dei relativi profili.

L'encoder AC 58 con CANopen soddisfa i requisiti specificati nel profilo di comunicazione (CiA DS 301) e nel profilo del dispositivo per encoder (CiA DSP 406).

CANopen consente

  • l'autoconfigurazione della rete e un comodo accesso
  • a tutti i parametri del dispositivo.
  • Sincronizzazione del dispositivo,,
  • traffico dati di processo ciclico e controllato dagli eventi
  • e lettura simultanea dei dati in entrata o in uscita.

CANopen utilizza quattro oggetti di
comunicazione (COB) con caratteristiche diverse:

  • oggetti dei dati di processo (PDO, Process Data Object) per dati in tempo reale,
  • oggetti dei dati di servizio (SDO, Service Data Object) per la trasmissione di parametri e programmi,
  • gestione della rete (NMT, network management, life guarding),
  • oggetti predefiniti (per sincronizzazione, timestamp, messaggi di emergenza).

Tutti i parametri del dispositivo vengono archiviati o memorizzati in una directory di oggetti. Questa directory di oggetti contiene la descrizione, il tipo di dati e la struttura di parametri e indirizzi (indice). La directory è suddivisa in una sezione di comunicazione e in una sezione di profilo del dispositivo, nonché in una sezione specifica del produttore.

IL PROFILO DEL DISPOSITIVO ENCODER (CiA DS Draft Standard P406)

Questo profilo fornisce una definizione indipendente dal produttore e vincolante dell'interfaccia per encoder rotativi. Il profilo definisce quali funzioni CANopen vengono utilizzate e come devono essere utilizzate. Questo standard consente di sviluppare un sistema di bus open source e indipendente dal produttore.

Il profilo del dispositivo è diviso in due classi di oggetti:

  • la classe standard C1 descrive tutte le funzioni di base che l'encoder deve svolgere,
  • la classe estesa C2 comprende un gran numero di altre funzioni che devono essere supportate da encoder di questa classe (obbligatorio) oppure sono opzionali.

I dispositivi della classe C2 possono quindi svolgere tutte le funzioni obbligatorie C1 e C2 nonché altre funzioni opzionali utilizzate da diversi produttori. Nel profilo è inoltre definito un intervallo di indirizzi e a questi indirizzi possono essere assegnate funzioni speciali per specifici produttori.

ASMISSIONE DATI

Con CANopen, i dati vengono trasmessi usando due diversi tipi di comunicazione (COB = Communication Object) con caratteristiche diverse:

  • oggetti dei dati di processo (PDO, Process Data Object)
  • e oggetti dei dati di servizio (SDO, Service Data Object)

La priorità degli oggetti di messaggio è determinata dall'identificatore COB.

Gli oggetti dei dati di processo (PDO) vengono utilizzati per lo scambio altamente dinamico di dati in tempo reale (ad es. posizioni dell'encoder) con una lunghezza massima di 8 byte. I dati vengono trasmessi con priorità elevata (identificatore COB basso). I PDO sono messaggi broadcast che mettono i loro dati in tempo reale a disposizione di tutti i destinatari richiesti contemporaneamente. Gli oggetti dei dati di servizio (SDO) costituiscono il canale di comunicazione per la trasmissione dei parametri del dispositivo (ad es. programmazione della risoluzione dell'encoder). Poiché questi parametri non vengono trasmessi ciclicamente (ad es. una sola volta all'avvio della rete), gli oggetti SDO hanno una bassa priorità (identificatore COB alto).

IDENTIFICATORE COB

Per semplificare la gestione degli identificatori, CANopen utilizza il "set di collegamento master / slave predefinito". Tutti gli identificatori sono definiti con valori standard nella directory degli oggetti.

L'identificatore a 11 bit è composto da un codice funzione a 4 bit e da un numero di nodo a 7 bit.

1 x = valore binario liberamente selezionabile (0 o 1); 0 = valore 0 fisso

Più alto è il valore dell'identificatore COB, minore è la sua priorità!

NODO NUMERO

Il numero di nodo a 7 bit viene impostato in hardware tramite 5 DIP switch sul retro dell'encoder.