Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
1. Introduction
1
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
x(t )e
j t
X ( ) = dt
t =
X() est appel le spectre du signal x(t). X() est en gnral une
fonction complexe, qui a un module et une phase pour chaque valeur
de la frquence . Les pages 334 337 de van den Enden prsentent
la transforme de Fourier X() de quelques signaux x(t) simples.
t = nT
j
X (e ) = x[n]e
n =
jn
pour signifier que le spectre de Fourier X(ej) dun signal discret est
priodique, contrairement au spectre dun signal temps continu qui
nest pas priodique en gnral.
2
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Soit donc un filtre discret rcursif dordre 1, dcrit par lquation aux
diffrences suivante (premire description du filtre):
[n] = 1 pour n = 0
= 0 ailleurs
et poser que la mmoire du filtre est nulle (ici, cela signifie h[-1] = 0).
Lquation aux diffrences scrit donc
On a donc, squentiellement :
3
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
h[0] = [0] = 1
h[1] = a h[0] = a
h[2] = a h[1] = a2
h[3] = a h[2] = a3
h[k] = ak
4
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
5
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
qui est une opration commutative (i.e. quon peut inverser le rle de
x[n] et h[n]). La proprit de commutativit est explique la page
82 de van den Enden.
e jn e jn
x[n] = sin(n) =
2j
y[ n] = h[k ]x[n k ]
k =
e j ( n k ) e j ( n k )
= h[k ]
k = 2j
1 1
=
2 j k =
h[k ]e j ( n k )
2 j k =
h[k ]e j ( nk )
6
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
1 jn 1 jn
y[ n] = e h[k ]e jk
e h[k ]e jk
2j k = 2j k =
h[k ]e
k =
jk
h[k ]e
k =
jk
1 jn 1 jn
y[ n] = e H ( e j ) e H * ( e j )
2j 2j
7
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
H (e j ) = A( )e j ( )
H * (e j ) = A( )e j ( )
1 jn 1 jn
y[ n] = e A( )e j ( ) e A( )e j ( )
2j 2j
A( ) j (n+ ( )) A( ) j (n+ ( ))
= e e
2j 2j
e j (n+ ( )) e j (n+ ( ))
= A( )
2j
= A( ) sin(n + ( ))
x[n] = sin( n)
8
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Dans le cas particulier du filtre rcursif dordre 1 que nous traitons ici
et dfinit par lquation aux diffrences
h[k] = ak
= a e
n =
n jn
H (e ) = a n e jn
j
n =0
1
H (e ) = a n e jn =
j
n =0 1 ae j
9
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
1
H ( e j ) =
1 0.8e j
Le gain de ce filtre pour une sinusode pure de frquence est
1 1
A( ) = H (e j ) = =
1 0.8e j 1 0.8 cos( ) + j 0.8 sin( )
1
=
(1 0.8 cos( )) 2 + (0.8 sin( )) 2
1 1
( ) = H (e j ) = =
1 0.8e j 1 0.8 cos( ) + j 0.8 sin( )
0.8 sin( )
= atan
1 0.8 cos( )
10
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Notez que lon peut obtenir ces courbes directement avec la fonction
freqz, comme suit :
11
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Quelle est donc le type de filtre dcrit par lquation aux diffrences
Daprs la forme du gain A() la page 11, on conclut quil sagit dun
filtre de nature passe-bas , dont le gain DC est gal 5 et donc le
gain = est gal environ . Vrifions cela avec la fonction filter
dans MATLAB :
12
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
X ( z) = x[n]z
n =
n
13
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
X k ( z) = x[n k ]z
n =
n
= x[n k ]z
n =
( nk )
z k
= z k x[n k ]z
n =
( n k )
= z k x[m]z
m =
m
(o m = n k )
k
= z X ( z)
(1 - a z-1)Y(z) = X(z)
14
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Y (z) 1
H ( z) = =
X ( z ) 1 az 1
H (e j ) = H ( z ) z =e j
1 1
H (e j ) = =
1 az 1 z = e j 1 ae j
1 z
H ( z) = =
1 az 1 z a
Afin de faire la synthse des notions vues dans cette section, nous
allons appliquer ces nouveaux outils aux filtres rcursifs dordre 2 et
faire quelques exemples. Nous reviendrons ensuite dans la section 5
la stabilit des filtres. Nous y introduirons le calcul des ples et des
zros dun filtre discret, et nous verrons (comme pour les filtres
analogiques) que les ples doivent se situer dans une rgion prcise
du plan complexe pour que le systme soit stable.
15
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Y (z) 1 z2
H ( z) = = =
X ( z ) 1 a1 z 1 a 2 z 2 z 2 a1 z a 2
a1 1
p1, 2 = a1 + 4a 2
2
2 2
(On emploie la lettre p pour dcrire ces racines puisque ce sont les
ples du filtre plus de dtails la section 5.0). On peut donc crire la
fonction de transfert comme suit
z2
H ( z) =
( z p1 )( z p 2 )
p1 = ae j
p2 = ae j
o a est leur module et est leur phase (si les racines sont
complexes, elles viennent toujours par paires conjugues), on peut
alors crire la fonction de transfert comme suit
16
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
z2
H ( z) =
( z p1 )( z p 2 )
z2
=
( z ae j )( z ae j )
z2
=
z 2 2az cos( ) + a 2
17
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
18
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Exemple 4.1
Solution
19
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Pour la partie (b), le code MATLAB est tout fait similaire, sauf bien
sr la valeur des ples dont les phases sont plus leves (2 plutt que
0.3). Le code MATLAB pour la partie (b) est donc le suivant :
20
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
----------------
Comme montr dans la section 3.0 sur les filtres dordre 1, on trouve
la rponse en frquence H(ej) dun filtre numrique partir de sa
fonction de transfert H(z) en posant
z = ej
Y ( z) 1
H (z) = =
X ( z ) 1 a1 z 1 a 2 z 2
21
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
1
H ( e j ) =
1 a1e j a2 e j 2
Encore une fois, linformation que donne H(ej) est le gain et la phase
du filtre pour une sinusode pure en entre, de frquence . (On laisse
au lecteur le plaisir dcrire le module et la phase de la fonction H(ej)
ci-dessus).
1 1
Gain DC = H (e j 0 ) = =
1 a1e a 2 e
0 0
1 a1 a2
(avec une phase nulle ou gale , selon le signe).
1
H (z) =
1 z 1 + 0.5 z 2
1
H ( e j ) =
1 e j + 0.5e j 2
et ainsi, son gain DC ( =0) est 2 et son gain = est 2/3. Pour
avoir le gain et la phase du filtre aux autres frquences, il faut
22
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
23
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Dans les systmes discrets, le principe est le mme sauf que ce nest
plus laxe imaginaire qui joue le rle des frquences. En effet, pour
dterminer la rponse en frquence dun filtre numrique, on remplace
z par ej dans H(z). Le point ej est un nombre complexe de module 1
et de phase . Ceci reprsente un point sur le cercle de rayon 1 dans le
plan complexe. Ainsi, pour un filtre discret, cest le cercle de rayon 1
qui joue le rle de laxe des frquences . On retrouve ici la limite de
lchantillonnage puisque laxe des frquences est de longueur finie (le
cercle). A = correspond Fe/2, la frquence de Nyquist (moiti de la
frquence dchantillonnage).
( z 1)( z + 1)
H ( z) =
( z 0.8 j )( z + 0.8 j )
z1 = 1
z2 = -1
p1 = 0.8 j
p2 = -0.8 j
Graphiquement, on a :
24
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
z 2 1
H ( z) =
z 2 + 0.64
1 z 2
H ( z) =
1 + 0.64 z 2
(1 + 0.64 z 2 )Y ( z ) = (1 z 2 ) X ( z )
25
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
do
26
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Toutes ces notions sont couvertes au chapitre 4 de van den Enden, qui
propose aussi quelques exercices la fin du chapitre. On suggre
fortement de rsoudre ces exercices, dont la rponse pour certains est
donne la fin du livre.
27
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
7.0 Exercices
Exercice 7.1
Exercice 7.2
Donnez
Exercice 7.3
28
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
Exercice 7.4
K ( z z1)( z z 2)
H ( z) =
( z p1)( z p 2)
Exercice 7.5
29
GEI605 Traitement du signal
Analyse des filtres numriques
Roch Lefebvre, Professeur
30