Indice

VC21LPFilter

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.

IMPLEMENTAZIONE

VC20LPFilter (Mode, Tsample, Tau, FilterIn, FilterOut)

Parametri:

IN/OUTTIPO VARIABILENOME DI ESEMPIODIM
INCONST / GLOBALModeFModo di funzionamento (0=precarica, 1=esecuzione filtro).
INCONST / SYSTEMTsampleWTempo di campionamento filtro (msec) [0÷32767].
INCONST / SYSTEMTauWCostante di tempo del filtro(ms)
[0÷32767]
INGLOBALFilterInLValore della variabile da filtrare
[-999999÷999999]
OUTGLOBALFilterOutLValore della variabile filtrata
[-999999÷999999]

Descrizione

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.

Esempio

;---------------------------------------------
; 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

Note