synthŁse de filtres -...
TRANSCRIPT
1
Cours de
Traitement du signal- Synthèse de filtres -1ère partie : Filtres Analogiques
Benoît [email protected]
2
Cours de "Synthèse de filtres", 1ère partie
Plan
Introduction généraleGénéralités et rappels sur le filtrage
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.1) Cellules du 1er et du 2e ordreI.1.2) Réalisation électroniqueI.1.3) Association des cellules élémentaires
I.2) Filtres de ButterworthI.3) Filtres de TchebyscheffI.4) Filtres de CauerI.5) Filtres de BesselI.6) Comparaison des performancesI.7) Résumé des différentes étapes de synthèseI.8) Exemple complet
3
Introduction
Définitions
e(t) : entrée s(t) : sortie h(t) : réponse impulsionnelle (à δ(t))
E(p) =TL[e(t)] S(p)=TL[s(t)]
Représentations
)p(E)p(S)p(H =
)f(E)f(S)f(Hou
)j(E)j(S)j(H =
ωω=ω
NM,dt
)t(edbdt
)t(sdaM
0mm
m
m
N
0nn
n
n ≤=∑∑==
∫+∞
∞−
τττ−== d)(e)t(h)t)(h*e()t(s
Domaine temporel Domaine fréquentiel (complexe)
p=jω)t(h
TL
Equation différentielle
Réponse impulsionnelle
Réponse à une entrée quelconque
Fonction de transfert de Laplace
Fonction de transfert harmonique
TF
TF
TL
Signaux quelconques
Signaux sinusoïdaux
Introduction générale (1/4)
4
Objectif
Se rapprocher des filtres idéaux (le plus simplement possible)
passe-bas passe-haut passe-bande coupe-bande
Autre type de filtre courant : passe-tout (déphaseur pur)
1
fc f1 f2 f1 f2fc
1 1 1
Introduction Introduction générale (2/4)
)j(H ω
0fc f1 f2 f1 f2fc
0 0 0)j(Hlog20 ω
1)j(H ω
0)j(Hlog20 ω
f
f
f
f
5
Caractérisation des filtres "physiques"
- type : passe-bas, passe-haut, passe-bande : coupe-bande, passe-tout
- fréquence(s) de coupure
- pente des variations (liée à lordre du filtre)
- retard de phase
- retard de groupe
Si la phase est linéaire, tg est constant ↔ le signal ne subit pas de déformation.
Introduction Introduction générale (3/4)
ωωϕ−=ϕ
)(t
ωωϕ−=
d)(d
gt
6
Stabilité
Condition par rapport aux pôles
Un système est stable si tous les pôles de sa fonction de transfert de Laplace sont situés dans le demi-plan situéà gauche de laxe imaginaire du plan de la variable p :
plan p
Explication
Pôle réel p0 :
Pôles complexes conjugués p1,2=α±jβ :
Condition par rapport à la réponse impulsionnelle
Soit h(t) la réponse impulsionnelle dun système. Ce système est stable si : ∫+∞
−∞=∞<
tdt)t(h
tpL
0
0Ae)t(hpp
A)p(H =→←−
=
)tsin(.eA)t(h)pp)(pp(
A)p(H tL
21
ωω=→←−−
= α
risque dinstabilité
Introduction Introduction générale (4/4)
Re
Im
zone destabilité
7
Cellule passe-bas du 1er ordre
Gain en dB :
Fonction de transfert harmonique :
Cellule passe-haut du 1er ordre
c
j1
1)j(H
ωω+
=ω
)j(Hlog20)(HdB ω=ω
Cellules élémentaires de filtrage : 1er ordreI) Synthèse de filtres analogiques
I.1) Cellules élémentaires de filtrageI.1.1) Cellules du 1er et du 2e ordre
c
c
j1
j)j(H
ωω+
ωω
=ωpente=20dB/décade
pente=-20dB/décadepente=-20dB/décade
8
Cellule passe-bas du 2e ordre
Exemple dun filtre passe-bas du 2e ordre :
ξ coefficient damortissement
( , Q facteur de qualité)
Gain en dB :
Le cas ξ=0,7 est intéressant, puisque on a une réduction de gain assez limitée (-3dB), et une pente 40dB/déc.
2
cc
jj21
1)j(H
ωω+
ωωξ+
=ω
)j(Hlog20)(HdB ω=ω
Cellules élémentaires de filtrage : 2e ordre (1/3)
Q21=ξ
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.1) Cellules du 1er et du 2e ordre
ξ=0,1
ξ=0,7
pente=-40dB/décade
ξ=2
ξ=0,1
ξ=0,7
pente=-40dB/décade
ξ=2
9
Cellule passe-bande du 2e ordre
Exemple dun filtre passe-bas du 2e ordre :
bande passante :
avec fréquence centrale
Gain en dB :
2
cc
2
c
jj21
j)j(H
ωω+
ωωξ+
ωω
=ω
)j(Hlog20)(HdB ω=ω
Cellules élémentaires de filtrage : 2e ordre (2/3)I) Synthèse de filtres analogiques
I.1) Cellules élémentaires de filtrageI.1.1) Cellules du 1er et du 2e ordre
Qff 0=∆
21 cc0 fff ×=
ξ=0,7
pente=-20dB/décade
ξ=2
ξ=0,1
10
Cellules du 1er et du 2e ordre
1er ordre
Passe-bas : Passe-haut :
2er ordre
Passe-bas : Passe-haut :
Passe-bande : Coupe-bande :
Déphaseur :
Cellules élémentaires de filtrage : 2e ordre (3/3)I) Synthèse de filtres analogiques
I.1) Cellules élémentaires de filtrageI.1.1) Cellules du 1er et du 2e ordre
2
cc
2
c
jj21
j1
ωω+
ωωξ+
ωω+
2
cc
2
cc
jj21
jj21
ωω+
ωωξ+
ωω+
ωωξ−
2
00
2
0
jj21
j
ωω+
ωωξ+
ωω
2
00
0
jj21
j2
ωω+
ωωξ+
ωωξ
c
j1
1
ωω+
c
c
j1
j
ωω+
ωω
2
cc
jj21
1
ωω+
ωωξ+
11
Différentes formes des fonctions de transfert
harmonique (régime sinusoïdal) en variable de Laplace en variable de Laplace réduite
(forme normalisée
↔ indépendante de ωc)
Exemple : cellule passe-bas du 2e ordre
utile pour étude en fréquence : gain en dB et phase
(cellules élémentaires)
utile pour étude temporelle avec signaux (causals)
quelconques, étude des pôles (étude stabilité, factorisation)
idem variable de Laplace, avec écriture simplifiée
(=variable de Laplace réduite)
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.1) Cellules du 1er et du 2e ordreDifférentes formes des fonctions de transfert
)j(H ω )s(H)p(Hpj =ω s/p c =ω
2
cc
jj21
1)j(H
ωω+
ωωξ+
=ω
2ss211)s(H+ξ+
=
2
cc
pp21
1)p(H
ω
+ω
ξ+
=
12
Intérêt de la forme normalisée
Toute létude peut porter sur la forme normalisée ; indépendamment de ωc.
Au final, il faut "dénormaliser" la fonction de transfert, cest à dire remplacer s par jω/ωc, pour pouvoir réaliser le filtre
satisfaisant aux paramètre du filtrage..
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.1) Cellules du 1er et du 2e ordreDifférentes formes des fonctions de transfert
2
cc
jj21
1)j(H
ωω+
ωωξ+
=ω2ss21
1)s(H+ξ+
=
c
jsωω=
s11)s(H+
=
c
j1
1)j(H
ωω+
=ω
13
Passage du cas passe-bas aux autres cas
Le passage dun type à lautre seffectue facilement par changement de variable.
Passe-bas → passe-haut
Passe-bas → passe-bande
avec
B : bande passante
fc1, fc2 : fréquences de coupure
Passe-bas → coupe-bande f0 : fréquence centrale du filtre
s1s →
+→
s1s
B1s
0
cc
fff
B 12−
=
1
s1sBs
−
+→
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.1) Cellules du 1er et du 2e ordreTransformation du type de filtrage
14
Réalisation par circuits passifs
1er ordre
passe-bas passe-haut
2e ordre
passe-bas passe-bande passe-haut
Méthode de calcul
Chacun de ces montages peut être vu comme un pont diviseur de tension
avec 2 impédances complexes Z1 et Z2.
Dans le cas du 2e ordre, lune des 2 impédances est elle-même constituée
de 2 impédances complexes en série ou parallèle.
Réalisation des cellules élémentaires par circuits passifsI) Synthèse de filtres analogiques
I.1) Cellules élémentaires de filtrageI.1.2) Réalisation électronique
Z1Z2
15
Réalisation par circuits actifs : cellule du 1er ordre
La cellule du 1er ordre suivante permet de réaliser des filtres passe-bas et passe-haut :
Passe-bas : Z1 : Z2 :
Passe-haut : Z1 : Z2 :
Exemple : passe-bas avec R=1kΩ et C=10nF
ω+−=ω
CjR11.
RR)j(H
21
2
|H(jω)|
ω (éch. log)
-R2/R1
1/R2C
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.2) Réalisation électroniqueCellule élémentaire active du 1er ordre
16
Réalisation par circuits actifs : cellules du 2e ordre
Les structures de Sallen-Key et de Rauch permettent de réaliser des filtres passe-bas, passe-haut et passe-bande
du 2e ordre.
Ils permettent dobtenir des facteurs de qualité moyens (jusquà 20 environ).
Structure de Sallen-Key
Passe-bas :
Passe-haut :
)ZZ(Z)ZZ(Z)H1(ZZZkZ
VVH
432321041
42
e
s
++++−==
1RRk
b
a +=
11 RZ =pC
1Z2
2 =
pC1Z1
1 = 22 RZ =
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.2) Réalisation électronique
4231c CCRR
1=ω
++−=ξ4231
4341021
CCRRCRCR)H1(CR
21
3142c CCRR
1=ω
+++=ξ3142
0343212
CCRR)H1(CRCRCR
21
33 RZ =pC
1Z4
4 =
pC1Z3
3 = 44 RZ =
Cellule élémentaire active de Sallen-Key
kH0 =
kH0 −=
avec
17
Réalisation par circuits actifs : cellules du 2e ordre
Structure de Rauch
Passe-bas :
Passe-haut :
Passe-bande :
4343215
31
e
s
YY)YYYY(YYY
VVH
++++−==
11 RZ =pC
1Z2
5 =34 RZ =
pC1Z1
1 = 25 RZ =pC
1Z3
4 =
pC1Z1
2 =
12 RZ =
121 RZZ ==Cp1ZZ 43 ==
25 RZ =
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.2) Réalisation électronique
pC1Z2
3 =
23 RZ =1
232
321 CCRR
R1
R1
R1
21
++=ξ
2132c CCRR
1=ω1
30 R
RH −=
3
10 C
CH =3221
c CCRR1=ω ( )
322
1321 CCR
RCCC21 ++=ξ
2
1
R2R=ξ
CR2
1c
ξ=ωξ
−=2
1H0
Cellule élémentaire active de Rauch
18
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.2) Réalisation électroniqueCellule élémentaire active universelle
11
22
43
3
CRCR
RRR+
=ξ
2121c CCRR
1=ω43
40 RR
R2H+
=
43
40 RR
R2H+
−=
3
40 R
RH −=
43
4
a
b0 RR
R2RRH
+×−=
Réalisation par circuits actifs : cellules du 2e ordre
Cellule généralisée du seconde degré (ou filtre universel, ou filtre à variables détat)
Intérêts :
- 4 filtrages de base dans une même structure ;
- facteurs de qualité élévés (Q>10).
Inconvénient :
- phases des sorties différentes
Passe-bas : (gain statique)
Passe-haut :
Passe-bande :
Coupe-bande :
19
Circuits passifs vs circuits actifs
Filtres passifs
Inconvénients :
- nécessitent parfois des composants volumineux (condensateurs et bobines)
Avantages :
- passifs, donc ne nécessitent pas dalimentation (exemple : enceintes acoustiques)
Filtres actifs
Inconvénients :
- nécessitent une alimentation
- bande passante limitée donc limitation aux fréquences basses
- sensibles à leurs composants passifs (condensateurs et résistances)
- produisent du bruit
- limités en tension
Avantages :
- permettent une intégration à grande échelle (et notamment dans les processeurs)
- fiables
- coût de fabrication réduit
Circuits passifs vs circuits actifsI) Synthèse de filtres analogiques
I.1) Cellules élémentaires de filtrageI.1.2) Réalisation électronique
20
Mise en évidence des pôles
Par factorisation du dénominateur, la fonction de transfert peut se mettre sous la forme :
ou N ordre du filtre
Exemple avec N=1
1 pôle (réel pur) :
doù :
Exemple avec N=2 et ξ=0,7
2 pôles (complexes conjugués doù
et à partie réelle <0) :
∏−
= −=
1N
0n nss1)s(H
2
cc
jj21
1)j(H
ωω+
ωω+
=ω 2ss211)s(H++
=
+−=
−−=
)j1(22s
)j1(22s
2
1
))j1(22s))(j1(
22s(
1)s(H+−−−−−
=
Etude des pôles des cellules élémentaires
c/js ωω=
∏−
= −−=
1N
0n n
n
ppp)p(H
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.2) Réalisation électronique
c
j1
1)j(H
ωω+
=ωs1
1)s(H+
=c/js ωω=
1s1 −=
)1(s1)s(H−−
=
21
Décomposition des fonctions de transfert
Décomposition sous forme de produit
Une fonction de transfert dordre n quelconque peut se décomposer en un produit de fonctions de transfert élémentaires dordres 1 et 2 (les ordres sajoutent).
Schémas-blocs et modules électroniques
Quand les modules élémentaires (schémas-blocs ou modules électroniques) sont mis en cascade (=en série), les ordres sajoutent. Exemple pour lordre N=5 :
Diagrammes de Bode
Dans les diagrammes de Bode, les courbes de gain (en dB) sadditionnent :
→ importance de létude des cellules de filtrage dordre 1 et 2 ; on les appelle cellules élémentaires
N=2
=
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.3) Association des cellules élémentairesIntérêt des cellules élémentaires de filtrage (1/2)
)j(H).j(H).j(H)j(H 321 ωωω=ω
fc fc fc fc=+ +-40 -40 -100-20
H1 H2 H3
N=2 N=1 N=5
H
22
Position du problème
On a vu comment vu la cellule de filtrage passe-bas du 1er ordre, dont les caractéristiques sont :-3dB à fc-atténuation -20dB/décade
puis la cellule de filtrage du 2e ordre dont les caractéristiques sont -3dB à fc-atténuation -40dB/décade
De plus, on sait quen associant des cellules du 1er et du 2e ordre, on peut obtenir des cellules dordre plus élevé.
Problème : est-il possible dobtenir un filtre dordre N quelconque, caractérisé par :-3dB à fc-atténuation -20хN dB/décade ?
On a vu quen associant des cellules élémentaires on pouvait obtenir un ordre quelconque, comme par exemple pour lordre 5 :
mais comment avoir toujours 3dB à fc ?
N=2
=H1 H2 H3
N=1 N=5
H
N=3
I) Synthèse de filtres analogiquesI.1) Cellules élémentaires de filtrage
I.1.3) Association des cellules élémentairesIntérêt des cellules élémentaires de filtrage (2/2)
23
Intérêt
Comment obtenir une pente quelconque tout en ayant 3dB à fc, sans calculs (trop) compliqués ?
→ Monsieur Butterworth, dans les années 30, a trouvé une solution :
Définition
N ordre du filtre
Propriétés
pente de la décroissance du gain : -20хN dB/décade gain à fc : 3dB (Ұ N)
N2
c
2
1
1)(H
ωω+
=ω
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth Filtre de Butterworth : définition et propriétés
10-1 100 101-100
-90
-80
-70
-60
-50
-40
-30
-20
-10
0
Gain en dB pour N=1, 2, 3, 4, 5
Programme Matlab :w=linspace(0.1,10,1000);
[z,p,k]=buttap(2);
h=freqs(k*poly(z),poly(p),w);
semilogx(w,20*log10(abs(h)),'black');
...
24
Lien avec cellules élémentaires
Cellule passe-bas du 1er ordre :
Il sagit bien dun cas particulier du filtre de Butterworth, avec N=1.
Cellule passe-bas du 2e ordre, avec (rappel : -3dB à fc) :
Il sagit également dun cas particulier du filtre de Butterworth, avec N=2.
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth Cellules de filtrage de base : 2e ordreFiltre de Butterworth : étude de lordre 1 et 2
2
cc
jj21
1)j(H
ωω+
ωω+
=ω
22=ξ
4
cc
2
c
2
cc1
1...
2j1
1
jj21
1)j(H
ωω+
==
ωω+
ωω−
=
ωω+
ωω+
=ω
c
j1
1)j(H
ωω+
=ω2
cc
1
1
j1
1)j(H
ωω+
=
ωω+
=ω
25
Etude des pôles de la fonction de transfert (=racines du dénominateur)
Différentes formes de la fonction de transfert
harmonique en variable de Laplace en variable de Laplace réduite
Détermination des pôles
Les pôles sont tels que : ↔ ↔
↔
Il y a 2N pôles (2 fois plus que lordre du filtre), ce qui est normal puisquon a recherché les pôles de |H(jω)|2
0s)1(1 N2N =−+π+−
= N2n21Nj
n es
1N2n0 −≤≤
π++
π+−=
N21n2cosj
N21n2sinsn
N2
c
2
1
1)j(H
ωω+
=ω
N2N2
s)1(11)s(H−+
=
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Filtre de Butterworth : étude des pôles (1)
N2
c
2
p1
1)p(H
ω
+
=N2
2
s11)s(H+
=ω= jp c/ps ω=
⇒−=ωω↔
ωω= jsjs
cc
26
Position des pôles
La fonction |H(jω)|2 possède 2N pôles ; ils sont situés sur le cercle unité ;: à partie réelle <0: à partie réelle >0
Chaque pôle à partie réelle négative possède un "homologue" à partie réelle >0. Ces derniers, qui ne correspondentpas à un système stable, ne sont pas pris en compte (on a vu précédemment que la cellule passe-bas du 1er ordre et celle du 2e ordre, pour . possédaient respectivement 1 et 2 pôles à partie réelle <0 ; la généralisation à lordre Nconsiste à ne garder que les pôles à partie réelle <0 : ce sont les pôles de H(jω), même si cette dernière nest pas définie directement).
Le pôle réel pur, quand il existe, correspond à une cellule du 1er ordre.
Les autres pôles existent par paires : 1 pôle + son conjugué ;
N=2N=1 N=3 N=4
etc
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Filtre de Butterworth : étude des pôles (2)
1Nn0 −≤≤1N2nN −≤≤
non pris en compte
2/2=ξ
27
Exemple : Filtre de Butterworth dordre 2 (passe-bas)
N=2 → 2 pôles :
On retrouve bien les 2 pôles calculés précédemment.
Différentes formes de la fonction de transfert :
Réalisation pratique : mise sous forme standard
(déjà étudiée précédemment)
π++
π+−=
N21n2cosj
N21n2sinsn 1,0n =
π+
π−=
4cosj
4sins0
22j
22 +−=
22j
22 −−= Re
Im
*01 s
4cosj
4sins =
π−
π−=
4s11)s(H+
=4
c
1
1)j(H
ωω+
=ω ou4
c
p1
1)p(H
ω
+
= ou
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Filtre de Butterworth : exemple dordre 2
1s2s1)s(H 2 ++
=
28
Exemple : Filtre de Butterworth passe-bas dordre 4
N=4 → 4 pôles :
Réalisation pratique : mise sous forme de 2 fonctions de transfert standard du 2e ordre
3,...,0n =
π+
π−=
8cosj
8sins0
π+
π−=
83cosj
83sins1
*s8
5cosj8
5sins 12 =
π+
π−= *s
87cosj
87sins 03 =
π+
π−=
3210
3
0n n ss1.
ss1.
ss1.
ss1
ss1)s(H
−−−−=
−=∏
=
)s(H).s(H 21=
)*ss)(ss)(*ss)(ss(
1)s(H1100 −−−−
=
1s848,1s1.
1s765,0s1
22 ++++=
...*ss)*ss(ss
1.*ss)*ss(ss
1
11112
00002
=++−++−
=
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Filtre de Butterworth : exemple dordre 4
π++
π+−=
N21n2cosj
N21n2sinsn
Re
Ims0
s1
s2
s3
1
29
Polynômes de Butterworth
Une fois les pôles de la fonction de transfert calculés, les pôles complexes conjugués sont regroupés ensemble.Chaque paire correspond à une cellule élémentaire (passe-bas) du 2e ordre.Le pôle simple réel, sil existe (ordre impair), correspond à la cellule élémentaire (passe-bas) du 1er ordre.
Forme développée
n=1 : s+1n=2 : s2+1,41s+1n=3 : s3+2s2+2s+1n=4 : s4+2,6131s3+3,4142s2+2,6131s+1n=5 : s5+3,2361s4+5,2361s3+5,2361s2+ 3,2361s+1n=6 : s6+3,8537s5+7,4741s4+9,1416s3+7,4741s2+3,8537s+1etc
Forme factorisée
n=1 : s+1n=2 : s2+1,41s+1n=3 : (s+1)(s2+s+1)n=4 : (s2+0,765s+1)(s2+1,848s+1)n=5 : (s+1)(s2+0,618s+1)(s2+1,618s+1)n=6 : (s2+1,932s+1)(s2+1,414s+1)(s2+0,518s+1)etc
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Filtre de Butterworth : polynômes
30
Butterworth avec gabarit
Définition dun gabarit
(On parle également de "synthèse sur cahier des charges")
On distingue la bande passante de la bande datténuation (ou coupée).On définit latténuation maximale (Ap) tolérée dans la bande passante, et latténuation minimale tolérée dans la bande darrêt (Aa).
: sélectivité
Dans le cas classique, Ap=3dB. On peut souhaiter une atténuation Ap moins importante. Il suffit dajouter un paramètre
supplémentaire dans la fonction de transfert de Butterworth :
ou
N2
p
2
2
1
1)(H
ωωε+
=ω 10 ≤ε≤
N222
11)(HΩε+
=ωpωω=Ω
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
pulsation réduite
0 ωp ωωa
-Aa
-Ap
p
a
ωω
31
Gabarits
Autres gabarits
passe-bas passe-haut
passe-bande coupe-bande
RemarquePour la transformation de gabarits passe-bas vers passe-bande ou coupe-bande, ces derniers doivent être symétriques.Si ça nest pas le cas, il faut des rendre symétrique (en les rendant plus sévères).La condition de symétrie est :
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
0 ωp ωωa
-Aa
-Ap
0 ωpωa
-Aa
-Ap
ω
0 ωp1ωa1
-Aa
-Ap
ωωa2ωp2
2a1a2p1p f.ff.f =
0 ωa1ωp1
-Aa
-Ap
ωωp2ωa2
32
Définition dun gabarit
On part du gain en dB :
Soit Ap le gain à la pulsation ω=ωp, (soit Ω=1) on peut démontrer (*) que lon a :
On peut démontrer (**) que lordre du filtre est donné par :
Le résultat peut être fractionnaire ; lordre choisi est lentier supérieur.
On peut démontrer que la fréquence de coupure à 3dB est liée à la fréquence fp par la relation :
(*) il suffit dimposer que le gain soit Ap dB pour ω=ωp ; on a alors Ω2N=1, et la seule inconnue est ε.(**) on impose que la courbe passe par le point (ωp, Aa). Connaissant ε, la seule inconnue est N.
11010pA
−=ε
a
10aA
log2
log2110logN
Ω
ε−
−
=
N2211log20)(Hlog20Ωε+
=Ωpωω=Ω
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Paramètres du filtre de Butterworth à partir du gabarit
0 ωp ωωa
-Aa
-Ap
p
aa ω
ω=Ω
Np
c εω
=ω
33
Exemple : Détermination dun filtre dont le gain est atténué de 1dB à la fréquence fa=1kHz et de 50dB à fr=5kHz
Pulsation réduite datténuation en bande coupée Ωa :
Ordre du filtre :
On prend pour lordre lentier supérieur : N=4.
La fonction de transfert du filtre est la suivante :
Autre exemple : en prenant fa=2kHz, on aurait trouvé un ordre N=10
509,0110110 101
10pA
=−=−=ε
5kHz1kHz5
ff
p
a
p
aa ===
ωω=Ω
99,35log2
509,0log2110log
log2
log2110logN
1050
a
10aA
=−
−
=Ω
ε−
−
=
8
p
N2
p
2 259,01
1
1
1)(H
ωω+
=
ωωε+
=ω
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Butterworth à partir dun gabarit : exemple
0 1 f(kHz)5
-50
-1
34
Détermination des pôles
Rappel : uniquement les pôles à partie réelle <0
Les arguments des pôles sont les mêmes que ceux de la fonction de transfert simplifiée avec ε=1, mais situéssur un cercle de rayon
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Filtre de Butterworth généralisé : détermination des pôles
N2N22
s)1(11)s(H−ε+
=⇒−=ωω↔
ωω= jsjs
cc
N222
s11)s(Hε+
=
0s)1(1 N2N2 =−ε+π+−
ε= N2
n21NjN
n e1s
1Nn0 −≤≤
π−+
π−−
ε=
N21n2cosj
N21n2sin1s N
n
N /1 εRe
Ims0
s1
s2
s3
N1.ε
35
Utilisation dabaques
Elles permettent de déterminer lordre du filtre en fonction des paramètres Ap, Aa, ωp et ωa.
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Butterworth : utilisation dabaques
0ωP ωωa
-Aa
-Ap
p
a
ωω=λ
36
Programmation Matlab
%Réponse en fréquence d'un filtre de Butterworth
[N,Wn]=buttord(1000,5000,1,50,'s')
[b,a]=butter(N,Wn,'s');
F=[100:1:10000]; %vecteur de fréquences
[hb,bc]=freqs(b,a,F); %calcul réponse en fréquence
semilogx(bc,20*log10(abs(hb))); %affichage avec axe des abs. log.
xlabel('Frequence (radians)');
ylabel('Gain (dB)');
grid;
Pour la phase :...
semilogx(bc,angle(hb));
...
I) Synthèse de filtres analogiquesI.2) Filtre de Butterworth
Butterworth avec Matlab
102 103 104-4
-3
-2
-1
0
1
2
3
4
Frequence (Hz)
Phase (rad)
102 103 104-80
-70
-60
-50
-40
-30
-20
-10
0
Frequence (Hz)
Gain (dB)
37
Filtres de Chebyshev (ou Tchebyscheff )I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
Définition
Il existe 2 types :
Type I : Type II :
avec Ω pulsation réduite :
TN(.) désigne un polynôme dordre N défini par :
Les premiers polynômes sont donc :
On peut démontrer (*) quil existe une relation de récurrence entre ces polynômes :
(*) la démonstration consiste à exprimer TN+1(ω) et à utiliser les formules de trigonométrie :et
ωωε+
ωωε
=ω
pN
2
pN
2
2
2
2
T1
T)(H
ωωε+
=ω
pN
2
2
2
T1
1)(H 1<ε1<ε
)(T)(T.2)(T 2N1NN ω−ωω=ω −−
....
pωω=Ω
N2N ]1jRe[)(T ω−+ω=ω
ω=ω−+ω=ω ]1jRe[)(T 21
1]1jRe[)(T 020 =ω−+ω=ω
12]1jRe[)(T 2222 −ω=ω−+ω=ω
)bsin().asin()bcos().acos()bacos( −=+ )b(sh).a(sh)b(ch).a(ch)ba(ch −=+
38
Filtres de Chebyshev (ou Tchebyscheff )I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
Définition
Les polynômes TN(.) sont également définis par :
On peut démontrer que la fréquence de coupure à 3dB est liée à la fréquence fp par la relation :
>≤= 1xsi))x(charg.N(ch
1xsi))xarccos(.Ncos()x(TN
2ee)xcosh(
xx −+=
2ee)xsinh(
xx −−=
ε
ω=ω 1coshan1coshpc
Rappel :
39
Filtres de Chebyshev : caractéristiques
Caractéristiques
Type I
Oscillations dans la bande passante (band-pass ripple)
Soit N lordre du polynôme du dénominateur ;
- si N pair, |H(0)|=0 ; si N impair,
- Pour ω <=ωc, |H(jω)| oscille N/2 fois entre 1 et .
- Pour ω>ωc, |H(jω)| est monotone et décroissante.
1)(H1
12
≤ω≤ε+
I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
0 1 2 3 4 5 6 7 8 9 100.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.021/1)0(H ε+=
|H(jω)| (N=2,3,4)
21/1 ε+
10-1 100 101-100
-90
-80
-70
-60
-50
-40
-30
-20
-10
0
20log|H(jω)| (N=2,3,4)
40
Filtres de Chebyshev : caractéristiquesI) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
0 1 2 3 4 5 6 7 8 9 100.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
Frequence
Module fonction de transfert
Caractéristiques
Type II
Oscillations dans la bande atténuée (ou coupée) (stop-band ripple) 21)(H0
ε+ε≤ω≤
41
I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
Définition
On part du gain en dB :
On peut montrer que le paramètre est défini par :où Ap est latténuation à ωp
et que lordre N du filtre est donné par :
où Ωa est la pulsation réduite datténuation minimale en bande atténuée.
11010Ap
−=ε
)(charg
110chargN
a
10aA
Ωε−
=
Paramètres du filtre de Chebyshev à partir du gabarit
)(T1
1log20)(Hlog202
N2 Ωε+
=Ωpωω=Ω
p
aa ω
ω=Ω
42
Etude des pôles
Les pôles sont définis par :
avec et (=cte)
Comme dans le cas de Butterworth, on ne prend en compte que la moitié des pôles : ceux à partie imaginaire <0.
En posant
et en se souvenant que , on voit que
ce qui est la définition dune ellipse, sh2(β) et ch2(β) étant des constantes (voir ci-dessous).
Les pôles sont donc situés sur une ellipse.
Rappel : dans un repère (x,y), une ellipse est définie par ; a et b sont les 2 rayons de lellipse.
I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
)(ch)cos(j)(sh)sin(s kkk βα+βα= 1N2k0 −≤≤
Nk
N2kπ+π=α
ε=β 1sharg
N1
Filtres de Chebyshev : caractéristiques
)(sh)sin(Re kk βα= )(ch)cos(Im kk βα=
1)(ch
Im)(sh
Re2
2k
2
2k =
β+
β
1by
ax
2
2
2
2
=+
1)x(cos)x(sin 22 =+
43
Etude des pôles : exemple avec N=2
Les pôles sont définis par :
On a :
et , soit
doù
Les pôles sont donc situés sur une ellipse de rayons sh(β)≈0,17 et ch(β)≈1 .
I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
)(ch)cos(j)(sh)sin(s kkk βα+βα= 3k0 ≤≤
Nk
N2kπ+π=α
17,02sharg21
509,01sharg
N11sharg
N1 ≈≈=
ε=β
Filtres de Chebyshev : caractéristiques
40π=α
43
241π=π+π=α
45
42π=π+π=α
47
23
43π=π+π=α
17,0)(sh ≈β 1)(ch ≈β
)4
cos(j)4
sin(17,0s0π+π= )
43cos(j)
43sin(17,0)
43cos(j)
43sin(17,0s1
π+π=π+π=
44
Filtres de Chebyshev : exemple avec type I
Exemple avec type I : Gain atténué de 1dB à fa=1kHz et de 50dB à fr=5kHz
Pulsation réduite datténuation en bande coupée :
Ordre du filtre :
On prend pour lordre lentier supérieur : N=3.
Fonction de transfert du filtre :
Autre exemple : en prenant fa=2kHz, on aurait trouvé N=3,66 (→ N=4)
Remarque : lordre est inférieur à celui du filtre de Butterworth équivalent.
509,0110110 101
10Ap
=−=−=ε
1,2)5(charg
110charg
)(charg
110chargN
1050
a
10aA
=ε−
=Ωε−
=
2
3
3
3
2
33
2
10.23
10.2426,01
1
.10.2T26,01
1)(H2
πω−
πω+
=
πω+
=ω
I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
0 1 f(kHz)5
-50
-1
p
aa ω
ω=Ω
45
Polynômes de Chebyshev
Les coefficients du polynômes sont donnés en fonction de Ap (en général, on prend 0,5 ou 1) et de lordre du filtre N.
Pour Ap=1dB :
Forme développée
n=1 : 0,509s+1n=2 : 0,907s2+0,9957s+1n=3 : 2,0353s3+2,0116s2+2,5206s+1n=4 : 3,628s4+3,4568s3+5,2749s2+2,6942s+1n=5 : 8,1415s5+7,6271s4+13,75s3 +7,933s2+4,7264s+1n=6 : 14,512s6+13,47s5+28,02s4+17,445s3 +13,632s2+4,456s+1etc
Forme factorisée
n=1 : 0,509s+1n=2 : 0,907s2+0,996s+1n=3 : (2,024s+1)(1,006s2+0,497s+1)n=4 : (3,579s2+2,411s+1)(1,014s2+0,283s+1)n=5 : (3,454s+1)(2,329s2+1,091s+1)(1,012s2+0,181s+1)n=6 : (8,019s2+3,722s+1)(1,793s2+0,609s+1)(1,009s2+ 0,126s+1)etc
Polynômes de Chebyshev
Remarque : contrairement aux polynômes de Butterworth, les cellules élémentaires de la forme factorisée ne possèdent pas ici toutes la même fréquence de coupure.
I) Synthèse de filtres analogiquesI.3) Filtres de Chebyshev
46
Filtres de Bessel : principe (1)I) Synthèse de filtres analogiquesI.4) Filtres de Bessel
Filtres de Bessel
Les filtres de Bessel sont basés sur le critère de la plus grande linéarité possible de la phase (en fonction de la fréquence).
On rappelle lintérêt davoir une phase linéaire : le signal nest pas déformé par le filtre.
On définit le retard de groupe :
Si la phase est linéaire, le retard de groupe est constant.
On définit donc une fonction de transfert (FT) :
Pour simplifier, on prend τ =1 :
On cherche ensuite à mettre la FT sous forme passe-bas (on cherche à faire apparaître ses pôles) :
ωωϕ−=
d)(d
gt
pe)p(H τ−= ωτ−=ω je)j(H avec τ constant
pe)p(H −=
)p(sh)p(ch1
2ee
2ee
1)p(H pppp +=
−++= −−
47
Filtres de Bessel : principe (2)I) Synthèse de filtres analogiquesI.4) Filtres de Bessel
Filtres de Bessel
Pour déterminer le polynôme équivalent au dénominateur,
on utilise la "technique" suivante : on exprime le développement
limité de cth(p)=ch(p)/sh(p), on effectue la division des polynômes
puis on identifie numérateur et dénominateur resp. à ch(p) et sh(p).
En limitant le développement limité à lordre N, on obtient une expression approchée de cth(p).
Pour N=2, on a :
Par identification, on trouve : et doù
Pour N=3, on a
Par identification, on trouve : et doù
etc.
Pour lordre n, on a : avec
...p5
1P3
1p1
...!5
p!3
p1
...!4
p!2
p1
)p(sh)p(ch)p(cth 53
42
++
+=+++
+++==
3
2
pp15p615
p/5/1p/31
p1)p(cth
++=
++=
2p615)p(ch += 3pp15)p(sh +=32 pp6p1515
1)p(sh)p(ch
1)p(H+++
=+
=
nn
2210n pa...papaa1
)p(B1)p(H
++++==
p3p3
p31
p1)p(cth
2+=+=
2p3)p(ch += p3)p(sh = 2pp331
)p(sh)p(ch1)p(H
++=
+=
(p)Bp(p)1)B-(2n(p)B 2-n2
1-nn +=
1B0 =1p(p)B1 +=
48
Filtres de Bessel : normalisationI) Synthèse de filtres analogiquesI.4) Filtres de Bessel
Normalisation
En considérant la fréquence normalisée pour ω/ωc avec ωc telle que 20log|H(ωc)|=-3dB, on a :
Par exemple pour N=2, le polynôme du dénominateur est :
On le transforme en polynôme standard (en mettant en facteur le terme constant, qui représente un gain statique) :
La pulsation normalisée ω=ωc permettant davoir une atténuation de 3dB est telle que
↔ ↔ ↔
La fonction de transfert normalisée devient donc :
203
nn
2210 10pa...papaa =++++
2p31p1 ++
2pp33 ++
203
2 10p31p1 =++ 20
32
cc 10)j(31j1 =ω+ω+ 359,1c =ω
22 p6149,0p359,11
1
)p359,1(31p359,11
1)p(H++
=++
=
49
Polynômes de BesselI) Synthèse de filtres analogiquesI.4) Filtres de Bessel
Coefficients des polynômes du dénominateur
Forme développée (normalisée)
n=1 : s+1n=2 : 0,618s2+1,359s+1n=3 : 0,3607s3+1,2328 s2+1,7556s+1n=4 : 0,1901s4+0,8995s3+1,9149s2+2,1138 s+1n=5 : 0,08911s5+0,5506s4+1,588s3+2,6174s22,4266s+1
Forme factorisée
n=1 : s+1n=2 : 0,618s2+1,359s+1
n=3 : (1,3225s+1)(0,4773s2+0,9998s+1)
n=4 : (0,4883s2+1,3389s+1)(0,3885s2+0,7738s+1)
n=5 : (1,5015s+1)(0,4133s2+1,1408s+1)(0,3885s2+0,7738s+1)
Il nexiste pas de méthode analytique pour permettre de déterminer les coefficients ai en fonction dun gabarit.
Ces coefficients sont obtenus par approximations successives, par des méthodes graphiques ou des
algorithmes numériques
50
Filtres de Bessel : programmation MatlabI) Synthèse de filtres analogiquesI.4) Filtres de Bessel
Programmation Matlab
%Réponse en fréquence d'un filtre de Butterworth
[b,a]=besself(4,1000)
F=[100:1:10000]; %vecteur de fréquences
[hb,bc]=freqs(b,a,F); %calcul réponse en fréquence
semilogx(bc,20*log10(abs(hb))); %affichage avec axe des abs. log.
xlabel('Frequence (radians)');
ylabel('Gain (dB)');
grid;
Pour la phase :...
semilogx(bc,angle(hb));
...
102
103
104
-90
-80
-70
-60
-50
-40
-30
-20
-10
0
Frequence (Hz)
Gain (dB)
102
103
104
-4
-3
-2
-1
0
1
2
3
4
Frequence (Hz)
Phase (rad)
51
I) Synthèse de filtres analogiquesI.5) Filtres de Cauer Filtres de Cauer : introduction
Filtres de Cauer
Introduction
Les filtres étudiés jusquici (Butterworth, Chebyshev, Bessel) étaient tous sous la forme :
On les appelle filtres polynômiaux. Ils sont caractérisés par leurs pôles. On parle de filtres "tous pôles".
D(p) est appelée fonction de transmission.
Il existe également des filtres qui possèdent en plus un polynôme au numérateur.
On les appelle filtres elliptiques. Cest le cas du filtre de Cauer.
En plus de ses pôles, cette fonction de transfert possède des zéros (valeurs de p qui annulent la fonction de transfert).
Ces zéros correspondent à des fréquences pour lesquelles la fonction de transfert est nulle, et donc un signal à cette
fréquence est éliminé.
Sils sont judicieusement placés dans le plan complexe, ils permettent daugmenter les pentes de variation du gain,
par rapport aux filtres polynômiaux.
n210
m210
p...papaap...pbpbb
)p(D)p(N)p(H
++++++++==
n210 p...papaa
1)p(D
1)p(H++++
==
52
I) Synthèse de filtres analogiquesI.5) Filtres de Cauer Filtres de Cauer : définition
Filtres de Cauer
Ils sont définis par la fonction de transfert suivante :
où RN(ξ,ω/ω0) est appelée fonction rationnelle de Chebyshev; N est lordre du filtre, ω0 la pulsation de coupure,,ε est le facteur dondulation et ξ est le facteur de sélectivité.
Dans la bande passante, le gain varie donc entre 1 et
Dans la bande atténuée, le gain varie donc entre 0 et , avec
La fonction RN est appelée fonction elliptique.
Ces filtres sont caractérisés par des oscillations à la fois
dans la bande passante et dans la bande coupée.
La décroissance de leur gain est plus rapide
que celle des filtres polynômiaux, avec un ordre inférieur.
Quand , le filtre devient équivalent à un filtre de
Chebyshev de type I.
)/,(R11)(H
02N
22
ωωξε+=ω
21/1 ε+2N
2L1/1 ε+ ),(RL NN ξξ=
∞→ξ
en.wikipedia.org
53
I) Synthèse de filtres analogiquesI.5) Filtres de Cauer Filtres de Cauer : définition
Filtres de Cauer
La fonction elliptique peut se mettre sous la forme suivante :
pour N pair pour N impair
avec xi les zéros et xpi les pôles de ces rationnelles, et r0 un facteur de normalisation tel que
Le dénominateur de ce polynôme fait apparaître des zéros dans la fonction de transfert du filtre.
Ils sont appelés zéros de transmission, et ont la propriété déliminer les fréquences correspondantes.
RN(ξ,x) avec N=3 ; ξ=1,3 RN(ξ,x) avec N=4 ; ξ=1,3
∏∏
=
=
−
−=ξ N
1i pi
N
1i i0N )xx(
)xx(r)x,(R
∏∏
=
=
−
−=ξ N
1i pi
N
1i i0N )xx(
)xx(xr)x,(R
1)1,(RN =ξ
54
I) Synthèse de filtres analogiquesI.5) Filtres de Cauer Filtres de Cauer : définition
Filtres de Cauer
Il nexiste pas dexpression analytique pour les pôles et les zéros de la fonction de transfert du filtre.
Ils sont calculés par des méthodes numériques.
La synthèse comporte les étapes suivantes :
1. Détermination de lordre N en fonction du gabarit
2. Détermination du polynômes du numérateur et du dénominateur
3. Détermination des pôles et des zéros
Exemple Matlab
fp=1000; fa=2000; Ap=1; Aa=40;
[N,Wn]=ellipord(fp,fa,Ap,Aa,'s') %étape 1
[num,den]=ellip(N,1,50,Wn,'s') %étape 2
zeros=roots(num) %étape 3
poles=roots(den) %étape 3
Une fois les pôles et les zéros connus, on peut écrire la fonction de transfert sous forme dun produit de
fonctions de transfert élémentaires du 1er et du 2e ordre (en regroupant les pôles et les zéros conjugués entre eux).
On peut alors passer à la réalisation électronique.
55
Filtres de Cauer : programmation MatlabI) Synthèse de filtres analogiquesI.5) Filtres de Cauer
Programmation Matlab
%Réponse en fréquence d'un filtre de Cauer (elliptique)
[N,Wn]=ellipord(1000,5000,1,50,'s')
[b,a]=ellip(N,1,50,Wn,'s');
F=[100:1:10000]; %vecteur de fréquences
[hb,bc]=freqs(b,a,F); %calcul réponse en fréquence
semilogx(bc,20*log10(abs(hb))); %affichage avec axe des abs. log.
xlabel('Frequence (radians)');
ylabel('Gain (dB)');
grid;
Pour la phase :...
semilogx(bc,angle(hb));
...
102 103 104-120
-100
-80
-60
-40
-20
0
Frequence (radians )
Gain (dB)
102 103 104-4
-3
-2
-1
0
1
2
3
4
Frequence (radians )
Gain (dB)
56
Filtres de Cauer : programmation MatlabI) Synthèse de filtres analogiquesI.5) Filtres de Cauer
Caractéristiques
Affichage du gain en dB et de la phase en échelle semi-log :
f=[0.1:0.01:4];
[n,wn]=ellipord(0.4,0.5,1,100) %-99dB entre f/fe=0,4 et 0,5
[b,a]=ellip(n,1,100,wn); % -> ordre 9
[H,fl]=freqz(b,a,f);
semilogx(fl,20*log(abs(H)),'b');
hold;
[n,wn]=ellipord(0.4,0.45,1,100) %-99dB entre f/fe=0,4 et 0,45
[b,a]=ellip(n,1,100,wn); % -> ordre 11
[H,fl]=freqz(b,a,f);
semilogx(fl,20*log(abs(H)),'r');
[n,wn]=ellipord(0.4,0.41,1,100) %-99dB entre f/fe=0,4 et 0,41
[b,a]=ellip(n,1,100,wn); % -> ordre 16
[H,fl]=freqz(b,a,f);
semilogx(fl,20*log(abs(H)),'g');
Un affichage de |H(f)| en échelle linéaire permet de constater la
non-linéarité de la phase (même dans la bande passante) :
[n,wn]=ellipord(0.4,0.5,1,100)
[b,a]=ellip(n,1,100,wn);
freqz(b,a);
10-1 100
-300
-250
-200
-150
-100
-50
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-150
-100
-50
0
50
Normalized Angular Frequency (×π rads /s ample)
Magnitude (dB)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-800
-600
-400
-200
0
Normalized Angular Frequency (×π rads /s ample)
Phase (degrees)
57
Butterworth, Chebyshev, Bessel, Cauer
Comparaison des performances des filtres de Butterworth, de Chebyshev de Bessel et de Cauer
Gain en dB
[z,p,k]=buttap(4); %Butterworth ordre 4
w=logspace(-1,1,1000); %1000 points entre 0.1 et 10
h=freqs(k*poly(z),poly(p),w);
semilogx(w,20*log(abs(h)),'b'); %bleu
hold;
[z,p,k]=cheb1ap(4,0.5); %Chebyshev type I ordre 4
h=freqs(k*poly(z),poly(p),w); %(0,5dB max en BP)
semilogx(w,20*log(abs(h)),'r'); %rouge
[z,p,k]=cheb2ap(4,20); %Chebyshev type II ordre 4
h=freqs(k*poly(z),poly(p),w); %(20dB min en BA)
semilogx(w,20*log(abs(h)),'g'); %vert
[z,p,k]=besselap(4); %Bessel ordre 4
h=freqs(k*poly(z),poly(p),w);
semilogx(w,20*log(abs(h)),'c'); %cyan
[z,p,k]=ellipap(4,0.5,20); %Cauer ordre 4
h=freqs(k*poly(z),poly(p),w); %(0,5dB max en BP et
semilogx(w,20*log(abs(h)),'m'); %20dB min en BA)
grid; %magenta
10-1
100
101
-90
-80
-70
-60
-50
-40
-30
-20
-10
0
Gain en dB pour N=4
I) Synthèse de filtres analogiquesI.5) Filtres de Cauer
58
Butterworth, Chebyshev, Bessel, Cauer
Comparaison des performances des filtres de Butterworth, de Chebyshev de Bessel et de Cauer
Délai de groupe
w=logspace(-1,1,1000); %1000 points entre 0.1 et 10
[z,p,k]=buttap(4); %Butterworth ordre 4
h=freqs(k*poly(z),poly(p),w);
dg=-diff(unwrap(angle(h)))./diff(w); %délai de groupe
semilogx(w(1:length(w)-1),dg,'b'); %bleu
hold;
[z,p,k]=cheb1ap(4,0.5); %Chebyshev type I ordre 4
h=freqs(k*poly(z),poly(p),w); %(0,5dB max en BP)
dg=-diff(unwrap(angle(h)))./diff(w); %délai de groupe
semilogx(w(1:length(w)-1),dg,'r'); %rouge
grid;
[z,p,k]=besselap(4); %Bessel ordre 4
h=freqs(k*poly(z),poly(p),w);
dg=-diff(unwrap(angle(h)))./diff(w); %délai de groupe
semilogx(w(1:length(w)-1),dg,'c'); %cyan
Remarque : le délai de groupe du filtre de Chebyshev de type II
et du filtre de Cauer doit être affiché séparément :
10-1 100 1010
1
2
3
4
5
6
7
0.2 0.4 0.6 0.8 1 1.2 1.4
-100
-80
-60
-40
-20
0
20
I) Synthèse de filtres analogiquesI.5) Filtres de Cauer
Délai de groupe (en secondes) pour N=4
59
Butterworth, Chebyshev, Bessel
Comparaison des performances des filtres de Butterworth, de Chebyshev et de Cauer
*********Absence
doscillations (BP)
*******Linéarité de la phase
*******Raideur des pentes
*******Facilité de conception
CauerBesselChebyshevButterworthCritères de choix selon type de filtre
I) Synthèse de filtres analogiquesI.6) Comparaison des performances
60
Les différentes étapes de la synthèse dun filtre analogique
1. Définition du gabarit désiré
2. Normalisation du gabarit par rapport à une pulsation de référence ωr :
(- fréquence de coupure à 3dB pour un filtre de Butterworth de la forme simplifiée,
- fréquence datténuation max. en bande passante pour un filtre de Butterworth, Chebyshev ou Cauer,
- fréquence centrale pour un filtre passe-bande ou coupe-bande)
3. Transposition en gabarit (normalisé) passe-bas
4. Détermination de lordre du filtre (calcul, abaques, logiciel)
5. Recherche de la fonction de transfert normalisée (mise en facteur) à partir des tables de polynômes
6. Transposition du filtre passe-bas étudié vers le type de filtre recherché
7. Dénormalisation :
8. Réalisation électronique
Remarque : dans le cas de la synthèse dun filtre passe-bas, les étapes 2 et 5 nont pas lieu dêtre.
I) Synthèse de filtres analogiquesI.7) Résumé des différentes étapes de synthèse Résumé des différentes étape de synthèse
sjr
→ωω
r
jsωω→
61
Exemple complet de synthèse (1/6)I) Synthèse de filtres analogiquesI.8) Exemple complet
Exemple complet de synthèse
On souhaite réaliser un filtre passe-haut satisfaisant aux contraintes suivantes :
-atténuation maximale en bande passante : Ap=1dB à fp=4kHz
-atténuation minimale en bande atténuée : Aa=40dB à fa=2kHz
et pour lequel on accepte une ondulation dans la bande passante de 1dB.
On choisit dutiliser un filtre de Chebyshev de type I.
Normalisation du gabarit
On normalise les fréquences par rapport à fp : f F=f/fpfp Fp=fp/fp=1
fa Fa =fa/fp=0,5
Gabarit passe-bas (normalisé) correspondant
Changement de variable de la transposition passe-bas vers passe-haut :
Pour f=fa : (on fait abstraction du signe - )
0 2 f(kHz)4
-40
-1
s1s →
ωω
→ωω
jj p
p
0 0,5 F1
-40
-1
0 1 F2
-40
-1
a
p
p
a
ff
jffj −→ 2j5,0j −→
62
Exemple complet de synthèse (2/6)I) Synthèse de filtres analogiquesI.8) Exemple complet
Exemple complet de synthèse
Détermination de lordre du filtre
avec et
on prend N=5
Fonction de transfert normalisée à partir de la table des polynômes de Chebyshev (pour Ap=1dB)
Transposition vers le type de filtre de départ (passe-haut)
)(charg
110chargN
a
10aA
Ωε−
= 509,0110110 101
10Ap
=−=−=ε 2p
aa =
ωω=Ω
5,4)2(charg
509,0/)110(chargN10/aA
=−=
)1s181,0s012,1)(1s091,1s329,2)(1s454,3(1)s(H 22 +++++
=
s1s →
1s179,0s988,0s988,0
1s468,0s429,0s429,0
1s29,0s29,0)s(H 2
2
2
2
++×
++×
+=
63
Exemple complet de synthèse (3/6)I) Synthèse de filtres analogiquesI.8) Exemple complet
Exemple complet de synthèse
Dénormalisation
Identification :
s/rad665,86)( 1c =ω s/rad372,38)( 2c =ω s/rad285,25)( 3c =ω
Hz8,13)f( 1c = Hz1,6)f( 2c = Hz4)f( 3c =
357,02 =ξ 09,03 =ξ
2
3c3c
2
3c2
2c2c
2
2c
1c
1c321
)(j
)(2j1
)(j
)(j
)(2j1
)(j
)(j1
)(j
)j(H)j(H)j(H)j(H)s(H
ωω+
ωωξ+
ωω
×
ωω+
ωωξ+
ωω
×
ωω+
ωω
=ω×ω×ω=ω→
pp f2jjsπω=
ωω→
64
Exemple complet de synthèse (4/6)I) Synthèse de filtres analogiquesI.8) Exemple complet
Exemple complet de synthèse
Tests
Avant de passer à la réalisation proprement dite, on peut simuler le filtre pour vérifier que la synthèse est correcte.
Programme Scilab :fc=4;w0=2*%pi*fc/0.29num=poly([0 1/w0], "s", "coef");den=poly([1 1/w0], "s", "coef");sys1=syslin('c', num, den);bode(sys1, 0.1, 100);
w0=2*%pi*fc/sqrt(0.429)xi=0.468*w0/(4*%pi*fc)num=poly([0 0 1/w0/w0], "s", "coef");den=poly([1 2*xi/w0 1/w0/w0], "s", "coef");sys2=syslin('c', num, den);bode(sys2, 0.1, 100);
w0=2*%pi*fc/sqrt(0.988)xi=0.179*w0/(4*%pi*fc)num=poly([0 0 1/w0/w0], "s", "coef");den=poly([1 2*xi/w0 1/w0/w0], "s", "coef");sys3=syslin('c', num, den);bode(sys3, 0.1, 100);
Affichage de la fonction de transfert produit :
...bode(sys1*sys2*sys3, 1, 100);...
Le gabarit désiré est bien obtenu.
zoom
H1 x H2 x H3
zoom
H1, H2, H3
65
Exemple complet de synthèse (5/6)I) Synthèse de filtres analogiquesI.8) Exemple complet
Exemple complet de synthèse
Réalisation électronique (1/2)
On se propose dutiliser une cellule active du 1er ordre et de 2 filtres de Rauch pour les cellules du 2nd ordre.
Les calculs donnent :
Cellule 1 : R1=1000Ω R2=1000Ω C=11,5µF
Cellule 2 : R1=1000Ω C1=C2=C3=6,2µF R2=17,6kΩ
Cellule 3 : R1=1000Ω C1=C2=C3=2,3µF R2=277,8kΩ
66
Exemple complet de synthèse (6/6)I) Synthèse de filtres analogiquesI.8) Exemple complet
Exemple complet de synthèse
Réalisation électronique (2/2)
Avec la cellule de Sallen-Key (pour le 2e ordre) :
On prend Ra=0 et Rb= ; on pose : C1=C3=10µF
Les calculs donnent :
Cellule 2 : R2=930Ω R4=7,3kΩ
Cellule 3 : R2=348Ω R4=43kΩ
∞
67
Cours de
Traitement du signal- Synthèse de filtres -2e partie : Filtres Numériques
Benoît [email protected]
68
Cours de "Synthèse de filtres", 2e partie
Plan
II) Synthèse de filtres numériquesII.1) IntroductionII.2) Transformée en zII.3) Filtres RII
II.3.1) Méthode de léchantillonnage de la RIII.3.2) Méthode de léquivalence de la dérivationII.3.3) Méthode de la transformée bilinéaire
II.4) Filtres RIFII.4.1) Principe généralII.4.2) Synthèse par TF inverse du spectreII.4.3) Synthèse par TFD inverse du spectre
II.5) Performances comparées des filtres RII et RIFII.6) ConclusionConclusion générale
69
Introduction
Dans lintroduction générale sur le filtrage, on a vu quun filtre était décrit par une équation différentielle :
De manière analogue, un filtrage numérique consiste à transformer une séquence discrète dentrée en une
séquence de sortie :
n représente lindice de léchantillon présent ; n-i (i>0) représentent les indices déchantillons passés.
On appelle cette relation entrée-sortie "équation aux différences" ("équa. diff.").
La synthèse de filtres numériques "se résume" à déterminer des valeurs adéquates pour ces coefficients.
Les outils mathématiques utilisés pour létude des filtres analogiques sont les transformée de Laplace et de Fourier ;
loutil détude des filtres numériques est la transformée en z.
La TZ permet de modéliser les filtres numériques sous la forme de fonctions de transfert polynômiale, facilitant leur étude.
(attention, les coefficients du filtre analogique ne sont pas les mêmes que celui du filtre numérique !)
II) Synthèse de filtres numériquesII.1) Introduction
)Qn(sb...)2n(sb)1n(sb)Pn(ea...)2n(ea)1n(ea)n(ea)n(s Q21P210 −−−−−−−−++−+−+=
Q
Q
Q1Q
1Q
1Q10P
P
Pn
1P
1P1 dt)t(eda
dt)t(eda...
dt)t(dea)t(ea
dt)t(sdb
dt)t(sdb...
dt)t(dsb)t(s ++++=++++ −
−
−
−
−
∑
∑
=
−
=
−
+== Q
1q
P
0p
pp
z.b1
za
)z(E)z(S)z(H
∑
∑
=
=
+== N
1n
nn
M
0m
mm
p.b1
p.a
)p(E)p(S)p(H
Introduction sur le filtrage numérique (1/5)
PQ ≤
PQ ≤
70
Filtrage numérique en pratique
Comme son nom lindique, le filtrage numérique se pratique sur système numérique : - ordinateur (utilisation de logiciels, programmation C/C++) ;- Processeur de Traitement de Signal (DSP) ;- autre composant numérique (microcontrôleur, FPGA, etc).
Le traitement peut seffectuer - en temps différé (C/C++, Matlab, Scilab, etc) ou - en temps réel (C/C++, assembleur, FPGA).
Traitement temps-réel
La condition de temps réel est que léchantillon de sortie présent s(n) soit calculé avant le prochain échantillon dentrée,cest à dire sur une durée tt inférieure à Te, la période déchantillonnage.
Pour pouvoir calculer cette équation dans un système temps-réel, le bloc fonctionnel de traitement doit comporter de lamémoire pour les échantillons e(n-i) et s(n-i) :
II) Synthèse de filtres numériquesII.1) Introduction
e(n-2)
e(n-P)
s(n-2)
s(n-Q)
e(n-1) s(n-1)
e(n) s(n)
Introduction sur le filtrage numérique (2/5)
e(nTe)traitement numérique
s(nTe+tt)
71
Filtres RII et filtre RIF
Les filtres numériques peuvent être classés en 2 grandes catégories : - à Réponse Impulsionnelle Finie (RIF)- à Réponse Impulsionnelle Infinie (RII)
Filtres RIILeur équation aux différences comportent des termes en e(n-i) et des termes en s(n-i) :
On va voir que :- ils permettent de synthétiser des filtres à partir des caractéristiques de filtres analogiques
(cellules élémentaires, filtres de Butterworth, de Chebyshev, de Bessel et de Cauer, etc) ;- ils peuvent être instables, doù les précautions à prendre dans leur implémentation.
Filtres RIFLeur équation aux différences ne comporte que les termes en e(n-i) ; la sortie ne dépend que des valeurs de lentrée :
On retrouve lexpression de la convolution numérique étudiée précédemment : les RIF sont des systèmes à convolution.On va voir que :
- ils permettent dobtenir des filtres à partir dune réponse en fréquence idéale ;- les coefficients ai constituent sa réponse impulsionnelle du filtre (ils sont souvent notés hi) ;- ils sont forcément stables (pas de terme de récurrence dans léqua. diff.).
II) Synthèse de filtres numériquesII.1) Introduction
)Pn(ea...)2n(ea)1n(ea)n(ea)n(s P210 −++−+−+=
)Qn(sb...)2n(sb)1n(sb)Pn(ea...)2n(ea)1n(ea)n(ea)n(s Q21P210 −−−−−−−−++−+−+=
Introduction sur le filtrage numérique (3/5)
72
Signification de "Réponse Impulsionnelle Finie" et "Réponse Impulsionnelle Infinie "
Réponse "intuitive" : prenons lexemple du filtre défini par léquation aux différences :
Appliquons lui une impulsion de Kronecker (δk=1,0,0,0,., équivalent de limpulsion de Dirac du domaine continu).
- si k>1, le signal de sortie s(n) peut diverger vers des valeurs
- si k=1, s(n) garde une valeur constante
- si k<1, s(n) tend vers 0 quand n
)1n(ks)n(e)n(s −+=
∞→
∞
II) Synthèse de filtres numériquesII.1) Introduction Introduction sur le filtrage numérique (4/5)
73
La transformée en z
La transformée en z (TZ) est loutil détude des systèmes échantillonnés.
Définition
Soit s(n) un signal numérique. Sa TZ est définie par :
Une fonction de transfert en z est elle-même la transformée dune séquence h(n) :
Comme dans le cas continu, la fonction de transfert est la transformée de la réponse impulsionnelle du filtre.
Les coefficients h(n) représentent donc les échantillons de sa réponse impulsionnelle.
En pratique, la réponse impulsionnelle possède un nombre fini déchantillons. La sommation est donc finie :
∑∞
=
−=0n
nz)n(s)z(S
II) Synthèse de filtres numériquesII.2) Transformée en z
∑∞
=
−=0n
nz)n(h)z(H
Définition de la transformée en z (TZ)
∑=
−=N
0n
nz)n(h)z(H
74
Lien avec la Transformée de Laplace (TL)
La TZ est la TL dun signal échantillonné. Elle est obtenue en posant : (Te période déchantillonnage)
Démonstration
Soit s(t) un signal et se(t) sa version échantillonnée :
Remarque : en général, on utilise lécriture simplifiée :
où s(n) est lélément dindice n de la séquence numérique obtenue.
∫+∞ −==
0
ptdte)t(s)p(S)t(sL
pTeez =
1)t( L→←δptL
00e)tt( −→←−δ
∑∑∑∞
=
−+∞
−∞=
+∞
−∞=
=→←−δ=−δ×=0n
pnTee
L
nee
nee
ee)nT(s)p(S)nTt()nT(s)nTt()t(s)t(s
pTeez = ∑∞
=
−=0n
ne z)nT(s)z(S
II) Synthèse de filtres numériquesII.2) Transformée en z
∑∞
=
−=0n
nz)n(s)z(S
Lien entre transformées en z et de Laplace
75
La transformée en z
Propriétés élémentaires
Linéarité :
Retard temporel :
Produit de convolution :
Réponse impulsionnelle et fonction de transfert :
Stabilité :
système stable
II) Synthèse de filtres numériquesII.2) Transformée en z
)z(Sa)z(Sa)n(sa)n(sa 2211Z
2211 +→←+
)z(Sz)nn(s 0nZ0
−→←− )p(Se)tt(s ptL0
0−→←−
)p(S.a)p(S.a)t(s.a)t(s.a 2211L
2211 +→←+
Rappel domaine continu
∞<∑∞
=0n
)n(h∞<∫
∞
=0tdt)t(h
*Z→←×
×→← Z*
)z(E)z(S)z(H = )z(S
1)z(S)z(H ==1)z(E =
Rappel domaine continu
Propriétés de la transformée en z
: RI(voir plus loin)
76
Rappels : suites géométriques
Pour calculer la transformée en z, il est nécessaire de connaître les définitions et propriétés des suites géométriques.
Une suite géométrique de terme principal un est telle que : r : raison
Le terme principal un est défini par :
On peut démontrer que la somme des N premiers termes, définie par :
est égale à :
De même, la somme de tous les termes est égale à :
Exemple numérique :
∑−
=
=1N
0nnN uS
n1n u.ru =+
r1r1uS
N
0N −−=
r1r1limuS
n
n0 −
−=∞→
∞
∑∞
=∞ =++++=
0n
n321 5,0...5,05,05,01S
5,0u5,05,05,0u nn1n
1n ×=×== ++
5,15,075,0
5,0125,01
5,015,011
r1r1uS
22
02 ==−−=
−−×=
−−=
25,0
15,015,01lim
r1r1limuS
n
n
n
n0 ==
−−=
−−=
∞→∞→∞
II) Synthèse de filtres numériquesII.2) Transformée en z Lien entre TZ et suites numériques
nn 5,0u =
n0n ruu =
77
Transformées élémentaires
Impulsion
Il sagit ici de limpulsion de Kronecker, définie par δ(n)=1,0,0, :
Echelon unité
Signal exponentiel
1)z(S)n()n(s Z =→←δ=
aT1ZanT
ez11)z(Se)n(s −−
−
−=→←=
II) Synthèse de filtres numériquesII.2) Transformée en z
1Z
z11)z(S0npour0
0npour1)n(u)n(s −−=→←
<≥==
Quelques exemples de TZ
78
Stabilité
De la même manière quun filtre analogique peut être étudié dans le plan p du point de vue de ses pôles et de ses zéros,
les filtres numériques peuvent être étudiées dans le plan z.
La correspondance plan p ↔ plan z est directement liée à la relation entre les variables p et z :
Léchantillonnage conduit à limiter le plan p à la bande horizontale [-ωe/2, ωe/2] (ωe pulsation déchantillonnage).
Il a été vu précédemment quun filtre analogique était stable si tous ses pôles sont à partie réelle négative.
Un filtre numérique est donc stable si tous ses pôles sont à lintérieur du cercle unité.
II) Synthèse de filtres numériquesII.2) Transformée en z Stabilité dans le plan z
pTeez =
79
De la fonction de transfert en z à léquation aux différences
Forme générale de la fonction de transfert en z du filtre numérique :
E(z) et S(z) représentent respectivement les transformées en z des échantillons dentrée e(n) (avec n correspond à nTe)
et de sortie s(n) courants : E(z)=Ze(n) ; S(z)=Zs(n)
(propriétés de retard temporel et de linéarité)
∑
∑
=
−
=
−
−−−
−−−
+=
++++++++== Q
1q
P
0p
pp
22
11
PP
22
110
z.b1
za
zb...zbzb1za...zazaa
)z(E)z(S)z(H
)Qn(sb...)2n(sb)1n(sb)Pn(ea...)2n(ea)1n(ea)n(ea)n(s Q21P210 −−−−−−−−++−+−+=
II) Synthèse de filtres numériquesII.2) Transformée en z De la fonction de transfert en z à léqua. diff.
)z(E)z(S)z(H =
)z(Ez)in(eZ i−=− )z(bE)z(aE)n(be)n(aeZ baba +=+
80
Introduction
En cherchant à transformer les filtres analogiques étudiés précédemment en filtres numériques, on va voir quon arrive à
des fonctions de transfert de type RII.
La variable z étant définie par , le passage du domaine continu (variable p) au domaine discret (variable z) peut
seffectuer en remplaçant p par , mais cette transformation ne conduit pas à une forme polynômiale.
On doit donc rechercher des méthodes dapproximation.
Les méthodes de transformation étudiées ici sont :
- échantillonnage de la réponse impulsionnelle
- équivalence de la dérivation (transformation dEuler)
- équivalence de lintégration (transformée bilinéaire)
Toutes ces méthodes conservent la stabilité des filtres analogiques, une fois convertis en filtres numériques.
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.1) Introduction
zln)T/1(p e=
epTez =
Synthèse des filtres RII
81
Importance des cellules du 1er ordre et du 2e ordres
Comme dans le cas continu, un filtre dordre quelconque peut se décomposer en un ensemble de cellules
élémentaires du 1er et du 2e ordre. Par exemple, pour lordre 5 :
Chaque bloc étant défini par une fonction de transfert en z élémentaire :
(N=1) (N=2)
Du point de vue de la programmation, chaque bloc fonctionnel correspond à un ensemble de lignes de programme
calculant s(n) en fonction de e(n) et des valeurs mémorisées :
- e(n-1) et s(n-1) pour le 1er ordre,
- e(n-1), e(n-2), s(n-1) et s(n-2) pour le 2e ordre.
N=2 N=2 N=1
22
11
22
110
zbzb1zazaa
)z(E)z(S
−−
−−
++++=
11
110
zb1zaa
)z(E)z(S
−
−
++=
N=2
≡H1 H2 H3
N=1 N=5
H
N=3
e(n-2) s(n-2)e(n-1) s(n-1)e(n) s(n)
e(n-2) s(n-2)e(n-1) s(n-1) e(n-1)
s(n-1)
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.1) Introduction
Cellules du 1er et du 2e ordres
82
Etude de la stabilité des cellules dordre 1 et 2
Un filtre RII peut être instable. Il faut vérifier que ses pôles soient bien à lintérieur du cercle unité.
Cas du 1er ordre
Cas du 2e ordre
Le dénominateur possède 2 racines :
Dans le cas où des pôles de la fonction de transfert en z sont proches du cercle unité, il faut faire attention quils
ne se trouvent pas déplacés en dehors de ce cercle à la suite darrondis numériques.
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.1) Introduction
1
110
bz1zaa)z(H −
−
++=
22
11
22
110
zbzb1zazaa
)z(H −−
−−
++++
=
1b <
1b < ee ff +<−ec
ec
ffffb
+π−π=
2b4bb
z,z 2211
21
−±−=
12
b4bb1 2
211 <−±−
<−
+<+<−1bb1bb
21
21 1bb 21 +<
Stabilité des cellules élémentaires
83
Principe de léchantillonnage de la réponse impulsionnelle (système à 1 pôle simple)
On peut passer de la fonction de transfert en p (continue) à la fonction de transfert en z (échantillonnée), et donc à
léquation aux différences que lon peut programmer, en échantillonnant la réponse impulsionnelle :
z=1 correspond à la fréquence nulle. Le gain pour z=1 est égal à :
Il nest pas nul, alors que cest le cas de la fonction analogique de départ.
Il faut donc multiplier H(z) par 1/H0 :
Finalement :
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.1) Méthode de léchantillonnage de la RI
ipp1)p(H−
= tp ie)t(h = einTpe)n(h =
1Tp
n1Tp
n
n
0n
1Tp
0n
nnTp
0n
n
ze1)ze(1lim)z.e(z.ez).n(h)z(H
ei
eieiei
−
−
∞→
∞
=
−∞
=
−∞
=
−
−−==== ∑∑∑
)z(Sze)z(EH1)z(S 1Tp
0
ei −+= )1n(se)n(eH1)n(s eiTp
0
−+=
eiei Tp1z
1Tp0 e11
ze11H
−=
−=
=−
1Tp0
ze1H/1)z(H
ei −−−=
)z(E)z(S)z(H =
Synthèse par échantillonnage de la RI : principe
TL-1 éch. Te
TZ1Tp ze1
1)z(Hei −−
=
TZ-1
eiTp0 e11H
−=avec
84
Filtre passe-bas du 1er ordre
Le cellule élémentaire passe-bas du 1er ordre est un exemple du système à un pôle simple étudié précédemment :
jω=p TL-1 éch. Te
TZ
Pour assurer un gain nul à f=0, il faut modifier H(z) :
avec
Finalement :
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.1) Méthode de léchantillonnage de la RI
c
c
p)p(H
ω+ω= t
cce)t(h ω−ω= ecnT
ce)n(h ω−ω=
c
j1
1)j(H
ωω+
=ω
1Tc
0n
n
ze1z).n(h)z(H
ec −ω−
∞
=
−
−ω== ∑
ecT0 e11H ω−−
=1T0
ze1H/1)z(H
ec −ω−−=
)z(Sze)z(EH1)z(S 1T
0
ec −ω−+= )1n(se)n(eH1)n(s ecT
0
−+= ω−
)z(E)z(S)z(H =
Echantillonnage de la RI : passe-bas du 1er ordre
TZ-1
85
Exemple
Soit à programmer un filtrage à laide de la fonction de transfert du 1er ordre suivante, avec fc=1Hz :
On échantillonne sa réponse impulsionnelle à fe=100Hz. On a :
Fonction de transfert en z :
Equation aux différences correspondante :
Programmation avec Scilab
fc=1;
fe=100;
a=[0,1-exp(-2*%pi*fc/fe)]; //coef. num. fonction transfert
b=[-exp(-2*%pi*fc/fe), 1]; //coef. dén.num=poly(a, "z", "coef");
den=poly(b, "z", "coef");sys=syslin('d', num, den);
bode(sys, 0.001, 0.3)
c
j1
1)j(H
ωω+
=ω
)1n(s9391,0)n(e0609,0 −+=
1T0
ze1H/1)z(H
ec −ω−−=
0609,0e1e1H/1 2,0T0
ec =−=−= π−ω−
112,0 z9391,010609,0
ze10609,0
−−π− −=
−=
-410
-310
-210
-110
010
-35
-30
-25
-20
-15
-10
-5
0
Magnitude
Hz
db
-410
-310
-210
-110
010
-70
-60
-50
-40
-30
-20
-10
0
Phase
Hz
degrees
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.1) Méthode de léchantillonnage de la RI
)1n(se)n(e)H/1()n(s ecT0 −+= ω−
Synthèse par échantillonnage de la RI : exemple
86
Autres filtres
Filtre passe-bas du 2e ordre
Dans les 2 cas, on peut connaître la TZ-1 (=H(z)), en utilisant la table des transformées.
Filtre passe-haut du 1er ordre
La fonction de transfert possède un pôle et un zéro (nul) :
En mettant H(z) sous forme rationnelle, on peut alors la transformer en équation aux différences.
Limitations
Léchantillonnage de la RI périodise le spectre du filtre analogique. Or, le spectre dun filtre passe-haut nest pas limité dans les hautes fréquences ; il y a donc chevauchement des spectres.Cette méthode de transformation nest donc pas adaptée aux filtres passe-haut et passe-bande à bande large.
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.1) Méthode de léchantillonnage de la RI
Synthèse par échantillonnage de la RI : limitations
i
i
i ppp1
ppp)p(H
−+=
−=
cc
c
/j111
/j1/j)j(H
ωω+−=
ωω+ωω=ω
TL-1t
cce)t()t(h ω−ω−δ=
ecnTce)n()n(h ω−ω−δ=
éch. Te TZ1T
c
ze11)z(H
ec −ω−−ω−=
( )2cc /j/j211)j(H
ωω+ωωξ+=ω
TL-1
selon la valeur de ξ :
ϕ+ω=
+=
α )tcos(ae)t(hou
beae)t(h
t
trtr 21
87
Méthode de léquivalence de la dérivation (transformation dEuler)
Principe
Approximation de la dérivée dune fonction continue :
Te période déchantillonnage
Dérivateur en échantillonné : Dérivateur en continu : Identification :
Limitations
Par définition, ; son développement limité au voisinage de 0 est : , donc pour pTe<<1.
Rappel du développement en série entière dune fonction, au point a :
Léquivalence est donc valable uniquement pour pTe<<1.
On peut démontrer que cette méthode transforme laxe imaginaire du plan p en un cercle de centre 1/2 et de rayon 1/2(au lieu du cercle centré sur 0 et de rayon 1 de la TZ). Elle nest donc correcte que pour les basses fréquences, etnest pas adaptée aux filtres devant laisser passer des fréquences élevées.
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.2) Méthode de léquivalence de la dérivation
dt)t(de)t(s =
eT)1n(e)n(e)n(s −−=
e
1
Tz1
)z(E)z(S −−= p
)p(E)p(S =
e
1
Tz1p−−=
)ax()ax(...)a(f!n
)ax(...)a(''f!2
)ax()a('f)ax()a(f)x(f n)n(n2
−ε−++−++−+−+=
epTez = e1 pT1z −≈−
e1 T/)z1(p −−≈
Synthèse par transformation dEuler
88
Méthode de léquivalence de la dérivation (transformation dEuler)
Exemple : circuit RC série
Programme Scilab :
tho=1/(2*%pi); //->fc=1/(2*%pi*tho)=1
fe=100; //fc=0,01 en fréquence réduite
Te=1/fe;
beta=Te/(Te+tho);
a=[beta,0];
b=[-(1-beta),1];
num=poly(a, "z", "coef");
den=poly(b, "z", "coef");
den=poly(b, "z", "coef");
sys=syslin('d', num, den)
bode(sys, 0.0001, 0.5);
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.2) Méthode de léquivalence de la dérivation
)1n(sT
RC1T
RC)n(s)n(eee
−−
+=
)t(sdt
)t(dsRC)t(e += )n(s)T
)1n(s)n(s(RC)n(ee
+−−=
RCTT
e
e
+=β)1n(s)1()n(e)n(s −β−+β=
-410
-310
-210
-110
010
-35
-30
-25
-20
-15
-10
-5
0
Magnitude
Hz
db
-410
-310
-210
-110
010
-180
-160
-140
-120
-100
-80
-60
-40
-20
0
Phase
Hz
degrees
Exemple de transformation dEuler
89
Méthode de la transformée bilinéaire (équivalence de lintégration)
Principe
Approximation de lintégrale dune fonction continue (basée sur la méthode des trapèzes) :
Intégrateur en échantillonné : Intégrateur en continu : Identification :
Exemple pour lordre 2
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.3) Méthode de la transformée bilinéaire
∫=t
0
dt).t(e)t(s
1
1e
z1z1
2T
)z(E)z(S
−
−
−+= 1
1e
z1z1
2T
p1
−
−
−+=
1z1z.
T2p
e +−=
2)1n(e)n(eT)1n(s)n(s e
−++−=
p1
)p(E)p(S =
221
2210
pbpb1papaa
)p(E)p(S)p(H
−−++==
22
11
22
110
z'bz'b1z'az'a'a
)z(X)z(Y)z(H −−
−−
−−++==
1z1z.
T2pe +
−=
Synthèse par transformée bilinéaire
Te période déchantillonnage
90
Exemple passe-bas du 1er ordre
On cherche à la mettre sous la forme :
On obtient :
Exemple numérique et programmation avec Scilab
fe=100Hz, fc=1
fe=100;
fc=1;den=%pi*fc+fe;
H0=%pi*fc/den;H1=fe/den;
a=[H0,H0];b=[H0-H1,1];
num=poly(a, "z", "coef");den=poly(b, "z", "coef");
sys=syslin('d', num, den)bode(sys, 0.0001, 0.2)
c
j1
1)j(H
ωω+
=ω
c
p1
1)p(H
ω+
=
1z1z.
ff1
1)z(H
c
e
+−
π+
=
( ) 110
1
01
ec
ec
1
ec
c
zHH1z1H
zffff1
z1ff
f)z(H −
−
−
−
−++=
+π−π+
++ππ=
1
11
0 bz1za1H)z(H −
−
++=
ec
c0 ff
fH+ππ=
ec
e1 ff
fH+π
=
-410
-310
-210
-110
010
-30
-25
-20
-15
-10
-5
0
Magnitude
Hz
db
-410
-310
-210
-110
010
-90
-80
-70
-60
-50
-40
-30
-20
-10
0
Phase
Hz
degrees
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.3) Méthode de la transformée bilinéaire
1er exemple de transformée bilinéaire
avec et
91
Exemple passe-haut du 1er ordre
On cherche à la mettre sous la forme :
On obtient :
Exemple numérique et programmation avec Scilab
fe=100Hz, f1=1 (fc/fe=0,01)
fe=100;fc=1;
den=%pi*fc+fe;
H1=%pi*fc/den;H0=fe/den;
a=[-H0,H0];b=[H1-H0,1];
num=poly(a, "z", "coef");den=poly(b, "z", "coef");
sys=syslin('d', num, den)bode(sys, 0.0001, 0.5)
c
c
j1
j)j(H
ωω+
ωω
=ω
c
cp1
p
)p(H
ω+
ω=
1z1z.
ff1
1z1z.
ff
)z(H
c
e
c
e
+−
π+
+−
π=
1
11
0 bz1za1H)z(H −
−
++=
ec
e0 ff
fH+π
=ec
c1 ff
fH+ππ=1
01
1
0
ec
ec1
1
ec
e
z)HH(1z1H
ffffz1
z1.ff
f)z(H −
−
−
−
−+−=
+π−π+
−+π
=
-410
-310
-210
-110
010
-45
-40
-35
-30
-25
-20
-15
-10
-5
0
Magnitude
Hz
db
-410
-310
-210
-110
010
-100
102030405060708090
Phase
Hz
degrees
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.3) Méthode de la transformée bilinéaire
2e exemple de transformée bilinéaire
avec et
92
Exemple passe-bas du 2e ordre
?
avec
Exemple numérique et programmation avec Scilab
fe=100Hz, fc=1Hz (fc/fe=0,01), ξ=0,1
fc=1;fe=100;
xi=0.1;H0=1/(1+2*xi*fe/%pi/fc+(fe/%pi/fc)*(fe/%pi/fc));
a0=H0;
a1=2*H0;a2=H0;
b0=1;b1=2*(1-(fe/%pi/fc)*(fe/%pi/fc))*H0;
b2=(1-2*xi*fe/%pi/fc+(fe/%pi/fc)*(fe/%pi/fc))*H0;a=[a2,a1,a0];
b=[b2,b1,b0];…
2
00
jj21
1)j(H
ωω+
ωωξ+
=ω
1z1z.
T2pe +
−=
22
11
22
11
0 zbzb1zaza1
H)z(H −−
−−
++++
=
22cece0
12ce0
21
0 z))f/f(f/f21(Hz))f/f(1(H21zz21
H)z(H −−
−−
π+πξ−+π−+++
=2
c
e
c
e
0
ff
ff21
1H
π
+π
ξ+
=
-310
-210
-110
-50
-40
-30
-20
-10
0
10
20
Magnitude
Hz
db
-310
-210
-110
-180
-160
-140
-120
-100
-80
-60
-40
-20
0
Phase
Hz
degrees
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.3) Méthode de la transformée bilinéaire
3e exemple de transformée bilinéaire
93
Amélioration de la transformée bilinéaire
Analysons plus en détail la transformée bilinéaire telle que définie précédemment.On a effectué le changement de variable suivant :
Or Ha(p)=p est la fonction de transfert dun dérivateur : |Ha(p)|= |Ha(jω)|=ω et arg(Ha(p))=arg(Ha(jω))=π/2.Pour la partie en z de léquivalence, on a :
La phase nest donc pas modifiée par la transformation.Par contre, le module est modifié quand f → fe/2 ; en effet : ωTe/2 → π/2 ↔
La réponse en fréquence du filtre numérique ne correspond donc plus à son équivalent analogique quand f → fe/2 .
Pour pallier à cet inconvénient, on réalise une pré-distorsion des fréquences :avant dappliquer la transformée bilinéaire précédente. on modifie une fréquence caractéristique du filtre : fréquence de coupure dans les cas passe-bas et passe-haut, fréquence centrale dans les cas passe-bande et coupe-bande.
Exemple : ωc, pulsation de coupure :
La transformée bilinéaire est ensuite appliquée ; la valeur de ωc pour le filtre numérique correspond alors bien à celle du filtre analogique de départ.
2Ttg.
T2' ec
ec
ω=ω
1z1z.
T2p
e +−=
1z1z.
T2)z(He
n +−=
)2T(tg
Tj2...
1e1e.
T2)j(H e
eTj
Tj
en e
e ω==+−=ω ω
ω
)2T(tg
T2)j(H e
en
ω=ω2
))j(Harg( nπ=ω
∞→ω)j(Hn
(on peut vérifier que pour ωc, on trouve bien |Hn(jω)|= ωcle gain du filtre analogique à cette pulsation)
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.3) Méthode de la transformée bilinéaire
Amélioration de la transformée bilinéaire (1/3)
94
Amélioration de la transformée bilinéaire
Exemple avec cellule passe-bas du 2e ordre
avec ωc=1rad/s et
On effectue un échantillonnage des signaux à fe=1Hz.On applique la pré-distorsion de fréquence à ωc :
Intérêt de la transformation
Un intérêt important de cette transformation est quelle comprime toutes les fréquences dans la bande de Shannon (0-fe/2).Tout repliement spectral est alors impossible. Elle est adaptée à tous les types de filtres, même passe-haut.
Cette méthode de transformation est la plus utilisée en pratique.
0926,15463,0tg221tg.2
2Ttg.
T2' ec
ec ===ω=ω
2
cc
jj21
1)j(H
ωω+
ωωξ+
=ω 22=ξ
2pp211)p(H++
=
22 p8377,0p2944,111
0926,1p
0926,1p21
1)p(H++
=
++
= ...)z(H =
1z1z.
T2pe +
−=
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.3) Méthode de la transformée bilinéaire
Amélioration de la transformée bilinéaire (2/3)
95
Amélioration de la transformée bilinéaire
Exemple Matlab (fonction "bilinear")
Lexemple suivant montre les conséquences de lapplication de la transformée bilinéaire et de la transformée bilinéaire modifiée par rapport à la courbe de réponse (en dB) du filtre analogique correspondant. On constate que :- les courbes de réponse des 2 filtres RII tendent vers fe/2 ;- la courbe de réponse du filtre RII calculé avec la transformée bilinéaire à pré-distorsion possède bien
la même fréquence datténuation minimale en bande passante que le filtre analogique correspondant.
fe=4000; fp=1000; fa=3000; Ap=1; Aa=40;
wp=2*pi*fp; wa=2*pi*fa;
[N,Wc]=buttord(wp,wa,Ap,Aa,'s');
[b,a]=butter(N,Wc,'s'); %Filtre analogique de Butterworth
[bb,ab]=bilinear(b,a,fe); %sans prédistorsion[bbp,abp]=bilinear(b,a,fe,fp); %avec prédistorsion en fp
L=64;
[Ha,wa]=freqs(b,a,L);
[Hn,wn]=freqz(bb,ab,L,fe);
[Hnp,wnp]=freqz(bbp,abp,L,fe);
semilogx(wa/(2*pi),20*log10(abs(Ha)),':'); %pointilléhold on;title('Butterworth : analogique (pointillé), RII (hachuré), RII rectifié (trait plein)');
semilogx(wn,20*log10(abs(Hn)),'--'); %ligne hachuréesemilogx(wnp,20*log10(abs(Hnp)),'-'); %trait plein
grid;
103
-60
-50
-40
-30
-20
-10
0
Butterworth : analogique (pointillé), RII (hachuré), RII rectifié (tra it plein)
II) Synthèse de filtres numériquesII.3) Filtres RIIII.3.3) Méthode de la transformée bilinéaire
Amélioration de la transformée bilinéaire (3/3)
96
97
Principe général de la synthèse des filtres RIF (à Réponse Impulsionnelle Finie)
Le principe de la synthèse des filtres RIF est de partir de la réponse en fréquence désirée.Puisquon est dans le domaine de léchantillonné, ces réponses sont périodiques, de période fe.Par exemple, dans le cas dun passe-bas :
La phase idéale est nulle. La réponse en fréquence est donc réelle pure.Les méthodes de synthèse sont basées sur la Transformée de Fourier inverse de cette réponse idéale : - synthèse par TF inverse, ou par décomposition en série de Fourier de la réponse fréquentielle (ce qui revient au même) ;- synthèse par TFD inverse.
Elles consistent à déterminer le nombre et la valeur des coefficients du filtre (que lon notera hi), qui sont également ceux de léquation aux différences :
La réponse en fréquence idéale dun filtre passe-bas périodisé à fe est la TF dun sinus cardinal, échantillonné à Te=1/fe.Ce dernier constitue la réponse impulsionnelle du système. Ses échantillons sont les coefficients hi.
La séquence des coefficients hi est infinie ; elle doit donc être tronquée.De plus, elle nest pas causale ; elle doit donc être décalée vers t>0 pour devenir causale.
II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.1) Principe général
)Pn(eh...)2n(eh)1n(eh)n(eh)n(s P210 −++−+−+=
fc-fc ffe-fe
1
Principe de la synthèse des RIF
fe/2-fe/2
98
Synthèse des filtres RIF (à Réponse Impulsionnelle Finie) par transformée de Fourier inverse du spectre
Calcul de la Transformée de Fourier du spectre périodisé :
La périodisation du motif (période fe) provoque une multiplication de la TF de ce motif par un peigne de Dirac :
En fonction des fréquences réduites (fc→Fc=fc/fe), cette expression devient :
)f(rect)f(Scf2= →←F )tf2(csinf2)t(h cc π=
∑∑∑+∞
−∞=
+∞
−∞=
+∞
−∞=
−δπ=−δ=−δ=n
eeccen
eeen
eee )nTt().nTf2(csinf2T)nTt().nT(hT)nTt()t(hT)t(h
II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
)nTf2(csinTf2)n(h ecec π=
)nF2(csinF2)n(h cc π=
Synthèse des RIF par TF inverse : principe (1/3)
f
cf/1
n
cf2
n2
99
Autres filtres
Pour les autres types de filtres, le même calcul donne les résultats ci-dessous.
Passe-haut
Passe-bande
Coupe-bande
II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
fcfc ffe/2
-fe/2
→←F
fc2fc1 ffe/2-fe/2
→←F
fc2fc1 ffe/2-fe/2
→← F
)nTf2(csinTf2 e1ce1c π−
Synthèse des RIF par TF inverse : principe (2/3)
)nTf2(csinTf2)n(h e2ce2c π=
)nTf2(csinTf2)n(h e1ce1c π=
)nTf2(csinTf2 e2ce2c π−
)nTf2(csinTf2)n(h ecec π−=
100
Transformation en filtres physiquement réalisables
Les filtres possédant les réponses impulsionnelles (RI) obtenues précédemment ne sont pas physiquement réalisables, pour 2 raisons :
- ces RI sont centrées sur 0, donc non-causales ;- leur durée est infinie (= elles sont à support non-borné).
Pour les rendre physiquement réalisables, il est donc nécessaire de :- tronquer ces RI ;- les décaler pour que tous leurs éléments soient nuls pour t<0.
Après troncature et décalage des RI, leurs expressions deviennent (en fréquences réduites, avec F=f/fc) :
Passe-bas :
Passe-haut :
Passe-bande :
Coupe-bande :
avec, dans tous les cas : n=0,,N-1, n0=N/2 pour N pair et n0=(N-1)/2.
( )c0c F)nn(2csinF2)n(h −π=
( )c0c F)nn(2csinF2)n(h −π−=
( ) ( )1c01c2c02c F)nn(2csinF2F)nn(2csinF2)n(h −π−−π=
( ) ( )2c02c1c01c F)nn(2csinF2F)nn(2csinF2)n(h −π−−π=
II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
Synthèse des RIF par TF inverse : principe (3/3)
101
Conséquences de la troncature de la réponse impulsionnelle (raisonnement dans le domaine continu)
Sur le plan théorique, la réponse impulsionnelle (RI) h(n) est une séquence de taille infinie.En pratique, elle doit être tronquée, pour que le nombre de coefficients soit fini.Cette troncature revient à multiplier la RI initiale par une fenêtre carrée w(t), centrée sur 0 :
Dans le domaine des fréquences, cette troncature se traduit par un produit de convolution :
Pour lexemple de la réponse en fréquence H(f) dun passe-bas et h(t) la réponse impulsionnelle correspondante :
* =
Après troncature de la RI, la réponse en fréquence pratique possède des oscillations en bande passante et en bandeatténuée, et ses pentes de variation sont moins importantes quen théorie.
Interprétation :
- pour que la réponse fréquentielle réelle se rapproche le plus possible de celle qui est désirée, le nombre de coefficients du filtre N doit être le plus grand possible ;
- plus N est petit, plus la fréquence de coupure obtenue sera inférieure à la fréquence de coupure désirée.
)t(w)t(h)t('h ×=
)f(W*)f(H)f('H =
Synthèse des RIF par TF-1, physiquement réalisable (1/2)II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
H(f)
H(f)
f
W(f)
fc f
H(f)
-fc
102
Conséquences du décalage de la réponse impulsionnelle
On sait quun décalage temporel se traduit par un déphasage du signal (→ la phase nest plus nulle).On cherche à savoir si la phase est linéaire, en fonction de la fréquence (cest lun des critères de synthèse).
Rappels :continu discret
temps propag. :
Interprétation : - La phase est donc bien une fonction linéaire de la fréquence.- Le temps de propagation de groupe est constant (le signal nest donc pas déformé).
(*) démonstration :
puis changement de variable k=k-n
0g tdf
)f(d21
d)(d =ϕ
π−=
ωωϕ−=τ
0ft2)f( π−=ϕ
)f(X)t(x F→←0ft2jF
0 e)f(X)tt(x π−→←−)f(X)k(x F→←
efnT2jF e)f(X)nk(x π−→←−
efnT2)f( π−=ϕ
eg nT=τ
∑∑∑+∞
−∞=
π−+∞
−∞=
+∞
−∞=
=→←−δ=−δ=k
fkT2jF
ke
kee
ee)k(x)f(X)kTt()k(x)kTt()t(x)t(x
)nk(y)k(x −= ∑+∞
−∞=
π−−=k
fkT2j ee)nk(y)f(Y
phase :
(*)
Synthèse des RIF par TF inverse, physiquement réalisable (2/2)II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
103
Conséquence de la symétrie des coefficients
Les réponses impulsionnelles étudiées précédemment présentent toutes une symétrie par rapport à leur valeur centrale, et les filtres correspondant sont à phase nulle (avant décalage).
On peut montrer que cest une généralité. Soit x(k) une séquence infinie. Sa TF est définie par :
En effectuant le changement de variable k=-u, et en utilisant la propriété : x(k)=x(-k) , on peut montrer que lon obtient :
La Transformée de Fourier dune séquence déchantillons x(k) présentant une symétrie x(k)=x(-k) est donc réelle pure.(↔ sa phase est nulle).De même, on pourrait montrer que cest également le cas si les coefficients sont anti-symétriques (x(k)=-x(-k))
Application au filtre FIR étudié
Soit la réponse impulsionnelle discrète h(n), composée de N échantillons.Lindice de lélément central est N/2 si N pair, N/2-1 si N impair.
N indices déchantillons décalage phase temps de propagation de groupe
impair [-(N-1)/2,,(N-1)/2] (N-1)/2 pair [-N/2,,N/2-1] N/2
∑∑∑∞
=
π−−
−∞=
π−+∞
−∞=
π− ++==1k
fkT2j1
k
fkT2j
k
fkT2j eee e)k(x)0(xe)k(xe)k(x)f(X
∑∞
=
π+=1k
e)fkT2cos()k(x2)0(x)f(X
fT)2/)1N((2 e−π− eT)2/)1N(( −fT)2/N(2 eπ−
eT)2/N(
Conséquence de la symétrie des coefficientsII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
104
2e méthode de détermination des coefficients h(n) : par décomposition en série de Fourier du spectre damplitude
Le spectre damplitude étant périodique de période fe, on peut également le décomposer en série de Fourier.
Rappel : un signal périodique s(t) peut se mettre sous la forme :
avec
Ici, la fonction à développer est la réponse en fréquence H(f) :
La partie imaginaire peut être annulée :
Exemple : cas passe-bas, avec N impair :
ou, en fréquences réduites :
On retrouve bien le même résultat quavec la transformée de Fourier inverse.Cette RI doit ensuite être rendue physiquement réalisable (par troncature et décalage).
∫π−
=T
0Tt2jndte).t(s
T1)n(c∑
+∞
−∞=
π=
n
Tt2jn
e).n(c)t(s
Synthèse des RIF par développement en série de FourierII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
∑+∞
−∞=
π=n
fT2jn ee).n(h)f(H ∫ π−= e ef
0
fT2jne dfe).f(HT)n(h
( )∫ π= ef
0 ee dfnfT2cos).f(HT)n(h
avec
)nF2(csinF2)n(h cc π=
( ) )Tnf2(csinTf2...dfnfT2cosT2)n(h ecec
f
0 eec π==π= ∫
105
Lire la valeur de N (nombre de coefficients du filtre)si N pair
p=N/2sinon
p=(N-1)/2Lire la valeur de la fréquence de coupure normalisée FcPour k variant de 0 à N-1 //calcul des coefficients h(i) du filtre
si k!=ph(k+1)=sin(2*pi*(k-p)*Fc)/((k-p)*pi); //k-p pour le décalage
sinonh(k+1)=2*Fc; //sinus(x)/x pour x=0 traité à part
Diviser les coefficients h(i) par leur somme
N=10if modulo(N,2)==0 //si N pair
p=N/2;else
p=(N-1)/2; //si N impairendFc=0.01for k=0:N-1
if k~=ph(k+1)=1/(k-p)/%pi*sin(2*Fc*(k-p)*%pi);
elseh(k+1)=2*Fc; //cas sin(x)/x pour x=0 traité à part
endendsomme=sum(h);h=h/somme; //division des coefficients par leur somme
Algorithme du cas passe-bas
Programme Scilab correspondant
II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
Synthèse des RIF par TF inverse : programmation
106
h0= 0.0989147h1= 0.0995054 = h9h2= 0.0999662 = h8h3= 0.1002962 = h7h4= 0.1004945 = h6h5= 0.1005607
Résultats obtenus :
Exemple : Réalisation dun filtre passe-bas avec fe=44100Hz, fc=4410Hz et N=10
Fréquence de coupure relative : Fc=0,01 Décalage :
RI du passe-bas avant décalage : , n=-5,,4
Après décalage : , n=0,,9
Affichage graphique :num=poly(h, "z", "coef");
sys=syslin('d', num, 1);
bode(sys, 0.0001, 0.3);
Synthèse des RIF par TF inverse : exempleII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
52Nn0 ==
( )π−π−
= )5n(02,0sin)5n(
1)n(h
( )cc nF2csinF2)n(h π=
( )c0c F)nn(2csinF2)n(h −π=
107
Diminution des ondulations en bande atténuée par fenêtrage
Il existe des oscillations dans la fonction de transfert, au niveau des bandes de transition.Il sagit du phénomène de Gibbs Ce phénomène peut être compensé par un fenêtrage de la réponse impulsionnelle.Ce fenêtrage consiste à multiplier la réponse impulsionnelle avec une fenêtre pouvant avoir plusieurs formes possibles.Une fenêtre couramment utilisée est celle dite de Hamming, définie par :
k=-(N-1)/2,0,,(N-1)/2
(= 0 pour les autres valeurs de k)
Exemple
N=10;fc=0.01;if modulo(N,2)==0 //cas N pair
p=N/2else
p=(N-1)/2 //cas N impairendfor k=0:N-1
w(k+1)=0.56+0.44*cos(2*%pi*(k-p)/N);if(k==p)
h(k+1)=2*fc*w(k+1);else
h(k+1)=w(k+1)*sin(2*%pi*(k-p)*fc)/((k-p)*%pi);end
end
π×+=
N2kcos46,054,0wk
Synthèse des RIF par TF inverse : fenêtrageII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
108
Synthèse à partir dun gabarit
Comme pour les filtres analogiques, on peut définir un gabarit dans lequel doit se situer la réponse en fréquence.Du fait du principe de synthèse utilisé, ce gabarit est un peu différent de celui utilisé dans le cas des filtres analogiques :
les ondulations en bande passante se font autour de |H(f)|=1.
Il existe une formule empirique permettant de déterminer lordre du filtre, en fonction des paramètres de ce gabarit :
)10
1(logf3
2N21
10 δδ∆≈
Synthèse des RIF par TF inverse : gabaritII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
f∆
109
Exemple de calcul
Synthèse des RIF par TF inverse : exemple de calculII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.2) Synthèse par TF inverse du spectre
110
Principe de la synthèse de filtres RIF par Transformée de Fourier Discrète inverse (TFD-1) du spectre damplitude
On définit dabord la réponse fréquentielle désirée pour le filtre RIF. Elle est ensuite échantillonnée.Sa TFD-1 est calculée ; le résultat correspond à la réponse impulsionnelle (RI) du filtre (donc aux coefficients du RIF).
Rappel de lexpression de la TFD :
, k=0,,N-1 , n=0,,N-1
directe inverse
Le principe consiste à considérer que le filtre est réel, et donc que la partie imaginaire est nulle :
Le résultat correspond aux échantillons de la réponse impulsionnelle. Celle-ci est réelle et impaire (donc non causale).Pour que le filtre soit réalisable, il faut rendre la RI causale : elle doit être décalée de n0 échantillons vers la droite, avec :
N pair : n0=N/2 ; N impair : n0=(N-1)/2
Lexpression de h(n) peut alors sécrire :
soit : n=0,,N-1
H0 correspond à une fréquence nulle et HN-1 à fe-fe/N . La résolution fréquentielle est fe/N (1/N en fréquences réduites).
∑−
=
π−=
1N
0n
Nnk2j
e)n(x)k(X ∑−
=
π
=1N
0k
Nnk2j
e)k(XN1)n(x
∑−
=
π=
1N
0k Nnk2cos)k(X
N1)n(x
)nn(x)n(h 0−=
( )∑−
=
−π=
1N
0n0nn
Nk2cos).k(H
N1)n(h
Nkff e
)f(H)k(H=
=
fc f(Hz)0
H(f)
fe
Synthèse des RIF par TFD inverse : principeII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.3) Synthèse par TFD inverse du spectre
111
Exemple
Filtre passe-bas, avec N=16, Hn=1 pour n variant de 0 à 2 et de 14 à 15, et Hn=0 pour n variant de 3 à 13.
, n0=N/2=8 , k=0,1,,15
La fréquence de coupure réduite est égale à : fc=2/N=2/10=0,25. Cest approximativement ce quon observe sur la figure.
Programme Scilab :
N=10; if modulo(N,2)==0 //cas N pairp=N/2;
else //cas N impairp=(N-1)/2;
end Nc=3; //correspond à fc=Nc/Nfor n=0:N-1 if(n<Nc)H(n+1)=1;
end,if(n>N-Nc) H(n+1)=1;
end,endfor k=0:N-1somme=0; for n=0:N-1somme=somme+H(n+1)*cos(2*%pi*n*(k-p)/N);
end,h(k+1)=1/N*somme;
end
( )∑=
−π=
15
0k
8n16
k2cos161)n(h( )∑
−
=
−π=
1N
0k0nn
Nk2cos).k(H
N1)n(h
-210
-110
010
-50
-40
-30
-20
-10
0
10
Magnitude
Hz
db
-210
-110
010
-500-450-400-350-300-250-200-150-100
-500
Phase
Hz
degrees
Coefficients :
h0= 0,1h1= 0 = h9h2=-0,1236068 = h8h3= 0 = h7h4= 0,3236068 = h6h5= 0,35
Synthèse des RIF par TFD inverse : exempleII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.3) Synthèse par TFD inverse du spectre
112
Amélioration par fenêtrage
Modification du programme de lexemple précédent :
...
for k=0:N-1
w(k+1)=0.54+0.46*cos(2*%pi*(k-p)/N);
somme=0;
for n=0:N-1
somme=somme+H(n+1)*cos(2*%pi*n*(k-p)/N);
end,
h(k+1)=1/N*somme*w(k+1);
end
...
Lamélioration est notable.
Limitations
Si le nombre déchantillons hk du filtre est limité, la résolution fréquentielle lest également.Par exemple, avec N=10, on passe directement dune fréquence de coupure fc=2/N=2/10=0,2 à fc=3/10=0,33 (pour une application audio, avec fe=44100Hz, cela représente respectivement 0,2x44100=8820Hz à 0,33x44100=14700Hz.Doù la nécessité dutiliser un grand nombre de coefficients.
-210
-110
010
-60
-50
-40
-30
-20
-10
0
10
Magnitude
Hz
db
-210
-110
010
-600
-500
-400
-300
-200
-100
0
Phase
Hz
degrees
II) Synthèse de filtres numériquesII.4) Filtres RIFII.4.3) Synthèse par TFD inverse du spectre
Synthèse des RIF par TFD inverse : fenêtrage
113
Exemple numérique
Synthèse des RIF par TFD inverse : exemple de calculII) Synthèse de filtres numériquesII.4) Filtres RIFII.4.3) Synthèse par TFD inverse du spectre
114
Comparaison RII/RIF
Filtres RII
Avantages :- peu de coefficients donc calcul rapide- modélisation des filtres analogiques (et notamment possibilité dobtenir des résonances)
Inconvénients :- risque dinstabilité surtout pour les grands facteurs de qualité- les coefficients doivent être codés avec beaucoup de précision (conséquence du risque dinstabilité)- phase non-linéaire (se traduit par une déformation du signal).
Filtres RIF
Avantages :- pas de risque dinstabilité- phase linéaire- permet de synthétiser nimporte quelle fonction de transfert (sauf résonances)
Inconvénients :- nombreux coefficients surtout pour les pentes raides et les bandes passantes étroites
II) Synthèse de filtres numériquesII.5) Performances comparées des filtres RII et RIF RII vs RIF