DEVICE GEAR
1. Introduzione
Il device interno GEAR permette di controllare un asse slave in modo che segua un asse master secondo un determinato rapporto di trasmissione. Il device GEAR funziona solamente con assi controllati da device ANPOS2.
Le principali caratteristiche del device sono:
-
Impostazione rapporto di trasmissione con numeratore/denominatore per una precisa sincronizzazione
-
Comando degli assi indipendente quando la sincronizzazione è disattiva
-
Disattivazione sincronizzazione con rampa di frenata
-
Gestione di device di gruppo
1.1 Dichiarazione del device
1.1.1 Dichiarazione
Per poter usufruire del device è necessario eseguirne la dichiarazione nell'apposita sezione INTDEVICE della unit di configurazione.
;--------------------------------- ; Dichiarazione device interni ;--------------------------------- INTDEVICE ... <nome> GEAR REF_ANPOS2(AxeMaster) REF_ANPOS2(AxeSlave)
Dove:
Nome campo | Descrizione | Esempio | Altro |
---|---|---|---|
<nome> | Nome assegnato al device | gear | - |
GEAR | Parola chiave che identifica il device GEAR | - | - |
REF_ANPOS2(AxeMaster) | Riferimento al device ANPOS2 per l'asse Master | AxeM | Vedi nota (1) |
REF_ANPOS2(AxeSlave) | Riferimento al device ANPOS2 per l'asse Slave | AxeS | Vedi nota (1) |
Si possono dichiarare più slave, fino ad un massimo di 9 .
Es:
;--------------------------------- ; Dichiarazione device interni ;--------------------------------- INTDEVICE ... <nome> GEAR REF_ANPOS2(AxeMaster) REF_ANPOS2(AxeSlave1) REF_ANPOS2(AxeSlave2) REF_ANPOS2(AxeSlave3) X X X X X X
1.2 Descrizione del funzionamento
1.2.1 Funzionamento
1.3 Elenco Parametri
commandCode
Breve descrizione | |
---|---|
Dimensione | |
Valore di default | - |
Tipo di accesso | |
Unità di misura | |
Range valido | |
ID parametro | |
Condizioni di scrittura |
Descrizione:
gearref
Breve descrizione | Riferimento rapporto di trasmissione |
---|---|
Dimensione | Byte |
Valore di default | - |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | |
Condizioni di scrittura | - |
Descrizione:
Indica il riferimento al quale applicare il rapporto di trasmissione master/slave.
-
0: Posizione comandata master
-
1: Posizione reale master
gearfactor
Breve descrizione | Riferimento rapporto di trasmissione |
---|---|
Dimensione | Byte |
Valore di default | - |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | |
ID parametro | |
Condizioni di scrittura | - |
Descrizione:
Indica il rapporto di trasmissione master/slave
es:
gearfactor = 1 → lo slave seguirà la posizione del master
gearfactor = 2 → lo slave seguirà la posizione del master moltiplicata x2
gearfactor = 999 → lo slave seguirà la posizione del master moltiplicata x999
gearoffset
Breve descrizione | @shortdescr@ |
---|---|
Dimensione | @dim@ |
Valore di default | @default@ |
Tipo di accesso | @accesstype@ |
Unità di misura | @um@ |
Range valido | @range@ |
ID parametro | @id@ |
Condizioni di scrittura | @wrcond@ |
Descrizione:
@longdescr@
qdoIndex
Breve descrizione | indice per la configurazione |
---|---|
Dimensione | |
Valore di default | |
Tipo di accesso | |
Unità di misura | |
Range valido | |
ID parametro | |
Condizioni di scrittura |
Descrizione:
sempre 1
qdoSubIndex
Breve descrizione | sotto indice per la configurazione |
---|---|
Dimensione | |
Valore di default | |
Tipo di accesso | |
Unità di misura | |
Range valido | |
ID parametro | |
Condizioni di scrittura |
Descrizione:
qdoData
Breve descrizione | valori principali per la configurazione |
---|---|
Dimensione | |
Valore di default | |
Tipo di accesso | |
Unità di misura | |
Range valido | |
ID parametro | |
Condizioni di scrittura |
Descrizione:
wrncode
Breve descrizione | Codice di identificazione warning |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | |
ID parametro | 4 |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di warning rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
wrnpar
Breve descrizione | ID del parametro che ha provocato il warning. |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | |
ID parametro | 5 |
Condizioni di scrittura | - |
Descrizione:
Indica quale parametro ha provocato il warning rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
wrnvalue
Breve descrizione | Codice di identificazione della causa del warning |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | - |
ID parametro | 6 |
Condizioni di scrittura | - |
Descrizione:
Indica la causa del warning rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
errcode
Breve descrizione | Codice di identificazione dell'errore. |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | - |
ID parametro | 7 |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di errore rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
errpar
Breve descrizione | ID del parametro che ha provocato l'errore. |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | - |
ID parametro | 8 |
Condizioni di scrittura | - |
Descrizione:
Indica il parametro che ha provocato l'errore rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
errvalue
Breve descrizione | Codice di identificazione della causa dell'errore |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | - |
ID parametro | 9 |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di causa dell'errore rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
1.4 Elenco Stati
st_gearon
Breve descrizione | Stato di sincronismo attivo |
---|---|
Valore di default | 0 |
ID stato | 10 |
Descrizione:
Indica che è attivo il sincronismo master/slave.
* 0 = sincronismo master/slave non attivo * 1 = sincronismo master/slave attivo
st_gearchg
Breve descrizione | Stato di cambiamento denominatore rapporto master/slave |
---|---|
Valore di default | 0 |
ID stato | 11 |
Descrizione:
Indica che è stato modificato il denominatore del rapporto master slave ma non è ancora attivo.
* 0 = rapporto master/slave corrisponde al rapporto gearnum/gearden * 1 = denominatore rapporto master/slave modificato e non corrispondente a gearnum/gearden
st_warning
Breve descrizione | Presenza di un warning. |
---|---|
Valore di default | 0 |
ID stato | 12 |
Descrizione:
Indica lo stato di warning del device, per riconoscere il tipo di warning si deve fare riferimento alle variabili wrncode, wrnvalue e wrnpar.
0 = warning non presente.
1 = warning presente.
—
st_error
Breve descrizione | Presenza di un errore. |
---|---|
Valore di default | 0 |
ID stato | 13 |
Descrizione:
Indica lo stato di errore del device, per riconoscere il tipo di errore si deve far riferimento alle variabili errcode e errvalue.
0 = errore non presente.
1 = errore presente.
1.5 Elenco Comandi
GEARON
Breve descrizione | Attiva la sincronizzazione |
---|---|
Condizione | st_error=0, st_emrg=0 |
ID comando | 14 |
Descrizione:
Attiva la sincronizzazione tra gli assi con il rapporto master/slave
GEAROFF
Breve descrizione | Disattiva la sincronizzazione |
---|---|
Condizione | st_error=0 |
ID comando | 14 |
Descrizione:
Disattiva la sincronizzazione tra gli assi con il rapporto master/slave quindi l'asse slave può essere comandato in maniera indipendente dal master.
RSERR
Breve descrizione | Reset dello stato di errore. |
---|---|
Condizione | - |
ID comando | 15 |
Descrizione:
Azzera lo stato di errore (st_error) nel caso non sia più presente la condizione di errore.
RSWRN
Breve descrizione | Reset dello stato di warning. |
---|---|
Condizione | - |
ID comando | 16 |
Descrizione:
Azzera lo stato st_warning.
READQDO
Breve descrizione | |
---|---|
Condizione | - |
ID comando |
Descrizione:
WRITEQDO
Breve descrizione | Scrive la configurazione nel device |
---|---|
Condizione | - |
ID comando |
Descrizione:
Scrive nel device i valori impostati su qdoIndex, qdoSubIndex e qdoData.
1.6 Errori e Warnings
1.6.1 Errors
Quando il device non riesce ad eseguire le operazioni derivanti da una non corretta programmazione da parte dell'utente segnala questa condizione tramite l'attivazione dello stato st_error. Il device, inoltre, rende disponibili, tramite i valori sui parametri errcode, errvalue ed errpar, alcune informazioni per meglio comprendere il tipo di errore e quale condizione l'ha generato. Tali informazioni e lo stato di errore st_error, permangono finché non viene eseguito l'apposito comando RSERR che li cancella.
La seguente tabella specifica i valori assunti da errcode:
errcode | Descrizione |
---|---|
0 | Nessun errore. |
1 | Errore dati: Sono presenti valori fuori range nei parametri. |
2 | Errore di configurazione. |
Per mezzo dei parametri errvalue e errpar è possibile ottenere informazioni più dettagliate riguardo l'errore.
Il parametro errpar indica sempre l'ID del parametro che ha causato l'errore.
Invece attualmente il parametro errvalue non è utilizzato e vale sempre 0.
1.6.2 Warnings
Quando l'impostazione di un parametro del device non viene accettata o quando non è possibile eseguire un comando il device segnala questa condizione tramite l'attivazione dello stato st_warning.
Il device, inoltre, rende disponibili, tramite i valori sui parametri wrncode, wrnvalue e wrnpar, alcune informazioni per meglio comprendere il tipo di warning e quale condizione l'ha generato.
Tali informazioni e lo stato di warning st_warning, permangono finché non viene eseguito l'apposito comando RSWRN che li cancella.
La seguente tabella specifica i valori assunti da wrncode:
wrncode | Descrizione |
---|---|
0 | Nessun warning. |
1 | Impostazione dato fuori range. |
2 | Variazione parametro non accettata. |
3 | Comando non accettato: le condizioni di esecuzione non sono rispettate. |
Per mezzo dei parametri wrnvalue e wrnpar è possibile ottenere informazioni più dettagliate riguardo il warning.
Il parametro wrnpar indica sempre l'ID del parametro che ha causato il warning.
Il parametro wrnvalue fornisce le seguenti informazioni:
wrnvalue | descrizione |
---|---|
1 | Il denominatore del rapporto master/slave è zero |
2 | Il riferimento dell'asse slave non è valido |
3 | Asse slave in emergenza. Attivazione gear non possibile |
documentation under develop
1.7 Configurazione
Accorgimenti: Per eseguire la configurazione serve:
st_gearon = 0, st_error = 0, st_warning = 0.
-
Dichiarazione device:
CONST AXE_X 1 AXE_Y 2 AXE_Z 3 INTDEVICE AxeX ANPOS2 ... AxeY ANPOS2 ... AxeZ ANPOS2 ... Gantry1 GEAR AxeX AxeY AxeZ X X X X X X X
-
Sospendere esecuzione Gantry:
; Gantry1 = nome device GEAR Gantry1.qdoIndex = 1 Gantry1.qdoSubIndex = 10 Gantry1.qdoData = 0 ; 1: Resume and 0: Suspend Gantry1.WRITEQDO
-
Settare l'asse master:
; Set the master axis Gantry1.qdoIndex = 1 Gantry1.qdoSubIndex = 3 Gantry1.qdoData = AXE_X ;Imposto asse X (AxeX) come master Gantry1.WRITEQDO
-
Selezionare l'asse che si vuole comandare come slave:
; Select the first slave of the gear device. ; The selected axis is used to assign gearing settings and thresholds Gantry1.qdoIndex = 1 Gantry1.qdoSubIndex = 1 ;1 perchè dichiarato come primo slave nella dichiarazione del device GEAR Gantry1.qdoData = AXE_Y ;Seleziono asse Y (AxeY) Gantry1.WRITEQDO ; *** Nel caso in cui si volesse selezionare l'asse Z come slave: Gantry1.qdoIndex = 1 Gantry1.qdoSubIndex = 2 ;2 perchè dichiarato come secondo slave nella dichiarazione del device GEAR Gantry1.qdoData = AXE_Z ;Seleziono asse Z (AxeZ) Gantry1.WRITEQDO
-
Settare l'asse slave:
; Inform the gantry that the selected axis should be managed as slave Gantry1.qdoIndex = 1 Gantry1.qdoSubIndex = 4 ; GEAR_QDO_SUBINDEX_IS_SLAVE Gantry1.qdoData = TRUE ; TRUE to set it as slave and FALSE to not handle it. Gantry1.WRITEQDO
-
Impostare i fattori di conversione:
; Set the factors for the selected slave Gantry1.gearfactor = 1.0 ;l'asse slave seguirà la posizione del master con un rapporto 1:1 Gantry1.gearref = 1 ;l'asse slave seguirà la posizione reale del master
-
Impostare il valore di massimo disallineamento per mandare in allarme il device:
; Set the alignment threshold for the selected slave in the units set to the anpos2 devices (In this case um) Gantry1.qdoSubIndex = 2 Gantry1.qdoData = 100 ;[Um] Se la differenza di posizione tra master e slave supera 100 [Um] il device va in allarme Gantry1.WRITEQDO
-
Abilitare il gantry:
Gantry1.qdoSubIndex = 10 Gantry1.qdoData = 1 ; 1: Resume and 0: Suspend Gantry1.WRITEQDO Gantry1.RSWRN ; Reset warning Gantry1.GEARON ; Gear ON