Vous êtes sur la page 1sur 31

Ecole Nationale Suprieure dArts et Mtiers Casablanca

Analyse temporelle dun systme


dynamique du 1er ordre et du 2me
ordre
Rapport TP n 1 et n2 de la Rgulation
Industrielle

Ralis par :

ABOUDRAR Basma
ACHOR Zineb
EL BECHARI Reda
EL BOUAMI Sarah
EL KHAOURI Wiam

Encadr par :

Mr.Chikh

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

TP n 1 : Analyse
temporelle dun systme
dynamique du 1er ordre

Analyse temporelle dun systme dynamique du 1er ordre et du 2me 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 :

1. Appliquons la loi de Kirchhoff des tensions, lquation diffrentielle qui rgit le


fonctionnement de ce circuit est :

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

2. La fonction de transfert du systme :


En appliquant la transform de Laplace, on a

3. Dterminons :
Le gain statique:
K=1 daprs la fonction de transfert

La constante de temps :
T= RC = 3,15ms

4. Dterminons la rponse du systme lapplication dun chelon damplitude


On a

Le graphe obtenu est de la forme :

K=E0 et T= R*C

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

Calculons le temps de monte et le temps de rponse :

5. Dterminons la rponse du systme lapplication dune rampe de pente a :


On a

Do
On peut simuler cette rponse par le graphe suivant :

et y(t)= s(t)

Calculons lerreur de trainage (erreur de vitesse)

On a

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

6. Traons la rponse du systme lorsque nous appliquons une impulsion e(t)=


entre du systme.

comme

On a

Avec K=

et T=

Analyse sous Matlab :


La fonction de transfert calcule dans la partie thorique :
%%TP1 Analyse temporelle d'un systme dynamique 1er ordre
% Reponse impulsionnelle
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=impulse(sys,t) ; % La reponse impulsionnelle
y0=y1(1)
plot(t,y1); % Le graphe de la reponse impulsionnelle
title('Reponse impulsionnelle')

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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)

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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)

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

% Calcul du temps de monte


Tm=t(find(y2>=0.9*k,1))-t(find(y2>=0.1*k,1))
% Calcule de temps de rponse
Tr=t(find(y2>=0.95*k,1))
plot([Tr Tr],[0 k],':')
str1=sprintf('t. rep =%3.4f s',Tr);
gtext (str1)
hold off

Rponse indicielle

10

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

%Rponses indicielles du systme correspondantes aux diffrentes valeurs de


%tau(0.0016-rouge-, 0.0032-bleu-, 0.0064-vert-)

t=0:0.0001:0.1 ;

% Discretisation du temps de 0 0.1 par un pas de 0.0001

num=[ 1 ] ; % Numerateur de la fonction de transfert


% les denominateurs de la FT
den1=[0.0016 1] ;
den2=[0.0032 1];
den3=[0.0064 1];
% cration des FT
sys1=tf(num,den1) ;
sys2=tf(num,den2);
sys3=tf(num,den3);
y1=step(sys1,t) ;
plot(t,y1,'r'); % Le graphe de la reponse indicielle
hold on
y2=step(sys2,t);
plot(t,y2,'b')
y3=step(sys3,t);
plot(t,y3,'g')
hold off
legend('tau= 0.0016','tau= 0.0032','tau= 0.0064')
title('Rponse indicielle "variation de tau"')

11

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

Rponse indicielle variation de tau


%Rponses une rampe du systme correspondantes aux diffrentes valeurs de
%tau(0.0016-rouge-, 0.0032-bleu-, 0.0064-vert-)

t=0:0.0001:0.1 ; % Discretisation du temps de 0 0.1 par un pas de 0.0001


a=2;
num=[ 1 ] ; % Numerateur de la fonction de transfert
% les denominateurs de la FT
den1=[0.0016 1] ;
den2=[0.0032 1];
den3=[0.0064 1];
% cration de la FT
sys1=tf(num,den1) ;
sys2=tf(num,den2);
sys3=tf(num,den3);
u=a*t ;
y1=lsim(sys1,u,t) ;
plot(t,y1,'r'); % Le graphe de la reponse

12

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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

Rponse une rampe 2*t variation de tau

%Erreur de trainage correspondantes aux diffrentes valeurs de


%tau(0.0016-rouge-, 0.0032-bleu-, 0.0064-vert-)

13

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

t=0:0.0001:0.1 ; % Discretisation du temps de 0 0.1 par un pas de 0.0001


a=2;
num=[ 1 ] ; % Numerateur de la fonction de transfert
% les denominateurs de la FT
den1=[0.0016 1] ;
den2=[0.0032 1];
den3=[0.0064 1];
% cration de la FT
sys1=tf(num,den1) ;
sys2=tf(num,den2);
sys3=tf(num,den3);
u=a*t' ;
y1=lsim(sys1,u,t) ;
plot(t,u-y1,'r'); % Le graphe de l'erreur de trainage
er_red= max(u-y1)
hold on
y2=lsim(sys2,u,t) ;
plot(t,u-y2,'b')
er_blue= max(u-y2)
y3=lsim(sys3,u,t) ;
plot(t,u-y3,'g')
er_green= max(u-y3)
hold off
legend('tau= 0.0016','tau= 0.0032','tau= 0.0064')
title('Erreur de trainage "variation de tau"')

14

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

Erreur de trainage variation de tau

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

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

TP n 2 : Analyse
temporelle dun systme
dynamique du 2me
ordre

16

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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.

Figure1. Circuit RLC


1. La fonction de transfert :
Daprs la loi des mailles on trouve :

Avec :

Remplaons chaque terme par sa valeur, on trouve :

En utilisant la transforme de la place, et en tenant compte que :

17

on trouve :

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre


Do la fonction de transfert du systme :

2. Dtermination des lments du systme :


On sait le modle de fonction de transfert dun circuit dordre 2 est le suivant :

On identifie la fonction de transfert avec le modle (1), on trouve :

3. Les rponses de lquation de transfert diffrentes entres :


Rponse un chelon unitaire :

On a

donc le systme un comportement oscillatoire :

Cette rponse se compose de deux parties, la premire correspond au rgime


transitoire, la seconde au rgime permanent.

Rponse une rampe de pente a=2 :

Avec une entre de type Dirac

Systme sous amorti :

7482t)

18

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

Rponse une impulsion de 1 :

Exemple 2 : Systme mcanique oscillant


On considre le systme mcanique donn par (Fig.2). Lapplication dune force f (t) (entre du
systme) sur le systme provoque des oscillations de la masse m suivant la direction x(t) (la sortie
du systme). Le systme est constitu, en plus de la masse m, dun ressort de raideur k et dun
amortisseur de coefficient b.

Lquation diffrentielle correspondante ce systme est la suivante :


+

"+

= (2)

1. La fonction de transfert du systme :


On appliquant la transforme de la place sur lquation (2) on obtient :
Ce qui donne :

2. Paramtres du systme :
A un chelon f(t)= 2 N.m ce qui donne aprs une transforme de la place :

19

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

La rponse est :

On cherche les paramtres m, b, K :


On a daprs la Fig.3 :
On a

et aussi

Do :

Avec
-

=0,6 et

(pseudo-priode)

On obtient :
.

Ce qui donne

et donc

Analyse sous Matlab :


Exemple 1 :
%definition des parametres du problemes
R=20;
L=3*10^-3;
C=5*10^-6;
num=1;
den=[C*L R*C 1];
wn=1/sqrt(C*L);
z=(R/2)*sqrt(C/L);
t=0:0.0001:0.01;
%fonction de transfert
fct=tf(num,den)
%rponse une impulsion
y1=impulse(fct,t);
figure(1)
plot(t,y1)
title('rponse impulsion')
%rponse un chelon
y2=step(fct,t);
figure(2)

20

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

title('Reponse une rampe')


figure(5)
plot(t,u-yr);
err=max(u-yr);
hold on
plot([0 0.01],[err err],'r--');
hold off

22

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

25

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

Analyse sous SUMILINK :

On commence par crer un nouveau modle Sumilink sous le nom de tp2.mdl


On ajoute une fonction de transfert depuis la librairie de Sumilink :
SumilinkContinuousTransfer Fcn
On dfinit le numrateur et le dnominateur

26

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

Pour dfinir les constantes k, m et b diagramMaskEdit MaskEdit MaskParameters


& Dialog ,ou par le raccourcis clavier (Ctrl+M)

Pour visualiser le rsultat on ajoute un oscilloscope SinksScope, et on entre du


systme on raccord une constante (chelon 2N) SourcesConstant.

Pour visualiser les rsultats run , et double clic sur loscilloscope

1- On fixe k=3, m=5 et on varie b de 2 6:

27

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

2- b=4 :

3- b=6 :

28

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

Lorsquon augmente la valeur de b, le coefficient du facteur damortissement augmente, du


coup les oscillations diminue.
4- On fixe k=3, m=2,5 et b=3

Pour une entre rampe on remplace Constant par Ramp : SourceRamp:

29

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

30

Analyse temporelle dun systme dynamique du 1er ordre et du 2me ordre

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