UNIVERSITE HASSAN II – MOHAMMEDIA
FACULTE DES SCIENCES ET TECHNIQUES
Département de Génie Electrique
2002 – 2003
Projet de Traitement de signal
MST IEEA
REALISATION D’UN FILTRE PASSE HAUT ET
PASSE BANDE A L’AIDE D’UN LOGICIEL DE
CAO : MATLAB ET SIMULINK.
Présenté par :
MBALA Jimmy Tchissekedi
SIDIBE Ahminata
BOSSON Raymond Paul
Responsable :
A. BADRI
INTRODUCTION
Cette étude des filtres respectivement sous Matlab et Simulink est un moyen
pour nous autres étudiants en maîtrise IEEA de nous familiariser avec l’outil de CAO
que constitue Matlab et toutes ses composantes dont Simulink.
I°/-ETUDE DU FILTRE PASSE HAUT.
1°/-Définition.
Un filtre passe haut est avant tout un dispositif électronique composé de
dipôles actifs, qui laisse passé les hautes fréquences mais atténue les basses
fréquences. Une expression généralisée de la fonction de transfert du filtre passe
haut est de la forme :
H (p) = (p²/ω0²) / (1+2mp/ω0+ p²/ω0²)
2°/-Etude du comportement du filtre passe haut sous Matlab.
Cette étude est très importante en ce sens qu’elle nous permettra d’avoir une
idée bien précise du comportement de notre filtre passe haut. Ainsi nous pourrons
faire une étude fréquentielle (Lieux de Black, Bode et Nyquist) et temporelle
(réponse impulsionnelle, indicielle et à une rampe) pour voir dans les moindres
détails le comportement de notre fonction de transfert.
Nous avons comme paramètres de notre filtre les valeurs suivantes :
m=0.1 ω0=10∏ fo=50 Hz fe≥2f
Pour les valeurs ci-dessus énumérées on obtient comme fonction de
transfert :
H (p) = (10E-03p²)/ (1 + 2.E-04p + 10E-03p²)
A°/-Etude fréquentielle.
Nous tracerons ici les diagrammes de Bode, Black et de Nyquist, graphes qui nous
donnerons une idée sur la stabilité du filtre passe haut.
Instructions sous Matlab: Pour avoir les lieux de Bode, Nichols et Nyquist.
To get started, type one of these: helpwin, helpdesk, or [Link] product
information, type tour or visit [Link].
» num=[0.001 0 0]
num =
0.0010 0 0
» den=[0.001 0.0002 1]
den =
0.0010 0.0002 1.0000
» printsys(num,den)
num/den =
0.001 s^2
--------------------------------=H(s)
0.001 s^2 + 0.0002 s + 1
» Bode(num, den)
» nichols(num,den)
» axis([0 180 -200 50])
» axis([-180 180 -200 50])
» grid
» Bode (num, den)
» Grid
» Nyquist (num, den)
» Grid
» axis([-100 100 -200 200])
On obtient les graphes suivants :
Bode Diagrams
40
20
P has e (deg); M agnitude (dB )
0
-20
-40
-60
150
100
50
0
0 1 2
10 10 10
Frequency (rad/sec)
Diagramme de Bode du filtre passe haut.
Bande passante Bp = [20.6 rad/s ; +∞ [
Fréquence maximale =31.36 rad/s.
Nichols Charts
50
0
O pen-Loop G ain (dB )
-50
-100
-150
-200
-150 -100 -50 0 50 100 150
Open-Loop Phase (deg)
diagramme de black Nichols du filtre passe haut.
Nyquist Diagrams
200
150
100
Im aginary Ax is
50
-50
-100
-150
-200
-100 -50 0 50 100
Real Axis
Diagramme de Nyquist du filtre passe haut.
Analyse et interprétation :
B°/-Etude temporelle
Nous étudierons la réponse du filtre à une entrée impulsionnelle, indicielle et pour
terminer sinusoïdale afin de mieux comprendre son comportement. Elle nous permet
en effet d’avoir une idée sur la rapidité et la précision de notre filtre.
Instructions sous Matlab: Pour avoir respectivement les réponses impulsionnelle,
indicielles et à une sinusoïdale
» num=[0.001 0 0];
» den=[0.001 0.0002 1];
» printsys(num, den)
num/den =
0.001 s^2
--------------------------------=H(s)
0.001 s^2 + 0.0002 s + 1
» t=[0:0.1:10];
» y1=impulse (num, den, t);
» Plot (t, y1)
» Xlabel ('t'), ylabel ('y1')
» Axis ([0 4 -20 20])
» Grid
» t= [0:0.1:10];
» y2=step (num, den, t);
» Plot (t, y2)
» Xlabel ('t'), ylabel ('y2')
» Axis ([3 10 -1 1])
» grid
» t=[0:0.1:10];
» u=sin(t);
» y3=lsim(num, den, u, t);
Warning: Input U has been resampled to show intersample oscillations.
> In C:\MATLAB\toolbox\control\@lti\lsim.m at line 176
In C:\MATLAB\toolbox\control\lsim.m at line 108
» Plot (t, y3)
» Xlabel ('t'), ylabel ('y3')
» Grid
20
15
10
0
y1
-5
-10
-15
-20
0 0.5 1 1.5 2 2.5 3 3.5 4
t
Réponse impulsionnelle du filtre passe haut
0.8
0.6
0.4
0.2
0
y2
-0.2
-0.4
-0.6
-0.8
-1
3 4 5 6 7 8 9 10
t
Réponse indicielle du filtre passe haut
0.02
0.015
0.01
0.005
0
y3
-0.005
-0.01
-0.015
-0.02
0 2 4 6 8 10 12 14 16 18 20
t
Réponse du filtre passe haut à une entrée sinusoïdale
3°/- Etude comportement du filtre sous Simulink.
Il s’agit ici de passer à l’étude numérique du filtre passe haut. Cette étude
apparaîtra sous forme de schéma graphique car il faut dire que Simulink est
l’extension graphique de Matlab permettant de représenter les fonctions
mathématiques et les systèmes sous forme de diagramme en blocs et de simuler leur
fonctionnement.
La transformée en z de la fonction de transfert H (p) nous donne :
H (z) = 4E-03 (z-1)²/(z+2.415)(z-0.415)
Schéma bloc donnant la réponse impulsionnelle :
Oscillogramme de la réponse impulsionnelle.
Schéma bloc donnant la réponse indicielle :
Oscillogramme de la réponse indicielle :
II°/-ETUDE DU FILTRE PASSE BANDE.
1)/- Définition
Un filtre passe bande est un dispositif électronique qui ne sélectionne que des
fréquences contenues dans une certaine bande et les atténue de part et d’autres de
cette bande. L’expression générale d’un filtre passe bande est la suivante :
H (p) = (2mp/ω0) / (1 + 2mp/ω0 + p²/ ω0²)
2°/-Etude du comportement du filtre passe bande sous Matlab.
m=0.1 f0=1000 Hz
Pour les valeurs ci-dessus énumérées on obtient comme fonction de
transfert :
H (p) = (3.2E-05p)/ (1 + 3.2.E-05p + 2.5E-08p²)
A°/-Etude fréquentielle.
Nous tracerons ici les diagrammes de Bode, Black et de Nyquist, graphes qui nous
donnerons une idée sur la stabilité du filtre passe haut.
Instructions sous Matlab: Pour avoir les lieux de Bode, Nichols et Nyquist.
» num=[0 0.000032 0];
» den=[0.000000025 0.000032 1];
» printsys(num, den)
num/den =
3.2e-005 s
---------------------------------------=H(s)
2.5e-008 s^2 + 3.2e-005 s + 1
» bode(num,den)
» line([100 100000],[-3 -3])
» num=[0 0.000032 0];
» den=[0.000000025 0.000032 1];
» bode(num,den)
» ginput(1)
ans =
1.0e+003 *
6.9355 -0.0027
» ginput(1)
ans =
1.0e+003 *
5.7596 -0.0027
» ginput(1)
ans =
1.0e+003 *
6.2671 -0.0005
» nichols(num,den)
» grid
» axis([-180 100 -75 0])
» Nyquist (num, den)
» Grid
On obtient les graphes suivants :
Diagramme de bode du filtre passe bande
On obtient :
La bande passante Bp= [5780 ; 6935.5] (rad/s)
Fréquence maximale fmax =6267.1 rad/s et son gain= 0 dB.
Diagramme de Nichols du filtre passe bande.
Diagramme de Nyquist du filtre passe bande.
Analyse et Interprétions :
B°/-Etude temporelle
Nous étudierons la réponse du filtre à une entrée impulsionnelle, indicielle et pour
terminer sinusoïdale afin de mieux comprendre son comportement. Elle nous permet
en effet d’avoir une idée sur la rapidité et la précision de notre filtre.
Instructions sous Matlab: Pour avoir respectivement les réponses impulsionnelle,
indicielles et à une sinusoïdale
» num=[0 3.2 E-05 0];
» den=[2.5 E-08 3.2 E-05 1];
» printsys(num, den)
num/den =
3.2 E-05 s^2
-------------------------------------=H(s)
2.5 E-08 s^2 + 3.2 E-05 s + 1
» t= [0:0.1:10];
» y1=impulse (num, den, t);
» Plot (t, y1)
» Xlabel ('t'), ylabel ('y1')
» Grid
» t= [0:0.1:10];
» y2=step (num, den, t);
» Plot (t, y2)
» Xlabel ('t'), ylabel ('y2')
» grid
» t=[0:0.1:10];
» u=sin(t);
» y3=lsim(num, den, u, t);
Warning: Input U has been resampled to show intersample oscillations.
> In C:\MATLAB\toolbox\control\@lti\lsim.m at line 176
In C:\MATLAB\toolbox\control\lsim.m at line 108
» Plot (t, y3)
» Xlabel ('t'), ylabel ('y3')
» Grid
On obtient :
Réponse impulsionnelle du filtre passe bande.
Réponse indicielle du filtre passe bande.
Réponse indicielle du filtre passe bande.
3°/- Etude comportement du filtre sous Simulink.
Il s’agit ici de passer à étude numérique du filtre passe haut. Cette étude
apparaîtra sous forme de schéma graphique car il faut dire que Simulink est
l’extension graphique de Matlab permettant de représenter les fonctions
mathématiques et les systèmes sous forme de diagramme en blocs et de simuler leur
fonctionnement.
La transformée en z de la fonction de transfert H (p) nous donne :
H (z) = 6.4E-08 (z-1) z / (z+1)²
Schéma bloc donnant la réponse impulsionnelle :
Oscillogramme de la réponse impulsionnelle:
Schéma bloc donnant la réponse indicielle :
Oscillogramme de la réponse indicielle :
CONCLUSION :
Grâce au logiciel CAO qu’est MATLAB nous avons pu étudier convenablement
le comportement de différents filtres que sont le passe haut et le passe bande
second ordre. Ce projet il faut le dire nous a permis de découvrir non seulement les
différents comportements des filtres mais surtout de nous familiariser au logiciel
qu’est MATLAB. Nous tenons tout particulièrement à remercier Monsieur A. BADRI
pour son attention et toutes ses remarques, qui nous ont menés au terme de cette
étude.