Solution de l'exercice 3 (EX03) en détail
1) Détermination de la fréquence du signal
Le signal donné est :
u(t) = sin(2 * pi * f * t)
où la fréquence est :
f = 5 Hz
2) Vérification du critère de Shannon-Nyquist et calcul du nombre d'échantillons par période
Selon le critère de Shannon-Nyquist, la fréquence d'échantillonnage doit être au moins deux fois
supérieure à la fréquence maximale du signal original :
f_c >= 2f
Étant donné que :
f_c = 1 kHz = 1000 Hz, f = 5 Hz
nous avons :
1000 >= 2 * 5
1000 >= 10
Le critère de Shannon-Nyquist est donc respecté.
Calcul du nombre d'échantillons par période :
N = f_c / f = 1000 / 5 = 200
3) Représentation du signal échantillonné et du signal en paliers
- Le signal échantillonné u_e(t) : Il représente les valeurs du signal original prélevées à des
intervalles de temps fixes :
T_e = 1 / f_c = 1 / 1000 = 1 ms
- Le signal en paliers u_b(t) : Chaque échantillon est maintenu constant sur une durée donnée :
T_b = T_e = 1 ms
4) Calcul des cinq premiers échantillons
En utilisant l'équation :
u(t) = sin(2 * pi * f * t)
et avec une fréquence d'échantillonnage f_c = 1 kHz, nous calculons les cinq premiers échantillons :
t (ms) u(t)
-----------------
0 sin(0) = 0
1 sin(0.01 * pi) ~ 0.0314
2 sin(0.02 * pi) ~ 0.0628
3 sin(0.03 * pi) ~ 0.0942
4 sin(0.04 * pi) ~ 0.1256
Ces valeurs sont approximatives en raison du calcul du sinus pour de petits angles.
Analyse complémentaire :
- Le nombre d'échantillons par période est N = 200, ce qui signifie que chaque cycle contient 200
points de données, garantissant une représentation précise du signal.
- Étant donné que f_c >> 2f, il est possible de reconstruire le signal sans perte d'information ni
aliasing (repliement spectral).
Code MATLAB pour la représentation du signal :
% Définition des paramètres
f = 5;
fc = 1000;
Te = 1/fc;
T = 1/f;
N = fc / f;
% Génération du signal continu
t_cont = 0:Te/10:2*T;
u_cont = sin(2*pi*f*t_cont);
% Génération des échantillons
t_samples = 0:Te:2*T;
u_samples = sin(2*pi*f*t_samples);
% Génération du signal en paliers
t_piecewise = repelem(t_samples, 2);
u_piecewise = repelem(u_samples, 2);
% Tracé des signaux
figure;
subplot(3,1,1);
plot(t_cont, u_cont, 'b', 'LineWidth', 1.5);
title('Signal continu u(t)');
xlabel('Temps (s)');
ylabel('Amplitude');
grid on;
subplot(3,1,2);
stem(t_samples, u_samples, 'ro', 'LineWidth', 1.5);
hold on;
plot(t_cont, u_cont, 'b--');
title('Signal échantillonné u_e(t)');
xlabel('Temps (s)');
ylabel('Amplitude');
grid on;
subplot(3,1,3);
stairs(t_piecewise, u_piecewise, 'g', 'LineWidth', 1.5);
title('Signal en paliers u_b(t)');
xlabel('Temps (s)');
ylabel('Amplitude');
grid on;