Il device interno ABSCNT gestisce l'acquisizione e la manipolazione della posizione proveniente da sensori di tipo assoluto. Questi sensori sono tipicamente encoder assoluti con varie tipologie di interfaccia di uscita ( parallela, protocollo SSI, ecc.). Le principali caratteristiche del device sono:
Per poter usufruire del device è necessario eseguirne la dichiarazione nell'apposita sezione INTDEVICE della unit di configurazione.
;--------------------------------- ; Dichiarazione device interni ;--------------------------------- INTDEVICE ... <nome> ABSCNT TCamp IAbsCont ICont
Dove:
Nome campo | Descrizione | Esempio | Note |
---|---|---|---|
<nome> | Nome assegnato al device | Axe | - |
ANPOS2 | Parola chiave che identifica il device ABSCNT | - | - |
TCamp | Tempo di campionamento del device espresso in millisecondi | 4 | - |
IAbsCont | numero del contatore assoluto (verificare la documentazione HW del prodotto per stabilire il corretto valore da impostare) | 1 | |
ICont | indirizzo contatore incrementale virtuale generato dal device(sempre 1.CNTx) | 1.CNT01 | Inserendo il valore X.X il campo viene ignorato |
![]() | 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. |
---|
Il blocco “Communication configuration” configura opportunamente i blocchi del protocollo in accordo con il numero di bit da acquisire, con il numero di bit da “scartare”, con la modalità di acquisizione, ecc..
Il blocco “SSI protocol interface” esegue l'acquisizione del dato da un trasduttore con protocollo di comunicazione SSI. Il dato letto deve successivamente essere manipolato per ottenere l'informazione di posizione assoluta.
Il blocco “Communication error control” esegue le operazioni di controllo della “bontà” del dato acquisito dal trasduttore. I controlli possono essere la parità e/o, per i trasduttori che lo prevedono, la verifica di alcuni bit di errore presenti nel frame SSI.
Il blocco “Speed checking” esegue il controllo della velocità di rotazione in RPM rispetto al valore massimo e ne segnala l'eventuale superamento. Il suo compito non è tanto quello di verificare che non venga superata una certa velocità quanto quello di rilevare eventuali errori nell'acquisizione del dato.
Il blocco “Reversing” gestisce l'inversione della direzione di rotazione che causa l'incremento della posizione determinata dallo stato st_cntdir.
Il blocco “Module” si occupa di manipolare opportunamente il dato di posizione acquisito e sottratto all'offset per riportarlo all'interno del range 0÷(pulserev x revnum) quando signenab vale 0 ed all'interno del range -(pulserev x revnum)/2 ÷ (pulserev x revnum)/2 quando signenab vale 1.
Il blocco “Position conversion” esegue la conversione dal valore di posizione in bit al valore di posizione in unità di misura. Il dato ottenuto (posit) può avere rappresentazione decimale o sessagesimale a seconda dell'impostazione del parametro posittype.
Breve descrizione | Tipo di protocollo |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷0 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Definisce il tipo di protocollo utilizzato per la acquisizione della posizione dal trasduttore:
0= SSI
Breve descrizione | Numero bits frame SSI |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 1÷63 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
E' il numero totale di bits di cui è composto il frame SSI.
Breve descrizione | Numero bits non significativi in testa al frame SSI |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 1÷15 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
E' il numero di bits, a partire dal MSbit, che non sono significativi per la ricostruzione del dato di posizione acquisito dal trasduttore.
Breve descrizione | Numero bits non significativi in coda al frame SSI |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 1÷15 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
E' il numero di bits, a partire dal LSbit, che non sono significativi per la ricostruzione del dato di posizione acquisito dal trasduttore.
Breve descrizione | Codice del dato |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
E' il tipo di codifica del dato di posizione acquisito dal trasduttore:
0: Codice binario
1: Codice gray
Breve descrizione | Tipo di logica del dato |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Indica il tipo di logica del dato di posizione acquisito dal trasduttore:
0: normale
1: inversa
Breve descrizione | Controllo di parità |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷2 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Indica il tipo di controllo di parità sul dato SSI:
0: disabilitato
1: parità dispari
2: parità pari
Breve descrizione | Posizione bit parità |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷31 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Posizione del bit di parità all'interno del frame SSI. Questo parametro è significativo solo se par > 0.
Breve descrizione | Posizione bit errore 1 |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷31 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Posizione del bit errore 1 all'interno del frame SSI. Parametro attualmente non implementato.
Breve descrizione | Posizione bit errore 2 |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷31 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Posizione del bit errore 1 all'interno del frame SSI. Parametro attualmente non implementato.
Breve descrizione | Modalità acquisizione dato |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
E' la modalità temporale di acquisizione del dato dal trasduttore:
0: ogni tempo di campionamento device ABSCNT
1: continuo
Breve descrizione | Frequenza di clock utilizzata nel protocollo SSI |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷3 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Seleziona la frequenza di clock utilizzata nel protocollo SSI:
0: 1MHz
1: 500KHz
2: 250KHz
3: 125KHz
Breve descrizione | Tempo monoflop |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | uS (microsecondi) |
Range valido | 0÷127 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Indica il tempo in microsecondi di monoflop. Questo è il tempo che viene atteso tra due acquisizioni con protocollo SSI, quando l'aggiornamento del dato è di tipo continuo(updatemode = 1). Il valore impostato sarà approssimato per eccesso ad un multiplo del periodo della frequenza di clock (inverso di clockrate). Se il valore impostato non è ottenibile dal device perchè troppo grande viene segnalato un warning.
Breve descrizione | Numero delle posizioni/giro |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 1÷999999 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Numero delle posizioni per giro del trasduttore (dato di targa).
Breve descrizione | Numero giri |
---|---|
Dimensione | Word |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 1÷999999 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
E' il numero di giri gestiti dal trasduttore riportati sui dati di targa. Il valore è significativo quando si utilizzano trasduttori multigiro, per i trasduttori monogiro impostare il valore 1.
Breve descrizione | Abilitazione segno |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Abilita l'interpretazione del dato acquisito dal trasduttore con il segno.
0: posizione acquisita solo positiva
1: posizione acquisita solo positiva e negativa
Breve descrizione | Tipo di rappresentazione parametro posit |
---|---|
Dimensione | Byte |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | 0÷1 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Definisce il tipo di rappresentazione del valore di posizione acquisita sul parametro posit:
0: decimale
1: sessagesimale (gradi e primi)
Breve descrizione | Misura di riferimento per il calcolo del position factor |
---|---|
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.
Breve descrizione | Numero di impulsi primari per il calcolo del position factor |
---|---|
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 (1 impulso encoder = 4 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.
Breve descrizione | Velocità massima |
---|---|
Dimensione | Word |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | RPM |
Range valido | 0÷32767 |
ID parametro | - |
Condizioni di scrittura | st_updenab = 0 |
Descrizione:
Indica la velocità massima espressa in giri al minuto(RPM) dove per giro si intende il valore di posizione in unità di misura corrispondente agli impulsi definiti in pulserev. Questo parametro viene utilizzato per controllare la bontà del valore acquisito dal trasduttore; in pratica il device verifica che tra due valori consecutivi di posizione acquisiti vi sia una variazione “coerente” con le velocità e che tale variazione non superi quella che si otterrebbe quando il trasduttore ruota al valore impostato sul parametro. Impostando valore 0 si disabilita il controllo.
Breve descrizione | Valore in bit posizione assoluta |
---|---|
Dimensione | Long |
Valore di default | 0 |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | - |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
E' il valore espresso in bit ( posizioni encoder) della posizione assoluta del trasduttore. Il valore assunto da questo parametro va da 0 a (pulserev · revnum) quando signenab vale 0 e va da -(pulserev· revnum)/2 a (pulserev · revnum)/2 quando signenab vale 1.
Breve descrizione | Valore in UM posizione assoluta |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | Um |
Range valido | |
ID parametro | |
Condizioni di scrittura | - |
Descrizione:
E' il valore espresso in Unità di misura della posizione assoluta del trasduttore. Si ottiene dalla seguente formula: encoder · measure / pulse.
Breve descrizione | parametro 01 |
---|---|
Dimensione | Long |
Valore di default | 0 |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Parametro 01. Non utilizzato, riservato per usi futuri.
Breve descrizione | parametro 02 |
---|---|
Dimensione | Long |
Valore di default | 0 |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Parametro 02. Non utilizzato, riservato per usi futuri.
Breve descrizione | parametro 03 |
---|---|
Dimensione | Long |
Valore di default | 0 |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Parametro 03. Non utilizzato, riservato per usi futuri.
Breve descrizione | parametro 04 |
---|---|
Dimensione | Long |
Valore di default | 0 |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Parametro 04. Non utilizzato, riservato per usi futuri.
Breve descrizione | parametro ritentivo 01 |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Parametro ritentivo 01. Non utilizzato, riservato per usi futuri.
Breve descrizione | parametro ritentivo 02 |
---|---|
Dimensione | Long |
Valore di default | Ritentivo |
Tipo di accesso | Read - Write |
Unità di misura | - |
Range valido | |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Parametro ritentivo 02. Non utilizzato, riservato per usi futuri.
Breve descrizione | Codice di identificazione dell'errore. |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | - |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di 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 | - |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di causa dell'errore rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
Breve descrizione | Codice di identificazione warning |
---|---|
Dimensione | Byte |
Valore di default | 0 |
Tipo di accesso | Read |
Unità di misura | - |
Range valido | |
ID parametro | - |
Condizioni di scrittura | - |
Descrizione:
Indica il tipo di 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 | |
Condizioni di scrittura | - |
Descrizione:
Indica la causa del warning rilevato dal device. Per ulteriori informazioni consultare il capitolo dedicato.
Breve descrizione | Stato abilitazione aggiornamento |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Indica che l'acquisizione del dato di posizione dal trasduttore è abilitata e regolata dal parametro updatemode.
0 = acquisizione disabilitata.
1 = acquisizione abilitata.
Breve descrizione | Stato di direzione antioraria per l'incremento del conteggio. |
---|---|
Valore di default | Ritentivo |
ID stato | - |
Descrizione:
Indica la direzione di rotazione che causa l'incremento del conteggio.
0 = orario.
1 = antiorario.
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 fare riferimento alle variabili wrncode e wrnvalue.
0 = warning non presente.
1 = warning presente.
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 e errvalue.
0 = errore non presente.
1 = errore presente.
Breve descrizione | Stato Stato 1 generico |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Stato disponibile per future implementazioni.
Breve descrizione | Stato Stato 2 generico |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Stato disponibile per future implementazioni.
Breve descrizione | Stato Stato 3 generico |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Stato disponibile per future implementazioni.
Breve descrizione | Stato Stato 4 generico |
---|---|
Valore di default | 0 |
ID stato | - |
Descrizione:
Stato disponibile per future implementazioni.
Breve descrizione | Abilitazione aggiornamento conteggio. |
---|---|
Condizione | st_updenab = 0 |
ID comando | - |
Descrizione:
Abilita l'acquisizione del dato di posizione dal trasduttore in accordo con il parametro updatemode.
Breve descrizione | Disabilitazione aggiornamento conteggio. |
---|---|
Condizione | st_updenab = 1 |
ID comando | - |
Descrizione:
Disabilita l'acquisizione del dato di posizione dal trasduttore.Con l'aggiornamento disabilitato è possibile modificare i parametri di comunicazione.
Breve descrizione | Direzione incremento conteggio antiorario. |
---|---|
Condizione | st_updenab = 0 |
ID comando | - |
Descrizione:
Imposta la direzione di incremento del conteggio ad antiorario.
Breve descrizione | Direzione incremento conteggio orario. |
---|---|
Condizione | st_updenab = 0 |
ID comando | - |
Descrizione:
Imposta la direzione di incremento del conteggio ad orario.
Breve descrizione | Reset dello stato di errore. |
---|---|
Condizione | st_error = 1 |
ID comando | - |
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 | st_warning = 1 |
ID comando | - |
Descrizione:
Azzera lo stato st_warning.
Breve descrizione | Comando generico 1. |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Comando disponibile per future implementazioni.
Breve descrizione | Comando generico 2. |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Comando disponibile per future implementazioni.
Breve descrizione | Comando generico 3. |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Comando disponibile per future implementazioni.
Breve descrizione | Comando generico 4. |
---|---|
Condizione | - |
ID comando | - |
Descrizione:
Comando disponibile per future implementazioni.
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 ed errvalue, 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 generico |
2 | Errore hardware: l'hardware non supporta dispositivi di conteggio assoluto. |
Per mezzo del parametro errvalue è possibile ottenere informazioni più dettagliate riguardo l'errore.
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 e wrnvalue, 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 | parametro non accettato: la scrittura su un parametro non è andata a buon fine. |
2 | comando non eseguito. |
3 | velocità troppo alta. |
4 | errore di parità. |
Per mezzo del parametro wrnvalue è possibile ottenere informazioni più dettagliate riguardo il warning.
wrnvalue | Descrizione |
---|---|
0 | nessuna informazione aggiuntiva riguardo il warning. |
1 | operazione non abilitata. |
2 | dato fuori range. |