Vous êtes sur la page 1sur 7

EL ALAOUI ABDALLAOUI Mohamed (2GE1)

Rapport
TP filtrage des signaux et produit de corrélation

Exercice 1:

1- Generation de signal:

amplitude = 4;
frequency = 50;
echantillonnage = 20;
duration = 1;
t = 0:1/echantillonnage:duration;
signal = amplitude * cos(2*pi*frequency*t)
+cos(4*pi*frequency*t);
plot(t, signal);
xlabel('Time (s)');
ylabel('Amplitude');
title('Wave Signal');
grid on;
2- Signal dans le domaine du temps et des fréquences:

amplitude = 4;
frequence = 50;
echantillonnage = 1000;
duree = 1;
t = 0:1/echantillonnage:duree;
signal = amplitude * cos(2*pi*frequence*t)
+cos(4*pi*frequence*t);
spectre = fft(signal);
frequences = (0:length(spectre)-1) * (echantillonnage /
length(spectre));
subplot(2,1,1);
plot(t, signal);
xlabel('Temps (s)');
ylabel('Amplitude');
title('Signal dans le domaine du temps');
grid on;
subplot(2,1,2);
plot(frequences, abs(spectre));
xlabel('Fréquence (Hz)');
ylabel('Amplitude du spectre');
title('Spectre dans le domaine des fréquences');
grid on;
xlim([0, echantillonnage/2]);
figure;
3- Filtrage du signal:

Fs = 1000;
t = 0:1/Fs:1;
signal = 4*cos(2*pi*50*t) + cos(2*pi*2*50*t);
subplot(3,1,1);
plot(t, signal);
title('Signal dorigine dans le domaine temporel');
xlabel('Temps (s)');
ylabel('Amplitude');
subplot(3,1,2);
N = length(signal);
frequencies = (-Fs/2):(Fs/N):(Fs/2-Fs/N);
spectrum = fftshift(fft(signal));
plot(frequencies, abs(spectrum));
title('Spectre du signal dans le domaine de la fréquence');
xlabel('Fréquence (Hz)');
ylabel('Amplitude');
cutoff_frequency_low = 75;
order = 6;
[b_low, a_low] = butter(order, cutoff_frequency_low / (Fs/2), 'low');
filtered_signal_low = filter(b_low, a_low, signal);
subplot(3,1,3);
plot(t, filtered_signal_low);
title('Signal filtré (fréquence basse) dans le domaine temporel');
xlabel('Temps (s)');
ylabel('Amplitude');
figure;
spectrum_low = fftshift(fft(filtered_signal_low));
plot(frequencies, abs(spectrum_low));
title('Spectre du signal filtré (fréquence basse) dans le domaine de la
fréquence');
xlabel('Fréquence (Hz)');
ylabel('Amplitude');
Exercice 2:

1- Generation du signal:

f0 = 50;
A = 4;
Fs = 1000;
t = 0:1/Fs:1;
signal = A * cos(2*pi*f0*t);
plot(t, signal);
xlabel('Temps (s)');
ylabel('Amplitude');
title('Signal : 4*cos(2*pi*50*t)');
grid on;
2-3- Retarder le signal:

f0 = 50;
A = 4;
Fs = 1000;
t = 0:1/Fs:1;
signal_original = A * cos(2*pi*f0*t);
delay = 0.25;
t_delayed = t - delay;
signal_retarde = A * cos(2*pi*f0*t_delayed);
plot(t, signal_original, 'b', t_delayed, signal_retarde, 'r');
xlabel('Temps (s)');
ylabel('Amplitude');
title('Signal original et signal retardé');
legend('Original', 'Retardé');
grid on;
4- L’inter corrélation des deux signaux:

correlation = xcorr(signal_original, signal_retarde);


lags = (-length(signal_original)+1:length(signal_original)-1);
plot(lags/Fs, correlation);
xlabel('Décalage temporel (s)');
ylabel('Corrélation');
title('Intercorrélation entre le signal original et le signal
retardé');
grid on;

5- Le résultat dans le domaine du temps et des frequences:


subplot(2, 1, 1);
plot(lags/Fs, correlation);
xlabel('Décalage temporel (s)');
ylabel('Corrélation');
title('Intercorrélation dans le domaine temporel');
grid on;
spectrum = fftshift(fft(correlation));
frequencies =
(-Fs/2):(Fs/length(correlation)):(Fs/2-Fs/length(correlation));
subplot(2, 1, 2);
plot(frequencies, abs(spectrum));
xlabel('Fréquence (Hz)');
ylabel('Amplitude');
title('Spectre de fréquence de l''intercorrélation');
grid on;

6- Remarques:

L'intercorrélation dans le domaine temporel donne des informations sur la


synchronisation temporelle entre les signaux, tandis que le spectre de
fréquence de l'intercorrélation vous montre comment les fréquences des
signaux sont corrélées à différents décalages temporels. Ces informations
peuvent être utiles pour comprendre la relation entre les signaux et leur
comportement de corrélation temporelle et fréquentielle.

Vous aimerez peut-être aussi