Vous êtes sur la page 1sur 19

FI- IMS- S3M16

Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------
Salah-Eddine Siragi : IMS2

TP1 : de Quantification :

signal continu :
F0=200; % frequence de signal continu
T0=1/F0; % Periode
Te=1e-5; % periode d'echantillonnage
t=0:Te:T0; % intervale de temps
A=5;
S=A*sin(2*pi*F0*t);

Pr. ADNANI 1
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------
Quantification par troncature :
q=.04; % pas de quantification
on devise le signal par q pour avoir des multibles de pas de quantification apres on a besoin que
des multibles entier, on utilise floor de la tranquature et apres on multplie par le pas
SqT=floor(S/q)*q;
figure(1);
subplot(2,1,1); plot(t,S,t,SqT,'r'); axis([0 .75*T0 -5 5]); title('Signal quantifier par Trancature');

Bruit de Troncature :
SbT=S-SqT;
subplot(2,1,2);plot(t,SbT); axis([0 .5*T0 -.1 .5]); title('Signal Bruit par Trancature');

Pr. ADNANI 2
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

Quantification pas arrondie :


on devise le signal par q pour avoir des multible de pas de quantification apres on a besoin des
multible entier on utilise floor de la tranquature et apres on multplie pas .4
SqA=round(S/q)*q;

figure(2);
subplot(2,1,1); plot(t,S,t,SqA,'r'); axis([0 .75*T0 -5 5]); title('Signal quantifier par Arrandi');grid;

Pr. ADNANI 3
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

Bruit de quantification :
SbA=S-SqA;
subplot(2,1,2);plot(t,SbA); axis([0 .5*T0 -.5 .5]); title('Signal Bruit par Arrandi');grid;

Pr. ADNANI 4
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

Puissance de bruit par Troncature :


p_bruit_theoT=(q^2/3);
p_mesurerT=var(SbT)
S_BT=(A^2)/(2*p_mesurerT);
puissance de bruit par Arrandi
p_bruit_theoA=(q^2/12);
p_mesurerA=var(SbA)
S_BA=(A^2)/(2*p_mesurerA);

p_mesurerT =

1.4244e-04

p_mesurerA =

1.2468e-04

TP2 : de Reconstitution :
Création de signal Peigne :
Fp=2e3; (fréquence de signal Peigne)
Tp=1/Fp; (Période de signal Peigne)
past=1e-6; (le pas de temps t)
t=0:past:100*Tp; (signal temps)
Peigne=.5*(square(2*pi*Fp*t,1)+1);

Pr. ADNANI 5
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

Echantillonnage de signal continue :


on respectant le théorème de Shannon
F=200;
S=5*cos(2*pi*F*t);
Signal échantillonné avec Fech=2KHz
Fech=1/past; (Période de signal spectre de la Peigne échantillonné)
Sech=S.*Peigne;
subplot(2,1,1);
plot(t,Sech);
axis([0 40*Tp -6 6]);
title('Signal, cos, Fech=2KHz');
grid;

Pr. ADNANI 6
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

Spectre de signal échantillonné avec Fech=2KHz :

[f,ModSPech]=Spectre(Sech,Fech);
subplot(2,1,2);
plot(f,ModSPech);
axis([-3e3 3e3 0 .03]);
title('Spectre de signal, cos,Fe=2Khz');
grid;
xlabel('fréquence');
ylabel('amplitude');

Not Defined

Filtre de reconstitution :
Wn=300*2*pi; (en (Rad/s))
order=4;
[num den]=butter(order,Wn,'s');
filtre=tf(num,den);

Pr. ADNANI 7
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

Reconstitution :
Srec=lsim(filtre,Sech,t);
subplot(2,1,2); plot(t,Srec);
axis([0 .02 -.06 .06]);
title('Reconstitution de signal, cos, Fech=2KHz');
grid;

Pr. ADNANI 8
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

TP3 : Analogique Numérique :


systme analogique :
K=5;
to1=.1;
to2=.5;
HP=tf(K,[to1*to2 (to1+to2) 1]);

HP =

5
--------------------
0.05 s^2 + 0.6 s + 1

Continuous-time transfer function.

Pr. ADNANI 9
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

generation de la repense indicielle :


past=1e-5;
t=0:past:6*to2;
rep_anal=step(HP,t);

programmation de l'équation de récurrence :


Te=.04; (période d'échantillonnage)
Fe=1/Te;
M=floor(6*to2/Te);
a0=K*Te^2/((to1*to2)+Te*(to1+to2)+ (Te^2));
b1=(2*to1*to2 + Te*(to1+to2))/((to1*to2)+Te*(to1+to2)+ (Te^2));
b2=-(to1*to2)/((to1*to2)+Te*(to1+to2)+ (Te^2));
u=0;
s(1)=a0;

Pr. ADNANI 10
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------
s(2)=a0+b1;
for n=3:M
u(n)=1; (une entrer échelon unitaire)
s(n)=(a0*u(n))+(b1*s(n-1))+(b2*s(n-2)); (équation de récurrence)
end

>> s(n)

ans =

5.0038

comparaison des repense indicielle des deux systèmes :


tech=0:Te:(M-1)*Te;
figure(1);
plot(t,rep_anal);title('repense de systeme analogique');
hold on;
stem(tech,s);

Pr. ADNANI 11
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

comparaison des repense de fréquence des deux systèmes :


w=0:.1:10/to2;
rep_freq_ana=freqs(K,[to1*to2 (to1+to2) 1],w);
numz=a0;
denz=[1 -b1 -b2];
rep_freq_num=freqz(numz,denz,w/(2*pi),Fe);
figure(2);
plot(w,abs(rep_freq_ana),'r');
hold on;
plot(w,abs(rep_freq_num));

Pr. ADNANI 12
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

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)');

Pr. ADNANI 13
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

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)]');

Pr. ADNANI 14
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------
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))');

Pr. ADNANI 15
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------

Filtrage à l’aide du DSP L’étape suivante est de rajouter un filtre qui permettra d’éliminer le bruit de
1kHz. Dans le même fichier Simulink, glisser le bloc « Digital Filter Design » qui se situe dans la
section « DSP System Toolbox

En ouvrant le bloc, nous avons accès à tout les paramètres nécessaires pour configurer différents
types de filtres numériques. Pour éliminer le bruit, un filtre passe-bas peut être utilisé, mais comme
la fréquence du bruit est connue, et que la performance des filtres numériques est supérieure à celle
des filtres analogiques, l’implémentation d’un filtre coupe-bande peut être très rapidement mise en
place :

- Choisir un filtre de type band stop


- Cocher l’onglet pour un filtre IIR de type Butterworth

Pr. ADNANI 16
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------
- Ordre 10 - Unité en Hertz - Fréquence d’échantillonnage de l’ADC égale à 10kHz
- Fréquence de coupure 1 égale à 700 Hz
- Fréquence de coupure 2 égale à 1400 Hz
- Cliquer sur le bouton Design Filter (en bas de la fenêtre)
La courbe :

Pour s’initier à la logique avec Simulink, le filtre sera activé ou désactivé à l’aide du bouton bleu
disponible sur la carte de développement. Dans le même fichier Simulink :

- glisser le bloc « Switch» qui se situe dans la section « Signal Routing »


- glisser le bloc « Debounce» qui se situe dans la section « On-chip peripherals/IO » (
- glisser le bloc « Digital Input» qui se situe dans la section « On-chip peripherals/IO »

Pr. ADNANI 17
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------
- Configurer l’entrée PA0 connectée au bouton poussoir bleu (« User »)

Réaliser le montage sur simulink

Pr. ADNANI 18
FI- IMS- S3M16
Traitement du signal
Evaluation --TP 1
----------------------------------------------------------------------------------------------
La courbe

Pr. ADNANI 19