Salta al contenuto principale
Interfacce

CANopen

CARATTERISTICHE GENERALI, INTRODUZIONE

L'AC 58 è un encoder rotativo assoluto (encoder, encoder angolare) che, nella versione qui descritta, invia la sua posizione attuale a un altro dispositivo collegato al bus attraverso il mezzo di trasmissione di un bus CAN (fisicamente: un cavo a 2 fili intrecciato e schermato).

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

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

Utilizzando il filtro di accettazione, i dispositivi connessi accettano solo i messaggi a loro destinati. Il criterio per queste decisioni è l'identificatore che viene trasmesso con ogni messaggio. Il collegamento del bus è standardizzato a livello internazionale secondo la norma ISQ-DIS 11898 (CAN High Speed) e consente velocità di trasmissione dati fino a 1 Mbit al secondo.

La caratteristica principale del protocollo CAN bus è l'elevato livello di sicurezza della trasmissione (distanza di Hamming = 6). Il controllore CAN Intel 82527 che utilizziamo è adatto sia per le funzioni di base che per quelle diCAN completoe supporta la specifica CAN 2.0 Parte B (protocollo standard con identificatore a 11 bit e protocollo esteso con identificatore a 29 bit).

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

AREA DI APPLICAZIONE

Nei sistemi in cui la posizione di un azionamento o di un'altra parte della macchina deve essere registrata e segnalata a un sistema di controllo, questo compito può essere svolto da un encoder AC 58. In questo modo, è possibile risolvere i compiti di posizionamento, ad esempio, nei casi in cui il feedback sulla posizione corrente dell'azionamento viene segnalato da un encoder AC 58 all'unità di posizionamento tramite il bus CAN.

MODELLO DI COMUNICAZIONE E PROFILI CANOPEN

Stack di protocollo CANopen

Livello 1 (livello fisico): ISO-DIS 11898 (CAN ad alta velocità)Livello 2 (livello di collegamento dati): ISO-DIS 11898 (CAN High Speed)Layer 7 (Application Layer): CiA DS 301 (CAN in Automation Draft Standard, CANopen CAL-based Communication Profile) + profili dei dispositivi, CiA DS 4xx (CANopen Device Profile for xx)

I profili esistono già per i seguenti dispositivi:

  • Proposta 401 di norma CiA per i moduli di ingresso/uscita
  • Proposta di norma 402 del CiA per gli azionamenti e il controllo del movimento
  • Punto di lavoro CiA 403 per le interfacce uomo-macchina
  • Bozza di lavoro CiA 404 per controllori e trasformatori ad anello chiuso
  • Punto di lavoro CiA 405 per le interfacce IEC-1 131
  • Proposta di norma 406 del CIA per i codificatori
  • Punto di lavoro CiA 407 per il trasporto pubblico
  • Punto di lavoro CiA 408 per gli elevatori a forca

IL PROFILO CANOPEN

Circa 2 anni e mezzo dopo l'adozione del CAN Application Layer (CAL) da parte di CAN in Automation (CiA), l'associazione degli utenti e dei produttori di prodotti CAN, è diventato possibile sviluppare sistemi aperti utilizzando CANopen e i relativi profili dei dispositivi. CANopen è stato sviluppato sotto la direzione tecnica dello Steinbeis Transfer Center for Automation (STA Reutlingen, Germania) sulla base delle specifiche del livello 7 del 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 quindi di semplificare la progettazione del sistema e di utilizzare dispositivi semplificati. CANopen è ottimizzato per lo scambio rapido di dati nei sistemi in tempo reale ed è standardizzato per diversi profili di dispositivi.

L'associazione di produttori e utenti CAN in Automation (CiA) è responsabile della creazione e della standardizzazione dei profili pertinenti.

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 abilita

  • autoconfigurazione della rete e
  • accesso comodo a tutti i parametri del dispositivo.
  • Sincronizzazione dei dispositivi,
  • traffico di dati di processo ciclico e controllato da eventi,
  • e la lettura o l'emissione simultanea di dati.

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

  • Oggetti di dati di processo (PDO) per i dati in tempo reale,
  • oggetti dati di servizio (SDO) per la trasmissione di parametri e programmi,
  • gestione della rete (NMT, life guarding)
  • oggetti predefiniti (per la sincronizzazione, le marche temporali, i messaggi di emergenza)

Tutti i parametri del dispositivo sono archiviati o memorizzati in una directory di oggetti. Questa directory contiene la descrizione, il tipo di dati e la struttura dei parametri e gli indirizzi (indice). La directory è suddivisa in una sezione di comunicazione e in una sezione di profilo del dispositivo, oltre che 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.

Tabella che mostra il frame di comunicazione CANopen

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.