Traitement de signal - Représentation des fonctions complexes en Matlab

1- tracer l’allure d’un signal complexe composé d’une partie réelle et une imaginaire pour Le signal :  X1(t)= expo(ɑt)*expo(jωt)

2- changer la fonction Plot par Stem
 
3- rajoute un déphasage au signal 
 
4- tracer  une fonction de transfert du 2ème ordre qui s’écrit de la façon suivante :
Hune fonction de transfert du 2ème ordre traitement de signal


Avec 1<ω<1000 rd/s

Solution: 


1)   On veut tracer l’allure d’un signal complexe composé d’une partie réelle et une imaginaire.
Le signal est le suivant :
X1(t)= expo(ɑt)*expo(jωt)
Avec :  ɑ= -3               ω = 20 rd /s

Tout d’abord on doit créer un fichier sur Matlab ‘ exemple.m’, le programme est le suivant :

» a=-3;
» w=20;
» t=0:0.01:1;
» x1=exp(a*t).*exp(j*w*t);
» figure(1),plot(t,real(x1),'g'),grid
» figure(2),plot(t,imag(x1),'r'),grid


Représentation des fonctions complexes en Matlab
» a=-3;
» w=20;
» t=0:0.01:1;
» x1=exp(a*t).*exp(j*w*t);
» plot(t,real(x1))
» title('figure 1')
» subplot(211),plot(t,real(x1)),grid
» subplot(212),plot(t,imag(x1),'r'),grid
» subplot(211),title('figure 1')
» subplot(212),title('figure 2')

Représentation des fonctions complexes en Matlab

2)   On change maintenant la fonction Plot par Stem, et on retrouve le résultat suivant :
» subplot(211),stem(t,real(x1),'r'),grid
» subplot(212),stem(t,imag(x1)),grid
» subplot(211),title('figure 1')
» subplot(212),title('figure 2')

3)   Cette fois-ci, on rajoute un déphasage au signal , qui sera de la forme suivante :
X2(t)= expo(j∏ /4)*expo(ɑ+jω)t
Avec :
ɑ= -3                   ω = 20 rd /s
» a=-3;
» w=20;
» x2=exp(j*(pi/4)).*exp((a+j*w)*t);
» subplot(211),plot(t,real(x2),'r'),grid
» subplot(212),plot(t,imag(x2),'g'),grid
» subplot(211),title('figure1')
» subplot(212),title('figure2')
» subplot(221),plot(t,imag(x2),'g'),grid
» subplot(222),plot(t,real(x2),'r'),grid
» subplot(223),stem(t,real(x2),'b'),grid
» subplot(224),stem(t,imag(x2),'b'),grid

Représentation des fonctions complexes en Matlab

Représentation des fonctions complexes en Matlab

4)   On veut tracer  une fonction de transfert du 2ème ordre qui s’écrit de la façon suivante :
H
Avec 1<ω<1000 rd/s

D’une façon théorique, on trouve que le gain statique Ho est égale à 1 , ainsi que la fréquence de coupure ωo est égale à 15rd/s  et le coéff.  d’amortissement m est 0 ,1
Le programme sous Matlab est le suivant :
» HdB=20*log10(abs(H));
» phi=angle(H)*180/pi;
» figure(1),semilogx(HdB)
» figure(1),semilogx(HdB)
» figure(2),semilogx(phi)
» figure(1),semilogx(w,HdB)
» figure(2),semilogx(w,phi)
» figure(1),semilogx(w,HdB),grid
» figure(2),semilogx(w,phi),grid

Autre façon :
» num=[225];
» den=[1 3 225];
» tf(num,den)

Transfer function:
      225
---------------
s^2 + 3 s + 225

» bode(num,den)


Ce qui nous donne le graphe suivant qui représente le module et la phase de la FT en fonction de la pulsation.
Représentation des fonctions complexes en Matlab

On constate d’après le graphe que la pulsation de coupure est presque égale à 15 rd/s

Conclusion :

L’outil Matlab nous  a facilité la tâche, car au lieu de perdre beaucoup de temps dans des calculs pénibles, pour tracer des fonctions, on peut le faire dans un minimum de temps, et c’est ça le rôle d’un ingénieur, c’est l’exploitation des outils informatique pour résoudre les problèmes.

Commentaires