UNIVERSITE D’ANTANANARIVO ECOLE SUPERIEURE POLYTECHNIQUE D’ANTANANARIVO DEPARTEMENT TELECOMMUNICATIONS
TP Systèmes Linéaires Asservis Analogiques et Numériques
Responsable : Monsieur RAZAFINDRADINA HENRI BRUNO
Rédigé par : ANDRIANAIVOSOA Falinirina ANDRIANIRINA Naina RAKOTOVAO Gaël RANDRIANARISAINA Aina RANDRIANASOLO Herinjaka RAZAFIMBELO Njaka RUMAUX HYACINTHE Nasolo Tahina Antenaina
n°02 n°04 n°13 n°17 n°20 n°22 n° 24
Introduction : La période des travaux pratique permet de concrétiser des théories obtenues lors des séances de cours. L’utilisation du logiciel MATLAB permet de faciliter cette concrétisation, car ce logiciel présente une souplesse et une agilité au niveau des syntaxes et des commandes.
Sujet 01 « Asservissement Analogique » : Programme élaboré sous MATLAB : clc disp('1) a/ Fonction de transfert en boucle ouverte') num=[0 0 0.175]; den=[0.25 1 0]; B=tf(num,den) K = MENU('Choisir un diagramme','Bode','Nyquist','Reponse impulsionnelle','Reponse indicielle','New Bode','Sortir') while K<6
switch K %figure(1) %bode(B) %title('Diagramme de bode') case K==1 margin(B) title('b/Diagramme de bode') disp('c/ Marge de gain et marge de phase') [Gm,Pm,Wcg,Wcp]=margin(B)
break case 2 figure(2) Nyquist(B) title('2)Diagramme de Nyquist')
break disp('3) stabilite et critere de Routh');
disp('5) T(p) est un système de classe 1; erreur statique est nul')
disp('T(p) est un système de classe 1; erreur de traînage est égal à 1/k') Et=(1/0.175)*100 disp('T(p) est un système de classe 1; erreur en accélération est infinie')
case 3 disp('Fonction de transfert en boucle fermée:'); F=feedback(B,1); %disp('Reponse impulsionelle du système bouclé:')
figure(3) impulse(F) title('Reponse impulsionelle de F(p):') break %disp('Reponse indicielle du système bouclé:') case 4 figure(4) step(F) title('Reponse indicielle de F(p):') break %disp('Diagraramme de Bode de F(jw)') case 5 figure(5) Bode(F) title('Diagraramme de Bode de F(jw)') break disp('Caracteristiques dynamiques du système bouclé') num1=[0 0 .175/.175]; den1=[.25/.175 1/.175 .175/.175]; G=tf(num1,den1) Wn=sqrt(1/1.429) Xi=(5.714/2)*Wn tm=3/Wn
end
dialog('Vita Tompoko ô!','Licence 3')
end
Exécution: 1) a/ Fonction de transfert en boucle ouverte
Transfer function:
0.175 ----------------0.25 s^2 + s
Diagrammes de BODE du Système Diagramme de Nyquist du système Allure de la Réponse impulsionnelle du système Allure de la Réponse Indicielle du système Diagrammes de BODE du Système Bouclé Pour quitter au programme
Diagrammes de BODE du Système en boucle ouverte :
Diagrammes de NYQUIST du Système en boucle ouverte :
L’allure de la réponse Impulsionnelle du Système:
L’allure de la réponse Indicielle du Système:
Diagramme de BODE du système bouclé:
Sujet 02 « Asservissement » : Programme élaboré sous MATLAB : clc disp('Asservissement numerique') disp('La fonction de transfert du processus analogique') num=[0 0 1]; den=[20 12 1]; G=tf(num,den) Te=0.2 [numd,dend]=c2dm(num,den,Te,'zoh') f=c2dm(num,den,Te,'zoh') disp('
')
disp('1-Fonction de transfert G(z):') printsys(numd,dend,'z') disp('2-Reponse impulsionnelle:') disp('figure(1)') figure(1) dimpulse(numd,dend) disp('3-Reponse indicielle:') disp('figure(2)') figure(2) dstep(numd,dend) sys=tf(numd,dend) F=feedback(sys,1)
num=[.000961 0.0009233] den=[1 -1.884 0.8878] [numd,dend]=c2dm(num,den,Te,'zoh')
%F=[num,den] printsys(numd,dend,'t') figure(3) dimpulse(numd,dend) figure(4) dstep(numd,dend) %stabilité
Exécution sur la fenêtre de MATLAB:
Asservissement numérique La fonction de transfert du processus analogique
Transfer function: 1 ---------------------20 s^2 + 12 s + 1
Te =
0.2000
numd =
1.0e-003 *
0
0.9610
0.9233
dend =
1.0000 -1.8850
0.8869
f=
1.0e-003 *
0
0.9610
0.9233
1-Fonction de transfert G(z):
num/den =
0.00096101 z + 0.00092333 --------------------------------------z^2 - 1.885 z + 0.88692 2-Reponse impulsionnelle: figure(1) 3-Reponse indicielle: figure(2)
Transfer function: 0.000961 s + 0.0009233 --------------------------------s^2 - 1.885 s + 0.8869
Transfer function: 0.000961 s + 0.0009233 -------------------------------s^2 - 1.884 s + 0.8878
num =
1.0e-003 *
0.9610
0.9233
den =
1.0000 -1.8840
numd =
1.0e-003 *
0.8878
0
0.2530 -0.2083
dend =
1.0000 -2.4146
1.4576
num/den =
0.000253 t - 0.00020828 ----------------------t^2 - 2.4146 t + 1.4576
2-Reponse impulsionnelle :
3-Reponse indicielle:
3-Reponse impulsionnelle du système en boucle fermé:
4- Réponse indicielle système en boucle fermé:
Conclusion : Le logiciel MATLAB est un logiciel de référence pour toute simulation ou modélisation des systèmes linéaires asservis analogique ou numérique. Les résultats obtenus lors des calculs ne sont pas loin de ceux qui sont donnés par la programmation sous ce logiciel.