Questa è una vecchia versione del documento!
DEVICE COUNTER3
0.1 Introduzione
Il device COUNTER3 permette di acquisire un'informazione proveniente da un contatore bidirezionale. Le principali caratteristiche del device sono:
-
conversione degli impulsi nell'unità di misura scelta dall'utente;
-
aggiornamento della posizione con recupero della frazione dell'unità di misura;
-
cattura del valore di posizione su attivazione di un ingresso digitale in interruzione;
-
comparazione tra la posizione rilevata e un valore di soglia per l'attivazione di uscite digitali.
0.2 Dichiarazione del device
Per poter usufruire del device è necessario eseguirne la dichiarazione nell'apposita sezione INTDEVICE della unit di configurazione.
INTDEVICE <device name> COUNTER3 <TCamp> <ICont> <IdxA> <Out1> <Out2>
Dove:
Nome campo | Descrizione | Esempio | Note |
---|---|---|---|
<device name> | Nome assegnato al device. | Count | - |
COUNTER3 | Parola chiave che identifica il device contatore bidirezionale. | - | - |
<TCamp> | Tempo di campionamento device (1÷255 ms). | 4 | - |
<ICont> | Indirizzo contatore presente nella scheda. | 3.CNT01 | Inserendo il valore X.X il campo viene ignorato |
<IdxA> | Numero della linea di interrupt hardware per la cattura del conteggio | 1 | Inserendo il valore X il campo viene ignorato |
<Out1> | Indirizzo uscita 1 di comparazione | 3.OUT01 | Inserendo il valore X.X il campo viene ignorato |
<Out2> | Indirizzo uscita 2 di comparazione | 3.OUT02 | Inserendo il valore X.X il campo viene ignorato |
Esempio:
INTDEVICE Count COUNTER3 2 2.CNT02 3 2.OUT01 2.OUT02
Tutti i campi della dichiarazione sono obbligatori e devono essere presenti sulla stessa linea. Impostare “X.X” oppure “X” nel caso una risorsa non sia disponibile o non venga utilizzata. Disabilitare una risorsa significa disabilitare tutte le funzionalità del device che la utilizzano.
0.3 Descrizione del funzionamento
Lo schema a blocchi del device è presentato di seguito:
0.3.0.1 Factors
Il blocco “Factors” calcola i fattori di conversione di posizione e velocità. Il “position factor” (PF) è un coefficente per la conversione della posizione espressa con l'unità di misura del trasduttore nell'unità di misura della posizione(Um), e viceversa. Tipicamente l'unità di misura della posizione può essere ad esempio metri piuttosto che millimetri piuttosto che centesimi, mentre l'unità di misura del trasduttore, l'encoder, è sempre impulsi. I parametri che concorrono al calcolo del position factor sono pulse e measure ed è calcolato come rapporto tra questi due.
0.3.0.2 Acquisizione della posizione attuale su ingresso digitale per interruzione
I comandi INTENBL e INTDSBL abilitano (st_intenbl=1) e disabilitano (st_intenbl=0) la linea di interrupt collegata allimpulso di zero del trasduttore o ad un altro sensore presente. Il valore del parametro capture definisce su quale fronte di tale impulso verrà congelato il conteggio istantaneo; il conteggio catturato viene posto nel parametro delta. Lo stato st_capture segnala che la cattura è avvenuta.
0.3.0.3 Comparatori
Il device mette a disposizione anche due comparatori che possono essere utilizzati per confrontare il valore corrente del parametro posit con due valori (setpoint1 e setpoint2) introdotto dall'utente. Di conseguenza i comparatori agiranno su due uscita digitali, andando rispettivamente ad attivarle o disattivarle quando le soglie introdotte verranno superate secondo diverse condizioni. Le uscite disponibili sono due (come si evince anche dalla dichiarazione del device e dallo schema) ed il livello di personalizzazione è molto elevato: si può scegliere per ogni comparatore quale uscita comandare, in base a quali condizioni. Il parametro mode1 (che controlla il comparatore 1) sceglie la politica di attivazione o disattivazione dell'uscita corrispondete rispettando determinate regole.
Nella figura sono esemplificate le diverse modalità di funzionamento:
-
mode 0: l'uscita resta nel suo stato;
-
mode 1: l'uscita viene attivata quando la posizione in impulsi primari diventa maggiore del setpoint;
-
mode 2: l'uscita viene disattivata quando la posizione in impulsi primari diventa maggiore del setpoint;
-
mode 3: l'uscita viene attivata quando la posizione in impulsi primari diventa minore del setpoint;
-
mode 4: l'uscita viene disattivata quando la posizione in impulsi primari diventa minore del setpoint;
-
mode 5: l'uscita viene attivata quando la posizione in impulsi primari diventa maggiore del setpoint e viene disattivata quando la posizione in impulsi primari diventa minore del setpoint;
-
mode 6: l'uscita viene disattivata quando la posizione in impulsi primari diventa maggiore del setpoint e viene attivata quando la posizione in impulsi primari diventa minore del setpoint.
0.3.0.4 Delta posizione attuale
Il device visualizza sempre la posizione assoluta dellasse; il cambio di conteggio può essere eseguito anche con una scrittura diretta nel nuovo valore nel parametro posit.
Volendo sottrarre 100 unità di misura al conteggio è possibile:
Count.posit = Count.posit - 100
Questa operazione introduce un errore perché impone la posizione posit = -100, quando lasse poteva avere una posizione intermedia tra una unità di misura e la successiva (es. 100.3). Questa frazione (0.3) viene persa ed il ripetersi di queste operazioni provocano laccumularsi di un errore non trascurabile.
A tale scopo esiste invece il comando DELCNT che permette di modificare il posit di un valore impostabile tramite il parametro delta.
Per esempio supponiamo di aver configurato pulse e measure in modo che la posizione sia espressa in decimi di grado. Se posit esprime la posizione angolare e vogliamo che questa sia sempre compresa tra zero e 360 gradi dovremmo aggiungere il seguente codice:
IF Count.posit GE 3600 Count.delta = -3600 Count.DELCNT ENDIF
Per le condizioni di esecuzione del comando vedere la descrizione dello stesso.
Il funzionamento del comando DELCNT è assicurato anche nel caso in cui una unità di misura non sia esprimibile in un numero finito di impulsi primari. Per esempio con i parametri measure = 1000 e pulse = 1024, il valore 3600 dell'esempio precedente corrisponde a 3686,4 impulsi. Grazie ad un sofisticato algoritmo interno il device riesce a considerare la parte frazionaria di questo valore e tramite degli accumulatori interni essa diventa parte dell'informazione utilizzata per modificare il valore di posit.
Esempio:
si supponga la seguente impostazione: pulse = 10, measure = 1. Si supponga inoltre che la lettura della posizione dell'asse risulti essere 2 e si trovi nel punto A. Si vogliono sommare alla posizione posit due unità di misura.
Con le istruzioni:
Count.posit = Count.posit + 2
l'asse assume la nuova posizione B. Con le istruzioni:
Count.delta = 2 Count.DELCNT Asse
viene raggiunta la posizione C.
Si noti che se viene modificato direttamente posit senza utilizzare il comando DELCNT (come nel primo esempio) è introdotto un errore.
Se si devono inviare comandi DELCNT in successione, è conveniente calcolare la grandezza da sommare ed inviare una sola volta il comando. Se ciò non fosse possibile bisogna prestare attenzione a non inviare comandi successivi senza interporre una istruzione di lettura su parametro device. Esempio:
Count.delta = 3 Count.DELCNT WAIT Count.delta Count.delta = 40 Count.DELCNT
0.4 Gestione errori device
La presenza di un errore nel device viene segnalato dallo stato st_error.
Quando st_error è uguale a 1, troviamo presente sulla variabile errcode il tipo di errore intervenuto (vedi tabella) e nella variabile errvalue una indicazione sulla causa dellerrore.
Se il device va in errore, per poter riprendere la lavorazione bisogna cancellare lo stato st_error attraverso il comando RSERR.
0.5 Gestione warning device
La presenza di un warning nel device viene segnalato dallo stato st_warning.
Quando st_warning è uguale a 1, troviamo presente sulla variabile wrncode il tipo di warning intervenuto (vedi tabella) e nella variabile wrnvalue una indicazione sulla causa che ha provocato il warning.
Codice | Priorità | Descrizione |
---|---|---|
1 | 0 | Comando non eseguito |
Per cancellare lo stato st_warning bisogna inviare il comando RSWRN.
0.6 Elenco Parametri
measure
Breve descrizione | Misura di riferimento per il calcolo del fattore di conversione tra impulsi primari ed unità di misura |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | Um |
Range valido | 1÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica lo spazio, in unità di misura, percorso dall'asse per ottenere gli impulsi primari impostati nel parametro pulse. Questo parametro è utilizzato per il calcolo del fattore di conversione tra impulsi primari ed unità di misura.
posit = encoder * measure / pulse
Il rapporto measure / pulse deve avere un valore compreso tra 0.00935 e 1.
pulse
Breve descrizione | Numero di impulsi primari per il calcolo del fattore di conversione tra impulsi primari e unità di misura |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 1÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica il numero di impulsi primari che genererà il trasduttore bidirezionale per ottenere un movimento pari a measure. Questo parametro è utilizzato per il calcolo del fattore di conversione tra impulsi primari ed unità di misura.
posit = encoder * measure / pulse
Il rapporto measure / pulse deve avere un valore compreso tra 0.00935 e 1.
posit
Breve descrizione | Posizione attuale in unità di misura |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | Um |
Range valido | - |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
È il valore della posizione istantanea dell'asse in unità di misura.
posit = encoder * measure / pulse.
encoder
Breve descrizione | Posizione attuale in impulsi primari |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | Impulsi primari |
Range valido | - |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Esprime la posizione attuale in impulsi primari.
delta
Breve descrizione | Variazione della posizione attuale per l'utilizzo del comando DELCNT |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | Um |
Range valido | -999999÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
È il valore che viene sommato alla posizione attuale quando viene inviato un comando DELCNT. Inoltre sul parametro delta viene memorizzata la posizione quando si utilizza l'acquisizione sull'attivazione di un ingresso digitale per interruzione.
axetype
Breve descrizione | Tipo di asse |
---|---|
Dimensione | Flag |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | -999999÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Permette di selezionare il tipo di asse con cui si sta lavorando:
-
0: asse lineare,
-
1: asse circolare (angolare). Il conteggio riparte da zero dopo aver raggiunto il valore di measure.
capture
Breve descrizione | Modalità di cattura della posizione su attivazione di un ingresso digitale per interruzione |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷2 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Il parametro definisce il modo di cattura della posizione in impulsi primari sull'attivazione di un ingresso digitale per interruzione :
-
0: disabilitato,
-
1: One-shot su fronte di discesa. Viene catturata la posizione istantanea in impulsi primari sul primo fronte di discesa del segnale dell'ingresso digitale;
per interruzione dopo l'attivazione di st_intenbl;
-
2: One-shot su fronte di salita. Viene catturata la posizione istantanea in impulsi primari sul primo fronte di salita del segnale dell'ingresso digitale per interruzione dopo l'attivazione di st_intenbl.
tbf
Breve descrizione | Tempo di campionamento del frequenzimetro |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷5 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Definisce il tempo di campionamento del frequenzimetro:
-
0: 240 ms,
-
1: 480 ms,
-
2: 24 ms,
-
3: 120 ms,
-
4: 960 ms,
-
5: 1200 ms.
Il device, per il calcolo della frequenza dei segnali in ingresso al contatore bidirezionale (parametro frq), conta il numero di impulsi ricevuti in un intervallo di tempo definito tramite il parametro tbf e calcola un valore medio. Minore è il tempo di campionamento più veloce sarà l'aggiornamento del parametro frq, ma bisogna prestare attenzione a basse frequenze perché il tempo di campionamento non potrebbe essere sufficientemente lungo per raccogliere campioni.
frq
Breve descrizione | Frequenza dei segnali di ingresso |
---|---|
Dimensione | Long |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | Hz |
Range valido | - |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
È il valore della frequenza dei segnali in ingresso al contatore bidirezionale. L'aggiornamento è eseguito con frequenza dettata dal tempo di campionamento scelto tramite il parametro tbf.
mode1
Breve descrizione | Modalità di comando dell'uscita indicata in selout1 da parte del comparatore |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷6 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Con questo parametro si decidono le regole di attivazione e disattivazione dell'uscita indicata nel parametro selout1 da parte del comparatore.
selout1
Breve descrizione | Uscita comandata dal comparatore 1 |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica quale uscita viene comandata dal comparatore 1:
-
0: Out1,
-
1: Out2.
setpoint1
Breve descrizione | Soglia di comparazione per il comparatore 1 |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | Um |
Range valido | -999999÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Definisce il setpoint (la soglia) con cui viene confrontato il valore istantaneo di posizione in impulsi primari. L'uscita modificata di conseguenza è quella indicata dal parametro selout1.
timer1
Breve descrizione | Tempo di ritardo di attivazione dell'uscita selout1 |
---|---|
Dimensione | Word |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | ms |
Range valido | -999999÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Relativamente all'uscita indicata da selout1, questo parametro definisce un intervallo di tempo che intercorre tra l'evento che comanda la commutazione dell'uscita e la commutazione vera e propria (in altre parole viene introdotto un ritardo alla attivazione o disattivazione dell'uscita digitale.)
mode2
Breve descrizione | Modalità di comando dell'uscita indicata in selout1 da parte del comparatore |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷6 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Con questo parametro si decidono le regole di attivazione e disattivazione dell'uscita indicata nel parametro selout2 da parte del comparatore.
selout2
Breve descrizione | Uscita comandata dal comparatore 1 |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica quale uscita viene comandata dal comparatore 2:
-
0: Out1,
-
1: Out2.
setpoint2
Breve descrizione | Soglia di comparazione per il comparatore 1 |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | Um |
Range valido | -999999÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Definisce il setpoint (la soglia) con cui viene confrontato il valore istantaneo di posizione in impulsi primari. L'uscita modificata di conseguenza è quella indicata dal parametro selout2.
timer2
Breve descrizione | Tempo di ritardo di attivazione dell'uscita selout1 |
---|---|
Dimensione | Word |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | ms |
Range valido | -999999÷999999 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Relativamente all'uscita indicata da selout2, questo parametro definisce un intervallo di tempo che intercorre tra l'evento che comanda la commutazione dell'uscita e la commutazione vera e propria (in altre parole viene introdotto un ritardo alla attivazione o disattivazione dell'uscita digitale.)
errcode
Breve descrizione | Codice di identificazione errore |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | 0÷100 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di errore intervenuto nel sistema. Quando st_error = 1 si trova presente sulla variabile errcode il tipo di errore intervenuto e nella variabile errvalue una indicazione sulla causa dell'errore. Se il device va in errore, per riprendere la lavorazione bisogna cancellare lo stato st_error attraverso il comando RSERR.
Questo device non prevede alcun codice di errore.)
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 | 0÷100 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica la causa dell'errore intervenuto nel sistema. Il codice è valido solo se st_error = 1.)
wrncode
Breve descrizione | Codice di identificazione warning |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | 0÷100 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di warning intervenuto nel sistema. Lo stato st_warning indica un evento non grave che garantisce comunque il funzionamento del device. Quando st_warning è uguale a 1, troviamo presente nella variabile wrncode il tipo di warning intervenuto (vedi tabella) e nella variabile wrnvalue/ una indicazione sulla causa che ha provocato il warning. Per cancellare lo stato st_warning bisogna inviare il comando RSWRN.)
Codice | Priorità | Descrizione |
---|---|---|
1 | 0 | Comando non eseguito |
—-
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 | 0÷100 |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica la causa del warning intervenuto nel sistema.)
0.7 Elenco Stati
st_cntlock
Breve descrizione | Stato di aggiornamento posizione disabilitato |
---|---|
Valore di default | Ritentivo |
ID stato | - |
Descrizione:
Segnalazione di aggiornamento posizione bloccato:
-
0: aggiornamento posizione abilitato,
-
1: aggiornamento posizione disabilitato
0.7.0.1 st_cntrev
Breve descrizione | Stato di inversione aggiornamento posizione |
---|---|
Valore di default | Ritentivo |
ID stato | - |
Descrizione:
Segnalazione di aggiornamento posizione invertito:
-
0: aggiornamento posizione non invertito,
-
1: aggiornamento posizione invertito
0.7.0.2 st_intenbl
Breve descrizione | Stato di attivazione dell'ingresso digitale per interruzione |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Segnala l'abilitazione alla cattura della posizione istantanea dell'ingresso digitale per interruzione; viene attivato dal comando INTENBL e disattivato dal comando INTDSBL o sul fronte di salita di st_capture.
st_capture
Breve descrizione | Attivazione della cattura della posizione istantanea |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Viene attivato alla cattura della posizione istantanea, è resettato tramite il comando RSCAPTURE.
st_int
Breve descrizione | Stato dell'ingresso digitale per interruzione |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Indica lo stato dell'ingresso digitale per interruzione :
-
0: ingresso digitale per interruzione disattivo,
-
1: ingresso digitale per interruzione attivo.
st_cmp1
Breve descrizione | Stato della comparazione 1 |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Segnalazione di attivazione della comparazione 1:
-
0: comparazione 1 disattiva,
-
1: comparazione 1 attiva
st_cmp2
Breve descrizione | Stato della comparazione 2 |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Segnalazione di attivazione della comparazione 2:
-
0: comparazione 2 disattiva,
-
1: comparazione 2 attiva
st_error
Breve descrizione | Presenza di un errore |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Indica lo stato di errore del device, per riconoscere il tipo di errore si deve far riferimento alle variabili errcode ed errvalue:
-
0: errore non presente,
-
1: errore presente
st_warning
Breve descrizione | Presenza di un warning |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Indica lo stato di warning del device, per riconoscere il tipo di warning si deve far riferimento alle variabili wrncode e wrnalue:
-
0: warning non presente,
-
1: warning presente
0.8 Elenco Comandi
I comandi a disposizione per gestire il device sono qui elencati in ordine di piorità decrescente. Esistono due vie alternative per eseguire un comando: * Tramite i pannelli watches di QView * Con una istruzione QCL
Nel secondo caso l'esecuzione del programma QCL sarà bloccata fino al termine del comando stesso la cui durata è comunque compresa fra 0 e 2 tempi di campionamento.
CNTLOCK
Breve descrizione | Disabilita l'aggiornamento della posizione attuale |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Disabilita l'aggiornamento della posizione attuale. In questa situazione l'eventuale spostamento dell'asse non viene rilevato.
CNTUNLOCK
Breve descrizione | Abilita l'aggiornamento della posizione attuale |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Abilita l'aggiornamento della posizione attuale.
CNTREV
Breve descrizione | Inversione dell'aggiornamento posizione |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Consente di invertire il segno dell'aggiornamento posizione; lo stato st_cntrev è posto a 1.
CNTDIR
Breve descrizione | Aggiornamento posizione non invertita |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Disabilita una eventuale inversione dell'aggiornamento posizione; lo stato st_cntrev è posto a zero.
INTENBL
Breve descrizione | Abilitazione della cattura della posizione istantanea su attivazione dell'ingresso digitale per interruzione |
---|---|
Condizione | capture>0 |
ID comando | - |
Descrizione:
Attiva la cattura della posizione attuale sulla attivazione dell'ingresso digitale per interruzione dedicata, il valore verrà memorizzato nel parametro delta. Attiva lo stato st_intenbl.
INTDSBL
Breve descrizione | Disabilitazione della cattura della posizione attuale su attivazione dell'ingresso digitale per interruzione |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Disattiva la cattura della posizione attuale sulla attivazione dell'ingresso digitale per interruzione dedicata. Disattiva lo stato st_intenbl.
RSCAPTURE
Breve descrizione | Disattivazione dello stato di cattura |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Disattiva lo stato di capture st_capture.
DELCNT
Breve descrizione | Comando di modifica di posit di un valore pari a delta |
---|---|
Condizione | st_intenbl=0 |
ID comando | - |
Descrizione:
La posizione dell'asse viene modificata sommandogli algebricamente il valore specificato nella variabile delta.
SETCMP1
Breve descrizione | Attivazione della comparazione 1 |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Forza l'attivazione dello stato st_cmp1.
RESCMP1
Breve descrizione | Reset della comparazione 1 |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Azzera lo stato st_cmp1.
SETCMP2
Breve descrizione | Attivazione della comparazione 2 |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Forza l'attivazione dello stato st_cmp2.
RESCMP2
Breve descrizione | Reset della comparazione 2 |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Azzera lo stato st_cmp2.
RSERR
Breve descrizione | Reset dello stato di errore |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Azzera lo stato st_error.
RSWRN
Breve descrizione | Reset dello stato di warning |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Azzera lo stato st_warning.
0.9 Limitazioni
Se vengono modificati i parametri measure o pulse successivamente allinvio del comando DELCNT, vengono azzerati i resti della conversione del delta spazio in impulsi.
0.10 Esempio applicativo
Questo esempio è compilabile nell'ambiente QView 6.0 o superiori.
0.10.1 Unit di configurazione
;************************************************************************************* ; COUNTER3 example ;************************************************************************************* ; Bus declaration BUS 1 1K31F 20 2 . . 3 1MG8F . 4 . ; Input declaration INPUT ifEnableZ F 3.INP01 ;Zero pulse capture enabling ifEnableComp F 3.INP03 ;Comparation enabling ; Output declaration OUTPUT out201 F 3.OUT01 ;Comparation output #1 out202 F 3.OUT02 ;Comparation output #2 ; Device declaration INTDEVICE Count COUNTER3 2 3.CNT01 1 3.OUT01 3.OUT02 END
0.10.2 Unit di gestione del COUNTER3
SYSTEM slPrsPos L IN ;Quota di preset slSet1 L IN ;Setpoint 1 slSet2 L IN ;Setpoint 2 GLOBAL gfApp01 F gfApp02 F BEGIN ;------------------------------------------------------------------------------------- ; Initialization ;------------------------------------------------------------------------------------- Count.measure = 1000 ;measure per round Count.pulse = 1000 ;pulse per round Count.capture = 1 ;set capture on rise edge IF slSet1 EQ 0 slSet1 = 500 ;Default value ENDIF IF slSet2 EQ 0 slSet2 = 100 ;Default value ENDIF MAIN: IF ifEnableZ ;If the input is ON Count.INTENBL ;Zero pulse enabling ELSE Count.INTDSBL ;Zero pulse disabling ENDIF IF Count.st_capture ;When the count has captured Count.delta = -(Count.delta - slPrsPos) ;load delta Count.DELCNT ;Set the new position Count.RSCAPTURE ;Reset the capture ENDIF IF ifEnableComp ;When it is enabled IF NOT gfApp01 Count.mode1 = 5 ;Set Mode1 for comparation 1 Count.selout1 = 0 Count.setpoint1 = slSet1 Count.timer1 = 0 Count.mode2 = 6 ;Set Mode2 for comparation 2 Count.selout2 = 1 Count.setpoint2 = slSet2 Count.timer2 = 0 gfApp01 = 1 gfApp02 = 0 ENDIF ELSE ;When it is not enabled IF NOT gfApp02 Count.mode1 = 0 ;Comparation 1 disabled RESOUT out201 ;Reset output Count.selout1 = 0 Count.mode2 = 0 ;Comparation 1 disabled RESOUT out202 ;Reset output Count.selout2 = 1 gfApp01 = 0 gfApp02 = 1 ENDIF ENDIF WAIT 1 JUMP MAIN END