Représentation des signaux 15
I- BUT DE LA MANIPULATION
On va essayer de définir et de visualiser certains signaux à l’aide des instructions Matlab.
II- REPRESENTATION TEMPORELLE DES SIGNAUX
II-1 Signaux continus dans le temps
Un signal continu est un signal défini quel que soit le temps t.
II-1-1 Rampe
0 pour t < 0
La fonction rampe est définie par : r(t) = {
t pour t ≥ 0
Tester le script suivant :
t = -3 : 0.01 : 3;
for k = 1 : length(t); % pour trouver les valeurs de r(t) à tous les instants.
if (t(k) < 0)
s(k) = 0;
else
r(k) = t(k);
end
end
plot(t,r)
II-1-2 Signe
−1 pour t < 0
La fonction signe est définie par : sgn(t) = {
+1 pour t > 0
Essayer les instructions suivantes :
t = -5 : 0.01 : 5 ;
s1 = sign(t) ;
subplot(2,2,1) ;
plot(t,s1) ;
s2 = sign(t + 1) ;
subplot(2,2,2) ;
plot(t,s2) ;
s3 = sign(t + 1) + 1 ;
subplot(2,2,3) ;
plot(t,s3) ;
t+3
s4 = sign( 3 ) ;
subplot(2,2,4) ;
plot(t,s4) ;
II-1-3 Echelon
0 pour t < 0
L’échelon ou signal de Heaviside est défini par : u(t) = {
1 pour t > 0
L’échelon u(t - t0) est généré par l’instruction stepfun(t,t0).
Essayer les instructions suivantes :
t = -5 : 0.01 : 5 ;
y = stepfun(t,0) ;
Faculté des Sciences et Techniques de Tanger Département de Génie Electrique
16 Représentation des signaux
plot(t,y) ;
z = stepfun(t,4);
plot(t,z);
Tester le script suivant:
t = -5 : 0.01 : 5 ;
x = 0.5 + 0.5*sign(t) ;
plot(t,x)
II-1-4 Signal rectangulaire
Le signal rectangulaire de largeur T, centré en t = 0, ou porte, est défini par :
T
0 pour |t| >
rect(t) = { 2
T
1 pour |t| <
2
On peut avoir une impulsion rectangulaire centrée autour de t = 0, à l’aide de l’instruction
‘’rectpuls’’. La syntaxe est : rectpuls(t,w) où w est la largeur du rectangle. Rectpuls(t) génère
un signal rectangulaire de largeur 1 par défaut.
Essayer les commandes suivantes :
t = -5 : 0.01 : 5 ;
y1 = rectpuls(t,1) ;
y2 = 2*rectpuls(t - 1,3) ;
subplot(2,1,1) ;
plot(t,y1) ;
subplot(2,1,2) ;
plot(t,y2) ;
On peut représenter un signal rectangulaire par une somme des échelons.
Tester le script suivant:
t = -5 : 0.01 : 5 ;
s2 = stepfun(t,-1) ;
subplot(3,1,1);
plot(t,s2);
s1 = stepfun(t,1) ;
subplot(3,1,2);
plot(t,s1,'r');
s=s2-s1;
subplot(3,1,3);
plot(t,s,'g');
II-1-5 Triangle
Le signal triangulaire de base 2T, centré en t = 0 est défini par :
t t
1 − | | pour | | ≤ 1
T T
tri(t) = { t
0 pour | | > 1
T
Un signal triangulaire est généré par l’instruction ‘’tripuls’’.
Faculté des Sciences et Techniques de Tanger Département de Génie Electrique
Représentation des signaux 17
Tripuls(t) génère un signal triangulaire de base 1 et centré en t = 0.
1
0.5
0
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
tripuls(t,b,s) génère un signal triangulaire asymétrique de base ‘b’ et d’inclinaison s, avec -1 <
s < 1.
x = tripuls(t - 1,2) : triangle de sommet A, de centre 1 et de base 2.
y = tripuls(t - 1,2,0.63) : triangle de sommet A décalé vers la droite de s = 0.63.
z = tripuls(t - 1,2,-0.85) : triangle de sommet A décalé vers la gauche de s = -0.85.
1 s = - 0.85 A s = 0.63
z(t)
0.5 x(t) y(t)
0
-1 -0.5 0 0,5 1 1.5 2 3
II-1-6 Signaux périodiques
1. Rectangulaire
Pour générer un signal rectangulaire périodique, on utilisera l’instruction ‘’square’’.
square(t) : génère un signal rectangulaire de période 2π variant de -1 à +1.
1
0
-1
-3pi -2pi -pi 0 pi 2pi 3pi
square(t,duty) : génère un signal rectangulaire de période 2π variant de -1 à +1 et de rapport
cyclique duty.
1 Signal rectangulaire de
0 rapport cyclique 25%.
-1
-3pi -2pi -pi 0 pi 2pi 3pi
t
Comparer les signaux suivants: square(2t), square(2πt), 3 + 2.square( ,10).
2
2. Triangulaire
Pour générer un signal triangulaire périodique, on utilisera l’instruction ‘’sawtooth’’.
1
sawtooth(t) : génère un signal en dents de scie, de période 2π, variant de -1 à +1 et de pente π.
1
0
-1
-3pi -2pi -pi 0 pi 2pi 3pi
sawtooth(t,s) : génère un signal en dents de scie, de période 2π, variant de -1 à +1 dont la
position du sommet est contrôlée par s. s est un scalaire appartenant à [0,1]. Si s = 0.5, on a un
signal triangulaire symétrique.
Faculté des Sciences et Techniques de Tanger Département de Génie Electrique
18 Représentation des signaux
1
0
-1
-3pi -2pi -pi 0 pi 2pi 3pi
Comparer les signaux suivants: sawtooth(pi*t,0.5); sawtooth(t-pi,0.5);
t
0.5 + 0.5*sawtooth(2,0.25)
II-2 Bruit
Le bruit est défini comme étant un signal indésirable.
La commande randn(1,N) permet de générer un vecteur bruit de taille N de moyenne nulle et
d’écart type 1.
On peut générer un bruit de taille N, de moyenne m et d’écart type σ à l’aide de la
commande : bruit = m + σ randn(1, N).
II-3 Signaux discrets
Les signaux discrets sont représentés dans Matlab à l’aide des vecteurs. On les trace avec
’stem’.
Pour représenter l’origine du signal, le point où n = 0, on utilise une flèche au-dessous du
chiffre correspondant à n = 0.
Le signal discret s[n] =[-2,3,4,1,2] se représente sur Matlab :
s = [-2,3,4,1,2] ; n=0
n = [-1 : 3] ;
stem(n,s)
II-3-1 Impulsion de Dirac
1 si n = 0
L’impulsion de Dirac est défini par : δ[n] = { .
0 si n ≠ 0
1 si n = k
L’impulsion décalée est définie par : δ[n − k] = {
0 si n ≠ k
1) Tester le script suivant:
% a et b sont les limites inférieure et supérieure respectivement, de l'intervalle où
% est définie l'impulsion.
a = input('a=');
b = input('b=');
c = input('c='); % c est l'instant où l'impulsion existe.
n = a:b;
a1 = abs(a);
y = [zeros(1,a1+c),1,zeros(1,b-c)];
stem(n,y)
2) Essayer le script suivant :
N = 15;
n = 0:( N-1);
Faculté des Sciences et Techniques de Tanger Département de Génie Electrique
Représentation des signaux 19
x = zeros(N,1);
x(1) = 1 ;
stem(n,x);
II-3-2 Peigne de Dirac
Le peigne de Dirac est une série d’impulsions de Dirac équidistantes, défini par :
+∞
1 si n = kn0
δ n0 [ n ] = { = ∑ δ[n − kn0 ] k∈Z
0 si n ≠ kn0
k=−∞
Pour n0 = 13 ;
train = [1,zeros(1,13)] ;
train = [ train, train, train] ;
stem (train)
II-3-3 Echelon
L’échelon est défini par :
+∞
1 si n ≥ 0
u [ n] = { = ∑ δ[n − k]
0si n < 0
k=0
1) Taper les instructions suivantes :
% a et b sont les limites inférieure et supérieure respectivement, de l'intervalle où
% est défini l'échelon.
a = input('a =');
b = input('b =');
c = input('c =');% c est l'instant où l’échelon vaut 1.
n = a:b;
a1 = abs(a);
u = [zeros(1,a1+c),ones(1,b-c+1)];
stem(n,u) ;
2) Tester le script suivant :
N = 31 ;
n = 0 : N-1 ;
u = [zeros(1,20),ones(1,11)];
stem(n,u);
II-3-4 Signal rectangulaire
1 si 0 ≤ n ≤ N − 1
Le signal rectangulaire discret est défini par : s[n] = {
0 ailleurs
Essayer les commandes suivantes :
L = 31;
N = 10; % durée du signal rectangulaire.
n = 0 : L-1;
s = zeros(1,L);
s(1:N) = ones(1,N); stem (n,s)
Faculté des Sciences et Techniques de Tanger Département de Génie Electrique
20 Représentation des signaux
II-3-5 Rampe
0 pour n < 0
La fonction rampe est définie par : r[n] = {
n pour n ≥ 0
Tester le script suivant :
% n1 et n2 sont les limites inférieure et supérieure respectivement, de l'intervalle où
% est définie la rampe.
n1 = input('n1 =');
n2 = input('n2 =');
n = [n1:n2];
m = n1;
for i = 1 : length(n) % pour trouver les valeurs de r[n] à tous les instants.
if (m < 0)
r(i) = 0;
else
r(i) = m;
end
m = m + 1;
end
stem(n,r)
III- TRAVAIL A EFFECTUER
III-1 Addition et multiplication
1) a) Tracer sur l’intervalle t = 0 : 0.001 : 1, deux sinusoïdes : x1(t) de fréquence 1 Hz,
d’amplitude 1V, x2(t) de fréquence 3 Hz et d’amplitude 1V.
b) Tracer le signal s(t) = x1(t) + x2(t).
c) En ajoutant du bruit, on obtient alors le signal suivant : z(t) = s(t) + 2 * randn(size(t)).
Tracer ces quatre signaux en utilisant la commande subplot.
d) Tracer le signal x1(t) × x2(t) et x12 (t).
2) On considère les signaux suivants :
x1[n] = [1 2 3 4 5] définit dans l’intervalle [0,4] et x2[n] = [2 2 1 2 2] dans l’intervalle [-2,2].
a) Compléter le script suivant pour tracer y[n] = x1[n] + x2[n]
n1 = 0:4;
x1 = [1 2 3 4 5];
n2 = -2:2;
x2 = [2 2 1 2 2];
n = min(…):max(…); % durée temporelle de y(n)
y1 = zeros(1,length(n)); y2 = y1; % initialization
y1(find…) = x1; % x1[n] avec la durée de y[n]
y2(find…) = x2; % x2[n] avec la durée de y[n]
y = y1+y2; % addition
…
III-2 Inversion temporelle
1.5 si − 1 < 𝑡 < 0
1
1) Tracer le signal suivant : y(t) = { − 3 t + 1 si 0 < 𝑡 < 3
0 ailleurs
Faculté des Sciences et Techniques de Tanger Département de Génie Electrique
Représentation des signaux 21
2) Tracer y(-t).
…
y1 = fliplr…;
t1 = fliplr…;
…
III-3 Translation ou décalage temporel
1) On considère le signal suivant :
2 si − 4 < t < −2
−t si −2<t<0
s(t) = t si 0<t<2
2 si 2<t<4
{ 0 ailleurs
Tracer s(t), s(t-2) et s(t+3).
2) On considère le signal s[n] = [1 2 3 4 5 6 7 6 5 4 3 2 1]. Tracer les séquences suivantes :
s1[n] = 2s[n – 5] – 3s[n + 4]
Faculté des Sciences et Techniques de Tanger Département de Génie Electrique