V = Variabili
C = Funzioni di Calcolo
La funzione VC21LPFilter implementa un filtro digitale passa basso del primo ordine per valori compresi nel range da -999999 a +999999. E' prevista anche l'opzione di precarica del filtro.
VC20LPFilter (Mode, Tsample, Tau, FilterIn, FilterOut)
Parametri:
IN/OUT | TIPO VARIABILE | NOME DI ESEMPIO | DIM | |
---|---|---|---|---|
IN | CONST / GLOBAL | Mode | F | Modo di funzionamento (0=precarica, 1=esecuzione filtro). |
IN | CONST / SYSTEM | Tsample | W | Tempo di campionamento filtro (msec) [0÷32767]. |
IN | CONST / SYSTEM | Tau | W | Costante di tempo del filtro(ms) [0÷32767] |
IN | GLOBAL | FilterIn | L | Valore della variabile da filtrare [-999999÷999999] |
OUT | GLOBAL | FilterOut | L | Valore della variabile filtrata [-999999÷999999] |
La funzione VC21LPFilter implementa un filtro passa basso digitale del primo ordine la cui costante di tempo (Tau) è definita nei parametri passati alla funzione stesso. Supponendo di partire da un valore della variabile di ingresso pari a zero, l'uscita del filtro assume un valore pari al 63% dell'ingresso dopo il tempo Tau. Allo stesso modo la frequenza di taglio del filtro è . L'argomento Mode se vale zero permette di precaricare il filtro ad un valore impostabile con l'argomento FilterIn.
;--------------------------------------------- ; Project : REG_012 ; Module Name : ReadTemp ; Author : ; Description : Read temperature & filter ;--------------------------------------------- MAIN: CALL ReadTemp swTsample = 100 ;100 ms tempo campionamento filtro swTau = 5000 ;5 sec costante di tempo filtro gfMode = 1 ; normale esecuzione VC21LPFilter (gfMode,swTsample, swTau, gwFilterIn, gwFilterOut) WAIT 1 JUMP MAIN