software:devices:oopos3

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Prossima revisione
Revisione precedente
Prossima revisioneEntrambe le parti successive la revisione
software:devices:oopos3 [2014/10/23 15:12] – modifica esterna 127.0.0.1software:devices:oopos3 [2017/01/19 16:32] – [3.13.1. Esempio] qem103
Linea 23: Linea 23:
  
 Nel file di configurazione (.CNF), la sezione BUS deve essere dichiarata in modo tale che Nel file di configurazione (.CNF), la sezione BUS deve essere dichiarata in modo tale che
-siano presenti le risorse hardware necessarie all’implementazione del device OOPOS3.\\+siano presenti le risorse hardware necessarie all'implementazione del device OOPOS3.\\
 Devono essere presenti almeno un contatore bidirezionale. Il device può utilizzare anche un Devono essere presenti almeno un contatore bidirezionale. Il device può utilizzare anche un
 ingresso e una linea d'interrupt per le funzioni di ricerca di preset.\\ ingresso e una linea d'interrupt per le funzioni di ricerca di preset.\\
 Nella sezione INTDEVICE del file .CNF deve essere aggiunta la seguente definizione: Nella sezione INTDEVICE del file .CNF deve essere aggiunta la seguente definizione:
  
-<WRAP center round info 60%> +^:info:^È necessario che tutte le voci di definizione siano presenti sulla stessa linea. Nel caso in cui non si desideri associare una risorsa, ad esempio OutFre, si deve in ogni caso inserire nel relativo campo la stringa X.X.^
-È necessario che tutte le voci di definizione siano presenti sulla stessa linea. Nel caso in cui non si desideri associare +
-una risorsa, ad esempio OutFre, si deve in ogni caso inserire nel relativo campo la stringa X.X. +
-</WRAP>+
  
 <code QCL> <code QCL>
Linea 45: Linea 42:
 |TCamp|Tempo campionamento device (1÷255 ms).| |TCamp|Tempo campionamento device (1÷255 ms).|
 |IQCTL|Indirizzo del contatore bidirezionale incrementale.| |IQCTL|Indirizzo del contatore bidirezionale incrementale.|
-|ILine|Linea di interrupt dedicata per l’impulso di zero.| +|ILine|Linea di interrupt dedicata per l'impulso di zero.| 
-|IAZero|Ingresso per l’abilitazione alla cattura dell’impulso di zero.| +|IAZero|Ingresso per l'abilitazione alla cattura dell'impulso di zero.| 
-|OutAva|Indirizzo dell’uscita utilizzata come uscita avanti.| +|OutAva|Indirizzo dell'uscita utilizzata come uscita avanti.| 
-|OutInd|Indirizzo dell’uscita utilizzata come uscita indietro.| +|OutInd|Indirizzo dell'uscita utilizzata come uscita indietro.| 
-|OutDir|Indirizzo dell’uscita utilizzata come uscita direzione.| +|OutDir|Indirizzo dell'uscita utilizzata come uscita direzione.| 
-|OutMov|Indirizzo dell’uscita utilizzata come uscita movimento.| +|OutMov|Indirizzo dell'uscita utilizzata come uscita movimento.| 
-|OutRal|Indirizzo dell’uscita utilizzata come uscita rallentamento.| +|OutRal|Indirizzo dell'uscita utilizzata come uscita rallentamento.| 
-|OutFre|Indirizzo dell’uscita utilizzata come uscita freno.|+|OutFre|Indirizzo dell'uscita utilizzata come uscita freno.|
  
 === - Esempio === === - Esempio ===
Linea 75: Linea 72:
  
 === - Recupero giochi === === - Recupero giochi ===
-La precisione con la qual è stata realizzata la meccanica è fondamentale per l’esito dei posizionamenti.+La precisione con la qual è stata realizzata la meccanica è fondamentale per l'esito dei posizionamenti.
 È, infatti, impossibile ricercare, nei posizionamenti, la precisione del centesimo È, infatti, impossibile ricercare, nei posizionamenti, la precisione del centesimo
-se gli organi di movimento hanno dei laschi dell’ordine del decimo. Inoltre, nei posizionamenti +se gli organi di movimento hanno dei laschi dell'ordine del decimo. Inoltre, nei posizionamenti 
-di assi verticali molto pesanti (ed esempio una pressa o una fresa verticale), l’inerzia +di assi verticali molto pesanti (ed esempio una pressa o una fresa verticale), l'inerzia 
-nei movimenti verso l’alto è nettamente inferiore all’inerzia nei movimenti verso il basso.\\ +nei movimenti verso l'alto è nettamente inferiore all'inerzia nei movimenti verso il basso.\\ 
-In queste ed altre situazioni l’implementazione del recupero giochi nel posizionamento migliora+In queste ed altre situazioni l'implementazione del recupero giochi nel posizionamento migliora
 sensibilmente la precisione. sensibilmente la precisione.
  
-<WRAP center round info 60%> +^:info:^Il posizionamento è sempre concluso nella stessa direzione. Ad esempio, considerando i posizionamenti con recupero giochi avanti (vedi Figura 1), sia per il posizionamento in avanti che indietro, il movimento dell'asse di conclude sempre spostandosi da sinistra verso destra (in avanti).^
-Il posizionamento è sempre concluso nella stessa direzione. Ad esempio, considerando i posizionamenti con +
-recupero giochi avanti (vedi Figura 1), sia per il posizionamento in avanti che indietro, il movimento dell’asse di +
-conclude sempre spostandosi da sinistra verso destra (in avanti). +
-</WRAP>+
  
 |Figura 1: diagramma di posizionamento con recupero giochi.| |Figura 1: diagramma di posizionamento con recupero giochi.|
Linea 226: Linea 219:
 ==== - VERIFICA DEL FUNZIONAMENTO DELLE USCITE DIGITALI ==== ==== - VERIFICA DEL FUNZIONAMENTO DELLE USCITE DIGITALI ====
  
-<WRAP center round info 60%> +^:info:^Prima di movimentare l'asse, verificare il corretto funzionamento dei dispositivi di emergenza e protezione.^
-Prima di movimentare l’asse, verificare il corretto funzionamento dei dispositivi di emergenza e protezione. +
-</WRAP>+
  
 La seguente procedura serve per verificare il funzionamento delle uscite digitali di avanti, indietro La seguente procedura serve per verificare il funzionamento delle uscite digitali di avanti, indietro
-e rallentamento movimentando l’asse con i comandi manuali del device.\\+e rallentamento movimentando l'asse con i comandi manuali del device.\\
 Per proseguire, verificare che il device Asse sia inizializzato e con il valore di risoluzione encoder Per proseguire, verificare che il device Asse sia inizializzato e con il valore di risoluzione encoder
 corretto. corretto.
Linea 247: Linea 238:
 WAIT NOT Asse:st_still AND Asse:st_movfwd WAIT NOT Asse:st_still AND Asse:st_movfwd
 </code> </code>
-  * Verificare che l’asse si muova in avanti e che il conteggio visualizzato in //Asse:posit// si incrementi, quindi fermare il movimento con il comando //STOP//.+  * Verificare che l'asse si muova in avanti e che il conteggio visualizzato in //Asse:posit// si incrementi, quindi fermare il movimento con il comando //STOP//.
 <code QCL> <code QCL>
 STOP Asse STOP Asse
 </code> </code>
-  * Se l’uscita di avanti, corrispondente ad esempio alla risorsa 2.OUT01, non si attiva, verificare il collegamento elettrico.+  * Se l'uscita di avanti, corrispondente ad esempio alla risorsa 2.OUT01, non si attiva, verificare il collegamento elettrico.
   * Dare il comando //MANFBW// per eccitare la sola uscita d'Indietro.   * Dare il comando //MANFBW// per eccitare la sola uscita d'Indietro.
 <code QCL> <code QCL>
Linea 260: Linea 251:
 WAIT NOT Asse:st_still AND Asse:st_movbwd WAIT NOT Asse:st_still AND Asse:st_movbwd
 </code> </code>
-  * Verificare che l’asse si muova in Indietro e che il conteggio visualizzato in //Asse:posit// si decrementi, quindi interrompere il movimento con il comando //STOP//.+  * Verificare che l'asse si muova in Indietro e che il conteggio visualizzato in //Asse:posit// si decrementi, quindi interrompere il movimento con il comando //STOP//.
 <code QCL> <code QCL>
 STOP Asse STOP Asse
 </code> </code>
-  * Se l’uscita di Indietro, corrispondente ad esempio alla risorsa //2.OUT02//, non si attiva, verificare il collegamento elettrico.+  * Se l'uscita di Indietro, corrispondente ad esempio alla risorsa //2.OUT02//, non si attiva, verificare il collegamento elettrico.
   * Dare il comando MANSFW per fare eccitare le uscite di avanti e rallentamento.   * Dare il comando MANSFW per fare eccitare le uscite di avanti e rallentamento.
 <code QCL> <code QCL>
Linea 273: Linea 264:
 WAIT NOT Asse:st_still AND Asse:st_movfwd AND Asse:st_movslow WAIT NOT Asse:st_still AND Asse:st_movfwd AND Asse:st_movslow
 </code> </code>
-  * Verificare che l’asse si muova in avanti ad una velocità inferiore alla precedente e che il conteggio visualizzato in //Asse:posit// si incrementi, quindi interrompere il movimento con il comando //STOP//.+  * Verificare che l'asse si muova in avanti ad una velocità inferiore alla precedente e che il conteggio visualizzato in //Asse:posit// si incrementi, quindi interrompere il movimento con il comando //STOP//.
 <code QCL> <code QCL>
 STOP Asse STOP Asse
 </code> </code>
-  * Se l’uscita di rallentamento, corrispondente ad esempio alla risorsa //2.OUT03//, non si attiva, verificare il collegamento elettrico.+  * Se l'uscita di rallentamento, corrispondente ad esempio alla risorsa //2.OUT03//, non si attiva, verificare il collegamento elettrico.
  
 ==== - IMPOSTAZIONE DEL PARAMETRO DI RISOLUZIONE DELL’ASSE ==== ==== - IMPOSTAZIONE DEL PARAMETRO DI RISOLUZIONE DELL’ASSE ====
Linea 405: Linea 396:
  
 === - Rallentamento proporzionale alla velocità === === - Rallentamento proporzionale alla velocità ===
 +
 Il device calcola automaticamente il rallentamento basandosi sulla formula:\\ Il device calcola automaticamente il rallentamento basandosi sulla formula:\\
 Rallentamento = (Rallentamento massimo x Velocità)/Velocità massima Rallentamento = (Rallentamento massimo x Velocità)/Velocità massima
  
-<WRAP center round info 60%> +^:info:^Il calcolo del rallentamento, come evidenziato dal grafico, non può superare uno dei due limiti maxslow o minslow.^
-Il calcolo del rallentamento, come evidenziato dal grafico, non può superare uno dei due limiti maxslow o minslow. +
-</WRAP>+
  
 {{:software:devices:oopos3:oopos3_08.png?nolink500|}} {{:software:devices:oopos3:oopos3_08.png?nolink500|}}
Linea 494: Linea 484:
  
 La ricerca di preset é una procedura per sincronizzare il valore del parametro //posit// con la La ricerca di preset é una procedura per sincronizzare il valore del parametro //posit// con la
-reale posizione dell’asse. Consiste nel caricare sul conteggio un valore (precedentemente +reale posizione dell'asse. Consiste nel caricare sul conteggio un valore (precedentemente 
-memorizzato) al momento dell’acquisizione dell’impulso di zero del trasduttore; è in ogni+memorizzato) al momento dell'acquisizione dell'impulso di zero del trasduttore; è in ogni
 modo possibile eseguire la ricerca di preset anche se si dispone di un trasduttore senza impulso modo possibile eseguire la ricerca di preset anche se si dispone di un trasduttore senza impulso
-di zero, ma è in ogni modo necessario un ingresso (camma o sensore) di “abilitazione +di zero, ma è in ogni modo necessario un ingresso (camma o sensore) di "abilitazione 
-impulso di zero trasduttore”.+impulso di zero trasduttore".
  
 Precedentemente alla ricerca di preset il conteggio acquisito può avere un qualsiasi valore e Precedentemente alla ricerca di preset il conteggio acquisito può avere un qualsiasi valore e
-l’asse può trovarsi in qualsiasi punto. Per eseguire il caricamento della quota di preset, +l'asse può trovarsi in qualsiasi punto. Per eseguire il caricamento della quota di preset, 
-l’asse si deve dirigere verso l’ingresso di “abilitazione impulso di zero trasduttore”.\\+l'asse si deve dirigere verso l'ingresso di "abilitazione impulso di zero trasduttore".\\
 La direzione iniziale del movimento è definita dal parametro //prsdir//:\\ La direzione iniziale del movimento è definita dal parametro //prsdir//:\\
-//prsdir// = 0 l’asse partirà sempre in avanti.\\ +//prsdir// = 0 l'asse partirà sempre in avanti.\\ 
-//prsdir// = 1 l’asse partirà sempre indietro.+//prsdir// = 1 l'asse partirà sempre indietro.
  
-<WRAP center round info 60%> +^:info:^Durante la ricerca preset i limiti software maxpos e minpos non sono abilitati.^
-Durante la ricerca preset i limiti software maxpos e minpos non sono abilitati. +
-</WRAP>+
  
-L’avvio della ricerca di preset è dato dal comando //PRESET//.\\+L'avvio della ricerca di preset è dato dal comando //PRESET//.\\
 Se durante la ricerca di preset è data nuovamente il comando //PRESET//, la direzione di movimento Se durante la ricerca di preset è data nuovamente il comando //PRESET//, la direzione di movimento
-dell’asse è invertita, mantenendo inalterato il funzionamento della direzione ricerca+dell'asse è invertita, mantenendo inalterato il funzionamento della direzione ricerca
 preset impostato.\\ preset impostato.\\
 È da rilevare che la quota di preset (//prspos//) deve essere sempre compresa tra la quota minima È da rilevare che la quota di preset (//prspos//) deve essere sempre compresa tra la quota minima
-e la quota massima e che, dopo il caricamento della quota di preset, l’asse si posiziona+e la quota massima e che, dopo il caricamento della quota di preset, l'asse si posiziona
 automaticamente alla quota di preset. automaticamente alla quota di preset.
  
 === - Modo 0: caricamento preset con procedura di movimentazione === === - Modo 0: caricamento preset con procedura di movimentazione ===
-<WRAP center round info 60%> 
-L’ingresso di abilitazione impulso di zero ha un filtro hardware che ritarda l’acquisizione e quindi influenza la precisione del caricamento. 
-</WRAP> 
  
-<WRAP center round info 60%> +^:info:^L'ingresso di abilitazione impulso di zero ha un filtro hardware che ritarda l'acquisizione e quindi influenza la precisione del caricamento.^
-La velocità dell’asse deve quindi essere sufficientemente bassa da permettere l’acquisizione dell’ingresso. +
-</WRAP>+
  
-L’asse si dirige verso il sensore collegato all’ingresso d'abilitazione impulso di zero con la+^:info:^La velocità dell'asse deve quindi essere sufficientemente bassa da permettere l'acquisizione dell'ingresso.^ 
 + 
 +L'asse si dirige verso il sensore collegato all'ingresso d'abilitazione impulso di zero con la
 normale velocità di posizionamento. Lo stato //st_prson// segnala che la procedura di preset è normale velocità di posizionamento. Lo stato //st_prson// segnala che la procedura di preset è
-in corso. Quando, nella sua corsa, l’asse incontra l’ingresso d'abilitazione impulso di zero+in corso. Quando, nella sua corsa, l'asse incontra l'ingresso d'abilitazione impulso di zero
 trasduttore, inverte la direzione ed assume la velocità lenta.\\ trasduttore, inverte la direzione ed assume la velocità lenta.\\
-Alla disattivazione dell’ingresso d'abilitazione impulso di zero è caricata la quota di preset sul+Alla disattivazione dell'ingresso d'abilitazione impulso di zero è caricata la quota di preset sul
 conteggio (parametro //posit//).\\ conteggio (parametro //posit//).\\
-L’asse si ferma, lo stato st_prson si disattiva e lo stato //st_prsok// si attiva per segnalare la +L'asse si ferma, lo stato st_prson si disattiva e lo stato //st_prsok// si attiva per segnalare la 
-conclusione della ricerca. Questo stato rimane attivo fino all’avviamento di una nuova procedura +conclusione della ricerca. Questo stato rimane attivo fino all'avviamento di una nuova procedura 
-di preset. All’accensione del sistema questo stato é sempre a zero (Figura 1).+di preset. All'accensione del sistema questo stato é sempre a zero (Figura 1).
  
 |Figura 1: caricamento preset utilizzando la sola camma di abilitazione.| |Figura 1: caricamento preset utilizzando la sola camma di abilitazione.|
Linea 586: Linea 571:
  
 === - Esempio === === - Esempio ===
-La lettura della posizione dell’asse risulta essere di 2 unità e si trova nel punto A. Si vuole+ 
 +La lettura della posizione dell'asse 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.\\
 Con le istruzioni: Con le istruzioni:
Linea 592: Linea 578:
 Asse:posit = Asse:posit + 2 Asse:posit = Asse:posit + 2
 </code> </code>
-l’asse assume la nuova posizione B.\\+l'asse assume la nuova posizione B.\\
 Con le istruzioni: Con le istruzioni:
 <code QCL> <code QCL>
Linea 600: Linea 586:
 E' raggiunta la posizione C. E' raggiunta la posizione C.
  
-<WRAP center round info 60%> +^:info:^Il comando è inviabile solamente se l'asse è fermo, condizione di st_still = 1.^
-Il comando è inviabile solamente se l’asse è fermo, condizione di st_still = 1. +
-</WRAP>+
  
-<WRAP center round info 60%> +^:info:^La modifica del valore di risoluzione (cntratio) o la scrittura della variabile posit, provoca l'azzeramento dei resti della conversione.^
-La modifica del valore di risoluzione (cntratio) o la scrittura della variabile posit, provoca l’azzeramento dei resti della conversione. +
-</WRAP>+
  
 {{:software:devices:eanpos:oopos3_13.png?nolink400|}} {{:software:devices:eanpos:oopos3_13.png?nolink400|}}
  
-Si noti che con le prime istruzioni l’asse ha compiuto un delta inferiore a 3 unità e quindi è+Si noti che con le prime istruzioni l'asse ha compiuto un delta inferiore a 3 unità e quindi è
 stato introdotto un errore.\\ stato introdotto un errore.\\
 Se si devono inviare comandi //DELCNT// in successione, é conveniente calcolare la grandezza Se si devono inviare comandi //DELCNT// in successione, é conveniente calcolare la grandezza
  • Ultima modifica: 2020/07/13 15:16