Vous êtes sur la page 1sur 11

République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la Recherche


Scientifique
Université A.MIRA-BEJAIA

Faculté de Technologie
Département de Génie Electrique

Compte rendu de TP 03
Analyse et Commande Par retour d'état

 Groupe de tp :

AIT MOUHOUB MOHAND SAID


MEDDAH HAMZA

 Charger de TP :
Mr. HADDAR
Licence ‘3’ / Automatique
Année Universitaire : 2018/2019
Exercice N°1

[−60 −51 ] x+[ 01] u ; y=[ 1


ẋ = 0] x

1. Concevoir un contrôleur par retour d’état qui satisfait les performances suivantes :

- Les pôles en boucle fermée ont un rapport d’amortissement ζ =0.707


- L’instant du Pic de la réponse indicielle est T p=3.14 sec

ωn ²
G ( s )=
s 2+ 2ζ ωn s+ ωn ²
π π
T p= =
ωd ωn √1−ζ ²

π
Donc ω n= =1.0030
T p √ 1−ζ ²

Δ d ( s )=s2 +2 ζ ω n s+ ωn ²
Pour trouver les valeurs de K, on utilise la formule d’Ackermann :
−1
K=[ 0 0 … 0 0] [ B AB A 2 B … A n−1 B ] Δd (s )

th=0.0707
tp=3.14
wn=pi/(tp*sqrt(1-th^2))=
deltad=[1,2*th*wn,wn^2]
A=[0 1;-6 -5]
B=[0 1]'
C=[1 0]
D=0

K= [−4.9940 −4.8582 ]

2. Tracer la réponse indicielle du système en boucle ouverte et en boucle fermée et vérifier


les résultats :

[y0,t0]=step(ss(A,B,C,D));
[yf,tf]=step(ss(A-B*k,B,C,D));
plot(t0,y0),grid
figure,plot(tf,yf),grid

1
En boucle ouverte

0.18

0.16

0.14

0.12

0.1

0.08

0.06

0.04

0.02

0
0 0.5 1 1.5 2 2.5 3 3.5

En boucle fermée

On obtient effectivement un instant de Pic de 3.14 sec donc les performances sont remplies.

2
Exercice N°2

[ ] []
−1 −2 −2 2
ẋ= 0 −1 −1 x + 0 u; y=[ 1 0 0 ] x
0 0 −1 1

a. Concevoir un contrôleur par retour d’état tel que la réponse indicielle en boucle fermée a
un dépassement de moins de 5% et un temps d’établissement en régime permanant de
± 2 % inferieur à 4.6 sec :


−πζ
√ 1−ζ ² log ⁡( D p )²
D p=5 %=e → ζ= 2
=0.6901
log ( D p ) +π ²

T s (± 2 %)≤ 4.6
4 4
T s= → ωn= =0.9450
ζ ωn Tsζ

- Vu que notre système est de 3ème ordre, le polynôme caractéristique désiré est :

Δ d ( s )=(s 2 +2 ζ ωn s +ω2n)( s+ a)
- On choisit un pôle très rapide, par exemple -20

Δ d ( s )=(s 2 +2 ζ ωn s +ω2n)(s+20)
- Et pour trouver K, on utilise la méthode d’Ackermann :
A=[-1 -2 -2;0 -1 -1;1 0 -1];
B=[2 0 1]';
C=[1 0 0];
D=0;
Ts=4.6
Dp=0.05
logg=(log(Dp))^2;
th=sqrt(logg/(logg+pi^2))
wn=3/(th*Ts)
deltad=conv([1 2*th*wn wn^2],[1 20])
K=acker(A,B,roots(deltad))

K= [ 8.2615 1.6684 1.7814 ]

3
b. Examiner la réponse indicielle du système en boucle fermée et vérifier qu’elle répond aux
exigences :
step(ss(A-B*K,B,C,D)),grid

On divise sur le gain statique en boucle fermée pour corriger le système :


GBFdc=dcgain(ss(A-B*K,B,C,D))
figure,step((1/GBFdc)*ss(A-B*K,B,C,D)),grid

Exercice N°3

4
[ ][ ][ ] [ ] [ ] [ ]
ẋ 1 0 0 0 1 0 0 x1 0 0 0
ẋ 2 0 0 0 0 1 0 x2 0 0 0
ẋ 3 0 0 0 0 0 1 x3 0 0 0
= + u 1+ u+ u
ẋ 4 7.3809 0 0 0 2 0 x4 1 0 2 0 3
ẋ 5 0 −2.1904 0 −2 0 0 x5 0 1 0
ẋ 6 0 0 −3.1904 0 0 0 x6 0 0 1

1. Vérifier si l’origine de ce système est stable :

Pour vérifier la stabilité du système on calcule les valeurs propres de la matrice A


A=[zeros(1,3) 1 zeros(1,2);zeros(1,4) 1 0;zeros(1,5) 1;7.3809 zeros(1,3) 2
0;0 -2.1904 0 -2 0 0;0 0 -3.1904 0 0 0]
lamda=eig(A)
real(lamda)

[ ] [ ]
−2.1587 −2.1587
2.1587 2.1587
1.8626 i 0
λ= real ( λ )=
−1.8626 i 0
1.7862 i 0
−1.7862 i 0

Le système contient une valeur propre à partie réelle positive donc il n’est ni asymptotiquement
stable, ni marginalement stable.

2. Vérifier la contrôlabilité du système par les trois entrées u1 ,u 2 et u3 :

Pour vérifier la contrôlabilité du système, on calcule le déterminant des Γ c


gammac1=[B1 A*B1 A^2*B1 A^3*B1 A^4*B1 A^5*B1];
gammac2=[B2 A*B2 A^2*B2 A^3*B2 A^4*B2 A^5*B2];
gammac3=[B1 A*B3 A^2*B3 A^3*B3 A^4*B3 A^5*B3];

det ( Γ c 2 )=0 Le système n’est pas contrôlable de l’entrée u1

det ( Γ c 2 )=0 Le système n’est pas contrôlable de l’entrée u2

det ( Γ c 3 )=0 Le système n’est pas contrôlable de l’entrée u3

5
[U,D]=eig(A')
B=[B1 B2 B3]
B'*U

[ ]
x x x x 0 0
x x x x 0 0
0 0 0 0 x x

- D’après cette matrice on conclut que le système est contrôlable des trois entrées et pour
vérifier cela on peut calculer le déterminant :
gammac=ctrb(A,[B1 B2 B3]);
det(gammac*gammac')

La matrice n’étant pas carrée, son déterminant = det ( Γ c . Γ c ) =1.5948e+14 ≠ 0 donc le système est
T

vraiment contrôlable des trois entrées.

- Le système peut être aussi contrôlable par deux entrées : u1 et u3 ou bienu 2 et u3 et on peut
aussi le vérifier :
gammac4=ctrb(A,[B1 B3]);
gammac5=ctrb(A,[B2 B3]);

det ( Γ c 4 . Γ c 4T )=7.0381e+10 ≠ 0

det ( Γ c 5 . Γ c5T )=7.9914e+11 ≠ 0

- Le système n’est pas contrôlable par les entrés u1 et u2  :


gammac6=ctrb(A,[B1 B2]);

det ( Γ c 6 . Γ c6 ) =0
T

Exercice N°4 :

[][ ][ ] [ ]
β̇ −0.0895 −0.286 0 β 0.0145
ṙ = −0.0439 −0.272 0 r + −0.0122 δ
ψ̇ 0 1 0 ψ 0

1. Déterminer la fonction de transfert de δ vers ψ et les racines du polynôme caractéristiques


en boucle ouverte :

A=[-0.0895 -0.286 0;-0.0439 -0.272 0;0 1 0]


B=[0.0145 -0.0122 0]'
C=[0 0 1]

6
G=zpk(ss(A,B,C,0))

−0.0122( s+0.1417)
- La fonction de transfert : G ( s )=
s ( s+0.3253)(s+0.03624)
- Le polynôme caractéristique en boucle ouverte : Δ ( s )=s 3 +0.3615 s 2+ 0.01179 s

2. En utilisant un retour d’état de forme : δ =−K 1 −K 2 r −K 3 (ψ−ψ d ) , déterminer les


valeurs du gain de retour d’état qui placeront les pôles en boucle fermée à {
−0.2 ,−0.2± 0.2 j } :

K=acker(A,B,[-0.2 -0.2+0.2i -0.2-0.2i])

K= [ 0.2766 −19.2204 −9.2568 ]

3. Concevoir un estimateur d’état basé sur la mesure de ψ et placer les pôles de l’observateur
à {−0.8 ,−0.8 ±0.8 j }  :

L=(acker(A',C',[-0.8 -0.8+0.8i -0.8-0.8i]))’

[ ]
−19.0856
L= 1.8113
2.0385

Pour vérifier si les pôles sont bien placés, il suffit de calculer les valeurs propres de ( A−L∗C)  :

[ ]
−0.8
λ= −0.8+0.8 i
−0.8−0.8 i

Ces valeurs propres correspondent effectivement aux pôles désirés.

4. Donner l’équation d’état ainsi que la fonction de transfert du compensateur D c ( s ) de la


figure donnée :

^x .= A ^x + Bu+ L ( y−c ^x )¿ A ^x −BK ^x + Ly−Lc ^x

¿ ( A−Bk−LC ) x^ + Ly
u=−k ^x
A1=A-B*K-L*C
B1=L
C1=K
Ds=tf(ss(A1,B1,C1,0))

7
[ ][ ] [ ]
−0.0935 −0.0073 19.2198 ^x 1 −19.0856
^x .= −0.0405 −0.5065 −1.9242 ^x 2 + 1.8113 u
0 1 −2.0385 x^3 2.0385

y= [ 0.2766 −19.2204 −9.2568 ] ^x

−58.96 s 2−44.39 s−9.479


D s ( s )=
s3 +2.638 s 2 +3.194 s +1.055

5. Tracer le diagramme de Bode du système :

On doit d’abord calculer la fonction de transfert en boucle ouverte 

[ ^xẋ.]=[ LCA 0 x B
+ u
A−LY x^ B ][ ] [ ]
u=[ 0
[ x^ ]
k] x

Abo=[A zeros(size(A));L*C A-L*C]


Bbo=[B;B]
Cbo=[zeros(size(K)) K]
Gbo=minreal(zpk(ss(Abo,Bbo,Cbo,0)))
bode(Gbo),grid
margin(Gbo)

On obtient la fonction de transfert suivante :

0.2385( s+0.4823)(s+0.1391)
G bo ( s )=
s ( s+0.03624)( s+ 0.3253)

8
Marge de gain = ∞

Marge de phase = 62.2°

6. Calculer les gains directs pour avoir une erreur de poursuite en régime permanant qui est
nulle et tracer la réponse du système :

gc=dcgain(ss(A-B*K,B,C,0))
gcc=((1/gc)*ss(A-B*K,B,C,0));
step(gcc),grid
g1=tf(gcc)

Le gain gc=-0.1080

−2+2 i
Les pôles du système sont : −2−2i
−2

9
10

Vous aimerez peut-être aussi