Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisione Revisione precedente | |||
software:devices:epicpos [2019/08/29 17:01] – modifica esterna 127.0.0.1 | software:devices:epicpos [2020/07/13 15:11] (versione attuale) – qem103 | ||
---|---|---|---|
Linea 2: | Linea 2: | ||
- | ===== Introduzione ===== | + | ====== - Introduzione |
* Il device interno EPICPOS é uno tool residente nella CPU che permette di gestire il movimento di un asse meccanico con un comando analogico a rampe epicicloidali. | * Il device interno EPICPOS é uno tool residente nella CPU che permette di gestire il movimento di un asse meccanico con un comando analogico a rampe epicicloidali. | ||
Linea 14: | Linea 14: | ||
- | ===== Installazione ===== | + | ===== - Installazione ===== |
- | ==== Dichiarazione device nel file di configurazione (.CNF) ==== | + | ==== - Dichiarazione device nel file di configurazione (.CNF) ==== |
Nel file di configurazione (.CNF), la sezione BUS deve essere dichiarata in modo tale che siano | Nel file di configurazione (.CNF), la sezione BUS deve essere dichiarata in modo tale che siano | ||
Linea 44: | Linea 44: | ||
|IOutA|Indirizzo hardware del componente DAC dell' | |IOutA|Indirizzo hardware del componente DAC dell' | ||
- | === Esempio === | + | === - Esempio === |
<code QCL> | <code QCL> | ||
; | ; | ||
Linea 54: | Linea 54: | ||
- | ===== Funzionamento ===== | + | ===== - Funzionamento ===== |
- | ==== Rilevazione posizione ==== | + | ==== - Rilevazione posizione ==== |
Il device EPICPOS acquisisce la posizione dellasse tramite i segnali di un trasduttore bidirezionale; | Il device EPICPOS acquisisce la posizione dellasse tramite i segnali di un trasduttore bidirezionale; | ||
Linea 67: | Linea 67: | ||
// | // | ||
- | === Punto decimale === | + | === - Punto decimale === |
Se per lunità di misura scelta é prevista anche la presenza di un punto decimale, le posizioni | Se per lunità di misura scelta é prevista anche la presenza di un punto decimale, le posizioni | ||
devono essere rappresentate sempre come valore intero e rappresentare lo spazio nellunità di | devono essere rappresentate sempre come valore intero e rappresentare lo spazio nellunità di | ||
Linea 74: | Linea 74: | ||
visualizzatori in fase di rappresentazione del valore (es. come proprietà nel terminale operatore). | visualizzatori in fase di rappresentazione del valore (es. come proprietà nel terminale operatore). | ||
- | === Velocità === | + | === - Velocità === |
Le velocitá sono sempre espresse in unità di misura intere nellunità di tempo scelta. Da questo | Le velocitá sono sempre espresse in unità di misura intere nellunità di tempo scelta. Da questo | ||
si ricava che il device deve comunque conoscere la posizione del punto decimale dellunità di | si ricava che il device deve comunque conoscere la posizione del punto decimale dellunità di | ||
misura e questo viene fatto con il parametro //decpt//. Questo parametro può assumere valori 0÷3. | misura e questo viene fatto con il parametro //decpt//. Questo parametro può assumere valori 0÷3. | ||
- | === Esempio === | + | === - Esempio === |
^:tip:^Per rendere attivo il device inviare il comando INIT.^ | ^:tip:^Per rendere attivo il device inviare il comando INIT.^ | ||
Linea 100: | Linea 100: | ||
// | // | ||
- | ==== Calibrazione uscita analogica ==== | + | ==== - Calibrazione uscita analogica ==== |
^: | ^: | ||
Linea 108: | Linea 108: | ||
con un valore costante con lo scopo di verificare collegamenti e funzionalità. | con un valore costante con lo scopo di verificare collegamenti e funzionalità. | ||
- | === Movimentazione preliminare === | + | === - Movimentazione preliminare === |
* Togliere la condizione di emergenza con il comando //RESUME//. | * Togliere la condizione di emergenza con il comando //RESUME//. | ||
* Lo stato //st_emrg// = 0 | * Lo stato //st_emrg// = 0 | ||
Linea 120: | Linea 120: | ||
* Lo stato //st_cal// = 0 | * Lo stato //st_cal// = 0 | ||
- | === Parametrizzazione uscita === | + | === - Parametrizzazione uscita === |
Il device EPICPOS genera il valore di tensione delluscita analogica sulla base di una proporzione | Il device EPICPOS genera il valore di tensione delluscita analogica sulla base di una proporzione | ||
tra la velocitá massima dellasse e la massima tensione di uscita. La proporzionalità è ottenuta | tra la velocitá massima dellasse e la massima tensione di uscita. La proporzionalità è ottenuta | ||
Linea 131: | Linea 131: | ||
di tempo della velocità (Um/min oppure Um/s). | di tempo della velocità (Um/min oppure Um/s). | ||
- | === Metodo teorico per la determinazione della velocità massima === | + | === - Metodo teorico per la determinazione della velocità massima === |
Il metodo teorico é un calcolo eseguito sulla base della velocitá massima del motore. Una volta | Il metodo teorico é un calcolo eseguito sulla base della velocitá massima del motore. Una volta | ||
Linea 138: | Linea 138: | ||
Introdurre il valore di velocitá massima calcolato nel parametro //maxvel//. | Introdurre il valore di velocitá massima calcolato nel parametro //maxvel//. | ||
- | === Metodo pratico per la determinazione della velocità massima === | + | === - Metodo pratico per la determinazione della velocità massima === |
Il metodo pratico si basa sulla lettura della velocitá rilevata dal device nel parametro //vel//, | Il metodo pratico si basa sulla lettura della velocitá rilevata dal device nel parametro //vel//, | ||
fornendo allazionamento una tensione nota. Per fornire la tensione allazionamento il device | fornendo allazionamento una tensione nota. Per fornire la tensione allazionamento il device | ||
Linea 147: | Linea 147: | ||
Introdurre il valore di velocitá massima trovato nel parametro //maxvel//. | Introdurre il valore di velocitá massima trovato nel parametro //maxvel//. | ||
- | ==== Movimentazione ==== | + | ==== - Movimentazione ==== |
^: | ^: | ||
Linea 167: | Linea 167: | ||
retroazione di spazio questo errore scompare. | retroazione di spazio questo errore scompare. | ||
- | ==== Taratura PID+FF ==== | + | ==== - Taratura PID+FF ==== |
Il posizionamento eseguito nel paragrafo precedente é stato realizzato senza considerare eventuali | Il posizionamento eseguito nel paragrafo precedente é stato realizzato senza considerare eventuali | ||
Linea 185: | Linea 185: | ||
{{ : | {{ : | ||
- | === Azione feed forward === | + | === - Azione feed forward === |
Il feed-forward contribuisce a rendere il sistema più pronto nei posizionamenti, | Il feed-forward contribuisce a rendere il sistema più pronto nei posizionamenti, | ||
analogica un valore di tensione proporzionale alla velocitá teorica di posizionamento. In | analogica un valore di tensione proporzionale alla velocitá teorica di posizionamento. In | ||
Linea 195: | Linea 195: | ||
{{ : | {{ : | ||
- | === Azione proporzionale === | + | === - Azione proporzionale === |
Questa azione fornisce unuscita proporzionale allerrore di posizione istantaneo dellasse. Lentità | Questa azione fornisce unuscita proporzionale allerrore di posizione istantaneo dellasse. Lentità | ||
dellazione proporzionale é definita dal parametro //pgain// che definisce la sensibilità del | dellazione proporzionale é definita dal parametro //pgain// che definisce la sensibilità del | ||
Linea 206: | Linea 206: | ||
{{ : | {{ : | ||
- | === Azione integrale === | + | === - Azione integrale === |
Integra lerrore di posizione del sistema nel tempo impostato nel parametro //integt// aggiornando | Integra lerrore di posizione del sistema nel tempo impostato nel parametro //integt// aggiornando | ||
luscita finché lerrore non viene annullato.\\ | luscita finché lerrore non viene annullato.\\ | ||
Linea 214: | Linea 214: | ||
{{ : | {{ : | ||
- | === Azione derivativa === | + | === - Azione derivativa === |
Anticipa la variazione del moto del sistema tendendo ad eliminare gli overshoot del posizionamento. | Anticipa la variazione del moto del sistema tendendo ad eliminare gli overshoot del posizionamento. | ||
Lentità della variazione viene calcolata nel tempo impostato nel parametro // | Lentità della variazione viene calcolata nel tempo impostato nel parametro // | ||
Linea 223: | Linea 223: | ||
{{ : | {{ : | ||
- | ==== Ricerca preset ==== | + | ==== - Ricerca preset ==== |
La ricerca di preset é una procedura atta a sincronizzare il conteggio (parametro //posit//) con la | La ricerca di preset é una procedura atta a sincronizzare il conteggio (parametro //posit//) con la | ||
Linea 229: | Linea 229: | ||
// | // | ||
- | === Considerazioni preliminari === | + | === - Considerazioni preliminari === |
* Per poter eseguire una ricerca preset é necessario disporre di un ingresso (acquisito tramite il BUS QMOVE) che definiamo abilitazione zero trasduttore. Nella sua corsa, lasse deve attivare questo ingresso in un punto prestabilito. | * Per poter eseguire una ricerca preset é necessario disporre di un ingresso (acquisito tramite il BUS QMOVE) che definiamo abilitazione zero trasduttore. Nella sua corsa, lasse deve attivare questo ingresso in un punto prestabilito. | ||
* La procedura di ricerca di preset viene avviata con il comando //PRESET//; nella fase iniziale il conteggio acquisito da QMOVE può avere un qualsiasi valore e lasse può trovarsi in qualsiasi punto. | * La procedura di ricerca di preset viene avviata con il comando //PRESET//; nella fase iniziale il conteggio acquisito da QMOVE può avere un qualsiasi valore e lasse può trovarsi in qualsiasi punto. | ||
Linea 241: | Linea 241: | ||
A questo punto il comportamento dipende dal modo di caricamento selezionato (Modo 0 o Modo 1). | A questo punto il comportamento dipende dal modo di caricamento selezionato (Modo 0 o Modo 1). | ||
- | === Ricerca di preset - Modo 0 === | + | === - Ricerca di preset - Modo 0 === |
^: | ^: | ||
Linea 254: | Linea 254: | ||
|{{ : | |{{ : | ||
- | === Ricerca di preset - Modo 1 === | + | === - Ricerca di preset - Modo 1 === |
^: | ^: | ||
Linea 273: | Linea 273: | ||
|{{ : | |{{ : | ||
- | === Ricerca di preset "Modo 2" === | + | === - Ricerca di preset "Modo 2" === |
^: | ^: | ||
Linea 284: | Linea 284: | ||
- | ===== Funzioni speciali ===== | + | ===== - Funzioni speciali ===== |
- | ==== Gestione multiasse ==== | + | ==== - Gestione multiasse ==== |
In alcune applicazioni viene richiesto di posizionare un numero elevato di assi movimentando un | In alcune applicazioni viene richiesto di posizionare un numero elevato di assi movimentando un | ||
Linea 304: | Linea 304: | ||
valore di tensione definito prima del comando //REGOFF//. | valore di tensione definito prima del comando //REGOFF//. | ||
- | ==== Cambio quota e conteggio in movimento ==== | + | ==== - Cambio quota e conteggio in movimento ==== |
^:tip:^Il cambio della quota viene accettato solamente se la nuova posizione é raggiungibile con la direzione in uso e se l'asse non é già in fase di decelerazione per raggiungere la quota precedentemente impostata.^ | ^:tip:^Il cambio della quota viene accettato solamente se la nuova posizione é raggiungibile con la direzione in uso e se l'asse non é già in fase di decelerazione per raggiungere la quota precedentemente impostata.^ | ||
Linea 319: | Linea 319: | ||
raggiungere la quota limite (//maxpos// o // | raggiungere la quota limite (//maxpos// o // | ||
- | ==== Cambio velocitá e tempo di rampa in movimento ==== | + | ==== - Cambio velocitá e tempo di rampa in movimento ==== |
Durante il posizionamento é possibile variare la velocitá dellasse senza influenzare la posizione | Durante il posizionamento é possibile variare la velocitá dellasse senza influenzare la posizione | ||
Linea 337: | Linea 337: | ||
{{: | {{: | ||
- | ==== Delta conteggio ==== | + | ==== - Delta conteggio ==== |
^:tip:^Il comando è inviabile solamente se l'asse è fermo, condizione di st_still = 1.^ | ^:tip:^Il comando è inviabile solamente se l'asse è fermo, condizione di st_still = 1.^ | ||
Linea 360: | Linea 360: | ||
Il comando di //DELCNT// può essere inviato solamente con asse fermo (// | Il comando di //DELCNT// può essere inviato solamente con asse fermo (// | ||
- | === Esempio === | + | === - Esempio === |
La lettura della posizione dellasse risulta essere di 2 unità e si trova nel punto A. Si vuole | La lettura della posizione dellasse risulta essere di 2 unità e si trova nel punto A. Si vuole | ||
sommare al conteggio //posit// tre unità di misura.\\ | sommare al conteggio //posit// tre unità di misura.\\ | ||
Linea 379: | Linea 379: | ||
inviare comandi successivi senza interporre una istruzione di lettura su parametro device. | inviare comandi successivi senza interporre una istruzione di lettura su parametro device. | ||
- | === Esempio === | + | === - Esempio === |
// | // | ||
//DELCNT Asse//\\ | //DELCNT Asse//\\ | ||
Linea 387: | Linea 387: | ||
- | ===== Tabella comandi e parametri ===== | + | ===== - Tabella comandi e parametri ===== |
- | ==== Simbologia adottata ==== | + | ==== - Simbologia adottata ==== |
Il **nome** del parametro, stato o comando viene riportato alla sinistra della tabella. | Il **nome** del parametro, stato o comando viene riportato alla sinistra della tabella. | ||
Linea 412: | Linea 412: | ||
S = Single Float | S = Single Float | ||
- | === Condizioni === | + | === - Condizioni === |
Vengono descritte tutte le **condizioni necessarie affinchè il parametro sia considerato corretto o perchè il comando venga accettat**o.\\ | Vengono descritte tutte le **condizioni necessarie affinchè il parametro sia considerato corretto o perchè il comando venga accettat**o.\\ | ||
In alcuni casi vengono specificati dei valori limite per laccettazione del parametro: se vengono | In alcuni casi vengono specificati dei valori limite per laccettazione del parametro: se vengono | ||
Linea 426: | Linea 426: | ||
RW = Read / Write. | RW = Read / Write. | ||
- | ==== Comandi ==== | + | ==== - Comandi ==== |
I comandi sono stati ordinati con priorità decrescente. Ad esempio, in caso di contemporaneità dei comandi //INIT// ed //EMRG//, viene acquisito per primo il comando //INIT//. | I comandi sono stati ordinati con priorità decrescente. Ad esempio, in caso di contemporaneità dei comandi //INIT// ed //EMRG//, viene acquisito per primo il comando //INIT//. | ||
Linea 452: | Linea 452: | ||
|DELCNT|st_init = 1\\ st_still = 1|**Delta counter**\\ Questo comando viene accettato solamente se l'asse è fermo; il conteggio (posizione dell' | |DELCNT|st_init = 1\\ st_still = 1|**Delta counter**\\ Questo comando viene accettato solamente se l'asse è fermo; il conteggio (posizione dell' | ||
- | ==== Parametri ==== | + | ==== - Parametri ==== |
^Nome^D^R^A^Condizioni^Descrizione^ | ^Nome^D^R^A^Condizioni^Descrizione^ | ||
Linea 494: | Linea 494: | ||
|delta|L|R|R-W|Nessuna|**Delta counter**\\ È il valore che viene sommato al conteggio quando viene inviato un comando DELCNT. Valore espresso in unità di misura (Um).\\ Range valido: -999999 ÷ 999999| | |delta|L|R|R-W|Nessuna|**Delta counter**\\ È il valore che viene sommato al conteggio quando viene inviato un comando DELCNT. Valore espresso in unità di misura (Um).\\ Range valido: -999999 ÷ 999999| | ||
- | ==== Stati ==== | + | ==== - Stati ==== |
Linea 513: | Linea 513: | ||
- | ===== Limitazioni ===== | + | ===== - Limitazioni ===== |
* Il parametro //setvel// può essere scritto solamente se lasse é a velocitá costante | * Il parametro //setvel// può essere scritto solamente se lasse é a velocitá costante | ||
Linea 519: | Linea 519: | ||
- | ===== Esempio applicativo ===== | + | ===== - Esempio applicativo ===== |
- | ==== File di configurazione ==== | + | ==== - File di configurazione ==== |
<code QCL> | <code QCL> | ||
Linea 599: | Linea 599: | ||
</ | </ | ||
- | ==== Gestione EPICPOS ==== | + | ==== - Gestione EPICPOS ==== |
<code QCL> | <code QCL> |