This is an old revision of the document!
DEVICE ANINP
0.1 Introduction
-
The device handles the reading and processing of an analog input.
-
The read data is a word to 16-bit signed which you can add an offset, enter a scaling factor and activate a low-pass RC filter type software.
-
Input resolution specifications are listed in the file adapter hardware.
Wiring and connections of the equipment described in this manual, must comply the European standard EN60204-1.
Note: Input resolution specification are reporter in the hardware dossier with the describing the card (or tool). |
---|
0.2 Installation
0.2.1 Device declaration in the configuration unit
In the configuration unit, the BUS section must be declared must be declared so that they are
present the hardware resources required for the implementation of the ANINP device. Must be present
at least one analog input with a maximum resolution of 16 bits.
In the INTDEVICE section of the configuration unit to add the following definition:
;--------------------------------- ; Devices declaration ;--------------------------------- INTDEVICE ... <nome device> ANINP Tcamp IChn Type
dove:
<nome device> | Device name |
NINP | Keyword that identifies the device analog input |
Tcamp | Time sampling device (1÷255 ms) |
IChn | input address ADC |
Type | ID number input type (refer to technical data sheet hardware) |
Warning: It is necessary that each definition are present on the same line. |
---|
0.2.2 Example
;--------------------------------- ; Device declaration ;--------------------------------- INTDEVICE AnSensor ANINP 2 2.AI01 1
0.3 Operation
When the system is powered, the device checks the correct input type declaration use the configuration defined in the unit (Type). If the channel diagnostics ends successfully, data is upgraded on the basis of the time of sampling. NIf errors or inaccuracies are found, the st_errcfgState is set to one and the value of the variableoutbitis forced to zero. The conversion of the data output from the device (outbit), in the measure unit required for the application, is activated by means of scale factors (scaleA, scaleB e scaleC) in accordance with the formula:
outUm = (scaleA x outbit / scaleB) + scaleC
In addition to this updated release based on the sample time of the device, is available the outUmF exit, filtered using a charging time tfilter programmable (expressed in ms).
This feature allows to filter any disturbances and fluctuations superimposed to the wanted signal with the ability to customize the time of Office of the filter charge (tfilter). |
---|
0.3.1 Configurazione
Una singolo ingresso può essere gestito da più device ANINP contemporaneamente, a condizione che il numero identificativo dell'ingresso Type, inserito nella dichiarazione del device, sia uguale; in caso contrario l'ingresso analogico viene configurato come l'ultimo device dichiarato nel file di configurazione.
0.4 Comandi e parametri
0.4.1 Simbologia adottata
Il nome del parametro, stato o comando viene riportato alla sinistra della tabella.
R
Indica se il relativo parametro o stato è ritentivo (al momento dellinizializzazione del device
mantiene lo stato precedentemente definito), oppure lo stato che assume al momento
dellinizializzazione del device.
Se il device non necessita di inizializzazione il campo R indica il valore che il parametro o stato
assume allaccensione della scheda.
R = Ritentivo
0 = Al momento dellinizializzazione del device il valore viene forzato a zero.
1 = Al momento dellinizializzazione del device il valore viene forzato a uno.
- = Al momento dellinizializzazione del device viene presentato il valore significativo.
D
Indica la dimensione del parametro.
F = Flag
B = Byte
W = Word
L = Long
S = Single Float
0.4.1.1 Condizioni
Vengono descritte tutte le condizioni necessarie affinché il parametro sia considerato corretto
o perché il comando venga accettato.
In alcuni casi vengono specificati dei valori limite per laccettazione del parametro: se vengono
introdotti dei valori esterni ai limiti impostati, il dato viene comunque accettato; pertanto devono
essere previsti opportuni controlli dellapplicativo tali da garantire il corretto funzionamento.
Per lesecuzione di un comando, tutte le relative condizioni devono necessariamente essere
soddisfatte; in caso contrario il comando non viene eseguito.
A
Indica la modalità di accesso.
R = Read (lettura).
W = Write (scrittura).
RW = Read / Write.
0.5 Tabella parametri
NOME | D | R | A | Condizioni | Descrizione |
---|---|---|---|---|---|
outbit | W | - | R | Nessuna | Output measure in bits Valore letto dal canale di ingresso compensato dell'Offset. Range valido: 0 ÷ 32767 |
offset | W | R | RW | Nessuna | Offset compensation Offset uscita DAC in bit. Definisce il valore in bit della correzione relativa all'ingresso analogico in modo da compensare l'eventuale deriva del sistema. Range valido: -32768 ÷ 32767 |
scaleA | W | R | RW | Nessuna | Scale A Valore intero parametro A formula di scaling. Range valido: -32768 ÷ 32767 |
scaleB | W | R | RW | Nessuna | Scale B Valore parametro B utilizzato nella formula di scaling. Deve essere necessariamente diverso da zero. Range valido: -32768 ÷ 32767 |
scaleC | W | R | RW | Nessuna | Scale C Valore parametro C utilizzzato nella formula di scaling. Range valido: -32768 ÷ 32767 |
outUm | L | - | R | Nessuna | Output measure in unity Uscita derivata dalla formula di scaling. Range valido: -32768 ÷ 32767 |
tfilter | W | R | RW | Nessuna | Filter time Tempo di carica del filtro RC. Se tfilter < = Tcamp device, il filtro è disattivato. Valore espresso in unità ms. Range valido: 0 ÷ 32767 |
outUmF | L | - | R | Nessuna | Filtered output in unity of measure Uscita in unità di misura, filtrata. Range valido: -32768 ÷ 32767 |
0.6 Tabella stati
NOME | D | R | A | Condizioni | Descrizione |
---|---|---|---|---|---|
st_errcfg | F | - | R | Nessuna | Configuration error Segnala che è stato rilevato un errore nella configurazione dell'ingresso. 0 = Non è stato rilevato nessun errore. 1 = È stato rilevato un errore. |
0.7 Limitazioni
0.7.1 Scaling
ScaleB deve essere impostato diverso da zero, in caso contrario OutUm viene forzato a 0.
0.7.2 Filtro
Il tempo di carica del filtro RC tfilter deve essere impostato maggiore o uguale al tempo di campionamento del device (Tcamp), in caso contrario viene disattivato il filtro ed il parametro OutUmF viene aggiornata con lo stesso valore di OutUm.
0.7.3 Offset
Il parametro offset viene sommato allingresso analogico acquisito (outbit), non viene eseguito il controllo sulloverflow della somma.
0.7.4 Configurazione
Nel caso che un singolo canale venga gestito da più device ANINP aventi Type diversi, il compilatore non rileva errori e il canale viene impostato con lultimo Type dichiarato.
Una singola risorsa hardware (ogni singolo ingresso) può essere gestita da più device ANINP contemporaneamente, a condizione che il numero identificativo dellingresso (Type), inserito nella dichiarazione del device (file di configurazione), sia uguale; in caso contrario lingresso analogico viene configurato come lultimo device dichiarato nel file di configurazione.
0.8 Esempio applicativo
0.8.1 Unit di configurazione
;************************************************************************************* ; Nome Modulo: Ex_Aninp.CNF Progetto: Ex_ANINP ; Autore: QEM srl Data : 01/05/99 ; Sistema: QMove1 / QCL3 Libreria: 1LIB3B04 ; Funzionalità: Esempio gestione ANINP Release: 0 ;------------------------------------- Note ------------------------------------------ ; [1] - Applicativo di esempio per utilizzo device ANINP ;************************************************************************************* ;------------------------------------------------------------------------------------- ; Definizione Costanti ;------------------------------------------------------------------------------------- CONST ;------------------------------------------------------------------------------------- ; Definizione Variabili SYSTEM ;------------------------------------------------------------------------------------- SYSTEM slSet1 L ;Setpoint 1 slSet2 L ;Setpoint 2 ;------------------------------------------------------------------------------------- ; Definizione Variabili GLOBAL ;------------------------------------------------------------------------------------- GLOBAL ;------------------------------------------------------------------------------------- ; Definizione Variabili TIMER ;------------------------------------------------------------------------------------- TIMER ;------------------------------------------------------------------------------------- ; Definizione DATAGROUP ;------------------------------------------------------------------------------------- DATAGROUP ;-------------------------------------------------------------------------------------; Configurazione Bus ;------------------------------------------------------------------------------------- BUS 1 1CPUB 02 2 1AI8B 00 3 1MIXA 00 4 . ;------------------------------------------------------------------------------------- ; Definizione Variabili INPUT ;------------------------------------------------------------------------------------- INPUT ;------------------------------------------------------------------------------------- ; Definizione Variabili OUTPUT ;------------------------------------------------------------------------------------- OUTPUT ofGTSet1 F 3.OUT01 ;Segnalazione superamento setpoint 1-> ofLTSet2 F 3.OUT02 ;Segnalazione superamento setpoint 2<- ;------------------------------------------------------------------------------------- ; Dichiarazione device interni ;------------------------------------------------------------------------------------- INTDEVICE ;Nome Tipo TCamp Contatore Type Asse ANINP 0004 2.AI01 2 END
0.8.2 Gestione ANINP
;************************************************************************************* ; Nome File: TASK_00.MOD ; Progetto: EX_ANINP ; Descrizione: Gestione Posizionamento ;************************************************************************************* ;------------------------------------------------------------------------------------- ; Operazioni di Inizializzazione Asse ;------------------------------------------------------------------------------------- Asse:offset = 0 ;Tensione di offset ;------------------------------------------------------------------------------------- ; Fattore di scala: (scaleA * outbit / scaleB) + scaleC ; outUm minima = (4 * 0 / 8 ) + 3 = 3 ; outUm massima = (4 * 4095 / 8) + 3 = 2050 ;------------------------------------------------------------------------------------- Asse:scaleA = 4 ;Fattore di scala A Asse:scaleB = 8 ;Fattore di scala B Asse:scaleC = 3 ;Fattore di scala C Asse:tfilter = 10 ;Tempo del filtro di acquisizione IF slSet1 EQ 0 slSet1 = 1500 ENDIF IF slSet2 EQ 0 slSet2 = 300 ENDIF ;------------------------------------------------------------------------------------- ; Comparazioni sull'ingresso analogico ;------------------------------------------------------------------------------------- ; Variabili utilizzate ; slSet1 : Quota di comparazione per uscita ofGTSet1 (da impostare con Qview) ; slSet2 : Quota di comparazione per uscita ofLTSet2 (da impostare con Qview) ;------------------------------------------------------------------------------------- MAIN: IF Asse:outUmF GT slSet1 ;Se l'ingresso analogico è > del setpoint 1 SETOUT ofGTSet1 ;Attiva l'uscita ofGTSet1 ELSE RESOUT ofGTSet1 ;Disattiva l'uscita ofGTSet1 ENDIF IF Asse:outUmF LT slSet2 ;Se l'ingresso analogico è < del setpoint 2 SETOUT ofLTSet2 ;Attiva l'uscita ofLTSet2 ELSE RESOUT ofLTSet2 ;Disattiva l'uscita ofLTSet2 ENDIF WAIT 1 JUMP MAIN END