Aller au contenu

Filtre numérique

Un article de Wikipédia, l'encyclopédie libre.

En électronique, unfiltrenumérique est un élément qui effectue un filtrage à l'aide d'une succession d'opérations mathématiques sur unsignal discret.C'est-à-dire qu'il modifie le contenu spectral du signal d'entrée en atténuant ou éliminant certaines composantes spectrales indésirées. Contrairement auxfiltres analogiques,qui sont réalisés à l'aide d'un agencement de composantes physiques (résistance,condensateur,inductance,transistor,etc.), les filtres numériques sont réalisés soit par des circuits intégrés dédiés, des processeurs programmables (FPGA,microprocesseur,DSP,microcontrôleur,etc.), soit par logiciel dans un ordinateur.

Les filtres numériques peuvent, en théorie, réaliser la totalité des effets de filtrage pouvant être définis par des fonctions mathématiques ou des algorithmes. Les deux principales limitations des filtres numériques sont la vitesse et le coût. La vitesse du filtre est limitée par la vitesse (l'horloge, le «clock» en anglais) du processeur. Pour ce qui est du coût, celui-ci dépend du type de processeur utilisé. Par contre, le prix des circuits intégrés ne cesse de diminuer, et les filtres numériques se retrouvent partout dans notre environnement, radio, téléphone cellulaire, télévision, lecteursMP3,etc.

Les filtres numériques étant généralement réalisés par des processeurs, ils sont décrits à l'aide delangages de programmation.

Un filtre numérique peut être défini par une équation différentielle, c'est-à-dire l'opération mathématique du filtre dans le domaine temporel (discret).

La forme générale du filtre d'ordre M est l'une des suivantes:

,
.
Exemple:

Fonction de transfert

[modifier|modifier le code]

Unefonction de transfert,dans le domaine fréquentiel (Transformée en Z), permet également de définir un filtre numérique. Ainsi, lafonction de transfertgénérale d'ordre N d'un filtre numérique est la suivante:

,

ou autrement écrit

.

Les valeurs des coefficientsetfixeront le type du filtre: passe-bas, passe-haut, etc.

Exemple:

Classification

[modifier|modifier le code]

RIF — Filtre à réponse impulsionnelle finie

[modifier|modifier le code]

Il y a deux grandes familles de filtres numériques: la première, les filtresRIF(filtres à réponse impulsionnelle finie), en anglais FIR(finite impulse response).Ce type de filtre est dit fini, car saréponse impulsionnellese stabilisera ultimement à zéro. Un filtre FIR est non récursif, c'est-à-dire que la sortie dépend uniquement de l'entrée du signal, il n'y a pas de contre-réaction. Ainsi, les coefficientsde la forme générale des filtres numériques sont tous égaux à zéro.

Une propriété importante des filtres RIF est que les coefficients du filtresont égaux à laréponse impulsionnelledu filtre. D'autre part, laforme temporelledu filtre est tout simplement laconvolutiondu signal d'entréeavec les coefficients (ou réponse impulsionnelle)(ou).

Un exemple de filtre FIR simple est unemoyenne glissante.Effectivement, effectuer la moyenne sur une série de données est équivalent à appliquer un filtre FIR à coefficient constant 1/N.

Note: Voir ce qu'est unbuffer circulaire.

RII — Filtre à réponse impulsionnelle infinie

[modifier|modifier le code]

Les filtres de la seconde famille, lesRII(Filtre à réponse impulsionnelle infinie), en anglais IIR(infinite impulse response),possèdent uneréponse impulsionnellequi ne s'annule jamais définitivement ou qui converge éventuellement vers zéro à l'infini. Ce type de filtre est récursif, c'est-à-dire que la sortie du filtre dépend à la fois du signal d'entrée et du signal de sortie, il possède ainsi une boucle de contre-réaction(feedback).Les filtres IIR sont principalement la version numérique desfiltres analogiques traditionnels:Butterworth,Tchebychev,Bessel,Elliptique.