Documente Academic
Documente Profesional
Documente Cultură
Ralis par :
ABOUDRAR Basma
ACHOR Zineb
EL BECHARI Reda
EL BOUAMI Sarah
EL KHAOURI Wiam
Encadr par :
Mr.Chikh
TP n 1 : Analyse
temporelle dun systme
dynamique du 1er ordre
Introduction :
Ltude complte dun systme est compose de deux parties : son tude temporelle et son tude
frquentielle. En ce qui concerne ltude temporelle, nous nous intresserons ici identier les
rponses s(t)de systmes tudis des signaux dentre e(t) relativement simples, appels entres
canoniques, qui sont limpulsion de Dirac d(t), lchelon unitaire u(t) et la rampe unitaire v(t). La
rponse dun systme une impulsion de Dirac est appele rponse impulsionnelle ; la rponse dun
systme un chelon unitaire est appel rponse indicielle.
Dans ce TP on va se familiariser avec le logiciel Matlab en essayant de dessiner la rponse dun
systme du 1 er ordre pour trois entres diffrentes ; chelon, rampe, et acclration.
Objectif :
L'objectif de ce TP est de se familiariser avec tous les aspects des systmes du premier ordre. Cette
familiarisation introduit la fonction de transfert complexe, puis la fonction de transfert en
reprsentation de Laplace pour aboutir tous les diagrammes utiliss en automatisme, en ralisant
un fichier excutable sous Matlab.
Etude thorique :
Soit le circuit RC donn par le schma du montage suivante :
3. Dterminons :
Le gain statique:
K=1 daprs la fonction de transfert
La constante de temps :
T= RC = 3,15ms
K=E0 et T= R*C
Do
On peut simuler cette rponse par le graphe suivant :
et y(t)= s(t)
On a
comme
On a
Avec K=
et T=
Rponse impulsionnelle
%%TP1 Analyse temporelle d'un systme dynamique 1er ordre
% Reponse indicielle
t=0:0.0001:0.1 ; % Discretisation du temps de 0 0.1 par un pas de 0.0001
R= 50;
C= 63*10^-6;
num=[ 1 ] ; % Numerateur de la fonction de transfert
den=[R*C 1] ; % le dnominateur de la FT
sys=tf(num,den) ; % cration de la FT
y1=step(sys,t) ; % La reponse impulsionnelle
y0=y1(1)
plot(t,y1); % Le graphe de la reponse indicielle
title('Reponse indicielle')
Rponse indicielle
%%TP1 Analyse temporelle d'un systme dynamique 1er ordre
% Rponse indicielle
t=0:0.0001:0.1 ; % Discretisation du temps de 0 0.1 par un pas de 0.0001
R= 50;
C= 63*10^-6;
num=[ 1 ] ; % Numrateur de la fonction de transfert
den=[R*C 1] ; % le dnominateur de la FT
sys=tf(num,den) ; % cration de la FT
y1=step(sys,t) ; % La reponse indicielle
plot(t,y1); % Le graphe de la reponse indicielle
title('Reponse indicielle')
hold on
ym=max(y1 ) ;
yt=0.63*ym ;
max_idx=find(y1>=yt, 1 );
tau=t(max_idx)
plot([tau tau],[0 yt],'m--')
str=sprintf('tau=%3.4f s',tau);
gtext (str)
Rponse indicielle
%%TP1 Analyse temporelle d'un systme dynamique 1er ordre
% Reponse indicielle
t=0:0.0001:0.1 ; % Discretisation du temps de 0 0.1 par un pas de 0.0001
R= 50;
C= 63*10^-6;
num=[ 1 ] ; % Numerateur de la fonction de transfert
den=[R*C 1] ; % le denominateur de la FT
sys=tf(num,den) ; % cration de la FT
y1=step(sys,t) ; % La reponse impulsionnelle
plot(t,y1); % Le graphe de la reponse indicielle
title('Reponse indicielle')
hold on
% Calcul de la constante du temps
ym=max(y1 ) ;
yt=0.63*ym ;
max_idx=find(y1>=yt, 1 );
tau=t(max_idx)
plot([tau tau],[0 yt],'m--')
str=sprintf('tau=%3.4f s',tau);
gtext (str)
Rponse indicielle
10
t=0:0.0001:0.1 ;
11
12
hold on
y2=lsim(sys2,u,t) ;
plot(t,y2,'b')
y3=lsim(sys3,u,t) ;
plot(t,y3,'g')
hold off
legend('tau= 0.0016','tau= 0.0032','tau= 0.0064')
title('Rponse une rampe 2*t "variation de tau"')
13
14
Conclusion:
A lissu de ce TP, on a pu analyser les rponses de ces systmes des entres diffrentes et
dterminer les performances tout en utilisant le logiciel Matlab qui nous a facilit ltude quon fait
habituellement par la main.
15
TP n 2 : Analyse
temporelle dun systme
dynamique du 2me
ordre
16
Objectif :
Lobjectif de ce TP est dexploiter les connaissances acquises, pendant le cours sur lanalyse
temporelle dun systme dynamique du 2eme ordre. Ltudiant, aprs une tude thorique des
systmes proposs, devra dabord raliser un fichier excutable sous Matlab afin danalyser les
rponses de ces systmes des entres diffrentes et de dterminer leurs performances. La
reprsentation dun modle sous Simulink va permettre ensuite de visualiser les rponses du
systme tudi.
Etude thorique :
Exemple 1 : Circuit RLC
Etant donn un circuit RLC suivant avec les caractristiques suivantes : R=20, L=3mH, et C=5F.
Avec :
17
on trouve :
On a
7482t)
18
"+
= (2)
2. Paramtres du systme :
A un chelon f(t)= 2 N.m ce qui donne aprs une transforme de la place :
19
La rponse est :
et aussi
Do :
Avec
-
=0,6 et
(pseudo-priode)
On obtient :
.
Ce qui donne
et donc
20
plot(t,y2)
title('rponse chelon')
hold on
%calcul de tau
ym=max(y2);
yt=0.63*ym;
idx=find(y2>=yt, 1 );
tau=t(idx);
plot([tau tau],[0 yt],'m--')
str=sprintf('tau=\n%1.5fs',tau);
gtext(str)
tr=3/(z*wn)
%tm=atan((-sqrt(1-z^2)/z)*(180/pi))/(wn*sqrt(1-z^2))
tp=pi/(sqrt(1-z^2)*wn)
D=exp(-z*pi/sqrt(1-z^2))*100
%valeur pour laquelle z=1 - amortissement critique
R1=2*sqrt(L/C)
hold off
%reponse a un echelon unitaire pour R= 0, 20, 60
R0=[0 20 60];
figure(3)
hold on
den1=[C*L R0(1)*C 1];
den2=[C*L R0(2)*C 1];
den3=[C*L R0(3)*C 1];
sys1=tf(num,den1);
y1=step(sys1,t);
plot(t,y1,'r')
sys2=tf(num,den2);
y2=step(sys2,t);
plot(t,y2,'b')
sys3=tf(num,den3);
y3=step(sys3,t);
plot(t,y3,'y')
ksi=(R0/2).*sqrt(C/L);
legend(strcat('R=0 , ksi=', num2str(ksi(1))),...
strcat('R=20 , ksi=', num2str(ksi(2))),...
strcat('R=60 , ksi=', num2str(ksi(3))));
title('Reponse a echelon unitaire')
hold off
%reponse a une rampe
figure(4)
R0=60;
u=2*t';
den2=[C*L R0*C 1];
fonct=tf(num,den2);
yr=lsim(fonct,u,t);
plot(t,yr,t,u);
21
22
Exemple 2 :
clear
clc
m=5.187;
k=20;
b=12.223;
wn=sqrt(k/m)
z=b*wn/(2*k)
t=0:0.001:10;
num=1;
den=[m b k];
fct=tf(num,den)
%rponse une impulsion
y1=impulse(fct,t);
figure(1)
plot(t,y1)
title('rponse une impulsion')
%rponse un chelon
y2=2.*step(fct,t);
23
figure(2)
plot(t,y2)
title('rponse chelon')
hold on
tau=1/(z*wn)
tr=3*tau
tm=2.2*tau
tp=2*pi/(sqrt(1-z^2)*wn)
D=100*(max(y2)-0.1)/0.1
z0=[1 0.4 0.7];
figure(3)
b0=2*z0.*k/wn;
den1=[m b0(1) k];
den2=[m b0(2) k];
den3=[m b0(3) k];
hold on
fonct1=tf(num,den1);
y01=2*step(fonct1,t);
plot(t,y01,'r');
fonct2=tf(num,den2);
y02=2*step(fonct2,t);
plot(t,y02,'b');
fonct3=tf(num,den3);
y03=2*step(fonct3,t);
plot(t,y03,'y');
legend(strcat('ksi=', num2str(z0(1))),...
strcat('ksi=', num2str(z0(2))),...
strcat('ksi=', num2str(z0(3))));
title('reponse a echelon unitaire')
hold off
figure(4)
u=2*t;
yr=lsim(fct,u,t);
plot(t,yr,t,u);
legend('sortie', 'entree')
title('reponse a rampe')
24
25
26
27
2- b=4 :
3- b=6 :
28
29
30
Conclusion :
En guise de conclusion, nous pouvons dire que la performance des systmes du second
ordre dpend fortement de leurs paramtres par exemple lorsque le b du systme
mcanique varie, lamortissement fait de mme. Il est remarquable que les rsultats
obtenus partir de ltude sur MATLAB et sur Simulink soient semblables. Enfin nous
avons pu constater que le Simulink est facilement plus utilisable que MATLAB pour
lanalyse des systmes automatiques.
31