Vous êtes sur la page 1sur 44

Tutorats Automatique

1 Tutorat N◦ 1
Objectif : Ce tutorat est dédié aux modèles linéaires de type équation d’état et fonction de transfert. L’objectif
est de savoir obtenir un modèle de type représentation d’état linéaire à partir de la linéarisation d’un système
non linéaire et de comprendre les liens entre ces deux types de modèles.

Exercice 1:

Un système non linéaire est représenté par l’équation suivante :

ẏ(t) + (0.2 + y(t))y(t) = u(t) + 0.2u(t)3

1. Trouver les points d’équilibre correspondant à u(t) = 2.


2. Donner les équations linéarisées autour de ces points.

Exercice 2:

Soit la fonction de transfert :


1
G(p) =
p2 + 2p + 1
1. Donner une réalisation de G, où la matrice d’état est sous forme compagne.
2. Soit la fonction de transfert :
p+3
H(p) =
p2
+ 2p + 1
Donner une réalisation de H, où la matrice d’état est sous forme compagne
a) Les réalisations trouvées sont-elles uniques ?
c) Quelle relation y a-t-il entre la matrice d’état et la fonction de transfert ?
d) Quelle est la propriété intéressante de la forme compagne ?
3. Soit les fonctions de transfert :
2 2
G1 (p) = , G2 (p) =
(p + 1)(p + 2) p2 + 2p + 1
Donner des réalisations où la matrice d’état est diagonale si c’est possible ou triangulaire inférieure sinon.

Exercice 3:

Soit le système non-linéaire


ÿ(t) − 2(ẏ(t))2 + y(t) = u(t) − 1
 T
• En choisissant x1 = y, x2 = ẏ et x = x1 x2 , écrire le système sous la forme

ẋ = f (x, u)
y = g(x, u)

• Pour u(t) = 0, calculer les points d’équilibre et donner les modèles linéarisés correspondants.

1
Solutions
Exercice 1

1. Pour trouver les points d’équilibre, il suffit de remplacer u(t) par sa valeur et d’annuler les dérivées. Cela
donne deux solutions possibles : ye = −2; ye = 1.8.

2. Pour la linéarisation, il est conseillé de prendre l’habitude de calculer


∂f ∂f ∂g ∂g
A= , B= , C= , D=
∂x ∂u ∂x ∂u
et d’évaluer ces quantités au point d’équilibre qui nous intéresse (f et g définissent le système non linéaire
à linéariser ẋ = f (x, u) et y = g(x, u)). Dans le cas de cet exercice très simple, en posant y = x, nous
avons:
ẋ = −0.2x − x2 + u + 0.2u3
y = x
Autrement dit
f (x, u) = −0.2x − x2 + u + 0.2u3 , et g(x, u) = x
Ce qui donne
A = −0.2 − 2x, B = 1 + 0.6u2 , C = 1, D=0
Evaluées aux points d’équilibres qui nous intéressent, ces quantités deviennent

A = 3.8, B = 3.4, C = 1, D=0

pour le premier point d’équilibre, et

A = −3.8, B = 3.4, C = 1, D=0

pour le deuxième. Ce qui peut aussi s’écrire :


˙
∆x(t) = 3.8∆x(t) + 3.4∆u(t)
∆y(t) = ∆x(t)

et
˙
∆x(t) = −3.8∆x(t) + 3.4∆u(t)
∆y(t) = ∆x(t)

Exercice 2

1. Pour obtenir la forme compagne, on choisit les variables d’état suivantes :

x1 = y, x2 = ẏ
y
Le développement de G(p) = u donne
p2 y + 2py + y = u
Ainsi, nous avons ẋ1 = ẏ = x2 et
ẋ2 = ÿ
= −2ẏ − y + u
= −2x2 − x1 + u

2
Par conséquent, une réalisation de G(p) sous forme compagne est donnée par:
ẋ = Ax + Bu
y = Cx + Du
avec    
0 1 0  
A= , B= , C= 1 0 , D=0
−1 −2 1
Elle correspond au schéma fonctionnel suivant :

u ẋ2 x2 = ẏ x1 = y
1 1
p p

−2

−1

2. Une réalisation de la fonction de transfert G(p) = uy est obtenue à la question précédente. Nous utiliserons
ce résultat pour trouver une réalisation de H(p). Posons
yh p+3
H(p) = = 2
u p + 2p + 1
Comme
1 p+3
y= u et yh = u
p2 + 2p + 1 p2 + 2p + 1
on peut écrire
yh = (p + 3)y
ce qui donne
yh = 3x1 + x2
Ainsi, pour obtenir une réalisation de H(p), seules les matrices de sortie de la réalisation obtenue pour
G(p) changent. La réalisation de H(p) est donnée par :
ẋ = Ax + Bu
yh = Cx + Du
avec    
0 1 0  
A= , B= , C= 3 1 , D=0
−1 −2 1
Ce raisonnement peut être observé sur le schéma fonctionnel suivant :

1 yh

3
u ẋ2 x2 = ẏ x1 = y
1 1
p p

−2

−1

3
a) Les réalisations obtenues ne sont pas uniques. N’importe quelle matrice inversible P permet d’obtenir
une autre réalisation en posant x = P z. Ainsi, nous avons :

P ż = AP z + Bu
y = CP z + Du
ou encore
ż = P −1 AP z + P −1 Bu
y = CP z + Du
En choisissant une matrice P inversible, on obtient une nouvelle réalisation

ż = Ãz + B̃u
y = C̃z + D̃u
avec
à = P −1 AP, B̃ = P −1 B, C̃ = CP, D̃ = D

c) Rappelons que
G(p) = C(pI − A)−1 B + D
(p)
Si G(p) = N
D(p) alors D(p) = det(pI − A). Les pôles de la fonction de transfert G(p) sont les valeurs
propres de la matrice A.
d) On observe que les coefficients de la dernière ligne de la matrice A correspondent aux coefficients
du dénominateur de la fonction de transfert G(p). Ce sont également les coefficients du polynôme
caractéristique de A.

3. On commence par
y 2
= G1 (p) =
u (p + 1)(p + 2)
qui, après décomposition en éléments simples, donne
2 2
y= u− u
p+1 p+2
On choisit les variables d’état
1 1
x1 = u, et x2 = u
p+1 p+2
Ce qui permet d’aboutir à la réalisation diagonale
      
ẋ1 −1 0 x1 1
= + u,
ẋ2 0 −2  x2 1
  x1
y = 2 −2
x2

Pour la fonction de transfert


y 2
= G2 (p) = 2
u p + 2p + 1
nous avons
2
y= u
(p + 1)2
On choisit les variables d’état
1 1
x1 = u, et x2 = u
p+1 (p + 1)2

4
Ainsi
x1
ẋ1 = −x1 + u, x2 = , et y = 2x2
p+1
Autrement dit
ẋ1 = −x1 + u, ẋ2 = −x2 + x1 et y = 2x2
Ce qui permet d’aboutir à la réalisation non diagonale
      
ẋ1 −1 0 x1 1
= + u,
ẋ2 1 −1  x2 0
  x1
y = 0 2
x2

Exercice 3

Le modèle d’état non linéaire s’écrit


 
x2
ẋ =
−x1 + 2x22 + u − 1
y = x1

Pour u = 0, le seul point d’équilibre possible est donné par x1 = −1 et x2 = 0. Les matrices du modèle linéarisé
sont
   
0 1 0
A= , B=
−1 0 1
 
C= 1 0 , D=0

5
2 Tutorat N◦ 2
Exercice 4:

On considère le système représenté par la fonction de transfert de la figure suivante :

e 1 x2 5
x1
p p+6

1. Donner les équations d’état en utilisant le vecteur d’état x = [x1 x2 ]T . Ce système est-il stable ?

2. On réalise maintenant e = ref − x1 ; Le nouveau système a donc pour entrée ref et pour sortie x1 . On
dit que le système est en boucle fermée; Donner la représentation d’état de ce nouveau système.

3. Calculer la matrice de transition d’état.

4. Donner la réponse libre du système lorsque x(0) = [4 2]T .

5. Donner la réponse du système lorsque x(0) = x0


 
4
x0 = , et ref (t) = 1 ∀t ≥ 0.
2

Exercice 5:

Soit le système :    
5 6 −1
xk+1 = xk + uk
−2 −2 1

1. Déterminer la suite de commandes u0 , u1 , . . ., uk , . . . telle que xk = 0, ∀ k ≥ 2; x0 est donné. Où


intervient la propriété de commandabilité dans cette question ?

2. Chercher une commande en boucle fermée du type ”retour d’état” uk = Kxk où K est une matrice
constante.

3. Est-on sûr que le problème admet une solution ?

4. Pouvait-on déduire K de la première question ?

6
Solutions
Exercice 4

1. Le choix des variables d’état proposé permet d’écrire :


5 1
x1 = x2 , x2 = e, y = x1
p+6 p
On en déduit :
ẋ1 = −6x1 + 5x2 , ẋ2 = e, y = x1
et ainsi l’équation d’état :
ẋ = Ax + Be
y = Cx + De
avec    
−6 5 0  
A= , B= , C= 1 0 , D=0
0 0 1
Les valeurs propres de A sont −6 et 0. Le système est stable mais pas asymptotiquement stable.
2. Il suffit de remplacer e par ref − x1 :
ẋ = Ax + B(ref − x1 )
y = Cx
ou encore
ẋ = (A − B[1 0])x + Bref
y = Cx
et en posant E = A − B[1 0], on a
ẋ = Ex + Bref
y = Cx
avec  
−6 5
E= ,
−1 0
Les valeurs propres de E sont : −5 et −1. Le système en boucle fermée est asymptotiquement stable.
3. Par définition, la matrice de transition d’état est la matrice : eEt . On pourrait calculer cette expression
analytiquement avec une des méthodes du calcul de l’exponentielle d’une matrice mais les logiciels à votre
disposition (Matlab par exemple) permettent de le faire.
Code Matlab
E=[-6 5;-1 0];
syms t
EX=expm(E*t)
On obtient :
−1 −t
+ 54 e−5t 5 −t −5 −5t
 
4 e 4e + 4 e
eEt =  
−1 −t 1 −5t 5 −t 1 −5t
4 e + 4e 4e − 4e

4. La réponse libre du système lorsque x(0) = [4 2]T est :


Code Matlab
x0=[4;2];
x=EX*x0
3 −t
+ 25 e−5t
 
2e
x(t) = eEt x0 =  
3 −t 1 −5t
2e + 2e

7
5. La réponse du système lorsque x(0) = [4 2]T et ref (t) = 1.
Code Matlab
B=[0;1]
syms s
x=EX*x0+int(expm(E*(t-s))*B,s,0,t)

1 −t 11 −5t
 
t 4e + 4 e +1
Z
x(t) = eEt x0 + e(t−s)E Bds =  
0 1 −t 11 −5t 6
4e + 20 e + 5

Exercice 5

1. Il faut écrire l’équation qui donne x2 à partir de u0 , u1 .

x1 = Ax0 + Bu0
x2 = Ax1 + Bu1
= A(Ax0 + Bu0 ) + Bu1
= A2 x0 + ABu0 + Bu1

Le problème maintenant est de trouver u0 et u1 pour que x2 = 0 quel que soit x0 , autrement dit :

A2 x0 + ABu0 + Bu1 = 0

En regroupant u0 et u1 cela devient


 
u1
= −A2 x0
 
B AB
u0
 
Ce problème admet une solution si on peut inverser la matrice B AB . On retrouve ici la condition
de commandabilité. Le système est de dimension 2, si le rang de cette matrice 2x2 est égal à 2, elle est
inversible et le système est commandable. On peut en déduire :
   
u1  −1 2 −6 −8
= − B AB A x0 = − x0
u0 7 10

En résumé, peu importe la condition initiale du système, en appliquant la séquence


 
u0 = −7 −10 x0
 
u1 = 6 8 x0
on amène l’état à l’origine en deux coups et il y reste ∀k en appliquant u3 = u4 = . . . = 0. On aurait pu
choisir un autre état final que l’origine. La propriété de commandabilité garantit que le problème admet
une solution.

2. Cette fois on cherche une solution sous la forme boucle fermée uk = Kxk . L’inconnue est la matrice K.
On écrit :
x1 = (A + BK)x0
x2 = (A + BK)x1
= (A + BK)2 x0
On doit trouver une condition sur A + BK pour que x2 = 0 quel que soit l’état initial x0 et chercher ce
qu’implique cette condition sur les valeurs propres de A + BK. Pour que

(A + BK)2 x0 = 0, ∀x0

8
il faut que (A + BK)2 = 0. Or (A + BK) ∈ R2×2 , la matrice A + BK doit être nilpotente (toutes les
valeurs propres de A + BK doivent êtres nulles). Le problème consiste maintenant à trouver les éléments
de la matrice K pour que toutes les valeurs propres de A + BK soient nulles. On pose :
 
K = k1 k2

et    
5 6 −1  
A + BK = + k1 k2
 −2 −2 1 
5 − k1 6 − k2
=
−2 + k1 −2 + k2
En écrivant le polynôme caractéristique et en identifiant avec celui permettant d’avoir deux racines nulles
on obtient un système de deux équations à deux inconnues et on calcule ainsi k1 et k2 . Le résultat final
est  
K = −7 −10

3. Ce qui permet d’être sûr que ce problème admet une solution c’est la propriété de commandabilité. En
effet, le théorème dit du ”Retour d’état” (Théorème 4.5 du poly de cours) indique :

Si le système (A, B) est commandable, il est possible, par le choix d’une matrice K, de placer arbitraire-
ment les valeurs propres du système en boucle fermée A + BK.

Nous avons déjà vérifié que le système était commandable lors de première question. D’après ce théorème,
il est donc possible de calculer la matrice K pour que les valeurs propres de A + BK soient celles que
l’on souhaite et en particulier toutes nulles pour le problème qui nous intéresse.

4. On remarque que lors de la réponse à la première question de cet exercice, la première commande u0 est
une commande en boucle fermée : u0 = Kx0 avec la bonne valeur de la matrice K.

9
3 Tutorat N◦ 3
Exercice 6:

On souhaite savoir si les systèmes suivants sont commandables ou pas.

Tous les bacs sont cylindriques de section S et les débits de sortie ont le même modèle ds = kh où k est le
même pour tous les systèmes : modèle linéarisé autour du point de fonctionnement H0 , les commandes sont
les écarts entre le débit d’entrée d par rapport au débit nominal D0 , les variables d’état sont les écarts de la
hauteur h par rapport à la hauteur nominale H0 .

1. Le premier système est celui de la figure 1.

2. Le deuxième système est celui de la figure 2. Les deux cuves ont la même section S et sont alimentées de
manière indépendante.

3. Le troisième système est celui de la figure 3. Les deux cuves ont la même section S et le débit d’entrée
se partage de manière égale entre les deux.

4. Le quatrième système est celui de la figure 4. Les cuves ont des sections différentes S1 6= S2 et le débit
d’entrée se partage de manière égale entre les deux.

Figure 1: Système 1

10
Figure 2: Système 2

Figure 3: Système 3

Solution :

On obtient aisément l’équation pour une cuve en utilisant l’hypothèse de l’énoncé ds = kh. L’équation qui
donne l’écart de niveau par rapport à l’équilibre est :
k 1
ḣ = − h + d
S S
1. Pour le premier système, l’entrée d agit sur h. Intuitivement, on peut dire que le système est commandable.
Le calcul de la matrice de commandabilité est trivial. En effet, il s’agit d’un système scalaire avec une
seule variable d’état x = h et une entrée de commande u = d. L’équation d’état s’écrit :

ẋ = Ax + Bu
1 1
avec A = − Sk , B = S. La matrice de commandabilité est réduite à B donc au scalaire S 6= 0. Le système
est commandable.

2. Pour le système n◦ 2, on voit qu’il est constitué de deux systèmes n◦ 1 indépendants et que chaque système
est commandable (voir question précédente). Intuitivement, on peut dire que le système n◦ 2 est com-
mandable. Pour calculer la matrice de commandabilité, écrivons l’équation d’état. Le vecteur d’état

11
Figure 4: Système 4

x ∈ R2 est constitué des deux variables h1 et h2 et l’entrée u ∈ R2 est composée des deux variables d1 et
d2 :  k   1 
−S 0 S 0
ẋ = x + u
0 − Sk 0 S1
La matrice de commandabilité est
1
− Sk2
 
 
S 0 0
B AB = 1
0 S 0 − Sk2
qui est bien une matrice de rang 2. Le système est commandable.
3. Pour le système n◦ 2, on peut essayer de répondre intuitivement mais avec un risque fort de se tromper.
Dans cet exemple, le vecteur d’état x ∈ R2 est toujours constitué des deux variables h1 et h2 mais l’entrée
u ∈ R est cette fois réduite à une seule variable d. L’équation d’état s’écrit :
 k   1 
−S 0 S
ẋ = x + 1 u
0 − Sk S

La matrice de commandabilité est :


1
− Sk2
 
 
B AB = S
1
S − Sk2
Il s’agit d’une matrice de rang 1. Le système n’est pas commandable.
4. Il n’est pas évident de répondre intuitivement. Pour cet exemple, les variables d’état et l’entrée de
commande sont les mêmes que pour le système n◦ 3. Ce qui change c’est le fait que la première cuve est
caractérisée par S1 et la deuxième cuve par S2 avec S1 6= S2 . L’équation d’état s’écrit :
" #  1 
− Sk1 0
ẋ = x + S11 u
0 − Sk2 S2

La matrice de commandabilité est :


1
− Sk2
" #
  S1
B AB = 1
1

S2 − Sk2
2

qui est bien une matrice de rang 2. Le système est commandable.

12
4 Tutorat N◦ 3 et N◦ 4
Exercice 7:

On considère un moteur électrique dont la fonction de transfert est :


K
W (p) = U (p)
1 + τp

où u(t) est la tension de commande et w(t) est la vitesse de rotation du moteur et où les valeurs des paramètres
sont : K = 2 et τ = 100ms.
L’objectif est de réaliser une régulation de la position du moteur, notée θ(t).

1. Modélisation

a) Ecrire la fonction de transfert entre l’entrée U (p) et la sortie Θ(p).


b) Mettre le système sous forme d’équation d’état en prenant :
– u(t) comme entrée
– θ(t) comme sortie
– x1 (t) = θ(t) et x2 (t) = w(t) comme variables d’état.

2. Propriétés structurelles

a) Le système est-il stable ?


b) Le système est-il commandable ?
c) Le système est-il observable si par θ(t)?
d) Le système est-il observable si par w(t)?

3. Retour d’état
On suppose dans cette question, que la vitesse et la position angulaires sont mesurées. Afin que la sortie
θ(t) suive une référence θref (t), on effectue un retour d’état sous la forme :

u(t) = K1 (θref (t) − θ(t)) − K2 w(t)

a) Donner le schéma fonctionnel.


b) Mettre le système en boucle fermée sous forme d’équation d’état.
c) Trouver les valeurs de K1 et K2 assurant ξbf = 0.7 et wnbf = 100rd/s.

4. Synthèse d’observateur

a) On suppose qu’un seul capteur (soit position, soit vitesse) peut être placé sur le moteur. Lequel
faut-il utiliser pour pouvoir observer le système ? Dans la suite, on suppose utiliser ce capteur.
b) Donner les équations d’un observateur d’état.
c) Donner le schéma fonctionnel (avec les fonctions de transfert) de l’observateur.
d) Calculer l’observateur pour que l’écart entre l’état x(t) et son estimation x̂(t) s’atténue en un temps
de l’ordre 1/100 de seconde et avec un dépassement de l’ordre de 5%.

5. Retour d’état observé.

a) On applique la commande de la question 3, où l’état est remplacé par son estimation donnée par
l’observateur de la question 4. Donner le schéma fonctionnel de l’ensemble.

13
Solution

1. Modélisation :

Moteur

u K x2 = w 1 x1 = θ
1+τ p p

a) D’après la figure précédente, on voit que la fonction de transfert entre u et θ s’écrit :

K
θ= u
(1 + τ p)p

b) Le choix des variables d’état indiqué dans le sujet permet d’écrire :

x2 K
ẋ1 = x2 ẋ2 = − + u
τ τ
L’équation d’état est alors
ẋ = Ax + Bu
θ = Cx
avec    
0 1 0  
A= , B= , C= 1 0
0 − τ1 K
τ

2. Propriétés structurelles

a) Les valeurs propres de la matrice A sont 0 et − τ1 . Ce sont aussi les pôles de la fonction de transfert.
Le système est stable mais pas asymptotiquement stable.
b) Le système est commandable. Deux façons d’arriver à cette conclusion. La première sans cal-
cul. Il suffit de remarquer que la fonction de transfert est irréductible et l’équation d’état écrite
précédemment correspond à une réalisation minimale. Cela suffit pour conclure que le système est
commandable. L’autre façon consiste à calculer la matrice de commandabilité. Pour un système
d’ordre 2, cela donne
K
 
  0 τ
B AB = K
τ − τK2
qui est une matrice de rang 2. Le système est donc commandable.
c) Le système est observable. Dans ce cas, la matrice d’observation est C = [1 0]. Comme précédemment,
il y a deux façons d’arriver à cette conclusion. D’une part, la réalisation minimale permet de con-
clure que le système est observable sans calcul. D’autre part, le calcul de la matrice d’observabilité
donne :    
C 1 0
=
CA 0 1
qui est une matrice de rang 2. Le système est donc observable à partir de la mesure de la position
angulaire θ(t).

14
d) Le système n’est pas observable. Dans ce cas, la matrice d’observation est C = [0 1]. Le calcul de
la matrice d’observabilité donne :    
C 0 1
=
CA 0 −1 τ
qui est une matrice de rang 1 6= 2 = n. Le système n’est donc pas observable à partir de la vitesse
angulaire w(t).

3. Retour d’état

a) Il suffit de transcrire l’équation du retour d’état et on obtient le schéma fonctionnel suivant :

u = K1 (θref − θ) − K2 w
Moteur

θref u K x2 = w 1 x1 = θ
K1 1+τ p p
+ − + −

K2

b) Pour obtenir l’équation d’état en boucle fermée, on remplace u par son expression du retour d’état
dans l’équation d’état initiale :

ẋ = Ax + B(K1 (θref − x1 ) − K2 x2 )

Autrement dit :
     
0 1 0   0
ẋ = x+ −K1 −K2 x+ K1 θref
0 − τ1 K
τ
K
τ

Et finalement, on obtient :
ẋ = Abf x + Bbf θref
θ = Cbf x
avec    
0 1 0  
Abf = , Bbf = , Cbf = 1 0
− KK
τ
1
− 1+KK
τ
2 KK1
τ

c) Les performances du système en boucle fermée sont fixées par les valeurs propres de la matrice Abf .
Ce sont les racines du polynôme caractéristique
1 + KK2 KK1
det(λI − Abf ) = λ2 + λ +
τ τ
Pour calculer les valeurs des gains respectant le cahier des charges, il faut identifier ce polynôme
avec le dénominateur d’un système du second ordre

p2 + 2ξbf wnbf p + wnbf 2

avec ξbf = 0.7 et wnbf = 100 rd/s. Cela permet d’obtenir les valeurs suivantes de K1 et K2 :

K1 = 500, K2 = 6.5

15
4. Observateur

a) D’après les réponses aux questions 2.c et 2.d, on a vu que le système est observable par la position
angulaire et ne l’est pas par la vitesse angulaire. On va donc utiliser un capteur de position angulaire
(autrement dit se place dans le cas où C = [1 0]).
b) On reprend le modèle d’état avec la sortie y(t) = θ(t) :
   
0 1 0  
A= , B= K , C= 1 0
0 − τ1 τ

Les équations d’un observateur d’état sont:

x̂˙ = Ax̂ + Bu + G(θ − θ̂)


θ̂ = C x̂
     
x̂1 θ̂ g1
avec x̂ = = l’état de l’observateur et G = le gain d’observation. En
x̂2 ŵ g2
développant, on peut écrire :

x̂˙ 1 = x̂2 + g1 (θ − x̂1 )


x̂˙ 2 = − x̂τ2 + K
τ u + g2 (θ − x̂1 )

c) On peut vérifier que les équations précédentes permettent d’aboutir au schéma fonctionnel (avec les
fonctions de transfert) de l’observateur donné sur la figure ??. Tout d’abord, nous avons :

x̂2 K
px̂2 = − + u + g2 (θ − x̂1 )
τ τ
C’est-à-dire :
K g2 τ
x̂2 = (u − (x̂1 − θ))
1 + τp K
De même :
px̂1 = x̂2 + g1 (θ − x̂1 )
permet d’écrire :
1
x̂1 = (x̂2 − g1 (x̂1 − θ))
p
Ce qui correspond au schéma fonctionnel suivant :

16
Observateur

u K
x̂2 1 x̂1
+ 1+τ p p
− + −

τ g2 g1
K

+

θ

d) Désignons par
 = x − x̂
l’écart entre l’état du système de départ et l’état de observateur. La dynamique de cet écart est
donnée par :
˙ = ẋ − x̂˙ = (A − GC)
Pour que l’écart  s’atténue en un temps de l’ordre de 1/100 de seconde et un dépassement de l’ordre
5%, il faudra identifier les valeurs propres de la matrice A − GC avec les racines d’un polynôme
p2 + 2ξwn p + wn2
avec ξ et wn à déterminer. Pour un système du second ordre, un dépassement de l’ordre de 5%
1
correspond à ξ ≈ 0.7 et wn tr ≈ 3. En fixant tr ≈ 100 , on obtient wn = 300 rd/s. Le polynôme
caractéristique de A − GC est
     
0 1 g1   λ + g1 −1
det(λI − (A − GC)) = det(λI − ( − 1 0 )) = det( )
0 − τ1 g2 g2 λ + τ1
1 g1
det(λI − (A − GC)) = λ2 + (g1 + )λ + g2 +
τ τ
L’identification avec le polynôme désiré donne :
g1 = 410, g2 = 85900
5. Schéma fonctionnel de l’ensemble retour d’état avec observateur :

Moteur
θref u K x2 = w 1 x1 = θ
K1 1+τ p
+ + p
− −

K2

u K
x̂2 1 x̂1
+ 1+τ p p
− + −

τ g2 Observateur
K
g1

+

θ

17
5 Tutorat N◦ 5
5.1 Précision et rejet asymptotique de perturbations
Pour les systèmes suivants, calculer les valeurs en régime permanent des variables aux différents points du
schéma. On supposera que les systèmes 5, 6 et 7 sont stables. Pour les autres, il faudra vérifier cette propriété.

1 + e 5 s
1+0.2p
-

Système 1

1 + e 4 s
p(p+2)
-

Système 2

1 + e 5 s
p2 (p+2)
-

Système 3

1 + e 4 s
p(p+2)
-

p+1
p+2

Système 4

18
P
1 + e a b
- c s
1
G1 (p) + G2 (p)
p
-

Système 5

P
-
1 + e + 1 s
G2 (p) p G1 (p)
a b c
-

Système 6

P
+ − S
E + e 3(1+T p) 10 + k 0,75
1+T3 p a 1+Te p c p p
− − b d

f 100
1+12p

Système 7 avec E = 1500 et P = 150

5.2 Diagramme de Bode


Pour les fonctions de transfert suivantes, tracer le diagramme de Bode (gain et phase). On se contentera du
diagramme asymptotique pour les gains. On essaiera de donner une allure du diagramme de phase. Evaluer la
pulsation wc0 en utilisant l’approximation du diagramme asymptotique. Evaluer la marge de phase. Discuter
la stabilité en boucle fermée.
5
G1 (p) =
1 + 0.5p
16
G2 (p) =
p(4 + p)

19
0.25(4 + p)
G3 (p) =
(0.5 + p)(0.125 + p)
1
G4 (p) =
p2 (1 + 0.1p)

0.1(1 + 2p)2
G5 (p) =
p2 (1 + 0.1p + 0.01p2 )(1 + 0.02p)
10
G6 (p) =
1−p
Solutions :

4.1. Précision et rejet asymptotique de perturbations :

Pour trouver le régime d’équilibre :

• On vérifie qu’il existe un équilibre i.e. le système est stable.

• Si la fonction de transfert contient un élément intégrateur, son entrée est égale à 0

• Les autres fonctions de transfert sont remplacées par leur gain statique

• On résout les équations algébriques du schéma


1
Système 1 : Stable. On a 1 − 5e = e, e = 6 et s = 56 .

Système 2 : Stable. On commence par mettre 0 à l’entrée de l’intégrateur. On a 1 − s = 0 et s = 1.

Système 3 : Instable (Il existe des poles en BF à partie réelle positive).

Système 4 : Stable (On peut par exemple vérifier que les pôles en BF sont tous à partie réelle négative). On
commence par mettre 0 à l’entrée de l’intégrateur. On a 0 = 1 − 0.5s et s = 2.

Système 5 : On suppose que le système est stable en boucle fermée. On commence par mettre 0 à l’entrée de
l’intégrateur. On a 1 − s = 0, s = 1 ∀ la perturbation. Par conséquent, c = 1/G2 (0), b = P + 1/G2 (0) et
a = (P + 1/G2 (0))/G1 (0).

Système 6 : On suppose que le système est stable en boucle fermée. On commence par mettre 0 à l’entrée de
l’intégrateur. On en dénduit que a = P . Les gains statiques des fonctions de transferts permettent de déduire
les autres valeurs du schéma block : e = P/G2 (0) et s = 1 − P/G2 (0).

Système 7 : On suppose que le système est stable en boucle fermée. On commence par mettre 0 à l’entrée des
intégrateurs. Les gains statiques des fonctions de transferts permettent de déduire les autres valeurs du schéma
block : c = 150, b = 15, a = 15, e = 5, f = 1495, s = 14.95.

4.1. Diagramme de Bode :

• G1 : stable et on a wc0 ≈ 10rd/s et φ ≈ − arctan(0.5wc0 ) = −77 deg.

• G2 : stable et on a wc0 ≈ 4 rd/s et φ ≈ −π/2 − arctan(wc0 /4) = −135 deg.

20
• G3 : stable et on a wc0 ≈ 1 rd/s et φ ≈ arctan(wc0 /4) − arctan(2wc0 ) − arctan(8wc0 ) = −132 deg.

• G4 : instable et on a wc0 ≈ 1 rd/s et φ ≈ −π − arctan(0.1wc0 ) = −185 deg.



• G5 : stable et on a wc0 ≈ 0.1 = 0.32 rd/s et φ ≈ −π + 2 arctan(2wc0 ) = −114 deg.

• G6 : instable et on a wc0 ≈ 10 rd/s et φ ≈ arctan(wc0 ) = 84 deg.

1
10
Module de G

pente −1
0
10

−1
10
−1 0 1 2
10 10 10 10
w

−10

−20

−30

−40
Phase

−50

−60

−70

−80

−90
−1 0 1 2
10 10 10 10
w

Figure 5: Bode G1 Figure 6: Nyquist G1

21
2
10
pente −1
0
Module de G

10

pente −2
−2
10

−4
10
−1 0 1 2
10 10 10 10
w

−80

−100

−120
Phase

−140

−160

−180
−1 0 1 2
10 10 10 10
w

Figure 7: Bode G2 Figure 8: Nyquist G2

6 Tutorat N◦ 6
On reprend ici l’exemple traité dans le tutorat numéro 4 (exercice 7) avec une approche type ”espace d’état”.
On considère un moteur électrique régulé en vitesse. La fonction de transfert en boucle fermée de la régulation
de vitesse est :
K
w= u, K = 2, τ = 100ms
1 + τp
On veut réaliser une régulation de position. On souhaite calculer un correcteur en utilisant le diagramme de
Bode. L’objectif est d’avoir un comportement en boucle fermée caractérisé par

ξbf = 0.7 et wnbf = 100rd/s

a) Donner le schéma d’une régulation proportionnelle et calculer la valeur du gain Kc qui permet de satisfaire
la contrainte de rapidité. Ce gain permet-il de répondre au cahier des charges ?

b) Rappeler la structure ”retour d’état” utilisée dans le tutorat numéro 4. En utilisant le diagramme de
Bode, calculer les gains permettant de répondre au cahier des charges. Comparer les résultats obtenus
avec les deux méthodes.

c) Peut on calculer un correcteur de type P.I. qui permet de satisfaire le cahier des charges ? Quel autre
type de correcteur peut on envisager.

Solution

a) Correcteur proportionnel : le schéma est donné sur la figure 18. La FTBO est donnée par:

KKc
p(1 + τ p)

22
2
10

1
pente −1
10

10
0 pente −2
Module de G

−1
10

−2
pente −1
10

−3
10
−3 −2 −1 0 1 2
10 10 10 10 10 10
w

−20

−40

−60

−80
Phase

−100

−120

−140

−160

−180
−3 −2 −1 0 1 2
10 10 10 10 10 10
w

Figure 9: Bode G3

On esquisse le diagramme de Bode et on constate que compte tenu du fait que τ1 = 10rd/s et de
l’approximation wnbf ≈ wc0 = 100rd/s, wc0 sera placé sur la droite de pente -2. On en déduit le gain qui
permet de satisfaire la contrainte de rapidité :
2
τ wc0
Kc = = 500
K
Pour cette valeur du gain, la marge de phase est
∆φ = 180 + arg(G(wc0 )) = 5.7◦
Comme on peut le constater sur le diagramme de Bode de la figure 19, ceci est nettement insuffisant. En
effet, pour respecter le cahier des charges, il faut une marge de phase de 70◦ (∆φ ≈ 100ξbf ).
b) La structure retour d’état est rappelée sur la figure 20. Dans ce contexte, on l’appelle également régulation
par retour tachymétrique. Le correcteur est composé des deux gains K1 et K2 . Si l’on veut calculer ces
gains en utilisant le diagramme de Bode, on écrit la FTBO :
Kr
p(1 + τr p)
avec
K1 K τ
Kr = , τr =
1 + KK2 1 + KK2
On esquisse le diagramme de Bode et on constate que pour respecter le cahier des charges, il faut
nécessairement placer wc0 sur la droite de pente -1 (le cahier des charges exige une marge de phase de 70
◦ impossible à obtenir si on place w
c0 ailleurs). Nous avons ainsi Kr = wc0 = 100rd/s. Cette égalité fait
intervenir les deux gains K1 et K2 . La marge de phase qui s’écrit
∆φ = 180 − 90 − atan(τr wc0 ) = 70◦
fait intervenir K2 uniquement et permet d’obtenir la valeur K2 = 13. En reportant cette valeur dans
l’égalité précédente, on en déduit K1 = 1374. On peut vérifier sur le diagramme de Bode de la figure 21
que l’on a bien wc0 = 100rd/s et ∆φ = 70◦ .

23
5
10

pente −2
0
Module de G

10

pente −3
−5
10

−10
10
−1 0 1 2 3
10 10 10 10 10
w

−180

−200

−220
Phase

−240

−260

−280
−1 0 1 2 3
10 10 10 10 10
w

Figure 10: Bode G4 Figure 11: Nyquist G4

L’approche ”espace d’état” avait permis d’obtenir les valeurs K1 = 500 et K2 = 6.5. Les figures 22 et 23
permettent de comparer les deux résultats. On constate l’effet des approximations utilisées dans le calcul
du correcteur dans Bode. La fonction de transfert en boucle fermée obtenue avec le correcteur calculé
avec Bode est
100
, wnbf = 165rd/s et ξbf = 0.8
0.00364p2 + s + 100
Celle obtenue avec le correcteur calculé par une approche espace d’état est
71.43
, wnbf = 100rd/s et ξbf = 0.7
0.007143p2 + p + 71.43
Le placement de pôle utilisé dans l’approche espace d’état a permis de fixer les gains K1 et K2 aux valeurs
qui donnent exactement wnbf et ξbf imposés par le cahier des charges. Les approximations utilisées dans
la méthode du diagramme de Bode ont permis d’obtenir des ordres de grandeurs pour K1 et K2 . Le but
de cette comparaison n’est pas de démontrer la supériorité d’une approche par rapport à une autre. On
souhaite insister sur l’aspect ”ordre de grandeurs” des valeurs obtenues en calculant les correcteurs même
si cet ordre de grandeur implique d’avoir des valeurs allant du simple au double.
c) Si on souhaite mettre en place un correcteur P.I. la FTBO est
KKi (1 + Ti p)
p2 (1 + τ p)
où Ki et Ti sont les inconnues à déterminer. On peut esquisser le diagramme de Bode pour constater que
– fixer Ti = τ n’est pas une bonne idée !
– choisir Ti < τ n’est pas une bonne idée non plus !
– choisir Ti > τ ne permet pas de respecter le cahier des charges !
On a constaté au début de cet exercice qu’un correcteur proportionnel permet de respecter la contrainte
de rapidité. Pour respecter la contrainte d’amortissement, on peut envisager un correcteur de type avance
de phase afin de fixer la marge de phase aux alentours de 70◦ . Ce type de synthèse est prévu dans le
dernier TP d’Automatique.

24
Figure 12: Bode G5 Figure 13: Nyquist G5

Figure 14: Bode G6 Figure 15: Nyquist G6

25
Figure 16: Bode G7 Figure 17: Nyquist G7

Moteur
θref u K w 1 θ
Kc 1+τ p p
+ −

Figure 18: Régulation proportionnelle

4
10

2
10
Module

0
10

−2
10
−1 0 1 2 3
10 10 10 10 10
w (rd/s)

−80

−100

−120
Phase

−140

−160

−180
−1 0 1 2 3
10 10 10 10 10
w (rd/s)

Figure 19: Diagramme de Bode en boucle ouverte avec Kc = 500

26
Moteur
θref u K w 1 θ
K1 1+τ p p
+ − + −

K2

Figure 20: Structure retour d’état

4
10

2
10
Module

0
10

−2
10
−1 0 1 2 3
10 10 10 10 10
w (rd/s)

−80

−100

−120
Phase

−140

−160

−180
−1 0 1 2 3
10 10 10 10 10
w (rd/s)

Figure 21: Diagramme de Bode en BO permettant de calculer K1 et K2

2
10

0
10
Module

−2
10

−4
10
0 1 2 3
10 10 10 10
w (rd/s)

−80

−100

−120
Phase

−140

−160

−180
0 1 2 3
10 10 10 10
w (rd/s)

Figure 22: Comparaison avec la solution ”retour d’état”

27
1.4

1.2

0.8

0.6

0.4

0.2

0
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1

Figure 23: Comparaison avec la solution ”retour d’état”

28
Exercice 1 de synthèse : Bras de robot
On considère un bras de robot donné sur la figure.
Ce bras pivote autour d’un axe horizontal, son poids est équilibré par un contre poids et un moteur électrique
permet le déplacement du bras dans un plan vertical.

G
mg Masse portée M
d
θ Horizontale
Axe de rotation
Contre poids
Masse Mc

Pour les besoins d’une étude concernant l’asservissement du bras en position, on est amené à faire l’étude
de la stabilité de ce système non linéaire pour différents points d’équilibres.
La modélisation (Bond graph, PFD, ...) de ce système conduit aux équations suivantes:

θ̈ + aθ̇ + b cos(θ) = u
avec θ la position angulaire, u un terme proportionnel au couple moteur γm et a, b réels strictement positifs.

1. En considérant le vecteur x = (x1 , x2 ) avec x1 = θ et x2 = θ̇, écrire le système sous la forme d’un système
différentiel d’ordre un.

2. Pour une position θ0 donnée, déterminer la commande u0 permettant de maintenir le système en ce point.

3. Donner l’expression des matrices A et B du modèle linéarisé autour des équilibres x0 = (θ0 , 0) et u0 :

δ̇x = Aδx + Bδu

où δx = x − x0 et δu = u − u0 .

4. Faites l’étude de la stabilité de ces points d’équilibres, pour 0 ≤ θ0 ≤ 2π.

5. On s’intéresse à l’équilibre x0 = (π/4, 0), u0 = −b sin π/4. En considérant le modèle linéarisé en ce point
(x0 , u0 ), vérifier que le système est commandable.

6. On souhaite mettre en oeuvre une commande par retour d’état permettant d’atteindre les spécifications
suivantes : tr = 1s et D% = 0. √ Calculer par placement de pôles les valeurs du gain K = [k1 k2 ]
correspondant pour a = 1 et b = 2.

7. On suppose que les paramètres a et b sont fixés (a = 1 et b = 2). En considérant la famille des points
d’équilibre x0 et les modèles linéarisés associés, ce retour d’état δu = −K(x − x0 ) permet il de stabiliser
l’ensemble des modèles linéarisés ? Autrement dit, la famille de matrice A(x0 ) − BK paramétrée par
x0 et correspondant à la dynamique en boucle fermée sont elles toutes Hurwitz (valeurs propres à partie
réelle strictement négative )? On pourra discuter en considérant det(A(x0 ) − BK) et tr(A(x0 ) − BK).

8. Si on ne mesure que la sortie δy = [1 0]δx, proposer une alternative permettant de contourner l’absence
de capteur de vitesse angulaire.

29
9. Calculer la fonction de transfert du correcteur entre δy et δu

10. Donner le schéma fonctionnel du système ainsi régulé.

11. Si on applique la commande u = u0 + δu sur le système non linéaire, que peut on dire sur le caractère
local ou global de la stabilité en x0 .

12. Pour palier aux incertitudes paramétriques et aux perturbations contantes (poids de la charge), on
souhaite ajouter une action intégrale afin d’éliminer une erreur statique sur la position du bras. On
augmente l’état de système en ajoutant la variable x3 intégrale de l’erreur d’angle, soit

ẋ3 = (x1 − θ0 ).

Proposer un schéma de régulation pour ce système augmenté et calculer le gain K = [k1 k2 k3 ] pour que
le polynôme caractéristique du système linéarisé en boucle fermée soit

PA−BK (p) = (p + 3)3

30
Solution Exercice 1 de synthèse :

1. Le modèle d’état non linéaire s’écrit :


 
x2
ẋ =
−b cos(x1 ) − ax2 + u

2. Les équilibres (en nombre infini) correspondent à x = (θ0 , 0) et u = b cos(θ0 ), pour 0 ≤ θ0 ≤ 2π.
 
0 1
3. Pour θ0 fixé, le modèle linéarisé au point d’équilibre est déterminé par les matrices A =
b sin(θ0 ) −a
 
0
et B =
1
4. Les valeurs propres λ1 et λ2 se déduisent de la trace de A et de son déterminant suivant les relations:

tr(A) = λ1 + λ2
det(A) = λ1 λ2

Comme det(A) = −b sin(θ0 ) et tr(A) = −a, on en déduit que les équilibres sont instables pour 0 < θ0 < π
(valeurs propres de signe opposé) et stable pour π ≤ θ0 ≤ 2π, (valeurs propres négatives).
" #
0 1
 
√ 0
5. Pour x0 = (π/4, 0)et u0 = b cos π/4, les matrices A et B s’écrivent: A = et B = et la
b 22 −a 1
matrice de commandabilité, égale à:
 
0 1
C(A, B) = [B AB] =
1 −a

est clairement de rang 2, pour toute valeur de a, donc le système est commandable.
p
6. Le cahier des charges correspond à une paire de pôles p1,2 = −ξωn ± iωn 1 − ξ 2 avec ξ = 1 (D%=0) et
ωn = 3 (ωn tr = 3) en boucle fermée. Comme le système est commandable, on obtiendra les valeurs propres
en identifiant le polynôme caractéristique de la matrice d’état en boucle fermée i.e. det(pI − (A − BK))
avec le polynôme désiré : P (p) = (p − p1 )(p − p2 ).

Pour a = 1, b = 2et K = [k1 k2 ] (comme BK doit être de même dimension que A, K est de dimension
1 × 2), on obtient les calculs suivants:
 
p −1
pId − (A − BK) =
−1 + k1 p + 1 + k2

et par suite :

det(pI − (A − BK)) = p(p + 1 + k2 ) − 1 + k1 = p2 + (1 + k2 )p − 1 + k1

Par identification avec P (p) = (p + 3)2 , on trouve:

k1 = 10 (1)
k2 = 5 (2)

31
7. Pour un point d’équilibre x0 = (θ0 , 0), la matrice A(x0 ) s’écrit :
 
0 1
A(x0 ) = √
2 sin(θ0 ) −1

et la matrice d’état du système bouclé devient :


 
0 1
A(x0 ) − BK = √
2 sin(θ0 ) − k1 −1 − k2
Comme

tr(A(x0 ) − BK) = −1 − k2 = −6 (3)


√ √
det(A(x0 ) − BK) = − 2 sin(θ0 ) + k1 = 10 − 2 sin(θ0 ) (4)

On en déduit que les valeurs propres sont de même signe (car det = λ1 λ2 ≥ 10 − 2 > 0) et négatives
(car tr = λ1 + λ2 = −6) ce qui permet de garantir la stabilité du système sur tous les points d’équilibres.

8. Si on ne mesure que la sortie δy = [1 0]δx, il faut mettre en place un observateur d’équation :

δ x̂˙ = Aδ x̂ + Bu + L(δy − δ ŷ)

pour lequel l’erreur d’observation e = δx − δ x̂ suit l’équation :

ė = (A − LC)e.

Le calcul du gain L est obtenu en choisissant des pôles 5 fois plus rapide que le système en BF, soit
pobs = 5psys . On veut donc que :

tr(A − LC) = 5 ∗ tr(A − BK) = −30 (5)


det(A − LC) = 25det(A − BK) = 225 (6)

Comme A − LC s’écrit (le gain L est une matrice 2 × 1) :


 
−L1 1
A − LC =
−L2 + 1 −1

par identification, on obtient:

tr(A − LC) = 5 ∗ tr(A − BK) = −30 = −L1 − 1 (7)


det(A − LC) = 25det(A − BK) = 225 = L1 + L2 − 1 (8)

soit encore:

L1 = 29 (9)
L2 = 225 − L1 + 1 = 197 (10)

L’alternative consiste à présent à utiliser dans le retour d’état u = −δx, l’estimation δ x̂ à la place de δx.

9. Le système bouclé sur l’observateur a pour équation :

δ ẋ = Aδx − BKδ x̂ (11)


δ x̂˙ = Aδ x̂ − BKδ x̂ + L(δy − Cδ x̂) (12)

32
soit encore :
      
δ ẋ A −BK δx 0
= + δy (13)
δ x̂˙ 0 A − BK − LC δ x̂ L

Le transfert entre δy et δu = −Kδ x̂ s’obtient en calculant le transfert entre δy et δ x̂ grâce à la deuxième


ligne de (13) :

δ x̂
= H(p) = (pI − (A − BK − LC))−1 L
δy
d’où l’on déduit
δu
= −KH(p)
δy
 
−29 1
A.N: A − BK − LC = d’où l’on tire :
−206 −6

p + 1.886
KH = 1275
p2 + 35p + 380

Pour les systèmes mono entrée -mono sortie, on voit donc que la synthèse d’un retour d’état avec obser-
vateur revient à faire la synthèse d’un correcteur sous la forme d’un transfert.

u0 u y
Bras de robot
+ Système non linèaire

KH

10. Schéma fonctionnel de l’ensemble système linéarisé avec retour d’état et observateur” :

33
Système linéarisé
Observateur
1
s
ref

1
s

Retour d'état

Figure 24: Schéma fonctionnel : Retour d’état et observateur

11. La stabilité globale est obtenue sur le système linéarisé mais on ne peut conclure qu’à une stabilité locale
(i.e. dans un voisinage de x0 ) du bras du robot autour de ses équilibres. Pour conclure globalement, il
faut utiliser des concepts hors programme.

12. Si on considère une action intégrale en ajoutant la variable :

ẋ3 = (x1 − θ0 ).

en posant x = (x1 , x2 , x3 ), le système linéaire devient:

ẋ = Aaug x + Baug u + Bθ0 θ0


     
0 1 0 0 0
avec Aaug = 1 −1 0 , Baug = 1 et Bθ0 = 0 
    
1 0 0 0 −1
On prend alors en compte cette action intégrale dans le retour d’état u = −[k1 k2 k3 ]x. Le calcul du gain
est obtenu comme précédemment par un placement de pôles, c’est à dire en calculant le déterminant de

34
 
p −1 0
pId − (Aaug − Baug K) = −1 + k1 p + 1 + k2 k3 
−1 0 p
et en l’identifiant avec (p + 3)3 .
Comme
   
−1 0 p −1
det(pId − (Aaug − Baug K)) = −det + p det (14)
p + 1 + k2 k3 −1 + k1 p + 1 + k2
= p3 + (k2 + 1)p2 + (k1 − 1)p + k3 (15)

il vient par identification que :

k1 = 28 (16)
k2 = 8 (17)
k3 = 27 (18)

Remarque : dans ce calcul on ne prend pas en compte Bθ0 θ0 qui est un terme constant et
qui peut être vu comme une entrée extérieure. En régime permanent, la stabilité du retour
d’état entrainera que l’intégrant (x1 − θ0 ) = 0 ce qui garantira une erreur statique nulle.

13. Schéma fonctionnel avec action intégrale

35
Action intégrale

1
s

Système linéarisé
Observateur
ref_angle u
1 y ŷ
s
ref

1
s

Retour d'état

Figure 25: Schéma fonctionnel : Retour d’état avec action intégrale + Observateur

36
Action intégrale

1
s

u
ẋ = f (x, u) y Observateur
ref_angle u y = Cx y ŷ

ref Bras de robot

1
s

Retour d'état

Figure 26: Schéma fonctionnel de la régulation du bras de robot

37
Exercice 2 de synthèse :

Partie 2 :
La suspension active est un type de suspension automobile où le mouvement vertical des roues par rapport

au châssis est activement contrôlé par un système embarqué. La garde au sol y (distance entre le chassis du
véhicule et le sol) est donc controlée activement par des actionneurs au moyen d’une commande u. Un modèle
dynamique de cette suspension peut être défini par la fonction de transfert suivante:
y K
= G(p) = p2
u ξ
1 + 2 ωn p + 2
ωn

avec K = 2, ξ = 0.9 et ωn = 0.3.


On souhaite établir une loi de régulation pour la garde au sol y.
Le bureau d’étude a fixé le cahier des charges suivant:
Le système en boucle fermée doit satisfaire aux performances dynamiques suivantes :
• temps de réponse tr ≤ 200ms

• dépassement < 5%

1. On envisage dans un premier temps un correcteur proportionnel C(p) = kc : Calculer la fonction de


transfert en boucle fermée et par identification déterminer ωnbf et ξbf .

2. En déduire la valeur du gain kc pour que tr = 200ms.

3. Quel est alors la valeur du coefficient ξbf ? Ce simple correcteur permet il de remplir le cahier des charges
(Justifier votre réponse) ?

4. Puisqu’un simple effet proportionnel ne permet pas de satisfaire au cahier des charges, on envisage à
présent un correcteur à avance de phase
1 + aT p
C(p) = k
1 + Tp
avec a > 1.
1 1
En plus de l’effet proportionnel, ce correcteur permet d’augmenter la phase pour aT ≤ω≤ T avec un
maximum égal à :
a−1 1
φmax = arcsin( ) obtenu pour ω = √ .
a+1 aT
Pour obtenir un temps de réponse de 200ms, quelle doit être la valeur de la fréquence de coupure ωco ?

38
1+aT p
Figure 27: Diagramme de Bode de H(p) = 1+T p .

5. Quelle est la marge de phase requise par le cahier des charges?

6. Calculer a et T pour que ce correcteur ajoute φmax = 70◦ à la fréquence de coupure ωco souhaitée.

7. En déduire la valeur de k permettant de satisfaire |F T BO(jωco )| = 1.

8. Tracer le diagramme de Bode de la boucle ouverte ainsi obtenue.

39
40
Solution Exercice 2 de synthèse :

1. Pour un correcteur proportionnel C(p) = kc , la fonction de transfert en boucle fermée est déterminée par:
Kk
c
kc G Kkc +1
Gbf (p) = = p2
1 + kc G ξ
1 + 2 ωn (Kk p+ 2 (Kk +1)
c +1) ωn c

avec K = 2, ξ = 0.9 et ωn = 0.3. La résultat obtenu est un système d’ordre 2 caractérisé par:
p
ωnbf = ωn Kkc + 1
et
ξ
ξbf = √
Kkc + 1

2. En déduire la valeur du gain kc pour que tr = 200ms En utilisant l’approximation (BO → BF ), ωnbf tr ≈
3, on trouve
3 2 3
Kkc = ( ) −1=( )2 − 1
tr ωn 0.2 0.3
soit kc = 1249.5

3. On en déduit que
ξ 0.9
ξbf = √ = = 0.018
Kkc + 1 50
ce qui conduit à un dépassement supérieur à 50% (cf cours). Comme le cahier des charges stipule un
dépassement inférieur à 5% soit un ξbf ≥ 0.7, on voit qu’un simple effet proportionnel ne permet pas de
répondre à ces exigences.

4. Etude du correcteur à avance de phase:


1 + aT p
C(p) = k
1 + Tp
avec a > 1. Pour obtenir le temps de réponse souhaité, on utilise l’approximation BO → BF ,

ωnbf ≈ ωco .

Pour tr = 200ms, on parvient à ωco = ωnbf = 3/tr = 3/0.2 = 15rad/s.

5. Quelle est la marge de phase requise par le cahier des charges? Le cahier des charges stipule un
dépassement inférieur à 5% soit un ξbf ≥ 0.7. D’après la formule (BO → BF )

∆φ ◦
ξbf ≈ ,
100
la marge de phase doit donc être supérieure à70◦ .

6. Il faut calculer a et T pour que ce correcteur ajoute à ωco , au moins 70◦ . On cherche donc à résoudre le
système (cf énoncé):
a−1
= sin(φmax ) = sin(70◦ )
a+1
1
√ = ωco = 15
aT

41
et on parvient à:

1 + sin(70◦ )
a= = 32.1634
1 − sin(70◦ )
1
T =√ = 0.0118
aωco
7. La fonction de transfert en BO est définie par :
1 + aT p K
F T BO(p) = C(p)G(p) = k p2
1 + Tp 1 + 2 p +
ξ
2
ωn ωn

Le module à ωco est déterminé par (en utilisant les asymptotes):


aT ωco K
|F T BO(jωco )| = k 2 =1
1 ωco 2
ωn

d’où l’on tire la valeur de k:

ωco
k= = 220
aT Kωn2
8. Tracé du diagramme de Bode

42
On observera bien l’effet de l’avance de phase dans la zone autour de la pulsation de coupure ωco .

9. Tracé du diagramme de Bode

10. Réponse temporelle à un échelon.

A titre de validation, voici la réponse temporelle à un échelon en entrée. Le temps de réponse est
un peu inférieur à 200ms et le dépassement est de l’ordre de 10%. On notera donc que les formules
d’approximation utilisées ont permis de s’approcher très correctement des spécifications du cahier des
charges. Un ajustement des paramètres du correcteur doit donc permettre de le satisfaire. Par exemple,
si on choisit une marge de phase un peu supérieure à 80◦ , on obtient la figure suivante et on valide le
cahier.

43
44

Vous aimerez peut-être aussi