Professional Documents
Culture Documents
3eme Télécommunication
Année universitaire :2010-2011
Centre Universitaire de Bordj Bou Arreridj
Institut des Sciences et de la technologie
Département d’électronique
3) On fait le traçage des signaux à l’aide des fonctions polt, stem, xlabel, ylabel, ylim, set, tit, et on va
considérer que les fonctions sont continues de pas presque négligeable.
Le traçage de a(t)
set(gca,'fontsize',14); 0
legend('cos(t)');
title('le tracé de a(t)')
xlabel(' t(ms) '); -0.5
ylim([-1.2 1.2]);
ylabel(' cos(t)');
-1
-5 0 5
t(ms)
le tracé de b(t)
Le traçage de b (t) :
sinc(t/T)
1
0.8
0.6
sinc(t/T)
0.4
0.2
0
-5 0 5
fs=250; t(ms)
dt=1/fs;
t=-5:1/250:5;
T=1
c=1/2*(sign(t)+1) le tracé de c(t)
plot(t,c,'r','linewidth',3);g
rid on; 1
set(gca,'fontsize',14);
0.8
title('le tracé de c(t)') 0.6
xlabel(' t(ms) ');
echelon(t)
0.4
ylim([-0.6 1.2]);
ylabel(' echelon(t)'); 0.2
0
Le traçage de Dirac(t) : -0.2
-0.4
fs=250;
dt=1/fs; -5 le tracé 0de d(t) 5
t=-5:1/250:5; t(ms)
T=1 1
d=not(t) 0.8
plot(t,d,'r','linewidth',3);g
rid on; 0.6
Dirac(t)
set(gca,'fontsize',14); 0.4
0.2
title('le tracé de d(t)')
0
xlabel(' t(ms) ');
ylim([-0.6 1.2]); -0.2
ylabel(' Dirac(t)'); -0.4
-5 0 5
t(ms)
Le traçage de Rect(t) :
T=1;
t=-5:1/250:5;
s=1/2*(sign((t+1)/4*T)+1)-1/2*(sign((t-1)/4*T)+1);
plot(t,s,'r','linewidth',3);grid on;
set(gca,'fontsize',14);
legend('rect(t)');
title('rectangle')
xlabel(' t(ms) ');
ylim([0 1.2]);
ylabel(' rect(t)');
rectangle
rect(t)
1
0.8
re c t(t)
0.6
0.4
0.2
0
-5 0 5
t(ms)
Le traçage de tri(t) :
y=1/2*(sign(t+1/2)+1)-1/2*(sign(t-1/2)+1
plot(t,y,'b','linewidth',3);grid on;
set(gca,'fontsize',14);
legend('tri(t)');
title('signal triangle')
xlabel(' t(ms) ');
ylim([0 1.2]);
ylabel('tri(t)');
signal triangle
tri(t)
1
0.8
tr i( t)
0.6
0.4
0.2
0
-5 0 5
t(ms)
fs=250;
dt=1/fs;
t=-5:1/250:5;
T=1
Le traçage de z(t) :
s=1/2*(sign((t+1)/4*T)+1)-1/2*(sign((t-1)/4*T)+1)
u=cos(pi*t/4*T);
plot(t,s.*u,'r','linewidth',3);grid on;
set(gca,'fontsize',14);
title('le
Compte rendu du tracé de z(t)')
TP de traitement de signal de l’année 20010-2011
xlabel(' t(ms) ');
xlim([-5 5]);
ylim([-0.6 1.2]);
ylabel(' z(t)');
Centre Universitaire de Bordj Bou Arreridj
Institut des Sciences et de la technologie
Département d’électronique
le tracé de z(t)
1
0.8
0.6
z (t)
0.4
0.2
0
-0.2
-0.4
-5 0 5
t(ms)
πt 2π 1
On a a (t)=cos ( )=cos(2 π f 0 t )Or 2π f 0= Donc T_0= 2T=2s et f 0= =0,5 Hz
T T0 T0
5) On effectue le calcul théorique des énergies de x(t), y(t) et z(t) (avec T=1) :
Afin de faciliter le calcul et comme le pas d’echantionnage est très petit, nous allons travailler
Avec les signaux continus.
2
E x =∫ dt=4
−2
2 2
2
E y =∫ ¿ 1−|t /2|¿ dt =∫ ¿ ¿ ¿
−2 −2
2 2
¿ + =1.33
3 3
2 2
πt 2
E z=∫ ¿ cos ( )¿ dt=1/2 ∫ ¿ ¿ ¿
−2 4 −2
L’énergie x(t) :
fs=250;
dt=1/fs;
T=1;
f=-4:0.1:4;
t=-5 :dt:5;
df=0.1;
s=1/2*(sign(t+2*T)+1)-1/2*(sign(t-2*T)+1);
E=dt*sum(abs(s).^2)
E= 3.9746
L’énergie y(t)
fs=250;
dt=1/fs;
T=1;
f=-4:0.1:4;
t=-5:dt:5;
df=0.1;
s=1/2*(sign(t+1/2)+1)-1/2*(sign(t-1/2)+1)
E=dt*sum(abs(s).^2)
E = 1.3333
L’énergie z(t)
fs=250;
dt=1/fs;
T=1;
f=-4:0.1:4;
t=-5:dt:5;
df=0.1;
u=1/2*(sign((t+1)/4*T)+1)-1/2*(sign((t-1)/4*T)+1);
s=cos(pi*t/4*T).*u
E=dt*sum(abs(s).^2)
E =2.0000
Conclusion :
En comparant les résultats théoriques et ceux donnés par MATLAB, on constate que MATLAB
est plus précis. Il donne le résultat exact de l’énergie du signal. Donc le calcul théorique ne donne que des
résultats approchés.
la fonction échelon :
function out=echelon(x)
out=0.5*(sign(x)+1)
impulsion de Dirac :
function out=delta(t);
out=not(t);
fonction rect :
function out=rect(t)
out=1/2*(sign(t+1/2)+1)-1/2*(sign(t-1/2)+1)
fonction « Tri » qui réalise l’impulsion triangulaire:
function out=tri(x)
out=(1-abs(x)).*rect(x/2);
Pour faire le produit scalaire de 2 fonctions on doit ajouter un point a coté de l’opération, sinon MATLAB
renvoie une erreur.
9) On utilise la définition de la TF dans le domaine discret pour élaborer une fonction qui fait la transforme de
FOURIER des fonctions a l’aide d’une boucle for :
df=0.1;
fs=250 ;
dt=1/fs ;
t=-2:1/250:2;
j=sqrt(-1);
f=-4:df:4;
X=0;
n=0:1:length(f);
for k=1:length(t)
X=X+dt*exp(-2*j*pi*n*df*k*1/250);
end
out=X;
plot(n*df,real(X),'r','linewidth',3);grid on;
set(gca,'fontsize',14);
legend('Re[X(f)]');
title('Re[X(f)]en fonction de la frequence')
xlabel('frequence(HZ)');
ylabel('reel(X(f))');
plot(n*df,imag(X),'r','linewidth',3);grid on;
set(gca,'fontsize',14);
legend('Imag[X(f)]');
title('Imag[X(f)]en fonction de la frequence')
xlabel('frequence(HZ)');
ylabel('imag(X(f))');
3 1
imag(X(f))
reel(X(f))
2 0
1 -1
0 -2
-1 -3
-4 -2 0 2 4 -4 -2 0 2 4
frequence(HZ) frequence(HZ)
10) On crée des nouvelles fonctions Matlab « tfsc » qui réalise la transformée de Fourier d’un
signal alaide d’une boucle for :
function out=tfsc(x,t,f)
X=0;
dt=t(2)-t(1);
df=f(2)-f(1) ;
n=0:1:length(f);
for k=1:length(t)
X=X+x(k)*dt*exp(-2*j*pi*n*df*k*dt);
11) on utilise la fonction « tfsc » pour calculer les transformées de Fourier A(f), B(f), Y(f) et Z(f) des signaux
respectifs.
a(t), b(t), y(t) et z(t)et le traçage des parties réelle et imaginaire de chaque spectre.
f=-4:0.1:4;
T=1 ;
t=-2 :dt:2;
tfsc(cos(pi*t/T),t,f)
plot(f,real(tfsc(cos(pi*t),t,f)),'r','linewidth',2);grid on;
set(gca,'fontsize',14);
legend('Re[A(f)]');
title('Re[A(f)]en fonction de la frequence')
xlabel('frequence(HZ)');
ylabel('reel(A(f))');
plot(f,imag(tfsc(cos(pi*t),t,f)),'r','linewidth',2);grid on;
set(gca,'fontsize',14);
legend('Imag[B(f)]');
title('Imag[A(f)]en fonction de la frequence')
xlabel('frequence(HZ)');
ylabel('imag(A(f))');
0.5
imag(A(f))
-0.5
-1
-1.5
-2
-4 -2 0 2 4
frequence(HZ)
1 −1
Le calcul théorique donne 2 impulsions de Dirac décalé de et
2 2
Traçage de B(f) :
tfsc(sinc(t),t,f)
plot(f,real(tfsc(sinc(t),t,f)),'r','linewidth',3);grid on;
set(gca,'fontsize',14);
legend('real[B(f)]');
title('real[B(f)]en fonction de la frequence')
xlabel('frequence(HZ)');
ylabel('real(B(f))');
plot(f,imag(tfsc(sinc(t),t,f)),'r','linewidth',2);grid on;
set(gca,'fontsize',14);
legend('Imag[B(f)]');
title('Imag[B(f)]en fonction de la frequence')
xlabel('frequence(HZ)');
ylabel('imag(B(f))');
1.5
re e l(A (f))
0.5
-0.5
-4 -2 0 2 4
frequence(HZ)
0.5 0.5
imag(B(f))
real(B(f))
0 0
-0.5 -0.5
-1 -1
-4 -2 0 2 4 -4 -2 0 2 4
frequence(HZ) frequence(HZ)
Traçage de y(f)
fs=250; fs=250;
dt=1/fs; dt=1/fs;
T=1; T=1;
f=-4:0.1:4; f=-4:0.1:4;
t=-5:dt:5; t=-5:dt:5;
df=0.1; df=0.1;
u=tfsc(tri(t/2*T),t,f) u=tfsc(tri(t/2*T),t,f)
plot(f,real(u),'r','linewidth',3); plot(f,imag(u),'r','linewidth',3);
grid on; grid on;
set(gca,'fontsize',14); set(gca,'fontsize',14);
legend('real[Y(f)]'); legend('imag[Y(f)]');
title('spectre du signal triangle') title(' le trace de l imaginaire')
xlabel('frequence(HZ)'); xlabel('frequence(HZ)');
ylabel('real(Y(f))'); ylabel('real(Y(f))');
1 4
0.5 2
real(Y(f))
real(Y(f))
0
0
-0.5
-2
-1
-1.5 -4
-2 -6
-4 -2 0 2 4 -4 -2 0 2 4
frequence(HZ) frequence(HZ)
Traçage de Z(f)
fs=250; fs=250;
dt=1/fs; dt=1/fs;
T=1; T=1;
f=-4:0.1:4; f=-4:0.1:4;
t=-5:dt:5; t=-5:dt:5;
df=0.1; df=0.1;
s=cos(pi*t/4*T).*rect(t/4*T) s=cos(pi*t/4*T).*rect(t/4*T)
u=tfsc(s,t,f) u=tfsc(s,t,f)
plot(f,imag(u),'r','linewidth',3) plot(f,real(u),'r','linewidth',3);
; grid on;
grid on; set(gca,'fontsize',14);
set(gca,'fontsize',14); legend('real[Z(f)]');
legend('imag[Y(f)]'); title(' le eel de Z en fonction de
title(' le trace de l f')
imaginaire') xlabel('frequence(HZ)');
xlabel('frequence(HZ)'); ylabel('real(Z(f))');
ylabel('real(Y(f))');
x 10
-3 le trace de l imaginaire le eel de Z en fonction de f
8 3
imag[Z(f)] real[Z(f)]
6
2
4
1
2
real(Z(f))
real(Z(f))
0 0
-2
-1
-4
-2
-6
-8 -3
-4 -2 0 2 4 -4 -2 0 2 4
frequence(HZ) frequence(HZ)
On remarque que les parties réelles de la transformé de Fourier sont paires et les parties imaginaires
sont impaires, ce qui évident puisque toutes les fonctions sont réelles .
fs=250;
dt=1/fs;
T=1;
f=-4:0.1:4;
t=-5:dt:5;
df=0.1;
s=tri(t/2*T)
u=tfsc(s,t,f)
E=df*sum(abs(u).^2)
E = 1.33
fs=250;
dt=1/fs;
T=1;
f=-4:0.1:4;
t=-5:dt:5;
df=0.1;
s=cos(pi*t/4*T).*rect(t/4*T)
u=tfsc(s,t,f)
E=df*sum(abs(u).^2)
E =2.0000
Si on compare ces résultat avec celle obtenue dans la question 6) , on constate que le
théorème de Parseval est bel et bien vérifié ,et on peut vérifier que notre module élaboré dans ce TP
pour calculer la TF est valable.