PROTOCOLLO CANopen

Transcript

PROTOCOLLO CANopen
FAGOR AUTOMATION S.COOP.
MCP/MCPi
~ Protocollo CANopen ~
Ref. 0612
Titolo
Tipo di documentazione
Denominazione
Riferimento
Software
WinDDSSetup
Documento elettronico
Headquarters
MCP/MCPi. Protocollo CANopen.
Architettura, topologia e comunicazione in reti CANopen.
MAN_ MCP/MCPi_CANopen (ita.).
Ref. 0612
V01.05 (MCP), V01.01 (MCPi)
A partire dalla versione V0612
MAN_MCP&MCPi_CANopen.pdf
FAGOR AUTOMATION S.COOP.
Bº San Andrés 19, Apdo. 144
E20500 ARRASATE-MONDRAGÓN
www.fagorautomation.com
[email protected]
Telefono: 34-943-719200
Fax:
34-943-771118 (Servizio Assistenza Tecnica)
L'informazione di cui al presente manuale può essere soggetta a variazioni dovute
a eventuali modifiche tecniche. FAGOR AUTOMATION, S. Coop. si riserva il diritto
di modificare il contenuto del manuale, non essendo tenuta a notificare tali
variazioni.
È stato verificato i contenuti del presente manuale e la sua coincidenza per il
prodotto descritto. Ciononostante, è possibile che sia stato commesso un errore
involontario e perciò non si garantisce una coincidenza assoluta. In ogni caso, si
verifica regolarmente l’informazione contenuta nel documento e si provvede a
eseguire le correzioni necessarie che saranno incluse in una successiva
editazione.
Tutti i diritti sono riservati. La presente documentazione, interamente o in parte, non
può essere riprodotta, trasmessa, trascritta, memorizzata in un sistema di
registrazione dati o tradotta in nessuna lingua, senza autorizzazione espressa di
Fagor Automation. Coop.
2/40 - Protocollo CANopen
MCP/MCPi - Ref. 0612
GARANZIA
GARANZIA INIZIALE:
Ogni prodotto fabbricato o commercializzato da FAGOR ha una garanzia di 12 mesi per
l'utente finale.
Affinché il tempo dall'uscita di un prodotto dai nostri magazzini all'arrivo presso l'utente finale
non venga sottratto da questi 12 mesi di garanzia, il costruttore o l'intermediario deve
comunicare a FAGOR la destinazione, l'identificazione e la data di installazione della macchina
tramite il Foglio di Garanzia che accompagna ogni prodotto.
La data di inizio della garanzia per l'utente sarà quella indicata come data di installazione
della macchina sul Foglio di Garanzia.
Questo sistema ci consente di assicurare all'utente i 12 mesi di garanzia.
FAGOR dà un termine di 12 mesi al costruttore o all'intermediario per l'installazione e la vendita
del prodotto, in modo che la data di inizio della garanzia può essere fino a un anno posteriore
all'uscita del prodotto dai nostri magazzini, purché sia stato rimesso il foglio di garanzia. Ciò
significa in pratica l'estensione della garanzia a due anni dall'uscita del prodotto dai magazzini
Fagor. Nel caso in cui non sia stato inviato il citato foglio, il periodo di garanzia concluderà dopo
15 mesi dall'uscita del prodotto dai nostri magazzini.
FAGOR si impegna alla riparazione o alla sostituzione di un prodotto a partire dal suo lancio
sul mercato e fino a 8 anni dopo la data di eliminazione dal catalogo.
Spetta esclusivamente a FAGOR determinare se la riparazione entra nell'ambito definito come
garanzia.
CLAUSOLE DI ESCLUSIONE:
La riparazione sarà effettuata presso i nostri impianti. Sono pertanto fuori garanzia le spese
di trasporto o quelle derivanti dagli spostamenti del proprio personale tecnico per realizzare
la riparazione di un'attrezzatura, anche se entro il succitato periodo di garanzia.
La citata garanzia sarà applicata purché le apparecchiature siano state disinstallate in base
alle istruzioni, non siano state maltrattate o non abbiano subito danni causati da incidenti o
negligenza e purché non siano state effettuate da personale non autorizzato da FAGOR.
Se, una volta effettuato l'intervento o la riparazione, la causa del guasto non è imputabile al
nostro prodotto, il cliente è tenuto a coprire tutte le spese derivanti, in base alle tariffe vigenti.
Non sono coperte altre garanzie implicite o esplicite e la FAGOR AUTOMATION non si rende
comunque responsabile di altri danni o pregiudizi eventualmente verificatisi.
CONTRATTI DI ASSISTENZA TECNICA:
Sono a disposizione del cliente Contratti di Assistenza e Manutenzione sia per il periodo di
garanzia sia fuori dallo stesso.
MCP/MCPi - Ref. 0612
Protocollo CANopen - 3/40
DICHIARAZIONE DI CONFORMITÀ
Costruttore:
Fagor Automation, S. Coop.
Barrio de San Andrés s/n, C.P. 20500, Mondragón -Guipúzcoa-
(SPAGNA).
Dichiariamo, sotto la nostra esclusiva responsabilità, la conformità del prodotto:
Sistema di regolazione AC Brushless Fagor
composto dai seguenti moduli e motori:
Moduli regolatori:
Serie MCP e MCPi
Motori AC:
Serie FXM, FKM, FSA e FSP
cui si riferisce la presente dichiarazione,
ai requisiti base delle Direttive Europee 73/23/CE di Bassa Tensione [Norma Base
di Sicurezza; Apparecchiatura Elettrica delle Macchine EN60204-1:95] e
92/31/CE di Compatibilità Elettromagnetica [EN 61800-3:1996, Norma specifica di
Compatibilità Elettromagnetica per Sistemi di Regolazione].
In Mondragón, li 15.09.06
PRESENTAZIONE
Questo manuale offre informazioni descrittive e dettagliate del protocollo CANopen
sulla scheda CAN dei regolatori MCP e MCPi, sull’architettura, topologia e
comunicazione CANopen nella rete e sull’avvio dell’apparecchiatura.
Se è la prima volta che si esegue l'installazione, è consigliabile leggere l'intero
documento.
In caso di eventuali dubbi o necessità, si prega di rivolgersi ai nostri tecnici presso uno
qualsiasi degli uffici sussidiari.
Grazie per aver scelto Fagor.
4/40 - Protocollo CANopen
MCP/MCPi - Ref. 0612
INDICE GENERALE
PROTOCOLLO CANopen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Architettura di rete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Topologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Cavo di connessione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
Lunghezza massima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
Comunicazione in rete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Frame CAN standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Connessione predefinita CANopen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
NMT, Network Management. Procedura di avvio e controllo di rete . . . . . . . . . . .11
PDO, Oggetto di Dati di Procedura. Canale rapido . . . . . . . . . . . . . . . . . . . . . . .14
SDO, Oggetto di Dati di Servizio. Canale lento . . . . . . . . . . . . . . . . . . . . . . . . . .17
Oggetto di emergenza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
Descrizione del dizionario di oggetti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
Descrizione dei PDO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
Avvio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
Descrizione della scheda CAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
Selezione della velocità di comunicazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
Determinazione del nº di nodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
Indicatori di stato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
MCP/MCPi - Ref.0612
Protocollo CANopen - 5/40
PAGINA IN BIANCO
6/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
PROTOCOLLO CANopen
Introduzione
CANopen è un protocollo di comunicazione di rete basato sul sistema di Bus CAN
(sviluppato da BOSCH verso la metà degli ‘80 e destinato al settore automezzi).
CANopen è definito come uno strato di applicazione uniforme nella specifica
DS301 edita dall’ente regolatore della specifica SOCIETÀ (Can In Automation).
CAN è un sistema di Bus Multimaster che si differenzia da altri sistemi di Bus per
il fatto che i moduli collegati allo stesso non sono direzionati dagli identificatori dei
messaggi. In questo modo, i nodi potranno lasciare via i messaggi nel Bus purché
esso sia libero da traffico. I conflitti nel bus sono risolti in base a una determinata
priorità assegnata ai messaggi, stabilita nello stesso COB ID (Communication
Object Identifier) e chiaramente assegnata agli oggetti di comunicazione. Il COB ID
contenente il minor valore identifica il messaggio di maggior priorità. Questa
caratteristica fornisce un’autoregolazione di priorità nel Bus senza la gestione di
nessun elemento maestro (master).
Architettura di rete.
‡ Topologia
Per costruire una rete CAN semplice, in cui la comunicazione sarà stabilita con
protocollo CANopen, sarà necessario almeno un elemento slave, un elemento
maestro (p. es. un PC con scheda di bus di campo CAN) e un cavo di connessione
come quello illustrato nella FIGURA 1.
Potranno avere fino a 127 elementi slave indipendenti. Questi potranno adottare
numeri di nodo compresi fra 1 e 127.
Si ricorda che il nodo 0 non esiste come tale ed è riservato a certi messaggi
generici utilizzati dall’elemento maestro.
Nella rete dovranno essere connesse fra loro tutte le linee CAN_H, CAN_L e
CAN_SHLD.
CANopen
MASTER
CANopen
connector
of the PC
DRIVE 1
DRIVE 2
DRIVE 3
CANopen
connector
CANopen
connector
CANopen
connector
CAN_L
2
5
120 Ω
5
CAN_H
7
CAN_SHLD
4 White
4 CAN_H
3 Shield
3 CAN_SHLD
2 Brown
2 CAN_L
4
120 Ω
3
2
1
Nota: Una resistenza terminatrice da 120 Ω sarà montata dall’installatore della rete su ogni
modulo estremità del bus CANopen. Nella rete della figura sono state installate sul PC e sul
DRIVE3 che sono i moduli estremità del bus. Se p. es. invece del PC fosse stato posto un
DRIVE in tale posizione, allora esso sarebbe un’estremità del bus e occorrerebbe installare la
resistenza terminatrice di 120 Ω in tale DRIVE e non nel PC. Il resto dei moduli che fanno parte
del bus non sarà situato alle estremità dello stesso e, pertanto, non si installerà in essi nessuna
resistenza. Vedi figura.
FIGURA 1.
Topologia di una rete CAN.
MCP/MCPi - Ref.0612
Protocollo CANopen - 7/40
‡ Cavo di connessione
Per realizzare la connessione della scheda CAN, installata in un regolatore, a una
rete CANopen, sarà necessario disporre di un cavo CAN formato da un tubo flessibile
di 2 fili con schermatura esterna. In una delle estremità del tubo flessibile è inserito
un connettore “Open Style” collegabile a 5 vie e passo 5 mm. La maglia andrà
collegata al pin 3 di questo connettore. Per ulteriori dettagli, vedi FIGURA 2.
Pin
Segnale
Colore del filo
5
N.C.
----
4
CAN_H
Bianco
CAN_SHLD
Griglia
2
CAN_L
Marrone
1
N.C.
----
CANopen
3
Cavo CAN fra
DRIVE1 e DRIVE2
Cavo CAN fra
PC e DRIVE1
5
2
1
Pin
2
3
4
5
Cavo CAN fra
DRIVE2 e DRIVE3
Pin
Pin
5
5
5
SHIELD
4
4
4
CAN H
3
3
3
SHIELD
2
2
2
CAN L
1
1
1
ISO GND
Vista frontale del connettore Sub-D, F9
dell’estremità del cavo CAN
7
FIGURA 2.
Cavi di collegamento fra moduli collegati a una rete CAN.
Tutte le linee CAN_H, CAN_L e la maglia di ognuno dei moduli che conformano la
rete dovranno essere collegate fra loro.
In ognuno dei due moduli estremità del bus CAN (e solo in essi) dovranno essere
installate esternamente dall’utente (fra i pin 2 e 4 del connettore Open Style se
il modulo estremità è un regolatore, o 2 e 7 del connettore Sub-D, M9 se il modulo
estremità è il PC) una resistenza terminatrice di linea da 120 Ω allo scopo di evitare
riflessi (rimbalzi), cioè problemi di trasmissione.
‡ Lunghezza massima
Nella seguente tabella vengono riportate le lunghezze massime della rete in
funzione delle diverse velocità di trasmissione:
TABELLA 1. Lunghezza massima di una rete CAN a seconda della velocità di trasmissione.
Velocità di
trasmissione
Lunghezza
di rete
Velocità di
trasmissione
1000 kbit/s
30 metri
250 kbit/s
250 metri
800 kbit/s
50 metri
125 kbit/s
500 metri
500 kbit/s
100 metri
≤ 50 kbit/s
1000 metri
8/40 - Protocollo CANopen
Lunghezza
di rete
MCP/MCPi - Ref.0612
Comunicazione in rete
‡ Frame CAN standard
I frame standard di CAN contengono da 44 a 108 bit utili. Inoltre, in funzione dei dati
inviati, si possono inserire nel frame dai driver di CAN fino a 23 bit “di ripieno” in modo
che il massimo nº di bit che si raggiunge nell’invio di un frame è di 131.
L’identificazione dei campi di bit nel frame CAN è:
‡ <Start bit>: Inizio del frame.
‡ <Arbitraggio>: Campo di arbitraggio contenente l’identificatore e il tipo di
messaggio che sarà inviato.
‡ <Controllo bits>: Campo di controllo contenente il nº di byte di dati.
‡ <Data field>: Byte di dati (di 0 a 8 byte).
‡ <CRC>: Caratteri di verifica di ridondanza ciclica come da algoritmo CRC-16.
‡ <Acknowledge>: Riconoscimento di frame.
‡ <End>: Bits finale frame.
Bit Length
1
12
6
0-8 bytes
16
2
7
Start bit
Arbitration
Control bits
Data field
CRC
Acknowledge
End
FIGURA 3.
Frame CAN standard.
‡ Connessione predefinita CANopen
Con CANopen la trasmissione dati, lo scatto eventi, la segnalazione di stati di errore,
ecc.. è realizzata mediante oggetti di comunicazione. A tale scopo, ogni oggetto di
comunicazione ha assegnato un COB ID nella rete.
Gli oggetti più importanti in CANopen sono:
‡ <NMT>: Oggetti di trattamento della rete.
‡ <SYNC>: Oggetti di sincronizzazione.
‡ <EMCY>: Oggetti di messaggio di errore.
‡ <PDO>: Oggetti di procedura.
‡ <SDO>: Oggetti di servizio.
Allo scopo di facilitare l’impostazione di reti CAN semplici, esiste un set di COB ID
già predefiniti.
MCP/MCPi - Ref.0612
Protocollo CANopen - 9/40
COB ID
Identificatore del messaggio immesso nella rete implementato negli 11 bit
dell’identificatore nel frame di CAN. La sua struttura è:
10 9
8
7
6
Function Code
5
4
3
2
1
0
Node number: 0 - 127
FIGURA 4.
Struttura del COB ID.
Con il codice di funzione 1 (oggetto di emergenza) si possono generare fino a 128
oggetti diversi, a seconda del nº di nodo disponibile nel messaggio. Gli oggetti con
identificatore da 0x81 a 0xFF sono oggetti di emergenza emessi dal nodo il cui
numero è implicito nell’identificatore. Lo 0x80 è un oggetto diverso emesso
dall’elemento maestro (senza nº di nodo assegnato) di più alta priorità dei messaggi
di emergenza e che serve da sincronismo per il bus di comunicazioni.
A seconda se il nº di nodo appare o meno nell’intestazione del messaggio, si
stabiliscono gli oggetti Broadcast (nodo 0) e Per to Per (nodo>0). Gli oggetti
“Broadcast” sono interpretati da tutti i nodi del bus e gli oggetti “Per to Per” consentono
di stabilire conversazioni fra due elementi della rete.
- Oggetti “Broadcast”
TABELLA 2. Oggetti Broadcast.
Oggetto
Bits di codice
di funzione
COB ID
Parametri di
comunicazione
NMT Module Control
0000
000h
---------
SYNC
0001
080h
1005h, 1006h, 1007h
TIME STAMP
0010
100h
1012h, 1013h
Il COB ID degli oggetti Broadcast è unico, dato che non ha assegnato nessun numero
di nodo. Sarà interpretato da tutti i nodi presenti nella rete CANopen.
10/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
- Oggetti “Per to Per”
TABELLA 3. Oggetti Per to Per.
Oggetto
Bits di codice COB ID
di funzione
Parametri di
mappatura del PDO
Parametri di
comunicazione
EMERGENCY
0001
081h-0FFh
1024h, 1015h
PDO1 tx
0011
181h-1FFh 1A00h
1800h
PDO1 rx
0100
201h-27Fh 1600h
1400h
PDO2 tx
0101
281h-2FFh 1A01h
1801h
PDO2 rx
0110
301h-37Fh 1601h
1401h
PDO3 tx
0111
381h-3FFh 1A02h
1802h
PDO3 rx
1000
401h-47Fh 1602h
1402h
PDO4 tx
1001
481h-4FFh 1A03h
1803h
PDO4 rx
1010
501h-57Fh 1603h
1403h
SDO tx
1011
581h-5FFh
1200h
SDO rx
1100
601h-67Fh
1200h
NMT Error Control
1110
701h-77Fh
1016h-1017h
Nota: Il concetto dei termini rx e tx va inteso dal punto di vista del bus.
Gli oggetti Per to Per comportano di stabilire una comunicazione fra due nodi in
particolare. Questo obbliga i COB ID ad includere (a seconda dell’oggetto in
questione) il nº di nodo al quale sono destinati o il nº di nodo dal quale sono emessi
(0-127 in entrambi i casi). Da qui l'intervallo specificato nella TABELLA 3.
In “parametri di comunicazione” è l’oggetto di comunicazioni in cui sono impostati
diversi aspetti relativi a tale oggetto.
In “parametri di mappatura del PDO” è l’oggetto di mappatura in cui sono impostati
i diversi oggetti mappati per il rispettivo PDO.
‡ NMT, Network Management. Procedura di avvio e controllo di rete
Una volta applicata la tensione a un nodo CANopen si stabilisce la procedura di
avvio (start-up) inizializzandone le variabili, realizzandone l’auto-verifica, ecc.. Una
volta effettuata questa procedura, ogni nodo invia un messaggio di “Boot-Up”
(avvio) attraverso il bus per fare sapere all’elemento maestro che un nuovo nodo è
stato incorporato alla rete CANopen.
(Boot-Up) NMT - maestro Í NMT - slave.
COB ID
Byte 0
0x700 + ID di nodo
0
Una volta eseguita correttamente questa procedura, il nodo passa automaticamente
in uno stato pre-operazionale restando così finché l’elemento maestro, mediante
un messaggio di controllo rete (NMT), non gli richiederà di passare in un altrostato
operazionale:
MCP/MCPi - Ref.0612
Protocollo CANopen - 11/40
(Controllo del modulo) NMT- maestro Î NMT- slave.
COB ID
Byte 0
Byte 1
0x000
CS
ID di nodo
Questa azione può essere definita o no come “Broadcast” a seconda del valore
indicato nel byte 1 del campo dati. Quindi se il valore del byte 1 è zero, l’azione si
definisce come “Broadcast”. Se è diverso da zero e minore di 128, il suo valore
indicherà il nodo al quale è diretto l’ordine.
Il valore indicato nel byte 0 del campo dati del messaggio CAN stabilisce l’ordine da
eseguire. Vedi tabella sotto.
CS.
TABELLA 4. Byte 0 del campo di dati del messaggio CAN. Ordine da eseguire.
Specificatore di
comando (byte 0)
Servizio di NTM
(controllo del modulo)
1
Avviare il nodo remoto – passaggio a operazionale -
2
Arrestare il nodo remoto – passaggio a stop -
128
Immettere lo stato preoperazionale - passaggio a preoperazionale -
129
Inizializzare il nodo - reset del / dei nodi selezionati -
130
Inizializzare la comunicazione - reset della procedura di
comunicazione nel nodo o dei nodi indicati -
A seconda del valore specificato in questi byte del campo dati si può modificare lo
stato in cui si trovano uno o tutti i nodi presenti in rete.
Dopo un avvio soddisfacente della rete, l’elemento maestro ha l’opzione di controllare
ciclicamente che tutti i nodi siano attivi all’interno della stessa.
Con - Node Guarding - l’elemento maestro invia ciclicamente (in base a dei tempi
prestabiliti in precedenza e verificati) un messaggio “broadcast” senza nessun dato
e al quale rispondono tutti i nodi e in cui si include lo stato in cui si trova ognuno di
essi. Questi messaggi sono:
(Node Guarding)
NMT- maestro Î NMT- slave.
COB ID
0x700 + ID di nodo
NMT- maestro Í NMT- slave.
COB ID
Byte 0
0x700 + ID di nodo
Bit 7 - Toggle bit -
12/40 - Protocollo CANopen
Bits 6-0 - Stato
MCP/MCPi - Ref.0612
Stato.
TABELLA 5. Node Guarding. Stati.
Valore
Stato
0
Inizializzazione
1
In disconnessione *
2
In connessione *
3
In preparazione *
4
Fermo
5
In funzionamento
127
In fase precedente al funzionamento normale
* Questi stati esistono solo se il dispositivo supporta “extended boot-up”.
Attenzione: La scheda CAN dei regolatori MCP e MCPi non supporta tale
caratteristica.
Oggetti legati.
100Ch
Guard Time
100Dh
Life Time
100Eh
Node Guarding Identifier ( di default: 700 + ID di nodo )
Alternativamente, un nodo può essere impostato allo scopo di generare un
messaggio periodico denominato “Heartbeat”.
(Heartbeat) Produttore Î Consumatore / es.
COB ID
Byte 0
0x700 + ID di nodo
Stato
Stato.
TABELLA 6. Heartbeat. Stati.
Stato
Significato
0
Boot-up
4
Fermo
5
In funzionamento
127
In fase precedente al funzionamento normale
Il consumatore di “Heartbeat” normalmente è l’elemento maestro che verifica l’invio
da parte di ognuno dei nodi del messaggio di “Heartbeat” con una periodicità
prestabilita entro determinati margini e che agirà di conseguenza ogni volta che ciò
non si verifica in uno dei nodi.
Attenzione: Un nodo non può supportare “Heartbeat” e “Node Guarding”
simultaneamente.
MCP/MCPi - Ref.0612
Protocollo CANopen - 13/40
(Sync) Produttore Î Consumatore/ è.
COB ID
0x080
Oggetto che ha il compito di sincronizzare il bus. È ciclico, “Broadcast” e ha massima
priorità nel bus dopo il NMT. È direttamente legato al trattamento dei PDO.
Oggetti legati.
1005 h
COB-ID del messaggio di sincronismo
1006 h
Periodo del ciclo di comunicazione
1007 h
Lunghezza della finestra sincrona
‡ PDO, Oggetto di Dati di Procedura. Canale rapido
Gli oggetti di dati di procedure (PDO) consentono di eseguire la trasmissione dati
in tempo reale e con identificatori di alta priorità. I telegrammi di dati possono disporre
di un massimo di 8 Byte. Lo scambio di dati si può effettuare mediante eventi o in
modo sincrono, a richiesta. Lo scambio di messaggi mediante eventi consente di
ridurre drasticamente il caricamento nel bus rispetto alla modalità sincrona.
Protocollo PDO
Questo protocollo se utilizza per trasmettere i dati al/dal bus evitando di
sovraccaricarlo con informazione ridondante.
Nei messaggi PDO (nei byte di dati) si trasmettono solo ed esclusivamente i valori
di variabili di diversi nodi, e sarà eliminato l’invio dei relativi identificatori. Per
poterlo fare senza nessun tipo di errore, gli elementi maestro e slave hanno
stabilito in precedenza che variabili saranno inviate all’interno di ogni PDO
(mappatura). Questa assegnazione si definisce mediante gli oggetti “PDO
Mapping Parameter”. Il tipo di comunicazione che si stabilisce per ogni PDO
(sincronizzata o per evento) sarà determinato dagli oggetti “Communication
Parameter”.
In funzione di chi emette il messaggio PDO si parlerà di PDO di trasmissione
(dall’elemento slave al maestro) o di PDO di ricezione (dall’elemento maestro allo
slave).
Nota: Lo Standard DS301 stabilisce quattro PDO di trasmissione ed altri 4 di
ricezione per ogni elemento slave. Non è obbligatorio implementarli tutti per
l’osservanza della norma.
14/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Mappatura e tipo di comunicazioni
Si ipotizza che nell’oggetto di mappatura del secondo PDO di trasmissione siano
disponibili i seguenti valori:.
TABELLA 7. Mappatura e tipo di comunicazioni
Oggetto 0x1A01
Subindice
Valore
Significato
0
2
Mappatura di due oggetti in questo PDO
1
0x60000208
Oggetto: 0x6000 (*)
Subindice: 0x02
Dato: 8 bit
2
0x64010110
Oggetto: 0x6401 (*)
Subindice: 0x01
Dato: 16 bit
* La sua descrizione viene data nella seguente tabella.
Valore Dword (32 bit)
TABELLA 8. Descrizione.
Bits 31-16
Bits 15-8
Bits 14-0
Indice
Subindice
Nº di bit di dati dell’oggetto
Si ipotizza che nell’oggetto di comunicazioni del secondo PDO di trasmissione sia
disponibili i seguenti valori:
TABELLA 9. Es. di oggetto del secondo PDO.
Oggetto 0x1801
Subindice
Valore
Significato
0
5
1
0x00000280
L’oggetto 0x1801 è composto da 5 subindici
PDO esiste, RTR non consentito, 11 bits ID, COB
2
0xBC
La trasmissione del PDO sarà ciclica e attraverso il bus
dopo aver ricevuto 188 messaggi di sincronismo.
3
0x000A
Il tempo di “inhibit time” fra PDOs è di:
10 x 100 µs = 1 ms.
4
----------
Riservato.
5
0x0000
Intervallo del “event timer” 0.
Valore del subindice 1 (COB ID)
TABELLA 10. Valore del subindice 1 (COB ID)
Bit 31
0ÎPDO esiste
1ÎPDO non
esiste
Bit 30
0ÎRTR consentito
1ÎRTR non
consentito
Bit 29
Bits 28-11
0ÎCAN ID 11 bits Parte alta
1ÎCAN ID 29 bits del COB ID
(se CAN ID
è di 29 bits).
Bits 10-0
Parte bassa
del COB ID
(se CAN ID
è di 29 bits).
COB ID
(se CAN ID è
di 11 bits).
MCP/MCPi - Ref.0612
Protocollo CANopen - 15/40
Valore del subindice 2 (Tipo di trasmissione)
TABELLA 11. Valore del subindice 2 (tipo di trasmissione).
Tipo di
Condizione di scatto del PDO
trasmissione ( B = sono necessari entrambi, O = uno o
SYNC
RTR
Oggetto
SYNC
ricevuto
Ricevuta
Cambio di valore
richiesta di
dell'interruzione
trasmissione del temporizzatore
remota
0
B
1-240
O
Evento
B
Sincrona (SYNC), aciclica
Sincrona (SYNC), ciclica
241-251
252
Trasmissione del
PDO
Riservato
B
B
Sincrona (SYNC) dopo RTR
253
O
Asincrona (ASYNC) dopo RTR
254
O
O
Asincrona (ASYNC), evento
specifico del costruttore
255
O
O
Asincrona (ASYNC), evento
specifico del profilo di dispositivo.
dove:
‡ <SYNC> significa che la trasmissione del PDO è legata al ricevimento del
messaggio di sincronismo.
‡ <ASYNC> significa che la trasmissione del PDO non è legata al ricevimento del
messaggio di sincronismo.
Tipo di trasmissione = 0. Sincrona e aciclica. I messaggi sono inviati solo se si
verifica un evento, e in tal caso il messaggio è inviato sincronicamente con il seguente
messaggio di sincronismo.
Si intende conevento un cambiamento nel valore della variabile o (se è supportato
dall’apparecchiatura, oggetti di comunicazioni con subindice 5) un determinato
tempo trascorso.
Tipo di trasmissione = 1 a 240. Il PDO è trasmesso dopo aver ricevuto il nº di
messaggi di sincronismo specificati nel tipo di trasmissione.
Tipo di trasmissione = 252 a 253. Valori possibili solo nei PDO di trasmissione. In
entrambi i casi, il PDO è inviato come risposta a un frame RTR dell’elemento
maestro. La differenza sta nel fatto che il tipo di trasmissione = 252 aggiorna le
variabili con l’arrivo dei sincronismi e il tipo di trasmissione = 253 aggiorna le
variabili e le invia con la ricezione del frame RTR.
Tipo di trasmissione = 254. Il PDO si trasmette quando si verifica un evento
specifico del costruttore.
Tipo di trasmissione = 255. Il PDO si trasmette quando si verifica un evento
specifico del profilo di dispositivo.
16/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Valore del subindice 3 (tempo di inibizione o disabilitazione)
Specifica il minimo intervallo di tempo (in incrementi di 100 µs) che trascorre fra un
PDO e l’altro. Questo intervallo di tempo non può essere modificato finché il valore
del bit 31 del subindice 1 (COB ID) è 0 (il PDO esiste).
Valore del subindice 5 (temporizzatore di eventi)
Specifica il valore del timer di eventi (in incrementi di 1ms) quando il tipo di
trasmissione è 254 o 255.
Esempio esplicativo del senso del “tempo di inibizione” e del “timer eventi”.”
Quando si programma un PDO di trasmissione di tipo 254 nel cui si include una
variabile di posizione si presentano due situazioni diverse. Mentre l’elemento che
emette il PDO è arrestato (senza variazione nella sua posizione) non sarà necessario
nessun invio. Se si programma un timer di eventi (event timer) di 10 ms, anche se
l’elemento non varia la sua posizione (non si sposta) invierà i PDO ogni 10 ms
indicandone la posizione. Nell’iniziare lo spostamento cercherà di inviare PDO
costantemente, occupando così tutto il bus con tale informazione. Allo scopo di
evitare questa situazione, è possibile programmare un tempo di inibizione (inhibit
time) 2, in modo che mentre è in movimento invia PDO solo ogni 2 ms.
Il messaggio
In base alla configurazione descritta nelle tabelle di cui sopra, il messaggio PDO (con
i byte di cui è formato) diventa come segue:
TABELLA 12. Messaggio PDO.
Byte 0
8 bit di dati
0x280
+ ID del nodo dell’oggetto
COB ID
Byte 1
Byte 2
Parte bassa dei 16 bit di
dati dell’oggetto 0x6000
Parte alta dei 16 bit di dati
dell’oggetto 0x6401
La trasmissione del PDO sarà ciclica ed è erogata al bus dopo aver ricevuto 188
messaggi di sincronismo.
Oggetti legati
1004 h
Nº di PDO supportati
‡ SDO, Oggetto di Dati di Servizio. Canale lento
Gli oggetti di dati di servizio (SDOs) consentono di eseguire la lettura e scrittura degli
ingressi del dizionario di oggetti (parametri, variabili, comandi, ...). In questo modo,
utilizzando SDO, qualsiasi nodo può essere impostato dall’elemento maestro. Il
messaggio SDO, di default, ha preventivamente assegnato un identificatore di bassa
priorità. I dati trasmessi superiori a 4 Byte possono essere frammentati e perciò vi
sono due meccanismi di trasferimento di un'SDO:
<Trasferimento inoltrato > utilizzato per definire un trasferimento di oggetti di non
più di 4 Byte.
<Trasferimento segmentato> utilizzato per definire un trasferimento di oggetti di
più di 4 Byte.
MCP/MCPi - Ref.0612
Protocollo CANopen - 17/40
Strutture di base di un SDO
Le strutture di base di un SDO sono:
Cliente
Î
Server/ Server Î Cliente
TABELLA 13. Struttura SDO. Cliente Î Server / Server Î Cliente
Byte 0
Byte 1
Indicatore del
comando
SDO
Indice
di
oggetti
oppure Cliente
Î
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
Subindice
di
oggetti
Fino a 4 Byte di dati in trasferimento
inoltrato o 4 Bytes del contatore in
trasferimento segmentato.
Server / Server Î Cliente
TABELLA 14. Struttura SDO. Cliente Î Server / Server Î Cliente
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
Indicatore del
comando SDO
Fino a 7 Byte di dati in trasferimento
segmentato
Byte 5
Byte 6
Byte 7
Esistono cinque protocolli di richiesta / risposta implementati negli SDO. Questi sono:
‡ Iniziare lo scarico del dominio (Initiate Domain Download)
‡ Scaricare il segmento di dominio (Download Domain Segment)
‡ Iniziare il caricamento del dominio (Initiate Domain Upload)
‡ Caricare il segmento di dominio (Upload Domain Segment)
‡ Annullare il trasferimento di dominio (Abort Domain Transfer)
Con scaricare (download) si intende scrivere nel dizionario di oggetti e
concaricare (upload) leggere dal dizionario di oggetti.
Indicatori di comando di SDO per i diversi protocolli
TABELLA 15. Inizio del download di dominio.
Iniziare lo scarico del dominio
bit
7
6
5
4
3
Cliente
Î
0
0
1
-
n
Server
Í
0
1
1
-
-
2
-
1
0
e
s
-
-
dove:
n Î Indicatore del nº di byte che non contengono dati e è valido se e=1 e s=1.
e Î Indicatore di trasferimento normale (e=0) o trasferimento inoltrato (e=1).
s Î Indicazione o meno delle dimensioni dei dati. Se si indica (s=0) e se non si indica
(s=1).
e = 0 y s = 0 Î Byte di dati riservati da CiA per il futuro.
e = 0 y s = 1 Î Il contatore di Byte è nei Byte di dati (a byte 4 LSB a byte 7 MSB).
e = 1 Î I Byte di dati contengono i dati per scaricare (download).
18/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
TABELLA 16. Scarico del segmento di dominio.
Scaricare il segmento di dominio
bit
7
6
5
4
3
Cliente
Î
0
0
0
t
n
Server
Í
0
0
0
t
-
2
1
0
c
-
-
-
dove:
n Î Indicatore del nº di byte che non contengono dati ed è zero se le dimensioni del
segmento non sono indicate.
c Î Indicatore dei segmenti da scaricare. Se vi sono più segmenti da scaricare (c=0)
e se è l’ultimo segmento (c=1).
t Î Bit di toggle che va alternato con ogni segmento consecutivo. La prima volta è
(t=0).
TABELLA 17. Inizio del caricamento del dominio.
Iniziare il caricamento del dominio
bit
7
6
5
4
3
2
1
0
-
-
-
e
s
Cliente
Î
0
1
0
-
-
Server
Í
0
1
0
-
n
TABELLA 18. Caricamento del segmento di dominio.
Caricare il segmento di dominio
bit
7
6
5
4
3
2
1
0
-
-
-
Cliente
Î
0
1
1
t
-
Server
Í
0
0
0
t
n
c
Un messaggio può essere annullato sia dal cliente che dal server. Deve essere
indicato con il seguente indicatore di comando:
TABELLA 19. Annullato il trasferimento di dominio.
Annullare il trasferimento di dominio.
bit
Cliente
Î / Í Server
7
6
5
4
3
2
1
0
1
0
0
-
-
-
-
-
Nell’annullare il trasferimento di dominio i byte di dati 0 e 1 contengono l’indice
dell’oggetto, il byte 2, il subindice dell’oggetto e i byte 4-7 contengono il codice di
annullamento (abort) che descrive la causa.
MCP/MCPi - Ref.0612
Protocollo CANopen - 19/40
Codici che descrivono la possibile ragione di annullamento SDO
TABELLA 20. Descrizione dei possibili codici di annullamento dell’SDO.
Codice di annullamento
Descrizione
byte 7 byte 6 byte 5 byte 4
05
05
03
04
00
00
00
00
05
04
00
01
05
05
05
05
06
06
06
06
06
04
04
04
04
01
01
01
02
04
00
00
00
00
00
00
00
00
00
02
03
04
05
00
01
02
00
41
06
04
00
42
06
06
06
04
04
06
00
00
00
43
47
00
06
07
00
10
06
07
00
12
06
07
00
13
06
06
06
06
06
08
08
09
09
09
09
09
00
00
00
00
00
00
00
00
00
11
30
31
32
36
00
20
08
00
00
21
08
00
00
22
08
00
00
23
Il bit ribaltabile non è ribaltabile
TimeOut per il protocollo SDO
Comando Client/Server non valido o identificatore
sconosciuto
Dimensioni di blocco non riconosciute (solo modalità
Numero di blocco non riconosciuto (solo modalità blocco)
Errore CRC (solo modalità blocco)
Memoria insufficente
Accesso non supportato a tale scopo
Si è cercato di leggere un oggetto di sola scrittura
Si è cercato di scrivere un oggetto di sola lettura
L’oggetto non esiste nel dizionario di oggetti
L’oggetto non può essere mappato in un PDO
Le dimensioni e il numero di oggetti mappati superano la
lunghezza del PDO
Incompatibilità generale di parametri
Incompatibilità generale dei dispositivi
Accesso interrotto a causa di errore di hardware
Tipo di dato incompatibile, la lunghezza del parametro di
servizio è incompatibile
Tipo di dato incompatibile, il parametro di servizio è troppo
lungo
Tipo di dato incompatibile, il parametro di servizio è troppo
corto
Non esiste il subindice
Intervallo di valori esterno (solo per acceso scrittura)
Valore di parametro troppo alto
Valore di parametro troppo basso
Il valore massimo è inferiore al valore minimo
Errore / errore generale
I dati non possono essere trasmessi né salvati
I dati non possono essere trasmessi né salvati perché il
dispositivo è sotto controllo locale
I dati non possono essere trasmessi né salvati a causa
dello stato del dispositivo
Non è possibile generare dinamicamente il dizionario di
oggetti
‡ Oggetto di emergenza
Un messaggio di emergenza è composto da 8 byte e dispone del seguente formato:
TABELLA 21. Messaggio di emergenza.
COB ID
Byte 0 -1
Byte 2
0x080
Codici di errore di Registro di errore
+ ID del nodo emergenza
(Oggetto 0x1001)
20/40 - Protocollo CANopen
Byte 3 -7
Campo di errore specificato
dal costruttore
MCP/MCPi - Ref.0612
Codici di errore di emergenza
TABELLA 22. Codici di errore di emergenza.
Codici di errore di emergenza
Significato
00xx
10xx
20xx
21xx
22xx
23xx
30xx
31xx
32xx
33xx
40xx
41xx
42xx
50xx
60xx
61xx
62xx
63xx
70xx
80xx
81xx
8110
8120
8130
8140
82xx
8210
8220
90xx
F0xx
FFxx
Errore reset o non errore
Errore generico
Corrente
Corrente, lato entrata del dispositivo
Corrente all’interno del dispositivo
Corrente, lato uscita dispositivo
Tensione
Tensione di rete
Tensione all’interno del dispositivo
Tensione d'uscita
Temperatura
Temperatura ambiente
Temperatura del dispositivo
Hardware del dispositivo
Software del dispositivo
Software interno
Software d'utente
Dato W
Moduli addizionali
Monitoraggio
Comunicazione
CAN superato
Errore passivo
Errore “ life guard” e errore “Heartbeat”
Ripristino dal bus-off
Errore di protocollo
PDO non elaborato per errore di lunghezza
Lunghezza superata
Errore esterno
Funzioni addizionali
Specifico del dispositivo
Codici di errore di emergenza in esadecimale. Si noti che“xx” è una parte che
dipende dal profilo di dispositivo.
MCP/MCPi - Ref.0612
Protocollo CANopen - 21/40
Registro di errore (oggetto 0x1001)
TABELLA 23. Registro di errore (OGGETTO 0x1001).
Bit
0
1
2
3
4
5
6
7
Tipo di errore
Generico
Corrente
Tensione
Temperatura
Comunicazione
Specifico del profilo di dispositivo
Riservato (=0)
Specifico del costruttore
Oggetti legati
1001 h
Registro di errori
1003 h
Campo di errori predefiniti
1014 h
COB ID per il messaggio di emergenza
‡ Descrizione del dizionario di oggetti
Oggetti di comunicazioni (DS301)
TABELLA 24. Oggetti di comunicazioni (DS301).
Indice
Descrizione
1000h
1001h
1003h
1005h
1006h
1007h
1008h
1009h
100Ah
100Ch
100Dh
1014h
1015h
1018h
1400h
1600h
1800h
1A00h
Tipo di dispositivo
Registro di errori
Campo di errori predefiniti
COB ID di messaggio SYNC
Periodo del ciclo di comunicazione
Lunghezza della finestra di sincronismo
Nome di dispositivo del costruttore
Versione di hardware del costruttore
Versione di software del costruttore
Tempo di vigilanza
Fattore di tempo di vita
COB ID per il messaggio di emergenza
Tempo di inibizione per messaggio di emergenza
Oggetto dell'identità
Parametro di comunicazione di PDO ricezione
Parametro di mappatura di PDO ricezione
Parametro di comunicazione di PDO trasmissione
Parametro di mappatura di PDO trasmissione
Oggetti del costruttore MCP/MCPi CANopen
Descrizione delle intestazioni delle vari colonne di cui è composta la tabella degli
oggetti del costruttore.
Fn Î Nome Fagor del oggetto.
Indice Î Indice esadecimale dell'oggetto CANopen del costruttore.
IdA Î Identificatore della variabile all’interno della struttura “Assembly” nei messaggi
rapidi PDO.
22/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Variabile Î Parametro, variabile o comando assegnabile all'oggetto.
Acc Î Accesso dell'oggetto. Solo lettura (R), lettura e scrittura (R/W).
Tipo Î Tipo di dati dell'oggetto. Intero senza segno (UINT), intero con segno (INT),
testo (string).
Intervallo Î Intervallo di valori (minimo o massimo) accettato dall’oggetto.
TABELLA 25. Oggetti del costruttore MCP/MCPi CANopen.
Nome
Indice
IdA
Descrizione
Acc
Tipo
Intervallo
AP1
5020h
41h
PrimaryOperationMode
R/W
UINT 2 a 5
BV14
40CCh
181h
NotProgrammableIOs
R
UINT 0 a 65535
CP1
506Ah
241h
CurrentProportionalGain
R/W
UINT 0 a 999
CP2
506Bh
242h
CurrentIntegralTime
R/W
UINT 0 a 999
CP10
413Bh
243h
VoltageAmpVolt
R/W
UINT 1000 a 9999
CP11
413Ch
244h
AmpAmpVolt
R/W
UINT 100 a 5000
CP20
4133h
245h
CurrentLimit
R/W
UINT 0 a 5000
CP30
4134h
246h
CurrentCommandFilter1Type
R/W
UINT 0 a 1
CP31
4138h
247h
CurrentCommandFilter1Frequency
R/W
UINT 0 a 4000
CP32
4139h
248h
CurrentCommandFilter1Dumping
R/W
UINT 0 a 1000
CP45
413Ah
249h
CurrentCommandSelector
R/W
UINT 0 a 3
CV1
4135h
281h
Current1Feedback
R
INT
-5000 a 5000
CV2
4136h
282h
Current2Feedback
R
INT
-5000 a 5000
CV3
4137h
283h
CurrentFeedback
R
INT
-5000 a 5000
CV10
4131h
284h
Current1Offset
R
INT
-2000 a 2000
CV11
4132h
285h
Current2Offset
R
INT
-2000 a 2000
CV15
413Dh
286h
DigitalCurrentCommand
R/W
INT
-5000 a 5000
DC1
5063h
301h
ResetClass1Diagnostics
R/W
UINT 0 a 15
DC2
4192h
302h
ClearHistoricOfErrorsCommand
R/W
UINT 0 a 15
DV17
419Ah
381h
HistoricOfErrors
R
String 0 a 999
DV31
5087h
382h
DriverStatusWord
R
UINT 0 a 65535
DV32
5086h
383h
MasterControlWord
R/W
UINT 0 a 65535
DV50
5FF8h
384h
ErrorBitArea
R
UINT
DV51
5FFDh
385h
WarningBitArea
R
UINT 0 a 65535
DV60
41CDh
386h
FastControlIn
R/W
UINT sin rango
DV61
41CEh
387h
FastControlOut
R
UINT sin rango
EP1
41F4h
441h
EncoderSimulatorPulsesPerTurn
R/W
UINT 1 a 4096
EP3
41F6h
442h
EncoderSimulatorDirection
R/W
UINT 0 a 1
GC1
5108h
601h
BackupWorkingMemoryCommand
R/W
UINT 0 a 15
GC3
42DAh
602h
AutophasingCommand
R/W
UINT 0 a 15
GC10
5106h
603h
LoadDefaultsCommand
R/W
UINT 0 a 15
GP3
42BEh
641h
StoppingTimeout
R/W
UINT 0 a 9999
GP5
42C0h
642h
ParameterVersion
R
UINT 0 a 9999
MCP/MCPi - Ref.0612
0x80000000 a
0x7fffffff
Protocollo CANopen - 23/40
Nome
Indice
IdA
Descrizione
Acc
GP9
50CFh
643h
DriveOfDelayTime
R/W UINT 0 a 9999
Tipo
Intervallo
GP11
42D6h
645h
IOFunctionsTime
R/W UINT 0 a 9999
GP15
42D5h
646h
AutomaticInitialization
R/W UINT 0 a 1
GP16
42D7h
647h
MonoPhaseSelector
R/W UINT 0 a 1
GV2
501Eh
681h
ManufacturerVersion
R
string 0 a 9999
GV5
42C2h
682h
CodeChecksum
R
INT
-32768 a 32767
GV7
510Bh
683h
Password
R/W UINT 0 a 9999
GV9
508Ch
684h
DriveType
R
GV11
42C4h
685h
SoftReset
R/W UINT 0 a 16
GV16
42CCh
686h
MotorTableVersion
R
GV50
4725h
688h
SerialNumber
R
UINT -32768 a 32767
GV75
5177h
687h
ErrorList
R
string -32768 a 32767
HV5
4127h
781h
PLDVersion
R
UINT 0 a 65535
IP6
438Eh
841h
DigitalInputPolarity
R/W UINT 0 a 1
IP14
438Fh
842h
DigitalInputFunctionSelector
R/W UINT 0 a 4
IP17
4390h
843h
AnalogFunctionSelector
R/W UINT 0 a 2
IV1
4389h
881h
AnalogInput1
R
IV2
438Ah
882h
AnalogInput2
R
INT
-1200 a 1200
IV3
4391h
883h
CurrentCommandAfterScaling
R
INT
-9999 a 9999
IV10
438Bh
884h
DigitalInputs
R
UINT 0 a 1
IV11
438Ch
885h
DigitalInputsCh2
R
UINT -32768 a 32767
UINT -32768 a 32767
string -32768 a 32767
UINT 0 a 32767
INT
-12000 a 12000
ID5
49C4h
1B85h
BusCodeChecksum
R
KP3
445Ah
A41h
ExtBallastPower
R/W UINT 200 a 2000
KP4
445Ch
A42h
ExtBallastEnergyPulse
R/W UINT 200 a 2000
KV6
517Fh
A81h
MotorTemperature
R
UINT 0 a 200
KV10
444Eh
A82h
CoolingTemperature
R
UINT 0 a 200
KV32
4455h
A83h
I2tDrive
R
UINT 0 a 100
KV36
4457h
A84h
I2tMotor
R
UINT 0 a 100
KV40
445Bh
A85h
I2tCrowbar
R
UINT 0 a 100
KV41
445Dh
A86h
BallastSelect
R/W UINT 0 a 1
LP22
4912h
B41h
JogVelocity
R/W UINT 0 a 500000
LP23
4913h
B42h
JogIncrementalPosition
R/W UINT 0 a 0x7fffffff
LP48
4934h
B43h
PositionActionsSelect
R/W UINT -32768 a 32767
LP49
4935h
B44h
InBandPosition
R/W UINT 0 a 0x7fffffff
LP143
5189h
B45h
ModuleCommandMode
R/W UINT 0 a 2
LV13
4909h
B81h
KernelOperationMode
R/W UINT 0 a 1
LV14
490Ah
B82h
KernelAutoMode
R/W UINT 0 a 1
LV15
490Bh
B83h
KernelStartSignal
R/W UINT 0 a 1
LV16
490Ch
B84h
KernelStopSignal
R/W UINT 0 a 1
LV17
490Dh
B85h
KernelResetSignal
R/W UINT 0 a 1
LV19
490Fh
B86h
KernelManMode
R/W UINT 0 a 1
LV20
4910h
B87h
JogPositiveSignal
R/W UINT 0 a 1
LV21
4911h
B88h
JogNegativeSignal
LV35
491Fh
B89h
BlockTravelDistance
LV36
4920h
B8Ah
BlockCoveredDistance
LV158
5102h
B8Bh
TargetPosition
R/W UINT 0 a 1
0x8000000
R
INT
a 0x7fffffff
0x8000000
R
INT
a 0x7fffffff
0x8000000
R
INT
a 0x7fffffff
24/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Nome
Indice
IdA
LV159
5103h
B8Ch PositioningVelocity
Descrizione
Acc
Tipo
R
UINT 0 a 0x7fffffff
Intervallo
LV160
5104h
B8Dh PositioningAcceleration
R/W
UINT 0 a 0x7fffffff
LV161
5105h
B8Eh PositioningAcceleration2
R/W
UINT 0 a 0x7fffffff
LV242
5156h
B8Fh TargetPositionAttained
R
UINT 0 a 1
MP1
508Dh
C41h MotorType
R/W
string -32768 a 32767
MP2
44B0h
C42h MotorTorqueConstant
R/W
UINT 0 a 1000
MP3
506Fh
C43h MotorContinuousStallCurrent
R/W
UINT 0 a 5000
NP117
5075h
D42h ResolutionOfFeedback2
R/W
UINT 0 a 65535
NP118
5076h
D43h ResolutionOfLinearFeedback
R/W
UINT 0 a 65535
NP121
5079h
D44h InputRevolutions
R/W
UINT 1 a 65535
NP122
507Ah
D45h OutputRevolutions
R/W
UINT 1 a 65535
NP123
507Bh
D46h FeedConstant
R/W
UINT 0 a 0x7fffffff
NP131
4082h
D47h InputRevolutions2
R/W
UINT 1 a 65535
NP132
4083h
D48h OutputRevolutions2
R/W
UINT 1 a 65535
NP133
4084h
D49h FeedConstant2
R/W
UINT 0 a 0x7fffffff
OP1
4578h
E41h DA1IDN
R/W
UINT 0 a 13
OP2
4579h
E42h DA2IDN
R/W
UINT 0 a 13
OP3
457Ah
E43h DA1ValuePer10Volt
R/W
UINT 0 a 9999
OP4
457Bh
E44h DA2ValuePer10Volt
R/W
UINT 0 a 9999
OP6
4588h
E45h DigitalOutputPolarity
R/W
UINT 0 a 1
OP14
4586h
E46h DigitalOutputFunctionSelector
R/W
UINT 0 a 7
OP15
4587h
E47h DigitalOutputWarningSelector
R/W
UINT 0 a 2
OV10
4582h
E81h DigitalOutputs
R
UINT 0 a 1
OV11
4585h
E82h DigitalOutputsCh2
R/W
UINT -32768 a 32767
PC148
5094h
F02h
DriveControlledHoming
R/W
UINT 0 a 15
PC150
4517h
F03h
ChangePosFB12
R/W
UINT 0 a 16
PP1
5028h
F41h
HomingVelocitySlow
R/W
UINT 0 a 1200
PP41
5029h
F42h
HomingVelocityFast
R/W
UINT 0 a 6000
PP42
502Ah
F43h
HomingAcceleration
R/W
PP49
5031h
F44h
PositivePositionLimit
R/W
PP50
5032h
F45h
NegativePositionLimit
R/W
PP52
5034h
F46h
ReferenceDistance1
R/W
PP54
5036h
F47h
ReferenceDistance2
R/W
PP55
5037h
F48h
PositionPolarityParameters
R/W
PP57
5039h
F49h
PositionWindow
R/W
PP76
504Ch
F4Ah PositionDataScalingType
R/W
UINT 0 a 0x7fffffff
0x8000000
INT
a 0x7fffffff
0x8000000
INT
a 0x7fffffff
0x8000000
INT
a 0x7fffffff
0x8000000
INT
a 0x7fffffff
UINT 0 a 65535
0x8000000
INT
a 0x7fffffff
UINT 1 a 65535
PP103
5067h
F4Bh ModuleValue
R/W
UINT 0 a 0x7fffffff
PP104
5068h
F4Ch PositionKvGain
R/W
UINT 0 a 65535
PP105
5069h
F4Dh PositionKvGain2
R/W
UINT 0 a 65535
PP115
5073h
F4Eh PositionFeedback2Type
R/W
UINT 0 a 32
PP147
5093h
F4Fh HomingParameter
R/W
UINT 0 a 65535
PP159
509Fh
F50h
MonitoringWindow
R/W
UINT 0 a 0x7fffffff
PP216
5128h
F51h
VelocityFeedforwardPercentage
R/W
UINT 0 a 120
PP218
4526h
F52h
VelocityFeedforwardPercentage2
R/W
UINT 0 a 120
MCP/MCPi - Ref.0612
Protocollo CANopen - 25/40
Nombre Índice
IdA
Descripción
Acc
Tipo
PV51
5033h
F81h
PositionFeedback1
R
PV53
5035h
F82h
PositionFeedback2
R
PV173
50ADh F83h
MarkerPositionA
R
PV189
50BDh F84h
FollowingError
R
PV200
5190h
F85h
HomeSwitch
R
Rango
0x8000000
INT
a 0x7fffffff
0x8000000
INT
a 0x7fffffff
0x8000000
INT
a 0x7fffffff
0x8000000
INT
a 0x7fffffff
UINT 0 a 1
PV208
5198h
F86h
ReferenceMarkerPulseRegistered
R
UINT 0 a 1
QP11
47D0h
1043h
CanBusSpeed
R/W
UINT 0 a 20
QP14
47DAh 1044h
ProtocolTypeSelector
R/W
UINT 2 a 4
QP16
47DCh 1045h
SerialSettings
R/W
UINT 0 a 65535
QV22
5016h
1081h
IDNListOfInvalidOperationData
R
string 0 a 65535
QV96
5060h
1083h
SlaveArrangement
R/W
UINT 0 a 127
RC1
45E9h
1101h
EncoderParameterStoreCommand
R/W
UINT 0 a 15
RG1
3801h
11C1h
PiecesCount
R/W
UINT 0 a 65535
RG2
3802h
11C2h
ActualPiecesCount
R/W
UINT 0 a 65535
RG3
3803h
11C3h
RunningBlock
R/W
UINT 0 a 127
RG4
3804h
11C4h
PositionBlockIni
R/W
UINT 0 a 127
RP1
45DCh 1141h
FeedbackSineGain
R/W
UINT 0 a 8192
RP2
45DDh 1142h
FeedbackCosineGain
R/W
UINT 0 a 8192
RP3
45DEh 1143h
FeedbackSineOffset
R/W
INT
-2000 a 2000
RP4
45DFh 1144h
FeedbackCosineOffset
R/W
INT
-2000 a 2000
RV1
45E2h
1181h
FeedbackSine
R
INT
-512 a 511
RV2
45E3h
1182h
FeedbackCosine
R
INT
-512 a 511
RV3
45E4h
1183h
FeedbackRhoCorrection
R
UINT 0 a 65535
SP1
5064h
1241h
VelocityProportionalGain
R/W
UINT 0 a 9999
SP2
5065h
1242h
VelocityIntegralTime
R/W
UINT 0 a 9999
SP3
5066h
1243h
VelocityDerivativeGain
R/W
UINT 0 a 9999
SP10
505Bh
1244h
VelocityLimit
R/W
UINT 0 a 9999
SP19
4653h
1245h
SymmetryCorrection
R/W
INT
SP20
4654h
1246h
VoltageRpmVolt
R/W
UINT 1000 a 9999
SP21
4655h
1247h
RpmRpmVolt
R/W
UINT 10 a 9999
SP30
4643h
1248h
VelocityOffset
R/W
INT
SP40
507Dh
1249h
VelocityThresholdNx
R/W
UINT 0 a 9999
SP41
509Dh
124Ah
VelocityWindow
R/W
UINT 0 a 9999
SP42
507Ch
124Bh
StandStillWindow
R/W
UINT 0 a 9999
SP43
502Bh
124Ch
VelocityPolarityParameters
R/W
UINT 0 a 1
SP45
4651h
124Dh
VelocityCommandSelector
R/W
UINT 0 a 2
SP60
508Ah
124Eh
AccelerationLimit
R/W
UINT 0 a 4000
-500 a 500
-2000 a 2000
SP65
4649h
124Fh
EmergencyAcceleration
R/W
UINT 0 a 4000
SP66
4652h
1250h
VelocityDecelerationTime
R/W
UINT 0 a 4000
SV1
5024h
1281h
VelocityCommand
R/W
INT
-6·107 a 6·107
SV2
5028h
1282h
VelocityFeedback
R
INT
-6·107 a 6·107
SV6
4656h
1283h
VelocityCommandAfterFilters
R
INT
-6·107 a 6·107
SV7
464Ch
1284h
VelocityCommandFinal
R
INT
-6·107 a 6·107
26/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Nome
Indice
IdA
Descrizione
Acc
Tipo
Intervallo
SV15
4657h
1285h
DigitalVelocityCommand
R/W
INT
-6·107 a 6·107
TP1
507Eh
1341h
TorqueThresholdTx
R/W
UINT 0 a 100
TV1
5050h
1381h
TorqueCommand
R
INT
-9999 a 9999
TV2
5054h
1382h
TorqueFeedback
R
INT
-9999 a 9999
‡ Descrizione dei PDO
La scheda CAN di comunicazioni dei regolatori MCP e MCPi dispone di un PDO di
ricezione e un PDO di trasmissione (il numero potrà essere incrementato in future
versioni). La mappatura dei PDO è prestabilita di fabbrica e non può essere
modificata dall’utente. I parametri di comunicazione dei PDO sono accessibili
all’utente, e si potrà selezionare sia il tipo di comunicazione da eseguire sia la relativa
abilitazione.
La finalità dei PDO è quella di stabilire il controllo dei moduli slave in tempo reale
da parte del modulo maestro. Nei regolatori vi sono due strutture di dati (direttamente
mappati a questi messaggi PDO) denominate Assembly pensate per poter
governare gli azionamenti in tempo reale. Ognuna di esse è composta da 8 byte e
il loro scopo è fra gli altri, quello di poter effettuare il controllo sul regolatore dal modulo
maestro, potendone modificare le variabili e i parametri (AssemblyIn) ed inoltre poter
informare dal regolatore del suo stato ed allo stesso tempo riportare le variabili
richieste dal modulo maestro (AssemblyOut).
AssemblyIn - Control
TABELLA 26. AssemblyIn.
B7
B6
Byte 0
I_Fast
Starting_Block
Byte 1
Drive_
Enable
Speed_
Enable
Byte 2
Dir_Var Bits 0 -7
Byte 3
Command_
Toggle_Bit
Byte 4
Data_Byte 0
Byte 5
Data_Byte 1
Byte 6
Data_Byte 2
Byte 7
Data_Byte 3
Command
B5
Home_
Switch
B4
B3
B2
B1
B0
Lim -
Lim +
Reset *
Jog- **
Stop
Start *
Jog+ **
Dir_Var Bits 8-12
* KernelOperationMode Î LV13 = 0, cioè, in modalità automatica.
** KernelOperationMode Î LV13 = 1, cioè, in modalità manuale.
I_Fast: Bit che consente di attivare l’ingresso rapido (come evento di passaggio di
blocco) attraverso il bus di comunicazioni.
Starting_Block (7 bits): Specifica il nº di blocco a partire dal quale sarà iniziata
l’esecuzione nella tabella di movimenti.
Drive_Enable: Bit che consente di attivare attraverso il bus di comunicazioni il Drive
Enable dell’apparecchiatura, purché il rispettivo ingresso hardware sia attivato. Il
segnale finale interpretato dall’apparecchiatura viene dato da un “AND” logico fra il
valore dell’ingresso fisico Drive_Enable e il bit dello Drive_Enable del AssemblyIn.
Speed _Enable: Bit che consente di attivare attraverso il bus di comunicazioni il
Speed Enable dell’apparecchiatura, purché il rispettivo ingresso hardware sia
attivato.
MCP/MCPi - Ref.0612
Protocollo CANopen - 27/40
Il segnale finale interpretato dall’apparecchiatura viene dato da un “AND” logico fra
il valore dell’ingresso fisico Speed_Enable e il bit dello Speed_Enable del
AssemblyIn.
Home_Switch: Bit che consente di attivare attraverso il bus di comunicazioni il
finecorsa dell’Home_Switch (micro di ricerca zero o riferimento).
Lim + : Bit che consente di attivare attraverso il bus di comunicazioni il finecorsa del
limite positivo della corsa.
Lim - : Bit che consente di attivare attraverso il bus di comunicazioni il finecorsa del
limite negativo della corsa.
Reset : Controllo digitale del segnale Reset. Se il regolatore è in modalità manuale
(LV13 = 0), l’attivazione di questo bit significa agire sul segnale Jog-. Se si è in
modalità automatica, l’attivazione di questo segnale esegue un Reset sul
sequenziatore di spostamenti.
Stop : Bit che consente di arrestare lo spostamento in corso.
Start : Controllo digitale del segnale Start. Se il regolatore è in modalità manuale
(LV13 = 0), l’attivazione di questo bit significa agire sul segnale Jog+. Se si è in
modalità automatica, è possibile impostare due possibili situazioni:
‡ Se si attiva Start per la prima volta o dopo aver effettuato un Reset di spostamenti,
il sequenziatore di posizione inizia l’esecuzione del blocco indicato nei bit di
Starting_Block.
‡ Se durante l’esecuzione di un blocco si attiva un segnale Stop, l’apparecchiatura
si arresta. Se a questo punto si attiva un segnale di Start, l’apparecchiatura
continua con l’esecuzione del blocco proprio dove si è arrestata quando è stato
attivato il segnale di Stop.
Command : Campo dell’AssemblyIn dove è indicata l’azione da effettuare
dall’elemento maestro. Vedi gli esempi pratici descritti di seguito.
0
1
2
3
Leggere un parametro / una variabile.
Scrivere su un parametro / una variabile.
Leggere nella tabella spostamenti
Scrittura nella tabella spostamenti
Dir_Var: Campo della struttura AssemblyIn che in funzione del comando richiesto
dall’elemento maestro potrà indicare sia l’identificatore IdA di una variabile sia il
blocco di posizione da leggere/scrivere dall’elemento maestro (vedi gli esempi pratici
documentati nel seguito).
Command Toggle Bit: Bit la cui finalità è quella di fare attivare dal modulo maestro
il comando richiesto nei bit Command dell’AssemblyIn. Ciò si ottiene respingendo
lo stato corrente del bit.
28/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
AssemblyOut - Stato
TABELLA 27. AssemblyOut.
B7
B6
B5
Byte 0
Ref_Done
Reg_Status Warning
Byte 1
-------------
Active_Block
Byte 2
Command_
Command_ Command_
Toggle_Bit_Resp Resp
ok
Operation_
Status
Byte 3
-------------
------
Byte 4
Data_Byte_Resp 0
Byte 5
Data_Byte_Resp 1
Byte 6
Data_Byte_Resp 2
Byte 7
Data_Byte_Resp 3
------ ------
B4
------
B3
B2
Error
In_Position ---- Speed_Enable
------
B1 B0
---- ------
(----) Bit riservati.
Ref_Done: Bit indicatore (all’elemento maestro) che l’azione di “ricerca dello zero”
è stata realizzata in modo soddisfacente.
Reg_Status: Bit indicatori dello stato in cui si trova il regolatore.
0
1
2
3
Eseguendo il test interno Start-Up.
Controllo stabilito. In attesa di ricevere potenza.
Power On. Potenza e controllo definiti ma senza coppia nel motore.
Torque On. Motore con coppia (abilitato).
Warning: Bit indicatore che Il regolatore è esente in uno stato d'avviso (warning).
Errore: Bit indicatore che si è prodotto un errore nel regolatore.
In_Position: Bit indicatore che è stata raggiunta la posizione di destinazione di un
blocco. Attivato quando il posizionatore si trova all’interno della banda specificata
nel parametro PP57 - Position Window -.
Speed_Enable: Bit che riporta lo stato interno del segnale Speed_Enable del
regolatore. Si tiene conto sia dell’ingresso fisico sia del bit dell’AssemblyIn.
Active_Block: Bit indicatori dal nº di blocco della tabella di posizionamento
attualmente in esecuzione.
Command_Toggle_Bit_Resp: Dopo aver ricevuto un nuovo comando mediante il
cambio di valore di Command_Toggle_Bit, il regolatore inizia l'esecuzione. Conclusa
l ’ e s e c u z i on e , s i f a un a c o p i a d e l v a l o r e d i C o m m a n d _T o g g l e B i t i n
Command_Toggle_Bit_Resp. In questo modo, il modulo maestro viene informato
che il comando è stato completato.
Command_Resp: Risultato del comando specificato in i bit “Command”
dell'AssemblyIn.
Command_OK: Dopo aver ricevuto un nuovo comando mediante il cambio di valore
di Command_Toggle_Bit, il bit “Command_OK” sarà attivato quando il comando
richiesto è stato eseguito soddisfacente. Si metterà a zero ogni volta che si generano
errori nell’esecuzione del comando.
MCP/MCPi - Ref.0612
Protocollo CANopen - 29/40
Operation_Status: Bit che riportano la “modalità” o lo “stato” in cui si trova il
sequenziatore di movimenti dell’apparecchiatura.
STOP
5
KernelStopSignal
KernelResetSignal
KernelStopSignal
0
KernelOperationMode
10-11-12
3
KernelStopSignal
BLOCK
PAUSE
Waiting for the
START signal
& JogNegativeSignal
& KernelManMode
(CONTINUOUS)
OR KernelResetSignal
OR KernelStopSignal
4
JOG mode
working
JogPositiveSignal
OR JogNegativeSignal
& KernelResetSignal
& KernelStopSignal
11
From all the
states
KernelManMode
(INCREMENTAL)
& END OF
MOVEMENT
10
JogPositiveSignal
& JogNegativeSignal
Waiting for JOG
mode to be
deactivated
12
Alarm
2
JOG
MODE
1
JogPositiveSignal
KernelStartSignal & KernelStopSignal
Waiting for the
START signal not
to be active
Change to
KernelOperationMode
from
& KernelResetSignal
KernelStopSignal
KernelStartSignal
& KernelStopSignal
BLOCK IN EXECUTION
from
0-1-2-3-4-5
Change to
KernelStartSignal
BlockEnd
KernelResetSignal
6
Reset
AUTOMATIC
MODE
Alarm
15
Mnemonics & simbols
A (A negated)
A
“A” signal not active
Example:
“A” signal active
KernelStopSignal = KernelStopSignal not active
KernelStopSignal = KernelStopSignal active
Transitions between states
X
State
Operation Mode
FIGURA 5.
Modalità di funzionamento del regolatore.
Data_Byte_Resp 0-3: Byte di dati contenenti l’informazione richiesta (valore di
variabile, parametro o valori della tabella di posizionamento) dal modulo maestro.
Il Data_Byte_Resp 0 contiene il byte di minor peso della variabile richiesta mentre
il Data_Byte_Resp 3 contiene il byte di maggiore peso.
Struttura dell'Assembly. Esempi pratici.
La struttura dell’Assembly facilita il compito ad un elemento maestro esterno nel
realizzare diverse operazioni con il regolatore utilizzando un unico tipo di messaggi
di comunicazioni. Un esempio è costituito dal PLC che esegue ciclicamente
operazioni con i vari elementi slave, utilizzando lo stesso tipo di messaggio rapido.
Vedi di seguito alcuni esempi pratici in cui si dettaglia come deve impostare
l’elemento maestro ognuno dei bit dell’Assemblyln per realizzare le operazioni
richieste.
Si intenderà (in tutti gli esempi) che il bit di “Command_Toggle_Bit_Resp” che
riporta il modulo slave prima che il modulo maestro invii l’AssemblyIn è a zero.
30/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Lettura parametri/variabili
Per leggere su un parametro o su una variabile del regolatore, assegnare
necessariamente al campo “Command” un 0.
Quindi, immettere nei 13 bit del campo “Dir_Var” l’identificatore Id Assembly
corrispondente al parametro o alla variabile da leggere. Tale identificatore è riportato
nella terza colonna delle tabelle di descrizione degli oggetti CANopen specifici di
fabbrica. Quindi, se ad esempio si desidera leggere la variabile SV2 (rialimentazione
di velocità), immettere il valore Id Assembly di SV2 in esadecimale l Î1282h. Vedi
TABELLA 25.
Infine, assegnare al bit “Command_Toggle_Bit” un 1 quando si desidera eseguire
l’ordine.
Scrittura parametri/variabili
Per scrivere su un parametro o su una variabile del regolatore, assegnare
necessariamente al campo “Command” un 1.
Quindi, immettere nei 13 bit del campo “Dir_Var” l’identificatore Id Assembly
corrispondente al parametro o alla variabile da leggere. Tale identificatore è riportato
nella terza colonna delle tabelle di descrizione degli oggetti CANopen specifici di
fabbrica. Quindi, se ad esempio si desidera scrivere nel parametro CP20 (limite di
corrente), immettere il valore Id Assembly di CP20 in esadecimale Î245h. Vedi
TABELLA 25.
Il valore da immettere nel parametro o nella variabile si immetterà nei primi quattro
byte di dati (destinati allo scopo) e nelle unità richieste. Vedi unità nella sezione
parametri, variabili e comandi del manuale del regolatore MCP o MCPi, a seconda
dei casi.
Quindi, se ad esempio si imposta un limite della corrente (come da parametro CP20)
di 5 A, si scriverà nei 4 byte “Data_Byte” il valore di 500 cA (centiAmpere).
Infine, assegnare al bit “Command_Toggle_Bit” un 1 quando si desidera eseguire
l’ordine.
Una volta ricevuto il messaggio dal modulo slave, esso verifica l’esistenza del
parametro e cerca di scrivere sullo stesso. Se eseguito con successo, si attiva il bit
“Command_OK” del messaggio AssemblyOut.
Tabella di movimenti
Le apparecchiature MCP/MCPi sono dotate di anello di posizione e posizionatore.
La sequenza di spostamenti da eseguire dal posizionatore è programmata mediante
una tabella di 127 blocchi. Ogni blocco imposta una posizione e in esso possono
essere programmati diversi parametri (posizione assoluta o incrementale, velocità
massima di posizionamento, attivazione uscite dopo l’esecuzione del blocco, ...) ai
quali il posizionatore ubbidisce durante l’esecuzione del blocco.
È possibile la lettura/scrittura di tutti gli elementi che compongono la tabella di
spostamenti tramite i messaggi Assembly. Nella struttura del blocco di
posizionamento di seguito riportata, TABELLA 28. si descrivono le 16 word che
compongono il blocco. La word più significativa (di maggior peso) è quella situata
più a sinistra (word 15) e quella meno significativa (di minor peso) è situata più a
destra (word 0).
MCP/MCPi - Ref.0612
Protocollo CANopen - 31/40
TABELLA 28. Struttura del blocco di posizionamento.
Descrizione
Riserv.
del campo
LOOP
NEXT
PROGOUT
0001h a 0080h
Valore
0000h
“ OR ”
Qnt pezzi.
SC00h
0000h
a
FFFFh
END=xxFEh
00000000h
a
000000FFh
EVENTO
TIPO
InRpos (reale)
0001h
InTpos (teorico)
0002h
InBand
0003h
ActSpeedReached
0004h
NextSpeedReached
0005h
Descrizione
del campo
Valore
Nº WORD
15-12
11
VELPOS
10
9-8
5-4
(2
7
0100h
6
POSDEST
VALORE
00000000h
a
FFFFFFFFh
0000h
a
FFFFh
“OR”
(1
FastInput
Nº WORD
TEMPO
00000000h
a
FFFFFFFFh
3-2
MODO
Assoluto
0000 0001 h
Incrementale
0000 0002 h
+ infinite
0000 0003 h
- infinite
0000 0004 h
Stop
0000 0005 h
1-0
(1
La word nº10, < seguente blocco > è costituita da due byte con differenti funzionalità.
Byte basso: indica il nº del successivo blocco da eseguire (valori validi da 1 a 127 ed inoltre il 254).
Byte alto: SC (Salto Condizionale). Se si desidera che alla fine del blocco aumenti il contatore pezzi realizzati
(REG2), questo byte dovrà prendere un valore diverso da zero. Quando il contapezzi coincide con il nº di pezzi
desiderati (REG1) il seguente blocco da eseguire sarà quello indicato in questo byte.
END (xxFEh): indipendentemente dal valore che possiede il byte alto (xxh), se si immette (FEh) nel byte basso,
significherà il blocco finale del programma.
(2 Se si desidera che la condizione di passo di blocco sia "posizione teorica raggiunta" o attivazione dell’ingresso
rapido "fast input", il valore da immettere sarà 0102h.
Lettura nella tabella spostamenti
Per la lettura dei dati nella tabella di spostamenti del regolatore, assegnare il valore
2 al campo “Command” dell’AssemblyIn. La selezione di un elemento della tabella
si imposta dal campo “Dir_Var”. Nei loro 8 bit meno significativi (di minor peso) si
indicherà il numero di blocco di posizionamento e nei 5 bit più significativi (di maggior
peso) il numero di “word” da leggere all’interno del blocco.
Gli accessi alla tabella di parametri sono realizzati a 4 a 4 byte ed è molto consigliabile
(imprescindibile) accedere a numeri di “word” pari, per evitare così equivoci
nell’interpretazione dei dati.
Esempio.
Per leggere il valore della posizione di destinazione (word 2 e 3, essendo l’origine
il più basso, cioè 2) del numero di blocco 19 si immette il valore esadecimale 213h
nel campo “Dir_Var” dell’AssemblyIn. A questo punto, quando sarà eseguito l’ordine,
mettere a 1 il bit “Command_Toggle_Bit”.
Ricevuto il messaggio dal modulo slave, esso verifica l’esistenza delle informazioni
richieste e, in caso affermativo, attiva il comando “Command_Ok” e riporta la
posizione di destinazione mediante i messaggi AssemblyOut finché non cambierà
di nuovo il bit “ Command_Toggle_Bit ” (cambio di comando o di dato richiesto della
tabella).
32/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Scrittura della tabella di spostamenti
Per la scrittura dei dati nella tabella di spostamenti del regolatore, assegnare il valore
3 al campo “Command” dell’AssemblyIn. La selezione di un elemento della tabella
si imposta dal campo “Dir_Var”. Nei loro 8 bit meno significativi (di minor peso) si
indicherà il numero di blocco di posizionamento e nei 5 bit più significativi (di maggior
peso) il numero di “word” da scrivere all’interno del blocco.
Gli accessi alla tabella di parametri sono realizzati a 4 a 4 byte ed è molto consigliabile
(imprescindibile) accedere a numeri di “word” pari, per evitare così equivoci
nell’interpretazione dei dati.
Esempio.
Per cambiare il tipo di evento (condizione di passaggio di blocco del posizionatore,
word 7) occorre scrivere contemporaneamente le word 6 e 7. Quindi, se si vuole fare
un cambiamento di blocco del posizionatore quando l’anello di posizione raggiunge
la posizione teorica finale (evento del tipo 2), si scriverà il valore esadecimale 20000h
nei byte di dati “Data_Byte”. A questo punto, quando sarà eseguito l’ordine, mettere
a 1 il bit “Command_Toggle_Bit”.
Ricevuto il messaggio dal modulo slave, esso verifica l’esistenza dei dati che saranno
scritti e, se riesce a scriverli con successo, attiverà quindi il comando “Command_Ok”
del messaggio AssemblyOut.
MCP/MCPi - Ref.0612
Protocollo CANopen - 33/40
Avvio
‡ Descrizione della scheda CAN
FIGURA 6.
Descrizione della scheda CAN® di un modulo MCP o MCPi. Protocollo CANopen.
‡ MS Led Î Module Status Led. Diodo emittente luce bicolore (colori rosso e
verde) indicante lo stato del regolatore.
‡ NS Led Î Network Status Led. Diodo emittente luce bicolore (colori rosso e
verde) indicante i diversi stati in cui l’apparecchiatura può essere all’interno del
bus CAN di comunicazioni.
‡ Commutatori “x1” e “x10” Î Commutatori rotativi che consentono di
selezionare una cifra da 0 a 9 in ognuno di essi e dalla cui combinazione si ottiene
un numero che sarà compreso fra 0 (entrambi segnalano 0) e 99 (entrambi
segnalano 9). Ogni nodo del bus si differenzia dal resto di essi nel nº di nodo
che gli è stato assegnato da questi commutatori rotativi. Qualsiasi valore fra
01 e 98 potrà essere assunto come nº di nodo per un’apparecchiatura.
Nota: Saranno utilizzati i valori da 0 a 99 solo per certi casi speciali di seguito
descritti.
‡ Selezione della velocità di comunicazione
La prima procedura da eseguire ogni volta che si incorpora una nuova
apparecchiatura nella rete CANopen è quella di adeguarne velocità di
comunicazione alla velocità della rete. Si dispone di due selettori rotativi (x10, x1)
e due indicatori MS (Module Status) e NS (Network Status) che consentono di
eseguire tale procedura.
Le velocità di trasmissione che possono essere selezionate in CANopen sono 10,
20, 50, 100, 125, 250, 500, 800 e 1000 (in kbit/s) .
Procedura di selezione
All’avvio di un’apparecchiatura, ed ogni volta che i selettori rotativi selezionano 99
(cioè ognuno segnala il 9), sarà abilitata la modalità di selezione della velocità
di trasmissione. I led MS e NS lampeggiano simultaneamente, in verde, con una
34/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
periodicità di 500 ms circa, indicando che il modo di selezione della velocità di
comunicazione è abilitato. Da questo stato è possibile eseguire le seguenti
operazioni:
Verificare la velocità di trasmissione selezionata
Per sapere qual è la velocità di trasmissione alla quale si esegue la comunicazione
nella rete in quello stesso momento, si agirà sul selettore rotativo “x1” situandolo nella
posizione ”0”. L’indicatore MS realizzerà un nº di lampeggi (led rosso lampeggiante)
e quindi resterà in stato non illuminato circa 1 secondo. Dopo questo tempo inizia
di nuovo questa stessa sequenza.
Il nº di lampeggi (in rosso) effettuati fra due intervalli in cui il led smette di essere
illuminato indica lavelocità di comunicazione (registrata in memoria) con cui
l’apparecchiatura cercherà di collegarsi alla rete.
La tabella associativa fra il nº di lampeggi del led MS in rosso e la velocità di
trasmissione della rete è:
TABELLA 29. Verifica della velocità di trasmissione.
nº di lampeggi
del led MS
Velocità di
trasmissione
nº di lampeggi
del led MS
Velocità di
trasmissione
1
2
3
4
5
1000 kbit/s
800 kbit/s
500 kbit/s
250 kbit/s
125 kbit/s
6
7
8
9
100 kbit/s
50 kbit/s
20 kbit/s
10 kbit/s
Esempio.
Se il nº di lampeggi in rosso del led MS è di 3 (fra ogni due periodi in cui non si illumina)
starà indicando in base a tale tabella che la velocità di trasmissione della rete è 500
kbit/s.
Selezionare la velocità di trasmissione
Per stabilire una velocità di trasmissione uguale a quella di comunicazione nella rete
nella nuova apparecchiatura che si incorpora, si agirà sul relativo selettore rotativo
“x1” situandolo fra le posizioni 1 e 9 per selezionare una delle velocità.
TABELLA 30. Selezione della velocità di trasmissione.
Posizione dello
switch rotativo “x1”
1
2
3
4
5
Velocità di
trasmissione
1000 kbit/s
800 kbit/s
500 kbit/s
250 kbit/s
125 kbit/s
Posizione dello
switch rotativo “x1”
6
7
8
9
Velocità di
trasmissione
100 kbit/s
50 kbit/s
20 kbit/s
10 kbit/s
Esempio.
Se la velocità di comunicazione nella rete è 500 kBd, anche l’apparecchiatura che
si incorpora dovrà trasmettere a tale velocità, cioè si dovrà situare il relativo switch
rotativo “x1” nella posizione 3.
MCP/MCPi - Ref.0612
Protocollo CANopen - 35/40
Simultaneamente e con le stesse sequenze già citate in precedenza, il led MS
lampeggerà (in verde) indicando così la velocità selezionata.
Selezionata la posizione nello switch “x1”, sarà necessario confermare la
selezione. A tale scopo, agire sullo switch “x10” situandolo nella posizione 0. Il led
MS, che adesso lampeggia in rosso, indica la velocità selezionata. Dopo
l’operazione, questa velocità sarà registrata permanentemente nella memoria non
volatile dell’apparecchiatura. Dopo aver effettuato un reset nell’apparecchiatura,
essa assumerà quindi come velocità di trasmissione quella registrata in memoria.
‡ Determinazione del nº di nodo
Determinata la velocità di trasmissione dell’apparecchiatura nella rete, sarà quindi
necessario identificarla nella stessa. Occorrerà assegnare alla nuova
apparecchiatura incorporata un nº identificatore unico che gli consenta di
differenziarsi da qualsiasi altra apparecchiatura facente parte della rete ed evitare
così collisioni. Questo nº identificatore ID si conoscerà come nº di nodo e deve
essere unico per ogni apparecchiatura.
IMPORTANTE: È responsabilità dell’utente evitare che due apparecchiature
diverse abbiano lo stesso nº di nodo.
La determinazione del nº di nodo dell’apparecchiatura si realizza mediante i due
commutatori rotativi x1 e x10.
Esempio.
Per assegnare a un’apparecchiatura il nº di nodo 57 occorrerà
situare la freccia del commutatore rotativo “ x10 ” segnalando
la posizione 5 e quella del rotativo “ x1” la posizione 7. Vedi
figura.
Si verifica che 10 x 5 + 1 x 7 = 57.
Dopo aver eseguito un reset del regolatore, esso sarà identificato nella rete con il
nº di nodo che gli è stato assegnato.
L'intervallo di selezione del nº di nodo in una rete CANopen sarà compreso fra 01
e 127. Tuttavia, quando si tratta di attrezzature MCP o MCPi sarà possibile solo
una selezione di nodo fra 01 e 98. Si ricorda che l’uso del nº di nodo 99 è
riservato alla procedura di selezione di velocità e lo 00 diventa quindi 01, dato che
il nodo 00 non esiste in CANopen.
Ad ogni avvio dell’apparecchiatura, esso assume come nº di nodo quello assegnato
nei selettori rotativi x1” e “x10”.
‡ Indicatori di stato
La scheda CAN del regolatore disporrà di due indicatori o led “bicolore”. Éstos son,
MS (Module Status) y NS (Network Status). L’indicatore MS visualizza lo stato
dell’apparecchiatura e NS informa dello stato dell’apparecchiatura all’interno della
rete CANopen.
36/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
In una procedura iniziale dell’apparecchiatura tali led raggiungono i seguenti stati allo
scopo di verificare il corretto stato del regolatore.
on
MS
(red)
250 ms
off
on
MS
(green)
250 ms
off
on
NS
(red)
250 ms
off
on
250 ms
NS
(green)
off
Nota: MS e NS si illuminano in base allo stato in cui sono sia il bus sia
l’apparecchiatura.
MS (Module Status)
Questo indicatore informa dello stato dell’apparecchiatura propriamente detta. Gli
stati che possono essere raggiunti attualmente sono:
Operativo. Il regolatore è esente da errori. Il led indicatore si illumina in verde in modo
intermittente con una cadenza di intermittenza di 200 ms circa (on/off).
In errore. Il regolatore è in stato di errore. Il led indicatore se illuminerà in modo
intermittente più rapido che nello stato precedente e in rosso con una cadenza di
intermittenza di 50 ms (on/off).
NS (Network Status).
Questo indicatore informa dello stato dell’apparecchiatura all’interno della rete
CANopen, cioè dello stato del Bus CANopen. Vedi le tabelle e la figura seguenti, in
cui si determinano i tempi di intermittenza del led rosso e del verde così come la
relativa denominazione.
‡ Led rosso. Led indicatore di errore
TABELLA 31. Led indicatore di errore. Colore rosso.
Led di errore (rosso) Stato
Descrizione
Non illuminato
Senza errore
Funzionamento soddisfacente
dell’apparecchiatura
Un unico lampeggio
Raggiunto il
limite di
avviso
Almeno uno dei contatori di errore del driver di
CAN ha raggiunto o superato il livello di avviso
(warning). Troppi frame di errore o errori di frame.
Doppio lampeggio
Evento di
controllo di
errore NMT
Si è verificato un evento di “guarding” (NMT slave
o NMT maestro) o un evento di “heartbeat”
(consumatore di heartbeat).
Triplo lampeggio
Bus off
Il controllo CAN è in “bus off”
MCP/MCPi - Ref.0612
Protocollo CANopen - 37/40
‡ Led verde. Led indicatore di stato
TABELLA 32. Led indicatore di errore. Colore rosso.
Led di avvio (verde)
Stato
Descrizione
Illuminato
Operazionale
L’apparecchiatura è in stato operazionale.
Intermittente
Preoperazionale L’apparecchiatura è in stato preoperazionale.
Un unico lampeggio
Arrestato
L’apparecchiatura è in stato di arresto.
50 ms
on
flickering
(red)
off
on
flickering
(green)
off
on
blincking
(red)
off
on
blincking
(green)
off
on
single flash
(red)
off
on
single flash
(green)
off
on
doble flash
(red)
off
on
triple flash
(red)
off
on
triple flash
(green)
off
200 ms
6 x 200 ms
1000 ms
FIGURA 7.
Denominazione e tempi di lampeggio del led indicatore NS (Network Status).
38/40 - Protocollo CANopen
MCP/MCPi - Ref.0612
Note d’utente.
MCP/MCPi - Ref.0612
Protocollo CANopen - 39/40
Uffici sussidiari della FAGOR:
SPAIN
Sede centrale :
FAGOR AUTOMATION S.COOP.
Bº San Andrés 19, Apdo. 144
E-20500 ARRASATE-MONDRAGON
www.fagorautomation.com
E-mail: [email protected]
Tel:
34-943-719200 / 34-943-039800
Fax: 34-943-791712
34-943-771118 (Service Dept.)
Usurbil:
FAGOR AUTOMATION S.COOP.
Planta de Usurbil
San Esteban s/n Txoko-Alde
E-20170 USURBIL
Tel:
34-943-000690
Fax: 34-943-360527
E-mail: [email protected]
Eskoriatza:
FAGOR AUTOMATION S.COOP.
Planta de Eskoriatza
Torrebaso Pasealekua, 4, Apdo. 50
E-20540 ESKORIATZA
Tel:
34-943-719200
Fax: 34-943-039783
Barcelona:
FAGOR AUTOMATION, Catalunya
Parc Tecnològic del Vallès,
Tecnoparc II
Edificio I Módulo Ab
C/Argenters, 5
08290 Cerdanyola del Vallès
Tel.: 34-93-4744375
Fax: 34-93-4744327
E-mail:
[email protected]
FRANCE
FAGOR AUTOMATION FRANCE Sàrl
Parc Technologique de La Pardieu
16 Rue Patrick Depailler
63000 CLERMONT FERRAND
Tel.:
33-473277916
Fax: 33-473150289
[email protected]
GERMANY
FAGOR AUTOMATION GmbH
Postfach 604 D-73006 GÖPPINGEN
Nördliche Ringstrasse, 100
Tel.:
49-7161 15685-0
Fax: 49-7161 1568579
E-mail: [email protected]
PORTUGAL
Nanjing:
FAGOR AUTOMATION LTDA.
Sucursal Portuguesa
Rua Gonçalves Zarco nº 1129-B-2º
Salas 210/212
4450 LEÇA DA PALMEIRA
Tel:
351 22 996 88 65
Fax: 351 22 996 07 19
E-mail: [email protected]
FAGOR AUTOMATION EQUIPMENT LTD.
NANJING OFFICE
Room 803, Holiday Inn (Nanjing)
45 Zhongshan Beilu, Nanjing 210008
Jiangsu Provence
Tel: 86-25-3328259
Fax: 86-25-3328260
E-mail: [email protected]
USA
Chicago:
CHINA
Guangzhou:
FAGOR AUTOMATION CORP.
2250 Estes Avenue
ELK GROVE VILLAGE, IL 60007
Tel: 1-847-9811500
1-847-9811595 (Service)
Fax:1-847-9811311
E-mail: [email protected]
Beijin FAGOR AUTOMATION Equipment
Co.Ltd., Guangzhou Rep.Office
Room 915 Lihao Plaza No. 18 Jichanglu
Baiyun District - GUANGZHOU 510405
Tel: 86-20-86553124
Fax: 86-20-86553125
E-mail: [email protected]
California:
Shanghai:
FAGOR AUTOMATION West Coast
3176 Pullman Ave., Unit 110
COSTA MESA, CA 92626
Tel: 1-714-9579885
Fax: 1-714-9579891
E-mail: [email protected]
New Jersey:
FAGOR AUTOMATION East Coast
Tel:
1-973-7733525
Fax: 1-973-7733526
E-mail: [email protected]
South East:
FAGOR AUTOMATION SOUTH EAST
4234 Amber Ridge Ln- VALRICO, FL 33594
Tel:
813 654 4599
E-mail: [email protected]
Ohio:
FAGOR AUTOMATION OHIO BRANCH
Westerville OH 43081
Tel:
1 614-855-5720
Fax: 1 614-855-5928
E-mail: [email protected]
CANADA
Ontario:
FAGOR AUTOMATION ONTARIO
Unit 3, 6380 Tomken Road
MISSISSAUGA L5T 1Y4
Tel:
1-905-6707448
Fax: 1-905-6707449
E-mail: [email protected]
Montreal:
FAGOR AUTOMATION QUEBEC
Tel.:
1-450-2270588
Fax: 1-450-2276132
E-mail: [email protected]
Windsor:
FAGOR AUTOMATION WINDSOR
Tel.:
1-519 944-5674
Fax: 1-519 944-2369
BRAZIL
ITALY
FAGOR ITALIA S.R.L.
Pal. CD3 P.T. - Via Roma, 108
20060 CASSINA DE PECCHI (MI)
Tel.:
39-0295301290
Fax: 39-0295301298
E-mail: [email protected]
UNITED KINGDOM
FAGOR AUTOMATION UK Ltd.
2 A Brunel Close
Drayton Field Industrial Estate
Daventry Northamptonshire
NN11 5RB
Tel:
44-1327 300067
Fax: 44-1327 300880
E-mail: [email protected]
40/40 - Protocollo CANopen
FAGOR AUTOMATION DO BRASIL
COM.IMP. E EXPORTAÇAO LTDA.
Rua Homero Baz do Amaral, 331
CEP 04774-030 SAO PAULO-SP
Tel.:
55-11-56940822
Fax: 55-11-56816271
E-mail: [email protected]
CHINA, P.R.
Beijing:
BEIJIN FAGOR AUTOMATION EQUIPMENT
Co.,LTD.
C-1 Yandong Building,
No.2 Wanhong Xijie, Xibajianfang
Chaoyang District
BEIJING, Zip Code: 100015
Tel: 86-10-84505858
Fax: 86-10-84505860
E-mail: [email protected]
Beijing FAGOR AUTOMATION equipment
Co., Ltd - SHANGHAI Representative Office
Room No.1906
LianTong International Building
No. 547 Tianmu Xilu
SHANGHAI, P.C. 20070
Tel: 86-21-63539007
Fax: 86-21-63538840
E-mail: [email protected]
HONG KONG
FAGOR AUTOMATION (ASIA) LTD.
Room 628. Tower II, Grand Central Plaza
138 Shatin Rural Committee Road
Shatin, HONG KONG
Tel: 852-23891663
Fax: 852-23895086
E-mail: [email protected]
KOREA, Republic of
FAGOR AUTOMATION KOREA, LTD.
Room No. 707 Byucksan Digital Valley 2nd
481-10 Gasan-dong. Geumcheon-gu
Seoul 153-803, Korea
Tel: 82 2 2113 0341
Fax: 82 2 2113 0343
E-mail: [email protected]
TAIWAN, R.C.O.
FAGOR AUTOMATION TAIWAN CO., LTD.
Nº 24 Ta-Kuang St. Nan-Tun Dist. 408
Taichung, TAIWAN R.O.C.
Tel: 886-4-2 3271282
Fax: 886-4-2 3271283
SINGAPORE
FAGOR AUTOMATION (S) PTE.LTD.
240 MacPherson Road
06-05 Pines Industrial Building
SINGAPORE 348574
Tel: 65-68417345 / 68417346
Fax: 65-86417348
E-mail: [email protected]
MALAYSIA
FAGOR AUTOMATION (M) SDN.BHD.
(638038-H)
No.39, Jalan Utama 1/7
Taman Perindustrian Puchong Utama
47100 Puchong, Selangor Darul Ehsan
Tel: +60 3 8062 2858
Fax: +60 3 8062 3858
E-mail: [email protected]
MCP/MCPi - Ref.0612