Vous êtes sur la page 1sur 32

3- Filtrage numérique

• Généralités sur les filtres numériques et


sur le filtrage
– Forme générale d’un filtre numérique
– Réponse en fréquence des systèmes
discrets
– Spécification et méthodologie de calcul
des filtres (numériques et analogiques)
– Classification des filtres
– Comparaison RIF-RII
• Structures des filtres numériques
– Structures non récursives
– Structures récursives
– Structures cascade, paralléle...
• Calcul des filtres RII
• Calcul des filtres RIF

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 81
3-1 Généralités sur les filtres et
sur le filtrage
• Forme générale d’un filtre numérique
B ( z ) b(0)  b(1) z 1 b(Q) z  Q
G ( z)  
A( z ) 1  a (1) z 1  a ( P ) z  P
Q

 (1  z z
i 1
i
1
)
 b(0) P

 (1  p z
i 1
i
1
)

• Les coefficients a(i) et b(j) sont réels


• Fonction de transfert G(z) à P pôles pi et
Q zéros zi réels ou en paires complexes
conjuguées
• Réponse impulsionnelle g(k)

G( z)  g(0)  g(1) z 1  g( k ) z  k 

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 82
Forme générale d’un filtre
numérique
• FILTRE RIF: Si P=0, le filtre n’a que
des zéros
B( z )
G( z)   b(0)  b(1) z 1 b(Q) z  Q
A( z)
Q

 b(0) (1  zi z 1 )
i 1

• Les coefficients b(k) forment la réponse


impulsionnelle

• La Réponse Impulsionnelle est de durée


Finie FILTRE RIF

• Filtre à moyenne mobile, ou filtre MA


(Moving Average).

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 83
Filtre RIF
• ATTENTION G(z) a Q zéros et Q pôles
situés à l’origine z=0
• ATTENTION la forme de G(z) peut être
trompeuse
• Exemple: Filtre moyenneur
1 / N k  0, N  1 1 N 1
g( k )  
 0 ailleurs
G ( z) 
N
z
i 0
i

1 1 z N 1 zN 1
G( z)  1  N 1
N 1 z N z ( z  1)

N zéros, N-1 pôles en


N zéros et 1 pôle z=0, 1 pôle en z=1
z=1 est à la fois pôle et zéro
il reste N-1 zéros et N-1 pôles en z=0
Traitement du Sigal - 3TC
Transparents C. Odet, Prof. GE 84
Forme générale des filtres
numérique
• FILTRE RII: Si G(z) a des pôles
(différents de z=0)
– La Réponse Impulsionnelle est de durée
Infinie
– Un pôle correspond à une réponse
impulsionnelle exponentielle

1
G( z) 
1  az 1  
i 0
a i i
z

g ( k )  a k pour k  0, 
Pôle en z=a
Remarque: série convergente pour |a|<1
g(k)

k
Traitement du Sigal - 3TC
Transparents C. Odet, Prof. GE 85
Filtres RII
• Si le filtre RII n’a que des pôles (et des
zéros en z=0)
– Filtre AR (Auto-Régréssif)
B( z) b(0)
G( z)  
A( z ) 1  a (1) z 1  a ( P) z  P
1
 b(0) P
 (1
i 1
 pi z 1
)

– Filtre tout-pôles, (All pole filter)


• Si le filtre RII a des pôles et des zéros
différents de z=0
B( z) b(0)  b(1) z 1 b(Q) z  Q
G( z)  
A( z) 1  a (1) z 1 a( P) z  P

Modèle ARMA d’ordre P et Q


Traitement du Sigal - 3TC
Transparents C. Odet, Prof. GE 86
Forme générale des filtres
numériques
• En règle générale
B( z) b(0)  b(1) z 1 b(Q) z  Q
G( z)  
A( z) 1  a (1) z 1 a( P) z  P

posséde Q zéros et P pôles et


• Q-P pôles en z=0 si Q>P
• P-Q zéros en z=0 si P>Q
Exemples
• 1) Voir filtre moyenneur
• 2) Filtre AR d’ordre 1

1 z
1   a z
i i
G( z)  
1  az i 0 za
g ( k )  a k pour k  0, 
Pôle en z=a
P=1, Q=0 donc 1 zéro en z=0
Traitement du Sigal - 3TC
Transparents C. Odet, Prof. GE 87
Forme générale des filtres
numériques
• Filtre stable si les pôles sont à l’intérieur
du cercle unité dans le plan des z

o
x
x
1
x
o
3 pôles z = -0.5 + 0.5 i , -0.5-0.5i , 0.5
2 zéros z = -1-i , -1+i

• Si les zéros sont aussi à l’intérieur du


cercle unité, le filtre est à phase minimale

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 88
Réponse en fréquence des filtres
numériques
• Evaluation de G(z) sur le cercle unité
• Evaluation de G(z)pour z=exp(j2pf)
f variant de 0 à 1
• Evaluation de G(z) pour z=exp(j2pfTe)
f variant de 0 à Fe=1/Te , fréquence
d’échantillonnage réelle
• Transformée de Fourier discrète de la
réponse impulsionnelle
• Représentation en module et en phase
• Périodique en fréquence (période 1 ou
Fe)
• Réponse impulsionnelle réelle
Module pair, phase impaire

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 89
Réponse en fréquence des filtres
numériques
• Exemple

1
H ( z) 
1  az 1  
k 0
a k k
z

rép.impuls. h( k )  a k , k  0

1
H( f )   
1  ae  j 2pf k 
h ( k ) e  j 2 pfk


TFD
1
H( f )   a e k  j 2 pfk

k 0 1  ae  j 2pf

1
H( f ) 
1  a 2  2a cos(2p f )

a sin(2pf )
Arg ( H ( f ))  ArcTan( )
1  a cos(2pf )

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 90
Réponse en fréquence des filtres
numériques
• Exemple (suite)
pour a=0,5

Module |H(f)|

Pair, période 1

Phase

Impaire, période 1

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 91
Réponse en fréquence des filtres
numériques
• Exemple
Filtre de Butterworth passe-bas ordre 2
Fréquence de coupure 0.25 (c.à.d 0.25 Fe)
MATLAB:
> [b,a]=butter(2,0.5) (2 = Fe)
b = 0.2929 0.5858 0.2929
a = 1.0000 0.0000 0.1716

0.2929  0.5858z 1  0.2929 z 2


H ( z) 
1  01716
. z 2

•Pôles et zéros ( > [z,p,k]=butter(2,0.5))


z = -1.0000 , -1.0000
p = 0.4142i , - 0.4142i

•Réponse en fréquence z = exp(j2pf)


f =[0,1]
Traitement du Sigal - 3TC
Transparents C. Odet, Prof. GE 92
Réponse en fréquence des filtres
numériques
• Exemple (suite)
Module Phase

x
(2)
o
x

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 93
Méthodologie de calcul des filtres

Application

Spécification

Calcul
Approximation
Réalisation
Test
Entrée Sortie
Filtre

• Spécification (Gabarit)
– Module de la réponse en fréquence
– Phase, temps de propagation de groupe
– Réponse impulsionnelle ou indicielle
Traitement du Sigal - 3TC
Transparents C. Odet, Prof. GE 94
Méthodologie de calcul des filtres
• Approximation
Spécifications H(p), H(z)
Trouver une fonction de transfert réalisable
dont la réponse (en fréquence, en temps
et/ou en phase) respecte la spécification

– Fonctions bien connues (tables, abaques)


• Butterworth, Tchebysheff, Bessel
Legendre, Cauer (filtres elliptiques)...
– Méthodes directes
• Manuelles
• Par ordinateur
– Méthodes itératives (par ordinateur!)
• Approximations optimales au sens
d’un certain critère

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 95
Méthodologie de calcul des filtres
• Synthèse (réalisation)
Choisir la structure, calculer les
composants, format des calculs et des
coefficients (nb de bits)...
– Analogique
• Filtres passifs
• Filtres actifs (Sallen&Key, NIC...)
– Numérique
• Circuits numériques spécifiques
• Programmation (mP, DSP...)
• FIR, IIR, récursif, non récursif, en
cascade, en parallèle, en treillis...
– Mixte
• Capacités commutées
• Approximation et synthèse sont parfois
intimement liées.
Traitement du Sigal - 3TC
Transparents C. Odet, Prof. GE 96
Méthodologie de calcul des filtres
• Test
La réalisation ne respecte pas toujours
l’approximation et les spécifications
– Réglage (analogique, coûteux)
– Retour en arrière
• Modification des spécification (!)
• Autre approximation
• Choix de la structure
• Choix des composants (précision).

• Les spécifications ne doivent pas être


trop rigoureuses, ou contradictoires.

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 97
Spécification des filtres
• Spécification par gabarit
Atténuation(dB)

60

40

3
0 8 10 15
Fréquence(kHz
Bande passante Bande coupée
Bande de transition

• Module de la réponse en fréquence


• Atténuation (inverse du gain)
• Filtre réel, donc module pair
• Simplification (ex: 60dB entre 10 et 15 kHz)
• Bande de transition INDISPENSABLE
Mais: Ordre du filtre, complexité de la
réalisation, temps de calcul...

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 98
Classification des filtres
• Classification fréquentielle
– Passe-bas
• Atténuation des hautes fréquences
– Passe-haut
• Atténuation des basses fréquences
– Passe-bande
• Atténuation des hautes et des basses
fréquences
– Coupe-bande ou réjecteur
• Atténuation d’une bande de
fréquences intermédiaires
– Autres : Dérivateur, intégrateur, réseau
déphaseur (passe-tout)

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 99
Classification des filtres
• Sélectivité A(dB)
– Passe-bas
fp
k 1
fa
fp fa f

– Passe-haut A(dB)

fa
k 1
fp
fa fp f

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 100
Classification des filtres
– Passe-bande
f p 2  f p1
k 1
f a 2  f a1
f p 2  f p1
B
f0 fa1 fp1 fp2 fa2
f 02  f p 2 f p1  f a 2 f a1 f0

– coupe-bande
f a 2  f a1
k 1
f p 2  f p1
f p 2  f p1
B
f0 fp1 fa1 fa2 fp2
f 02  f p 2 f p1  f a 2 f a1 f0

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 101
Classification des filtres
• Attention: cas des filtres numériques

Atténuation(dB)
60

40 40

0 10 15 Fe/2 Fe
Fréquence(kHz)

• Le gabarit est implicitement périodisé


• La bande «intéressante» est [0, Fe/2]
• Fe --------> 1
Fe/2 -------> 0,5
f ----------> f/Fe

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 102
Classification des filtres
pour les filtres numériques
• Classification d’après la réponse
impulsionnelle
– RIF (FIR) Réponse Impulsionnelle
finie
– RII (IIR) Réponse impulsionnelle
infinie
• Classification méthodologique
– Implantation non récursive (RIF)
y(n)=a0x(n)+a1x(n-1)+...+akx(n-k)
– Implantation récursive (RIF et RII)
y(k)= a0x(k)+a1x(k-1)+...+anx(k-n) -
b1y(k-1)-...-bmy(k-m)
– Implantation par Tr. de Fourier

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 103
Comparaison des filtres RIF et RII
Caractéristique Filtre FIR Filtre IIR

Fonction de ne contient que contient des


transfert des zéros pôles et des zéros

Réponse en Aucune Les méthode sont


fréquence restriction plutôt limitées
aux filtres passe-
bas passe-haut,
passe-bande et
réjecteur.
Réponse en Parfaitement Approximation
phase linéaire si d'une phase
nécessaire; linéaire
déphaseurs purs déphaseurs
irréalisables réalisables
Stabilité Toujours stables Les pôles doivent
être à l'intérieur
du cercle unité
Complexité de la Proportionnelle à Plus faible qu'un
structure la longueur de la filtre FIR pour la
réponse même sélectivité.
impulsionnelle
Sensibilité à la Faible, sauf dans Les pôles
quantification le cas d'une peuvent passer à
des coefficients réalisation l'extérieur du
et aux erreurs récursive cercle unité.
d'arrondi Apparition de

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 104
3-2 Structures de calcul des
filtres numériques
• Fonction de transfert en Z
Equations de réalisation
Filtre RIF Q
y (n)   b(i ) x (n  i ) 
i 0

b(0) x (n)  b(1) x (n  1) b(Q) x (n  Q)


Filtre RII
Y ( z) b(0)  b(1) z 1 b(Q) z  Q
G( z)  
X ( z) 1  a (1) z 1 a ( P) z  P
Y ( z)  a (1)Y ( z) z 1 ...a ( P)Y ( z) z  P 
b(0) X ( z)  b(1) X ( z) z 1 ...b(Q) X ( z) z  Q

Par transformée en Z inverse, on obtient:


y (n)  b(0) x (n)  b(1) x (n  1) b(Q) x (n  Q)
 a (1) y (n  1)  a ( P) y (n  P)

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 105
Structure des filtres numériques
• Calcul des équations précédentes
– Par programme (C, Matlab, langage
machine sur mP, DSP...)
– Avec une électronique spécifique
Additionneurs, multiplieurs,
registres (mémoires).
a
x(n) a x(n)

y(n)

x(n) x(n)+y(n)

x(n) x(n-1)
T

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 106
Exemple de réalisation programmée
«simpliste» d’un filtre numérique
/* b(0) + b(1) z -1 + b(2) z-2
H(z) = ------------------------------
1 + a(1) z -1 + a(2) z -2 */
int x[3],y[2], xin,yout=0;
float b[3], a[2];
/* xin contient l'echantillon d'entree */
x[0]=xin

/* calcul du numérateur */
for(i=0;i<3;i++) yout=yout+x[i]*b[i];

/* calcul du dénominateur , partie recursive du filtre */


for(i=0;i<2;i++) yout=yout-y[i]*a[i];

/* decalage du tampon d'entrée */


for(i=0;i<2;i++) x[i+1]=x[i];

/* decalage du tampon de sortie */


for(i=0;i<1;i++) y[i+1]=y[i];
y[0]=yout;

/* sortie de yout */

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 107
Structure des filtres numériques
• Structure non récursive ou
filtre transverse

x(n) T x(n-1) x(n-Q)


T T
b(0) b(1) b(2) b(Q-1) b(Q)
y(n)

y (n)  b(0) x (n)  b(1) x (n  1) b(Q) x (n  Q)

• Q mémoires (tampon, tableau à Q)


élements)
• Q multiplieurs
• Q additionneurs

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 108
Structure des filtres numériques
• Structure récursive
forme directe de type 1
x(n) T x(n-1) x(n-Q)
T T

b(0) b(1) b(2) b(Q-1) b(Q)

y(n)

-a(P) -a(P-1) -a(P-2) -a(1)

T T T

y (n)  b(0) x (n)  b(1) x (n  1) b(Q) x (n  Q)


 a (1) y (n  1)  a ( P) y (n  P)

• Q+P mémoires
• Q+P multiplieurs
• Q+P additionneurs

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 109
Structure des filtres numériques
• Structure récursive
forme canonique directe de type 2
x(n)

-a(P) -a(P-1) -a(P-2) -a(1)

T T T
b(0)
b(Q) b(Q-1) b(1)

y(n)

• Max(P,Q) mémoires
• P+Q multiplieurs
• P+Q additionneurs
• Variable intermédiaire mémorisée
Variable d’état ?

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 110
Structure des filtres numériques
• Structure cascade
– Décomposition en pôles et zéros
Q1 Q2

 (1  r z ) (1  z z
i 1
i
1

i 1
i
1
)(1  zi * z 1 )
G ( z )  b(0) P1 P2

 i 
(1
i 1
 s z 1
) (1  pi z 1

i 1
)(1  p * 1
i z )

Regroupement par paires de pôles et de zéros

b0 k  b1k z 1  b2 k z 2
N
G( z)   1 2
k 1 1  a 1k z  a 2k z

Cellule Cellule Cellule


2nd ordre 2nd ordre 2nd ordre

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 111
Structure des filtres numériques
• Structure paralléle
– Décomposition en fraction partielle
Bk (1  ek z 1 )
Np N1 N2
Ak
G ( z)   Ck z  k  1   1 * 1
k 0 k 1 1  ck z k 1 (1  d k z )(1  d kz )

eok  e1k z 1
Np Ns

  Ck z  k  1
k 0 k 1 1  a1k z  a2 k z  2

Cellule
2nd ordre

Cellule
x[n]
2nd ordre y[n]

Retard et
Multiplication

Traitement du Sigal - 3TC


Transparents C. Odet, Prof. GE 112

Vous aimerez peut-être aussi