الجمهورية الجزائرية الديمقراطية الشعبية
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET
POPULAIRE
وزارة التعليم العالي و البحث العلمي
Ministère de l’Enseignement Supérieur et de la Recherche
Scientifique
TP 01:
Génération de signaux élémentaires
Nom et prénom :
BOUTICHE Mohamed Abdou Ellah
ARAR Oussama
MOKRANI Zineddine
Niveau : Master 1
Spécialité : Maintenance industrielle
Année universitaire :
2024-2025
But de Tp: le but de ce TP est de présenter graphiquement sous Matlab
quelques signaux modèles, couramment utilisés en traitement de signal, sous
formes continues et discrètes. Pour plus de détails se référer aux chapitre I.
1. Signal carré (square):
Réécrire et exécuter le programme, étudier l'effet la fréquence d'échantillonnage
et du paramètre duty en écrivant la fonction square (t, duty) sur le signal.
t=0:0.1:20
y=square (t, 50)
plot (t, Y)
xlabel ('Temps' )
Ylabel ( 'Amplitude')
title (' Signal carre' )
xlim ( [-0.2 22])
ylim ([-1.2 1.2])
grid
0≤duty≤100
Duty=0
Duty=100
Au final, après changer le paramètre Duty, on trouve :
Si Duty=0, on trouve le signal est cst à y= -1
Si Duty=100, on trouve le signal cst à y=1
Si Duty=50, le signal va être égaux entre y
2. Signal dents de scie:
Réécrire et exécuter le programme, étudier l'effet de la fréquence
d'échantillonnage et du paramètre scalaire width dans la fonction sawtooth
(t, width) sur le signal.
t=0:0.1:30
y=sawtooth (t)
plot (t,y)
xlabel ( 'Temps')
ylabel ('Amplitude')
title ('Signal dents de scie')
xlim ( [-0.5 32])
ylim ([-1.2 1.2])
grid on
0≤width≤1
Si width=0
Donc les dents de scie sera inverse.
3. Signal échelon unité:
t=-[Link]
y=heaviside (t)
plot (t, y)
xlabel ( 'Temps')
ylabel ( '
Amplitude')
title ('Signal carre')
xlim ( [-20 22] )
ylim ([-0.2 1.2])
grid on
t=-100:0.001:100
y=heaviside (t)
plot (t, y)
xlabel ( 'Temps')
ylabel ( '
Amplitude')
title ('Signal carre')
xlim ( [-20 22] )
ylim ([-0.2 1.2])
grid on
Pour avoir le signal échelon plus exact , on change le paramètre :
t= -100 :0.001 :100
4. Signal impulsion unite (fonction Dirac):
Réécrire le programme suivant et appliquer un décalage du signal en avant et en
arrière d'un pas de 1=5 sur un intervalle de -20 à 20.
t=-10:10;
delta=[zeros(1,10),ones(1,11)];
subplot(3,1,1);
stem(t,delta) ;
axis([-10 10 -1.5 1.5]);
title('\delta [n]');
xlabel('n');
ylabel('Amplitude');
subplot(3,1,2);
deltaA2=[zeros(1,2),delta(1:length(delta)-2)];
stem(t,deltaA2);
axis([-10 10 -1.5 1.51]);
title('\delta [n-2]');
xlabel('n');
ylabel('Amplitude');
subplot(3,1,3);
deltaR2=[delta(3:length(delta)),zeros(1,2)];
stem(t,deltaR2);
axis([-10 10 -1.5 1.5]);
title('\delta [n+2]');
xlabel('n');
ylabel('Amplitude');
t=-20:20;
delta=[zeros(1,20),ones(1,21)];
subplot(3,1,1);
stem(t,delta) ;
axis([-20 20 -1.5 1.5]);
title('\delta [n]');
xlabel('n');
ylabel('Amplitude');
subplot(3,1,2);
deltaA2=[zeros(1,5),delta(1:length(delta)-5)];
stem(t,deltaA2);
axis([-20 20 -1.5 1.51]);
title('\delta [n-5]');
xlabel('n');
ylabel('Amplitude');
subplot(3,1,3);
deltaR2=[delta(6:length(delta)),zeros(1,5)];
stem(t,deltaR2);
axis([-20 20 -1.5 1.5]);
title('\delta [n+5]');
xlabel('n');
ylabel('Amplitude');
Travail à faire :
Ecrire un script qui permet de générer un signal aléatoire d`amplitude comprise
entre 0 et 10 sur intervalle de 100. Un signal aléatoire peut être générer par la
fonction rand.
N = 100;
signal = 10 * rand(1, N);
t = linspace(0, N-1, N);
figure;
plot(t, signal, 'b', 'LineWidth', 1.5);
xlabel('Indice de l''échantillon');
ylabel('Amplitude');
title('Signal aléatoire avec amplitude entre 0 et
10');
grid on;
2. le scripte :
t1 = linspace(0, 1, 100);
t2 = linspace(1, 2, 100);
t3 = linspace(2, 4, 100);
f1 = t1;
f2 = ones(size(t2));
f3 = 1 - (t3 - 2) / 2;
t = [t1, t2, t3];
f = [f1, f2, f3];
figure;
plot(t, f, 'b', 'LineWidth', 2);
xlabel('t');
ylabel('f(t)');
title('Signal de la fonction f(t)');
grid on;