Vous êtes sur la page 1sur 1

Rabat A.

U 2023-2024
TP filtrage des signaux et produit de corrélation
Exercice I :
Considérons un signal sinusoïdale donné par :
𝑠(𝑡) = 4𝑐𝑜𝑠(2𝜋𝑓0 𝑡) + 𝑐𝑜𝑠(2𝜋2𝑓0 𝑡)
Avec 𝑓0 = 50 Hz ;
1. Ecrire un programme Matlab permettant la génération de ce signal on suppose que
la fréquence 𝑓0 = 50 Hz, on suppose que la fréquence d’échantillonnage de ce
signal est 𝑓𝑒 = 1000 Hz, et de durée d’une seconde.
2. Tracer le signal dans le domaine temps et dans le domaine des fréquences
3. Filtrer le signal pour récupérer les deux fréquences séparément en utilisant deux
filtres passe bas et passe haut.
a. Mettre le signal contenant la basse fréquence dans le signal 𝒔𝒃 (𝒕)
b. Mettre le signal contenant la haute fréquence dans le signal 𝒔𝒉 (𝒕)
4. Tracer les signaux dans le domaine temps et dans le domaine des fréquences.
Fonction Matlab utiles : butter, filter et plot.

Exercice II :
Considérons un signal sinusoïdale donné par :
𝑠(𝑡) = 4𝑐𝑜𝑠(2𝜋𝑓0 𝑡)
Avec 𝑓0 = 50 Hz ;
1. Ecrire un programme Matlab permettant la génération de ce signal on suppose que
la fréquence 𝑓0 = 50 Hz, on suppose que la fréquence d’échantillonnage de ce
signal est 𝑓𝑒 = 1000 Hz, et de durée d’une seconde.
2. Dans un signal𝑠𝑟 (𝑡), mettre une version de retardée .25 seconde de 𝑠(𝑡)
3. Tracer les deux signaux dans deux graphiques différents
4. Calculer l’inter corrélation entre les deux signaux
5. Tracer le résultat dans le domaine temps et le domaine des fréquences.
6. Vos remarques
7. Essayer la même chose avec le signal suivant voir le tableau es bas
8. En quoi peut nous servira ce dernier signal ?
Fonction Matlab utiles : xcorr, chirp
Clc y_r=[zeros(1,retard) y(1:end-retard)];
clear all [x lag]=xcorr(y_r,y);
close all subplot(311)
fe=1000; plot(t,y)
te=1/fe; subplot(312)
d=2; plot(t,y_r)
t= 0:te:d; subplot(313)
retard=round(.25*length(t)); plot(lag*te,x)
fo=10;f1=400;
y=chirp(t,fo,10,f1,'logarithmic');
Mettre en valeur les graphiques

Vous aimerez peut-être aussi