Académique Documents
Professionnel Documents
Culture Documents
Compte-rendu TP 02 et 03
Transformée de Fourier et Filtrage RII
(Filtre a réponse impulsionnelle Infinie)
Enseignant :
FERROUDJI. K
Solution :
5- j’ai remarqué que les signaux (fft Sb) et (fft Sm) ont deux pics principaux de fréquence
30HZ et 130 HZ, et la déférence entre la courbe de (fft Sb) et (fft Sm) est causé par le
bruit dans le courbe de (fft Sb).
6-j’ai remarqué qu’il y a une atténuation dans le débit et la fin de signal filtré. Parce que
le filtre n’est pas idéal
Programme MATLAB:
clc
clear all, close all
% 1-générer un vecteur t en secondes des échantillons d’un signal de durée 1 sec et
échantillonné a 1khz %
Fe=1000;
Te=1/Fe;
t=0:Te:1;
L=length(t);
% 2-créer deux signaux sinusoïdaux S1 et S2 DE fréquence 30HZ et 130 HZ, et
amplitude 2 et 1,9 respectivement %
s1=2*sin(2*pi*30*t);
s2=1.9*sin (2*pi*130*t);
% 3-afficher les signaux S1 et S2 et Sm (Sm=S1+S2) en fonction de temps en utilisant
la commande subplot(5…) %
sm=s1+s2;
subplot(511),plot(t(1:200),s1(1:200))
ylabel('s1');
subplot(512),plot(t(1:200),s2(1:200))
ylabel('s2');
subplot(513),plot(t(1:200),sm(1:200))
ylabel('sm');
% 4-ajouter du bruit au signal Sm, et tracer le signal obtenue (Sb) dans la même courbe
précédente(subplot) %
bruit_b=randn(size(t));
sb=sm+bruit_b;
subplot(514),plot(t(1:200),bruit_b(1:200))
ylabel('bruit');
subplot(515),plot(t(1:200),sb(1:200))
xlabel('temps(s)');
ylabel('avec bruit');
function fourrier_tp(t,sb,Fe)
L=length(t);
NFFT=2^nextpow2(L);
Yb= fft(sb,NFFT);
f =linspace(0, Fe/2,NFFT/2+1);
figure
plot(f,abs(Yb(1:NFFT/2+1)))
% 8-Ecrire une fonction MATLAB qui permet de filtrer un signal autour d’une fréquence
donnée%
function filtrage_tp(N,fb,fh,Fe,sb,NFFT,f)
[B,A]= butter (N,[fb fh]/(Fe/2));
yf=filtfilt(B,A,sb);
YF=fft(yf,NFFT);