Vous êtes sur la page 1sur 142

DE LAIR

ECOLE
DOFFICIERS DE LARMEE

DEPARTEMENT
DES VEHICULES
AEROSPATIAUX

RECUEIL DEXERCICES
DAUTOMATIQUE

Monsieur BATEMAN
Commandant HEIM

Table des mati`eres

Table des mati`


eres

Introduction

EXERCICES DAPPLICATION

1 Analyse dun syst`


eme du premier ordre

2 Analyse dun syst`


eme du second ordre

3 Marges de stabilit
e

4 Pr
ecision

11

5 Pr
ecision Vs. Stabilit
e

13

6 Lieu dEvans

17

7 Correction proportionnelle

19

8 Correction proportionnelle d
eriv
ee

21

9 Correction proportionnelle int


egrale

23

10 Repr
esentation d
etat dun syst`
eme

25

11 Commandabilit
e et Observabilit
e dun syst`
eme

27

12 Commande modale

29

13 Observateurs d
eterministes

31
i

Table des mati`


eres

II

BUREAUX DETUDES

35

1 Mod
elisation dune cuve

37

Etude
dun quadrirotor

41

3 R
egulateur de distance dune voiture

47

4 Etude
dune automanette

51

III

ASSISTES
PAR ORDINATEUR
TRAVAUX DIRIGES

55

1 Initiation `
a MATLAB

57

2 Syst`
emes dordre un et deux

65

3 Etude dun quadrirotor

69

4 Dynamique lat
erale dun Boeing 747

75

5 Etude
dune automanette

81

6 Estimation de position dun satellite par filtrage de Kalman

85

7 Commande dun quadrirotor

89

8 Etude
dun moteur brushless

95

9 Tenue daltitude dun quadrirotor

101

10 Commande par retour d


etat de la dynamique lat
erale dun airliner

105

11 Observateur d
eterministe : application `
a lestimation de cap

111

12 Filtre de Kalman : Application `


a lestimation de trajectoires

117

IV

123

ARCHIVES

1 Asservissement dun avion en roulis

125

2 Contr
ole de la trajectoire dun avion

131

3 Guidage dun missile

135

ii

Introduction
Ce recueil dexercices dautomatique illustrent les cours de methodes frequentielles.Il est
articule en quatre parties qui comportent :
Une serie de petits exercices reprenant chacune des notions abordee en cours.
Des bureaux detudes qui traitent de probl`emes dautomatique appliques `a des syst`emes
aeronautiques et spatiaux et qui seront abordes lors des seances de travaux diriges.
Les sujets des bureaux detudes qui traitent de syst`eme aeronautique et spatiaux et qui
seront simules avec le logiciel MATLAB lors des seances de travaux diriges assistes par
ordinateur.

Premi`
ere partie

EXERCICES DAPPLICATION

EXERCICE

Analyse dun syst`eme du premier ordre

On etudie le comportement dune voiture roulant sur le plat en ligne droite. On commande
cette voiture par le pourcentage denfoncement de la pedale daccelerateur et on observe sa
vitesse.
Initialement, la pedale est enfoncee de 40% et on roule `a 100km/h.
A un instant que lon prendra comme origine des temps, on appuie sur la pedale de 15%.
Levolution de la vitesse est representee par la figure 1.1
Step Response

130

120

Amplitude

110

100

90

80

70
5

10

15

20

25

Time (sec)

Figure 1.1 Evolution de la vitesse `a un appui de 15% de laccelerateur

Exercice 1. Analyse dun syst`


eme du premier ordre
Quelles seront les grandeurs qui serviront dentree et de sortie au syst`eme modelisant ce probl`eme.
Question 1 :

Question 2 :

Quel est lordre de ce syst`eme ? Identifier ses param`etres.

Question 3 :

Tracer le diagramme de Bode

Calculer la frequence de coupure fc en Hz. On suppose que lon appuie et rel


ache
la pedale selon une loi sinusodale damplitude 15% et de periode T .
Decrire le comportement de la voiture pour T1 = 240s puis pour T2 = 2, 4s
Question 4 :

EXERCICE

Analyse dun syst`eme du second ordre

Step Response

2.5

Amplitude

1.5

0.5

0
0

10

12

Time (sec)

Figure 2.1 Reponse indicielle unitaire

Exploiter la figure representant la reponse indicielle unitaire dun syst`eme pour en


determiner les caracteristiques :
Ordre du syst`eme
Gain statique
Temps de reponse `
a 5%
Question 1 :

Exercice 2. Analyse dun syst`


eme du second ordre
Depassement en %
En deduire lamortissement reduit, la pulsation propre non amortie et ecrire la
fonction de transfert.
Question 2 :

Question 3 :

Calculer les p
oles du syst`eme et les placer dans le plan complexe.

Question 4 :

Calculer le facteur de surtension et la pulsation de resonance

Question 5 :

Tracer les diagrammes asymptotiques de Bode et de Black (on fera apparatre la

resonance)

EXERCICE

Marges de stabilite

Nichols Chart

10

0
5

OpenLoop Gain (dB)

10
15
20
25
30

40

50
180

165

150

135

90

45

OpenLoop Phase (deg)

Figure 3.1 Lieu de Black de H(j)

La figure 3.1 est le lieu de Black du syst`eme de fonction de transfert H(p) en boucle ouverte.
On ins`ere H(p) dans une boucle de regulation `a retour unitaire. Le correcteur est de type
proportionnel C(p) = K
9

Exercice 3. Marges de stabilit


e
E(p) +

H(p)

S(p)

Figure 3.2 Asservissement en boucle fermee

Question 1 :

Le syst`eme en boucle fermee est-il stable ?


Si oui, quelles sont les marges de gain et de phase ?
Question 2 :

Quel gain faut-il choisir pour obtenir une marge de phase M = 20 ?

Question 3 :

Quelle marge de phase M obtient-on si on choisit un gain de 30dB ?

10

EXERCICE

Precision

Le but de cet exercice est de pratiquer le calcul des erreurs en regime permanent.
On ne considerera que des entrees (consignes E ou perturbation B) en echelon damplitude
respectivement e0 et b0 .
Dans tout lexercice on notera E lerreur de suivi de la consigne `a perturbation nulle et B
lerreur de regulation en presence de perturbation.
1
Question 1 : Calculer E et B pour C(p) = K et H(p) = 2
p +p+4
Question 2 :

Memes questions pour C(p) = K et H(p) =

Question 3 :

Memes questions pour C(p) =

Question 4 :

Comparez les deux derniers cas.

1
p(1 + 3p)

K
1
et H(p) =
p
1 + 3p

B(p)

E(p)

(p)

C(p)

Figure 4.1 Le syst`eme boucle

11

S(p)
H(p)

Exercice 4. Pr
ecision

12

EXERCICE

Precision Vs. Stabilite

On ins`ere un syst`eme de fonction de transfert H(p) =


vissement avec un correcteur de type proportionnel.

E(p) +

2p2

1
dans une boucle dasser+ 3p + 1

H(p)

Figure 5.1 Asservissement en boucle fermee

La figure 5.2 represente le lieu de Black de H(p)


13

S(p)

Exercice 5. Pr
ecision Vs. Stabilit
e
Nichols Chart

10

OpenLoop Gain (dB)

20

30

40

50

60

70
180

135

90

45

OpenLoop Phase (deg)

Figure 5.2 Lieu de Black

Calculez en fonction de K lerreur en regime permanent pour une consigne en


echelon unitaire.
Question 1 :

Calculez cette erreur pour K = 1 et relevez graphiquement les marges de stabilite dans ce
cas.
Question 2 :

Calculez le gain qui permette de reduire lerreur `


a 5%

Determinez les nouvelles marges de stabilite avec ce gain.


Pour K = 1, calculez le gain statique en boucle fermee `
a partir de lerreur calculee
` la question 1.
a
Question 3 :

Retrouvez ce resultat sur les abaques de Nichols et determinez si le syst`eme en boucle fermee
est resonant. Que peut-on alors dire du facteur damortissement reduit ? En deduire lallure de
la reponse `
a un echelon unitaire.

La figure 5.3 redonne le lieu de la boucle ouverte non corrigee (K = 1) ainsi que celui de
la boucle ouverte corrigee avec le gain determine `a la question 2. On a aussi fait apparatre les
abaques de Nichols.
14

Nichols Chart

40
0 dB
0.25 dB
0.5 dB
1 dB

20

1 dB

3 dB
6 dB

3 dB
6 dB

OpenLoop Gain (dB)

12 dB
20 dB

20

40 dB

40
K=1
K = 19
60

60 dB

80
180

80 dB
0

135

90

45

OpenLoop Phase (deg)

Figure 5.3 Lieux de Black et abaques de Nichols

Pour K = 19, calculez le gain statique en boucle fermee a


` partir de lerreur calculee
a la question 2.
`
Relevez sur les abaques de Nichols si le syst`eme est resonant en boucle fermee et determinez
le cas echeant son facteur de surtension. En deduire alors le facteur damortissement reduit et
le depassement relatif pour une entree en echelon. En deduire lallure de la reponse a
` un echelon
unitaire.
Question 4 :

15

Exercice 5. Pr
ecision Vs. Stabilit
e

16

EXERCICE

Lieu dEvans

E(p) +

H(p)

S(p)

Figure 6.1 Syst`eme en boucle fermee

Question 1 :

Tracez le lieu dEvans pour H(p) =

p+3
pour K > 0
p3 + 7p2 + 12p + 10

Exploitation du lieu dEvans :


Indiquez sans calcul la marge de gain du circuit en boucle fermee,
Quel est le comportement dominant du syst`eme en boucle fermee
Decrire qualitativement la reponse indicielle en boucle fermee quand K ?

Question 2 :

Question 3 :

Tracez le lieu dEvans pour H(p) =

p3

6p2

1
et K > 0
+ 13p + 20

Question 4 : Tracer la carte des p


oles et decrire qualitativement le comportement du syst`eme en
boucle fermee pour des valeurs petites, moyennes et elevees de K

17

Exercice 6. Lieu dEvans

18

EXERCICE

Correction proportionnelle

On cherche `
a commander par un correcteur `a simple gain C un syst`eme dont la fonction de
transfert en boucle ouverte est donnee sur le diagramme de Black (Figure 7.1). Le syst`eme est
`a retour unitaire.
Nichols Chart

20
0
20

OpenLoop Gain (dB)

40
60
80
100
120
140
160
270

225

180

135

90

45

OpenLoop Phase (deg)

Figure 7.1 Lieu de Black de H(j)

Question 1 :

Dessinez le schema du syst`eme corrige en boucle fermee.


19

Exercice 7. Correction proportionnelle


Quelle est la valeur du gain statique de H(p) ? Quelle est la classe du syst`eme ?
En deduire la valeur de la sortie en regime permanent pour une entree de consigne en echelon
unitaire e0 = 1 si on prend un gain K1 = 1.

Question 2 :

Question 3 :

Que valent les marges de gain et de phase ?

Question 4 :

Calculez le gain K2 quil faut choisir pour assurer une marge de phase de 45 .

Tracez sur la meme figure lallure des reponses indicielles unitaires en boucle fermee
pour les deux gains K1 et K2 .
Question 5 :

Quelle est la precision maximale que peut atteindre ce syst`eme avec un correcteur
proportionnel ?

Question 6 :

20

EXERCICE

Correction proportionnelle derivee

On cherche `
a commander un syst`eme dont la fonction de transfert est donnee sur le lieu de
Black (Figure 8.1). Ce syst`eme est insere dans une boucle dasservissement avec retour unitaire
et munie d un correcteur. Le correcteur sera note C(p).
Nichols Chart

40

0 dB
0.25 dB
0.5 dB
1 dB
3 dB
6 dB

20

1 dB
3 dB
6 dB

OpenLoop Gain (dB)

12 dB
20

20 dB

40

40 dB

60

60 dB

80

80 dB

100

100 dB

120
360

315

270

225

180

135

90

45

120 dB
0

OpenLoop Phase (deg)

Figure 8.1 Lieu de Black de H(j)

Determinez lerreur minimale en boucle fermee pour une entree en echelon si on


se limite a
` un correcteur de type proportionnel de type C(p) = K.

Question 1 :

21

Exercice 8. Correction proportionnelle d


eriv
ee
Lapplication requiert une precision en boucle fermee dau moins 1%. Calculez le
gain que devrait avoir un simple gain pour atteindre cet objectif. Pourquoi ne peut-on se contenter
dun simple correcteur proportionnel ?
Question 2 :

On garde le gain K trouve `


a la question 2 pour assurer le besoin en precision et on restabilise
en remplacant le correcteur simplement proportionnel-derive de la forme C(p) = K(1 + Td p).
GdB
9
0
10 30 45

43 132 180 228 247


(rad/s) 0, 04 0, 182 0, 13 0, 85 1, 57
Points du diagramme de Black de la boucle ouverte non corrigee
A laide du tableau donnant les coordonnees de quelques points du diagramme de
Black de la figure 8.1, proposez un reglage du param`etre Td
Question 3 :

22

EXERCICE

Correction proportionnelle integrale

On cherche `
a commander un syst`eme dont la fonction de transfert en boucle ouverte est
donnee sur le diagramme de Black (Figure 9.1) en linserant dans une boucle de regulation
avec un correcteur C(p). La commande reellement appliquee au syst`eme est celle donnee par le
correcteur `
a laquelle sajoute une perturbation B(p).
Nichols Chart

40
20

OpenLoop Gain (dB)

System: bo
Gain (dB): 0.699
20
Phase (deg): 180
Frequency (rad/sec): 36.2
40
60
80
100
120
140
160
270

225

180

135

90

45

OpenLoop Phase (deg)

Figure 9.1 Lieu de Black de H(j)

Question 1 :

Dessinez le schema fonctionnel du syst`eme asservi decrit dans lenonce.


23

Exercice 9. Correction proportionnelle int


egrale
Quel correcteur doit-on choisir si lon souhaite quen regime permanent et en
labsence de perturbation, le syst`eme reponde exactement `
a un echelon de consigne ?
Dans la situation decrite, quelle sera lerreur pour une consigne nulle et un echelon de perturbation ?


1
Question 3 : On propose comme correcteur C(p) = K 1 +
avec K = 0, 01 et Ti = 1, 4.
Ti p
Quelle sera approximativement la marge de gain apr`es correction ?

Question 2 :

Question 4 :

Tracez sur le diagramme de Black lallure de la boucle ouverte corrigee.

Question 5 :

Calculez lerreur de tranage en regime permanent pour une entree en rampe de

pente unite.
En conservant le param`
e`
a la question 3, calculez le gain K tel que le syst`eme
i donn
 etre T
1
corrige par C (p) = K 1 +
ait une erreur de tranage de 14 pour une entree en rampe
Ti p
de pente unite.
Quelle performance a-t-on degradee en ameliorant ainsi la precision ?
Tracez sur une meme figure lentree en rampe ainsi que les reponses du syst`eme
corrige par C(p) et C (p)
La consigne donnee en entree du syst`eme asservi est en forme de dents de scie de periode
400 s.
Deduire qualitativement de votre figure precedente lallure de la sortie pour le syst`eme corrige
par les deux correcteurs.
Question 6 :

24

EXERCICE

10

Representation detat dun syst`eme

Soit le syst`eme decrit par lequation differentielle :


d2 y
(t) + y = u
dt2
On pose y = x1 et

dy
= x2 et on adopte comme vecteur detat :
dt
X = [x1 , x2 ]T

u est la commande et U designe le vecteur de commande. Dautre part, seul letat x1 est
mesure et on appelle Y le vecteur de mesure.
Donnez une representation detat compl`ete du syst`eme , i.e. une equation detat
et une equation dobservation.

Question 1 :

Question 2 :

Calculer le polyn
ome caracteristique de la matrice detat, en deduire les p
oles du

syst`eme .
Question 3 :

Dapr`es la nature et la valeur des p


oles, decrivez le comportement dynamique de

ce syst`eme.
Question 4 :

Calculez la fonction de transfert H(p) =

Y (p)
du syst`eme .
U (p)

Changement de base
Question 5 :

Dans quelle base remarquable est naturellement ecrit le syst`eme ?

Rappeler les formules de changement de base et proposer une representation detat


de dans la base modale.
Question 6 :

25

Exercice 10. Repr


esentation d
etat dun syst`
eme

Int
egration de l
equation d
etat

T
A linstant initial t = 0, letat X(0) = 0 1 , la commande u(t) est nulle pour
tout t, autrement dit, le syst`eme fonctionne en regime libre. En utilisant la representation detat
sous forme diagonale, integrez lequation detat et montrez que le regime libre sexprime comme
une combinaison lineaire des modes.
Question 7 :

26

EXERCICE

11

Commandabilite et Observabilite dun syst`eme

Consid
erations sur l
equation d
etat
On cherche `
a exploiter la structure des matrices de commande B du mod`ele lateral dun
avion en vue devaluer les effets des commandes sur les etats. Soit lequation detat de lavion :

A Ar Ap A
Bl Bn
!


r A
0
r Brl Brn l
r Arr Arp
+

=
p Ap Apr App
0 p Bpl Bpn n
0
0
1
0
0
0

designe le derapage, p le roulis, r le lacet, la gte roulis, l la commande des ailerons et n


la commande de la gouverne de direction.

Quel coefficient de la matrice de commande rend compte de laction de la gouverne


de direction sur le lacet ?
Question 1 :

Question 2 :

Les ailerons permettent-ils dagir sur langle de gte ?

Commandabilit
e
Soit lequation detat du syst`eme du second ordre :
!
!
!
x1
0 2
x 1
+
=
x2
1 3
x 2

!
1
u
1

On se propose dans un premier temps detablir si ce syst`eme est commandable ou non de deux
mani`eres differentes.
On admet (vous pourrez le verifier pour vous exercer) que le syst`eme admet dans la base
diagonale lequation detat suivante :
!
!
!
!
0
1 0
z1
z1
+ u
=
z2
0 2
z2
2
27

Exercice 11. Commandabilit


e et Observabilit
e dun syst`
eme

La matrice de passage P telle que X = P Z secrit : P =

!
1.265 1
0.6325 1

Justifiez en vous appuyant sur la representation detat du syst`eme dans la base


diagonale que celui-ci nest pas commandable.

Question 3 :

Question 4 :

Verifiez ce resultat au moyen du crit`ere de commandabilite de Kalman ?

Observabilit
e
La sortie mesuree a pour expression y = x1 + x2
Question 5 :

Calculez la matrice dobservabilite et dites si ce syst`eme est observable.

Question 6 :

Calculez la fonction de transfert H(p) de ce syst`eme et conclure sur lobservabilite

de letat z2 .
Ce syst`eme non-commandable et non-observable presente-t-il pour autant des
risques lors de son utilisation ?

Question 7 :

28

EXERCICE

12

Commande modale

Soit le syst`eme precedemment etudie dans lexercice consacre `a la mise sous forme de
representation detat dun syst`eme et pour lequel on adopte comme vecteur detat X = [x1 , x2 ]T ,
u est la commande et U le vecteur de commande. Par ailleurs, tout letat est mesure et Y est le
vecteur de mesure.
Lequation detat :
!
!
!
!
0
x1
0 1
x 1
u
+
=
1
x2
1 0
x 2
Lequation dobservation :

y1
y2

!
!
1 0
x1
+
x2
0 1

!
0
u
0

On a vu que ce syst`eme avait un comportement astable i.e. pulsation propre non amortie n =
1rad/s et = 0. On desire donc apr`es correction par retour detat lui conferer le comportement
suivant :
facteur damortissement = 0.5,
pulsation propre non-amortie n = 2rad/s,
gain statique unitaire.
En prealable `
a la mise en uvre dune loi de commande, quelle propriete du syst`eme
doit etre imperativement etablie ?

Question 1 :

Question 2 : Quelles sont les performances dynamiques attendues pour ce syst`


eme du second
ordre i.e. temps de reponse T5% et amplitude relative du premier depassement D1% ?

Commande modale
Representer le schema du syst`eme muni de sa commande par retour detat et du
gain de precompensation. Quelle sont les dimensions des matrices de contre-reaction K et de
precompensation H. Precisez la structure de ces deux matrices.

Question 3 :

29

Exercice 12. Commande modale


Par 3 methodes distinctes, determiner les valeurs des coefficients de la matrice de
contre-reaction K.
Question 4 :

Quelle valeur donner au gain de precompensation H pour que le gain statique de


y1 (p)
la fonction de transfert du syst`eme corrige
soit egal `
a un ?
u(p)
Question 5 :

30

EXERCICE

13

Observateurs deterministes

Th
eorie des observateurs
La connaissance quon a du syst`eme etudie lest au moyen de la representation detat suivante :
X = AX + BU
Y

(13.1)

= CX

o`
u le vecteur detat du syst`eme X Rn , la commande U Rm et la mesure Y Rs , ici on
suppose quil y a moins de grandeurs mesurees que de variables detat et n > s.
Il faut bien avoir `
a lesprit que ces equations representent seulement un mod`ele du syst`eme
qui rend compte de mani`ere imparfaite dune realite souvent plus complexe.
Par ailleurs, certains etats sont inaccessibles `a la mesure, par consequent il nest pas possible
de disposer dinformations `
a leur sujet. Neanmoins, leur connaissance nen nest pas moins utile.
Cest linteret dun observateur, sous reserve que le syst`eme soit observable, de permettre de
generer une estimation de ces etats.
Lobservateur, `
a linstar du syst`eme (13.1) est un syst`eme dynamique qui, dune mani`ere
generale est decrit par les equations suivantes :
= F X
+ GU + LY
X
(13.2)

= X X
Rn et Rn est appelee lerreur.
o`
u le vecteur detat de lobservateur est X

Question 1 : En utilisant (13.1) et (13.2),


etablissez lexpression de la derivee temporelle de
et de .
lerreur en fonction de X

A quelles conditions sur les matrices G, B, et A, L, C, F lequation detat de


lerreur ne depend que de lerreur ?
Question 2 :

31

Exercice 13. Observateurs d


eterministes
Question 3 :

Donnez alors lequation detat de lobservateur et celle de lerreur.

Donnez lexpression de lerreur (t) alors qu`


a linstant initial, la connaissance que

lon a de letat initial est donnee par X(0) qui diff`ere de letat initial reel inconnu X(0).

Question 4 :

Quelles conditions doivent remplir les valeurs propres de la matrice detat pour que lerreur
converge vers 0 ?
Lerreur est-elle une grandeur physiquement accessible ?

Calcul dun observateur d


eterministe
Soit le syst`eme precedemment etudie dans les exercices consacres `a la mise sous forme de
representation detat et `
a la commande dun syst`eme decrit par une representation detat. Le
vecteur detat X = [x1 , x2 ]T , u est la commande et U le vecteur de commande. Par ailleurs, seul
letat x1 est mesure ; y est la sortie mesuree et Y designe le vecteur de mesure.
Lequation detat :
!
!
!
!
0
0 1
x1
x 1
u
+
=
1
x2
1 0
x 2
Lequation dobservation :
  
 x
1
y = 1 0
x2

En prealable `
a la mise en uvre dun observateur, quelle propriete du syst`eme doit
etre imperativement etablie ?
Question 5 :

Rappelez la structure dun observateur identite et donner dans le cas du probl`eme


traite les dimensions des differentes matrices.
Question 6 :

On desire que les p


oles de lobservateur {pobs , pobs } soient places en {5 5i, 5 + 5i}.
Commentez ce choix eu egard aux valeurs des p
oles du syst`eme corrige etudie dans lexercice
precedent et dont on rappelle quils valent :

pcom , pcom = {1 + i 3, 1 i 3}
Question 7 :

Calculez la matrice de gain de lobservateur telle que les p


oles de lobservateur
soient ceux desires.
Question 8 :

Un observateur est en fait un filtre lineaire qui peut etre caracterise par sa matrice de
fonctions de transfert. On se propose detablir cette matrice.
En reprenant les resultats etablis `
a la question 3, calculez les transformees de

Laplace des equations du syst`eme et de lobservateur. En deduire une expression qui lie X(p)
a
`
U (p) et Y (p).

Question 9 :

32

Question 10 :

Faites lapplication numerique.

33

Exercice 13. Observateurs d


eterministes

34

Deuxi`
eme partie

BUREAUX DETUDES

35

BE

Modelisation dune cuve

1.1

Etude
dune cuve

On se propose dans cet exercice detablir le mod`ele dune cuve representee sur la figure 1.1.
Une electrovanne permet de controler de debit Qe `a lentree, Qs designe le debit en sortie. La
surface de la cuve est notee S et H designe le niveau de liquide quon souhaite controler.
Qe

Qs
Figure 1.1 La cuve etudiee
Question 1 :

1.2

Quelles sont les entrees et sortie de ce syst`eme ?

Etude en r
egime statique

Le debit de sortie Qs est lie au niveau de liquide H par la relation suivante :

H
Qs =
R
o`
u R designe la resistance hydraulique.
37

(1.1)

BE 1. Mod
elisation dune cuve
Question 2 :

Quelle relation doit lier Qe `


a Qs pour que la sortie du syst`eme soit dans un etat

dequilibre ?
La cuve est initialement vide et on r`egle Qe de sorte que Qe > Qs , lorsque le niveau H a
atteint la hauteur desiree, on r`egle Qe pour maintenir H constant.
Question 3 :

Exprimez H en fonction de Qe .

Question 4 :

Representez H en fonction de Qe et notez sur cette figure M0 un point de repos

{Qe0 , H0 }.
Question 5 :

1.3

Quel est le gain statique en M0 ?

Etude dynamique

Question 6 : A linstant initial, Qe = Qe0 et H = H0 , Qe varie alors au cours du temps faisant


varier H. Etablissez la relation qui lie Qe (t) `
a H(t) tandis quon observe le syst`eme pendant un
court instant t.
Question 7 : On consid`
ere desormais de petites variations telles que Qe = Qe0 + Qe et H =
H0 + H. Linearisez lequation differentielle etablie ci-dessus et par passage a
` la limite, en

faisant tendre H h, Qe qe et t dt, etablissez h(t) = f (h(t), qe (t)).

Ecrivez la transformee de Laplace de cette equation avec la condition initiale


= 0. Cette condition signifie-t-elle que la cuve est initialement vide ? En deduire la fonction
de transfert de la cuve.

Question 8 :

h(0 )

Question 9 :

` linstant t = 0, le debit passe brusquement de Qe0 `


A
a Qe1 , calculez lexpression

de h(t).
Calculez h(t) la hauteur de liquide dans la cuve en regime permanent, comparez
cette hauteur `
a sa veritable valeur (censee etre donnee par (1.1). Expliquez la difference.

Question 10 :

1.4

Identification des param`


etres du mod`
ele dune servocommande

La figure 1.2 montre les resultats des essais dune servocommande soumise `a un signal sinusodal de pulsation et damplitude unitaire, le signal de commande est represente par un trait
continu. Lanalyse de la reponse, trait discontinu, doit permettre detablir un mod`ele simple de
ce syst`eme.
Question 1 :

Relever les pulsations des signaux auxquelles cette servocommande a ete soumise.

Pour chaque pulsation , calculez le module et le gain de la fonction de transfert de


la servocommande, estimez approximativement sa phase. Attention, comme dans tout processus

Question 2 :

38

1.4. Identification des param`


etres du mod`
ele dune servocommande
de mesures, les releves comportent de petites erreurs avec lesquelles il faut composer.
Question 3 :

Ebauchez
lallure de la reponse `
a un echelon unitaire de cette servocommande.

39

BE 1. Mod
elisation dune cuve

Amplitude

System: sys
Time (sec): 78.5
Amplitude: 4

System: sys
Time (sec): 141
Amplitude: 4

5
0

Amplitude

20

40

60 sys 80
System:
Time (sec): 16
Amplitude: 4.01

100
(sec)

120 sys 140


System:
Time (sec): 28.5
Amplitude: 4.01

160

180

200

5
0
5

10

15
System: sys
Time (sec): 2.18
Amplitude: 4.61

Amplitude

20
25
System:
sys 30
Time (sec): 3.75
(sec)
Amplitude: 4.61
Input: In(1)
Time (sec): 3.06
Amplitude: 0.309

35

40

0
5

0.5

1.5

2.5
X: 1.483
(sec)
Y: 0.3893

1.1

1.2

1.3

System: sys
Time (sec): 3.36
3.5
4
4.5
Amplitude: 0.0166
X: 1.8
Y: 0.3686

0
1
0.9
1

1.4

1.5

1.6

1.7

1.8

1.9

X: 2.157
Y: 0.08989

0
X: 2.314
Y: 0.09061

1
1.8

1.9

2.1

2.2

Figure 1.2 Reponse harmonique

40

2.3

2.4

2.5

BE

Etude
dun quadrirotor

2.1

Description du syst`
eme

Le but de ce TD est de degager des hypoth`eses visant `a simplifier letude dun syst`eme
complexe, de le modeliser pour ensuite le commander. Le syst`eme etudie est un aeronef `a voilure
tournante appele quadrirotor et represente sur la figure 2.1. La structure de ce quadrirotor est

motor 1 + propeller 1
1

motor 2+propeller 2

~xb

~yb
3

motor 3+ propeller 3
Figure 2.1 Vue de dessus du quadrirotor

supposee rigide, de masse m constante et le centre de gravite est fixe. Soit RE = (O,
x
E , yE , zE ),

un rep`ere inertiel orthonorme o`


u
x
E pointe vers le nord, yE vers lest et zE pointe en direction de
RE

la terre. Le vecteur
= (x, y, z)T rep`ere la position du centre de gravite du drone dans RE .

Soit Rb = (c.g., xb , yb , zb ) un rep`ere orthonorme lie au vehicule et partiellement represente sur

la figure 2.1. Les vitesses lineaires


Rb = (u, v, w)T et les vitesses angulaires Rb = (p, q, r)T
appelees respectivement roulis, tangage et lacet sont exprimees dans Rb .
Ce quadrirotor est un syst`eme multivariable qui poss`ede
quatre commandes : la poussee T , les moments de roulis L, de tangage M et de lacet N .
41

BE 2.

Etude
dun quadrirotor

quatre sorties : langle de gte , langle assiette , le cap et laltitude h = z.


Il est muni dactionneurs et de capteurs, soit :
quatre moto-reducteurs entrainant les quatre helices. Les vitesses de rotation des helices
sont notees i o`
u i = {1, . . . , 4}.
une centrale dattitude qui mesure , , , et un capteur barometrique pour la mesure
de h.
La poussee T est obtenue en commandant simultanement la poussee des quatre moteurs :
T = k1 (21 + 22 + 23 + 24 )
Le moment de roulis en commandant un differentiel de poussee entre les helices 2 et 4
L = k2 (22 + 24 )
Le moment de tangage en commandant un differentiel de poussee entre les helices 1 et 3 :
M = k2 (21 23 )
Le moment de lacet en commandant un differentiel de trainee entre les helices {1, 3} et
{2, 4} :
N = k3 (21 22 + 23 24 )
k1 , k2 , k3 sont des param`etres qui dependent des helices et des dimensions du quadrirotor.
Question 1 : Si les entr
ees de commande de ce syst`eme ont ete bien identifiees, quen est-il des
` quel type de perturbation peut etre soumis le quadrirotor ?
entrees de perturbations ?A

2.2

Hypoth`
eses de travail

Continuit
e, Invariance
Le mod`ele du quadrirotor est obtenu en ecrivant la relation fondamentale de la dynamique, le
theor`eme du moment cinetique et les relations cinematiques. Seules les equations utiles `a letude
de ce syst`eme seront detaillees.
Question 2 :

Selon vous, ce syst`eme satisfait-il aux hypoth`eses de continuite et dinvariance ?

Lin
earisation du mod`
ele
Lequation qui suit proc`ede de la relation fondamentale de la dynamique, g designe lacceleration de pesanteur :
w = pv + qu + gcoscos

k1 (21 + 22 + 23 + 24 )
m

A levidence, cette seule equation montre que le quadrirotor nest pas un syst`eme lineaire.
42

2.3. Fonction de transfert et analyse temporelle


Exprimez qualitativement `
a quoi correspond une situation dequilibre pour le quadrirotor (celle correspondant au quadrirotor pose, helices `
a larret est sans interet). Exprimez
formellement une condition dequilibre pour le vol stationnaire. Calculez alors la vitesse de rotation des moteurs correspondant `
a cet equilibre, soit e cette vitesse.

Question 3 :

Lin
earisation

On etudie le mouvement autour de laxe de tangage


yb . En ecrivant le theor`eme du moment
cinetique et des relations cinematiques, on montre que :

1
k2 21 23
IT
= q
q =

o`
u IT est le moment dinertie autour de laxe de tangage.
Pour le point dequilibre defini precedemment, linearisez les equations des derivees
temporelles du tangage et de lassiette. On note e , qe , e les valeurs a
` lequilibre de , q, et

= e +
, q, les variations de ces variables autour de lequilibre de sorte que : = e + ,
and q = qe + q
Question 4 :

2.3

Fonction de transfert et analyse temporelle



1
3 e la transformee de Laplace de la commande du moment
(s) = 2k2
On pose M
de tangage, linearisee et obtenue pour de petites variations de la vitesse des helices autour de
leur valeur dequilibre.

(s). Vous
Ecrivez lexpression Laplacienne liant la fonction de transfert (s)
a
`M
prendrez soin dexprimer les conditions initiales que vous distinguerez des conditions dequilibre.

Question 5 :

(s)
la fonction de transfert du quadrirotor pour laxe de
(s)
M
tangage et proposez un schema fonctionnel.
Question 6 :

Question 7 :

Etablissez H(s) =

Quels sont les p


oles, les zeros et le gain statique de cette fonction de transfert ?

Comment se comporterait le quadrirotor en reponse `


a une impulsion de commande
de poids quelconque.
en reponse a
Etablissez les expressions temporelles du tangage q(t) et de lassiette (t)
` une entree
de commande realisee par une impulsion de poids m . Que dire de la stabilite de ce syst`eme ?
Question 8 :

Tracez le lieu de Black-Nichols de la fonction de transfert H(j) et relevez les


points remarquables.

Question 9 :

43

BE 2.

2.4

Etude
dun quadrirotor

Intoduction `
a la commande

En mecanique generale, et pour des syst`emes en rotation, il est dusage de decrire un moment
de rappel par le produit dun coefficient de raideur par un angle. De meme, un moment de
frottements visqueux est decrit par le produit dun coefficient de frottement par une vitesse
angulaire. Or, lassiette et le tangage q sont mesures ; si lon exploite ces mesures pour generer
la loi de commande, il sera possible dintroduire des moments de rappel et de frottement visqueux
qui permettront de stabiliser le quadrirotor. Le schema fonctionnel du quadrirotor muni dune
telle loi de commande est represente sur la figure 2.2, m correspond `a la commande en tangage
appliquee par le pilote. Sur ce meme schema, Kq et K sont des gains reglables.
m


-+ M

1
IT

1
s

1
s

Kq
K
Figure 2.2 Le schema fonctionnel du drone muni dune commande en tangage

En utilisant le schema de la figure 2.2, ecrivez lexpression du moment de tangage


q, m ) et deduisez-en la fonction de transfert qui lie (s)

= f (,
M
a m (s).
`

Question 10 :

Identifiez cette fonction de transfert `


a celle dun syst`eme dordre deux dont vous
preciserez le gain statique, la pulsation propre non-amortie et le facteur damortissement reduit.
Question 11 :

Question 12 :

Sur quel gain et comment agir sur ce gain pour conferer au quadrirotor une plus grande
precision ( ici laptitude du quadrirotor `
a rester le plus proche de sa position dequilibre
en presence de perturbations). Quelle performance serait en contrepartie degradee ?
Proposez une valeur du facteur damortissement reduit et le reglage des gains afferents
(en fait, une relation entre Kq et K ) pour que le quadrirotor, ecarte de sa position
dequilibre, y revienne le plus rapidement possible.
On donne IT = 7.5.103 kg.m2 et on augmente les gains K et Kq tout en
realisant sur ces gains la contrainte
etablie `
a la question precedente i.e. maintenir un facteur

2
. Rappelez lexpression de la pulsation propre non-amortie n et
damortissement reduit =
2
representez dans le plan complexe le lieu des p
oles parametre en K .

Question 13 :

44

2.4. Intoduction `
a la commande
Un sous-syst`eme groupe propulsif compose de lensemble {moteur, reducteur,helice} peut
etre decrit par un syst`eme du premier ordre de fonction de transfert :
i (s)
40
=
Ui (s)
0.01s + 1
O`
u i est la vitesse de rotation du moteur i et ui (t) est la tension de commande de ce moteur.
Le quadrirotor est correctement commande si le groupe propulsif reagit plus rapidement aux
variations de la tension de commande que langle de tangage aux variations de la commande en
tangage.
Sur la carte des p
oles tracee `
a la question precedente, portez le p
ole du soussyst`eme et indiquez les regions du plan complexe correspondant `
a des reglages admissibles/inadmissibles pour K .
Question 14 :

45

BE 2.

46

Etude
dun quadrirotor

BE

Regulateur de distance dune voiture

On suppose disposer `
a bord dune voiture dun dispositif permettant de mesurer la distance
qui la separe de la voiture qui la prec`ede. On se propose detudier la regulation de cette distance.

3.1

Mod
elisation

Mod
elisation de la voiture

Une voiture roule en ligne droite, sur le plat `a Veq = 130 km/h pour une commande des
gaz egale `
a la demi-ouverture de ladmission en carburant. On note cette commande des gaz `
a
lequilibre Xeq = 50.
On notera v et x les ecarts aux valeurs `a lequilibre.
La figure 3.1 represente laccroissement de vitesse (en km/h) v consecutive `a un accroissement
de commande x = 1.
47

BE 3. R
egulateur de distance dune voiture
131.2

131

Vitesse (km/h)

130.8

130.6

130.4

130.2

130

10

20

30
Temps (s)

40

50

60

Figure 3.1 Reponse en vitesse `


a un accroissement de commande des gaz de 1 %

A quel syst`eme simple peut-on assimiler la voiture autour de sa position dequilibre ?


Determiner les param`etres caracterisant ce mod`ele.
Question 1 :

Mod
elisation des deux voitures
On poursuit un vehicule qui se trouve initialement `a la distance d0 . On appellera cible le
vehicule poursuivi.
On note vc une variation de la vitesse de la cible.
Completer le schema de la figure 3.2 (on rappelle que les vitesses sont exprimees
en km/h). Preciser la nature des deux entrees.

Question 2 :

V c ib le

x
d (m )
V o itu re " c h a s s e u r"

Figure 3.2 Mod`ele de synth`ese

48

3.2. Commande

Question 3 :

Donner les fonctions de transfert en boucle ouverte F (p) =

d(p)
d(p)
et G(p) =
.
x(p)
vc (p)

A commande de gaz constante, comment evolue la sortie du syst`eme si la vitesse


de la cible augmente pendant un laps de temps borne ? (on ne fera appel qu`
a un bon sens
elementaire...)
Quelle en est la traduction en terme de stabilite du syst`eme ?
Lobjectif de garder constante la distance entre les deux vehicules est-il realisable en boucle
ouverte ?
Question 4 :

3.2

Commande

On dispose dun capteur mesurant la distance separant les deux vehicules.


Le capteur de distance etant suppose parfait, faire le schema de la boucle de
regulation pour un correcteur de fonction de transfert C(p) quelconque.

Question 5 :

Commande proportionnelle
On commence par envisager une commande proportionnelle : C(p) = K
Question 6 : Par un simple raisonnement qualitatif, quel doit
etre le signe de K pour que le
syst`eme soit stable ? Esquisser lallure du lieu de Black de KF (p) lorsque K = 1.

Toujours pour K = 1, calculer la pulsation pour laquelle le gain (en dB) de la


fonction de transfert en boucle ouverte KF (j) est nul, on notera 0dB cette pulsation. Calculer
la marge de gain et la marge de phase.

Question 7 :

d(p)
en fonction de K.
dc (p)
Pour cette question, la cible roule `
a la vitesse dequilibre, autrement dit vcible = 0.
Question 8 :

Calculer la fonction de transfert en boucle fermee H(p) =

Tracer dans le plan complexe le lieu des p


oles de H(p) pour K < 0 et retrouver le
resultat de la question 6.

Question 9 :

Decrire lallure de la reponse indicielle en boucle fermee pour des valeurs croissantes de |K| pour le signe de K assurant la stabilite.

Question 10 :

Question 11 :

Quelle est la marge de gain du syst`eme boucle ?

Calculer la precision de la regulation realisee pour un echelon de la distance de


consigne (`
a variation nulle de vitesse de la cible). Meme question pour une variation de la vitesse
de la cible (`
a consigne constante). Que faudrait-il faire pour obtenir une meilleure precision ?
Quelle autre consequence aurait-on ? Comment peut-on y remedier ?

Question 12 :

Attention `
a lapplication des formules du cours, elles ne sappliquent qu`a lun des deux cas...
Dans le doute il est conseille de calculer directement les erreurs.
49

BE 3. R
egulateur de distance dune voiture
Application numerique : on chercher `
a asservir la distance a
` 50m, le vehicule
poursuivi accel`ere de 5 km/h, calculer pour quels gains K la precision est superieure a
` 10 %
Question 13 :

50

BE

Etude
dune automanette

Pr
esentation
Lautomanette est une commande automatique de la chane des gaz dun avion. Son but
est dajuster la commande des gaz donnee au moteur afin de maintenir constante la vitesse
longitudinale par rapport `
a lair de lappareil. Elle necessite une centrale anemometrique pour
la mesure de la vitesse relative Va .
Le diagramme fonctionnel de lautomanette que lon a simplifie en negligeant la tranee est
donne ci-dessous :
(p)

mg
Uc (p) +

Ua (p)

600
1 + 2p

F +

Vw (p)
Vs
1

mp
+

Va (p)

Notations
Uc
Ua
Va
Vs

Consigne de variation de la vitesse avion/air


Mesure de la variation de la vitesse avion/air
Variation effective de la vitesse avion/air
Variation de la vitesse avion/sol
51

Vw
m
g

Variation pente
Vitesse vent/sol
Masse de lavion (8160 kg)
Pesanteur (10 m/s2 )


BE 4. Etude
dune automanette

4.1

Correction proportionnelle

R
eponse `
a une consigne
Question 1 :

Determinez la FTBO du syst`eme F (p) =

Ua (p)
en absence de perturbations,
(p)

cest-`
a-dire lorsque = Vw = 0.
Question 2 :

Calculez la FTBF H(p) =

Va (p)
, les perturbations etant toutes nulles.
Uc (p)

On souhaite un comportement en boucle ferme du second ordre et bien amorti. On


se fixe comme objectif davoir un amortissement reduit = 0, 7.
Quelle est alors la pulsation propre non amortie n ? Que doit-on choisir comme gain K ?
Question 3 :

On conservera la valeur de K dans toute la suite du probl`eme.


Question 4 :
Question 5 :

Determinez le temps de reponse T5% .


Quel est laccroissement de vitesse en regime permanent lim Va (t) suite a
` un
t

accroissement de la consigne en echelon damplitude Uc0 = 1 m/s ?


On pourra reponse de deux mani`eres, en raisonnant sur lexpression de la FTBF ou de la
FTBO.
Question 6 : Tracer le lieu dEvans pour K > 0 et pour K < 0. Comment doit-on choisir le
gain pour que le syst`eme en boucle ferme soit stable ? Interpretez ce resultat physiquement.

R
eponse aux perturbations
Va (p)
representant la reponse en vitesse a
`
(p)
une variation de pente. Deduisez-en lim Va (t) lorsque est un echelon damplitude 0 =
Question 7 :

Calculez lexpression de G1 (p) =


t

0.017rad = 1 , les autres entrees etant nulles.


Question 8 :

Calculez lexpression de G2 (p) =

Va (p)
representant la reponse de lavion a
` une
Vw (p)

variation de vitesse du vent Vw .


Deduisez-en lim Va (t) lorsque Vw est un echelon damplitude Vw0 = 1 m/s les autres ent

trees etant nulles.


Calculez de meme lim Va (t) lorsque le vent varie lineairement sous la forme Vw (t) =
t
t
m/s.
2

4.2

Correction proportionnelle-int
egrale

On envisage maintenant un 
correcteur
 proportionnel-integral. On remplace donc K par un
1
bloc de fonction de transfert K 1 +
.
Ti p
52

4.3. Correction `
a avance de phase
Justifiez sans calcul pourquoi ce type de correcteur permet dannuler les erreurs
statiques dues aux perturbations.

Question 9 :

Question 10 :

On choisit le param`etre Ti =

syst`eme en boucle fermee).

10
(avec n la pulsation propre non amortie du
n

La figure 4.1 represente la FTBO du syst`eme corrige avec un gain K = 3, 47.


Retrouvez graphiquement le point correspondant `
a = n . A partir de cette position, justifiez
le choix qui a ete fait et esquissez lallure du lieu de Black du syst`eme corrige en boucle ouverte.

40
0 dB
0.25 dB
0.5 dB
1 dB

20

1 dB

3 dB
6 dB

3 dB
6 dB

12 dB
20 dB

20

40

System: BO
Gain (dB): 20
Phase (deg): 155
Frequency (rad/sec): 1.08

40 dB

60 dB

60

80
180

135

90

45

80 dB
0

Figure 4.1 Lieu de Black de K.F T BO(p)

4.3

Correction `
a avance de phase

Une alternative au correcteur proportionnel-integral qui annule les erreurs est daugmenter
le gain K pour les ramener `
a des valeurs acceptables.
En reconsiderant `
a nouveau un correcteur purement proportionnel, quel gain
faudrait-il choisir pour diminuer toutes les erreurs statiques dun facteur 10 ? Determinez
graphiquement les nouvelles marges de stabilite en boucle fermee.
Question 11 :

Pour restaurer des marges de stabilite satisfaisantes, on choisit un correcteur a


`
1 + p

avance de phase : CaP h (p) = K


avec > 1.
1 + p
Proposez un reglage permettant de sortir la F T BO corrigee hors du contour 0 dB en boucle
fermee.

Question 12 :

53


BE 4. Etude
dune automanette
Qua-t-on cherche `
a faire avec ce reglage sortant la F T BO du contour a
` 0 dB en
boucle fermee ?
Question 13 :

54

Troisi`
eme partie

ASSISTES

TRAVAUX DIRIGES
PAR ORDINATEUR

55

TDAO

Initiation `a MATLAB

Cette seance `
a pour but de vous familiariser `a lutilisation du logiciel de calcul MATLAB,
et plus particuli`erement `
a lutilisation de ses fonctions dediees `a lautomatique.
On demarre MATLAB en double cliquant sur licone MATLAB presente sur le bureau de
Windows

Figure 1.1 Le Command Window de Matlab

Les commandes qui vont etre utilisees peuvent etre saisies `a partir de la fenetre Command
Window de MATLAB ou mieux, dans un fichier cree dans lediteur de texte accessible depuis
File New Script.
57

TDAO 1. Initiation `
a MATLAB

1.1

Travaux
el
ementaires sur les matrices

Tous les objets manipules par MATLAB peuvent etre consideres comme des matrices. La
matrice :
!
valeur1 valeur2 valeur3
A=
valeur4 valeur5 valeur6
est definie sous MATLAB comme suit : A= [ valeur1 valeur 2 valeur3 ; valeur4 valeur5 valeur6 ]
Un espace ou une virgule separe deux elements dune meme ligne et le point virgule indique la
separation de ligne.

2 3 1

Saisir les matrices A = 5 6 8 et effectuer la serie de calculs suivants en controlant


9 4 7
1
les resultats obtenus :

1. B = A + A
2. C = A2 ainsi que D = A. A puis comparer le resultat de C `a celui de D
3. inverse dune matrice : inv(A)
4. transposee de la matrice A : A
5. calculer le determinant de A : det(A)
6. determiner les valeurs propres et les vecteurs propres de A (consultez laide en ligne de
la fonction eig en ecrivant help nom de la fonction, ici help eig
7. trouver le rang de la matrice A, fonction rank,
8. saisir la matrice I3 , fonction eye
9. concatenation horizontale de A et B soit : [A, B]
10. concatenation verticale de A et B soit [A; B]
11. extraction du terme de la premi`ere ligne, troisi`eme colonne de A : A(1, 3)
12. extraction de la troisi`eme ligne de A : A(3, :)
13. extraire la deuxi`eme colonne de A

1.2

Les polyn
omes

La saisie des polyn


omes est necessaire `
a celle des fonction de transferts :
n
Un polyn
ome de degre n : P (x) = an x + . . . + a2 x2 + a1 x + a0 est defini sous Matlab comme
une matrice de dimension 1 n sous la forme suivante :
P = [an . . . a3 a2 a1 a0]
Soit le polyn
ome suivant P = x4 8x3 + 21x2 22x 8
1. Lorsque la ligne de commande est suivie dun ; le calcul est effectue, eventuellement stocke dans une variable
mais le resultat nest pas restitue `
a lecran.

58

1.3. Fonctions de transfert et analyse des syst`


emes LIC
1. Saisir ce polyn
ome sous MATLAB,
2. Determiner les racines de ce polyn
ome (fonction Matlab roots) et les stocker dans une
variable R,
3. Retablir le polyn
ome P `
a partir des racines trouvees precedemment et stockees dans R
(fonction Matlab poly).

1.3

Fonctions de transfert et analyse des syst`


emes LIC

La fonction de transfert qui caracterise un syst`eme est un objet defini de la facon suivante :
system=tf(num,den) o`
u num et den sont les polyn
omes apparaissant au numerateur et au denominateur.
Lanalyse dun syst`eme decrit par une fonction de transfert est menee au moyen de la fonction
ltiview.
8
1. saisissez la fonction de transfert suivante : H(p) = 2
p + 4p + 4
2. depuis le Command Window ou depuis votre script, executez ltiview, une fenetre souvre,
3. cliquez sur file import, une fenetre souvre, selectionnez lobjet system puis validez en
cliquant sur le bouton OK,
4. la reponse indicielle appararat,
clic droit plot types, vous pouvez afficher les reponses indicielles, impulsionnelles,
a des conditions initiales, le diagramme de Bode, le lieu de Black-Nichols, la carte des
`
poles et des zeros, etc.
apr`es avoir choisi une representation, clic droit characteristics, permet dafficher les
caracteristiques de la reponse choisie : temps de reponse (settling time 2 ), depassement
(peak response), permanent (steady state), etc. pour une reponse indicielle.
5. visualisez la reponse indicielle et le diagramme de Bode du syst`eme decrit par H(p),
relevez sur chacune de ces representations les caracteristiques et comparez-les `a celles
attendues en utilisant les abaques du cours sur les syst`emes dordre deux,
6. visualisez la carte des poles et des zeros, cliquez droit et activez loption grid, lire les
valeurs du facteur damortissement reduit et de la pulsation propre non amortie de H(p).

1.4

Synth`
ese de lois de commande pour les syst`
emes monovariable

A linstar de ltiview qui permet danalyser les performances dun syst`eme au travers de
letude des caracteristiques de sa reponse, sisotool est un programme qui facilite la synth`ese
de lois de commande et levaluation des performances des syst`emes asservis munis de ces lois
de commande. On souhaite mettre en uvre une correction proportionnelle pour le syst`eme
represente sur la figure 1.2. La fonction de transfert H(p) etudiee est celle qui a ete definie dans
la partie precedente.
2. Par defaut, sur MATLAB, le temps de reponse est defini `
a 2%, il convient de modifier cette valeur en faisant
clic droit properties options

59

TDAO 1. Initiation `
a MATLAB
E(p) +

H(p)

S(p)

Figure 1.2 Schema du syst`eme etudie

Figure 1.3 Lenvironnement de sisotool

1. depuis le Command Window, tapez et executez sisotool, une fenetre souvre. La conception de la loi de commande et levaluation des performances du syst`eme ainsi corrige
sop`erent en ouvrant successivement les onglets de la gauche vers la droite.
2. Longlet Architecture permet de definir la structure de la boucle `a controler et les valeurs
des differentes fonctions de transfert.
bouton Control Architecture : verifiez que la structure selectionnee est celle desiree,
relevez sur le schema le nom des variables utilisees pour definir les fonctions de transfert et les signaux.
bouton System Data : allouez les fonctions de transfert dans les champs prevus `a cet
effet de sorte que la structure de la boucle proposee par sisotool soit coherente avec
celle representee sur la figure 1.2. A ce stade le correcteur C = 1. Le bouton Browse
permet dimporter dans sisotool les fonctions de transfert declarees dans MATLAB.
3. Longlet Compensator Editor : C represente le gain statique du correcteur, soit K pour
le syst`eme etudie. A ce stade, laissez C = 1.
Notez quil est possible de synthetiser des correcteurs plus sophistiques en ajoutant des
poles et des zeros.
4. onglet Graphical Tuning : dans ce menu, vous choisissez le type de graphique utilise pour
la synth`ese du correcteur, la plupart du temps nous utiliserons le lieu des racines et le
lieu de Black-Nichols.
plot1 : choisissez root locus
plot2 : choisissez nichols
Cliquez ensuite sur le bouton Show design plot. Pour les differents graphiques, cliquez
droit grid.
5. onglet Analysis Plot : pour afficher une reponse indicielle correspondant au reglage effectue :
selectionnez Plot type : step
cochez closed loop r to y
bouton Analysis plot
Pour le reglage du correcteur, sous longlet Graphical tuning, deplacez avec la souris les
poles sur le lieu des racines pour leur donner la configuration souhaitee ou translater le lieu de
60

1.5. Simulink
Black-Nichols jusqu`a par exemple atteindre la marge de phase desiree. Il faut ensuite lire dans
longlet Compensator editor la valeur de C ayant permis ce reglage.
Synthetisez un correcteur proportionnel qui conf`ere `a la boucle dasservissement un gain `
a
la resonance en boucle fermee de 0dB, et observez les caracteristiques de la reponse indicielle du
syst`eme ainsi controle.

1.5

Simulink

Pratiquement, le mod`ele de synth`ese represente par une fonction de transfert permet lanalyse
et le dimensionement dune loi de commande. Ces etudes ont ete menees dans les sections
precedentes au moyen de ltiview et sisotool.
Il convient ensuite de valider les resultats obtenus au travers de simulations sur un mod`ele plus representatif de la realite. SIMULINK est un utilitaire de MATLAB qui permet la
simulation temporelle des syst`emes dynamiques. Le mod`ele du syst`eme etudie est represente
graphiquement en interconnectant des fonctions contenues dans des biblioth`eques.
On souhaite simuler le syst`eme controle par la loi de commande etablie `a la section precedente
et represente sur la figure 1.4.

Figure 1.4 Schema boucle ouverte

61

TDAO 1. Initiation `
a MATLAB
SIMULINK est execute `
a partir du Command Window de MATLAB en cliquant sur le
bouton
Une fenetre intitulee Simulink Library Browser souvre, elle est composee dune distribution
de biblioth`eques sous forme dic
ones.
Il faut ensuite ouvrir une fenetre dans laquelle vous construirez votre mod`ele : File New
Model. Vous trouverez les fonctions utiles `
a la realisation de ce schema dans les biblioth`eques
suivantes :
fonction
transfer function, integrator
Sommateur, Product, Gain, (.2 )
Step
Scope
Mux
rate limiter

Biblioth`eques
Continuous
Math Operations
Sources
Sinks
Signal Routing
Discontinuities

Il faut ensuite double-cliquer sur chaque bloc pour le parametrer, `a linstar des echelons de
consigne :
Step Time
Initial Value
Final Value
Sample Time

0
0
0.1, 0.35, 1
0

ou du rate limiter qui permet dintroduire une non linearite dans le mod`ele de simulation :
Rising slew rate
Falling slew rate

2
-2

Lancez une simulation


et visualisez les resultats sur les Scope. Comparez-les reponses `a
celles obtenues sous sisotool.
Il nest pas possible de faire le releve des coordonnees dun point sur le Scope. On peut
toutefois imprimer ces courbes sur une figure sur laquelle on pourra lire les coordonnees et quon
pourra avantageusement copier-coller dans un traitement de texte.
1. double-cliquez sur le scope qui affiche le signal que vous voulez traiter,
2. cliquez sur lic
one Parameters onglet History
3. decochez la case Limit data point to last
4. cochez la case Save data to workspace
5. donnez un nom explicite `
a la variable, par exemple out et choisissez le format Array,
validez
6. relancez la simulation
7. out est un tableau accessible depuis le Command Window dont la premi`ere colonne est
le temps, les colonnes suivantes sont les valeurs prises par les signaux appliques au Scope.
62

1.5. Simulink
La commande plot(out( :,1),out( :,2)) permet dafficher le premier signal.

63

TDAO 1. Initiation `
a MATLAB

64

TDAO

Syst`emes dordre un et deux

Le but de ce TDAO est la familiarisation avec le logiciel Matlab, en particulier les commandes
utiles en Automatique ainsi que lapprofondissement des connaissances vues en cours et lors des
exercices sur papier.

2.1

Quelques manipulations sous Matlab

Question 1 :

Demarrez Matlab et saisissez la fonction de transfert suivante :


H(p) =

2 (p)
2
= 2
Tc (p)
p + 0, 04p + 1

Trucs & Astuces Matlab


plut
ot que de rentrer les commandes dans la fenetre, travailler de preference dans une
fenetre dans lediteur (File New Script)
utiliser la fonction tf. Synthaxe sys = tf([coefs num], [coefs den])
sauver et executer le programme
Visualisez le diagramme de Bode (bode(sys)), le diagramme de Black-Nichols
(nichols(sys)), la carte des p
oles (pzmap(sys)), la reponse indicielle (step(sys)), la reponse impulsionnelle (impulse(sys))
Relevez les caracteristiques des syst`emes gr
ace au clic droit

Question 2 :

Trucs & Astuces Matlab


On evite quune representation graphique necrase la precedente en faisant preceder
chaque commande par figure(num)
Par defaut le temps de reponse est donne `a 2%. Clic-droit Properties onglet Options
pour regler le temps de reponse `a 5%
65

TDAO 2. Syst`
emes dordre un et deux
Question 3 :

Retrouvez les resultats precedents par lenvironnement LtiView.

Pour cela, executez ltiview dans la fenetre de commande ou le programme en .m. Importez
le syst`eme (File Import)

2.2

Etude dune roue de r


eaction

On note langle entre laxe dun satellite et la droite reliant le centre de gravite du satellite
au centre de la Terre.
Le satellite est commande par une roue a` reaction qui lui transmet un couple de commande
Cm .
Le gradient de gravite exerce sur le satellite un couple de rappel elastique k et la pression

atmospherique residuelle un couple de frottement visqueux f .


Le moment dinertie du satellite sur laxe de la roue dinertie est notee Ipf .
On a montre en appliquant le theor`eme du moment cinetique que langle varie avec le
couple de commande selon la loi :
Ipf + f + k = Cm

(2.1)

Donnees numeriques :
Ipf

= 0, 5 kg.m2

k = 20 N.m
f

= 1, 25 N.m.s

Mod
elisation
Completez le schema de la figure 2.1 pour quil modelise le syst`eme decrit.
Ouvrez une page Simulink, construisez et simulez le schema. On mettra une entree Cm en
echelon et on visualisera la sortie .
Question 1 :

Trucs & Astuces Matlab


Pour lancer Simulink, on peut soit :
taper simulink en ligne de commande
File New Model
cliquer sur lic
one Simulink
Trucs & Astuces Matlab
Biblioth`eques
Blocs utiles
Integrateur
Continuous
Sommateur
Math Operations
Entree echelon Sources
Scope
Sinks
66

2.3. Identification
Cm

+ I
pf

Figure 2.1 Schema fonctionnel du syst`eme `a completer

Trucs & Astuces Matlab


Pour parametrer les blocs, il est preferable de declarer les variables (Ipf , k, f ) dans un fichier
.m puis dutiliser ces noms de variables plut
ot que de mettre directement les valeurs numeriques.
Trucs & Astuces Matlab
Pour lancer la simulation, on peut faire Simulation Start ou utiliser licone
Il est souvent necessaire dajuster le temps de simulation avec Simulation Configuration
Parameters.
Question 2 :

Relevez sur le scope le gain, le temps de reponse `


a 5% et le depassement en %.

A partir de lequation 2.1, ecrire la fonction de transfert du syst`eme complet.


Inserer dans le schema precedent un bloc Transfer Fct (biblioth`eque Continuous) representant
cette fonction de transfert en lui injectant la meme entree.
Question 3 :

2.3

Identification

Lobjet de cet exercice est de retrouver la fonction de transfert des syst`emes inconnus contenus dans le fichier identification.mdl `a partir dessais bien choisis.

Syst`
emes simples
Copiez le syst`eme inconnu 1 dans une nouvelle page, visualisez la reponse indicielle,
relevez ses caracteristiques et deduisez-en les coefficients de la fonction de transfert.
Validez vos resultats en visualisant sur un meme Scope la sortir du syst`eme inconnu et celle
de votre solution.

Question 1 :

Trucs & Astuces Matlab


Pour visualiser plusieurs signaux sur un meme scope, utilisez un Mux de la biblioth`eque signal
67

TDAO 2. Syst`
emes dordre un et deux
routing.
Question 2 :

Meme question avec le syst`eme inconnu 2.

Syst`
eme plus complexe
Realisez un essai indiciel sur le syst`eme inconnu 3 et relevez le gain statique.
Que peut-on dire de lordre du syst`eme ? ( i.e. du degre du denominateur de la fonction de
transfert )
Kn2
Peut-on modeliser ce syst`eme une fonction de transfert du type 2
? Pourquoi ?
p + 2n p + n2

Question 3 :

Au vu de la reponse indicielle, quelle est loperation mathematique effectuee de


mani`ere predominante par le syst`eme ?
Question 4 :

On suppose que la fonction de transfert est de la forme H(p) =


0<

1
< n

Kn2 (1 + p)
avec
p2 + 2n p + n2

Pour fonder cette intuition, on prend en compte :


lallure oscillante amortie sugg`ere un syst`eme du second ordre,
la reponse `
a un echelon ressemble `
a une impulsion de Dirac. Le syst`eme a donc un effet
derivatif, ce qui implique la presence dun zero do`
u le terme en (1 + p),
Cet effet derivatif est dominant, la partie reelle de ce zero est donc superieure `a celle des
poles,
Enfin, la reponse evolue initialement vers la valeur finale. On sait dexperience quun
syst`eme avec un zero positif (syst`eme dit `a dephasage non-minimal) evolue initialement
`a loppose de sa valeur finale. Le zero est donc negatif et > 0.
Tracez lallure du diagramme de Bode du syst`eme `
a partir de la fonction de transfert
proposee et des indications sur les relations dordre entre les param`etres.
1
1
En supposant que n , calculer la phase pour = et pour = n .

Question 5 :

Question 6 :

Determinez experimentalement le gain et la phase pour {0.01 0.1 100 1000}

(rad/s)
En deduire les valeurs de et n

On remarque que la pseudo-pulsation de la reponse temporelle ne depend pas du numerateur


de la fonction de transfert. Lexpression etablie dans le cas dun second ordre avec une constante
au numerateur reste valable.
Relevez la pseudo-periode de la reponse indicielle. En deduire .
Verifiez la validite de lidentification realisee.

Question 7 :

68

TDAO

Etude dun quadrirotor

Le but de ce TD est de modeliser le quadrirotor represente sur la figure 1 en vue de simuler


son comportement. Cette modelisation sera operee au moyen du logiciel MATLAB-SIMULINK. Pour
mener `a bien ce TDAO, vous devez imperativement vous munir du sujet et des resultats du TD1.

motor 1 + propeller 1
1

motor 2+propeller 2

~xb

~yb

motor 3+ propeller 3

Figure 3.1 A gauche, vue shematique dun quadrirotor. A droite, le U130 de Novadem

Ce quadrirotor est un syst`eme multivariable qui poss`ede


quatre entrees : la commande de la poussee x , les commandes des axes de roulis , de
tangage m et de lacet n . Ces commandes sont par exemple generees avec une radiocommande.
sept sorties : langle de gte , lassiette , le cap , le roulis p, le tangage q, le lacet r,
laltitude h = z.
Il est muni dactionneurs et de capteurs, soit :
quatre moto-reducteurs entrainant les quatre helices, soit i o`
u i = {1, . . . , 4} leurs
vitesses angulaires.
69

TDAO 3. Etude dun quadrirotor


une centrale inertielle qui mesure , , , p, q, r et un capteur barometrique pour la
mesure de h.
La poussee T est obtenue en commandant simultanement la poussee des quatre moteurs :
T = b(21 + 22 + 23 + 24 )
Le moment de roulis en commandant un differentiel de poussee entre les moteurs 2 et 4
L = bl(22 + 24 )
Le moment de tangage en commandant un differentiel de poussee entre les moteurs 1 et
3:
M = bl(21 23 )
Le moment de lacet en commandant un differentiel entre les moteurs {1, 3} et {2, 4} :
N = d(21 22 + 23 24 )
b et d sont respectivement le coefficient de poussee et de trainee des helices, l designe la
longueur du bras de levier.

3.1

Mod`
ele de simulation du quadrirotor

Dans cette premi`ere partie, vous allez representer sous la forme dun schema fonctionnel les
equations des forces et des moments produits par les helices du quadrirotor ; puis vous implementerez ce schema sous SIMULINK au moyen des composants fournis dans les biblioth`eques de
ce logiciel.
Sur papier, donnez un shema fonctionnel des equations de la poussee, des moments
de roulis, de tangage et de lacet produits par les vitesses de rotation des helices.

Question 1 :

Executez MATLAB puis implementez ce schema fonctionnel sous SIMULINK. Pour ce


faire, suivez les instruction suivantes :

Question 2 :

Trucs & Astuces Matlab


tapez simulink en ligne de commande, soit cliquez sur licone SIMULINK
.
ouvrez ensuite une feuille de travail dans laquelle vous representerez le schema fonctionnel
des forces et des moments : File New Model
Trucs & Astuces Matlab
Utilisez ensuite les composants que vous trouverez dans les differentes biblioth`eques et que
vous copierez dans la feuille de travail. Au moyen de la souris, vous etablirez les connections
entre ces differents composants. Associez aux entrees {1 , . . . , 4 } des composants Input et aux
sorties {T, L, M, N } des composants Output.
70

3.2. Mod`
ele de synth`
ese
Blocs utiles
Sommateur, Product, Gain,
Input
Output

Biblioth`eques
Math Operations
Sources
Sinks

Trucs & Astuces Matlab


Sauvegardez reguli`erement votre schema File Save As dans un sous-repertoire du repertoire
prenom nom associe `
a votre compte. Les fichiers crees sous SIMULINK on une extension .mdl.
Il est enfin possible dencapsuler ce schema dans un sous-syst`eme ; avec la souris, selectionnez le
schema complet, pointez le curseur sur le schema et faites un clic droit Create a Subsystem.
Vous pouvez redimensionner ce sous-syst`eme avec avec la souris. Sauvegardez votre schemaFile
Save.
Trucs & Astuces Matlab
Il vous reste `
a parametrer ce schema. Pour ce faire, vous allez creer un fichier MATLAB : File
New Script dans lequel vous affecterez des valeurs numeriques aux param`etres. b = 3.13e5 ,
d = 7.5e7 , l = 0.21m, m = 0.65kg, on donne egalement IT = 6e3 kgm2 , le moment dinertie
du quadrirotor autour de laxe de tangage. Sauvegardez ce fichier (extension .m) dans le meme
repertoire que precedemment et executez-le en cliquant sur licone

Ouvrez le fichier Model quadrotor.mdl et completez-le avec le sous-syst`eme generant la force de poussee et les moments produits par les helices. Il peut
etre n
ecessaire de
recompiler lun des fichiers constitutifs de ce sch
ema, pour cela suivez la proc
edure
indiqu
ee dans le fichier LisezMoi.txt archiv
e dans le dossier Fichiers Matlab/TDAO3. Ce mod`ele est un mod`ele de simulation du quadrirotor. Appliquez aux entrees de ce
sous-syst`eme des echelons (bloc Step dans Sources) qui simulent les vitesses de rotation. Calculez |e | la valeur absolue de la vitesse de rotation des helices `
a lequilibre puis param`etrez le bloc
Step en le double-cliquant :
Question 3 :

Step Time
Initial Value
Final Value
Sample Time

0
0
e
0

Lancez la simulation sur un horizon de 10s, constatez que vous avez bien atteint un equilibre
en observant les angles dattitude et laltitude du quadrirotor.

3.2

Mod`
ele de synth`
ese

Vous 
allez, dapr`
 es une simulation, identifiez un mod`ele de synth`ese du quadrirotor. On pose
1
3 e le moment de tangage linearise et obtenu pour de petites variations de
= 2bl
M
autour de e , cf. TD1). Vous allez identifier la fonction de transfert qui
la vitesse des helices

lie M(s) `
a (s),
de petites variations de lassiette autour de lassiette dequilibre.
71

TDAO 3. Etude dun quadrirotor


Ramenez lhorizon de simulation `
a 1 seconde et modifiez la commande autour de

lequilibre de sorte que 1 = e 1 et 3 = e + 1.


(s).
Etablissez lexpression M
Observez q(t) sur le Scope, en deduire q(t) et etablissez son expression en fonction du
temps puis son expression Laplacienne (vous adopterez s pour la variable de Laplace).
`
Quelle relation simple lie (t)
a q(t). Donnez la transformee de Laplace de cette relation

(s)
puis
.
(s)
M
Comparez la fonction de transfert ainsi identifiee `
a celle trouvee lors du TD.
Question 4 :

MATLAB dispose doutils pour letude des performances et le trace des reponses temporelles,
diagrammes et lieux frequentiels des syst`emes lineaires invariants continus.
Depuis la fenetre de commande Windows ou `
a la suite du progamme .m, saisissez
la fonction de transfert identifiee infra.
Question 5 :

Trucs & Astuces Matlab


Pour saisir une fonction de transfert, utilisez la fonction tf dont la synthaxe est sys = tf([ coefs
num], [ coefs den])
Executez la fonction ltiview et importez le syst`eme (File Import). Pour analyser le syst`eme,
faites un clic droit puis choisissez le type danalyse que vous souhaitez mener.
Step response : comparez la reponse obtenue avec Ltiview `
a celle obtenue avec SIMULINK.
Attention `
a judicieusement regler la duree de simulation (on rappelle que le mod`ele de
synth`ese a ete obtenu sous les hypoth`eses de petites variations autour de lequilibre).
Impulse response : verifiez la coherence de la reponse impulsionnelle relativement a
` la
q(s)
fonction de transfert
.
(s)
M
q(j)
Bode : esquissez sur une feuille de papier le diagramme de Bode asymptotique de
(j)
M
et verifiez votre trace en le comparant `
a celui obtenu avec Ltiview.
Nichols : trace du lieu de Black.

(s)
Pole/Zero, pour le trace des p
oles () et des zeros () de
.
(s)
M

3.3

Introduction `
a la commande

Autour de laxe de tangage, le quadrirotor nest pas stable. Soumis `a une entree de commande
dont lamplitude et la duree sont bornees, la reponse ne revient pas `a lequilibre. On se propose
detudier une loi de commande qui permette de stabiliser le quadrirotor tout en controlant le
temps de reponse et lamortissement. Cette commande est etudiee avec le mod`ele de synth`ese
puis implementee sur le mod`ele de simulation. On ne sinteressera dans la suite quau controle
de lattitude du quadrirotor, les effets des forces dues `a laction de pesanteur et aux helices ne
sont pas pris en compte. Reprenez les resultats etablis `a la question 10 du TD et en particulier
la fonction de transfert du quadrirotor corrige.
72

3.3. Introduction `
a la commande
Ouvrez une nouvelle feuille de travail sous SIMULINK puis, au moyen de deux
integrateurs et dun gain, representez le mod`ele de synth`ese du quadrirotor. Prevoyez une entree
de commande m (le moment de tangage) et deux sorties pour visualiser et q. Encapsulez ce
schema dans un Subsystem et pensez `
a le sauvegarder.

Question 6 :

Blocs utiles
Sommateur, Gain,
Integrator
Input
Output
Question 7 :

Biblioth`eques
Math Operations
Continuous
Sources
Sinks

Completez ce schema en vue de modeliser le moment de tangage :


Kq q(s)
(s) = m (s) K (s)
M

m qui represente la commande de laxe de tangage realisee par exemple au moyen dune radiocommande sera modelise par un echelon unitaire. Vous param`etrerez les gains K et Kq de sorte
quautour de laxe de tangage, le quadrirotor se comporte
comme un syst`eme du second ordre

2
dont le facteur damortissement reduit est egal `
a
et le temps de reponse inferieur a
` 0, 5s.
2
q et M .
Inserez trois oscilloscopes pour mesurer ,
Blocs utiles
Sommateur, Gain,
Step
Scope

Biblioth`eques
Math Operations
Sources
Sinks

Appliquez pour m (t) un echelon unitaire et relevez les caracteristiques de la reponse.


Que vaut le gain gain statique du quadrirotor ainsi commande ? Proposez pour le prefiltre (gain
issu de m situe en amont de la boucle) une valeur qui rende le gain du syst`eme ainsi commande
unitaire puis simulez-le

Question 8 :

Vous allez implementer la loi de commande synthetisee sur le mod`ele de simulation


(suppose decrire le veritable quadrirotor). Cette question est delicate car la commande utilisee
alors que pratiquement, on contr
1 et
3 les variations
pour la synth`ese est un moment M
ole
de vitesse des moteurs.
exprimez 1 3
1 et
3 , montrez quil faut
pour garantir un moment de tangage lineaire vis `
a vis de
1 =
3.

Question 9 :

sous SIMULINK , completez le mod`ele de synth`ese en construisant le sous-syst`eme qui lie


`
1 et M
`
3.
M
a
a
implementez alors la loi de commande dimensionnee avec le mod`ele de synth`ese puis
simulez.
Comparez les resultats obtenus avec les deux mod`eles. Pour cela, vous pouvez copier-coller le
mod`ele de synth`ese sur le mod`ele de simulation.
73

TDAO 3. Etude dun quadrirotor

74

TDAO

Dynamique laterale dun Boeing 747

Le but de ce TD est detudier et de controler la dynamique laterale dun avion.


On montre en Mecanique du Vol que la dynamique laterale combine des mouvements sur les
axes de roulis et de lacet.
Autour de ces axes, lavion apparat comme un syst`eme multivariable avec
deux entrees : la gouverne de direction n et les ailerons l
deux sorties : le lacet r et langle de gte
Avec les connaissances vues jusqu`a present dans le cours dAutomatique, on ne sait pas
commander directement les syst`emes multivariables. A defaut, on sattachera dans un premier
temps `a realiser un amortisseur de lacet dont le but sera de reguler la valeur du lacet r autour de
0. Une fois le reglage de lamortisseur de lacet correctement effectue, on asservira langle de gte.
Pour chacune de ces parties, on etudiera successivement le comportement de lavion en boucle
ouverte puis la mani`ere de le commander pour lui donner en boucle fermee un comportement
satisfaisant.
La figure 4.1 rappelle la definition et les conventions de signe sur les angles de la dynamique
laterale.

4.1

Amortisseur de lacet

Etude de lavion en boucle ouverte


On donne la fonction de transfert decrivant levolution du lacet r en reponse `a une action
sur la gouverne de direction n
r(p)
0.475p3 0.2479p2 0.1187p 0.05633
= 4
n (p)
p + 0.6358p3 + 0.9389p2 + 0.5116p + 0.003674
75

TDAO 4. Dynamique lat


erale dun Boeing 747

d l < 0

p > 0

r> 0

d n < 0

x a
b > 0

f > 0
y

z h

Figure 4.1 Angles et vitesses de la dynamique laterale : Gte et roulis p - Derapage et lacet r

Demarrez MATLAB, declarez la fonction de transfert et importez-la sous ltiview.


Affichez la reponse impulsionnelle et la reponse indicielle. Combien de modes sont
visibles ? Lequel est dominant ?
A quelles manoeuvres correspondent physiquement ces tests ?
Question 1 :

Determinez tr`es approximativement la constante de temps du sous-syst`eme du


premier ordre, la pulsation propre non-amortie et le facteur damortissement reduit du syst`eme
du second ordre.
Question 2 :

Question 3 : Comment justifiez-vous le fait que la fonction de transfert saisie soit du quatri`
eme
ordre alors que la simulation montre quun troisi`eme ordre suffit `
a caracteriser la dynamique
laterale de lavion ?

En vous aidant de Q
la carte des p
oles et des zeros, mettez la fonction de transfert
(p zi )
.
sous la forme p
oles-zeros i.e. K Q
(p pj )

Question 4 :

R
egulation du lacet
Les essais precedents montrent qu`
a levidence lavion nest pas suffisamment amorti.
Une solution `a cette situation pourrait consister `a modifier la geometrie de lavion pour
le rendre moins oscillant. Ce reglage nest pas realisable en pratique. On montre en effet en
mecanique du vol que le facteur damortissement reduit est proportionnel `a la racine carre de
la surface de la derive ainsi qu`
a la distance entre le centre de gravite et la derive. Le facteur
damortissement etant naturellement tr`es faible, le diminuer convenablement par la geometrie
de lavion conduirait `
a en augmenter.
On pref`ere introduire une loi de commande de la gouverne de direction n qui contre le
mouvement de lacet. Ce dispositif constitue un amortisseur de lacet.
On suppose pour les questions qui suivent que le capteur (gyrom`etre) restitue une mesure
76

4.1. Amortisseur de lacet


egale `a la grandeur observee. Le capteur est de ce fait modelise par un gain pur egal `a 1.
Pour le calcul de la loi de commande, on utilisera la macro-fonction sisotool dediee `a letude
des syst`emes asservis dits SISO : Single Input Single Output.
Trucs & Astuces Matlab
Utilisation de sisotool :
1. depuis le Command Window, tapez et executez sisotool, une fenetre souvre. La conception de la loi de commande et levaluation des performances du syst`eme ainsi corrige
sop`erent en ouvrant successivement les onglets de la gauche vers la droite.
2. Longlet Architecture permet de definir la structure de la boucle `a controler et les valeurs
des differentes fonctions de transfert.
bouton Control Architecture : verifiez que la structure selectionnee est celle desiree,
relevez sur le schema le nom des variables utilisees pour definir les fonctions de transfert et les signaux.
bouton System Data : allouez les fonctions de transfert dans les champs prevus `
a cet
effet de sorte que la structure de la boucle proposee par sisotool soit coherente avec
celle representee sur la figure 1.2. A ce stade le correcteur C = 1. Le bouton Browse
permet dimporter dans sisotool les fonctions de transfert declarees dans MATLAB.
3. Longlet Compensator Editor : C represente le gain statique du correcteur, soit K pour
le syst`eme etudie. A ce stade, laissez C = 1.
Notez quil est possible de synthetiser des correcteurs plus sophistiques en ajoutant des
poles et des zeros.
4. onglet Graphical Tuning : dans ce menu, vous choisissez le type de graphique utilise pour
la synth`ese du correcteur, la plupart du temps nous utiliserons le lieu des racines et le
lieu de Black-Nichols.
plot1 : choisissez root locus
plot2 : choisissez nichols
Cliquez ensuite sur le bouton Show design plot. Pour les differents graphiques, cliquez
droit grid.
5. onglet Analysis Plot : pour afficher une reponse indicielle correspondant au reglage effectue :
selectionnez Plot type : step
cochez closed loop r to y
bouton Analysis plot
A partir de la fonction de transfert reformulee `
a la question 4, verifiez que le lieu
dEvans trace sous sisotool est coherent avec les r`egles de trace edictees en cours i.e. les points
de depart et darrivee, les asymptotes et les points appartenant `
a laxe reel du lieu dEvans pour
un correcteur C(p) = C avec C > 0 puis C < 0.

Question 5 :

Les r`egles de construction vues en cours sont insuffisantes pour tracer compl`etement les lieux
dEvans `a la main (il faudrait notamment les angles de depart et darrivee).
Affichez avec sisotool le lieu dEvans pour C > 0 puis pour C < 0. Que peut-on
dire de la stabilite dans chaque cas ?
Question 6 :

77

TDAO 4. Dynamique lat


erale dun Boeing 747
Peut-on retrouver ce resultat par des considerations physiques ?
Trucs & Astuces Matlab
sisotool trace par defaut le lieu dEvans pour un correcteur positif. Pour obtenir le trace
correspondant `a un gain negatif, il faut inserer une valeur negative dans le champ Current
Compensator C(p)
Proposer au moyen de sisotool un reglage du gain qui permette de maximiser le
facteur damortissement reduit et par l`
a-meme le confort des passagers.
Question 7 :

Trucs & Astuces Matlab


En cliquant sur le carre rose figurant le pole en boucle fermee pour le reglage courant du
correcteur, on peut directement lire en bas de la fenetre la valeur du pole. Pour les poles complexes
conjugues, on a aussi les caracteristiques du mode correspondant :
damping :
natural frequency : n
Question 8 :

Evaluez sous sisotool la reponse impulsionnelle du syst`eme ainsi corrige.

Dans lespace de votre promotion sur le site EEE, copiez le repertoire Fichiers Matlab, decompressezle dans le repertoire D : \mon nom. Positionnez le chemin de Matlab sous le repertoire tdao4
puis ouvrez et executez le fichier Boeing747lacet.m qui initialise les donnees du mod`ele et ouvre
la fenetre SIMULINK.
Remarque : Pour mettre en evidence linteret de lamortisseur de lacet, `a linstant initial,
langle de derapage est different de zero. Cette valeur du derapage est dej`
a programmee.
Completez le schema pour inserer le mod`ele de lavion dans une boucle de regulation
avec le correcteur synthetise precedemment.
Quelle valeur doit-on donner `
a la consigne de lacet ?
Question 9 :

4.2

Asservissement de langle de gte

Pratiquement, on commande le taux de virage dun avion au travers de la commande de son


angle de gte.
On etudiera lavion muni de lamortisseur de lacet synthetise dans les questions precedentes.

Etude de la boucle ouverte


Executez le fichier Boeing747gite.m. Apr`es initialisation de certaines donnees, une fenetre
SIMULINK souvre dans laquelle figure le mod`ele dun avion commande par les ailerons et dont
la sortie est langle de gte . Le mod`ele int`egre lamortisseur de lacet dont il suffit de regler le
correcteur. Pour ce faire, doucle-cliquez sur la figure et renseignez la valeur du gain trouvee `a la
question 7.
Sur le mod`ele de simulation, appliquez un echelon de commande de braquage des
ailerons de quelque degres (`
a traduire en radians), observez langle de gte et deduisez-en le gain
Question 10 :

78

4.2. Asservissement de langle de gte

statique de la fonction de transfert

(p)
.
l (p)

Asservissement de langle de gte


Construisez une boucle dasservissement de langle de gte dans laquelle vous
insererez une correction proportionnelle.
Question 11 :

Determinez la valeur du gain telle que lerreur de gte soit inferieure a


` 5%.
Observez la gte, lerreur et langle de braquage des gouvernes. Modifiez la valeur du gain afin
de visualiser le compromis stabilite-precision.

Question 12 :

Question 13 : Testez ce r
eglage sans lamortisseur de lacet. Pour ce faire, double-cliquez a
`
nouveau sur le bloc modelisant lavion et portez `
a 0 la valeur du gain de lamortisseur de lacet
puis relancez la simulation.

79

TDAO 4. Dynamique lat


erale dun Boeing 747

80

TDAO

Etude
dune automanette

Pr
esentation
Ce TDAO a pour objet letude dune automanette. Lautomanette etant un mode du pilote
automatique qui permet lacquisition et la tenue dune vitesse indiquee. Le schema fonctionnel
de lautomanette est represente sur la figure 5.1 :
Les notations utilisees :
Uc
Ua
Va
Vs

Consigne de variation de la vitesse avion/air


Mesure de la variation de la vitesse avion/air
Variation effective de la vitesse avion/air
Variation de la vitesse avion/sol

Vw
m
g

Variation pente
Vitesse vent/sol
Masse de lavion (8160 kg)
Pesanteur (10 m/s2 )

(p)

mg
Uc (p) +

Ua (p)

C(p)

600
1 + 2p

F +

Vw (p)
Vs
1

mp
+

1
Figure 5.1 Le schema fonctionnel de lautomanette

81

Va (p)


TDAO 5. Etude
dune automanette

5.1

Correction proportionnelle unitaire C(p) = 3, 47

R
eponse `
a une consigne
Question 1 :

Realisez sous Simulink le schema fonctionnel de lautomanette.

Les perturbations etant supposees toutes nulles, calculez la fonction de transfert en


boucle ouverte du syst`eme et saisissez-l`
a. Sous sisotool, tracez les lieux dEvans pour K < 0 et
K > 0 et retrouvez le signe que doit avoir le gain pour que le syst`eme en boucle fermee soit stable.
Reglez et relevez la valeur du gain pour laquelle le facteur damortissement reduit = 0.707.
Relevez egalement n .
Question 2 :

Avec la valeur du gain trouvee `


a la question precedente, sur le lieu de Black-Nichols,
visualisez et relevez les marges de stabilite ainsi que le gain statique de lautomanette en boucle
fermee.
Question 3 :

Deduisez-en la valeur de lim Va (t) en reponse `a un echelon.


t

Question 4 : Sur le sch


ema SIMULINK de lautomanette, implementez le gain du correcteur
trouve `
a la question 2. Lorsque Uc est un echelon damplitude Uc = 1m/s, les autres entrees
etant nulles, visualisez lim Va (t), en deduire le gain statique de la fonction de transfert en
t

boucle fermee et verifiez que sa valeur est coherente avec celle trouvee `
a la question precedente.
Visualisez egalement lerreur permanent lim (t). Sans faire de calcul, ce resultat etait-il previt

sible ?

R
eponse aux perturbations
Question 5 : Lorsque est un
echelon damplitude 0 = 0, 017rad, les autres entrees etant
nulles, visualisez lim (t) et lim Va (t). Ce resultat etait-il previsible ?
t

Concluez sur la qualite de la boucle de regulation.

5.2

Correction proportionnelle-int
egrale

On envisage maintenant un 
correcteur
 proportionnel-integral. On remplace donc K par un
1
bloc de fonction de transfert K 1 +
.
Ti p
On rappelle les resultats du TD : K = 3, 47 et Ti = 28.5
Tracez le diagramme de Black de la FTBO corrigee. Mettez en evidence linfluence
du correcteur sur le diagramme de Black

Question 6 :

Concluez sur la qualite de la regulation, en simulant simultanement une variation


de pente et une variation de vitesse du vent.

Question 7 :

Question 8 :

On examine les consequences dune erreur de synth`ese du correcteur. En supposant


82

5.3. Correction `
a avance de phase

quon ait (`
a tort) choisi le param`etre Ti =

1
tel que i = 100dB , on aurait Ti = 0, 22s avec
i

0dB telle que |F T BO(0dB )|dB ] = 0dB.


Visualisez les consequences de ce choix malheureux avec sisotool sur le lieux de Black ainsi
que sur la reponse temporelle `
a un echelon.

5.3

Correction `
a avance de phase

Une alternative au correcteur proportionnel-integral qui annule les erreurs est daugmenter
le gain K pour les ramener `
a des valeurs acceptables. On ins`ere ensuite un correcteur `a avance
de phase pour restaurer la stabilite degradee par lajout de gain. Le correcteur utilise est donc
finalement

CaP h (p) = K

1 + p
1 + p

avec > 1

On rappelle quon avait determine K = 34, 7 pour limiter les erreurs `a des valeurs acceptables
et quun dimensionnement grossier avait conduit `a = 8, 4 et = 0, 34
Construisez dans votre schema Simulink le correcteur `
a avance de phase et testez-le
pour une entree en consigne et des entrees en perturbations.
Question 9 :

Affichez sur la meme figure les diagrammes de Black de la FTBO non corrigee,
corrigee avec un simple gain K et corrigee avec le correcteur `
a avance de phase. Visualisez
leffet de ce dernier.

Question 10 :

On souhaite encore diminuer les erreurs et on double a


` cet effet le gain K .
A laide de sisotool, determinez la degradation de la marge de phase et modifiez le reglage du
correcteur pour atteindre une marge de phase M = 60 .
Question 11 :

83


TDAO 5. Etude
dune automanette

84

TDAO

Estimation de position dun satellite par filtrage de Kalman

But de ce TD/TDAO :
Sur papier : vous faire ecrire la formulation dun filtre de Kalman dans le cas un cas
simple. En formulation continue, on se limite le plus souvent `a la solution stationnaire
(A savoir faire seul...). Le syst`eme etudie est ici dordre 1, ce qui permet facilement

de resoudre lequation de Riccati et obtenir le gain de lobservateur de Kalman non


stationnaire.
Sur ordinateur : simuler le mod`ele et son observateur et comprendre le comportement
du filtre de Kalman au travers de linfluence de la fiabilite des conditions initiales, du
niveau des bruits detat et de mesure.

Expos
e du probl`
eme

On modelise le corps dun satellite comme un cylindre daxe (O,


x ). On dispose dun gyrom`etre et dun capteur stellaire qui fournissent respectivement sa vitesse angulaire mes et sa
position mes dans un rep`ere fixe dans lespace.
Ces deux sources dinformation etant imparfaites, on souhaite les fusionner pour obtenir
lestimation de sa position angulaire qui minimise lerreur destimation.

Mod
elisation des d
efauts
La

La

vitesse delivree par le gyrom`etre est mes = + n avec


est la vitesse de rotation reelle du satellite.
n est un bruit blanc, gaussien, centre, de variance 2
position angulaire delivree par le capteur stellaire est mes = + n avec
est la position angulaire reelle du satellite.
n est un bruit blanc, gaussien, centre, de variance 2
85

TDAO 6. Estimation de position dun satellite par filtrage de Kalman

6.1

Formulation du filtre

Quels sont les etat, entree et sortie du syst`eme ? Ecrire son mod`ele sous forme de
representation detat en faisant bien apparatre les vecteurs contenant des elements dincertitude.
Identifier les matrices traditionnellement appelees A, B, C, D, Q, R

Question 1 :

On construit un filtre de Kalman charge de fournir une estimation de la position `a partir


de la vitesse mesuree u et de la position mesuree Y . On note = lerreur destimation
et P = E[T ] la covariance de lerreur destimation. On rappelle que par construction, le filtre
de Kalman est lobservateur qui minimise T r(P ) cest-`a-dire ici 2 . Autrement dit, cest la
meilleure estimation possible `
a laquelle on peut acceder etant donnee la qualite des informations
disponibles.
Rappeler les equations detat dun observateur et faire le schema fonctionnel du
syst`eme complet (Satellite - Observateur).

Question 2 :

Ecrire et resoudre lequation de Riccati verifiee par P . En deduire lexpression du


filtre de Kalman L(t).
On ecrira les constantes dintegration en fonction de P (0)

Question 3 :

On rappelle la methode de resolution dune equation de Riccati : poser P = y + P o`


u P est
une solution particuli`ere. On tombe sur une equation de Bernouilli du type y = a(t)y + b(t)y
pour laquelle on pose z = y 1 ce qui m`ene `a une equation lineaire du premier ordre en z que
lon doit savoir resoudre.
Indication : les solutions particuli`eres simples sont constantes. Il y a deux constantes de
signe opposes possibles. Comme on veut la solution positive, on partira avec la solution constante
positive

6.2

Simulation

Copier dans un repertoire local le repertoire fdK dans votre espace promotion. Executer le
programme initDonnees.m qui definit les variables utiles et ouvre le schema Simulink contenant
le mod`ele du satellite. Les defauts des capteurs sont caracterises par les variables definies. Dans
la pratique, on nest pas cense les connatre et il faut tout dabord essayer de quantifier ces
defauts.

Caract
erisation des capteurs au sol
On suppose disposer dinstallation dessais etalonnees avant le lancement du satellite. On
peut ainsi connatre les valeurs reelles de la vitesse et de la position ainsi que les celles delivrees
par les capteurs.
Enregistrer les erreurs de mesures de vitesse et de position sur un temps assez long
(de quelques milliers de secondes). En appliquant la definition de la covariance des bruits detat
et de mesure, retrouver les param`etres et qui permettront de regler le filtre de Kalman.
Question 4 :

86

6.2. Simulation
Trucs & Astuces Matlab
On rappelle que lon peut exporter les donnees dun objet Scope en cochant la case Save data
to Workspace dans longlet Data history de la fenetre de param`etres du Scope. On acc`ede `
a la
matrice des donnees en faisant nomVariable.signals.value
Trucs & Astuces Matlab
Utiliser la commande .* pour multiplier deux matrices de meme dimension terme `a terme
Trucs & Astuces Matlab
Utiliser la commande mean pour calculer la moyenne des termes dune matrice (consulter
laide)
Trucs & Astuces Matlab
On sera frequemment amene `
a calculer la covariance dun signal contenu dans un vecteur.
Cest loccasion decrire une fonction Matlab. Dans une page vierge de lediteur, la premi`ere
ligne active doit etre function Resultat = NomFonction(param`etres)
Attention, les variables ne sont a priori pas globales : dans une fonction on ne connait que
les variables passees en param`etre

Estimation de la position
On sait donc caracteriser les bruits des capteurs de notre satellite. On a d
u retrouver les
variances de bruits qui ont servi `
a construire les signaux et definis dans initDonnees.m
On suppose desormais le satellite dans lespace et on ne dispose plus des grandeurs reelles
de la vitesse et de la position pour estimer la position. Ces sorties ne nous serviront plus que de
reference pour evaluer les performances de nos estimateurs.
Integrer directement la vitesse de rotation. Comparer la position ainsi estimee et la
position reelle. Visualiser la difference, calculer la moyenne du carre des erreurs destimation (
ie la covariance derreur destimation statistique) et conclure sur la qualite de cette estimation.

Question 5 :

En labsence de toute mesure de position, on initialise arbitrairement la position estimee (Par


exemple 0 = 0).
Question 6 :

Construire le filtre de Kalman etudie dans la partie theorique.

Vous trouverez dans le fichier gainFdK.mdl un bloc Simulink dans lequel le calcul du gain du
filtre est dej`
a construit. Les trois derni`eres entrees sont les param`etres de reglage (utiliser des
constantes).
Pour lintegrateur du filtre, on prendra une valeur initiale externe.

Influence de la fiabilit
e de l
etat initial
Question 7 :

On suppose bien connatre les bruits detat et de mesure et on a regle le filtre en

consequence.
Faute de connaissance sur la position, on initialise arbitrairement la position initiale a
` 0 = 0.
On sait cependant que le satellite peut avoir une position initiale de lordre de 15 . Proposer un
87

TDAO 6. Estimation de position dun satellite par filtrage de Kalman


reglage de P0 et lancer une simulation avec ce reglage. Calculer la covariance derreur statistique
et observer les evolutions de P (t) et L(t).
Plut
ot quinitialiser arbitrairement `
a 0, on utilise la mesure delivree par le capteur
de position `
a t = 0. On a 0 = mes0 = 5 . Que peut-on dire de la fiabilite de cette initialisation ?
Comment faut-il alors modifier le reglage P0 ?
Refaire une simulation avec la bonne initialisation et le nouveau reglage de P0 .
Relever les memes elements que dans la question 7. Commenter.

Question 8 :

Influence des bruits d


etat et de mesure
Dapr`es les expressions analytiques de la premi`ere partie, donner les valeurs stationnaires de P et L en fonction des param`etres de reglage. Commenter.
Question 9 :

On gardera desormais linitialisation 0 = 5 et la covariance derreur destimation initiale


egale `a celle determinee `
a la question 8.
Degrader la qualite de linformation de vitesse. Adapter le reglage du filtre et refaire
une simulation dans ces conditions. Relever et exploiter les memes donnees que precedemment.

Question 10 :

La variance du bruit sur la vitesse est calculee dans InitDonnees.m `a partir de lerreur maximale (Definition `a 3). Cest cette valeur quil convient de modifier. Il ny a pas dautres modifications `a faire si les reglages du filtre sont specifies en utilisant les variables du probl`eme
(varWSat et varTSat).
Degrader dans la meme proportion la qualite de linformation de position. Adapter
le reglage du filtre et refaire une simulation dans ces conditions. Relever et exploiter les memes
donnees que precedemment.

Question 11 :

88

TDAO

Commande dun quadrirotor

Pendant cette seance de TD assiste par ordinateur, on vous propose de dimensionner une
loi de commande pour laxe de tangage du quadrirotor etudie lors des seances de TD1 et de

TDAO1. A cette occasion, on a etabli lexpression de la fonction de transfert qui lie (s),
les
1

+
3

e
2k2
I T s2

(s)

Figure 7.1 Shema fonctionnel du quadrirotor pour laxe de tangage

(s)
variations de lassiette autour de sa position dequilibre (ici zero), au moment de tangage M
resultant du differentiel de vitesse de rotation des helices 1 et 3. Soit :

(s)
1
=

IT s2
M (s)
avec


1
3 e
(s) = 2k2
M

On a dautre part etabli que pour un angle dassiette initial nul :

q(s) = s(s)
1 et
3 sont les commandes du
Ainsi, dans letat, et comme cela est illustre sur la figure,
(s)
quadrirotor. Comme on vient de le rappeler, ces derni`eres produisent le moment de tangage M
mais aussi les variations de poussee T. Cependant, si lon dispose dune radiocommande (RC),
il est plus judicieux dassocier une voie `a la commande des gaz T et une voie `a la commande
89

TDAO 7. Commande dun quadrirotor


de laxe de tangage m plut
ot qu`
a la commande de chacune des helices (1 et 3). On est alors
amene `a definir ces deux signaux de commande comme suit :

1
3
m =
1 +
3
T =

Question 1 : Modifiez le sch


ema fonctionnel de la figure 1 pour faire apparatre les entrees de
commande m et T .

1 et
3 proc`edent de la rotation de moteurs `a courants continus asservis en
Pratiquement,
vitesse. Ces asservissements ont les caracteristiques suivantes :
La boucle dasservissement en vitesse est beaucoup plus rapide que les autres soussyst`emes constitutifs du quadrirotor.
Le gain statique de cet boucle dasservissement est unitaire.
Sur le shema fonctionnel, indiquez o`
u figurent les sous-syst`emes moteurs asservis
en vitesse et definissez leur fonction de transfert.
Question 2 :

Dans la question qui suit, vous allez utiliser la fonction sisotool dediee, dans le cas de syst`emes asservis mono-entree, mono-sortie, `
a la synth`ese de correcteurs dans le domaine frequentiel
(Bode, Black-Nichols) ou `
a laide du lieu dEvans (root locus). Cette fonction autorise egalement
levaluation des performances des lois de commande synthetisees dans le domaine temporel.
Question 3 :

(s)
.
m (s) T =0
Le quadrirotor vole en stationnaire, comment interpretez-vous physiquement T = 0 ?
On donne IT = 6e3 kg.m2 , e = 225rad.s1 , k2 = 6.573e6. Saisissez cette fonction de
transfert sous MATLAB.
Calculez la fonction de transfert en boucle ouverte

Trucs & Astuces Matlab


Pour saisir une fonction de transfert, utilisez la fonction tf dont la syntaxe est sys = tf([ coefs
num], [ coefs den])
Pour le calcul de la loi de commande, on utilise la macro-fonction sisotool.
Trucs & Astuces Matlab
Utilisation de sisotool :
se lance en executant sisotool dans la fenetre de commande ou un fichier en .m
une fenetre souvre dns laquelle apparat le bouton control architecture, cliquez et choisissez un type de structure de syst`eme asservi. On peut egalement changer le signe de la
boucle de retour.
cliquez sur system data pour importer les fonctions de transfert des sous-syst`emes que
vous allouerez eu egard `
a la structure retenue. Pour le moment, le correcteur nest pas
defini, vous laisserez donc C = 1.
90

depuis la fenetre de sisotool, cliquez sur longlet graphical tuning et dans les menus deroulants, selectionnez les types de representation avec lesquels vous souhaitez synthetiser la
loi de commande. Par exemple nichols pour le trace du lieu de Black de la boucle ouverte,
puis cliquez sur le bouton show design plot.
depuis la fenetre de sisotool, cliquez sur longlet compensator editor o`
u vous pourrez modifier les param`etres du correcteur.
enfin, en retournant sur la fenetre de sisotool, cliquez sur longlet analysis plot pour le
trace de la reponse aux signaux types. Il est possible de tracer les reponses aux differentes
entrees : consigne, perturbation, bruit de mesure. Dans le cas present, on se contentera
dune reponse indicielle `
a la consigne (closed loop r to y). Cliquez sur le bouton show
analysis plot pour visuliser les resultats.
Avec sisotool, visualisez le lieu de Black-Nichols de la fonction de transfert non
corrigee puis, pour chacune des strategies de commande suivantes ebauchez le lieu de BlackNichols de la fonction de transfert corrigee et dites si le correcteur etudie permettrait de contr
oler
le quadrirotor.
proportionnel
proportionnel integral
proportionnel derive
`
a avance de phase

Question 4 :

On desire conferer `
a ce quadrirotor, pour la commande de laxe de tangage en boucle fermee,
un comportement du type de celui dun syst`eme du second ordre dominant avec un facteur
damortissement egal `
a 0, 707. Pour ce faire, le lieu de Black de la boucle ouverte corrigee doit
tangenter lisogain 0dB (ce qui traduit le fait que le facteur de surtension en boucle fermee est
nul, ce qui revient `
a dire que le facteur damortissement vaut 0, 707). A priori, le correcteur le
mieux adapte serait le correcteur `
a avance de phase dont on rappelle que la fonction de transfert
a pour expression :
s + 1
CAP (s) = k
s + 1
et dont le diagramme de Bode est represente sur la figure

Figure 7.2 Diagramme de Bode du correcteur `a avance de phase

91

TDAO 7. Commande dun quadrirotor


Question 5 :

Dapr`es le lieu de Black de la FTBO non corrigee et les abaques du correcteur a


` avance
(CAP) de phase jointes, definissez la valeur de qui conf`ere lavance de phase suffisante
au contournement de lisogain 0dB
Calculez la valeur de la constante de temps pour laquelle se produit lavance de phase
maximale. Pour ce calcul, vous devez tenir compte de lincrement de gain apporte par le
correcteur.
le gain k sera regle au moyen de sisotool.
Saisissez sous Matlab la fonction de transfert de ce correcteur , tracez avec sisotool
le lieu de Black de la FTBO corrigee et la reponse indicielle. Eventuellement, affinez les reglages
en utilisant le trace du lieu des racines (root locus) et critiquez les performances obtenues.

Question 6 :

Sous SIMULINK, ouvrez le fichier Model quadrotor1.mdl. Ouvrez le fichier Model quadrotor.mdl et completez-le avec le sous-syst`eme generant la force de poussee et les moments
produits par les helices. Il peut
etre n
ecessaire de recompiler lun des fichiers constitutifs de ce sch
ema, pour cela suivez la proc
edure indiqu
ee dans le fichier LisezMoi.txt
archiv
e dans le dossier Fichiers Matlab/TDAO6. Ce mod`ele, dit de simulation, se veut
realiste, il tient notamment compte des effets nonlineaires dus aux helices. Implementez sur ce
mod`ele la commande de laxe de tangage obtenue avec le mod`ele lineaire et testez-la.
Question 7 :

Il est possible daccrotre les performances de lasservissement en tangage en mettant en


uvre un retour tachymetrique de gain a. Pour ce faire, on admet que le quadrirotor est equipe
dun gyrom`etre qui mesure les variations de tangage q(t). La structure de la loi de commande
proposee est representee sur la figure.
c +
-

qc (s)
C +
-

0.493 q(s)
s

1
s

(s)

Figure 7.3 Schema fonctionnel de la commande de laxe de tangage avec retour tachymetrique

Question 8 :

Calculez

q(s)
et mettez cette fonction de transfert sous la forme
qc (s)
G
q(s)
=
qc (s)
Ts + 1

(s)
et montrez quun correcteur proportionnel de gain C permet de
c (s)
conferer au quadrirotor un comportement du type de celui dun second ordre dont le reglage de
la pulsation propre est defini pr C et celui du facteur damortissement reduit est defini par a.

Question 9 :

Calculez

92

Utilisez sisotool pour mettre en evidence les effets de ces reglages sur la FTBO
corrigee, le lieu des p
oles et la reponse indicielle.
Question 10 :

Question 11 : Justifiez qualitativement que le retour tachym


etrique permet de mieux amortir le
comportement du quadrirotor.
Question 12 :

Implementez ce correcteur sur le mod`ele de simulation du quadrirotor.

93

TDAO 7. Commande dun quadrirotor

94

TDAO

Etude
dun moteur brushless

Lors de cette seance de TP, vous allez successivement etudier les caracteristiques statiques
et dynamiques dun moteur brushless puis mettrez en uvre une loi de commande visant `
a
accotre ses performances. Le moteur etudie entraine les helices de lhexacopter (aeronef `a voilure
tournante equipe de six rotors) represente sur la figure 8.1.

Figure 8.1 Lhexacopt`ere

8.1

Relev
e de la caract
eristique statique

Sous EEEet depuis le dossier Automatique localise dans votre espace de promotion,
copiez sous D : \mon nom le fichier brushless.mdl. Ce mod`ele du moteur est un mod`ele de
simulation.
Appliquez `
a lentree de commande N un signal constant dont vous ferez varier successivement
la valeur entre 0 et 250 par pas de 25. Comme on sinteresse au regime statique, vous rel`everez
la valeur de la vitesse en regime permanent.
Question 1 :

95


TDAO 8. Etude
dun moteur brushless
Relever les valeurs de N et de dans un tableau et visualiser la caracteristique statique
Trucs & Astuces Matlab
On peut afficher la valeur numerique dun signal en utilisant le bloc display dans la biblioth`eque Sinks de SIMULINK.
Trucs & Astuces Matlab
Un tableau est en fait une matrice. Si lon nomme M cette matrice, on acc`ede `a sa premi`ere
colonne en tapant et executant M( :,1), `
a la deuxi`eme en tapant et executant M( :,2), `a la
premi`ere ligne en tapant et executant M(1, :), etc. La fonction plot(M( :,1),M( :,2)) affiche en
coordonnees cartesiennes sur laxe des abcisses les points de la premi`ere colonne de M, sur laxe
des ordonees les points de la deuxi`eme colonne de M.
La poussee produite par une helice est liee `a la vitesse de rotation dune helice par la relation :
T = b 2 . Pour lhelice etudiee, b = 1.416 105 N s2 , par ailleurs, la masse m de lhexacopt`ere
est egale `a 1.5kg.
Le vol stationnaire correspond `
a une situation dequilibre. Calculez la vitesse dequilibre dun moteur et porter sur la caracteristique statique le point dequilibre {Ne , e }.

Question 2 :

Trucs & Astuces Matlab


Sur une meme figure, vous pouvez superposez plusieurs traces en executant prealablement
la fonction hold on.
Trucs & Astuces Matlab
Pour tracer un point de coordonnees (x, y), repere par une croix, taper et executer plot(x,y,+).
Question 3 :

8.2

Que represente la tangente au point dequilibre ?

Caract
eristique dynamique

Appliquer `
a lentree du moteur brushless une commande N = Ne , ajouter a
` ce
1
signal un echelon damplitue egale `
a environ 10% de Ne et relever la reponse indicielle .

Question 4 :

1. Il nest pas possible de faire le releve des coordonnees dun point sur le Scope. On peut toutefois imprimer
ces courbes sur une figure en suivant cette procedure :
1. double-cliquez sur le scope qui affiche le signal que vous voulez traiter,
2. cliquez sur lic
one Parameters onglet History
3. decochez la case Limit data point to last
4. cochez la case Save data to workspace
5. donnez un nom explicite `
a la variable, par exemple out et choisissez le format Array, validez
6. relancez la simulation
7. out est un tableau accessible depuis le Command Window dont la premi`ere colonne est le temps,

96

8.3. Correction
Identifier cette reponse en utilisant la methode de Broida decrite dans la derni`ere
partie du sujet. Attention `
a ce que le Step Time de lechelon soit regle a
` zero.

Question 5 :

La reponse indicielle met en evidence la presence dun retard. La fonction de transfert dun
retard est ecrite au moyen de lapproximation de Pade (cf. Annexe C.2 du livre de cours), on
montre que
1 R2 p
eRp
R
1+ p
2
.
Reecrire lexpression de la fonction de transfert du moteur en utilisant lapproximation de Pade. Cette fonction de transfert est le mod`ele de synth`ese du moteur.
Calculer les p
oles et les zeros de cette fonction de transfert.
Quelle est la classe du moteur ?

Question 6 :

8.3

Correction

Le moteur et sa carte de contr


ole sont implementes dans une boucle dasservissement `
a retour unitaire. Le signal de commande N est genere par un correcteur a
` partir du signal
derreur. Representer sous SIMULINK le schema fonctionnel de cette boucle dasservissement.
Question 7 :

Trucs & Astuces Matlab


Pour copier un mod`ele represente sous SIMULINK dans Word, Edit Copy Model to Clipboard clic-droit Paste.
Saisir la fonction de transfert du moteur brushless sous MATLAB, au moyen de
sisotool vous synthetiserez un correcteur qui conf`ere `
a ce moteur les performances suivantes :
erreur de position nulle,
depassement 5%,
on ne cherche pas necessairement `
a ameliorer la rapidite, en effet, le contr
oleur qui pilote
le moteur nest pas reversible en courant et il nest pas possible daccrotre la rapidite lors
des phases de deceleration
Vous effectuerez le reglage de ce correcteur dans Black en utilisant les abaques de Nichols. Il est
imperatif que vous commentiez la demarche suivie. Pour vous aider et au vu des specifications
demandees, vous pouvez, pour trouver et regler ce correcteur, repondre a
` ces questions :
Quel type deffet correcteur faut-il necessairement introduire pour tenir la specification
sur la precision ?
Que vaut le gain statique en boucle fermee si lerreur de position est nulle ?
Comment traduire un depassement 5% en terme de facteur damortissement ?
Un syst`eme qui poss`ede un tel facteur damortissement est-il resonant.
Question 8 :

les colonnes suivantes sont les valeurs prises par les signaux appliques au Scope. La commande
plot(out( :,1),out( :,2)) permet dafficher le premier signal.

97


TDAO 8. Etude
dun moteur brushless
Pourquoi le lieu de Black de la boucle ouverte du syst`eme ainsi corrige doit-il tangenter
lisogain 0dB ?
Implementer la commande synthetisee sous sisotool sur le mod`ele de simulation.
Appliquer un echelon de consigne ayant pour valeur initiale la vitesse dequilibre e et
pour valeur finale un increment egal a
` 10% de cette valeur.
Relever les signaux suivants : erreur, commande, vitesse.
Commenter les resultats obtenus.

Question 9 :

8.4

M
ethode de Broda

Le mod`ele propose par Broda pour la reponse `a un echelon damplitude e0 dun syst`eme de
la forme de celle presentee sur la figure 8.2 secrit :
S(p)
KeRp
=
U (p)
p + 1

Rponse indicielle un chelon unitaire

0.6

0.5

s()

Amplitude

0.4

0.3

s(t2)=40% de s()
0.2

s(t1) = 28% de s()

0.1

0.1

Temps6(sec)

10

Figure 8.2 Reponse dun syst`eme `a identifier avec la methode de Broida

98

12

8.4. M
ethode de Broda
o`
u

s()
,
e0
la constante de temps = 5.5(t2 t1 ),
le retard R = 2.8t1 1.8t2 .
le gain statique K =

99


TDAO 8. Etude
dun moteur brushless

100

TDAO

Tenue daltitude dun quadrirotor

Au cours de cette seance de TDAO, vous mettrez en uvre une strategie de commande visant
`a controler laltitude du quadrirotor represente sur la figure 9.1.

motor 1 + propeller 1
1

motor 2+propeller 2

~xb

~yb

motor 3+ propeller 3

Figure 9.1 A gauche, vue shematique dun quadrirotor. A droite, le U130 de Novadem

La structure de ce quadrirotor est supposee rigide, de masse m constante et le centre de

gravite est fixe. Soit RE = (O,


x
ere inertiel orthonorme dont lorigine est le
E , yE , zE ), un rep`

point de decollage, o`
u xE pointe vers le nord, yE vers lest et
z
E pointe en direction de la terre.
RE

T
Le vecteur
= (x, y, z) rep`ere la position du centre de gravite du drone dans RE . Soit

Rb = (c.g.,
xb ,
yb ,
zb ) un rep`ere orthonorme direct lie au vehicule et partiellement represente sur
la figure 9.1. Les angles de gte , dassiette et le cap decrivent lorientation de Rb /Re .
Ce quadrirotor poss`ede :
une entree de commande pour le controle de la poussee T . Celle-ci est obtenue en commandant simultanement les vitesses de rotation i des helices avec i {1..4}
T = k1 (21 + 22 + 23 + 24 )
o`
u k1 designe le coefficient de poussee des helices.
101

TDAO 9. Tenue daltitude dun quadrirotor


une centrale dattitude pour les mesures de et , un capteur barometrique pour la
mesure de laltitude h = z.
Les equations du mouvement pour letude de la tenue daltitude secrivent :
z = vz
k1 (21 + 22 + 23 + 24 )
coscos
m
La seconde equation est non lineaire et les formalismes presentes en cours ne permettent
pas a priori detudier une commande pour ce syst`eme. Pour aller un peu plus loin, on propose
detudier une methode de commande non lineaire dite dinversion dynamique.
v z = g

9.1

Inversion dynamique

La methode dinversion dynamique consiste `a appliquer au syst`eme une commande qui linearise le syst`eme en lui conferant la fonction de transfert dun integrateur pur. Soit le syst`eme
decrit par :
x = f (x) + g(x)u

(9.1)

Si on lui applique la commande :


u = g(x)1 (x f (x))

(9.2)

et quon impose `a x dans u de suivre un profil desire x des , alors en remplacant (9.2) dans (9.1),
il vient :
x = x des

(9.3)

et le syst`eme ainsi commande se comporte comme un integrateur pur 1 .


Pour cette question, on suppose que les quatre helices developpent la meme poussee
a lequation de v z et
= 23 = 24 . Appliquez la methode dinversion dynamique `
=
i.e.
donnez lexpression de la vitesse de rotation des helices.
Question 1 :

21

22

Question 2 :

Avec cette commande, `


a quelles equations simples se ram`ene le syst`eme ?

Etablissez dans ces conditions la fonction de transfert qui lie la nouvelle entree v zdes
` z. Ce syst`eme est-il stable ?
a
Question 3 :

Dans lespace de votre promotion sur le site EEE, copiez le repertoire Fichiers Matlab, decompressezle dans le repertoire D : \mon nom. Positionnez le chemin de Matlab sous le repertoire tdao9
puis ouvrez et executez le fichier quadri.mdl qui ouvre la fenetre SIMULINK contenant le schema
du syst`eme.
Sur le schema SIMULINK, implementez la loi de commande non lineaire trouvee a
`
la question 1. Vous trouverez toutes les fonctions utiles dans les biblioth`eque Math Operations
et Sources. La masse m = 1.5kg et le coefficient de poussee dune helice k1 = 1, 416.105 .
Question 4 :

1. Cette methode suppose le mod`ele du syst`eme parfaitement identifie, elle est donc peu robuste du fait des
incertitudes pouvant affecter les param`etres du mod`ele.

102

9.2. Boucle dasservissement pour la tenue daltitude


(p)

zc (p) +

v zdes (p) quadrirotor z(p)


+
IDNL

C(p)

Figure 9.2 La boucle dasservissement daltitude

9.2

Boucle dasservissement pour la tenue daltitude

Le quadrirotor, muni de la commande calculee precedemment se comporte desormais comme


un syst`eme lineaire mais il necessite une correction. Dans ce qui suit, les strategies de commande
etudiees en cours peuvent etre mises en uvre. On etudiera une strategie de commande basee
sur la poursuite dun mod`ele de reference et une strategie de commande basee sur un reglage de
performances dans le domaine frequentiel. Le syst`eme decrit par la fonction de transfert trouvee
`a la question 3 est insere dans une boucle dasservissement decrite sur la figure 9.2. La nouvelle
entree de commande du syst`eme est v zdes et il convient de determiner le correcteur C(p) tel que
V zdes (p) = C(p)(p) o`
u (p) = z(p) zc (p).

Poursuite dun mod`


ele de r
ef
erence
Calculez les param`etres du correcteur proportionnel-derive qui conf`ere a
` la boucle
fermee le comportement dun syst`eme de fonction de transfert ayant le meme denominateur que :

Question 5 :

F T BF (p) =

1
z(p)
= 2
zc (p)
p + 2p + 1

.
Ce correcteur netant pas realisable (le degre du numerateur est superieur a
` celui
K(T p + 1)
du denominateur), vous en implementerez une version modifiee. Soit C(p) =
(ce
0.05T p + 1
qui revient `
a implementer un correcteur `
a avance de phase). Implementez ce correcteur sur le
schema SIMULINK prealablement muni de sa commande nonlineaire. Simulez-le en reponse au
un signal defini par :
zc (t) = 0.5tU (t) pour t < 5s,
zc (t) = 2.5U (t) pour t 5s
Les erreurs de trainage et de position observees sont-elles conformes a
` la theorie ?

Question 6 :

Synth`
ese dune commande dans le domaine fr
equentiel
Le correcteur est cette fois synthetise dans le domaine frequentiel en exploitant le lieu de
Black-Nichols de la FTBO. Il sagit de determiner un correcteur qui conf`ere `a ce lieu le profil
desire.
103

TDAO 9. Tenue daltitude dun quadrirotor


Saisissez sous MATLAB la fonction de transfert trouvee `
a la question 3. Executez
sisotool et visualisez labaque de Nichols de cette fonction de transfert.
Montrez quun correcteur `
a avance de phase peut permettre de stabiliser la boucle dasservissement daltitude. Synthetisez ce correcteur de sorte que le lieu de Nichols de la fonction de
transfert en boucle ouverte corrigee tangente, au voisinage du point critique, lisogain 1dB. Toujours sous sisotool observez la reponse indicielle corrigee (menu Analysis Plot).
Question 7 :

Question 8 : Impl
ementez ce correcteur proportionnel-derive sur le schema SIMULINK prealablement muni de sa commande nonlineaire et simulez-le. Vous le soumettrez aux memes signaux
de consigne que ceux de la question 6.

104

TDAO

10

Commande par retour detat de la dynamique laterale dun airliner

Dans ce bureau detudes, on cherche `a controler un airliner autour de ses axes de roulis et de
lacet. Le mod`ele de lappareil est celui etudie au chapitre 5 du cours. Dans une premi`ere partie,
vous mettrez en evidence les modes propres de laeronef et les effets de chacune des commandes
sur ces modes. Dans un second temps, vous dimensionnerez une commande par retour detat avec
strategie de placement de poles et de vecteurs propres. Cette loi de commande sera dimensionnee
en vue de decoupler les axes de roulis et de lacet par le controle de la gouverne de direction et
les ailerons. Enfin, dans le cas o`
u, seule une partie du vecteur detat est mesuree, vous mettrez
en uvre une commande par retour de sortie dont vous evaluerez les limites.
Sous MATLAB, vous ecrirez un script pour chacune des parties. En aucun cas vous ne devez
coder dans la fenetre dedition des commandes.

10.1

Mod
elisation et Lin
earisation

Les equations laterales de la mecanique du vol dun avion evoluant `a vitesse et altitude
constantes, `
a pente nulle et `
a tr`es faible incidence e sont donnees dans (10.1). Les vecteurs



T
u est langle de derapage, p la
et de commande U = n o`
detat X = r p
vitesse de roulis, r la vitesse de lacet, langle de gte, n langle de braquage de la gouverne de
direction et langle de braquage des ailerons.
= 11 + 12 r + 13 p + 14 sin + 15 n + 16

(10.1)

r = 21 + 22 r + 23 p + 24 sin + 25 n + 26
p = 31 + 32 r + 33 p + 34 sin + 35 n + 36
= p + tan e (r cos + qe sin )
Dans le cas o`
u lon suppose de petites variations x,u, de ces variables autour
de lequilibre defini par Xe = 0 et Ue = 0, linearisez les equations (10.1) et etablissez les

Question 1 :

105

TDAO 10. Commande par retour d


etat de la dynamique lat
erale dun airliner
expressions des matrices detat et de commande.

10.2

Analyse Modale

Les resultats mis en evidence dans cette partie sont ceux qui ont ete entrevus aux chapitre
5 du cours. Le syst`eme est decrit par lequation detat (10.2) :

x = Ax + Bu

(10.2)

avec, dans le cas dun Boeing 747 evoluant `a Mach 0.8 et 40000 pieds :

.0558 .9968 .0802 .0415


.00729
0
.598
0.475 0.00775
.115 .0318
0

A=
B
=

3.05
0.153
.388
.4650
0
0.143
0
0.0805
1
0
0
0

(10.3)

T

Tout le vecteur detat est mesure y = m rm pm m . Ces mesures sont parfaites, ce
qui signifie que la mesure est `
a tout instant egale `a la grandeur physique afferente. Pratiquement
ces mesures sont obtenues au moyen dune sonde de derapage, de gyrom`etres et dun gyroscope
de verticale.
Question 2 :

Saisir sous MATLAB cette representation detat fonction ss.

Calculer les valeurs propres et la matrice des vecteurs propres de la matrice detat
fonction eig.

Question 3 :

Identifier les modes et caracterisez-les. Soit par leur constante de temps, soit
par leur pulsation propre non amortie et leur facteur damortissement reduit. Quelle critique
porteriez-vous sur le comportement de cet avion ?

Question 4 :

Les coefficients de la matrice des vecteurs propres prennent leurs valeurs dans C.
Calculer le module de ces coefficients avec la fonction abs et justifier le fait que les axes de
roulis et de lacet sont couples.
Question 5 :

Au moyen de la fonction initial ou avec ltiview, tracer la reponse du vecteur



T
detat aux condition initiales x(0) = 0 0 0 20
.
180
Sur les chronogrammes, mettez en evidence le mode du premier ordre lent et le mode du second
ordre.
Question 6 :

cette matrice. Les


Calculer la matrice de commande dans la base modale, soit B
coefficients de cette derni`ere prennent leur valeur dans C. Calculez les modules de ces coefficients
et dites :
Si lavion est commandable.
Pour chacun des modes, quelle est la commande qui le contr
ole le plus efficacement ?

Question 7 :

106

10.3. Commande par retour d


etat avec placement des vecteurs propres
Les conditions requises pour la mise en uvre dune commande par retour detat
sont-elles etablies ?

Question 8 :

10.3

Commande par retour d


etat avec placement des vecteurs
propres

Lappareil etudie presente une dynamique du second ordre mal amortie et lune de ses dynamiques du premier ordre est trop lente. Pour controler ces dynamiques, on met en uvre une
commande par retour detat de la forme :

u = He Kx

(10.4)

Dans cette partie, on envisage une commande par placement de poles et de vecteurs propres.
Linteret de cette approche reside dans la possibilite de decoupler les dynamiques des axes
de roulis de celles de lacet. Reportez-vous au 3.3.3 du chapitre 6 du livre de cours pour les
developpements theoriques.
Les modes desires pour lavion corrige :
On souhaite que le mode dordre deux soit plus rapide et mieux amorti.
le pole du mode dordre un le plus lent reste inchange,
le pole du mode dordre un le plus rapide doit etre `a lorigine dun regime transitoire
inferieur ou egal `
a une trois secondes.
le mode dordre deux doit etre decouple du roulis p,
le mode dordre un le plus rapide doit etre decouple du derapage
le mode dordre un le plus lent doit etre decouple du lacet r
Question 9 : Au moyen des
equations (10.2) et (10.4), etablissez lexpression litterale de la
representation detat du syst`eme corrige.

Calcul de la matrice de contre-r


eaction K
Question 10 :

Saisissez-les p
oles de lavion corrige sous MATLAB dans un vecteur appele poles.

Trucs & Astuces Matlab


On acc`ede au ie p
ole i en editant la commande poles(i).
Les vecteurs de contraintes r`eglent les decouplages des variables detat et de
commande vis-`
a-vis des modes. Comme il y a m = 2 commandes, on ne peut definir quun
vecteur de contrainte par p
ole. Au vu des informations qui prec`edent, definissez et saisissez sous
MATLAB les quatre vecteurs de contraintes ci avec i [1..4] de dimension 6.

Question 11 :

Question 12 :

Pour chaque p
oles (valeur propre i ), calculez le noyau de lapplication lineaire
107

TDAO 10. Commande par retour d


etat de la dynamique lat
erale dun airliner
fonction null :
A i In B
ci

(10.5)

Vous stockerez le resultat de ce calcul dans un vecteur vwi et vous verifierez que ce vecteur
a la structure desiree.
`
Trucs & Astuces Matlab
La matrice identite fonction
eye
!
A11 A12
secrit sous MATLAB [A11 ,A12 ;A2 ]
La matrice
A2
Pour acceder au n premi`eres composantes du vecteur vwi vi = vwi (1 : n)
Pour acceder au m derni`eres composantes du vecteur vwi wi = vwi (n + 1 : n + m)
Vous construirez les matrices de passage P et de sensibilite des commandes aux
modes W en concatenant les vecteurs vi et les vecteurs wi avec i [1..4].
Question 13 :

Calculez la matrice de contre-reaction K et verifier que lensemble des valeurs propres spe(A
BK) est celui attendu.

Calcul de la matrice H


Comme on dispose de deux commandes, on peut controler deux variables. Soit T =
le vecteur des variables controlees.
Question 14 :

Ecrire
lequation des variables contr
olees sous la forme = Mx.

Quelle doit etre la dimension de la matrice de pre-gain H ? Calculer numeriquement le(les) coefficient(s) de cette matrice, de sorte quen regime permanent les sorties contr
olees
soient egales aux consignes e.

Question 15 :

Simulation
Ouvrez et executez le fichier ModelBoeing747.m. Lancez la simulation pour verifier son bon
fonctionnement.
Sur ce mod`ele, implementez et testez la commande par retour detat (10.4) avec
les valeurs de K et H calculees precedemment. Observez toutes les sorties et verifiez que les
decouplages sont effectifs. Vous trouverez les blocs utiles dans les biblioth`eques suivantes :
gain (Parametrez les matrices avec loption Multiplication Matrix(K*u)), add Maths
mux Signal Routing
step Sources
scope Scope

Question 16 :

108

10.4. Commande par retour de sortie

10.4

Commande par retour de sortie

Dans cette derni`ere partie, on suppose que le derapage nest pas mesure. On cherche cependant `
a mettre en uvre une loi de commande dite par retour de sortie. Cependant, comme
trois variables detat sont mesurees, on ne pourra contr
oler que trois des quatre poles caracteristiques de la dynamique laterale. Il est conseille de sappuyer sur le cours pour synthetiser cette
commande.
Dans le cas o`
u seules les variables detat r, p et sont mesurees, donnez lexpression numerique de la matrice de sortie X telle que :
Question 17 :

y = Cx

(10.6)

` partir de lequation detat (10.2), de lequation de sortie (10.6) et de celle de


A
la commande (10.7), etablissez lequation de la commande par retour de sortie et lexpression de
la matrice detat corrigee.
Question 18 :

u = He Ky

(10.7)

Les objectifs de la commande restent les memes que ceux definis dans la section precedente.
Toutefois, comme on ne dispose que de trois mesures, on ne peut placer que trois poles.
Les poles desires pour lavion corrige 1 :
On souhaite que les poles complexes conjugues valent 1 i,
le pole du mode dordre un le plus lent reste inchange,
on ne place pas le pole dordre un le plus rapide.
le mode dordre deux doit etre decouple de la commande des ailerons ,
le mode dordre un le plus lent doit etre decouple de la commande des ailerons n
Pour chaque p
oles (valeur propre i avec i [1..3]),
Calculez le noyau de lapplication lineaire :
!
A i In B
ci

Question 19 :

(10.8)

en vue dobtenir les vi et les wi = KCvi .


Construisez ensuite les matrices de passage V R43 et W R23 ,
calculez la matrice de contre-reaction K,
calculez les p
oles de la matrice detat corrige. Que constatez-vous ?
dans le calcul, choisissez les p
oles dordre deux egaux a
` {0.5 0.5i}.

Ces simulations montrent quun retour de sortie est possible `a la seule condition de degrader
les dynamiques, ici le temps de reponse du mode dordre deux. Dans les cours qui suivent, nous
1. Ces reglages diff`erent des precedents, il na en effet pas ete possible de trouver un reglage du syst`eme stable
par retour de sortie avec le cahier des charges propose `
a la section precedente

109

TDAO 10. Commande par retour d


etat de la dynamique lat
erale dun airliner
mettrons en uvre des observateurs. Ces syst`emes dynamiques estiment les variables detat que
lon ne mesure pas. Il est alors possible de realiser une commande, non `a partir des variables
detat mesurees mais `
a partir du vecteur detat estime.

110

TDAO

11

Observateur deterministe : application `a lestimation de cap

Dans ce probl`eme, on met en uvre un observateur pour realiser lestimation de la mesure


du cap magnetique dun robot mobile. Les angles et les vecteurs utilises sont representes sur
la figure 11.1. Pratiquement, on cherche `a definir lorientation du tri`edre mobile (o, xb , yb , zb )
autour de son origine par rapport `
a un rep`ere fixe (o, x, y, z). Le vecteur x est dirige vers le Nord
magnetique. Pour cela, on utilise les capteurs suivants :
un gyrom`etre porte par laxe de lacet zb qui mesure la vitesse de lacet r, soit rm cette
mesure.
un magnetom`etre porte par laxe de roulis xb qui mesure le champ magnetique terrestre
selon xb , soit magx cette mesure,
un magnetom`etre porte par laxe de tangage yb qui mesure le champ magnetique terrestre
selon xb , soit magy cette mesure,
Pour cette etude, on ne consid`ere que les mouvements de rotation autour de z = zb La
centrale dattitude MTI de la marque XSENS http://www.xsens.com/ realise la fonction destimation dattitude et en particulier celle du cap magnetique .

xb
yb

o
z=zb

z=yb
Figure 11.1 Les rep`eres et la centrale MTI de XSENS

111

TDAO 11. Observateur d


eterministe : application `
a lestimation de cap

11.1

`
MODELES

L
equation d
etat
La cinematique de rotation est decrite par :
= r

(11.1)

Cependant, la mesure de la vitesse de lacet comporte une erreur systematique b constante, de


sorte que :
rm = r + b

(11.2)

Pratiquement, on calcule une estimation du cap au moyen de la vitesse mesuree rm . Dans


ces conditions, rm jou le r
ole dentree du syst`eme alors que b et sont des variables detat.

Ecrivez
les lequation detat de b et de . Vous ferez explicitement apparatre les
matrices detat A et de commande B.
Question 1 :

Proposez une representation detat `


a temps discret approchee pour ce mod`ele. On
adoptera pour periode dechantillonnage T = 10ms.

Question 2 :

Ouvrez le mod`ele SIMULINK estimateur cap.mdl et realisez lequation detat a


`
temps discret. Attention `
a renseigner pour chaque bloc le champ Sample Time avec la valeur T.
Les blocs utiles dans les biblioth`eques suivantes :
gain (Parametrez les matrices avec loption Multiplication Matrix(K*u)), add Maths
delay Discrete
mux Signal Routing
step Sources
scope Sinks

Question 3 :

L
equation dobservation

Etablissez
les equations qui permettent dobtenir une mesure m du cap a
` partir
des mesures magx et magy delivrees par les magnetom`etres. Le champ magnetique terrestre est
dirige selon x et a une intensite de B0 = 47T .

Question 4 :

On suppose desormais que m est la mesure du cap. Etablissez


lexpression de
lequation dobservation, en particulier lexpression de la matrice de sortie C.

Question 5 :

Question 6 :

Realisez cette mesure du cap m sous SIMULINK sur estimateur cap.mdl.

Trucs & Astuces Matlab


Pour obtenir une valeur du cap m `
a partir des mesures issues des magnetom`etres dans les
quatre cadrans du cercle trigonometrique, utiliser la fonction atan2.
112

11.2. OBSERVATEUR

11.2

OBSERVATEUR

Etablissez
lobservabilite du syst`eme decrit par les equations detat et dobservation
etablies dans la section precedente.
Question 7 :

` partir des equations detat et dobservation etablies precedemment, donnez


A
lequation detat de lobservateur `
a temps discret qui estime et b, soit et b ces estimations.
Proposez une structure pour la matrice des gains L.
Question 8 :

T


Etablissez
lequation detat des erreurs destimation, soit = b . Il est
conseille de traiter dans un premier temps cette question dans le cas general avec les matrices
F, G et L puis de substituer `
a ces matrices leurs valeurs particuli`eres.
Question 9 :

Les erreurs destimation doivent converger sannuler en regime permanent. Pratiquement,


le robot mobile qui embarque la centrale a une vitesse de rotation maximale autour de son axe
de lacet de de rad.s1 , avec une periode dechantillonnage de 10ms, cela revient `a estimer le
cap entre deux deplacements de 1.8. On souhaite que les erreurs destimation
convergent en
50ms et oscillent peu. Comme le syst`eme est un second ordre, on choisit = 22 .
Calculez la pulsation propre non amortie correspondant a
` ce reglage de la dynamique des erreurs. Calculez les p
oles du syst`emes continu correspondant puis ceux du syst`eme a
`
temps discret equivalent.

Question 10 :

` partir des p
A
oles, calculer le polyn
ome caracteristique de la matrice F LC
et lidentifier `
a |I (F LC)| o`
u |A| designe le determinant de la matrice A. En deduire la
matrice des gains L de lobservateur. Verifiez votre calcul avec la fonction place. Attention a
`
la syntaxe.
Question 11 :

Implementez lobservateur sous SIMULINK en utilisant le bloc mesures simulees


et testez-le. Que vaut lestimation de lerreur systematique b ?

Question 12 :

11.3

BIAIS SUR LESTIMATION

Dans le cas o`
u la mesure est entachee dune erreur systematique d constante de
sorte que m = + d, reformulez lequation des etats estimes et deduisez-en les equations detat
des erreurs destimation , b .
Question 13 :

Exprimez le terme general de la suite k+1 et donnez sa valeur en regime permanent (lorsque k +). Vous montrerez que lestimation est biaisee c.-`
a-d. que le vecteur
detat estime diff`ere systematiquement du vecteur detat. Pour mener ce calcul, vous exprimerez
o`
H = F LC `
a partir de sa forme diagonale H = PHP
u P designe la matrice de passage
F LC dans la base modale.
Question 14 :

Question 15 :

Pour une erreur systematique d =


113

5
et avec les valeurs de 1 , 2 trouvees
180

TDAO 11. Observateur d


eterministe : application `
a lestimation de cap
precedemment, calculez numeriquement les erreurs systematiques commises sur les estimations
de et b de b en regime permanent.
Sur le schema SIMULINK de lobservateur, double-cliquez sur le bloc mesures
simulees et renseigner le champ erreur sur le cap. Evaluez par la simulation les erreurs systematiques commises par lobservateur et comparez-les `
a celles obtenues par le calcul.

Question 16 :

11.4

SIGNAUX REELS

Sur le schema SIMULINK de lobservateur, appliquez `


a lobservateur les signaux
issus du bloc capteur reel. Quobservez-vous ? Interpretez le comportement de lobservateur.

Question 17 :

Dans cette derni`ere partie, on va mettre en evidence le fait que lobservateur est un filtre
dont la bande passante depend des gains i de lobservateur. Pour cela on reformule lequation
detat de lobservateur comme suit :

x
k+1

 u
k
= (F LC)
xk + G L
yk

y
k = C
xk

(11.3)
(11.4)

Saisissez cette representation detat 1 puis etablissez sa matrice de fonctions de


transfert sous MATLAB tf. Tracez le diagramme de Bode du gain de lobservateur avec ltiview
ou la fonction bodemag et identifiez les structures des differents filtres.

Question 18 :

Question 19 :

0.5i}.

Meme question pour une dynamique de lerreur caracterisee par les p


oles {0.5

La bande passante depend logiquement du choix opere pour les p


oles, elle diminue
tandis que le module des p
oles diminue. Il en va de meme pour les gains. Le trace des diagrammes
de Bode montre deux filtres, un passe-haut (comportement dun integrateur) pour le traitement
de la mesure gyrometrique, ce qui est interessant pour supprimer la composante continue que
constitue lerreur systematique constante ou lentement variable qui entache la mesure delivree
par ce capteur. Un filtre passe-bas pour le traitement de la mesure issue de , ce qui serait plus
particuli`erement indique pour traiter le bruit qui entacherait la mesure du cap. Plus le module des
p
oles est grand, plus le credit apporte `
a la mesure est grand, moins celui apporte a
` la prediction
lest. Ce que confirme les diagrammes des gains.
Question 20 :

42.4264 42.4264i
0.5 0.5i

1
0.8
0.01

1. Attention au fait quil sagit dun syst`eme `


a temps discret

114

2
-23.55
-0.005


11.4. SIGNAUX REELS

Bode Diagram
From: In(1)

From: In(2)

20
tf_filtre
ples 0.5+/0.5i

Magnitude (dB)
To: Out(1)

20
40
60
80
100
120
140 2
10

10

10
10
Frequency (rad/s)

10

10

Figure 11.2 Estimation de la vitesse par integration de lacceleration et derivation de la position

115

TDAO 11. Observateur d


eterministe : application `
a lestimation de cap

116

TDAO

12

Filtre de Kalman : Application `a lestimation de trajectoires

12.1

PRESENTATION
DU PROBLEME

Le radar de poursuite dun Awacs tente de localiser une cible qui cherche `a sechapper.
Outre le fait quelle soit tr`es manuvrante, cette cible brouille sa position en generant des
contre-mesures. Le probl`eme est represente sur la figure 12.1 et les deux avions evoluent `
a la
meme altitude. LAWACS vole `
a vitesse constante.

y
cible (xc , yc )

AWACS (xa , ya )
0

Figure 12.1 Vue schematique du probl`eme et photographie dun AWACS du 36e EDCA

117

TDAO 12. Filtre de Kalman : Application `


a lestimation de trajectoires

12.2

`
MODELES
DE TRAJECTOIRES

Repr
esentation d
etat
Vous adopterez pour la representation detat de ce syst`eme les variables suivantes :
x1 = xc xa
x 2 = yc ya

x3 = x c x a
x4 = y c y a

(12.1)

Pour rendre compte du caract`ere aleatoire de la trajectoire, on ajoute un bruit detat, pratiquement il sagit dune acceleration de sorte que :
x 3 = x
c x
+ w1
x 4 = yc y + w2

Ecrire
lequation detat de ce syst`eme et precisez les expressions des matrices detat
et dentree. Par ailleurs, on mesure la position relative de la cible au chasseur selon les directions
x et y. Saisissez les expressions de ces matrices dans un script sous MATLAB que vous prendrez
soin de commenter.
Question 1 :

Ecrire
lequation detat approchee du syst`eme `
a temps discret equivalent pour une
periode dechantillonnage T = 200ms. Saisissez les expressions de ce mod`ele sous MATLAB
ss. Attention `
a bien respecter la syntaxe pour un syst`eme echantillonne.
Question 2 :

Mod`
ele des bruits d
etat et de mesure
Le bruit detat est dans un premier temps suppose blanc, centre. Les variances q12 de w1 et
q22 de w2 sont respectivement egales `
a 1 et 9 (exprimees en m2 .s4 ). Elles rendent compte des
accelerations auxquelles est soumise la cible tandis quelle manuvre pour eviter detre accrochee
par le radar.

Ecrire
lexpression de la matrice de variance du bruit detat Q, la saisir dans le
script sous MATLAB.

Question 3 :

Le bruit de mesure est suppose blanc, centre de variance r12 = r22 = 400m2 . Ces variances
rendent compte des contre-mesures qu brouillent le radar. Que representent-les ecarts-types r1
et r2 ?

Ecrire
lexpression de la matrice de variance du bruit de mesure R et la saisir dans
le script sous MATLAB.

Question 4 :

118

`
12.2. MODELES
DE TRAJECTOIRES

G
en
eration des trajectoires
La duree de la simulation est fixee `a 60 s. Vous devez, prealablement `a la generation des
trajectoires, definir un vecteur temps qui contient les instants auxquels on simule le syst`eme.
Pratiquement on proc`ede de la facon suivante :
1
2
3
4

T=0.2 s
Tsim = 6 0 ;
eration

t e m p s = 0 : T : Tsim ; %gen
dun vecteur ligne de longueur 301
t e m p s = temps
% transposition en vecteur colonne

Generez les vecteurs colonnes aleatoires bruit detat w1 et w2 ayant respectivement


pour ecart-type q1 et q2 en utilisant la fonction randn. La longueur de ces vecteurs est fonction
de la periode dechantillonnage T et de la duree de la simulation. Il est possible de generer
directement une matrice 301 lignes 2 colonnes, soit w cette matrice. Generez egalement les
vecteurs colonnes aleatoires bruit de mesure v1 et v2 ayant respectivement pour ecart-type r1
et r2 . Il est possible de generer directement une matrice 301 lignes 2 colonnes, soit v cette
matrice.

Question 5 :

Generez la trajectoire detat en utilisant la fonction lsim. Vous stockerez dans


des variables x et y les vecteur detat et de sortie calcules puis afficherez plot la trajectoire
relative de la cible et de lAWACS chasseur.
Question 6 :

Ajoutez au vecteur de sortie y le bruit de mesure v et afficher, en surimpression de la


trajectoire reelle, la trajectoire mesuree.
Trucs & Astuces Matlab
La matrice y etant de dimension q n, on acc`ede au ie vecteur colonne en appelant y(:, i).
En vous inspirant du programme ci-joint et des resultats etablis en cours, calculez
sur toute la duree de la simulation la matrice de covariance de letat du syst`eme definie par :
Question 7 :

k = E[(xk x
k )(xk x
k )T ]

(12.2)

o`
ux
k = E[(xk ] est lesperance ou moyenne du vecteur detat.
1
2
3

% Boucle iterative

% Ce programme calcule x(k+1)=A*x(k)+B*u(k) et affiche la trajectoire detat


clear all ; clc

4
5
6
7

N= 1 0 0 ;
x=[1;0.5] ;
u= o n e s (N , 1 ) ;

% le nombre diterations
% les conditions initiales
: un echelon

% le signal dentree
unitaire de longueur N

A= [ 0 . 9 0 ; 0 0 . 2 ] ;
B=[0;0.1];

% declaration
des matrices

8
9
10
11
12
13
14
15

f o r i = 1 :N1 ,
x ( : , i +1)=Ax ( : , i ) +Bu ( i ) ;
end
% x est un vecteur de dimension 2*N

16
17

plot ( x ( 1 , : ) , x ( 2 , : ) , r , LineWidth , 2 )

119

TDAO 12. Filtre de Kalman : Application `


a lestimation de trajectoires
Interpretez les valeurs des coefficients diagonaux i2 avec i [1..4] de cette matrice qui sont
les variances des variables detat. Confrontez ce resultat `
a la trajectoire. Il peut etre interessant
de tracer les i en fonction du temps.

12.3

FILTRE DE KALMAN

Verifiez en en rappelant la procedure, lobservabilite du syst`eme. Cette condition


est requise pour mettre en uvre le filtre de Kalman.

Question 8 :

Question 9 :

Rappeler les equations du filtre de Kalman. On notera Pk la covariance de lerreur

destimation.
En vous inspirant du programme joint ci-dessus, implementer les equations du
filtre de Kalman. Les variables detat estimees x
k seront stockees dans xest. Dans un premier
temps, letat initial est suppose parfaitement connu. Reglez les conditions initiales x
0 et P0
en consequence. Attention, dans les tableaux, MATLAB ne reconnat pas, contrairement au C,
lindice 0 et x
0 est en fait xest(1).
Afficher la trajectoire obtenue au moyen du filtre 1
Question 10 :

Calculez la somme quadratique des erreurs de mesure et celles des erreurs destimation. Comparez-les et mettez en evidence linteret du filtre par rapport a
` la mesure seule.
Question 11 :

Testez le filtre de Kalman pour des conditions initiales mal connues. Reglez les
conditions initiales x
0 . et P0 en consequence.
Question 12 :

12.4

MULTICIBLES
CAPACITE

On va, avec ce radar, essayer de suivre avec deux cibles simultanement. Le principe consiste
a` operer `a deux estimation a priori pour une mesure et une estimation a posteriori.
Generez les trajectoires de deux avions. Vous prendrez soin de distinguer pour
chacun deux les variables detat et de sortie qui les caracterisent. Soit par exemple x1 , x2 , y1 ,
y2 .
Question 13 :

Modifiez le programme du filtre de Kalman de sorte qu`


a chaque iteration, on puisse
predire la position et la vitesse relative de chacun des avions (x1 i+1|i , x2 i+1|i ), les matrices de
covariance des erreurs destimation a priori (P1 i+1|i , P2 i+1|i ) et les gains de de Kalman (K1i+1 ,
K2i+1 ). Mais que lon proc`ede `
a la mesure de position relative de chacune des cibles y1 2i+1 , y2 2i
ainsi qu`
a celle des etats estimes a posteriori x1 2i+1|2i+1 , x2 2i|2i et des covariances des erreurs
destimation a posteriori P1 2i+1|2i+1 , P2 2i|2i une fois sur deux. La fonction mod qui calcule
le reste de la division euclidienne peut realiser ce test de parite.

Question 14 :

` ne
1. Vous pouvez egalement, avec la fonction quiver, materialiser par des fleches le cap de lappareil. A
faire que si vous jugez en avoir le temps.

120

` PROPOS DU BRUIT DETAT

12.5. A

12.5

` PROPOS DU BRUIT DETAT

Cette partie est facultative. Laffichage du bruit detat w modelise par un bruit blanc montre
que les variations de ce dernier, censees representer des accelerations sont peu realistes. Pour
lisser ces bruits, on peut les traiter par un syst`eme decrit par une representation detat :
!
!
!
!
!
T
0
0
1k
T + 1
1k
w
1k
=
+
+ T
(12.3)
0
T + 1
0
2k
2k
w2k
Ce qui equivaut `
a filtrer les composantes du bruit blanc w par un filtre passe-bas de pulsation
de coupure egale `
a 1 .
i (z)
=
wi (z)
z+

(12.4)

On obtient un vecteur de bruits dits colores . Les hypoth`eses posees par Kalman ne sont
cependant plus verifiees et lestimation de letat nest pas optimale.
Generer le vecteur des bruits colores en prenant = 1s, pour cela, vous devez
implementer sous MATLAB la representation detat (12.3).
Question 15 :

Simulez la trajectoire de la cible tandis que le bruit detat qui decrit les accelerations
auxquelles elle est soumise est desormais . Vous pouvez dans le meme temps soumettre la cible
aux accelerations modelisees par w et comparer les trajectoires obtenues.
Question 16 :

121

TDAO 12. Filtre de Kalman : Application `


a lestimation de trajectoires

122

Quatri`
eme partie

ARCHIVES

123

ARCHIVES

Asservissement dun avion en roulis

Pr
esentation
On sinteresse `
a lasservissement de langle de gte sur un avion au moyen de la gouverne
de gauchissement l

d l < 0

f > 0
y

z h

Figure 1.1 Presentation des angles et l

La figure 1.1 presente les notations conventionnelles de la mecanique du vol.


Sur le schema fonctionnel, on distingue deux boucles pour la realisation de lasservissement :
la boucle interne assurant lasservissement de la position l de la commande de gauchissement en fonction de la position lc de consigne, cest-`a-dire la position souhaitee de la
gouverne de gauchissement. La position de la gouverne est mesuree par un potentiom`etre.
Cette mesure sera supposee parfaite et assimilable `a un gain unitaire.
la boucle externe assurant lasservissement de langle de gte en fonction de la gte
souhaitee c donnee par la position du manche en gauchissement ou dune consigne
donnee par le pilote automatique. La gte est mesuree par un gyroscope.
En fonction de lerreur sur la gte, le correcteur de la boucle externe determine langle de
braquage lc que devrait avoir la gouverne de gauchissement pour obtenir la gte souhaitee.
125

Archives 1. Asservissement dun avion en roulis


Servo-commande
c

lc

Cor ext

Cor int

l
Moteur

AVION

gyroscope

Figure 1.2 Schema fonctionnel de lasservissement

lc (rd)

Ci (p)

Km
p(1 + m p)

l (rd)

Figure 1.3 La boucle dasservissement de position des ailerons

La boucle interne a pour but dagir sur la gouverne de gauchissement pour que son angle de
braquage l soit aussi conforme que possible a` langle de consigne elaboree par la boucle externe.
Le probl`eme comprend deux parties etudiant successivement les boucles internes et externes.

1.1

Asservissement en position de la gouverne

Le moteur de la servo-commande est commande par un courant . Sa fonction de transfert


l (p)
Km
est de la forme
=
(p)
p(1 + m p)
On souhaite que lasservissement de la position de la gouverne de gauchissement de fonction
l (p)
de transfert
ait un comportement de type second ordre amorti tel que :
lc (p)
(
n = 400 (rad/s)

= 0, 52

Correction proportionnelle unitaire


En supposant que la fonction de transfert du correcteur interne soit Ci (p) = 1,
l
calculer lexpression litterale de
. En deduire quelles devraient etre les param`etres Km et m
lc
du moteur pour satisfaire les specifications.
Question 1 :

126

1.1. Asservissement en position de la gouverne

OpenLoop Nichols Editor (C)

50
40

20

0.25 dB

0.5 dB

0d

30

1 dB

OpenLoop Gain (dB)

3 dB
10

6 dB

0
10
20
30
G.M.: Inf @ Inf
P.M.: 28.9 deg @ 242 rad/sec
Stable loop

40
50
180

165

150

135

120

105

90

OpenLoop Phase (deg)

Figure 1.4 Lieu de Black du moteur

Correction par avance de phase


Les caracteristiques du moteur sont en realite Km = 500 et m = 7, 5 ms et ne permettent
pas dobtenir les performances souhaitees pour lasservissement de position avec un correcteur
aussi simple.
1 + p
On va chercher `
a synthetiser un correcteur `a avance de phase de la forme Ci (p) =
1 + p
La figure 1.4 donne le diagramme de Black de la fonction de transfert du moteur ainsi ses
marges de stabilite et la pulsation 0dB

Pour obtenir la valeur du facteur damortissement reduit voulu, on se fixe une


marge de phase `
a atteindre apr`es correction denviron M = 60 . Justifiez ce choix (Indication :
calculez le facteur de surtension correspondant au facteur damortissement demande, en deduire
liso-gain tangentee dans les abaques de Nichols)
Question 2 :

Cette question nest pas facile. Ny consacrez pas trop de temps et continuez le probl`eme
avec la marge donnee meme si vous ne voyez pas pourquoi on la choisie.
Question 3 :

Synthetisez un correcteur qui realise la marge de phase M = 60 . Vous preciserez


127

Archives 1. Asservissement dun avion en roulis


20

Magnitude (dB)

20

40

60
0

Phase (deg)

45
90
135
180
1
10

10

10

10

Figure 1.5 Diagramme de Bode de la boucle interne fermee

en les justifiant les eventuels choix que vous serez amene a


` faire. (On admet quun bon reglage
pour permettra aussi de respecter la specification en n )
La solution nest pas unique. On vous demande la methode generale de synth`ese ainsi que
lordre de grandeurs des approximations `
a faire. Une synth`ese precise necessite des moyens de
simulation.
Question 4 :

La figure 1.5 represente le diagramme de Bode de la boucle interne apr`es correction.


La consigne de gte c est donnee au manche par le pilote.
Comparez lordre de grandeur de la frequence des ordres du pilote et de la frequence de
coupure de la boucle interne corrigee. Vu du pilote, comment se comporte lasservissement en
position de la gouverne de gauchissement ? Justifiez pourquoi on va pouvoir negliger dans la suite
du probl`eme la dynamique de la servo-commande corrigee.

1.2

Etude du syst`
eme complet

Les conclusions de la question 4 conduisent `a considerer desormais que la servo-commande


asservit parfaitement le braquage l de la gouverne de gauchissement `a la consigne de braquage
delivree par le correcteur de la boucle externe.
Lavion subit des perturbations atmospheriques qui peuvent se traduire par une perturbation
de braquage l de la gouverne.
Le braquage effectif l de la gouverne de gauchissement applique `a lavion sera donc considere
comme la somme de la consigne et de la perturbation.
La mesure de langle de gte par le gyroscope est supposee parfaite.
128

1.2. Etude du syst`


eme complet

On donne la fonction de transfert modelisant lavion :

(p)
Ka
=
avec Ka = 70 et
l (p)
p(1 + a p)

a = 0, 2s
On note la fonction de transfert du correcteur de la boucle externe Ce (p)

Modifiez le schema fonctionnel du syst`eme complet tenant compte des resultats de


letude de la boucle interne et de lexistence de perturbations.
Question 5 :

Tracez le diagramme de Black asymptotique de la fonction de transfert en boucle

(On peut au prealable tracer le diagramme de Bode). Donnez sans calcul


ouverte non corrigee
l
la marge de gain.

Question 6 :

En labsence de perturbations, pour nimporte quel type de correcteur Ce (p), que


vaut en regime lerreur dangle de gte pour un echelon de consigne ?

Question 7 :

En labsence de consigne, pour un correcteur Ce (p) = K, que vaut en regime lerreur


dangle de gte pour un echelon de perturbations ?
Question 8 :

On souhaite obtenir pour la boucle fermee corrigee les specifications suivantes :


Marge de phase denviron 45
Erreur nulle en regime permanent pour une perturbation en echelon
Quel correcteur proposez-vous ?

Question 9 :

Question 10 :

A laide du tableau 1.1, proposez en le justifiant un reglage pour ce correcteur.


(rad/s)
GdB ()
()(deg)

1
36,1
-100

5
20
-135

10
9,7
-153

18,5
0
-165

50
-17
-174

Tableau 1.1 Valeurs de la fonction de transfert

129

Archives 1. Asservissement dun avion en roulis

130

ARCHIVES

Controle de la trajectoire dun avion

Mod`
ele
On cherche `
a etablir le mod`ele de la trajectoire dun avion qui vole `a vitesse constante V0 et
qui doit rejoindre un couloir aerien, ce probl`eme est illustre sur 2.1. On note :

a : la commande de braquage des ailerons (radians),


: langle de gite (radians),
: le cap (radians),
y : la distance de lavion au couloir aerien quil doit emprunter (m`etres),
g : lacceleration de pesanteur g = 10m.s2 ,
: des perturbations qui affectent les positions des ailerons (pratiquement ce peut etre
des vibrations).

couloir aerien
y

Figure 2.1 La trajectoire

131

Archives 2. Contr
ole de la trajectoire dun avion

Equations du mod`
ele
Langle de gte est commande en braquant les ailerons a . On note s la variable de Laplace ;
dautre part, le mod`ele qui lie a (s) `
a (s) est donne par la fonction de transfert :
(s)
100
=
a (s)
0, 1s(s + 1)

(2.1)

Les equations relatives au mouvement de lavion secrivent :

(t)
= V0 (t)
g
y(t)

=
(t)
V0

(2.2)
(2.3)

Le pilote automatique etudie et represente sur la figure 2.2 realise la tenue de trajectoire de
lavion. Il est constitue de deux boucles.
1. Une boucle interne dite petite boucle qui assure le controle de langle de gte.
2. Une boucle externe dite grande boucle qui assure le maintien de la trajectoire de lavion
le long du couloir aerien.

Yc

Cy (s)

a +
+

C (s)

100
s(0, 1s + 1)

m
petite boucle

1
gyroscope
1
VOR

Figure 2.2 Les boucles dasservissement

2.1

La petite boucle

Calculez la fonction de transfert en boucle ouverte de la petite boucle, soit F (s) =


m (s)
tandis que la perturbation (s) = 0.
(s)

Question 1 :

Calculez la fonction de transfert en boucle fermee de la petite boucle, soit G(s) =


(s)
tandis que la perturbation (s) = 0.
c (s)

Question 2 :

Le correcteur C (s) est un gain note k . Calculez ce gain pour que le facteur
damortissement de la petite boucle soit egal `
a 0, 4.

Question 3 :

132

2.1. La petite boucle


Mettez F (s) sous forme p
oles-zeros et ebauchez le lieu dEvans ou lieu des p
oles de
la boucle fermee de la petite boucle (le correcteur C (s) est toujours un gain note k [0, +[).
Indiquez sur ce lieu le reglage correspondant au facteur damortissement egal a
` 0, 4. Precisez
comment vous lisez la pulsation propre non-amortie n . Que vaut-elle ?
Question 4 :

Pour le reglage opere `


a la question 3, tracez langle de gte (t) en reponse a
` un
echelon de consigne de gte c (t) damplitude 0, 17rad (0, 17rad valent 10). Indiquez les points
remarquables de cette reponse.
Question 5 :

La figure 3 represente le lieu de Black de la fonction de transfert en boucle ouverte


de la petite boucle trace pour k = 1. Sur cette meme figure que vous joindrez a
` votre copie,
representez le lieu de Black corrige pour la valeur de k obtenue `
a la question 3. En deduire les
valeurs de la marge de phase et la marge de gain du syst`eme ainsi corrige.
Question 6 :

Nichols Chart
40
0 dB
30

OpenLoop Gain (dB)

20

System: sys
0.25 dB
Gain (dB): 16
0.5 dB
Phase (deg): 137
Frequency (rad/sec):
1 dB 10.8

1 dB

3 dB

10

3 dB

6 dB
0

6 dB

10

12 dB

20 dB

20

30

40
270

40 dB
225

180

135
OpenLoop Phase (deg)

90

45

Figure 2.3 Le lieu de Black de la boucle ouverte de la petite boucle pour k = 1

Tenue de la petite boucle aux perturbations


La position des ailerons est sujette `a des oscillations (probl`eme effectivement rencontre sur
lA380). A ce titre, on souhaite evaluer la capacite de la petite boucle `a rejeter ces perturbations.
Question 7 :

Calculez H(j) =

(j)
(j)

Toujours pour un correcteur de gain k , ebauchez le diagramme de Bode du gain


de H(j) et concluez quant `
a laptitude de la petite boucle `
a rejeter les perturbations de nature
sinusodale.

Question 8 :

133

Archives 2. Contr
ole de la trajectoire dun avion
On admet que ces perturbations sont tr`es lentement variables. Justifiez pourquoi
Ts + 1
un correcteur proportionnel-integral de fonction de transfert C (s) = k
peut contribuer
Ts
au rejet de ces perturbations. En utilisant le lieu de Black trace `
a la question 6, proposez une
valeur pour T .

Question 9 :

Ebauchez sur ce meme lieu de Black, le lieu de la FTBO du syst`eme corrige par
le correcteur proportionnel-integral.
Question 10 :

2.2

La grande boucle

Dans cette partie, la petite boucle (supposee beaucoup plus rapide que la grande boucle) est
vue par la grande boucle comme un gain unitaire et on consid`ere les perturbations nulles.
Question 11 :
Question 12 :

Pourquoi a-t-on choisi un gain unitaire pour la petite boucle ?


Etablissez les expressions de Y (s) et celle de (s). Completez le schema de la

figure 2.
On suppose pour linstant Cy (s) = 1. Etablissez lexpression de la FTBO de la
Y (s)
grande boucle soit M (s) =
.
y (s)

Question 13 :

Sur votre copie, tracez le lieu de Black de M (j) et portez sur ce lieu la pulsation
pour laquelle le gain est nul. Soit 0dB cette pulsation.
Question 14 :

Proposez un correcteur de fonction de transfert Cy (s) qui conf`ere a


` la grande
boucle une marge de phase superieure ou egale `
a 45, plusieurs solutions sont envisageables.
Ebauchez le lieu de Black de la FTBO de la grande boucle ainsi corrigee.
Question 15 :

On suppose quun correcteur proportionnel-derivee dont les param`etres ont ete judicieusement choisis permet de realiser une correction satisfaisante. On admet (ce qui ne correspond pas
aux resultats que vous pourriez trouver mais qui permet de mener une etude sans avoir `a faire
c (s)
de calcul) que ce correcteur a pour fonction de transfert Cy (s) =
= 1 + s. Sur la figure 4,
y (s)
on a represente les chronogrammes de la trajectoire de lavion partant dune position initiale de
100m, la consigne yc est nulle .
Tracez lallure de c (t) . Pour ce faire, vous tracerez lallure de y (t) et de sa
derivee. Pour chacun de ces deux signaux dites qualitativement son effet sur le syst`eme (imaginez
vous `
a bord dun avion ou dun planeur devant realiser la manuvre etudiee).

Question 16 :

134

ARCHIVES

Guidage dun missile

Pr
esentation
Lobjet de ce probl`eme est letude dun syst`eme constitue dun missile et dune cible. Dans un
premier temps, vous etudierez les performances de ce syst`eme en boucle ouverte et limpossibilite
pour le missile datteindre la cible. Dans une seconde partie, vous etudierez une loi de commande
par retour detat visant `
a guider le missile vers la cible. Dans la troisi`eme partie, vous mettrez
en uvre un observateur, et cela afin de tenir compte des contre-mesures generees par la cible.
Lobjectif etant de fournir au missile des informations pertinentes quant `a sa position et sa
vitesse par rapport `
a celle de la cible.

Notations
M
T

x1
x2
x3
x4

designe le missile,
designe la cible,
la position relative cible/missile dans la direction y,
la position relative cible/missile dans la direction z,
la vitesse relative cible/missile dans la direction y,
la vitesse relative cible/missile dans la direction z.

On fait lhypoth`ese que lengagement se situe dans le plan et que les accelerations de la cible
aT y et aT z selon les axes y et z sont nulles (la cible se deplace `a vitesse constante). De plus on
T

avec u1 = aM y et u2 = aM z ; de plus, ces
definit le vecteur des commandes U = u1 u2
commandes ne sont pas contraintes.

3.1

Mod
elisation du syst`
eme missile-cible

Mod
elisation du syst`
eme missile-cible
Question 1 :

=
On adopte pour vecteur detat X
135

x1 x2 x3 x4

T

, pour vecteur des com-

Archives 3. Guidage dun missile


T

= u1 u2 . On suppose que tout le vecteur detat est mesure. Dans ces conditions,
mandes U
ecrivez les equations detat et dobservation de ce syst`eme.

Citer un ou des capteurs embarques sur lavion qui tire le missile ou sur le missile
qui realiseraient la mesure du vecteur detat (question hors bareme).
Question 2 :

Pour simplifier letude, on decouple les equations qui decrivent le syst`eme selon les axes y et
z.
Ecrivez les equations detat et dobservation qui rendent compte de la dynamique du
syst`eme cible-missile selon la direction y, on notera X, U et Y les vecteurs detat, de commande
et de mesure reduits. Desormais vous ne travaillerez plus que sur ces equations dans toute la
suite du probl`eme.
Question 3 :

Question 4 : Calculez les valeurs propres de la matrice d


etat. Que representent-elles ? Comment
interpretez-vous le comportement dynamique du syst`eme missile-cible `
a laune de ces valeurs
propres ?

Pour etudier le comportement du syst`eme missile-cible selon la direction y, il faut pouvoir


integrer lequation detat etablie `
a la question 3.
Integrez lequation detat en supposant la commande u1 constante et egale a
`
la distance initiale dans la direction y entre le missile et la cible egale a
` 3000m et
1
la vitesse relative initiale egale `
a 200m.s . Representez les chronogrammes de x1 (t) et x3 (t) et
conclure sur laptitude du missile commande en boucle ouverte `
a atteindre la cible.
Question 5 :

1000N.kg 1 ,

Question 6 : Le comportement du missile tel quil est command


e nest visiblement pas satisfaisant.
Cependant, en prealable `
a la mise en uvre dune loi de commande par retour detat, certaines
conditions doivent etre verifiees, rappelez-les et demontrez-les si cela est necessaire.

Representez la structure dune commande par retour detat de la forme U = KX


et expliquez qualitativement comment cette derni`ere serait realisee dans le cas dun syst`eme
constitue dun missile et dune cible.
Question 7 :

Calculez les gains de la matrice de contre-reaction K de sorte que le syst`eme missilecible se comporte comme un syst`eme du second ordre de facteur damortissement unitaire et tel
que le temps de reponse `
a 5% soit inferieur ou egal `
a 3s.

Question 8 :

136

3.1. Mod
elisation du syst`
eme missile-cible

Figure 3.1 Abaque n (tr5% )

Question 9 :

Quels effets physiques r`egle-t-on avec les gains de cette matrice de contre-reaction ?

Les conditions initiales restant inchangees, ebauchez lallure du chonogramme de


x1 (t). Aucun calcul nest demande pour effectuer ce trace. Tenez toutefois compte du fait que,
muni de sa commande, le syst`eme missile-cible est stable.
Question 10 :

Calculez la valeur numerique de la commande u1 (aM y ) a


` linstant initial.
Quest-ce qui vous semble irrealiste dans une telle loi de commande ? Quel phenom`ene neglige
dans ce probl`eme limiterait les performances du missile ?
Question 11 :

Les contre-mesures de la cible sont `a lorigine dune erreur systematique constante sur la
mesure de la position relative cible/missile :
X = AX + BU

(3.1)

(3.2)

= CX +

On concoit bien que si la mesure de la position est entachee dune erreur, le missile natteindra
jamais la cible. On envisage donc de munir le missile dun observateur capable destimer letat X
soit decouplee de lerreur systematique . X
designe
et tel que lerreur destimation = X X
letat estime. Cet observateur na pas ete etudie en cours, cependant, les questions sont posees
de sorte que vous puissiez letudier sans difficultes majeures.
le vecteur detat estime par cet observateur.
On note Z le vecteur detat de lobservateur et X
Une estimation correcte se traduit par 0, et cela meme en presence de . Les equations dun
tel observateur sont :
Z = M Z + N U + P Y
= Z LY
X

(3.3)
(3.4)

Ecrivez lexpression de lerreur destimation , vous poserez F = I + LC o`


u I est
la matrice identite.
Question 12 :

137

Archives 3. Guidage dun missile


En deduire lexpression de la derivee temporelle de lerreur destimation ,
toutes
les matrices sont constantes.
Question 13 :

Question 14 :

Montrez que = f (, X, U, , )
(il faut faire disparatre Z).

Quelles conditions doivent verifier les matrices A, B, C, M, N, F, P pour que ne


depende ni de X, ni de U , ni de . On rappelle `
a cet effet que est une erreur systematique
constante.

Question 15 :

Ecrivez lexpression de (t) qui ne doit pas depende de . A quelle condition sur
M les erreurs destimation convergent-elles vers 0 ?

Question 16 :

138