software:devices:gear

PRELIMINARE/

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

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)

:info: Si possono dichiarare più slave, fino ad un massimo di 9 FIXME.
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

Il funzionamento del device è illustrato dal seguente schema a blocchi:

Breve descrizione
Dimensione
Valore di default -
Tipo di accesso
Unità di misura
Range valido
ID parametro
Condizioni di scrittura

Descrizione:


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

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


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@


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 FIXME


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:


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:


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.


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.


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.


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.


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.


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.


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


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


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.

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.


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


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.


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.


Breve descrizione Reset dello stato di warning.
Condizione -
ID comando 16

Descrizione:

Azzera lo stato st_warning.


Breve descrizione
Condizione -
ID comando

Descrizione:


Breve descrizione Scrive la configurazione nel device
Condizione -
ID comando

Descrizione:

Scrive nel device i valori impostati su qdoIndex, qdoSubIndex e qdoData.


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
0Nessun errore.
1Errore dati: Sono presenti valori fuori range nei parametri.
2Errore 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.

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
0Nessun warning.
1Impostazione dato fuori range.
2Variazione parametro non accettata.
3Comando 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

Accorgimenti: Per eseguire la configurazione serve:
st_gearon = 0, st_error = 0, st_warning = 0.

  1. 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
  2. Sospendere esecuzione Gantry:
            ; Gantry1 = nome device GEAR
            Gantry1.qdoIndex = 1
    	Gantry1.qdoSubIndex = 10
    	Gantry1.qdoData = 0 ; 1: Resume and 0: Suspend
    	Gantry1.WRITEQDO
  3. 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
  4. 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
  5. 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
  6. 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
  7. 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
  8. Abilitare il gantry:
            Gantry1.qdoSubIndex = 10
    	Gantry1.qdoData = 1       ; 1: Resume and 0: Suspend
    	Gantry1.WRITEQDO
            Gantry1.RSWRN             ; Reset warning
    	Gantry1.GEARON            ; Gear ON
  • Ultima modifica: 2023/06/09 16:24