You are on page 1of 208

Dynamique et contrle des systmes

Nicolas Petit Pierre Rouchon

cole des Mines de Paris Centre Automatique et Systmes

3 Avant propos Les mcanismes de rgulation et dadaptation sont largement rpandus dans la nature. Ces mcanismes sont aussi la base du fonctionnement des systmes crs et utiliss par lhomme. Depuis trs longtemps, on les retrouve dans diverses machines et inventions. Avec la rvolution industrielle et le rgulateur de Watt, on a vu apparatre les premires tudes modernes : modlisation (avec les quations direntielles inventes par Newton) et stabilit. Le point de dpart de la thorie mathmatique des systmes remonte ainsi aux travaux du mathmaticien et astronome anglais Georges Airy. Il fut le premier tenter une analyse du rgulateur de Watt. Ce nest quen 1868, que le physicien cossais James Clerk Maxwell publia une premire analyse mathmatique convaincante et expliqua certains comportements erratiques observs parmi les nombreux rgulateurs en service cet poque. Ses travaux furent le point de dpart de nombreux autres sur la stabilit, notion marque par le travail de H. Poincar et A. M. Lyapounov, sa caractrisation ayant t obtenue indpendamment par les mathmaticiens A. Hurwitz et E. J. Routh. Durant les annes 1930, les recherches aux Bell Telephone Laboratories sur les amplicateurs ont t lorigine de notions encore enseignes aujourdhui. Citons par exemple les travaux de Nyquist et de Bode caractrisant partir de la rponse frquentielle en boucle ouverte celle de la boucle ferme. Tous ces dveloppements ont vu le jour dans le cadre des systmes linaires ayant une seule commande et une seule sortie. On disposait dune mesure sous la forme dun signal lectrique. Cette dernire tait alors entre dans un amplicateur qui restituait en sortie un autre signal lectrique quon utilisait comme signal de contrle. Ce nest quaprs les annes 1950 que les dveloppements thoriques et technologiques (avec linvention des calculateurs numriques) permirent le traitement des systmes multi-variables linaires et non linaires ayant plusieurs entres et plusieurs sorties. Citons comme contributions importantes dans les annes 1960 celles de Richard Bellmann avec la programmation dynamique, celles de Rudolf Kalman avec la commandabilit, le ltrage et la commande linaire quadratique ; celles de L. Pontryagin avec la commande optimale. Ces contributions continuent encore aujourdhui alimenter les recherches en thorie des systmes. Le champ dapplication sest considrablement tendu. Alors quaujourdhui lAutomatique est omniprsente dans les domaines industriels tels que laronautique, larospatiale, lautomobile, ou le gnie des procds, certaines recherches actuelles sappuyant sur des notions cls prsentes dans ce cours concernent la construction dun calculateur quantique.

4 Rsum Lobjectif de ce cours est de prsenter, en partant dexemples, les notions et outils fondamentaux ncessaires lanalyse et au contrle des systmes. Ces systmes sont souvent trs htrognes et on les qualie alors de complexes. Ce cours est articul autour des trois thmes suivants : Systmes dynamiques : stabilit, robustesse, thorie de perturbations. Commandabilit : stabilisation par bouclage, planication et suivi de trajectoire. Observabilit : estimation, observateur asymptotique, ltrage et diagnostic. Le cours part de quelques exemples issus du monde industriel ou acadmique. Chaque exemple motive et justie les dnitions et rsultats abstraits sur lesquels reposent une classe dalgorithmes de contrle et/ou destimation. Une thorie a trs souvent pour origine une petite collection dexemples bien compris et analyss. Une telle approche qui part du particulier pour aller vers le gnral permet aussi de mieux comprendre les ressorts fondamentaux sur lesquels reposent certains rsultats mais aussi de bien cerner leur limitations. Ainsi, le cours abordera certaines questions qui nadmettent pas de rponse standard bien quelles aient de fortes motivations pratiques. Enn chaque exemple est lobjet de simulations numriques utilisant le logiciel libre Scilab. De telles simulations permettent de mieux comprendre les notions de robustesse et de performance. Elles illustrent aussi la pluralit des modles et les dirences entre modles de simulation en gnral de grande dimension et modles de contrle de petite dimension. Le cours privilgie les systmes dynamiques continus en temps gouverns par des quations direntielles. Note de cette dition Nous vous serions reconnaissants de nous faire part de vos critiques et des erreurs que vous auriez dcouvertes par un message explicatif nicolas.petit@ensmp.fr ou pierre.rouchon@ensmp.fr en identiant votre message par Poly Mines corrections.

Nicolas Petit et Pierre Rouchon Fvrier 2006

Table des matires


1 Systmes dynamiques et rgulateurs 1.1 Le thermostat . . . . . . . . . . . . . . . . . . . . . . . . 1.1.1 Rgulateur PI . . . . . . . . . . . . . . . . . . . . 1.1.2 Intrt dune modlisation simplie . . . . . . . 1.1.3 Un modle continu lmentaire . . . . . . . . . . 1.1.4 Simulations en boucle ouverte et en boucle ferme 1.1.5 Simulation avec le PI . . . . . . . . . . . . . . . . 1.2 PI sur un premier ordre non linaire . . . . . . . . . . . . 1.2.1 Le systme dordre deux en boucle ferme . . . . 1.2.2 Existence et unicit des solutions . . . . . . . . . 1.2.3 Trajectoires bornes . . . . . . . . . . . . . . . . 1.2.4 Stabilit asymptotique locale et robustesse . . . . 1.2.5 Le linaire tangent autour dun point dquilibre . 1.2.6 Les systmes dynamiques dans le plan . . . . . . 1.3 Systmes lents/rapides . . . . . . . . . . . . . . . . . . . 1.3.1 Dynamiques ngliges . . . . . . . . . . . . . . . . 1.3.2 Perturbations singulires . . . . . . . . . . . . . . 1.3.3 Feedback sur un systme deux chelles de temps 1.3.4 Modle de contrle et modle de simulations . . . 1.3.5 Contrle hirarchis et rgulateurs en cascade . . 1.4 Pr-compensation et feedforward . . . . . . . . . . . . . 1.4.1 Deux types de pr-compensations . . . . . . . . . 1.4.2 Cas des systmes linaires dordre 1 . . . . . . . . 2 Transfert 2.1 Lexemple de base . . . . . . . . . . . . . . 2.2 Schmas blocs et fonctions de transfert . . 2.2.1 De la forme dtat vers le transfert 2.2.2 Du transfert vers ltat : ralisation 2.3 Marge de robustesse . . . . . . . . . . . . 2.3.1 Critre de Nyquist . . . . . . . . . 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 10 10 12 13 14 15 16 16 17 19 21 29 30 36 36 38 43 44 47 50 50 52 55 56 61 61 64 67 67

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

TABLE DES MATIRES 2.3.2 Marge de phase . . . . . . . . . . . . . . . . . . . . . 2.3.3 Marge de gain . . . . . . . . . . . . . . . . . . . . . . 2.3.4 Ples dominants . . . . . . . . . . . . . . . . . . . . . Complments . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Prdicteur de Smith . . . . . . . . . . . . . . . . . . 2.4.2 Calcul de tous les contrleurs PID stabilisant un systme du premier ordre retard . . . . . . . . . . . . 2.4.3 Mthodes de rglage de Ziegler-Nichols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 74 76 77 77

2.4

. 79 . 82 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 88 88 93 96 96 97 99 99 101 103 105 108 110 112 116 120 124 124 130 133 134 135 135 137 138 139 139 140 142 144

3 Commandabilit, stabilisation, feedback 3.1 Un exemple . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Deux oscillateurs en parallle . . . . . . . . . . . 3.1.2 Un atome trois niveaux . . . . . . . . . . . . . . 3.2 Commandabilit non linaire . . . . . . . . . . . . . . . . 3.2.1 Dnition . . . . . . . . . . . . . . . . . . . . . . 3.2.2 Intgrale premire . . . . . . . . . . . . . . . . . . 3.3 Commandabilit linaire . . . . . . . . . . . . . . . . . . 3.3.1 Matrice de commandabilit . . . . . . . . . . . . 3.3.2 Invariance . . . . . . . . . . . . . . . . . . . . . . 3.3.3 Un exemple . . . . . . . . . . . . . . . . . . . . . 3.3.4 Critre de Kalman et forme de Brunovsky . . . . 3.3.5 Planication et suivi de trajectoires . . . . . . . . 3.4 Commande linaire quadratique LQR . . . . . . . . . . . 3.4.1 Multiplicateurs de Lagrange en dimension innie . 3.4.2 Problme aux deux bouts . . . . . . . . . . . . . 3.4.3 Rgulateur LQR . . . . . . . . . . . . . . . . . . 3.5 Complments . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 Linarisation par bouclage . . . . . . . . . . . . . 3.5.2 Stabilisation via Lyapounov et backstepping . . . 4 Observabilit, estimation et adaptation 4.1 Un exemple . . . . . . . . . . . . . . . . . . . 4.1.1 Un modle simple . . . . . . . . . . . . 4.1.2 Estimation de la vitesse et de la charge 4.1.3 Prise en compte des chelles de temps . 4.1.4 Contraintes sur les courants . . . . . . 4.2 Observabilit non linaire . . . . . . . . . . . 4.2.1 Dnition . . . . . . . . . . . . . . . . 4.2.2 Critre . . . . . . . . . . . . . . . . . . 4.2.3 Observateur, estimation, moindre carr 4.3 Observabilit linaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

TABLE DES MATIRES 4.3.1 Le critre de Kalman . . . . . . . . . . . . . . . . . 4.3.2 Observateurs asymptotiques . . . . . . . . . . . . . 4.3.3 Observateur rduit de Luenberger . . . . . . . . . . Observateur-contrleur linaire . . . . . . . . . . . . . . . Filtre de Kalman . . . . . . . . . . . . . . . . . . . . . . . 4.5.1 Formalisme . . . . . . . . . . . . . . . . . . . . . . 4.5.2 Hypothses et dnition du ltre . . . . . . . . . . Complments . . . . . . . . . . . . . . . . . . . . . . . . . 4.6.1 Estimation de paramtres et commande adaptative 4.6.2 Linarisation par injection de sortie . . . . . . . . . 4.6.3 Contraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7 144 146 147 147 148 149 150 154 154 156 157

4.4 4.5

4.6

A Equations direntielles linaires A.1 Systme linaire de dimension n . . . . . . . . . . . . . . . A.1.1 Lexponentielle dune matrice . . . . . . . . . . . . A.1.2 Portrait de phases . . . . . . . . . . . . . . . . . . A.1.3 Forme de Jordan et calcul de lexponentielle . . . . A.1.4 Stabilit . . . . . . . . . . . . . . . . . . . . . . . . A.1.5 Solution avec un terme source dpendant du temps A.2 Equations direntielles scalaires dordre n . . . . . . . . . A.3 Polynmes stables . . . . . . . . . . . . . . . . . . . . . . . A.4 Matrices symtriques . . . . . . . . . . . . . . . . . . . . . B Moyennisation C Intgrations numriques D Commande prdictive D.1 Thorie gnrale de la commande prdictive . . . . . . D.1.1 Principe . . . . . . . . . . . . . . . . . . . . . . D.1.2 Commande optimale . . . . . . . . . . . . . . . D.1.3 Bouclage et stabilit . . . . . . . . . . . . . . . D.2 Commande prdictive linaire . . . . . . . . . . . . . . D.2.1 Commande prdictive en reprsentation discrte D.2.2 Calcul dune cible atteignable . . . . . . . . . . D.2.3 Rcriture et rsolution . . . . . . . . . . . . . . D.2.4 Implmentation . . . . . . . . . . . . . . . . . . D.2.5 Extensions possibles . . . . . . . . . . . . . . . D.3 Systmes FIR . . . . . . . . . . . . . . . . . . . . . . . D.3.1 Notations et dnitions . . . . . . . . . . . . . . D.3.2 Prvisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

161 . 161 . 161 . 162 . 162 . 164 . 166 . 167 . 168 . 169 171 177

. . . . . . . . . . . . .

179 . 180 . 180 . 180 . 181 . 184 . 184 . 185 . 187 . 189 . 189 . 190 . 190 . 191

8 D.4 Applications . . D.4.1 Exemple D.4.2 Exemple D.5 Conclusion . . . E Lexique . 1 2 .

TABLE DES MATIRES . . . . . . . . . . . . . . . : racteur exothermique . : colonne distiller binaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 193 198 199 201

Chapitre 1 Systmes dynamiques et rgulateurs


Lobjectif premier de ce chapitre est ltude dun rgulateur proportionnelintgral (rgulateur PI) sur un systme non linaire du premier ordre. Sont prises en compte les contraintes sur le contrle u via une gestion du terme intgral par un algorithme danti-emballement (anti-windup en anglais). Limmense majorit des systmes de contrles industriels sont construits base de tels rgulateurs PI lmentaires. Il est donc naturel de commencer par eux. Ce chapitre est aussi loccasion de mettre en place des notions importantes issues de la thorie des quations direntielles ordinaires, quations inventes par Newton pour dcrire le mouvement du systme solaire : la stabilit asymptotique au sens de Lyapounov, les relations entre la stabilit et les valeurs propres du systme linaire tangent autour dun point dquilibre, les systmes avec des chelles de temps trs direntes, les liens avec les cascades de rgulateurs et la robustesse par rapport aux dynamiques ngliges. Nous ferons aussi appel aux rsultats fondamentaux de Poincar et Bendixon sur les quations direntielles autonomes dans le plan pour lesquelles il est impossible davoir des trajectoires chaotiques. Enn, nous montrerons lintrt de rajouter la rtro-action PI (feedback ) de la pr-compensation (feedforward ) pour anticiper et ainsi mieux grer des transitoires importants en particulier ceux lis aux changement de consignes. 9

10

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

avec une vanne Fig. 1.1 Rgulation PI de la temprature sa consigne trois voies de position u [0, 1].

1.1
1.1.1

Le thermostat
Rgulateur PI

Il sagit dajuster la marche dune chaudire en fonction dune consigne de et dune mesure en temps rel de la temprature ambiante temprature est positif il convient lintrieur dun btiment. Intuitivement, si lcart de baisser la chaudire dans le cas contraire il convient de laugmenter. La question est comment faire cela de faon automatique et able. Le but est dajuster en permanence la marche chaudire pour que la temprature reste . le plus proche possible de la consigne Comme lillustre la gure 1.1, lalgorithme usuellement utilis avec une vanne proportionnelle 3 voies est le suivant. La marche de la chaudire est directement relie la position de la vanne trois voies note u : u = 0, leau qui arrive des radiateurs ne passe pas par la chaudire et repart directement avec la mme temprature ; u = 1, toute leau arrivant des radiateurs passe par la chaudire et ressort la temprature de la chaudire ch (temprature constante car elle aussi est rgule par ailleurs via une boucle nettement plus rapide et intgre par le constructeur la chaudire), temprature bien sr ; pour les valeurs intermdiaire de u ]0, 1[, leau nettement plus haute que qui arrive des radiateurs nest que partiellement rchaue et repart avec une temprature intermdiaire. Le thermostat lectronique qui se trouve dans une

1.1. LE THERMOSTAT

11

pice de vie, comporte la sonde de temprature , le dialogue pour xer la et pilote via un signal lectrique la position de la vanne u. Lalconsigne gorithme usuellement utilis est celui dun rgulateur proportionnel/intgral, rgulateur dit PI, qui scrit ainsi k ) + Ik uk+1 = Kp ( o uk+1 est la nouvelle position de la vanne, linstant (k + 1)t, calcule et de la valeur du terme en fonction de la temprature k , de sa consigne intgral Ik linstant k t. La priode dchantillonnage t est de lordre de la seconde. Le gain proportionnel Kp est un paramtre positif. Le terme intgral Ik se calcule par une rcurrence : k ) Ik+1 = Ik + t Ki ( o Ki est le gain intgral . Le terme I est donc gard en mmoire entre deux calculs successifs. Cest une valeur interne au contrleur (tat). Pour rsumer, la commande u est calcule rcursivement par lalgorithme k ) + Ik uk+1 = Kp ( k ) Ik+1 = Ik + t Ki ( o, en mme temps quon calcule uk+1 , on met jour le terme intgral Ik+1 pour le calcul suivant (celui de uk+2 ). Si on sarrte ce stade, cet algorithme ne marche pas. La raison est brutale mais imparable : u doit rester entre 0 et 1. Or un tel algorithme ne garantit nullement ces deux contraintes sur u. Une premire ide consiste saturer u pour obtenir lalgorithme modi suivant : k ) + Ik uk+1 = S at Kp ( k ) Ik+1 = Ik + t Ki ( o S at (x) = x si x [0, 1], S at (x) = 0 pour x < 0 et S at (x) = 1 pour x > 1. Un tel algorithme ne marche pas non plus. Imaginons que nous soyons lt par temps de canicule. Dans ce cas sera toujours nettement suprieur (une chaudire nest pas un climatiseur) et donc le terme intgral I deviendra au cours du temps de plus en plus ngatif, u restera du fait de la fonction S at 0. la n de lt I aura une valeur ngative trs grande en valeur absolue. Lorsque les premiers froids arrivent, I sera tellement ngatif que, mme si descend largement en dessous de la consigne, u restera toujours zro. ) pour avoir enn Il faudra attendre que I remonte au dessus de Kp ( un peu de chauage. Cela peut prendre des semaines. On comprend donc

12

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

quil faut modier aussi la faon dont on met jour I . Cest le mcanisme danti-emballement qui conduit lalgorithme suivant Ik+1 k ) + Ik uk+1 = S at Kp ( k ) + Ks (uk+1 Kp ( k ) Ik ) = Ik + t Ki ( (1.1)

avec un gain Ks choisit assez grand de faon avoir Ks Kp > Ki . Tout rgulateur industriel PI comporte un tel mcanisme danti-windup pour prendre en compte les contraintes sur le contrle u. Maintenant, quoi sert le terme I . Pourquoi navons nous pas tout simplement pris k )). uk+1 = S at (Kp (

Clairement avec un tel algorithme, on a tendance limiter les variations de temprature . Cependant, en rgime stabilis, il est clair quil ny a aucune . Un tel algorithme (rgulateur raison pour que soit gal sa consigne proportionnel) est incapable dassurer, en rgime stationnaire le fait que . En eet si = alors u = 0 et donc il ne faut rejoigne sa consigne pas chauage : ce qui est certes trs conomique mais assez inconfortable et compltement idiot. En revanche avec le PI, en rgime stabilis o u reste restent constant et lintrieur (non strict) des contraintes 0 et 1, et o et eux aussi constants, on voit trs simplement que I ne peut tre que constant. . Le En eet, la seconde quation de (1.1) implique ncessairement = terme I garantit ici la prcision asymptotique de la rgulation.

1.1.2

Intrt dune modlisation simplie

Les signaux t u(t) et t (t) sont fortement corrls. La modlisation consiste tablir ces corrlations. On peut partir de mesures identier un modle. On peut aussi utiliser les lois de conservation de la physique. Bien sr, il nest pas question ici dcrire un modle dtaill en prenant en compte le maximum de phnomnes. Notre problme consiste rguler une temprature moyenne, telle que mesure par une seule sonde, en utilisant un seul actionneur (la chaudire). Si, en revanche, on sintresse la temprature en dirents points, son homognit spatiale, on aura recours des modles plus sophistiqus tels que ceux utiliss pour le design et la simulation ne. Nous avons plutt besoin dun modle minimal nous permettant de comprendre pourquoi un rgulateur PI fonctionne dans limmense majorit des cas et ce sans avoir besoin de rgler de faon trs pointue les gains Kp et Ki . Ce modle sera bien-sr grossier et donc faux. En dautres termes, il ne reprsentera quune vision en rduction de la ralit physique. Il ne prendra en compte que des eets moyens en espace et en temps, moyennes relatives

1.1. LE THERMOSTAT

13

Fig. 1.2 modlisation simplie avec un seul compartiment de temprature uniforme qui change de la chaleur avec lextrieur de temprature ext et les radiateurs de temprature rad dont la fraction u [0, 1] de leau passe par la chaudire et ressort la temprature sortie chaudire ch . aux chelles despace et de temps qui nous intressent. Ici lchelle spatiale est dnie par la taille du btiment, alors que lintervalle temporel le plus court pris en considration est la demie-heure. Cependant, un tel modle simpli limmense avantage dclaircir lanalyse : de bien cerner les congurations pour lesquelles lalgorithme PI fonctionne ; de bien cerner aussi les cas o des instabilits (oscillations, pompages, ...) peuvent apparatre pour donner des pistes de solutions et ainsi traiter ces dicults. Il faut savoir que pour limmense majorit des installations domestiques, un algorithme PI pilotant une vanne 3 voies donne entirement satisfaction avec quelques rglages standards pour Kp et Ki choisis selon la taille et linertie thermique de linstallation. Le but de ce chapitre est de comprendre pourquoi.

1.1.3

Un modle continu lmentaire

Pour construire un modle reliant la position de la vanne u et la temprature , nous allons faire les hypothses simplicatrices illustres sur la gure 1.2 en accord avec notre choix des chelles de temps et despace. Pour cela, nous considrons les lois de conservation de la physique et les crivons aux chelles de temps et despace qui nous proccupent. Ensuite nous

Nous allons raisonner en temps continu en suivant la formulation habituelle des lois de conservation de la physique. Ik d I k Ik+1 , on obtient la version continue de (1.1) : Avec dt t (t)) + I (t)) u(t) = S at (Kp ( (1.2) (t)) + Ks (u(t) Kp ( (t)) I (t)). d I (t) = Ki ( dt

14

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

formulons des hypothses simplicatrices et ngligeons certaines variations spatiales en considrant certaines variables comme tant homognes. On suppose le btiment homogne en temprature . Il change des calories avec les radiateurs de temprature uniforme rad , et avec lextrieur dont la temprature est ext . En notant rad > 0 et ext > 0, les coecients dchanges thermiques avec les radiateurs et lextrieur, le bilan global dnergie donne le modle suivant M Cp d = rad (rad ) + ext (ext ) dt

o M est la masse du btiment, Cp sa capacit calorique spcique (J/kg/K). Nous pouvons faire un bilan thermique stationnaire autour des radiateurs en supposant que le ux de chaleur perdue par les radiateurs rad (rad ) est instantanment compens par la chaudire via la fraction du dbit deau des radiateurs qui passe par la chaudire et en ressort la temprature ch : cela donne la relation statique suivante : u(ch rad ) = rad (rad ) o est un coecient > 0. Cela permet de calculer rad comme barycentre de ch et , les coecients tant fonction de u rad = rad u ch + . u + rad u + rad

Ainsi nous avons le modle suivant M Cp urad d = (ch ) + ext (ext ). dt u + rad (1.3)

1.1.4

Simulations en boucle ouverte et en boucle ferme

En thorie des systmes, il est dusage de noter x ltat du systme, i.e. les grandeurs satisfaisant des quations direntielles. Ici x = de noter y = h(x) la partie de ltat qui est mesure, ici y = x, on mesure tout ltat. de noter u les contrles, i.e., les variables dentre quon peut choisir comme on le souhaite de noter w les perturbations, i.e., les variables dentre quon ne peut pas choisir qui sont imposes par lenvironnement ; ici w = ext (t).

1.1. LE THERMOSTAT

15

de noter p les paramtres constants du modle (ce sont des entres particulires qui sont des constantes) : ici p = (, rad , ext , M Cp ). dcrire le modle sous la forme dtat d x = f (x, u, w, p), dt y = h(x)

o f et h sont des fonctions issues de la modlisation ; ici f (x, u, w, p) = urad ext (ch ) + (ext ) (M Cp )(u + rad ) M Cp

La simulation dun tel systme consiste rsoudre numriquement lquation d x = f (x, u, w, p) partir dune condition initiale x(0) = x0 , direntielle dt dun scnario de perturbations t w(t) donn lavance et de certaines valeurs des paramtres p. Les valeurs du contrle sont galement requises. Lorsque le contrle est une loi horaire donne lavance t u(t), on parle de simulation en boucle ouverte . Lorsque le contrle u est au contraire calcul en fonction de x (i.e. par bouclage), on parle de simulations en boucle ferme . Le contrle u donn par (1.2) fait apparatre une quation direntielle avec un tat I . On parle de bouclage dynamique . Pour calculer lvolution de la temprature, il faut aussi xer la condition initiale I0 sur ltat suppl(t) ainsi que mentaire I , le scnario pour la consigne de temprature t les paramtres de rglages du rgulateur PI : Kp , Ki et Ks . Nous voyons que dans les deux cas une simulation aussi bien en boucle ouverte quen boucle ferme se ramne toujours la rsolution numrique dun d systme dquations direntielles de la forme dt X = F (X, t) o X est ltat complet (celui du systme tel quil apparat lors de ltape de modlisation, avec ventuellement celui du contrleur).

1.1.5

Simulation avec le PI
le systme en boucle ferme,
u(t)rad ext ( (t)) = (M C p ( (t)) + M )(u(t)+rad ) ch Cp ext = Ki ( (t)) + Ks (u(t) Kp ( (t)) I (t)) (t) + I (t)) = S at (Kp (

avec w = (ext , ch ) constant. Si on choisit les rglages du rgulateurs tels que Ks Kp > Ki on constate que les trajectoires t ((t), I (t)) convergent toutes vers le mme point, indpendamment de leur conditions initiales. Ainsi le contrle u(t) converge vers une valeur u dans [0, 1]. De plus, si . Avec 0 < u < 1 alors ncessairement la limite de (t) est la consigne

Si on simule d dt (t) d I (t) dt u(t)

(1.4)

16

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

ces rglages, on na pas besoin de connatre prcisment les valeurs des coefcients dchanges thermiques ni celles de linertie thermique du btiment ni la valeur de la temprature extrieure. On se rend donc compte quavec un algorithme de contrle lmentaire de type PI, il est possible de contrler la temprature dune trs large gamme de btiments dont les transitoires thermiques peuvent tre dcrits de faon approximative par une quation bilan du type de celle construite ci-dessus. En fait, nous allons voir quil sut que d x = f (x, u, w, p) soit une fonction dcroissante de x = et croissante de u dt pour quun tel rgulateur fonctionne. La dmonstration va tre loccasion dintroduire quelques rsultats gnraux que nous utiliserons dans tout le reste du cours sur les quations direntielles non linaires en mettant laccent sur la notion de stabilit au sens de Lyapounov, les systmes lents/rapides, et le thorme de Poincar-Bendixon. Ce chapitre explique de manire fondamentale pourquoi limmense majorit des algorithmes de contrle utiliss dans lindustrie sont des algorithmes de type PI.

1.2
1.2.1

PI sur un premier ordre non linaire


Le systme dordre deux en boucle ferme

On considre le systme du premier ordre suivant : d x = f (x, u) dt (1.5)

dtat x(t) R avec le contrle scalaire u(t) R soumis aux contraintes u [umin , umax ] (umin < umax ). On suppose que R [umin , umax ] (x, u) f (x, u) R est une fonction continue et drivable par morceaux. Les seules informations que nous avons sur notre modle, i.e. sur f , sont de nature qualitative : pour tout (x, u) R [umin , umax ], f (x, u) 0 et f (x, u) > 0. x u On suppose en outre quil existe un rgime stationnaire respectant strictement les contraintes sur le contrle : il existe ( x, u ) R]umin , umax [ tel que f ( x, u ) = 0. Nous allons montrer que le rgulateur PI avec anti-emballement u = S at [Kp ( x x) + I ] , d I = Ki ( x x) + Ks (u Kp ( x x) I ) (1.6) dt

stabilise le systme en ( x, u ) ds que ses gains, Kp le gain proportionnel, Ki le gain intgral et Ks le gain danti-emballement , sont tous strictement positifs

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE et Ks Kp Ki . Notons la fonction saturation S at min u , si u umin ; u, si umin u umax ; R u S at (u) = max u , si umax u.
d x dt d I dt

17

(1.7)

Cela signie que pour toute condition initiale (x0 , I 0 ) la solution t (x(t), I (t)) du systme boucl = f (x, S at [Kp ( x x) + I ]) = Ki ( x x) + Ks (S at [Kp ( x x) + I ] Kp ( x x) I ) (1.8)

existe pour tout temps t 0 et que sa limite quand t tend vers + est ( x, u ). De faon plus formelle, on pourra tablir que sous les hypothses ci-dessus le systme boucl (1.8) dtat (x, I ) R2 admet pour seul tat dquilibre ( x, u ) et ce dernier est globalement asymptotiquement stable. Pour bien comprendre ce rsultat de robustesse et sa preuve, nous allons nous appuyer sur divers rsultats gnraux issus de la thorie des systmes dynamiques. Pour des raisons pdagogiques, nous allons dabord montrer le rsultat local, avant de passer au rsultat global de stabilit qui ncessite des arguments propres aux systmes dynamiques dans le plan. Dans tout ce qui suit, nous posons X = (x, I ) et rcrivons (1.8) sous la d forme dt X = F (X ). Ainsi la fonction F : R2 R2 est une fonction continue = ( et drivable par morceaux de X . On note aussi X x, u ) le point dquilibre de F : F (X ) = 0.

1.2.2

Existence et unicit des solutions


d X = f (X ), dt

Considrons une condition initiale X 0 R2 . Montrons que X (0) = X 0

admet une solution unique dnie pour tout les temps t 0. En fait lexistence pour des temps courts et lunicit sont une consquence du thorme de Cauchy-Lipchitz rappel ci-dessous. En revanche lexistence pour des temps t arbitrairement grand est nettement plus dlicate et ne rsulte pas de thormes gnraux. Thorme 1 (Cauchy-Lipchitz). Soit Rn R (x, t) v (x, t) Rn une fonction satisfaisant aux deux proprits suivantes :

18

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS 1. (localement lipchitzienne par rapport x) pour tout (x, t) Rn R, il existe x,t > 0 et Kx,t > 0, tels que, pour tout y Rn vriant x y x,t on a v (x, t) v (y, t) Kx,t x y

On considre le problme de Cauchy,

2. (localement intgrable par rapport t) pour tout x Rn , lapplication t v (x, t) est localement intgrable 1 . d x(t) = v (x(t), t), dt x(0) = x0 ,

Ce problme possde les proprits suivantes 1. existence locale en temps : pour toute condition initiale x0 Rn , il existe > 0 et une fonction ] , [ t x(t) Rn drivable par rapport t et solution du problme de Cauchy. 2. unicit globale en temps : pour toute condition initiale x0 Rn et pour tout a, b > 0 il existe au plus une fonction ] a, b[ t x(t) Rn drivable par rapport t et solution du problme de Cauchy. Une dmonstration de ce thorme se trouve dans [37, 26]. Elle repose sur le point xe de Picard dans un espace de Banach. On peut vrier sur des exemples simples que les hypothses du thorme de Cauchy-Lipchitz sont vraiment ncessaires : d x = |x| admet deux solutions partant de x0 = 0 : x(t) = lquation dt 0 et x(t) = 4t2 ; on remarque que |x| nest pas Lipchitz en x = 0 bien que continue en 0. d x = 1/t nest pas dnie en t = 0 car 1/t nest pas toute solution de dt d localement intgrable autour de 0 alors que dt x = 1/ |t| admet des solutions parfaitement dnies en 0. Revenons notre systme. Comme F est continue et surtout drivable par morceaux, F est localement lipchitzienne par rapport X et donc on a existence pour des temps petits et unicit pour des temps arbitraires. Montrer lexistence pour tout temps t > 0 nest pas une consquence d du thorme de Cauchy-Lipchitz. En eet, dt x = x2 vrie bien toutes ses x0 , on voit hypothses, mais comme la solution qui part de x0 est x(t) = 1 tx0 0 0 que, pour x > 0, la solution explose en t = 1/x . Cest en fait la seule obstruction lexistence globale en temps : la solution explose en temps ni. On peut donner une condition assez gnrale pour viter lexplosion en temps ni.
x x, chacune de ses composantes est une fonction mesurable du temps dont lintgrale de la valeur absolue sur tout intervalle born est borne, voir [38].
1

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE

19

Lemme 1 (existence globale en temps). En plus des hypothses du thorme 1, si lon suppose quil existe M0 (t), M1 (t) > 0 fonctions localement intgrables en t tel que pour tout x Rn , v (x, t) M0 (t) + M1 (t) x , alors la solution unique au problme de Cauchy est dnie pour t ] , +[. Malheureusement, nous ne pouvons pas utiliser ce rsultat pour notre problme. En eet, avec f (x, u) = x3 + u, x =u = 0 et umax = umin = 1 on vrie toutes nos hypothses de dpart. Mais le terme cubique en x fait que le systme boucl F ne vrie pas les hypothses supplmentaires du lemme 1. Noter que ce lemme ne dit pas que les trajectoires restent bornes. d A priori, elles ne le sont pas comme le montre lexemple dt x = x : elles peuvent tendre vers linni mais en temps inni.

1.2.3

Trajectoires bornes

d Pour le systme (1.8), not symboliquement dt X = F (X ), nous allons montrer que ses trajectoires restent bornes pour t > 0. Elles seront donc automatiquement dnies pour tout temps t > 0. Pour cela nous allons considrer le plan de phases X = (x, I ) et construire une famille de rectangles embots les uns dans les autres. Ces rectangles sont des piges pour les trajectoires : si la condition initiale appartient lintrieur dun de ces rectangles alors il est impossible la trajectoire den sortir. Pour cela, il sut de regarder la direction du vecteur vitesse F (X ) quand X parcourt le bord du rectangle : si F (X ) pointe constamment vers lintrieur alors il est impossible de sortir du rectangle en intgrant selon les temps positifs. On dit alors que de tels rectangles sont des ensembles positivement invariants. Leur existence repose sur les hypothses Kp , Ki , Ks > 0, Ks Kp Ki , f croissante par rapport u et dcroissante par rapport x. La fonction S at qui intervient dans (1.7) conduit un dcoupage en trois zones du plan de phase (x, I ) (voir gure 1.3) selon la position de Kp ( x x)+ I min max par rapport u et u : les deux zones satures Kp ( x x) + I umax et min min Kp ( x x) + I u et la zone sans saturation u Kp ( x x) + I umax . On pose L = max(umax u , u umin ) > 0. Comme lillustre la gure 1.3, considrons pour [L, +[, le rectangle R de centre ( x, u ) de cots parallles aux axes et coupant laxe des x en x /Kp et laxe des I en u . Regardons maintenant la direction du vecteur

F (x, I ) = F x (x, I ) = f (x, S at [Kp ( x x) + I ]) I F (x, I ) = Ki ( x x) + Ks (S at [Kp ( x x) + I ] Kp ( x x) I )

20

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

Fig. 1.3 Le rectangle R est positivement invariant car le champ de vecteurs X F (X ) pointe vers lintrieur lorsque X = (x, I ) parcourt le bord de R . pour (x, I ) sur le bord de R . On ne dtaille les calculs que le long dun cot horizontal et dun cot vertical, les deux autres se traitent de faon similaire : (cot horizontal suprieur) pour I = u + et x [ x /Kp , x + /Kp ], I on voit que F (x, u + ) 0 ; en eet si x [ x /Kp , x ] on a
0 I 0
max

x x) +Ks (u F =(Ki Ks Kp )( si x [ x, x + ( u + umax )/Kp ] on a


0

u ) 0;

x x) +Ks (umax u Kp ( x x)) 0; F I = Ki ( si x [ x + ( u + umax )/Kp , x + /Kp ] on a


0

F I = Ki ( x x) 0; ainsi le vecteur F = Fx FI pointe vers le bas le long du cot hori-

zontal suprieur. (cot vertical droite) pour x = x + /Kp et I [ u , u + ] on voit que F x ( x + /Kp , I ) 0;

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE en eet si I [ u , umin + ] on a F x = f ( x + /Kp , umin ) f ( x, umin ) f ( x, u ) = 0 car
f x

21

0 et

f u

> 0 ; si I [umin + , u + ] on a de mme

F x = f ( x + /Kp , I ) f ( x, I ) f ( x, u ) = 0. Ainsi le vecteur F pointe vers la gauche le long du cot vertical droit. On dmontre de la mme faon que F pointe vers le haut le long du cot horizontal infrieur et pointe vers la droite le long du cot vertical gauche. En conclusion, Pour tout L = max(umax u , u umin ) le vecteur vitesse, F (X ) pointe vers lintrieur du rectangle R . Prenons maintenant une condition initiale X 0 = (x0 , I 0 ) arbitraire. On voit quil existe toujours au moins un 0 (il sut de le prendre assez grand en d X = F (X ) fait) pour que X 0 soit lintrieur de R0 . Ainsi, la solution de dt avec X (0) = X 0 reste dans R0 pour tout temps positif : elle est donc dnie pour tout temps t > 0 et de plus reste borne.

1.2.4

Stabilit asymptotique locale et robustesse

d Nous savons que les solutions de dt X = F (X ) (on parle aussi des trajectoires) restent bornes. Nous aimerions montrer quelles convergent toutes = ( vers lquilibre X x, u ). Nous allons commencer par le montrer locale , la limite quand t ment : pour une condition initiale X 0 assez proche de X d . tend vers + de la solution de dt X = F (X ) qui part de X 0 en t = 0 est X Pour cela nous avons besoin de rsultats sur la stabilit des points dquilibre. Tout dabord une dnition de la stabilit doit formaliser lintuition suivante : un point dquilibre sera dit stable si un petit dsquilibre initial nentrane que de petits carts pour tout temps postrieur ; en bref de petites causes nont que de petites consquences.

Dnition 1 (Stabilit au sens de Lyapounov). On reprend les notations et hypothses du thorme de Cauchy Lipchitz (thorme 1, page 17). On suppose en plus quil existe un point dquilibre x Rn caractris par v ( x, t) = 0 pour tout t R. Lquilibre x Rn est dit stable au sens de Lyapounov si, et seulement si, pour tout > 0, il existe > 0 tel que pour toute condition initiale x0 d vriant x0 x , la solution de dt x = v (x, t) qui part de x0 t = 0, est dnie pour tout temps positif et vrie x(t) x pour tout temps t 0. Lquilibre x est dit localement asymptotiquement stable si et seulement sil est stable au sens de Lyapounov et si, en plus, il existe > 0 tel que toutes

22

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

x x

Fig. 1.4 Stabilit (gauche) et stabilit asymptotique (droite).


d les solutions x(t) de dt x = v (x, t), partant en t = 0 de conditions initiales x0 telles que x0 x , convergent vers x lorsque t tend vers +.

Ces notions de stabilit sont illustres sur la gure 1.4. Lorsque x est asymptotiquement stable on dit souvent que le systme oublie sa condition initiale. Un exemple dquilibre stable sans tre asymptotiquement stable est celui de loscillateur harmonique non amorti (le paramtre > 0 est la pulsation) : d d x1 = x2 , x2 = 2 x1 . (1.9) dt dt Le rajout dun amortissement d x1 = x2 , dt d x2 = 2 x1 2 x2 dt (1.10)

rend alors lquilibre (0, 0) asymptotiquement stable. Le paramtre sans dimension > 0 est le facteur damortissement : pour ]0, 1[ le retour lquilibre se fait sous la forme doscillations amorties ; pour 1, le retour lquilibre se fait quasiment sans oscillation, i.e., avec un trs petit nombre de changements de signe pour x1 et x2 . Cela vient du fait bien connu que les racines du polynme caractristique 2 + 2 + 2 = 0 de lquation du second ordre d2 d x1 + 2 x1 + 2 x1 = 0 2 dt dt

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE

23

qui correspond au systme du premier ordre (1.10), sont relles ngatives pour > 1 et complexes conjugues avec une partie relle ngative si 0 < < 1. Noter enn quaucun des quilibres du double intgrateur, (1.9) avec = 0, nest stable au sens de Lyapounov. Cette dnition de la stabilit nonce un critre susant et calculable. Du fait du caractre local de la dnition, il est possible, sous certaines conditions, de dduire la stabilit asymptotique des termes du dveloppement limit lordre 1 des quations direntielles autour de lquilibre 2 . Thorme 2 (premire mthode de Lyapounov). Soit Rn x v (x) Rn continment drivable par rapport x et x Rn tel que v ( x) = 0. Ltat dquilibre x de d x = v (x) dt (on dit aussi tat stationnaire, ou point critique du champ de vecteurs v ) est localement asymptotiquement stable (c.f. dnition 1) si les valeurs propres de la matrice jacobienne v ( x) = x vi xj

1i,j n

sont toutes parties relles strictement ngatives. x est instable au sens de v ( x) est Lyapounov si au moins lune des valeurs propres du jacobien x partie relle strictement positive. Il est important de bien comprendre ce rsultat. On commence par crire un dveloppement limit autour de x d d v x = (x x ) = v (x) = v ( x) + ( x) (x x ) + (x x ) dt dt x o (x x ) rassemble les termes dordres suprieurs. On ne considre que les termes dordre 1 en = x x pour en dduire le systme direntiel linaire coecients constants (A ne dpend pas du temps) suivant : d = A dt
v ( x) la matrice jacobienne de v en x . On sait, avec un vecteur de Rn et A = x voir annexe A, que toutes ses solutions convergent vers 0 lorsque les valeurs

Ce calcul lordre 1 est mme lorigine de la thorie des matrices et de lanalyse spectrale
2

24

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

propres de A sont toutes parties relles ngatives. Ainsi le thorme prcdent dit que, si le systme linaire du premier ordre est asymptotiquement stable, alors les termes dordre suprieur ne peuvent pas tre dstabilisateurs pour des conditions initiales proches de lquilibre. La preuve de ce rsultat est reproduite un peu plus loin. Elle utilise la seconde mthode de Lyapounov, un autre outil pour montrer la stabilit dun point dquilibre qui sinspire la notion dnergie et de dissipation. Commenons par lexemple de loscillateur harmonique amorti (1.10) avec la fonction 2 1 V (x1 , x2 ) = (x1 )2 + (x2 )2 2 2 qui nest autre que son nergie totale. Un calcul simple montre que pour t (x1 (t), x2 (t)) solution de (1.10), on a V d V d d (V (x1 (t), x2 (t))) = x1 + x2 dt x1 dt x2 dt Or
d x dt 1

= x2 et

d x dt 2

= 2 x2 2 x1 . Donc d V = 2 (x2 )2 0. dt

Ainsi, t V (x1 (t), x2 (t)) est une fonction dcroissante, comme elle est positive, elle converge vers une valeur positive. Il est intuitif de penser que d V converge vers 0 et donc que x2 converge vers 0. Mais si x2 converge dt vers 0, il est aussi intuitif de penser que sa drive converge aussi vers 0. d x2 = 2 x2 2 x1 et donc x1 tend vers 0 aussi. Le raisonnement Or dt ci-dessus nest pas trs rigoureux mais il est correct car on a aaire des fonctions du temps h(t) = V, x1 , x2 , .... uniformment continues, i.e., dont le module de continuit en t ne dpend pas de t : pour tout > 0, il existe > 0 indpendant de t, tel que |h(t + ) h(t)| . Cette qui-continuit vient du fait que, comme V est dcroissante le long des trajectoires et que V est inni quand x1 ou x2 tend vers linni, les trajectoires sont ncessairement bornes et donc sont des fonctions uniformment continues du temps. En eet, leurs drives en temps sont uniformment bornes. Or un lemme t classique danalyse (lemme de Barbalat) dit que si lintgrale 0 h(s)ds dune fonction uniformment continue h de [0, +[ dans R est convergente pour t tendant vers linni, alors cette fonction h admet 0 comme limite en t = +. t d d V on sait que dt V converge vers 0 et comme Comme V (t) V (0) = 0 dt 2 2 t d d d d V (t) dt V (0) = 0 dt2 V , dt2 V converge aussi vers 0. Ce qui nous a donn dt x2 et x1 convergeant vers 0. En fait nous aurions pu faire le mme raisonnement lidentique pour un systme gnral pour peu que nous disposions

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE

25

dune fonction V , innie linni, borne infrieurement et qui dcrot le long de toutes trajectoires. Il est remarquable que dans ces petits calculs nous nayons jamais eu besoin dexpliciter la loi horaire des trajectoires t x1 (t) et t x2 (t). Cest un peu la magie des fonctions dites de Lyapounov V : elles permettent davoir des informations prcieuses sur les solutions dquations direntielles sans avoir connatre explicitement les lois horaires avec des fonctions usuelles (polynmes, exponentielles et fonctions spciales). Un lecteur ayant compris ce qui prcde naura pas de dicult montrer le rsultat suivant. Thorme 3 (Invariance de LaSalle, version globale). Soit Rn x v (x) Rn une fonction continment drivable de x. Soit Rn x V (x) R+ une fonction relle continment drivable de x et qui tend vers linni quand x tend vers linni. On suppose que V dcrot le long des trajectoires de d x = v (x) : cela veut dire que, pour tout x Rn , on a : dt d V (x) = V (x) v (x) = dt
n

i=1

V (x) vi (x) 0. xi

d Alors, pour toute condition initiale x0 , la solution de dt x = v (x) est dnie pour tout temps t > 0 (pas dexplosion en temps ni) et elle converge vers le sous ensemble de Rn engendr par les trajectoires t (t) Rn qui vrient d d la fois dt = v ( ) et dt V ( ) = 0. d On parle de plus grand espace invariant par rapport la dynamique dt = d v ( ) contenu dans lhypersurface dquation dt V ( ) = 0. Cet ensemble est caractris par le systme sur-dtermin de n + 1 quations

d 1 = v1 ( ) dt . . . d n = vn ( ) dt V ( ) vi ( ) = 0 xi

i=1

et n inconnues (1 (t), . . . , n (t)) qui sont des fonctions continment drivables de t. Pour rsoudre ce systme, i.e., obtenir les quations de lensemble invariant de LaSalle, il sut de driver un certain nombre de fois la dernire d quation et de remplacer, chaque nouvelle drivation en temps, les dt i par vi ( ). On obtient ainsi une famille dquations portant uniquement sur qui caractrise cet ensemble limite qui attire les trajectoires : cest un attracteur .

26

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

Dans le cas o x est un point dquilibre, v ( x) = 0, il est clair que (t) = x est une solution du systme sur-dtermin prcdent et donc x appartient cet ensemble limite. Si, maintenant, x est lunique solution de ce systme sur-dtermin, alors on est sr que les trajectoires du systme converge toute vers x . On dit que x est globalement asymptotiquement stable. La version locale de linvariance de LaSalle autour dun point dquilibre est la suivante : Thorme 4 (Invariance de LaSalle, version locale). Soit x un point de Rn et B une boule de centre x et de rayon > 0. Soit B x v (x) Rn une fonction continment drivable de x. Soit B x V (x) R+ une fonction relle continment drivable de x et qui admet x comme minimum strict sur B : x B/{x }, V (x) > V ( x), On suppose que V dcrot le long des trajectoires de dire que, pour tout x B , on a : d V (x) = V (x) v (x) = dt
n d x dt

= v (x) : cela veut

i=1

V (x) vi (x) 0. xi

Alors, il existe > 0, tel que pour toute condition initiale x0 dans la boule de d centre x et de rayon , la solution de dt x = v (x) est dnie pour tout temps t > 0 (pas dexplosion en temps ni) et elle converge vers le sous ensemble de cette boule de rayon engendr par les trajectoires t (t) qui vrient d d la fois dt = v ( ) et dt V ( ) = 0. Montrons en quoi la preuve du thorme 2 repose sur cette version locale du thorme dinvariance de LaSalle. On part donc dun quilibre x et on suppose que les valeurs propres du linaire tangent, les valeurs propres de vi ( x) sont toutes parties relles nla matrice jacobienne A = x j gatives. Il nous faut construire une fonction de Lyapounov V autour de x . On sait que exp(tA) est une matrice qui converge exponentiellement vers 0 quand t tend vers + (cf appendice A). On pose
+ 1i,j,n

P =
0

exp(sA ) exp(sA) ds

o A est la transpose de A. P est une matrice symtrique dnie positive. On pose V (x) = (x x ) P (x x ).

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE Ainsi on a


+

27

V (x) =
0

[exp(sA)(x x )] exp(sA)(x x ) ds

On a en drivant par rapport au temps sous le signe somme d V (x) = dt


+ 0

([exp(sA)(x x )] exp(sA)v (x) + [exp(sA)v (x)] exp(sA)(x x )) ds = v (x). Comme v (x) = A(x x ) + o( x x ), on a
+ 0

car

d x dt

d V (x) = dt

[exp(sA)(x x )] exp(sA)A(x x ) ds [exp(sA)A(x x )] exp(sA)(x x ) ds + o( x x 2 ).

+
0

d V (x) = (x x ) Q(x x ) + o( x x 2) dt avec la matrice symtrique Q dnie par lintgrale


+

Ainsi

Q=
0

([exp(sA)A] exp(sA) + [exp(sA)] exp(sA)A) ds

Comme

d ds

exp(sA) = exp(sA)A (voir Annexe A), on a

d [(exp(sA)) exp(sA)] = [exp(sA)A] exp(sA) + [exp(sA)] exp(sA)A ds et donc lintgrale dnissant Q se calcule explicitement :
=+ Q = [(exp(sA)) exp(sA)]s = I s=0

o I est la matrice identit de taille n. Ainsi on a d V (x) = x x dt


2

+ o( x x 2 ).

d V 0 pour x assez proche de x et ne sannule quen x = x . Le Donc dt thorme 4 dinvariance locale permet alors de conclure : le point dquilibre x est localement asymptotiquement stable.

28

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

d Ainsi, lorsque les valeurs propres au point dquilibre x de dt x = v (x) sont toutes parties relles ngatives, des petits carts lquilibre sont naturellement amortis : le systme oublie sa condition initiale et converge vers x : le systme nest que transitoirement aect pas une petite perturbation de conditions initiales. Vrions quil est galement peu sensible des perturbations sur les paramtres. Les quations dpendent en fait de paramtres p = (p1 , . . . , pr ) Rr d x = v (x, p), avec v fonction continment connus avec une prcision nie : dt drivable de x et p. On suppose que pour une valeur nominale du paramtre p , le systme admet un point dquilibre x , v ( x, p ) = 0 dont les valeurs propres sont toutes parties relles strictement ngatives. Quen est-il des systmes voisins obtenus pour des valeurs de p proche de p . En fait pour p proche de p , d x = v ( x, p ) admet aussi un point dquilibre ( p ) qui dpend continment dt de p, v ((p), p), ( p) = x et les valeurs propres en (p) sont toutes parties relles strictement ngatives. Ainsi, qualitativement, le systme ne change pas comportement lorsquon bouge un peu les paramtres : localement autour de x , les trajectoires convergent vers un point dquilibre unique qui reste proche de x : la situation est robuste au sens o elle ne change que trs peu lorsque lon bouge un peu la condition initiale et les paramtres. Lexistence de (p) rsulte en fait du thorme des fonctions implicites : le point dquilibre est dni implicitement par v (x, p) = 0 ; pour p = p on a une vi solution x ; pour cette solution x , la matrice jacobienne x ( x , p ) est inversible j (pas de valeur propre nulle puisquelles sont toutes par hypothse parties relles strictement ngatives) ; v dpend continment de p. Le fait que les valeurs propres en (p) restent parties relles strictement ngatives, vient du fait que les valeurs propres dune matrice dpendent de faon continue de ces coecients3 . Dans cette section nous avons vu deux notions trs importantes qui permettent de mieux comprendre le rle des systmes linaires dans ltude des systmes de rgulation : la notion de stabilit au sens de Lyapounov ; les valeurs propres associes un point dquilibre. Dans de trs nombreuses situations, on obtient des informations souvent susantes en tudiant le systme linaire tangent autour dun tat dquilibre. En eet, on peut lire sur les valeurs propres la stabilit. Si toutes les parties relles sont strictement ngatives alors le systme est localement asymptotiquement stable mme si les quations ne sont pas rigoureusement exactes et comportent de petites erreurs paramtriques. Si lune des valeurs propres au moins admet une partie

On na pas en gnral de dpendance plus rgulire que C 0 : prendre par exemple 0 1 avec p proche de 0 ; les valeurs propres sont p. p 0
3

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE

29

relle strictement positive alors lquilibre nest pas stable au sens Lyapounov et de petites causes peuvent avoir sur des temps longs de grands eets : on parle alors de systmes instables, trs sensibles aux conditions initiales. Des prototypes de tels systmes sont les systmes chaotiques.

1.2.5

Le linaire tangent autour dun point dquilibre

Terminons par un petit calcul qui montre quel point les valeurs propres du linaire tangent associ un quilibre sont des nombres intrinsques, i.e. ils d ne dpendent pas des systmes de coordonnes x. Lorsque quon pose dt x= v (x), on considre un jeu particulier de variables pour crire les quations du systme. Ici on a choisi, pour caractriser notre systme les variables (x1 , . . . , xn ) Rn . Ce choix est clairement arbitraire : on pourrait tout aussi bien prendre dautres variables, par exemple les variables z = (z1 , . . . , zn ) dnies par une correspondance bi-univoque avec les variables x : z = (x) et x = (z ) o les fonctions et sont des applications inverses lune de lautre. Par exemple, pour reprer un point dans la plan on doit dnir un jeu de deux nombres. On peut prendre les coordonnes cartsiennes avec labscisse et lordonne mais on peut aussi prendre les coordonnes polaires avec un angle et la distance lorigine. Il est vident que les rsultats de nature qualitative ne doivent pas dpendre du choix des variables. La stabilit ne peut pas dpendre du choix arbitraire que lon fait pour crire les quations et faire des calculs. d x = v (x) et quelle admet Si dans les variables x, la dynamique scrit dt un point dquilibre x asymptotiquement stable, alors dans les variables z , les quations vont bien-sr changer, mais le point dquilibre x aura son correspondant z via les transformations inversibles et , et z sera biensr lui aussi asymptotiquement stable. Supposons les transformations et rgulires (diomorphismes continment drivables). Alors, les quations dans les variables z se dduisent de celles dans les variables x par un simple calcul de fonctions composes : d d x = (z ) = dt dt Ainsi d z = w(z ) = dt z z d z = v ((z )) dt
1

v ((z )).

Comme v ( x) = 0, w( z ) = 0. Un calcul montre alors que la matrice jacobienne de v en x est semblable celle de w en z : w v ( z) ( z) = ( x) ( z) z z x z

30

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

car ( z ) est une matrice inversible. Il sut de driver par rapport z la z relation (z ) w(z ) = v ((z )) z et de remarquer, puisque w( z ) = 0, quil nest pas utile de calculer lhorrible 2 drive seconde z2 car elle est en facteur de w( z ). Ainsi les valeurs propres obtenues avec les variables x sont les mmes que celles obtenues avec les variables z . Le spectre de la matrice du linaire tangent autour dun point dquilibre est un invariant : il est indpendant du choix des variables que lon choisit pour faire les calculs. Ces valeurs propres ont pour unit linverse dun temps : ce sont des indicateurs intrinsques caractrisant les chelles du systme. On les appelle aussi exposants caractristiques. Revenons maintenant au rgulateur PI dcrit par le modle (1.8). On ) est strictement lintrieur des contraintes : suppose que lquilibre ( x, I = u umin < I < umax . ), le systme scrit Pour (x, I ) autour de ( x, I
d x dt d I dt

= f (x, Kp ( x x) + I ) = Ki ( x x)

Le calcul du linaire tangent fait apparat la matrice jacobienne suivante :


f x ( x,u )

Kp f u Ki

( x,u )

f u ( x,u )

(1.11)

0 et f >0 La trace de cette matrice 2 2 est strictement ngative car f x u par hypothse et les gains Kp , Ki sont strictement positifs. Son dterminant est strictement positif pour les mmes raisons. Donc ses deux valeurs propres sont parties relles strictement ngatives. Ainsi, quels que soient les choix de Kp > 0 et Ki > 0, le linaire tangent est toujours localement asymptotiquement stable.

1.2.6

Les systmes dynamiques dans le plan

Nous aimerions avoir en plus la stabilit globale : prouver que mme ) convergent elles aussi les trajectoires de (1.8) qui dmarrent loin de ( x, I vers ( x, I ). On pourrait appliquer le thorme 3 si lon avait une fonction de Lyapounov V . Compte tenu des hypothses sur la fonction f et de la saturation S at , nous ne savons pas construire explicitement une telle fonction

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE

31

Fig. 1.5 les quatre comportements asymptotiques possibles pour une trajectoire dun systme dynamique autonome dni dans la plan. de Lyapounov. Nous allons plutt utiliser ici les arguments topologiques de Poincar sur les quations direntielles dans le plan. d x = v (x) avec x R2 , Poincar a Pour le systme autonome plan dt montr quil nexiste que quelques types de rgimes asymptotiques possibles. Prenons une condition initiale x0 R2 et considrons t x(t) la solution de d x = v (x) qui dmarre en t = 0 en x0 . Alors on a les cas suivants pour des dt temps t positifs (voir illustrations sur la gure 1.5) : 1. Si x(t) ne reste pas borne, alors soit x(t) explose en temps ni, soit x(t) nexplose pas en temps ni mais alors x(t) est dnie pour tout t > 0 et limt+ x(t) = +. En rsum : si la trajectoire nest pas borne pour les temps positifs, elle converge vers linni en temps ni ou en temps inni. 2. Si x(t) reste born pour les temps positifs alors elle est dnie pour tout temps t > 0 et on distingue trois cas : (a) soit x(t) converge vers un point dquilibre (en temps inni si x0 nest pas un point dquilibre). (b) soit x(t) converge vers une trajectoire priodique. (c) soit x(t) senroule autour dune courbe ferme du plan forme de trajectoires qui partent en t = dun point dquilibre et qui arrive en t = + vers, a priori, un autre point dquilibre (orbite htrocline si les deux points dquilibres sont dirents et orbite homocline si les deux points dquilibres sont identiques). En rsum, lorsque la trajectoire reste borne elle converge soit vers un point soit vers une courbe ferme du plan, courbe qui est tangente au champ de vecteurs vitesse v (x). Ainsi en dimension 2, on ne peut pas avoir de comportements asymptotiques trs compliqus : il est dusage de dire quen dimension deux, il ne peut pas y avoir de chaos. Il faut bien comprendre que

32

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.2 0.4 0.6 0.8 1

Fig. 1.6 Premire bissectrice et graphes de la fonction logistique [0, 1] x f (x) = 4x(1 x) [0, 1] et de ses deux premires itres. cela nest vrai que pour le plan (sur le tore S1 S1 ce nest plus vrai, les trajectoires peuvent tre partout denses), et que pour les systmes continus autonomes, i.e., dnis par deux quations direntielles scalaires ne dpendant pas du temps. Largument essentiel de dmonstration est lunicit des trajectoires. Dans le plan deux trajectoires ne peuvent se couper sans tre confondues. Si lon rajoute par exemple une dpendance priodique en temps v (x, t) v (x, t + 2 ) alors ce nest plus vrai. Le systme autonome sous-jacent est de dimension 3 : (x1 , x2 , ) R2 S1 avec d d d x1 = v1 (x1 , x2 , ), x2 = v2 (x1 , x2 , ), = 1. dt dt dt Ce nest plus vrai non plus avec les systmes discrets mme de dimension un. Par exemple les solutions de lquation logistique xk+1 = 4xk (1 xk ) qui dmarrent en x0 [0, 1] restent toujours dans [0, 1] mais elles sont partout denses dans [0, 1]. Pour comprendre ce phnomne il faut tudier des itres de la formule de rcurrence. On a reprsent les applications correspondantes sur la gure 1.6. Les rgimes asymptotiques pour les indices k grands sont bien plus complexes donc. Revenons maintenant notre rgulateur PI (1.8). Cest bien un systme continu et autonome dans le plan. On peut donc utiliser les rsultats de Poincar que nous venons de prsenter. Or, nous avons vu que les trajectoires

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE

33

restent bornes (cf, gure 1.3). Donc les trajectoires convergent soit vers un quilibre, soit vers une courbe ferme du plan qui dlimite un domaine born. = u Tout dabord il nexiste pas dautre quilibre que lquilibre ( x, I ) dont on a suppos lexistence lintrieur strict des contraintes. En eet ) est lunique solution de ( x, I f (x, S at [Kp ( x x) + I ]) = 0 at Ki ( x x) + Ks (S [Kp ( x x) + I ] Kp ( x x) I ) = 0. Cela rsulte du raisonnement suivant : Si umin Kp ( x x) + I umax , on a x = x par la seconde quation et alors la premire donne I comme solution de f ( x, I ) = 0. Mais f est . strictement croissante par rapport son second argument, donc I = I max max Si Kp ( x x) + I > u , la premire quation f (x, u ) = 0 implique que x > x car f ( x, umax ) > 0 et f dcroissante par rapport x. La seconde quation donne Ki (x x ) = Ks (umax (Kp ( x x) + I )) < 0 car Ks > 0 par hypothse. Ce qui contredit le fait que x soit plus grand que x . Si Kp ( x x) + I < umin , la premire quation f (x, umin ) = 0 implique que x < x et la seconde le contraire. ) de (1.8), Pour montrer la convergence globale vers lunique quilibre ( x, I il sut de montrer quil nexiste pas de courbe ferme du plan, forme partir de trajectoires du systme. En eet, daprs les rsultats de Poincar rappels ci-dessus, il ne restera que la convergence vers lquilibre comme rgime asymptotique possible. Pour montrer quil nexiste pas de telles courbes fermes, nous allons exhiber une contradiction par le thorme de Gauss en lectrostatique : lintgrale de la divergence du champ lectrique E sur un domaine born est gale lintgrale sur le bord de son ux sortant. Dans le plan, cela donne la formule suivante : divE = E n ds

o n est la normale extrieure. Admettons qu partir des trajectoires de (1.8), on puisse former par raccordement une courbe ferme du plan. On note lintrieur de cette courbe ferme. Par construction, le champ de vecteur associ (1.8) f (x, S at [Kp ( x x) + I ]) at Ki ( x x) + Ks (S [Kp ( x x) + I ] Kp ( x x) I ) est alors tangent au bord de : son ux sortant est donc nul. Pourtant, on remarque que sa divergence de ce champ de vecteur (trace de la matrice

34

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

jacobienne) f f Kp (S at ) + Ks ((S at ) 1) x u est toujours strictement ngative car (S at ) vaut soit 0 soit 1. On obtient une contradiction. Donc, il nexiste pas de telle courbe ferme. Nous voyons donc que nous avons en fait dmontr le rsultat suivant : Thorme 5 (Critre de Bendixon). Soit R2 x v (x) R2 une fonction v2 v1 (x) + x (x) < 0 pour continue et drivable. On suppose que div(v )(x) = x 1 2 d 2 presque tout x R . Soit t x(t) une solution de dt x = v (x) qui reste borne pour les temps t positifs. Alors, sa limite quand t tend vers + est un point dquilibre, i.e., une solution x R2 de v ( x) = 0.

45 40 35 30

25 20 15 10 5

10 0 10 20 10 0 10 20

Fig. 1.7 Systme chaotique de Lorenz. Le point dquilibre vers lequel tend la trajectoire nest pas ncessairement stable au sens de Lyapounov. Enn, le rsultat nest plus du tout vrai en dimension suprieure deux. Il sut de prendre le systme chaotique de

1.2. PI SUR UN PREMIER ORDRE NON LINAIRE Lorenz (reprsent sur la gure dx1 dt dx2 dt dx3 dt 1.7) = s(x1 + x2 ) = rx1 x2 x1 x3 = bx3 + x1 x2 ,

35

avec s = 10, r = 28 et b = 8/3. Toutes les trajectoires sont bornes, la divergence du champ de vecteurs, s 1 b < 0, et les trajectoires ont des comportements asymptotiques complexes et encore aujourdhui assez mal compris. d x = f (x, u) avec comme Ainsi, mme avec un modle trs mal connu, dt f f hypothse sur f , x 0 et u > 0, le rgulateur proportionnel intgral (1.6) qui prend en compte les contraintes sur u [umin , umax ] assure la convergence asymptotique globale ds que Kp > 0, Ki > 0 et Ks Kp > Ki , vers nimporte quel quilibre x associ u [umin , umax ]. La raison fondamentale dune telle robustesse vient du fait que le systme en boucle ferme est un systme autonome plan pour lequel nous avons pu utiliser la thorie de PoincarBendixon. De la caractrisation des rgimes asymptotiques illustrs sur la gure 1.5, on peut montrer directement le rsultat suivant, rsultat utile pour montrer lexistence dune orbite priodique (cycle limite) tel quillustre sur la gure 1.8. Thorme 6. Soit R2 x = v (x) R2 une fonction de classe C 1 . On considre le systme dynamique x = v (x). On suppose quil existe dans le plan un ensemble compact tel que toute trajectoire ayant sa condition initiale dans reste dans pour les temps t > 0. soit ne contient aucun point dquilibre , soit contient un unique point dquilibre dont toutes les valeurs propres sont parties relles strictement positives. alors M contient une orbite priodique. Lide derrire cet nonc est que les trajectoires bornes dans le plan doivent approcher des orbites priodiques ou des points dquilibre lorsque le temps tend vers linni. Si ne contient aucun point dquilibre alors il doit contenir une orbite priodique. Si contient un unique point dquilibre hyperbolique instable, alors au voisinage de ce point, les trajectoires sont repousses par ce point. Il est alors possible de dnir une courbe ferme permettant dexclure ce point et de se ramener au cas prcdent.

36

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

Fig. 1.8 Existence dun cycle limite dans un compact positivement invariant et qui ne comporte quun seul point dquilibre "compltement instable".

1.3
1.3.1

Systmes lents/rapides
Dynamiques ngliges

Les simulations en boucle ferme du thermostat partir du modle (1.4) sont approximatives. Cela est d, entre autre, au fait que nous supposons que le rgulateur PI lorigine discret (c.f. la rcurrence (1.1)) est considr comme continu avec les quations (1.2). Si la priode dchantillonnage t est petite nous ne faisons quune petite erreur. Dautres approximations sont galement dues au fait que nous avons nglig de nombreux phnomnes dynamiques comme par exemple lhtrognit des tempratures et rad , les uctuations de la chaudire dues sa propre rgulation de temprature, ... Bref, nous avons suppos que toute une partie des phnomnes transitoires sont rapides et stables. Implicitement, notre modle de simulation ne prend en compte que les dynamiques les plus lentes, disons celles qui sont plus lentes que 30 minutes. Ainsi, bien quen thorie nous ayons montr que (1.4) soit globalement asymptotiquement stable pour tout gain Kp , Ki et Ks positifs vriant Ks Kp > Ki , nous ne pouvons pas les choisir en fait aussi grands que nous le souhaiterions. Lorsque les gains sont petits on constate un bon accord entre la thorie propose et la pratique. Lorsque les gains sont grands, on constate des carts importants, voire des instabilits. Lexplication est que des gains trs grands rendent le systme (1.4) trs rapide. Pour sen

1.3. SYSTMES LENTS/RAPIDES

37

convaincre il sut de voir que les valeurs propres du systme linaire tangent ) sont celles de la matrice jacobienne (1.11), matrice autour de lquilibre ( x, I dont au moins une des valeurs propres tend vers linni en module quand Kp et/ou Ki tendent vers +. Il est possible de rendre le systme (1.4) aussi rapide quon le souhaite avec un PI grand gains. Ce nest vrai quen thorie, sur le modle. En pratique, les gains du rgulateur sont limits par lapparition dinstabilits lies toutes les dynamiques rapides ngliges et qui sont alors excites par le contrle. Par exemple, lapproximation du PI discret par un PI continu nest plus valable, si on prend Kp et Ki tels que le temps intgral Ti = Kp /Ki soit du mme ordre de grandeur que la priode dchantillonnage t (on trouvera des dtails sur les problmes induits par un tel schma de discrtisation dans lAnnexe C). Il ne faut donc jamais oublier que, bien que le modle sur lequel repose le contrle soit simple, le systme rel est en gnral toujours nettement plus complexe. Une tendance naturelle est de proposer des modles de plus en plus compliqus et de fait inextricables, ce qui est, en y rchissant bien assez facile et ne mne pas trs loin dans la comprhension des phnomnes. Par exemple, on ne peut pas en gnral mener danalyse thorique de stabilit comme nous lavons fait sur un systme de grande dimension. Il est en revanche nettement plus dicile de proposer un modle de complexit minimal compte tenu des phnomnes que lon souhaite comprendre et contrler. Le but de cette section est de donner quelques rsultats gnraux sur les systmes multi-chelles et leur approximation, sous certaines hypothses, par des systmes moins complexes et ne comportant essentiellement quune seule chelle de temps. Cest une des voies possibles pour justier la pertinence de modles rduits sur lesquels on sait prouver mathmatiquement des rsultats de stabilit et de robustesse. Les modles plus compliqus, plus proches en quelque sorte de la ralit au sens platonicien du terme, sont alors vu comme des perturbations rapides de ces modles plus simples utiliss en contrle. Rajoutons au modle de simulation en boucle ferme (1.4), la dynamique de la sonde de temprature. Le modle le plus simple ayant une base physique vidente est une dynamique linaire stable du premier ordre avec une constante de temps trs petite car la sonde a trs peu dinertie thermique et donc rpond trs rapidement (en quelques secondes pour xer lordre de grandeur) aux changements de la temprature de lair ambiant. Ce modle est vriable exprimentalement, par calibration de la sonde thermique et analyse de sa rponse transitoire. Ainsi, en notant > 0 cette petite constante de temps, la temprature utilise pour le calcul de u nest plus mais sa mesure note m relie via le ltre du premier ordre suivant : d m m = dt

38

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

Cette dynamique supplmentaire complte le modle en boucle ferme tudier. Celui-ci est u(t)rad ext d (t) = (M Cp ( (t)) + M ( (t)) dt )(u(t)+rad ) ch Cp ext d m (t)) + Ks (u(t) Kp ( m (t)) I (t)) I (t) = Ki ( dt (1.12) d m m ( t ) = ( t ) ( t ) dt m (t) + I (t)). u(t) = S at (Kp ( En posant X = (, I ) et Z = m , ce modle admet la structure suivante d X = F (X, Z ), dt d Z = G(X, Z ) dt

alors que le modle initial (1.4) correspond en fait = 0 d X = F (X, Z ), dt 0 = G(X, Z ).

Nous allons voir que, si les valeurs propres de G (X, Z ) pour (X, Z ) vriant Z G(X, Z ) = 0 sont toutes parties relles ngatives, alors pour > 0 assez petit les trajectoires des deux modles sont trs proches. On comprend mieux pourquoi on ne peut pas prendre Kp et/ou Ki trop . Donc grands. Si tel est le cas, Kp et/ou Ki seront alors du mme ordre que 1 1 d d X comportera des termes en . Lcriture sous la forme dt X = F (X, Z ) dt d avec dt Z = G(X, Z ) nest plus valable et lapproximation prcdente peut tre mise en dfaut. On ne sait plus dduire de la stabilit de (1.4) une information sur celle de (1.12).

1.3.2

Perturbations singulires

Nous allons donner ici une premire formalisation trs lmentaire qui sappuie sur la thorie des perturbations singulires . Cette thorie a pour origine ltude des phnomnes de couches limites prs des parois pour un uide ayant une faible viscosit. Certaines terminologies en sont directement inspires. La thorie des perturbations permet de relier les trajectoires de deux systmes ayant des espaces dtat de dimensions direntes : dans ce cadre, le systme perturb possde un nombre dtats plus grand que le systme rduit. Plus prcisment, cette thorie fournit un ensemble de techniques pour approcher un systme perturb, en liminant les eets court terme et en ne conservant que les eets long terme. Ainsi, la thorie des perturbations constitue un outil prcieux pour ltude dun systme dynamique et de son approximation par des systmes lents de taille plus petite, cest dire pour la

1.3. SYSTMES LENTS/RAPIDES


systme lent-rapide

39
systme lent

x
perturbations singulires
6

x
6

0 x
6

-t

0 x
6

-t

moyennisation

0 1
-t

-t

Fig. 1.9 la thorie des perturbations consiste liminer les eets court terme, t , quils soient asymptotiquement stables ou oscillants, an de ne conserver que les eets long terme, t 1 (0 < 1). construction de modles rduits qui rsument lessentiel des comportements qualitatifs long terme. Classiquement, on distingue deux cas illustrs par la gure 1.9 : les eets rapides se stabilisent trs vite et on parle alors de perturbations singulires, dapproximation quasi-statique, ou encore dapproximation adiabatique ; les eets rapides ne sont pas asymptotiquement stables mais restent damplitude borne ; ils sont donc oscillants et lon parle alors de moyennisation ou encore dapproximation sculaire. Seul le premier cas est abord ici. Le second est trait dans lannexe B lorsque la dynamique rapide est priodique. Les cas plus gnraux o la dynamique rapide nest pas priodique sont nettement plus diciles formaliser : il faut passer par la thorie ergodique des systmes dynamiques pour obtenir la dynamique lente en prenant des moyennes faisant intervenir la mesure asymptotique du rapide. On ne considre ici que les systmes continus (une analyse similaire peut tre conduite pour les systmes discrets) du type : dx = f (x, z, ) dt ( ) dz = g (x, z, ) dt

40

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

Fig. 1.10 Le champ des vitesses est quasi-vertical pour la forme normale de Tikhonov ( ) avec x Rn , z Rp , 0 < 1 un petit paramtre, f et g des fonctions rgulires. Ltat partiel x correspond aux variables dont lvolution est lente (variation signicative sur une dure en t de lordre 1) et z aux variables dont lvolution est rapide (variation signicative sur une dure en t de lordre de ). On dit que t correspond lchelle de temps rapide et t 1 lchelle de temps lente. Considrons pour commencer lexemple suivant 4 d x=z dt d z = x z dt

avec 0 < 1. Intuitivement, on voit que x est une variable lente (sa vitesse est petite et dordre 1), tandis que z est une variable rapide (sa vitesse est dordre 1/). On a donc envie de dire que z atteint rapidement son point dquilibre x et que x volue selon x = x. Cette ide est fondamentalement correcte ds que les eets rapides sont asymptotiquement stables. La situation gomtrique est donne par la gure 1.10 : pour > 0 assez petit et localement autour de g (x, z, 0) = 0, les trajectoires du systme sont quasi-verticales et convergent toutes vers le sous ensemble de lespace dtat (sous-varit ) donn lordre 0 en par lquation g (x, z, 0) = 0. Les rsultats ci-dessous justient alors, sous essentiellement lhypothse d z= de stabilit asymptotique x constant de la dynamique rapide en z , dt
Comme autre exemple caractristique citons la cintique chimique o les constantes de vitesses de certaines ractions peuvent tre nettement plus grandes que dautres (cintiques lentes et cintiques trs rapides).
4

1.3. SYSTMES LENTS/RAPIDES

41

On nglige ainsi les convergences rapides vers la sous-varit donne approximativement par les quations statiques g (x, z, 0) = 0. Toute trajectoire du systme ( ) dmarrant en (x, z ) est proche, aprs une dure en t de lordre de quelques , de la trajectoire du systme lent (0 ) dmarrant avec le mme x (projection selon la verticale, cf gure 1.10). Nous voyons que cette approximation saccompagne dune diminution de la dimension de ltat. En fait, la rduction nest quune restriction une sous-varit invariante, les quations de cette sous-varit tant approximativement donnes par g (x, z, 0) = 0. On a le premier rsultat gnral suivant (sa dmonstration gure dans [52]) Thorme 7 (Tikhonov). Soit le systme ( ). Supposons que H1 lquation g (x, z, 0) = 0 admet une solution, z = (x), avec fonction rgulire de x et g (x, (x), 0) z est une matrice dont toutes les valeurs propres sont parties relles strictement ngatives ; on dit alors que le systme est sous forme standard ; H2 le systme rduit dx = f (x, (x), 0) (1.13) dt x(t=0) = x0 admet une unique solution x0 (t) pour t [0, T ], 0 < T < +. Alors, pour susamment proche de 0, le systme complet ( ) admet une unique solution (x (t), z (t)) sur [0, T ] ds que la condition initiale z0 appartient au bassin dattraction du point dquilibre (x0 ) du sous-systme rapide De plus on a
0+

g (x, z, 0), lapproximation des trajectoires du systme perturb ( ) par celles du systme lent (0 ) obtenu en faisant = 0 dans les quations : dx = f (x, z, 0) 0 dt ( ) 0 = g (x, z, 0).

d = g (x0 , , 0). dt lim z (t) = z 0 (t)

lim x (t) = x0 (t) et

0+

uniformment sur tout intervalle ferm de la forme [a, T ] avec a > 0.

42

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS Lhypothse H1 implique que, x x, la dynamique de d = g (x, , 0). dt

est asymptotiquement stable autour du point dquilibre (x). Elle est en particulier valable ds que les valeurs propres de la matrice jacobienne du sous-systme rapide g (x, (x), 0) z sont toutes parties relles ngatives pour peu que z0 soit dans le bassin dattraction dattraction du systme rapide. Remarquons aussi que (0 ) scrit ainsi d x = f (x, (x), 0) dt avec z = (x), la fonction x (x) tant dnie implicitement par g (x, , 0) = 0. Sans hypothses supplmentaires, lapproximation du thorme 7 nest valable, en gnral, que sur des intervalles de temps t de longueur borne T . Lhypothse supplmentaire, quil convient alors dutiliser pour avoir une bonne approximation pour tous les temps positifs, concerne le comportement asymptotique du systme rduit (1.13) : si ce dernier admet un point dquilibre dont le linaire tangent est asymptotiquement stable, lapproximation est alors valable pour tous les temps positifs (pourvu que la condition initiale x0 soit dans le bassin dattraction de lquilibre de la dynamique lente). Thorme 8 (Prservation de la stabilit). Supposons en plus des hypothses du thorme 7 que le systme rduit (1.13) admet un point dquilibre x : f ( x, ( x), 0) = 0 et que les valeurs propres de f f + x z x

( x,( x),0)

sont parties relles strictement ngatives. Alors, pour tout 0 assez proche de 0, le systme perturb ( ) admet un point dquilibre proche de ( x, ( x)) et dont le linaire tangent est asymptotiquement stable. Preuve Lexistence du point stationnaire pour le systme perturb est laisse en exercice (il sut dutiliser le thorme des fonctions implicites pour g = 0 et ensuite pour f = 0). Quitte faire, pour chaque une translation, nous supposons que (0, 0) est point stationnaire du systme perturb : f (0, 0, ) = 0, g (0, 0, ) = 0.

1.3. SYSTMES LENTS/RAPIDES

43

Notons, z = (x), la solution, proche de x = 0, de g (x, z, ) = 0. Suite la translation prcdente, on a (0) = 0. Considrons le changement de variables (x, z ) (x, w = z (x)). Les quations du systme perturb dans les coordonnes (x, w) ont alors la forme suivante d (x, w, ), x=f dt d w=g (x, w, ) dt

(0, 0, ) = 0, g avec f (x, 0, ) 0. Le systme rduit scrit alors, dans les coordonnes (x, w) : d (x, 0, ). x=f dt Ce changement de variable triangularise le jacobien du systme perturb :
f (0, 0, ) x f (0, 0, ) w 1 g (0, 0, ) w

0 car

g (0, 0, ) = 0 puisque g (x, 0, ) 0. Comme les valeurs propres de x f g (0, 0, 0) et de (0, 0, 0) sont toutes parties relles strictement ngatives, x z f g les valeurs propres de (0, 0, ) et (0, 0, ) le sont aussi pour assez petit. x z Ce qui montre la stabilit asymptotique du systme perturb pour tout assez petit. Cette preuve peut tre amliore pour montrer que lapproximation du thorme 7 devient valide, localement autour de ( x, ( x)) et pour tous les temps t positifs, ds que est assez petit (le caractre local tant alors indpendant de tendant vers zro).

1.3.3

Feedback sur un systme deux chelles de temps

En thorie des systmes, le thorme 8 est utilis constamment5 de la manire suivante. Rajoutons une commande u ( ) et supposons, commande u xe, que les hypothses du thorme de Tikhonov soient valables. Ainsi dx = f (x, z, u, ) dt (1.14) dz = g (x, z, u, ) dt
Cest un peu comme Monsieur Jourdain dans le Bourgeois Gentil-Homme de Molire lorsquil ralise quil parle constamment en prose.
5

44

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

avec (x, u) le point dquilibre asymptotiquement stable de la partie rapide dx d = g (x, , u, 0). Le systme lent est alors = f (x, (x, u), u, 0). dt dt Supposons que nous ayons un retour dtat lent u = k (x) tel que le systme lent boucl soit asymptotiquement stable autour du point dquilibre ( x, u = k ( x)). Alors pour tout > 0 assez petit, le systme perturb (1.14) avec le bouclage lent u = k (x), admet un point dquilibre hyperbolique proche de ( x, z = ( x, u )). Cela veut simplement dire que lon peut, pour la synthse dun bouclage, ignorer des dynamiques asymptotiquement stables et assez rapides. On parle alors de robustesse par rapport aux dynamiques ngliges. Noter que le retour dtat ne porte que sur la partie lente, x. Un bouclage du type u = k (x, z ) o z apparat directement est envisageable mais alors il faut vrier que la dpendance en z de u ne dtruise pas la stabilit de la dynamique rapide d = g (x, , k (x, ), 0). dt
g u

Cest toujours le cas lorsque g ne dpend pas de u :

= 0.

1.3.4

Modle de contrle et modle de simulations

Pour les besoins de simulation ou de conception dun rgulateur, on na pas besoin dutiliser le mme modle. Ainsi il ny a pas de modle universel. Pour petit il sut, pour concevoir le feedback u = k (x) de prendre par exemple comme modle, lapproximation lente de (1.14) : d x = f (x, (x, u), u, 0). dt Pour la simulation, il peut cependant tre utile de vrier que le feedback u = k (x) inject dans les quations (1.14) donne des rsultats proches de ceux que lon aurait avec le modle lent en boucle ferme : d x = f (x, (x, k (x)), k (x), 0). dt Cela permet de vrier si est assez petit. En pratique, on remarque que na pas besoin dtre trs petit : on constate quun rapport de 2 entre les constantes de temps de la dynamiques rapide et celles de la dynamique lente donne bien souvent une bonne approximation. Cela veut dire que = 1/2 est dj petit. Voyons en dtail la conception dun contrleur. cette n, on reprend les notations introduites dans la sous-section 1.1.4. On part dun modle

1.3. SYSTMES LENTS/RAPIDES

45

de contrle issu dune modlisation mme trs grossire du systme pour dcrire les corrlations entre les entre (u, w) et les mesures y . Ce modle est le modle dtat d x = f (x, u, w, p), y = h(x) dt dpendant des paramtres p. On labore partir de ce modle de contrle et pour une valeur nominale des paramtres p , une loi de contrle sous la forme dun retour dynamique de sortie (comme lest un PI) : d =a (y, , v ), dt (y, , v ) u=k

o v est le nouveau contrle (pour le PI cest la consigne). Comme on sappuie sur une thorie correcte, on est alors sr du comportement du systme boucl nominal d d (h(x), , v ), w, p x = f (x, k ), =a (h(x), v ). dt dt Par exemple, on sait que lorsque les perturbations w et le nouveau contrle v sont constant, le systme est asymptotiquement stable. On peut bien sr rsoudre numrique le systme direntiel ci-dessus pour et a vrier que nous ne nous sommes pas tromps dans les choix de k . On peut aussi, dans une seconde tape, simuler le systme prcdent mais avec un paramtre p dirent de p , pour vrier que notre contrleur nest pas trop sensible aux erreurs de paramtres et surtout pour quantier les erreurs paramtriques au del desquelles le contrleur conduit des comportements non acceptables. On quantie en simulation la robustesse paramtrique du contrleur . On voit donc ici que nous avons encore deux modles : le modle de contrle de paramtre p et le modle de simulation de paramtre p. Les mthodes usuelles de contrle garantissent alors que pour p assez proche de p , tout de passe bien : de petites erreurs de paramtres nengendrent que de petits carts sur les trajectoires. En gnral, il nexiste pas de mthode simple qui permet de quantier analytiquement les valeurs critiques de p au del desquelles le systme change de comportement. Cest lobjet de la thorie des bifurcations et des catastrophes, thories mathmatiquement assez techniques (on pourra se reporter [22]). Il convient aussi de faire quelques simulations pour quantier la robustesse du contrleur par rapport des dynamiques ngliges. Le but est en autre de vrier que les gains ne sont pas irralistes (en gnral trop grands) : pour et a simplier, il ne faut pas que, dans les formules servant calculer k , il y ait de trop grands coecients et/ou de petits diviseurs. Les dynamiques ngliges sont de trois ordres qualitativement : celles lies au processus de mesure et donc aux capteurs donnant y ; celles lies au

46

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

processus de contrle et donc aux actionneurs assurant des valeurs arbitraires pour u ; celles lies au systme lui-mme, indpendamment des actionneurs et des capteurs. Par exemple, on peut associer y et u des premiers ordres avec des petites chelles de temps y > 0 et u > 0 pour prendre en compte le fait que la rponse des capteurs nest pas instantane et que les actionneurs ne sont pas parfaits. On simule alors le systme tendu d x = f (x, um , w, p) dt d =a (y m , v ) dt d y y m = h(x) y m dt u d um = k (y m , , v ) um dt

et on teste pour diverses valeurs y et u les performances en quantiant les seuils critiques au del desquels les performances se dgradent notablement pour conduire des instabilits. Si, par exemple, on saperoit que la constante de temps y que lon avait nglige au dpart, est en faite trop grande compte tenu des performances demandes au contrleur, alors il nous faut changer le modle de contrle et lenrichir avec une partie de la dynamique du capteur. Cela signie quon a pris comme modle de contrle de dpart, un modle trop grossier, compte tenu des objectifs. Il ne faudrait pas en conclure quil faille ds le dpart prendre le modle le plus complet possible comme modle de contrle. Comme en physique, il est en fait bien plus ecace de partir dune vision trop synthtique qui sappuie sur des a priori trs forts mais dont on est conscient 6 . Den dduire un modle simple et ultra-simpli, dont on sait pertinemment quil est faux mais dont, si ncessaire, on identiera les faiblesses et que lon corrigera au bout de quelques itrations de la mthodologie rsume ci-dessus. On aura alors obtenu un modle de complexit rduite qui reprsentera lessentiel de la dynamique que lon souhaite contrler. Moralit : les choses sont dj assez compliques naturellement, gardons nous de les rendre encore plus obscures et utilisons des modles de complexit aussi rduite que possible compte tenu des objectifs atteindre.
Citons lexemple des calculs perturbatifs de trajectoires spatiales pour lesquels on remet en cause les hypothses simplicatrices au fur et mesure : trajectoire plane puis dans lespace, anomalie des potentiels de gravit, non-sphricit des plantes, eets atmosphriques en altitude basse,...
6

1.3. SYSTMES LENTS/RAPIDES

47

1.3.5

Contrle hirarchis et rgulateurs en cascade

La thorie des systmes lents/rapides permet de justier une pratique couramment utilise pour la synthse de boucle de rgulation : le contrle hirarchis qui consiste imbriquer les rgulateurs . Un exemple sura pour comprendre ce dont il sagit. Cet exemple est non trivial car il sagit dun second ordre avec dynamique inconnue et des contraintes la fois sur ltat et sur le contrle. La synthse dun contrleur prenant explicitement les contraintes dtat est un problme largement ouvert et pour lequel on ne dispose pas, lheure actuelle, de solutions systmatiques et simples. Des solutions plus numriques fondes sur les techniques de commande prdictive ne sont cependant que partiellement justies sur le plan mathmatique, en particulier en ce qui concerne lexistence de solutions 7 . Le contrleur que nous proposons ci-dessus nest, lui aussi, que partiellement justi mathmatiquement mais il a le mrite de sappuyer sur le paradigme des systmes lents/rapides, sa structure est facile comprendre. Le rglage des gains est simple et seectue partir des contraintes. Considrons un systme du second ordre de la forme suivante d2 d x = f (x, x) + u 2 dt dt o x et u sont dans R. De tels modles se rencontrent naturellement pour les systmes mcaniques (par formulation variationnelle) : il sagit de lquation de Newton qui relie lacclration aux forces extrieures parmi lesquelles se d trouve le contrle u. On suppose quon ne connat pas bien f (x, dt x). Il est possible de se ramener au moins approximativement au cas de deux systmes du premier ordre. Le principe est un contrle en deux temps : un premier rgulateur proportionnel (rgulateur P) assure la convergence rapide d x vers une consigne v lentement variable. Un second de la vitesse v = dt rgulateur PI stabilise la position x x et fournit la consigne lentement variable v au rgulateur rapide prcdent. De plus, nous allons voir quil est assez ais de prendre en compte des contraintes sur la vitesse v et le contrle u.
La technique MPC (Model Predictive Control) propose une slection optimale, au sens dun critre choisi par lutilisateur, parmi des trajectoires satisfaisant des contraintes. Elle suppose lexistence de telles trajectoires et lunicit dun optimum caractrisable numriquement. Ce sont ces hypothses qui sont bien souvent dicile garantir sur des exemples concrets gnraux. Si ces hypothses sont vries, la technique MPC consiste en la rsolution itre du problme doptimisation avec mise jour chaque nouvelle priode dchantillonnage de la condition initiale. La fonction cot optimal est alors une fonction de Lyapounov, elle garantit la stabilit. On se rfrera lAnnexe D pour un expos de cette mthode.
7

48

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

Les contraintes sont u [umax , umax ] et v [v max , v max ] (umax , v max > 0). On considre un rgime stationnaire caractris par un tat admissible ( x, v = 0) max et un contrle admissible u ; soit |u | < u et f ( x, 0) + u = 0. On cherche par un bouclage u stabiliser (x, v ) en ( x, u ), en respectant les contraintes sur u et aussi sur v . Si la vitesse initiale v0 appartient [v max , v max ] alors on souhaite que pour t > 0 la vitesse v (t) du systme en boucle ferme reste aussi dans [v max , v max ]. Cet objectif doit tre atteint de manire robuste aux incertitudes sur la fonction f (x, v ). Sans hypothse supplmentaire sur f , il est dicile de donner une rponse un peu gnrale ce problme. Nous allons supposer quil existe 0 < < 1 tel que pour tout (x, v ), |f (x, v )| umax (1.16) Cela veut dire que pour toute valeur de (x, v ), on peut choisir un contrle u d2 qui domine f (x, v ) et ainsi imposer le signe de dt 2 x. La cascade de deux rgulateurs, voque ci-dessus, donne lalgorithme de contrle suivant : d x x) + Ks ( v Kp ( x x) I ) dt I = Ki ( (1.17) at [Kp ( x x) + I ] v = Sv at u = Su [Kp ( v v )/]

Pour cela crivons cette quation du second ordre sous la forme dun systme de deux quations du premier ordre : d x=v dt (1.15) d v = f (x, v ) + u dt

avec Kp , Ki et Ks strictement positifs, Ks Kp > Ki , et un paramtre poat at sitif. Les fonctions Sv et Su sont les fonctions de saturation usuelles associes aux contraintes sur v et u (projections sur les convexes [v max , v max ] et [umax , umax ]). La dynamique en boucle ferme est le systme des trois quations direntielles non linaires suivantes : d x=v dt d at at v = f (x, v ) + Su [Kp (Sv [Kp ( x x) + I ] v )/] dt at d I = Ki ( x x) + Ks (Sv [Kp ( x x) + I ] Kp ( x x) I ). dt

1.3. SYSTMES LENTS/RAPIDES

49

Pour (x, v, I ) proche de ( x, 0, u ), les contraintes ne sont pas actives et donc at at les fonctions Sv et Su sont les fonctions identits. Ainsi, le systme boucl ci-dessus devient : d x=v dt d v = f (x, v ) + Kp (Kp ( x x) + I ) v ) dt d I = Ki ( x x). dt Ce systme est bien sous la forme standard du thorme 7 de Tikhonov : ltat lent est (x, I ), ltat rapide v , et la dynamique rapide est bien asymptotiquement stable. Le systme lent d d x = v, I = Ki ( x x) dt dt est bien asymptotiquement stable. On conclut la stabilit via le thorme 8. En labsence de contraintes, la preuve de la stabilit repose uniquement sur le fait que est susamment petit. Pour garantir la stabilit avec la prise en compte des eets non linaires at at dus aux fonctions de saturation Su et Sv , il convient de ne pas choisir Kp et Ki nimporte comment. Intuitivement, si notre raisonnement par chelles de temps est correct, il faut que le systme rapide soit en mesure de suivre at sa consigne v = Sv [Kp ( x x) + I ] mme si cette dernire varie au cours du d v doit respecter les contraintes temps : cela entrane qualitativement que dt sur u, tout au moins sur la partie de u qui reste disponible aprs avoir domin la dynamique f (x, v ). Cela veut dire approximativement que le module de d v ne doit pas dpasser (1 )umax . Il nous faut maintenant avoir une ide dt d de lordre de grandeur de dt v : pour cela on drive dans le cas non satur v d et on nglige la variation de I . Cela nous donne comme estimation de dt v : v max Kp v . Ainsi, il est naturel dimposer Kp (1 . )umax On constate, avec des simulations numriques quavec 2 Kp 2Kp v max , K = , = 3, , K = Kp = s i (1 )umax 5 5 le contrleur (1.17) est bien stabilisant tout en respectant les contraintes sur u et approximativement les contraintes sur v . Ce qui prcde nest pas une preuve formelle mais plutt une illustration de la dmarche fonde sur la thorie des perturbation pour concevoir un premier rgulateur simple pour un systme du second ordre dont le modle comporte dimportantes incertitudes que lon peut dominer par un contrle born. De plus ce rgulateur (1.17) prend en compte la contrainte dtat |v | v max .

50

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

1.4
1.4.1

Pr-compensation et feedforward
Deux types de pr-compensations

Revenons sur le thermostat dcrit par le modle (1.3). Trs souvent, on utilise aussi pour ajuster la position de la vanne trois voies, u, la temprature extrieure, ext . Ainsi, u ne dpend pas seulement de la temprature intrieure , mais aussi de ext . Souvent, on substitue alors aux et de sa consigne quations (1.2) les quations suivantes : (t)) + I (t) Kext ext ) u(t) = S at (Kp (

, lorsque la tempraavec Kext un coecient positif. Ainsi, mme si = ture extrieure baisse, u a tendance augmenter pour anticiper la prochaine baisse de . Le rajout de ext permet danticiper les variations de temprature extrieure. Une autre anticipation un peu plus subtile est celle quon utilise lors . Il est assez frquent de programmer une de changement de la consigne consigne de temprature un peu plus basse dans la journe, pendant les heures o les habitants sont absents, et un peu plus haute en dbut et en est une fonction constante par morceaux. Il est clair n de journe. Ainsi chacune de ses discontinuits : que la temprature ne peut pas suivre la rponse de notre systme nest pas instantane ; notre modle (1.3) nous implique que est une fonction drivable de t et dont la drive est borne. max > 0 cette borne : Notons d max . (t) dt (t) par une fonction continue Il est naturel de modier localement la fonction et drivable par morceaux r (t) : l o est constante, r est aussi constante ; admet un saut, alors r est la fonction ane par morceau de pente l o max ( 1) qui remplace le saut par une rampe infrieure en module comme illustr sur la gure (1.11). Ainsi, r (t) est une approximation conti(t), drivable par morceaux et dont la drive reste toujours plus nue de max en valeur absolue. En quelque sorte, r (t) est une consigne petite que tout en tant rellement de temprature variable dans le temps, proche de ralisable par le systme. De plus, il est facile de calculer en temps rel la (t). fonction r (t) qui lisse en quelque sorte la consigne brute

(t)) + Ks (u(t) Kp ( (t)) I (t) + Kext ext ). d I (t) = Ki ( dt

1.4. PR-COMPENSATION ET FEEDFORWARD

51

(t), fonction constante Fig. 1.11 approximation de la consigne brute t par morceaux impossible suivre cause des discontinuits, par la rfrence t r (t), fonction continue et drivable par morceaux correspondant une trajectoire ralisable par le systme. (t), on rajoute alors au PI (1.2) la drive r : Avec r (t) au lieu de r (t)) u(t) = S at (Kp (r (t) (t)) + I (t) + Kr

avec Kr un coecient positif. Leet de ce terme est le suivant. Supposons que pour t < 0, = r . partir de t = 0, r commence une rampe de pente en constante positive rsultant dune augmentation de la consigne brute t = 0. Alors, le terme en r aura tendance booster le contrle u avec un surplus de chauage pour compenser linertie thermique du btiment et ainsi avoir une temprature qui suivra mieux la rfrence ralisable. Il sagit dune anticipation sur la rampe de monte. De mme, la n de la rampe r retourne 0 et alors, le contrle u aura un saut vers de monte pour r , le bas, une sorte de freinage pour viter que ne dpasse en n de monte la valeur de r (vite lover-shoot). La combinaison de ses deux types danticipations, lune sur la perturba, conduit lalgorithme tion mesure ext , lautre sur la consigne variable PI avec anticipation suivant : r (t) Kext ext u(t) = S at Kp (r (t) (t)) + I (t) + Kr d I (t) = Ki (r (t) (t)) dt + K u(t) K ( (t) (t)) I (t) K s p r r r (t) + Kext ext .

r (t)). d I (t) = Ki (r (t) (t)) + Ks (u(t) Kp (r (t) (t)) I (t) Kr dt

(1.18)

Des versions plus ou moins sophistiques de cet algorithme sont utilises dans les thermostats vendus dans le commerce.

52

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

1.4.2

Cas des systmes linaires dordre 1

Pour comprendre de faon plus formelle et donc plus prcise le rle de ces deux types danticipations, prenons comme modle de contrle, le modle u ext ). On note et u les carts linaire tangent autour dun quilibre (, , et u lquilibre. La premire variation de (1.3) autour de lquilibre , donne un systme du premier ordre stable. On va la calculer. Le modle (1.3) est d de la forme dt = f (, u, ext ) avec f fonction rgulire de ces arguments et f (, u , ext ) = 0. Il est dusage de noter par y , u par u et ext par w. d y = ay + bu + dw dt avec a= f ,
u ext , ,

(1.19) f ext

b=

f u

,
u ext , ,

d=

.
u ext , ,

On remarque que a > 0, b > 0 et d > 0. Ainsi, le systme est asymptotiquement stable en boucle ouverte. On peut interprter la temprature y comme la sortie dun ltre du premier ordre de constante de temps = 1/a, excit par le signal (bu + dw) en notant d 1 y = ( bu + dw y ). dt Pour simplier, nous considrons ici : umin = et umax = +. Supposons que nous souhaitions suivre une rfrence t yr (t) continue et drivable par morceaux tout en connaissant chaque instant la perturbation w(t). On dnit le contrle de rfrence comme tant la fonction t ur (t) continue par morceaux et dnie par y r = ayr + bur + dw cest dire ur (t) = y r (t) + ayr (t) dw(t) . b

Pour obtenir u, on rajoute alors ur une correction de type PI sur lerreur de suivi, e = y yr : u(t) = ur (t) + Kp (yr (t) y (t)) + I (t), d I (t) = Ki (yr (t) y (t)). dt

La partie anticipation (feedforward) correspond ur : elle compense, de faon cohrente avec le modle, les eets transitoires dus aux variations de yr et w. On obtient ainsi en boucle ferme un systme direntiel autonome pour les variables e = y yr et I : d e = (bKp + a) e + bI, dt d I = Ki e. dt

1.4. PR-COMPENSATION ET FEEDFORWARD Ce systme scrit alors sous la forme dun systme du second ordre d d2 e = 20 e (0 )2 e 2 dt dt avec les notations usuelles 20 = (bKp + a) , (0 )2 = bKi

53

(1.20)

o 0 > 0 est la pulsation de coupure et > 0, le facteur damortissement . Ainsi, mme si w et yr varient au cours du temps, leurs variations sont pr-compenses par ur qui est une combinaison linaire de yr , y r et w. On comprend mieux lintrt des termes Kr y r et Kext w dans (1.18). En pratique, les coecients a, b et d ne sont connus quavec une certaine approximation. Si lon note a , b et d les carts entre leur vraies valeurs (celles du modle (1.19)) et celles utilises pour le calcul de ur par y r = (a a )yr + (b b )ur + (d d )w, alors la dynamique de lerreur e devient d d2 e = 20 e (0 )2 e + b u r + d w + a y r . 2 dt dt En absence de terme de feedforward, le simple contrleur PI u = Kp (yr y ) + I, d I = Ki (yr y ) dt

conduit un systme du second ordre similaire pour e = y yr d d2 r + dw + ay r . e = 20 e (0 )2 e y 2 dt dt (1.21)

mais avec un terme source y r + dw ay r a priori beaucoup plus grand que b u r + d w + a y r dans (1.20), puisque les erreurs paramtriques sont supposes peu importantes. Ainsi, mme avec des erreurs de modlisation, le rajout de ur conduit en gnral une amlioration notable du suivi : e reste plus prs de 0. En labsence de feedforward, on voit que la partie rtro-action, le feedback, doit alors corriger aprs coup les variations de la rfrence yr et les perturbations w. Il en rsulte une moins bonne prcision dans le suivi de la rfrence yr et des performances dgrades car on demande au feedback de compenser non seulement les erreurs de modle, ce qui est son rle premier, mais aussi les variations de yr et w, ce qui est mieux ralis par le contrle feedforward ur .

54

CHAPITRE 1. SYSTMES DYNAMIQUES ET RGULATEURS

Chapitre 2 Transfert
Les rsultats du chapitre prcdent sont essentiellement de nature qualitative. Ils donnent des garanties de stabilit et de robustesse de faon perturbative : si le systme nominal en boucle ferme ou en boucle ouverte admet un quilibre asymptotiquement stable, alors le systme perturb (rgulirement et/ou singulirement) admet un quilibre voisin de celui du systme nominal, quilibre qui est lui aussi asymptotiquement stable. Cette robustesse est uniquement garantie ici de faon asymptotique, i.e., pour les valeurs susamment faibles du petit paramtre . La question de savoir partir de quelle valeur critique de , il y a perte de stabilit, est dun point de vue pratique important. Une telle question concerne ce quon appelle les marges de robustesse . Il est important de savoir partir de quel seuil derreurs des instabilits peuvent apparatre. Dun point de vue formel, il sagit dtudier les changements qualitatifs de comportement en fonction de paramtres : cest la thorie des bifurcations et des catastrophes, thorie que nous naborderons pas dans ce cours [14]. Pour plus petit que cette valeur critique, se pose aussi en pratique lanalyse et la description des transitoires avant le retour lquilibre. Cette autre question concerne la caractrisation des performances. Les marges de robustesse et la caractrisation des performances sont des notions diciles aborder de faon gnrale pour un systme non linaire. Cependant, il est possible dobtenir des informations prcieuses uniquement en regardant le systme linaris tangent autour de lquilibre. On peut alors calculer explicitement les transitoires ainsi que les marges de robustesse par rapport aux erreurs paramtriques et aux dynamiques ngliges. Il est entre autres possible dobtenir des informations de nature plus quantitative sur les rponses en boucle ferme des excitations extrieures (perturbations sinusodales certaines frquences et/ou changement de point de consigne). Pour caractriser la robustesse et les performances, il est alors commode 55

56

CHAPITRE 2. TRANSFERT

dutiliser sur le linaire tangent, le calcul symbolique 1 , i.e. de remplacer d loprateur dt par la variable de Laplace s C (voir [39]), pour ensuite faire des calculs algbriques avec les quations du systme linaris autour de lquilibre. Il faut cependant tre conscient que cette approche est limite aux systmes linaires dont les coecients ne dpendent pas du temps. Pour cela, le langage graphique des schmas blocs est gnralement utilis. Trs souvent, on nutilise mme plus les quations direntielles et on crit directement les modles sous forme de schmas blocs avec des fonctions de transfert.

2.1

Lexemple de base

Nous allons considrer toujours le mme exemple, celui de la n du chapitre prcdent : d y (t) = ay (t) + bu(t) + dw(t). dt avec a, b et d positifs. Le contrle est u, la perturbation w et la mesure y . On a vu, toujours dans le chapitre prcdent, quun simple rgulateur PI2 u = Kp (yc y ) + I, d I = Ki (yc y ) dt

avec Kp , Ki > 0 assure la convergence asymptotique de y (t) vers la consigne yc pour peu que la perturbation w soit constante. Rappelons quon na pas besoin de connatre cette constante pour trouver de manire asymptotique u qui assure y = yc . Nous souhaitons maintenant tudier les trois points suivants : 1. Que se passe-t-il si la mesure de y nest pas instantane mais est effectue avec un certain temps de retard ; linstant t, on connat la valeur de y (t ). Ainsi la valeur y (t) ne sera disponible, pour calculer u, qu linstant t + . Ce retard est par exemple imputable la chane informatique temps-rel ou des dlais de communication pour les capteurs loigns. 2. Que se passe-t-il si la perturbation non mesure w nest plus constante mais sinusodale de la forme w(t) = cos(t) avec constant. Ne peut-il pas y avoir des phnomnes de rsonances avec le rgulateur PI ? 3. Que se passe-t-il si lon superpose les deux points prcdents, un retard de mesure et une perturbation sinusodale ?
aussi dnomm calcul oprationnel [53, 15] en rfrence la thorie des oprateurs linaires [33]. 2 Nous ne prenons pas en compte les contraintes sur u ici.
1

2.1. LEXEMPLE DE BASE

57

Ltude de ce type de questions seectue trs naturellement dans le cadre des fonctions de transfert et de faon nettement moins aise avec la forme dtat. En particulier, le calcul du retard maximum au del duquel le systme en boucle ferme devient instable ne peut se faire simplement quavec le critre de Nyquist, critre qui fait appel au thorme de Cauchy et au calcul des rsidus pour les fonctions de la variable complexe. La mise en vidence de rsonances sanalyse trs bien avec le diagramme de Bode. Nous laissons de ct les problmes de convergence des transformes de Laplace qui sont relativement hors-sujet ici. On pourra se reporter [10] pour un expos mettant en lumire le rle des bandes de convergence dans le plan complexe. d Le principe des calculs est trs simple : il sut de remplacer loprateur dt par s (par abus de notation, on note ici y (s) la transforme de Laplace de y y (t)). Dans ce cas, loprateur retard devient exp(s) o est le retard. En eet on a formellement (sans chercher le justier) le dveloppement en srie + ()k (k) y (t). y (t ) = k ! k=0 Comme y (k) =
dk y dtk

= sk y , on voit naturellement apparatre la srie


+

k=0

()k k s k!

qui nest autre que exp(s). Ainsi, en calcul symbolique, loprateur qui la fonction y associe la fonction y retarde de nest autre quune multiplication par exp(s). On part donc du systme boucl avec yc et w variables et un retard sur la mesure de y : d y (t) = ay (t) + bu(t) + dw(t) dt u(t) = Kp (yc (t) y (t )) + I (t) d I (t) = Ki (yc (t) y (t )). dt On crit alors : sy = ay + bu + dw u = Kp (yc es y ) + I sI = Ki (yc es y ) et on peut calculer algbriquement y , u, et I en fonction de yc et w . On sintresse bien sr surtout y qui est alors une combinaison linaire de yc

58

CHAPITRE 2. TRANSFERT

et w, les coecients tant des fractions rationnelles en s et es . Tout calcul fait, on obtient : y= sd b(Ki + sKp ) yc + w s s(s + a) + b(Ki + sKp )e s(s + a) + b(Ki + sKp )es

La stabilit se lit sur les zros des dnominateurs, i.e., les valeurs s C pour lesquelles la formule ci-dessus donnant y nest pas dnie. Sil existe > 0, tel que les valeurs de s pour lesquelles la fonction de la variable complexe (cest une fonction dite entire car elle est dnie pour tout valeur de s C) D(s) = s(s + a) + b(Ki + sKp )es sannule, sont tous dans le demi plan (s) , alors le systme est asymptotiquement stable en boucle ferme. En revanche, si un des zros est partie relle strictement positive, le systme est instable et la sortie y (t) nest pas borne lorsque t grandit. Cette caractrisation est une gnralisation naturelle de celle que nous d avons dj vu pour les systmes linaires sous forme dtat dt x = A( x x) : le systme est stable en boucle ouverte lorsque les zros de det(sI A) sont tous parties relles strictement ngatives. En eet la formule donnant x explicitement partir de x ( conditions initiales nulles) x = (sI A)1 Ax nest pas dnie pour les valeurs de s appartenant au spectre de A. De plus, comme det(sI A) est un polynme, il ne possde quun nombre ni de zros do lexistence de > 0. Pour des fonctions de s plus compliques comme les polynmes en s et es (appels quasi-polynmes [23]), on a un nombre inni de zros en gnral. La localisation des zros, la fonction entire D(s) tant donne, est un problme ardu et non compltement rsolu lheure actuelle (voir [21] pour un expos complet et le 2.4.2 pour un exemple de rsultats quon peut obtenir). Pour = 0, D(s) = s2 + (bKp + a)s + bKi et on na que deux zros parties relles strictement ngatives (Kp , Ki > 0 et a 0). Nous verrons avec le critre de Nyquist comment, en partant de = 0, il est possible de calculer le retard critique partir duquel D(s) admet ncessairement des zros instables et donc le systme devient instable. Lorsque le systme est stable en boucle ferme, on peut tudier sa sensibilit des perturbations sinusodales w et voir sil na pas de rsonances trop marques3 . On sait quun systme asymptotiquement stable et soumis une
3

Noter que lorsquil nest pas stable, la question des rsonances na pas de sens.

2.1. LEXEMPLE DE BASE

59

sous la forme y (t) = Y exp(t), u(t) = U exp(t) et I (t) = I exp(t). Cela d revient faire exactement les mmes calculs que ceux faits en remplaant dt par s et le retard par exp(s), mais avec s = . On obtient donc Y= On pose sd s(s + a) + b(Ki + sKp )es = G( ) exp(( ))
s=

excitation priodique, converge, aprs un transitoire de mise en rgime, vers un rgime priodique de mme priode. Lorsque des rsonances apparaissent, lamplitude de ce rgime priodique, tout en restant nie, peut trs bien tre trs grande par rapport lamplitude de lexcitation w. Pour une excitation priodique w = cos(t), le calcul du rgime priodique peut se faire en passant en complexe avec w = exp(t) et en cherchant la solution (y, u, I ), pour yc = 0, de d y (t) = ay (t) + bu(t) + d exp(t) dt u(t) = Kp (yc (t) y (t )) + I (t) d I (t) = Ki (yc (t) y (t )) dt

sd s(s + a) + b(Ki + sKp )es

.
s=

o G( ) 0 est le gain et ( ) [, [, la phase. Il sut alors de prendre la partie relle des formules pour avoir le rgime forc de y . La solution priodique du systme en boucle ferme4 , avec yc = 0 et w = cos(t) est y (t) = G( ) cos(t + ( )). Il est dusage de reprsenter sur deux graphiques, appels diagrammes de Bode, linuence de sur le gain G( ) et le dphasage ( ). En gnral, on trace, sur le premier graphique 20 log10 (G( )) (dcibels comme chelle des ordonnes) en fonction de log10 ( ) (log10 comme chelle en abscisse), sur le second ( ) en fonction de log10 ( ). Une grande variation locale de G en fonction de est la signature de rsonances, dont les frquences caractristiques sont donnes approximativement par les maxima locaux de G (les piques de rsonance). On peut faire des mesures exprimentales avec un analyseur de frquence si le systme est eectivement asymptotiquement stable
4

Le systme est toujours suppos asymptotiquement stable en boucle ferme.

60

CHAPITRE 2. TRANSFERT

et ainsi mesurer directement le gain G( ) et dphasage ( ) en fonction de la frquence . La caractrisation de la stabilit dun transfert entre/sortie via les zros du dnominateur est correcte en principe. Il faut cependant faire un peu attention dans les calculs avec la variable s cause de possibles simplications des ples avec des zros. Cela veut dire que dans les calculs qui permettent de calculer y , il se peut que lon ait une racine commune entre le numrateur et le dnominateur. Prenons un exemple trs simple qui fera bien comprendre le problme. Supposons que nous ayons le modle suivant entre y et u : d2 d y y = u u. 2 dt dt Le calcul symbolique donne (s2 1)y = (s + 1)u, soit y= 1 s1 u= u. 2 s 1 s+1 (2.1)

On pourrait en conclure que le systme est stable car le seul ple est en s = 1. Ce qui est manifestement faux : cest un second ordre et donc il admet une autre valeur propre. Cette dernire est ici instable et vaut 1. Le problme vient de la simplication par s 1. Il faut donc tre conscient de d ce problme lorsque lon fait ce type de calcul en remplaant brutalement dt par s. Pour comprendre lorigine de ce problme, il faut reprendre la transformation de Laplace unilatrale (voir [38]) et remarquer que la transformation d y donne en fait sy y (0) au lieu de sy comme de Laplace unilatrale de dt nous lavons fait, pour simplier les calculs. Ainsi, tous nos calculs sont corrects si t = 0 tout est lquilibre et tout est nul. Si tel nest pas le cas, alors on a s2 y sy 0 y0 = su u u0 o y0 ,y 0 et u0 sont les valeurs t = 0 de y , le calcul compltement rigoureux suivant : y (s) =
d y dt

et u. Dans ce cas on obtient

sy 0 + y 0 u0 1 u+ . s+1 s2 1

Cette quation rvle le transfert de u y et celui des conditions initiales y . La simplication nest plus possible partout sauf pour des valeurs trs particulire de y0 , y 0 , et u0 , celles o y 0 + y 0 u0 = 0. On retrouve ainsi le fait que le systme est instable cause du ple en s = 1 qui ne disparat plus.

2.2. SCHMAS BLOCS ET FONCTIONS DE TRANSFERT

61

Dans la suite du chapitre nous supposerons quil ny a pas de canular de ce type. En pratique, ce genre de simplication se voit trs vite. Il sut de bouger un tout petit peu les coecients par exemple prendre u 0.999u pour casser cette simplication et revoir apparatre le ple instable qui avait disparu. Ce genre de simplication est surtout gnante quand elle touche des ples instables. Pour des ples stables, cest moins embtant et ce dautant plus sils ont des parties relles fortement ngatives. On aurait pu prsenter tout cela, en justiant rigoureusement les calculs avec la transforme de Laplace et de Fourier. Cependant, nous voyons avec cet exemple quil est bien plus utile dans un premier temps de montrer comment faire les calculs. On arrive ainsi directement des questions diciles, mathmatiquement intressantes et en plus dun intrt pratique certain. Comme, par exemple, savoir si tous zros du polynme exponentiel en s, s(s + a) + b(Ki + sKp )es sont parties relles strictement ngatives. Cest une question dicile pour laquelle on trouvera certaines rponses au 2.4.2. Cela nest pas si tonnant que cela par analogie avec la conjecture de Riemann. Cette dernire arme que les zros non triviaux dune autre fonction de la variable complexe s, la fonction (s), sont tous sur laxe (s) = 1/2. La thorie des nombres bute sur cette conjecture depuis des annes avec en ligrane la loi de distribution des grands nombres premiers.

2.2
2.2.1

Schmas blocs et fonctions de transfert


De la forme dtat vers le transfert

Fig. 2.1 le schma bloc de type fonctionnel pour le systme en boucle ouverte avec comme contrle u, comme perturbation w et comme sortie (mesure) y . Reprenons les notations thorie des systmes telles que nous les avons

62

CHAPITRE 2. TRANSFERT

Fig. 2.2 le schma bloc de type fonctionnel pour le systme en boucle ferme o le nouveau contrle est v (typiquement la consigne que y doit suivre). vues au 1.3.4. Le systme dcrit par d x = f (x, u, w, p), dt Rn x y = h(x) Rm<n

dpend des paramtres p, des entres u et w (les contrle et perturbation). On dispose de capteurs qui fournissent chaque instant la valeur y . Les dimensions de x, u, w et y sont ici arbitraires. Il est dusage dassocier cette description le schma bloc de la gure 2.1. On labore une loi de contrle sous la forme dun retour a priori dynamique de sortie (comme lest un rgulateur PI) : d =a (y, , v ), dt (y, , v ) u=k

o v est le nouveau contrle. On complte alors le schma bloc en boucle ouverte de la gure 2.1 par une boucle de rtro-action en montrant bien que les informations issues de la sortie y , sont utilises de manire causale pour ajuster le contrle u de faon atteindre un objectif prcis. Typiquement, le nouveau contrle v sera la consigne que devra suivre y , lorsque u et y ont la mme dimension, et u sera calcul de faon ce que y suive v . On obtient ainsi le schma en boucle ferme de la gure 2.2. v Supposons que lon soit autour dun point dquilibre ( x, y , u , w, , ). On peut linariser toutes les quations ci-dessus, celle du systme et celle du contrleur, et ainsi tudier, dans un premier temps (qui est souvent le dernier aussi en pratique), de faon plus formelle et approfondie la dynamique du systme en boucle ouverte et/ou en boucle ferme. On supposera ici pour simplier que dim(u) = 1, dim(y ) = 1 et que v = yc est la consigne que doit suivre y (problme de rgulation mono-variable). On notera toujours v par (x, y, u, w, , v ) les carts lquilibre ( x, yc , u , w, , ).

2.2. SCHMAS BLOCS ET FONCTIONS DE TRANSFERT

63

Fig. 2.3 le schma bloc en boucle ouverte Les quation linarises scrivent : d x = Ax + Bu + Dw dt y = Cx o les matrices A, B , D, C , L, M , N , F , G, et H sobtiennent partir d et a par s pour obtenir le des drives partielles de f , h, k . On remplace dt systme suivant sx = Ax + Bu + Dw y = Cx u = Ly + M + N v s = F + Gy + Hv. Comme x = (sI A)1 (Bu + Dw) on voit que y = G(s)u + Gw (s)w avec G(s) et Gw (s) des fractions rationnelles suivantes : G(s) = C (sI A)1 B, Gw = C (sI A)1 D. u = Ly + M + N v d = F + Gy + Hv dt

Ce qui nous donne le schma bloc du transfert en boucle ouverte de la gure 2.3. Comme = (sI F )1 (Gy + Hv ), on a u = L + M (sI F )1 G y + N + M (sI F )1 H v. Pour un problme de rgulation on note v = yc et on prend L = N avec G = H . On a donc u = K (s)(yc y ) = K (s)e avec K (s) la fraction rationnelle K (s) = N + M (sI F )1 H.

64

CHAPITRE 2. TRANSFERT

Fig. 2.4 le schma bloc en boucle ferme ; conguration normale dune boucle dasservissement On en dduit le schma bloc de la boucle ferme de la gure 2.4. On notera les indications de signe cot des ches en entre des petits ronds qui symbolisent ici lopration somme. On comprend bien do vient ce type de schma, de la thorie des circuits 5 ... Lintrt de ces schmas blocs rside surtout dans leur cot fonctionnel et visuel. Ils permettent de mieux comprendre les liens de cause eet. On obtient ainsi, de faon directe, les relations entre les entres w et yc et certaines variables comme y et e = yc y : y= GK Gw yc + w, 1 + GK 1 + GK e= 1 Gw yc w. 1 + GK 1 + GK

Il est alors usuel de xer le cahier des charges dun asservissement K (s) en donnant les gabarits pour les diagrammes de Bode (surtout celui relatif au gain en fonction de la pulsation ) des transferts en boucle ferme entre y et yc (performances du suivi de consigne) et entre e et w (performances en rejet de perturbation). Nous renvoyons aux ouvrages classiques [4] et au cours de SI des classes prparatoires.

2.2.2

Du transfert vers ltat : ralisation

Nous avons vu ci-dessus que les transferts G(s) et K (s) taient des fractions rationnelles en s ds que lon part dune forme dtat linaire coecients constants. Nous allons voir que la rciproque est aussi vraie : la donne dun transfert rationnel G(s) est quivalent la donne dune forme dtat canonique minimale. Cest que lon appelle la ralisation sous forme dtat dun transfert rationnel.
On pourra se reporter [7] pour lutilisation rvolutionnaire lpoque de la boucle de rtroaction dans la conception damplicateur rponse linaire.
5

2.2. SCHMAS BLOCS ET FONCTIONS DE TRANSFERT

65

Nous allons traiter un cas particulier mais qui permet de comprendre lalgorithme gnral de construction du systme dtat. Supposons que nous disposions du transfert suivant entre y et u : y (s) = s2 b1 s + b0 u(s) + a1 s + a0

o (a0 , a1 , b0 , b1 ) sont des paramtres. Cela correspond lquation direntielle du second ordre suivante d2 d d y + a1 y + a0 y = b1 u + b0 u. 2 dt dt dt
d On pose z = (z1 , z2 ) = (y, dt y ) et alors on a

d z1 = z2 , dt

d d z2 = a0 z1 a1 z2 + b1 u + b0 u. dt dt

On regroupe les drives dans la seconde quation en une seule variable x2 = z2 b1 u au lieu de z2 . Avec les variables (x1 = z1 , x2 ) au lieu des variables (z1 , z2 ), on a la ralisation dtat souhaite d x1 = x2 + b1 u, dt d x2 = a0 x1 a1 x2 + (b0 a1 b1 )u dt

car y = x1 . On voit que lastuce est de faire disparatre pas des changements astucieux sur ltat, les drives de u. Supposons maintenant que nous ayons eu un degr de plus au numrateur : b2 s 2 + b1 s + b0 u(s). y (s) = 2 s + a1 s + a0
d Alors en reprenant les calculs prcdents on a avec z = (y, dt y) :

d z1 = z2 , dt

d d2 d z2 = a0 z1 a1 z2 + b2 2 u + b1 u + b0 u. dt dt dt

d On pose z 2 = z2 b2 dt u et donc avec les variables (z1 , z 2 ) la plus haute drive 2 d de u, , dt2 u, disparat :

d d z1 = z 2 + b2 u, dt dt

d d z 2 = a0 z1 a1 z 2 + (b1 a1 b2 ) u + b0 u. dt dt

On regroupe les drives dans les deux variables suivantes : x1 = z1 b2 u, x2 = z 2 (b1 a1 b2 )u.

66

CHAPITRE 2. TRANSFERT

On obtient alors la forme dtat souhaite (avec une loi de sortie qui dpend directement de u) d d x1 = x2 +(b1 a1 b2 )u, x2 = a0 x1 a1 x2 +(b0 a0 b2 a1 (b1 a1 b2 ))u. dt dt car y = x1 + b2 u. On comprend ainsi que, par liminations successives des plus autres drives de u en rajoutant des drives de u dans les composantes de ltat, il est toujours possible lorsque la fraction rationnelle y (s)/u(s) = G(s) est propre, cest dire lorsque le degr du numrateur est plus petit que celui du dnominateur, dobtenir la forme dtat suivante : d x = Ax + Bu, y = Cx + Du dt o dim(x) est gal au degr du dnominateur de G(s) : Cette mthode de ralisation se gnralise au systme multi-variable avec m > 1 entres u et p > 1 sorties y , le transfert entre u et y tant donne par une matrice dont les lments sont des fractions rationnelles en s. Un lecteur intress par un expos plus formel de la thorie de la ralisation pourra consulter [28]. On notera aussi le schma gnral de la gure 2.5 de ralisation dune fonction de transfert bn1 sn1 + ... + b0 sn + an1 sn1 + ... + a0 ainsi que les formes canoniques x = Ax + Bu, y = Cx, 1. (A1 , B1 , C1 ) avec 0 1 0 ... 0 0 0 0 1 ... ... 0 ... ... ... A1 = ... , B = 1 ... 0 ... 0 0 1 1 a0 a1 ... ... an1 C1 = b0 ... bn1 ... 0 ... ... 2. (A2 , B2 , C2 ) avec 0 a0 b 0 ... ... , B = ... ... ... 2 bn1 1 an1 G(s) = (C (sI A)1 B + D)u.

C2 =

0 1 A2 = ... 0

0 ... 0 1

2.3. MARGE DE ROBUSTESSE

67

bn1 u 1/s an1 1/s

b1 1/s a1 a0 b0 y

Fig. 2.5 Ralisation dune fonction de transfert propre.

2.3
2.3.1

Marge de robustesse
Critre de Nyquist

Revenons au problme que nous avons laiss en suspend dans la section 2.1. Trouver le retard critique au del duquel le rgulateur PI devient instable. Le schma bloc en boucle ferme correspond celui de la gure 2.4 avec ici les transferts suivants G(s) = On a b , s+a Gw (s) = d , s+a K (s) = Kp + Ki s es .

GK Gw yc + w. 1 + GK 1 + GK Ici G(s) et K (s) sont les quotients de fonctions de s globalement dnies sur le plan complexe. On parle alors de fonctions mromorphes [10] sur le plan complexe C : une fonction mromorphe F de la variable complexe est en fait le quotient P (s)/Q(s) de deux fonctions entires P (s) et Q(s), la fonction Q tant non identiquement nulle. Une fonction entire est la fonction associe une srie dont le rayon de convergence est innie. Ainsi F est mromorphe sur C si et seulement si : + n =0 an s F (s) = n + n n=0 bn s y=

avec an et bn deux suites de nombres complexes6 telles que les sries associes ont un rayon inni de convergence : pour tout r > 0, limn+ an rn = limn+ bn rn = 0. Ainsi exp(s), cosh( s), sin(s)/s sont des fonctions ensin(s2 ) s) , 1/s, cos( sont des fonctions mromorphes sur C. En revanche tires et cos( sin(s) s3 )
6

Il faut quau moins lun de bn soit dirent de 0.

68

CHAPITRE 2. TRANSFERT

exp(1/s) nest ni une fonction entire, ni une fonction mromorphe sur C. En eet, elle admet en 0 une singularit "de degr inni". Pour une fonction P mromorphe7 F = Q , les zros de P sont les zros de F et les zros de Q sont appels les ples de F . Ainsi, les fonctions entires peuvent tre vues comme des polynmes de degr inni et les fonctions mromorphes comme lanalogue des fractions rationnelles en remplaant les polynmes par des fonctions entires. Ainsi autour dun ple z0 , fonctions mromorphes et fraction rationnelles ont des dveloppements limits gnraliss trs similaires de la forme
+ n=n0

an (z z0 )n

avec n0 > 0 (an0 = 0) tant la multiplicit du ple. On a donc G et K les fonctions mromorphes suivantes : G(s) = avec8 NG = b, DG = s + a, NK = (sKp + Ki )es , Dk = s. On fait de mme pour T = T = avec N (s) = b(sKp + Ki )es , D(s) = s(s + a) + b(sKp + Ki )es .
GK 1+GK

NG (s) , DG (s)

K (s) =

NK (s) . DK (s)

N (s) NG NK = D(s) DG DK + N G N K

On cherche donc la valeur critique partir de laquelle D(s) admet au moins un zro dans le demi plan (s) 0, i.e., un zro instable. Comme a 0, Kp , Ki > 0, il est clair que les zros instables de D(s), corp +Ki s e . La fonction respondent aussi aux zros instables 1 + GK = 1 + b sK s( s+ a ) s 1 + GK (s) est ici dnie pour s dirent de 0 et a < 0. On utilise maintenant un rsultat classique danalyse complexe qui relie le nombre de zros et de ples dune fonction mromorphe F (s) dnie sur un domaine du plan complexe, la variation de son argument lorsque lon parcourt de bord du domaine dans le sens direct. On suppose pour que largument de F (s) soit dni sur le bord du domaine, que F est bien dnie
On peut toujours choisir les fonctions entires P et Q pour quelles naient aucun zro en commun. 8 On remarque que NG et DG ne sannulent pas en mme temps, ni NK et DK . Cest important : il faut prendre ici les fractions irrductibles pour G et K .
7

2.3. MARGE DE ROBUSTESSE

69

Fig. 2.6 le thorme de Cauchy pour une fonction analytique F (s) de s C et un domaine C dlimit par la courbe ferme note Cs ; F (s) dcrit une courbe ferme note CF lorsque s parcourt Cs dans le sens direct. Alors, le nombre de tours N que fait CF autour de 0 est reli aux nombres de ples P et de zros Z de F (s) dans par N = Z P . Ici Z = 4 et P = 2, donc F (s) fait deux fois le tour de 0 dans le sens direct, i.e., N = 2. sur le bord (pas de ple sur le bord) et aussi quelle ne sannule pas (pas de zro sur le bord). Comme on eectue une boucle, il est clair que la variation totale de largument est ncessairement un multiple de 2 , disons, 2N o N est alors le nombre de tours que fait la fonction F (s) autour de 0 lorsque s parcourt le bord dans le sens direct une seule fois. Le thorme des rsidus illustr sur la gure 2.6, dit alors que N = Z P , o Z est le nombre de zros et P le nombre de ples lintrieur du domaine. Les zros et les ples sont compts avec leur multiplicit. p +Ki s e admet un ple simple en On voit que F = 1 + GK = 1 + b sK s( s+ a ) 0. Prenons de la forme dun demi-disque comme illustr sur la gure 2.7 avec R > 0 grand et > 0 petit. On note CR, le bord de . On voit que si 1 + GK admet un zro dans le demi-plan (s) 0, il doit faire partie ncessairement dun tel pour un R assez grand et un assez petit. Maintenant, il faut compter le nombre de tour que fait F = 1 + GK autour de 0 : cest ncessairement dans le sens positif car ici 1 + GK , na pas de ple dans . Maintenant, pourquoi considrer F = 1 + GK au lieu de D = NG NK + DG DK la place de F . On viterait le ple en s = 0 quon est oblig de contourner avec le petit demi-cercle de rayon . Cela vient du fait que sur la partie de CR, loin de lorigine (bref sur le grand demi cercle de rayon R) GK est trs petit et reste donc trs proche de 0. Sur cette partie, F ne tourne quasiment plus en restant quasiment identique 1. Le fait que GK soit petit pour les s de CR, loin de lorigine vient du fait que les transferts G et p +Ki s e tend vers 0 lorsque s K sont des transferts causaux : GK (s) = b sK s( s+ a ) tend vers linni tout en restant partie relle positive. On voit que > 0 est capital ici pour avoir cette proprit et que ce nest plus vrai pour s tendant

70

CHAPITRE 2. TRANSFERT

Fig. 2.7 la boucle que doit faire s pour englober tout le demi plan partie p +Ki s relle positive tout en vitant le ple de GK (s) = b sK e en s = 0 ; s( s+ a ) R > 0 est grand et > 0 est petit. vers linni avec une partie relle ngative. Or compter le nombre de tour de 1 + GK autour de 0 revient compter le nombre de tour de GK autour de 1. Ainsi, si la courbe ferme du plan complexe dcrite par GK (s) avec s dcrivant le contour de la gure 2.7 nentoure pas 1, alors, F = 1 + GK nentoure pas 0 et donc par le thorme des rsidus, F nadmet pas de zro dans le demi plan (s) > 0. Cest le fameux critre du revers qui fait tend sourir les tudiants en classes prparatoires. Les considrations ci-dessus on dduit sans peine le critre de Nyquist pour les systmes boucls de la gure 2.4. Les donnes sont le transfert en boucle ouverte G(s) et le transfert du contrleur K (s). On suppose que, sil y a des simplications par des facteurs du type (s s0 ) dans le produit G(s)K (s), elles ne portent sur des s0 parties relles strictement ngatives. On considre dans le plan complexe, la courbe dcrite par G( )K ( ) la pulsation allant de + vers . Cette courbe du plan complexe sappelle le lieu de Nyquist. Le systme est asymptotiquement stable si, est seulement si, le lieu de Nyquist ne passe pas par 1 et sil entoure le point 1 dans le sens indirect autant de fois que GK admet de ples partie relle strictement positive, ples compts avec leur multiplicit. Si, GK admet des ples sur laxe imaginaire, alors le lieu de Nyquist admet des branches innies. Il convient alors pour compter correctement le nombre tours en modiant trs lgrement le contour le long de laxe imaginaire descendant comme on la fait ci-dessus pour le ple en s = 0 (voir gure 2.7) : on contourne chaque ple imaginaire avec un petit demi-cercle, centr sur ce ple imaginaire et qui passe du cot de (s) > 0. Noter enn que pour que le critre de Nyquist implique la stabilit asymp-

2.3. MARGE DE ROBUSTESSE totique, il faut quil existe > 0 tel que, lim G(s)K (s) = 0. |s| + (s)

71

En eet si GK vrie les conditions du critre de Nyquist, alors pour un parcours en s lgrement dcal vers la gauche, s = + , allant de + vers et 0 < trs petit a priori, on aura un lieu de Nyquist, GK ( + ) lgrement dplac et qui entourera le point 1 avec le mme nombre de tours que celui pour lequel = 0. Ainsi, on est sr que les zros de 1 + GK et donc de D = NG NK + DG DK sont tous parties relles infrieures . Nous dtaillons ces conditions ici car nous souhaitons prendre en compte des retards. Donc on ne peut pas se contenter de prendre G et K dans la classe des fractions rationnelles en s uniquement. On souhaite aussi traiter des fractions en s et exp(s). Le contrle des systmes retard est encore lheure actuelle lobjet de recherches actives (c.f. les problmes de tl-opration, les systmes dits neutres quon rencontre lorsquon sintresse des systmes dcrits par une quation donde dcrivant les dlais de propagations).

2.3.2

Marge de phase

p +Ki s Revenons pour nir GK (s) = b sK e . Nous allons calculer explicis( s+ a ) tement le retard critique > 0 partir duquel, le lieu de Nyquist commence entourer 1. Il est donn par ce que lon appelle la marge de phase. On commence par une normalisation en posant

s s = , a Alors

k = abKp ,

Ki , Kp a

= a . s + . s ( s + 1)

GK (s) = GK ( s) = k exp( s )

Ainsi quitte changer dunit sur le temps, on peut toujours suppos a = 1, on confond dans la suite s et s et on crit GK (s) = k exp( s ) s+ . s(s + 1)

Sur la gure 2.8, on a trac le lieu de Nyquist pour s suivant le parcours de la gure 2.7. On voit clairement que le point 1 est lextrieur du domaine entour par le lieu de Nyquist. En gnral, on ne reprsente pas le grand

72

CHAPITRE 2. TRANSFERT

Fig. 2.8 le lieu de Nyquist de G(s)K (s) = k exp(s) s(ss+ avec k = 1, +1) = 0 et = 0.5. ; la courbe ferme du plan complexe dcrite par G(s)K (s) lorsque s dcrit la courbe CR, de la gure 2.7 pour R 1 et 0 < 1.

demi-cercle du demi plan droit. On ne trace que la gure simplie qui est droite. On sait alors quil faut refermer cette courbe en partant de la branche innie du bas = lorsque = 0+ vers celle du haut = + lorsque = 0 en passant linni par le demi plan droit > 0. On trouvera sur la gure 2.9, les dformations successives qui lon observe lorsque le paramtre grandit. On se convaincra sans dicult que lorsque = 0, le lieu de Nyquist de GK nentoure jamais 1 quelques soient k et > 0. Noter que lorsque = 0, la stabilit est donne par les racines dun polynme de degr deux et on a dj vu, au premier chapitre, quun PI sur un premier ordre est toujours asymptotiquement stable. Mais ce nest pas pour retrouver ce fait trivial que lon a fait tout cela. Cest pour voir ce qui se passe lorsque le retard est non nul. Pour les mmes k et , quelle relation y-a-t-il entre le lieu de Nyquist de GK lorsque = 0 et > 0 : pour s = , GK ( ) subit une rotation de (multiplication par exp( )). Ainsi, comme lillustre la gure 2.10, le critique partir duquel 1 rentre lintrieur du domaine entour par le lieu de Nyquist, est directement reli aux points dintersection du lieu de Nyquist pour = 0 avec le cercle unit. Pour chaque k et , on note les deux valeurs de la pulsation qui correspond aux deux points dintersection avec le cercle unit. Un petit calcul avec une quation bi-carre qui traduit

2.3. MARGE DE ROBUSTESSE

73

Fig. 2.9 le lieu de Nyquist de G(s)K (s) = k exp(s) s(ss+ avec k = 1, +1) = 0 et diverses valeurs de .

avec k = 1, Fig. 2.10 La marge de phase pour G(s)K (s) = k s(ss+ +1) = 0.5.

74

CHAPITRE 2. TRANSFERT

(+ ) le fait que le complexe k est de module 1, donne (+1)

1 k2 +

(1 k 2 )2 + 4k 2 2 . 2

On note [0, [ largument suivant (noter le signe au second membre) : exp() = k cest la marge de phase. Alors. = ( + ) ( + 1)

est le retard critique au del duquel des instabilits apparaissent. Pour k = 1 et = 0.5, la gure 2.11, montre la perte progressive de stabilit lorsque grandit, la valeur critique tant autour de 2.7, si on fait les calculs avec les formules ci-dessus. De ce graphique on tire aussi linformation suivante : lorsque franchit le seuil , deux ples complexes9 conjugus traversent en mme temps laxe imaginaires en venant de la partie stable. On sait cela car juste aprs , 1 est entour deux fois donc on a exactement deux racines parties relles strictement positives : un peu avant , le systme est trs oscillant mais les oscillations sont lentement amorties ; un peu aprs , le systme est toujours trs oscillant mais les oscillations sont lentement amplies. On comprend donc mieux toutes les informations quantitatives et aussi qualitatives que lon peut tirer de la mthode due Harry Nyquist ingnieur dorigine sudoise qui migra aux USA pour faire un thse en physique et ensuite travailler aux Bell Labs dans les annes 40. Cest avec ce genre danalyse que, pendant la seconde guerre mondiale, les amricains ont pris une avance dcisive sur les systmes de pilotage automatique.

2.3.3

Marge de gain
d y = ay + bu + dw dt

La marge de gain permet de savoir si lon reste stable, quand sur le modle

on connat mal le coecient b devant u (on connat son signe cependant). Cela revient multiplier le bloc contrle K (s) par un coecient k > 0.
9

Ce sont les ples en boucle ferme, pas ceux de GK mais ceux de 1/(1 + GK ).

2.3. MARGE DE ROBUSTESSE

75

avec k = 1, = 0.5 et Fig. 2.11 Lieu de Nyquist pour G(s)K (s) = k s(ss+ +1) diverses valeurs du retard

76
1 1+G(s)K (s)

CHAPITRE 2. TRANSFERT

tant stable, on cherche donc savoir partir de quelle valeur de k (en partant de 1), le transfert 1+kG(1s)K (s) devient instable.
On reprend GK = exp(s) s(ss+ . On suppose dabord = 0. On voit +1) daprs les divers lieux de Nyquist tracs sur la gure 2.9 que, quelle que soit la dilatation du lieu de rapport k positif, ce dernier ne passe jamais par 1. Ainsi, on a une marge de gain innie dans ce cas. Cest une faon indirecte de retrouver le rsultat du chapitre 1 qui dit quun PI sur un 1er ordre stable et toujours asymptotiquement stable pourvu que lon connaisse le signe du gain sur le contrle. Cependant, supposons que nous ayons un petit retard disons = 0.25 pour = 0.5. Alors on voit sur la gure 2.11 que ce petit retard ne modie sensiblement le lieu de Nyquist quautour de 0, l o les pulsations sont grandes en valeurs absolues. Plus est grand, plus la multiplication par exp( ) aura tendance enrouler le lieu de Nyquist autour de 0. Aussi, il est vident que, quelle que soit la taille du retard > 0, mme trs petit, on trouvera toujours une dilatation du lieu de Nyquist, qui lamne passer par 1. Bien-sr, plus le retard sera petit, plus la dilatation k devra tre grande pour introduire une instabilit. On retrouve ainsi ce que nous avons vu dj au chapitre prcdent sur les dynamiques ngliges : les gains Kp et Ki ne peuvent pas tre pris arbitrairement grands. Ici, un petit retard = > 0 correspond une dynamique rapide nglige. Il est intressant de remarquer que le thorme de Tikhonov 7 porte sur des systmes singulirement perturbs, cest dire avec un petit paramtre positif devant d/dt. Cest formellement et aussi fondamentalement la mme chose pour un retard dordre : dans loprateur exp(s) on retrouve bien le mme petit paramtre devant s = d/dt.

2.3.4

Ples dominants

Supposons comme nous lavons fait dans le chapitre prcdent que le capteur qui fournit y nest pas instantane mais a une petit dynamique que 1 lon peut reprsenter comme un ltre rapide de transfert 1+ . Ainsi G(s) s est remplac par G = G(s)R (s). Supposons 1/(1 + G(s)K (s)) stable. Alors pour > 0, susamment petit, 1/(1 + G (s)K (s)) reste stable. Pour assez petit, leet sur le lieu de Nyquist de GK de la multiplication 1 , nest notable que pour des s = assez grands en module. Or pour par 1+ s de tels de lordre de 1/, GK ( ) est dj trs petit et donc seul la partie du lieu qui est proche de lorigine nest modi. Donc le nombre de tour autour du point 1 ne change pas et ainsi le transfert 1/(1 + G (s)K (s)) est lui aussi stable. Aussi, il est lgitime de faire brutalement = 0 dans le

2.4. COMPLMENTS

77

transfert G pour ne garder que G. On dit alors que G(s) ne conserve que les ples dominants : il est ainsi lgitime dliminer les ples trs rapides et stables. Ainsi on voit bien que le fait de ne conserver que les ples dominants dans le transfert G est identique au fait de prendre comme modle de contrle la partie lente du systme, la partie rapide tant stable : lapproximation, dcrite dans le chapitre prcdent (cf sous-section 1.3.2) du systme lent/rapide ( ) par le systme lent (0 ) est de mme nature que celle de G par G = G0 .

2.4
2.4.1

Complments
Prdicteur de Smith

Le prdicteur de Smith est un outil de rgulation pour les systmes asymptotiquement stables en boucle ouverte retards mono-variables (propos dans [50]). Des gnralisations aux cas multi-variables et pour les systmes instables sont possibles mais alors il nest plus possible de raliser le bouclage avec un transfert rationnel. On utilise alors des bouclages retards rpartis faisant apparatre des fractions rationnelles en s et exp(s). Nous ne prsentons ici que la version historique publi par Smith en 1958. Dans ce contexte, un retard sur lentre ou la sortie est quivalent. En eet les formes dtat suivantes possdent la mme fonction de transfert x (t) = Ax(t) + Bu(t ), y (t) = Cx(t) x (t) = Ax(t) + Bu(t), y (t = Cx(t ) o x Rn , u R et y R. Cette fonction de transfert est un produit dune fraction rationnelle propre et dun oprateur retard G(s) G0 (s)es = C (sI A)1 Bes

Lintrt du prdicteur de Smith est de permettre dutiliser un contrleur K0 conu pour le systme sans retard G0 (s) en linsrant dans le schma 0 et G (s) reprsentent la gnral de la gure 2.12. Les blocs additionnels G = G. On suppose connaissance du systme. Idalement, on a G0 = G0 et G donc le transfert G0 stable. Cest sous cette hypothse quon comprend le fonctionnement du prdicteur de Smith. Grce la boucle interne au prdicteur (dans la zone grise de la gure 2.12), le signal entrant dans le contrleur K0 est e2 = yc G(s)u (G0 (s) G(s))u = yc G0 (s)u

78

CHAPITRE 2. TRANSFERT

yc

e2

K0 (s) 0 (s) G (s) G

u G(s)

Fig. 2.12 Le prdicteur de Smith (zone grise).

yc

K0 (s)

G0 (s)

es

Fig. 2.13 Forme quivalente du systme boucl avec prdicteur de Smith. Ce terme est la dirence entre la rfrence et la prdiction de la valeur de sortie du systme lhorizon . Le comportement entre-sortie du systme boucl par le prdicteur de Smith est quivalent celui du systme donn sur la gure 2.13. Articiellement, on a russi intercepter le signal de mesure avant le bloc retard et donc nous ramener un problme de rgulation dun systme sans retard. On notera toutefois que le retard est toujours prsent sur la sortie. Il na pas disparu du problme mais il ninterfre pas avec la rgulation. En pratique, le prdicteur de Smith soure dun manque de robustesse par rapport une incertitude sur le retard, alors que la robustesse par rapport et G sont dirents, aux paramtres est moins problmatique. En ce cas, G 0 et G . Il ne sut pas toujours de calculer un contrleur K0 de mme que G procurant de bonnes marges de stabilit au systme G0 boucl (on pourra se reporter [35, Chap 10.8] pour de nombreux contre-exemples). Certaines conditions susantes de robustesse sont exposes dans [43] ; elles portent sur le choix du contrleur K0 mais sont diciles mettre en uvre. Il est indispensable de lutiliser dans la conguration propose sur la gure 2.14. On a rajout dans la boucle externe un ltre de robustesse quon peut

2.4. COMPLMENTS

79

ajuster pour dgrader les performances mais assurer une stabilit en boucle ferme en dpit dune incertitude sur le retard. Lorsque ce ltre F (s) vaut 1 on retrouve le prdicteur de Smith des gures 2.12 et 2.13. yc y G(s)

K0 (s)

G0 (s) F (s)

(s) G

Fig. 2.14 Implmentation du prdicteur de Smith avec ltre additionnel de robustesse.

2.4.2

Calcul de tous les contrleurs PID stabilisant un systme du premier ordre retard

Comme on la vu, le contrleur PI et plus gnralement le contrleur PID (D pour drive) est extrmement ecace et utilisable dans un nombre important de situations. On a vu que le transfert K dun PI est K (s) = kP + ksI avec kP et kI les gains proportionnel et intgral. Le rgulateur PID a simplement le transfert kI + kD s s o kD est le gain driv. Ainsi, rgler une PID revient trouver les bons gains, quand cest possible, kP , kI et kD , pour avoir un transfert en boucle ferme G/(1 + GK ) au minimum stable. On a vu comment tester sa robustesse, notamment au retard. On propose ici quelques rsultats thoriques importants qui donnent des conditions ncessaires et susantes pour obtenir la stabilit en boucle ferme en utilisant un tel contrleur. Ces rsultats se limitent aux systmes du premier ordre (on se rfrera [48], pour direntes extensions aboutissant des noncs beaucoup plus indirects), leur dmonstration fait appel des rsultats danalyse complexe permettant de qualier la ngativit des racines dun polynme sans les calculer. De tels critres (critre de Routh, ou de Hermite-Biehler reports en annexe A) sont souvent utiliss car numriquement trs simples. K (s) = kP +

80

CHAPITRE 2. TRANSFERT

On considre un systme du premier ordre retard dont la fonction de transfert est G(s) = k es 1 + s (2.2)

o k R+ , R , R+ . Dans un premier temps, on considre quon utilise seulement un contrleur proportionnel K (s) = kP et quon lutilise tel que reprsent sur la gure 2.15. r K(s) G(s) y (2.3)

Fig. 2.15 Bouclage dun systme du premier ordre retard. Deux cas sont alors considrer. Soit le systme est stable (cas du thorme 9) en boucle ouverte, et on cherche juste amliorer ses performances par un contrleur en boucle ferme, soit le systme est instable (cas du thorme 10) et cest la boucle ferme de le stabiliser. Thorme 9 ([48]). On suppose > 0, alors lensemble des contrleurs proportionnels prservant la stabilit du systme (2.2) est dni par les valeurs admissibles suivantes 1 1 < kP < k k cos z1 o z1 est lunique racine sur ]/2, [ de lquation tan(z ) = z

On notera de plus que la borne suprieure sur kP dans cet nonc est une fonction dcroissante du retard . Dans le cas instable, on souhaite en gnral que le contrleur stabilise galement le systme en labsence de retard. On aboutit alors lnonc suivant. Thorme 10 ([48]). On suppose < 0. Une condition ncessaire pour que le contrleur proportionnel (2.3) stabilise la fois le systme (2.2) et ce mme systme en labsence de retard est que < | |. On suppose cette condition

2.4. COMPLMENTS

81

vrie, alors lensemble des contrleurs proportionnels assurant la stabilit du systme (2.2) est dni par les valeurs admissibles suivantes k
2 z1

< kP <

1 k

o z1 est lunique racine sur ]0, /2[ de lquation tan(z ) = z

La preuve de ces thormes utilise lextension du thorme de HermiteBiehler (voir annexe A) pour les quasi-polynmes (i.e. des polynmes en s avec coecients en es comme on en rencontre dans les fonctions de transferts des systmes retard boucls). Le cas de la stabilisation par un PID K (s) = kP + kI + kD s s (2.4)

est trait dans lnonc suivant (un peu compliqu premire vue mais simple mettre en uvre). Seul le cas des systmes stables en boucle ouverte est trait ici. On se reportera [48] pour un expos concernant le cas des systmes instables en boucle ouverte. Thorme 11 ([48]). On suppose > 0, alors lensemble des contrleurs PID (2.4) prservant la stabilit du systme (2.2) est dni par les valeurs admissibles suivantes 1 1 < kP < 1 sin(1 ) cos(1 ) k k +

o 1 est lunique racine sur ]0, [ de lquation tan() =

Pour kp en dehors de ces bornes, il nexiste pas de contrleur PID (2.4) stabilisant (2.2). Une fois choisi kp dans ces bornes, il faut et il sut pour stabiliser (2.2) de choisir (kI , kD ) comme suit. Soient z1 , z2 les deux racines relles (ordonnes) sur ]0, 2 [ de lquation kkP + cos z On note m(z ) = i = 1, 2.
2 , z2

z sin z = 0
z

b(z ) = kz sin z +

cos z , et mi = m(zi ), bi = b(zi ),

82

CHAPITRE 2. TRANSFERT
1 1 1. si kP ] k , k [, alors (kI , kD ) doit tre choisi de telle sorte que < k kd < k , ki > 0 et kd > m1 kI + b1 1 2. si kP = k , alors (kI , kD ) doit tre choisi de telle sorte que kd < ki > 0 et kd > m1 kI + b1 , k

1 1 3. si kP ] k , k 1 sin(1 ) cos(1 ) [, alors (kI , kD ) doit tre choisi de ), et ki > 0 telle sorte que m1 kI + b1 < kd < min(m2 kI + b2 , k

On pourra remarquer la similitude apparente entre les noncs des thormes 11 et 9. Les bornes suprieures sur le gain proportionnels sont direntes. En eet, lnonc 11 ncessite bien souvent lusage eectif du terme intgral et du terme driv car le point (kI , kD ) = (0, 0) peut tre exclu de ladhrence des contraintes (dans le cas 3, on peut avoir b2 > b1 > 0).

2.4.3

Mthodes de rglage de Ziegler-Nichols

Il existe plusieurs mthodes systmatiques de rglage des rgulateurs PID. Ces mthodes sont souvent utilises en pratique comme heuristiques, sans justication. On propose de les re-situer dans le cadre danalyse de stabilit que nous avons prsent, notamment la section 2.4.2. Ces rgles sont trs nombreuses et dirent par les performances quon peut en atteindre en terme de temps de convergence, dpassement prvu, robustesse, etc. Historiquement, ce sont les rgles de Ziegler-Nichols [54, 55] qui sont apparues les premires, elles sont toujours parmi les plus utilises. On trouve aussi les rgles de Cohen-Coon [12], Chien-Hrones-Reswick [11], ou Lee-Park-LeeBrosilow [34]. Premire mthode de Ziegler-Nichols Pour concevoir un rgulateur PID pour un process donn G(s), on ralise lexprience boucle-ouverte suivante. On enregistre la rponse du systme un chelon dentre et on relve les paramtres a et construits partir de la ligne de plus grande pente de la rponse. On note galement et Kp tels que reprsents sur la gure 2.16, construits partir de la valeur asymptotique estime et du temps de rponse 1 e1 = 0.63 10 . Les rglages heuristiques de Ziegler-Nichols sont reports dans le tableau 2.1. Ils permettent de rgler au choix un contrleur P , un P I ou un P ID.
Un modle du premier ordre atteint environ 63% de sa valeur nale en un temps gal 1 fois sa constante de temps
10

2.4. COMPLMENTS Rponse

83

k 0.63 k 0 a

temps

Fig. 2.16 Dtermination dun modle du premier ordre retard partir de la rponse un chelon du systme. Contrleur P PI PID kP 1/a 0.9/a 1.2/a kI 0.3/(a) 0.6/(a) kD

0.6/a

Tab. 2.1 Rglages de Ziegler-Nichols premire mthode. Seconde mthode de Ziegler-Nichols La seconde mthode de Ziegler-Nichols ncessite une exprimentation en boucle ferme avec un contrleur dj install dont il sut de modier les gains. On boucle le systme avec un rgulateur P (en mettant le gain intgral et le gain driv 0) dont on fait progressivement augmenter le gain jusqu atteindre un rgime oscillatoire entretenu. Autrement dit, on atteint la limite de stabilit. Une fois ce rgime obtenu, on note ku le gain proportionnel ultime et la priode des oscillations Tu lui correspondant et on rgle alors le contrleur comme expliqu sur le tableau 2.2 Bien que trs simple utiliser, ce mode opratoire de rglage de contrleur a le dsavantage de ncessiter la presque dstabilisation de linstallation quon souhaite contrler. Cet inconvnient peut tre vit. On pourra se reporter [4] pour une prsentation dune mthode de rglage aboutissant aux coecients de la seconde mthode de Ziegler-Nichols, sans risque de dsta-

84 Contrleur P PI PID kP 0.5ku 0.4ku 0.6ku kI

CHAPITRE 2. TRANSFERT kD

0.5ku /Tu 1.2ku /Tu

0.075ku Tu

Tab. 2.2 Rglages de Ziegler-Nichols seconde mthode. bilisation. Cette mthode, qui utilise un bloc relai en boucle ferme, consiste faire apparatre un cycle limite dont on analyse les caractristiques pour retrouver les paramtres du systme contrler. Liens avec les rsultats de stabilisation Il est assez simple de faire un lien entre la seconde mthode de ZieglerNichols et le thorme 9 si on suppose que le systme quon cherche contrler est eectivement un systme du premier ordre retard stable de la forme (2.2). Ce thorme montre quil existe une valeur dstabilisante du gain proportionnel. Cest cette valeur ku que lexprience en boucle ferme permet destimer sans connaissance des paramtres du modle. Ensuite, la mthode de Ziegler-Nichols du tableau 2.2 propose de rduire ce gain et donc de se retrouver avec un contrleur proportionnel stabilisant. Les coecients proposs par la premire mthode de Ziegler-Nichols sont en pratique trs proches de ceux de la deuxime mthode. Nanmoins, cest de ces derniers que nous allons prouver une proprit trs intressante. Dans le cas o le systme contrler est eectivement un systme du premier ordre retard stable de la forme (2.2), un calcul direct montre que le paramtre a tel que dni sur la gure 2.16 vaut a=k

Notons = / . Avec cette valeur, les gains proposs dans le tableau 2.1 sont kP = 1.2 , k kI = 0.6 , k2 kD = 0.6 k (2.5)

Considrons en premier lieu le gain proportionnel suggr. Nous allons montrer quil est toujours acceptable, en dautres termes, quil satisfait toujours les hypothse du thorme 11. Pour notre systme stable, le gain propos 1 . En ce qui concerne la borne suprieure indique dans satisfait kP > 0 > k

2.4. COMPLMENTS le thorme 11, on peut la rcrire kmax = 1 k 1 1 sin 1 cos 1

85

1 . En liminant en o 1 est lunique solution sur ]0, [ de tan 1 = 1+ 1 fonction de 1 dans cette dernire quation, on peut tablir que

kmax kP =

1 (1 sin 1 cos 1 1.2) k 1 1 = 1.2 cos 1 + k sin 1

Par construction, 1 ]0, [. On vrie alors kmax kP > 0. Par consquent, le gain proportionnel suggr par la premire mthode de Ziegler-Nichols satisfait toujours les hypothses du thorme 11 de stabilisation par un PID pour un systme du premier ordre retard. Cest une importante justication de cette mthode heuristique. En outre, on peut montrer par une tude dtaille (on se reportera [48]) que les gains kI et kD dni dans (2.5) par cette mme mthode satisfont galement les hypothses les concernant de ce mme thorme. Plus prcisment, on peut tablir quils les satisfont mais de manire possiblement non robuste lorsque devient grand (lorsque le retard devient grand devant la constante de temps ), i.e. ils sont prs des frontires des domaines dcrits dans le thorme 11. Cest galement un phnomne connu et observ en pratique qui engage souvent modier un peu les gains au prix de performances moindres.

86

CHAPITRE 2. TRANSFERT

Chapitre 3 Commandabilit, stabilisation, feedback


Un systme command sous forme explicite, x = f (x, u), est un systme sous-dtermin. La dirence entre le nombre dquations (indpendantes) et le nombre de variables donne le nombre de commandes indpendantes m = dim u. Noter que le degr de sous-dtermination est inni car il sagit de m fonctions arbitraires du temps. Aussi ltude des systmes sous-dtermins dquations direntielles ordinaires est dune nature trs dirente de celle des systmes dtermins avec lexistence et lunicit des trajectoires issues dune condition initiale (cf thorme 1, page 17. Aprs une rapide dnition la commandabilit dans le cas gnral, nous tudions en dtail les systmes linaires x = Ax + Bu. Leur commandabilit est caractrise par le critre de Kalman. Nous prsentons deux mthodes pour rsoudre le problme de la planication et du suivi de trajectoires. La premire mthode utilise la forme normale dite de Brunovsky. Cette dernire permet un paramtrage explicite de toutes les trajectoires en fonctions de m fonctions scalaires arbitraires t y (t) et dun nombre ni de leurs drives. Ces quantits y , dites sorties de Brunovsky, sont des combinaisons linaires de x. Elles jouent dune certaine faon le rle dun potentiel 1 . Elles permettent surtout de calculer trs simplement les commandes u pour aller dun tat vers un autre (planication de trajectoire). Elles permettent galement de construire le bouclage (feedback") qui assure le suivi asymptotique dune trajectoire de rfrence arbitraire (stabilisation par placement de ples).
Il est classique en physique de paramtrer toutes les solutions du systme sous dtermin div B = 0, par un potentiel vecteur arbitraire A avec la formule B = rot A . Le potentiel vecteur A est alors dni partir du champs magntique B un champ de gradient prs.
1

87

88 CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK La seconde mthode repose sur la commande optimale et ncessite plus de calcul : on cherche dans un premier temps la trajectoire avec un contrle le plus petit possible en norme L2 , pour aller dun tat vers un autre. Ensuite, on calcule le bouclage en minimisant lcart quadratique entre la trajectoire de rfrence et la trajectoire relle. On montre quil est alors possible de rsoudre ce problme par un feedback dont les gains sont donnes par la solution dune quation matricielle, quation dite de Riccati. Cest la commande linaire quadratique. En complment, nous abordons aussi les systmes non-linaires avec la linarisation, la classe des systmes direntiels direntiellement plats, la stabilisation non-linaire via des mthodes de type Lyapounov et le "backstepping".

3.1

Un exemple

Cet exemple particulirement intressant 2 a pour origine le contrle haute prcision de tables XY pour lesquelles les premiers modes exibles ne peuvent pas tre ngligs. Nous allons aussi voir que ce systme de deux oscillateurs de frquences direntes soumis en parallle au mme contrle, correspond aussi la dynamique linarise dun systme quantique trois niveaux dont les transitions entre le niveau fondamental et les deux niveaux excits (dnergie direntes) sont contrles par la lumire dun laser. Ainsi les calculs faits pour la structure exible peuvent aussi servir piloter via le laser la transition vers lun des deux niveaux excits plutt que lautre.

3.1.1

Deux oscillateurs en parallle

Modlisation Comme sur la gure 3.1, on considre deux pendules ponctuels accrochs un mme chariot de position u. On note i et xi , linclinaison et labscisse3 de la masse du pendule numro i, i = 1, 2 : autour de lquilibre stable, les quations de Newton linarises sont : d2 x1 = a1 (x1 u), dt2
2 3

d2 x2 = a2 (x2 u) dt2

(3.1)

d Jean Lvine. CAS. ENSMP En fait les vraies abscisses sont x1 + c1 et x2 + c2 , c1 et c2 constantes, au lieu de x1 et x2 . u + c1 et u + c2 sont les abscisses des points auxquels sont suspendus les deux pendules. Cependant les constants ci disparaissent dans les quations de Newton.

3.1. UN EXEMPLE

89

Fig. 3.1 deux pendules accrochs au mme chariot dabscisse u, le contrle. o a1 = g/l1 et a2 = g/l2 sont deux paramtres positifs correspondant aux carrs des pulsations (l1 et l2 correspondant aux longueurs supposes direntes l1 = l2 ). Planication de trajectoires Soit T > 0 et un dplacement D. On souhaite trouver un contrle en boucle ouverte qui amne le systme de lquilibre en x1 = x2 = u = 0 t = 0 vers lquilibre x1 = x2 = u = D en t = T . Pour trouver de telles trajectoires, le plus simple est dintroduire la nouvelle variable x1 x2 z= . a1 a2 Des calculs lmentaires donnent alors les relations suivantes x1 x2 z= a1 a2 (2) (3.2) z = x2 x1 (4) z = (a1 a2 )u + a1 x1 a2 x2

o x1 , x2 et u sexpriment explicitement en fonction de z , z (2) et z (4) ds que a1 = a2 . Les deux quations (3.1) qui ne font intervenir que les trois variables (x1 , x2 , u) sobtiennent en liminant z des trois quations prcdentes. Ainsi, elles sont bien contenues dans les trois quations ci-dessus. En fait (3.2) est une description quivalente de la dynamique du systme dcrit initialement par (3.1) mais avec une quation de plus et une variable de plus z . Cest un peu comme en optimisation sous contrainte o il est utile de rajouter des variables. Au lieu de rajouter des multiplicateurs associs aux contraintes, multiplicateurs qui ont alors une interprtation en termes de prix, on rajoute la variable z .

90 CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK Lintrt de rajouter z vient du fait que si lon calcule x1 , x2 et u avec les formules (3.2), alors les fonctions du temps x1 (t), x2 (t) et u(t) vrient automatiquement les quations direntielles (3.1). Rciproquement, si les fonctions du temps x1 (t), x2 (t) et u(t) vrient (3.1) alors en posant z = a2 x1 a1 x2 , on obtient encore x1 , x2 et u via (3.2). Ainsi, on paramtrise via une fonction arbitraire du temps z , drivable au moins 4 fois, toutes les solutions de (3.1). Le raisonnement prcdent montre clairement que nous nen manquons aucunes en les dcrivant comme des combinaisons linaires de z , z (2) et z (4) 4 . Lquilibre en x1 = x2 = u = 0 impose la valeur 0 z et ses drives jusqu lordre 4 (ordre 3 si on tolre des discontinuits sur u) en t = 0 : z (i) (0) = 0 pour i = 0, 1, 2, 3, 4. De mme en t = T , on a z (T ) = a11 a12 D

et z (i) (T ) = 0 pour i = 1, 2, 3, 4. Pour t = 0, T , z (t) est libre. Il faut cependant respecter la continuit pour z et ses drives jusqu lordre 4 (ou 3 si tolre des saut sur le contrle u). Une des fonctions les plus simples z (t) qui respectent ces conditions est la suivante : z (t) = 1 1 a1 a2 D t T (3.3)

o est la fonction C 4 croissante de R dans [0, 1] suivante : 0, si 0 ; si 0 1 ; si 1 .

( ) =

5 , 5 +(1 )5

1,

En conclusion nous avons obtenu explicitement une trajectoire allant de lquilibre dabscisse 0 lquilibre dabscisse D en temps ni T arbitraire. Avec le contrle en boucle ouverte (z (t) est donne par (3.3)) z (t) + u(t) =
1 a1

1 a2 1 a1

z (2) (t) +
1 a2

1 z (4) (t) a1 a2

d x1 = la solution de (3.1) qui passent en t = 0 par lquilibre x1 = x2 = 0, dt d d d x = 0, passe en t = T par lquilibre x1 = x2 = D, dt x1 = dt x2 = 0. On dt 2

On peut formaliser tout cela avec la thorie de module, z jouant le rle de base et les quations (3.1) dcrivant alors un module libre lorsque a1 = a2
4

3.1. UN EXEMPLE connat mme explicitement cette solution avec x1 (t) = x2 (t) = z (t) +
1 (2) z (t) a2 1 a12 a1 z (t) + a11 z (2) (t) 1 a12 a1

91

Stabilisation et suivi de trajectoires Supposons donne une trajectoire de rfrence (via la construction prcdente par exemple), note avec un indice r, t (x1,r (t), x2,r (t), ur (t)) solution de (3.1). On cherche un feedback qui assure le suivi asymptotique de cette trajectoire. Cela veut dire que nous cherchons des corrections sur le contrle en boucle ouverte ur (t), corrections qui compensent les dviations entre la trajectoire relle et la trajectoire de rfrence. Ici ltat du systme est form d par les positions (x1 , x2 ) et les vitesses (v1 , v2 ) (vi = dt xi , i = 1, 2). On note xi = xi xi,r et vi = vi vi,r les dviations en position et en vitesse par rapport la rfrence (i = 1, 2). On cherche donc u en fonction des xi et vi . Le contrle u est alors ur + u. Lorsque la trajectoire de rfrence correspond un rgime stationnaire on parle alors de stabilisation plutt que de suivi. Comme les quations du systme sont linaires, xi et u, vrient les mmes quations que xi et u : d2 x1 = a1 (x1 u), dt2 d2 x2 = a2 (x2 u). dt2

Aussi, il sut de rsoudre la stabilisation pour avoir le suivi. Supposons donc que la trajectoire de rfrence soit nulle x1,r = x2,r = ur = 0. La faon la plus simple de concevoir le feedback stabilisant est alors dutiliser une mthode de Lyapounov avec lnergie du systme. Lide est la suivante. Pour u = 0, lnergie du systme, a1 1 a2 1 V = (v1 )2 + (x1 )2 + (v2 )2 + (x1 )2 , 2 2 2 2 reste constante les longs des trajectoires. Donc comme les quations sont linaires en u, la drive de V le long des trajectoires est le produit de deux termes : le premier facteur est u et le second est une fonction des positions et vitesses uniquement. Il sut alors de prendre u du signe oppos au second facteur (ce qui est facile avec un simple feedback) pour faire dcrotre cette nergie. On conclut alors par le thorme 3, page 25 (invariance de LaSalle).

92 CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK Faisons ici les calculs. On a d V = (a1 v1 + a2 v2 )u. dt Avec k paramtre strictement positif, on considre le feedback suivant : min si k (a1 v1 + a2 v2 ) umin ; u , k (a1 v1 + a2 v2 ), si umin k (a1 v1 + a2 v2 ) umax ; u = K (v1 , v2 ) = max u , si umax k (a1 v1 + a2 v2 ).

On suppose bien sr que les contraintes sur u sont telles que umin < 0 < umax . On peut ainsi prendre en compte des contraintes sur le contrle u. Ainsi, avec le feedback prcdent la fonction V est positive, innie linni et dcrot le long des trajectoires. On peut donc appliquer le principe dinvariance de LaSalle, (thorme 3, page 25) qui caractrise lensemble vers lequel tendent les trajectoires : les solutions du systme en boucle ferme qui d V = 0 soit a1 v1 + a2 v2 = 0. Dans ce cas u = 0 et donc vrient en plus dt a1 d d v1 + a2 v2 = (a1 )2 x1 (a2 )2 x2 = 0. dt dt

En drivant encore deux fois on a (a1 )4 x1 (a2 )4 x2 = 0. Comme a1 = a2 et a1 , a2 > 0, on en dduit ncessairement x1 = x2 = 0 et donc tout est nul. Les trajectoires convergent toutes vers 0. Le feedback ci-dessus stabilise globalement asymptotiquement le systme en 05 . Ainsi le contrle complet avec suivi de trajectoires scrit trs simplement. De plus on peut grer trs simplement des contraintes sur u : il sut de prendre une trajectoire de rfrence donnant un contrle ur qui ne passe par trop prs des bornes : il existe > 0 tel que pour tout temps t, ur (t) [umin + , umax ]. Alors le contrle si k (a1 v1 + a2 v2 ) ; , k (a1 v1 + a2 v2 ), si k (a1 v1 + a2 v2 ) ; u = ur + , si k (a1 v1 + a2 v2 ).

est chaque instant dans [umin , umax ] et de plus assure la convergence asymptotique vers la trajectoire de rfrence.

3.1. UN EXEMPLE

93

Fig. 3.2 Un atome trois niveaux en interaction avec une lumire laser polarise linairement et associe au champ lectrique E R, le contrle.

3.1.2

Un atome trois niveaux

Modlisation La fonction donde de latome trois niveaux schmatis sur la gure 3.2 obit, sous lapproximation dipolaire lectrique et dans un champ lectrique E (t) polaris linairement, lquation de Schrdinger suivante : d = (H0 + E (t)H1 ) dt

o C3 est la fonction donde appartenant lespace de Hilbert C3 et o H0 et H1 sont les oprateurs auto-adjoints dcrits par les matrices 0 0 0 0 H0 = 0 1 0 , H1 = E (t) 0 0 0 0 2 0 0

o 1 , 2 et sont des paramtres rels et strictement positifs. Avec les notations usuelles en mcanique quantique 0 0 1 0 1 , |2 = 0 , |1 = |0 = 1 0 0 on voit que |0 est ltat dnergie E0 = 0, |1 celui dnergie E1 = 1 et |2 celui dnergie E2 = 2 , = h/(2 ) tant la constante de Plank. Ainsi les pulsation de transitions (les raies atomiques donc) entre le niveau fondamental |0 et les deux niveaux excits |1 et |2 ont pour pulsations 1 et 2 .
5

De plus, le linaire tangent en 0 est asymptotiquement stable pour les mmes raisons : donc toutes les valeurs propres du tangent en 0 sont parties relles strictement ngatives.

94 CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK On a donc = 0 |0 + 1 |1 + 2 |2 avec 0 , 1 et 2 trois nombres complexes dont le carr du module reprsente la probabilit pour que latome soit dans le niveau |0 , |1 ou |2 , respectivement. Ainsi, lquation de Schrdinger pour ce systme scrit ici d 0 = E (1 + 2 ) dt d 1 = 1 1 + E 0 dt d 2 = 2 2 + E 0 . dt On constate que 0 = 1, 1 = 2 = 0 et E = 0 est un rgime dquilibre (tat fondamental, laser teint). Linarisons les quations autour de cet quilibre. En notant i , i = 0, 1, 2, et E les petits carts, on obtient les quations linarises suivantes : d 0 = 0, dt d 1 = 1 1 + E , dt d 2 = 2 2 + E . dt

Il ne faut pas oublier que les i sont des complexes. Au premier ordre 0 est constant. Cest une partie de ltat qui nest pas inuence par le contrle (au moins au premier ordre). Cette partie est non commandable (au premier ordre). Elle ne nous gne pas, elle correspond au fait que le module de vaut 1 (conservation de la probabilit). Nous allons loublier ici. On a donc le systme dans C2 , cest dire dans R4 suivant : En posant
d x1 1 x1 + dt , 1 = (1 )2 d x2 2 x2 + dt 2 = , (2 )2

d 1 = 1 1 + E , dt

d 2 = 2 2 + E dt

E = u

on obtient exactement les quations des deux pendules (3.1) pour x1 , x2 et u avec a1 = (1 )2 et a2 = (2 )2 . Il sagit en fait du mme systme. Le carr du module de i , |i |2 correspond alors, une constante prs, lnergie 2 d i (xi )2 + dt xi . mcanique du pendule numro i : a 2 Transfert vers un tat excit Il est possible de reprendre les calculs faits pour les deux pendules et de les adapter pour traiter le problme suivant. On part de ltat fondamental

3.1. UN EXEMPLE

95

|0 en t = 0. On cherche la forme de limpulsion laser E (t) qui assure le transfert en t = T dune petite fraction 0 < p1 1 de la probabilit sur ltat |1 en gardant au nal nulle celle de ltat |2 6 . Ce problme se traduit de la faon suivante : en t = 0 on part de 1 = 2 = 0 avec E = 0. En t = T , on souhaite arriv en 1 = p1 , 2 = 0 avec E = 0. Cela se traduit dans les variables x1 et x2 par des conditions suivantes. En t = 0 tout est nul. En t = T , on doit avoir x1 = x 1 = p1 1 , v1 = x2 = v2 = u = 0.

Sur la variable z cela donne comme condition en t = 0 (cf (3.3)) z = z (1) = z (2) = z (3) = z (4) = 0 et en t = T . z= x 1 , a1 z (1) = z (3) = 0, z (2) = x 1 , z (4) = a1 x 1

Il sut alors de prendre z (t) = x 1 (t T )2 a1 (t T )4 1 + a1 2 4! t T

de calculer le contrle en boucle ouverte par la formule z (t) + E (t) =


1 a1

1 a2 1 a1

z (2) (t) +
1 a2

1 z (4) (t) a1 a2

Comme p1 << 1, il est facile de garantir en prenant un temps T assez grand que |1 (t)| et |2 (t)| reste petit devant 1 tout au long du transfert. Cest important pour que notre modle linaris reste valable et que le calcul prcdent ait un sens. Nous ne traiterons pas le suivi de trajectoires car la notion de feedback pour un tel systme est trs obscure lheure actuelle, mme si, en thorie, elle serait trs sduisante pour construire un calculateur quantique et rendre les qubits insensibles la dcohrence due au couplage avec lenvironnement. On se demande mme si la notion de feedback a un sens de telles chelles. Pour un systme quantique la notion de rtro-action et de
Lintrt ventuel dun transfert dans ces conditions vient du fait que nous ne supposons pas le contrle rsonnant comme il est usuel de le faire. Nous nutilisons pas ici lapproximation du champ tournant et les oscillations de Rabi.
6

96 CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK

Fig. 3.3 la planication de trajectoire. feedback se heurtent au problme de la mesure. On ne peut pas supposer que lon connat chaque instant 1 et 2 . En eet, toute mesure perturbe notablement le systme et donc, pour ces systmes toutes petites chelles, il nest plus possible de dissocier lappareil de mesure du systme lui mme et de supposer que la perturbation due la mesure est arbitrairement petite. Nous renvoyons un lecteur intress au cours du physicien Serge Haroche [24].

3.2

Commandabilit non linaire


d x = f (x, u), dt x Rn , u Rm (3.4)

On considre le systme explicite (f fonction rgulire)

3.2.1

Dnition

Dnition 2 (trajectoire). On appelle trajectoire du systme (3.4) toute fonction rgulire I t (x(t), u(t)) Rn Rm qui satisfait identiquement sur un intervalle dintrieur non vide I de R les quations (3.4). Dnition 3 (commandabilit). Le systme (3.4) est dit commandable en temps T > 0, si et seulement si, pour p, q Rn , il existe une loi horaire [0, T ] t u(t) Rm , dite commande en boucle ouverte, qui amne le systme de ltat x(0) = p ltat x(T ) = q , cest dire, telle que la solution du problme de Cauchy = f (x, u(t)) pour t [0, T ] x(0) = p vrie x(T ) = q . Le systme est dit simplement commandable lorsquil est commandable pour au moins un temps T > 0. Dautres dnitions sont possibles : elles correspondent toutes des variantes plus ou moins subtiles de la dnition 3. Comme lillustre la gure 3.3,
d x dt

3.2. COMMANDABILIT NON LINAIRE

97

Fig. 3.4 un racteur chimique exothermique o u correspond aux changes thermiques avec lextrieur. la commandabilit est une proprit topologique trs naturelle. En gnral, la commande en boucle ouverte [0, T ] t u(t) nest pas unique, il en existe une innit. Cette tape sappelle planication de trajectoire : calculer t u(t) partir de la connaissance de f , p et q constitue lune des questions majeures de lautomatique. Cette question qui est loin dtre rsolue actuellement. Trs souvent, labsence de commandabilit est due lexistence dintgrales premires non triviales. Ce sont des observables qui restent constantes le long de toute trajectoire.

3.2.2

Intgrale premire

Considrons le racteur exothermique de la gure 3.4. Les quations de bilan matire et nergie donnent alors les quations direntielles suivantes :
d x dt 1 d x dt 2 d T dt

= D(xin 1 x1 ) k0 exp(E/RT )x1 = Dx2 + k0 exp(E/RT )x1 = D(T in T ) + H exp(E/RT )x1 + u.

(3.5)

La cintique est linaire du premier ordre, les constantes physiques usuelles in (D, xin 1 , k0 , E , T , et H ) sont toutes positives, la commande u est proportionnelle la puissance thermique change avec lextrieur. xi est la concentration de lespce chimique Xi , i = 1, 2. On reconnat leet non linaire

98 CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK essentiel de la loi dArrhenius k = k0 exp(E/RT ) qui relie la constante de vitesse k la temprature T . Il est assez facile de voir que ce systme nest pas commandable. En eet, le bilan global sur X1 + X2 , limine le terme non linaire pour donner d (x1 + x2 ) = D(xin 1 x1 x2 ). dt Ainsi donc la quantit = x1 + x2 vrie une quation direntielle autonome d in = D(xin 1 ). Donc = x1 + 0 exp(Dt) o 0 est la valeur initiale de . dt Si, dans la dnition 3, on prend ltat initial p tel que = x1 + x2 = xin 1 et q tel que = x1 + x2 = 0, il nexiste pas de commande qui amne le systme de p vers q . En eet, pour toute trajectoire dmarrant en un tel p, la quantit x1 + x2 reste constante et gale xin 1 . Cette partie non commandable du systme reprsente par la variable admet ici un sens physique prcis. Elle est bien connue des chimistes. Cest un invariant chimique. Lexemple ci-dessus nous indique que labsence de commandabilit peuttre lie lexistence dinvariants, i.e., des combinaisons des variables du systme (on pourrait les appeler des observables) et ventuellement du temps, qui sont conserves le long de toute trajectoire. Pour (3.5), il sagit de (x1 + x2 xin 1 ) exp(Dt) correspondant 0 . Nous sommes donc conduits prolonger la notion dintgrale premire pour les systmes commands. Dnition 4 (intgrale premire). Une fonction rgulire R Rn (t, x) h(t, x) R est appele intgrale premire du systme (3.4), si elle est constante le long de toute trajectoire du systme. Une intgrale premire est dite triviale si cest une fonction constante sur R Rn . Si h est une intgrale premire, sa drive le long dune trajectoire arbitraire est nulle : h h d h= + x 0 dt t x pour toute trajectoire (t (x(t), u(t)) du systme. Si (3.4) admet une intgrale premire non triviale t h(t, x) alors, (3.4) nest pas commandable. Sinon, il existe T > 0, tel que pour tout p, q Rn et tout instant initial t, h(t, p) = h(t + T, q ) (il existe une trajectoire reliant p q sur [t, t + T ]). Donc h est une fonction priodique du temps et indpendante de x. Mais alors la drive de h le long des trajectoires du systme correspond t h. Comme elle est nulle, h est une constante, ce qui contredit lhypothse. Nous avons montr la proposition suivante Proposition 1. Si le systme (3.4) est commandable, alors ses intgrales premires sont triviales.

3.3. COMMANDABILIT LINAIRE

99

Il est possible de caractriser en termes nis (i.e., partir de f et dun nombre ni de ses drives partielles) lexistence dintgrale premire non triviale. Nous allons nous restreindre dans ce cours au cas linaire. En eet, la dmarche est la mme pour le cas non linaire. Elle conduit des calculs plus lourds qui, pour tre prsents de faon compacte, ncessitent le langage de la gomtrie direntielle et les crochets de Lie (voir par exemple [30]).

3.3

Commandabilit linaire
d x = Ax + Bu dt

Nous considrons ici les systmes linaires stationnaires du type (3.6)

o ltat x Rn , la commande (on dit aussi lentre) u Rm et les matrices A et B sont constantes et de tailles n n et n m, respectivement.

3.3.1

Matrice de commandabilit

Supposons que (3.6) admette une intgrale premire h : R Rn (t, x) h(t, x) R. Soit le changement de variables sur x dnit par x = exp(tA)z . d z = exp(tA)Bu et lintgrale preAvec les variables (z, u), (3.6) devient dt mire devient h(t, exp(tA)z ) = l(t, z ). Comme la valeur de l est constante le long de toute trajectoire nous avons, en drivant le long dune trajectoire arbitraire t (z (t), u(t)) d l l d l= + z = 0. dt t z dt
d z = exp(tA)Bu, pour toute valeur de z et u on a lidentit Comme dt suivante : l l (t, z ) + (t, z ) exp(tA)Bu 0. t z En prenant, u = 0, z et t arbitraires, on en dduit (prendre, e.g., la trajectoire du systme qui passe par z linstant t et dont la commande u est nulle) :

l (t, z ) 0. t Donc ncessairement l est uniquement fonction de z . Ainsi l (z ) exp(tA)B 0. z

100CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK En drivant cette relation par rapport t, on a, l (z ) exp(tA)AB 0 z
d (exp(tA)) = exp(tA)A. Plus gnralement, une drivation nimcar dt porte quel ordre k 0 donne

l (z ) exp(tA)Ak B 0. z En prenant t = 0 on obtient l (z )Ak B = 0, z k 0.

l (z ) appartient lintersection des noyaux gauche de la Ainsi le vecteur z famille innie de matrice (Ak B )k0 . Le noyau gauche de Ak B nest autre que Im(Ak B ) , lorthogonal de limage de Ak B . Donc

l (z ) Im(Ak B ) . z k 0 Mais Im(Ak B ) = Im(B ) + . . . + Im(Ak B ) + . . .


k 0

La suite despace vectoriel Ek = Im(B ) + . . . + Im(Ak B ) est une suite croissante pour linclusion, Ek Ek+1 . Si pour un certain k , Ek = Ek+1 , cela signie que Im(Ak+1 B ) Ek , donc A(E k ) Ek . Mais Im(Ak+2 B ) = Im(AAk+1 B ) A(E k+1 ). Ainsi Im(Ak+2 B ) Ek . On voit donc que pour tout r > 0, Im(Ak+r B ) Ek , do Ek+r = Ek . Ainsi la suite des Ek est une suite de sous-espaces vectoriels de Rn embots les uns dans les autres. Cette suite stationne ds quelle nest plus, pour un certain k , strictement croissante. Il sut donc de ne considrer que ses n premiers termes soit E0 , . . . En1 , car automatiquement En1 = En+r pour tout r > 0. l (z ) En revenant la suite des noyaux gauche de Ak B , nous voyons que z dans le noyau gauche de la suite innie de matrices (Ak B )k0 , est quivalent l , z (z ) dans le noyau gauche de la suite nie de matrices (Ak B )0kn1 . 7 l (z ) appartient au noyau gauche de la matrice Ainsi, pour tout z , z n (nm), C = (B, AB, A2 B, . . . , An1 B ) (3.7)
On pourrait aussi utiliser le thorme de Cayley-Hamilton qui donne un rsultat plus prcis : toute matrice carre est racine de son polynme caractristique. Cela veut dire, A
7

3.3. COMMANDABILIT LINAIRE

101

dite matrice de commandabilit de Kalman. Si C est de rang n, son noyau gauche est nul, donc l ne dpend pas de z : l est alors une fonction constante et h galement. Rciproquement, si la matrice de commandabilit C nest pas de rang maximal, alors il existe un vecteur w Rn /{0}, dans le noyau gauche de d (3.7). En remontant les calculs avec l(z, t) = w z on voit que dt = 0 le long des trajectoires (w est le vecteur transpos). En passant aux variables (x, u), on obtient une intgrale premire non triviale = h(t, x) = w exp(tA)x. Toute trajectoire du systme se situe dans un hyperplan orthogonal w. En rsum, nous avons dmontr la Proposition 2. La matrice de commandabilit C = (B, AB, A2 B, . . . , An1 B ) est de rang n, si, et seulement si, les seules intgrales premires du systme (3.6) sont triviales. Des propositions 1 et 2, il vient : si le systme (3.6) est commandable, sa matrice de commandabilit est de rang n. Nous allons voir que la rciproque est vraie. Pour cela, nous avons besoin de certaines proprits dinvariance.

3.3.2

Invariance

Dnition 5 (changement dtat, bouclage statique rgulier). Un changement linaire de coordonnes x x est dni par une matrice M inversible dordre n : x = M x . Un bouclage statique rgulier u u est dni par une matrice N inversible dordre m et une autre matrice K , m n : u = K x +N u . Cest un changement de variables sur les commandes paramtr par ltat. Lensemble des transformations x u x u = M 0 K N x u (3.8)

forment un groupe lorsque les matrices M , N et K varient (M et N restant inversibles).


tant de taille n, que An est une combinaison linaire des (Ak )0kn1 :
n1

An =
k=0

pk Ak
n1

o les pk sont dnis par det(In A) = n k=0 pk k . Nous avons prfr un argument plus simple avec la suite des Ek mais qui a lavantage de passer au non linaire et qui correspond au calcul de lalgbre de Lie de commandabilit.

102CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK


d IL est vident que si dt x = Ax + Bu est commandable (resp. nadmet pas = Ax + B u obtenu avec (3.8) est commandable dintgrale premire) alors x (resp. nadmet pas dintgrale premire). Les notions de commandabilit et dintgrale premire sont intrinsques, cest--dire, indpendantes des coordonnes avec lesquelles les quations du systme sont tablies. Si la matrice de commandabilit dans les coordonnes (x, u) est de rang n, la matrice de commandabilit dans les coordonnes ( x, u ) sera aussi de rang n. Cette simple remarque conduit au rsultat non vident suivant :

A B, ...,A n1 B ) = n rang(B, AB, . . . An1 B ) = n quivaut rang(B, et B sobtiennent en crivant d x = Ax + Bu dans les coordonnes o A dt ( x, u ) : = M 1 (AM + BK ) x x + M 1 BN u . = M 1 (AM + BK ) et B = M 1 BN . En fait, il est possible daller Soit A beaucoup plus loin et de montrer que les indices de commandabilit dnis ci-dessous sont aussi invariants. Dnition 6 (indices de commandabilit). Pour tout entier k , on note k le rang de la matrice (B, AB, A2 B, . . . , Ak B ). Les (k ) sont appels indices de commandabilit du systme linaire (3.6), La suite k est croissance, majore par n. Ainsi, labsence dintgrale premire est quivalente n1 = n.
d Proposition 3 (invariance). Les indices de commandabilit de dt x = Ax + Bu sont invariants par changement de variable sur x et bouclage statique rgulier sur u.

Nous laissons la preuve de ce rsultat par rcurrence sur n en exercice. Il est important de comprendre la gomtrie derrire cette invariance. Les transformations (x, u) ( x, u ) du type (3.8) forment un groupe. Ce groupe dnit une relation dquivalence entre deux systmes ayant mme nombre dtats et mme nombre de commandes. La proposition prcdente signie simplement que les indices de commandabilit sont les mme pour deux systmes appartenant la mme classe dquivalence, i.e, le mme objet gomtrique vu dans deux repres dirents. En fait, on peut montrer que les indices de commandabilit sont les seuls invariants : il y a autant de classes dquivalence que dindices de commandabilit possibles. Nous ne montrerons pas en dtail ce rsultat. Tous les lments ncessaires cette preuve se trouvent dans la construction de la forme de Brunovsky ci-dessous (voir aussi [28, 51]).

3.3. COMMANDABILIT LINAIRE

103

Fig. 3.5 deux masses couples par un ressort, le tout pilot par une seule force u

3.3.3

Un exemple

Soit le systme mcanique deux degrs de libert et une seule commande de la gure 3.5. En ngligeant les frottements et en supposant le ressort linaire de raideur k , on est conduit au modle suivant : m1 x 1 = k (x2 x1 ) + u m2 x 2 = k (x1 x2 ).

(3.9)

Montrons que ce systme est commandable. Il sut pour cela de remarquer que la quantit x2 , labscisse de la masse qui nest pas directement soumise la force u, joue un rle trs particulier (sortie de Brunovsky). Si au lieu de donner t u(t) et dintgrer (3.9) partir de positions et 2 vitesses initiales, on xe t x2 (t) = y (t). Alors x1 = m y + y et donc k m1 m2 (4) u = m1 x 1 + m2 x 2 = k y + (m1 + m2 ) y . Ainsi on peut crire le systme en faisant jouer x2 un rle privilgi : +y x1 = (m2 /k ) y x2 = y u = (m1 m2 /k ) y (4) + (m1 + m2 ) y.

On obtient ainsi un paramtrisation explicite de toutes les trajectoires du systme. Les relations prcdentes tablissent une correspondance bi-univoque et rgulire entre les trajectoires de (3.9) et les fonctions rgulires t y (t). Cela permet de calculer de la faon la plus lmentaire possible une comp p p mande [0, T ] t u(t) qui fait passer de ltat p = (xp 1 , v1 , x2 , v2 ) ltat

104CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK


q q q d q = (xq 1 , v1 , x2 , v2 ) (vi correspond dt xi ). Comme x1 = (m2 /k ) y +y d v1 = (m2 /k ) y (3) + y dt x2 = y v = dy 2 dt

(3.10)

imposer p en t = 0 revient imposer y et ses drives jusqu lordre 3 en (1) (2) (3) (1) (2) (3) 0 : (y0 , y0 , y0 , y0 ). Il en est de mme en t = T avec (yT , yT , yT , yT ). Il sut donc de trouver une fonction rgulire [0, T ] t y (t) dont les drives jusqu lordre 3 sont donnes a priori en 0 et en T : un polynme de degr 7 en temps rpond la question mais il existe bien dautres possibilits. Nous en dtaillons une ci-dessous qui est compltement explicite. Soit la fonction C 4 : [0, 1] [0, 1] dnie par ( ) = 4 . 4 + (1 )4
dk (0) d k

Il est facile de voir que est croissante avec (0) = 0, (1) = 1 et dk (1) = 0 pour k = 1, 2, 3. Alors la fonction d k y (t) = 1 t T t T y0 + ty0 +
(1)

t2 (2) t3 (3) y + y0 2 0 6 (t T )2 (2) (t T )3 (3) (1) yT + yT yT + (t T )yT + 2 6


k

y vrie y (0) = y0 , y (T ) = yT avec d (0, T ) = y0,T , k = 1, 2, 3. On obtient dtk ainsi une trajectoire en x correspondant une telle transition en utilisant les formules 3.10 et le contrle correspondant avec

(k )

u = (m1 m2 /k ) y (4) + (m1 + m2 ) y. En particulier le transfert de la conguration stationnaire x1 = x2 = 0 la conguration stationnaire x1 = x2 = D > 0 durant le temps T sobtient avec le contrle en boucle ouverte suivant (feedforward) : u(t) = car alors y (t) = D notre connaissance.
t T

Dm1 m2 d4 kT 4 d 4

+
t T

D(m1 + m2 ) d2 T2 d 2

t T

. Cest la solution explicite la plus simple possible,

3.3. COMMANDABILIT LINAIRE

105

Nous voyons quil est possible, pour rsoudre ce problme de planication, dviter toute intgration en temps qui demanderait, dune faon ou dune autre, le calcul dune exponentielle de matrice et donc un calcul de valeurs propres qui ne peut se faire que numriquement en gnral. Nous allons voir, avec la forme normale de Brunovsky, quune telle correspondance entre y et les trajectoires du systme est gnrale. Il sut que (3.6) soit commandable. Tout revient donc trouver la sortie de Brunovsky y de mme dimension que la commande u.

3.3.4

Critre de Kalman et forme de Brunovsky

d Thorme 12 (critre de Kalman). Le systme dt x = Ax + Bu est commandable si, et seulement si, la matrice de commandabilit C = (B, AB, . . . An1 B ) est de rang n = dim(x).

Pour abrger, on dit souvent que la paire (A, B ) est commandable, pour dire que le rang de la matrice de commandabilit C est maximum. La preuve que nous allons donner de ce rsultat nest pas la plus courte possible. Cependant, elle permet de dcrire explicitement, pour toute dure T > 0 et pour p, q Rn , les trajectoires du systme qui partent de p et arrivent en q . Cette preuve utilise la forme dite de Brunovsky. Cette dernire se construit grce une mthode dlimination, proche de celle trs classique du pivot de Gauss. La mme technique de calcul permet de traiter compltement la ralisation dun transfert rationnel causal (c.f. la sous-section 2.2.2, page 64). Thorme 13 (forme de Brunovsky). Si (B, AB, . . . An1 B ), la matrice de commandabilit de x = Ax + Bu, est de rang n = dim(x) et si B est de rang m = dim(u), alors il existe un changement dtat z = M x (M matrice inversible n n) et un bouclage statique rgulier u = Kz + N v (N matrice inversible m m), tels que les quations du systme dans les variables (z, v ) admettent la forme suivante (criture sous la forme de m quations direntielles dordre 1) : y1
( 1 )

= v1 ,
(1)

...

( m ) , ym = vm

(3.11)

avec comme tat z = (y1 , y1 , . . . , y1 i tant des entiers positifs.

(1 1)

...

, ym , ym , . . . , ym m

(1)

( 1)

), les

Les m quantits y , qui sont des combinaisons linaires de ltat x, sont appeles sorties de Brunovsky. Les indices de commandabilit k et les m entiers i de la forme de Brunovsky sont intimement relis (pour plus de dtail voir [28]) : la connaissance des uns est quivalente celle des autres.

106CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK Preuve du thorme 13. Elle repose sur

1. une mise sous forme triangulaire des quations dtat et llimination de u ; 2. linvariance du rang de (B, AB, . . . An1 B ) par rapport aux transformations (3.8) ; 3. une rcurrence sur la dimension de ltat. Mise sous forme triangulaire On suppose que B est de rang m = dim(u) (sinon, faire un regroupement des commandes en un nombre plus petit que m de faon se ramener ce cas). Alors, il existe une partition de ltat x = (xr , xu ) avec dim(xr ) = n m et dim(xu ) = m telle que les quations (3.6) admettent la structure bloc suivante
d x dt r d x dt u

= Arr xr + Aru xu + Br u = Aur xr + Auu xu + Bu u

o Bu est une matrice carre inversible. Cette partition nest pas unique, bien sr. En tirant u de la seconde quation et en reportant dans la premire, on obtient
d x dt r d x dt u 1 d = Arr xr + Aru xu + Br Bu ( dt xu Aur xr Auu xu ) = Aur xr + Auu xu + Bu u.

En regroupant les drives dans la premire quation, on a


d x dt r 1 d 1 1 Br Bu x = (Arr Br Bu Aur )xr + (Aru Br Bu Auu )xu dt u d x = A x + A x + B u. ur r uu u u dt u

Avec une transformation (3.8) dnie par


1 x r = xr Br Bu xu ,

x u = xu ,

u = Aur xr + Auu xu + Bu u,

les quations

d x dt

= Ax + Bu deviennent
d x dt r d x dt u

r x u x = A r + A u = u

1 1 1 r = (Arr Br Bu u = (Arr Br Bu o A Aur ) et A Aur )Br Bu + (Aru 1 Br Bu Auu ). Dans cette structure triangulaire o la commande u nintervient pas dans la seconde quation, nous voyons apparatre un systme plus petit dtat x r et de commande x u . Cela nous permet de rduire la dimension de x et de raisonner par rcurrence.

3.3. COMMANDABILIT LINAIRE

107

Invariance Un simple calcul par blocs nous montre que si (B, AB, . . . An1 B ) m1 est de rang n alors (Au , Ar Au , . . . An Au ) est de rang nm. Du systme de r d r x u x taille n on passe ainsi au systme de taille rduite n m, dt x r = A r + A u (x r ltat, x u la commande). Rcurrence sur le nombre dtats Supposons donc, le rsultat vrai pour toutes les dimensions dtat infrieures ou gales n 1. Considrons d x = Ax + Bu avec n = dim(x), sa matrice de commandabilit un systme dt de rang n, et B de rang m = dim(u) > 0. Llimination de u donne, aprs une transformation de type (3.8),
d x dt r d x dt u

= Ar xr + Au xu = u

m1 o dim(u) = dim(xu ) = m et dim(xr ) = nm avec (Au , Ar Au , . . . An Au ) r de rang n m < n (les ont t enlevs pour allger les notations). Notons m le rang de Au . Comme m m, un changement de variable sur xu , ( xu , x u ) = P xu avec P inversible, permet dcrire le systme sous la forme

u x x r = Ar xr + A u x u = u x u = u

(3.12)

u de rang m avec ( u, u ) = P u, dim( xu ) = m et A . Comme le rang de la d u (xr est ltat et x u la matrice de commandabilit de dt xr = Ar xr + Au x commande) est gal n m = dim(xr ), lhypothse de rcurrence assure lexistence dun changement de variable xr = M z et dun bouclage statique rgulier x u = Kz + N v (v est la nouvelle commande ici) mettant ce sous systme sous forme de Brunovsky. Alors le changement dtat (xr , x u , x u ) dni par M 0 0 z xr x u = K N 0 v 0 0 1 x u x u et le bouclage statique rgulier sur ( u, u ) u x u = KM 1 (Ar xr + A u ) + N v , u =v

transforme alors le systme (3.12) sous forme de Brunovsky avec v = ( v, v ) comme nouvelle commande.

108CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK Preuve du thorme 12 La commandabilit est indpendante du choix des variables sur x et dun bouclage statique rgulier sur u. On peut donc supposer le systme sous sa forme de Brunovsky. Dans ces coordonnes, aller dun tat un autre est lmentaire. Il se ramne tudier la commanda 1 bilit du systme scalaire y () = v . Ltat initial (y0 , . . . , y0 ) et ltat nal 1 (yT , . . . , yT ) ainsi que la dure T tant donns, les lois horaires t v (t) assurant le passage entre ces deux tats pendant la dure T correspondent alors la drive -ime de fonctions [0, T ] t (t) R, dont les drives jusqu lordre 1 en 0 et T sont imposes par
r , (r) (0) = y0 r , (r) (T ) = yT

r = 0, . . . , 1.

Il existe bien sr une innit de telles fonctions (on peut prendre pour un polynme de degr 2 1, par exemple).

3.3.5

Planication et suivi de trajectoires

De la preuve des deux thormes prcdents, il est important de retenir deux choses.
d 1. Dire que le systme dt x = Ax + Bu est commandable, est quivalent lexistence dun bouclage statique rgulier u = Kz + N v et dun changement dtat x = M z se ramenant la forme de Brunovsky y () = v et z = (y, . . . , y (1) ) (par abus de notation y = (y1 , . . . , ym ) et ( ) ( ) y () = (y1 1 , . . . , ym m )). Ainsi

x = M (y, . . . , y (1) ),

u = L(y, . . . , y () )

o la matrice L est construite avec K , N et M . Lorsque lon considre une fonction rgulire arbitraire du temps t (t) Rm et que lon calcule x(t) et u(t) par les relations x(t) = M ((t), . . . , (1) (t)), u(t) = L((t), . . . , () (t))

alors t (x(t), u(t)) est une trajectoire du systme : on a identiqued ment dt x(t)Ax(t)Bu(t) = 0. Rciproquement, toutes les trajectoires rgulires du systme se paramtrisent de cette faon, grce m fonctions scalaires arbitraires 1 (t), . . ., m (t) et un nombre ni de leurs drives par les formules ci-dessus.
d x = Ax + Bu implique la stabilisation par 2. La commandabilit de dt retour dtat. En eet, il sut de considrer la forme de Brunovsky et dans la forme de Brunovsky, chacun des m sous-systmes indpen( ) dants yi i = vi . Soient i valeurs propres, 1 , . . . , i , correspondant

3.3. COMMANDABILIT LINAIRE

109

Fig. 3.6 le suivi de trajectoire. au spectre dune matrice relle de dimension i . Notons sk les fonctions symtriques des i (des quantits relles donc) homognes de degr k ,
i

k=1

(X k ) = X i s1 X i 1 + s2 X i 2 + . . . + (1)i si

assure la stabilit de yi i = vi : en eet, les exposants caractristiques (on dit aussi les ples) du systme boucl sont les k . Aussi de la forme de Brunovsky lon dduit directement le rsultat suivant : Thorme 14 (placement de ples). Si la paire (A, B ) est commandable alors, pour toute matrice relle F n n, il existe une matrice m n, K (non ncessairement unique si m > 1), telle que le spectre de A + BK concide avec celui de F .
d x = Ax + Bu, la plaDe retour dans les coordonnes de modlisation, dt nication de trajectoire nous donne une trajectoire du systme (par exemple la trajectoire que doit suivre une fuse au dcollage, la manoeuvre datterrissage dun avion, . . .). Nous la notons t (xr (t), ur (t)) avec lindice r pour rfrence. En pratique, et cause des alas de lexistence, il convient, comme lillustre la gure 3.6, de corriger en fonction de lcart x, la commande de rfrence ur (il est rare de piloter un systme en aveugle, uniquement en sachant do lon part et o lon veut aller). Le problme est donc de calculer la correction u partir de x de faon revenir sur la trajectoire de rfrence. On peut alors utiliser un bouclage stabilisant en plaant les ples sur la forme de Brunovsky. d Dune faon plus prcise : comme dt xr = Axr + Bur , on obtient, par d dirence avec dt x = Ax + Bu lquation derreur suivante

Alors, ds que les k sont partie relle strictement ngative, le bouclage ( 1) ( 2) vi = s1 yi i s2 yi i + . . . + (1)i 1 si yi
( )

d (x) = A x + B u dt

110CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK o x = x xr et u = u ur ; le systme tant commandable, il existe K , matrice m n, telle que les valeurs propres de A + BK soient parties relles strictement ngatives (placement de ples). Ainsi la correction u = K x assure le suivi asymptotique de la trajectoire de rfrence t xr (t). On a vu dans le chapitre prcdent les arguments thoriques (thorie des perturbations, robustesse des point dquilibre dont les valeurs propres sont partie relle strictement ngative) que pour toute erreur assez faible (petite incertitude sur A et B , eets non linaires faibles, erreurs de mesure, erreurs de troncature dues la discrtisation de la loi de contrle obtenue, dynamiques trs rapide nglige, . . . ) ne sera pas amplie au cours du temps : x restera ainsi proche de xr . Nous terminerons par une constatation dordre exprimental : lorsque le d modle dynamique dt x = Ax + Bu est dorigine physique, il nest pas rare que sa partie non commandable, i.e., ses intgrales premires, ait une signication physique immdiate, tout comme les grandeurs y , fonction de x et intervenant dans la forme de Brunovsky (c.f. thorme 13) de sa partie commandable. Cet tat de fait nest vraisemblablement pas d entirement au hasard : en physique, les grandeurs qui admettent une signication intrinsque, i.e., les grandeurs physiques, sont celles qui ne dpendent pas du repre de lobservateur. En automatique, le passage dun repre un autre correspond, entre autre, une transformation de type (3.8). Il est alors clair que le "sous-espace" engendr par les sorties de Brunovsky est un invariant. Il a donc toutes les chances davoir un sens physique immdiat. De plus les sorties de Brunovsky admettent un quivalent non linaire pour de nombreux systmes physiques (voir la sous-section 3.5.1).

3.4

Commande linaire quadratique LQR


x (t) = A(t)x(t) + B (t)u (3.13)

Nous nous intressons ici aux systmes linaires du type

o ltat x Rn , la commande u Rm et, pour tout t [0, +[ les matrices A(t) et B (t) sont de tailles n n et n m, respectivement. Ces systmes peuvent provenir de bilans exacts ou, plus souvent, de la linarisation autour de trajectoires de manuvre entre des points stationnaires. Un tel exemple de trajectoire est donn sur la gure 3.7. Il sagit de lhistorique des valeurs de laltitude pour une trajectoire de vaisseau spatial (type navette) dans la

3.4. COMMANDE LINAIRE QUADRATIQUE LQR Altitude (pieds)


x 10 2.6
5

111

2.4

2.2

1.8

1.6

1.4

1.2

0.8 0 200 400 600 800 1000 1200 1400 1600 1800 2000

Temps (s) Fig. 3.7 Trajectoire de rentre dun vhicule spatial (dpart en orbite, arrive 80.000 pieds) . Les rebonds atmosphriques permettent de maximiser le dport latral en utilisant les eets arodynamiques. manuvre de rentre atmosphrique en maximisant le dport latral (i.e. en faisant pivoter lappareil pour rejoindre une plus haute latitude). Cet objectif et les contraintes arodynamiques (notamment la thermique et la variation de densit de latmosphre) confrent loptimum de nombreuses bosses (appels rebonds atmosphriques). An dassurer le suivi de cette trajectoire, on doit concevoir un contrleur en boucle ferme. On linarise alors les quations autour de cette trajectoire rebonds et on obtient naturellement un modle de la forme (3.13). Dans le cas multivariable, i.e. o on dispose de plusieurs commandes, on dispose en gnral de trop de degrs de libert pour rsoudre le problme de stabilisation. Considrons un intervalle de temps donn [0, tf ], il est assez naturel dessayer de minimiser le critre suivant (T signie transpose dans cette section)
tf

J=
0

xT (t)Rx + uT (t)Qu(t) dt

(3.14)

o R est une matrice symtrique positive et Q une matrice symtrique dnie positive 8 . Lorsquon cherche minimiser 3.14, il faut se rappeler que x et
Lhypothse de symtrie nenlve rien la gnralit. En eet pour tout x Rn , on a x Gx = xT ((G + GT )/2)x. Autrement dit, seule la partie symtrique de G compte dans
8 T

112CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK u sont en fait des carts la rfrence. Ainsi si t (xr (t), ur (t)) est la d d trajectoire de rfrence de dt x = f (x, u), on a dt xr = f (xr , ur ) avec A(t) = f x ,
(xr (t),ur (t))

B (t) =

f u

.
(xr (t),ur (t))

Ainsi, x et u dans (3.13), correspondent donc aux carts x xr (t) et u ur (t). Il est donc naturel de minimiser 3.14. Ainsi on cherche une commande [0, tf ] t u(t) faible (car pondre par Q dans le calcul de lintgrale) limitant les dviations de x qui lui mme pondr par R sur lhorizon temporel [0, tf ]. On cherche ainsi la commande ralisant le meilleur compromis (au sens prcis par les pondrations R et Q) entre dviation de ltat et eort sur les actionneurs. De manire encore plus gnrale, on considre le cot avec pondration nale 1 1 J = xT (tf )Sf x(tf ) + 2 2
tf 0

xT (t)Rx(t) + uT (t)Qu(t) dt

(3.15)

qui permet de rajouter de limportance au point nal atteint (Sf est une matrice symtrique positive). Lintrt des formulations quadratiques (3.15) (et (3.14)) est quelles sont en gnral bien poses au sens mathmatique, admettent une solution unique et calculables numriquement avec les logiciels standards.

3.4.1

Multiplicateurs de Lagrange en dimension innie

Le but de cette sous-section est de prsenter de faon formelle la mthode des multiplicateurs de Lagrange en dimension innie. Un lecteur intress pour consulter [2] o de trs nombreux problmes avec des contraintes varies sont traits. On pourra aussi consulter les notes de lES doptimisation [44]. Commenons par la dimension nie. On part du problme suivant o le critre J : Rn R et les p contraintes scalaires hi : Rn R sont des fonctions drivables du temps : J (x) min x Rn h1 (x) = 0 . . . hp (x) = 0 Pour rsoudre ce problme on introduit
le calcul de xT Gx.

3.4. COMMANDE LINAIRE QUADRATIQUE LQR

113

p multiplicateurs de Lagrange (les variables adjointes) = (1 , ..., p ) Rp ; on calcule le Lagrangien


p

L(x, ) = J (x) +

i hi (x) = J (x) + T h(x);


i=1

on calcule les conditions de stationnarit du Lagrangien au 1er ordre en faisant comme si les variables x et peuvent varier librement dans toutes les directions. Ces conditions traduisent le fait que L = 0 pour toutes variations innitsimales x et des variables x et . La condition L = 0 pour tout x donne n quations : J + xk
p

i
i=1

hi = 0, xk

k = 1, . . . , n

La condition L = 0 pour tout redonne les p contraintes : hi (x) = 0, i = 1, . . . p On a ainsi un systme de n + p inconnues avec n + p quations rsoudre pour trouver loptimum. La partie la plus dure reste cependant faire : rsoudre ce systme dquations non-linaires et vrier que la solution trouve est bien loptimum 9 . Passons maintenant la dimension innie avec le problme suivant o toutes les fonctions L : Rn Rm R, f : Rn Rm Rn , l : Rn R sont drivables et o le temps nal tf est donn ainsi que la condition initiale x0 :
tf

min [0, tf ] t (x(t), u(t)) Rn Rm x(0) = x0 d x1 (t) = 0, t [0, tf ] f1 (x(t), u(t)) dt . . . fn (x(t), u(t))
d x (t) dt n

l(x(tf )) +
0

L(x(t), u(t)) dt .

(3.16) La dimension innie vient du fait que lon minimise une fonctionnelle pour toutes les courbes t (x(t), u(t)) qui vrient les contraintes, i.e. pour toutes d les trajectoires du systme dt x = f (x, u) qui dmarrent en t = 0 de x0 . d On voit que les contraintes fi (x(t), u(t)) dt xi (t) = 0 dpendent dun indice discret i et dun indice continu t. Il est donc logique dintroduire les
9

= 0, t [0, tf ]

On pourra alors regarder les conditions au second ordre

114CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK multiplicateurs i (t) avec ces deux types dindices. Maintenant, on forme le Lagrangien L avec une somme discrte sur i et une somme continue sur t (une intgrale donc) des produits contrainte dindice (i, t) fois multiplicateur dindice (i, t) :
tf

L(x, u, ) = l(x(tf )) +

L(x(t), u(t)) dt
0 n tf 0

+
i=1

i (t) fi (x(t), u(t))

d xi (t) dt

dt.

Ainsi L est une fonctionnelle qui aux fonctions x, u et sur [0, tf ] associe un rel L(x, u, ) calcul avec une intgrale sur t. On note de faon plus compacte :
tf

L(x, u, ) = l(x(tf ))+

L(x(t), u(t)) + T (t) f (x(t), u(t))

d x(t) dt

dt.

Les conditions de stationnarit du premier ordre dobtiennent alors comme pour la dimension nie en disant quau premier ordre la variation L de L est nulle pour toute variation innitsimale x, u et des courbes paramtres t x(t), t u(t) et t (t). Il faut cependant ne pas oublier que, puisque lon na pas introduit de multiplicateur pour la contrainte x(0) = x0 , nous devons imposer la variation x de vrier la contrainte x(0) = 0. Commenons par la variation de . On doit avoir, pour toute variation de la courbe , une variation de L nulle au premier ordre : cela veut dire que pour toute fonction t (t) Rn on doit avoir
tf

L =

T (t) f (x(t), u(t))

d x(t) dt

dt = 0.

La seule possibilit 10 est qu chaque instant t [0, tf ], f (x(t), u(t)) d x(t) = 0. On retrouve bien les contraintes comme en dimension nie. dt Poursuivons avec la variation de u. On doit avoir, pour toutes variations du contrle u, une variation de L nulle au premier ordre : cela veut dire pour toute fonction t u(t) Rm on doit avoir
tf

L =

L u
tf

u(t) + T (t)
(x(t),u(t))]

f u

u(t)
(x(t),u(t))

dt = 0.

En mettant u en facteur on a L =
10

L u

+ T (t)
(x(t),u(t))

f u

u(t) dt = 0.
(x(t),u(t))

On se reportera au lemme de duBois-Reymond.

3.4. COMMANDE LINAIRE QUADRATIQUE LQR Ainsi on obtient la condition de stationnarit sur u : L f (x, u) + T (x, u) = 0, u u t [0, tf ].

115

(3.17)

Terminons par la variation de x. On doit avoir, pour toutes variations x vriant x(0) = 0, une variation de L nulle au premier ordre : cela veut dire pour toute fonction t x(t) Rn telle que x(0) = 0 on doit avoir L =
tf 0

l (x(tf ))x(tf )+ x L x(t) + T (t) x (x(t),u(t))]

f x

(x(t),u(t))

x(t)

d x(t) dt

dt = 0.

Pour mettre, comme avec u, x en facteur dans lintgrale, il nous faut limid ner dt x. La seule possibilit est de faire un intgration par partie. Cela fait d apparatre dt . Cest ici que rside principalement la nouveaut par rapport la dimension nie. On a
tf

T (t)

d t x(t) dt = [T x]0f + dt

d T (t) x(t) dt dt 0 tf d T (t) x(t) dt = T (tf )x(tf ) + dt 0

tf

car x(0) = 0. Ainsi on a L = l (x(tf )) T (tf ) x(tf )+ x


tf 0

L x

+ T (t)
(x(t),u(t))]

f x

+
(x(t),u(t))

d T (t) dt

x(t) dt = 0.

Donc pour toutes fonctions t x(t) telles que x(0) = x(tf ) = 0, on a


tf 0

L x

+ T (t)
(x(t),u(t))]

f x

+
(x(t),u(t))

d T (t) dt

x(t) dt

et donc la seule possibilit est L x + T (t)


(x(t),u(t))]

f x

+
(x(t),u(t))

d T (t) = 0 dt

116CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK soit L x


T

+
(x,u)

f x

+
(x,u)

d = 0, t [0, tf ]. dt

(3.18)

Enn, avec x(tf ) = 0 on obtient de L = 0 la condition nale : (tf ) = l (x(tf )) x

En rsum, les conditions doptimalit du premier ordre pour le problme (3.16) sont pour t [0, tf ] d x(t) = f (x(t), u(t)) dt T T d L f (t) (t) = x (x(t),u(t)) x (x(t),u(t)) dt L f 0= + T u (x(t),u(t)) u (x(t),u(t)) x(0) = x0 , (tf ) = l (x(tf )). x

(3.19)

avec comme condition au bord

Nous allons maintenant utiliser ces formules dans les cas o f est linaire et les fonctions L et l quadratiques. Cest le bon cas : en eet lorsque le critre est quadratique et convexe et les contraintes linaires, les conditions de stationnarit ci-dessus sont alors des conditions ncessaires et susantes doptimalit.

3.4.2

Problme aux deux bouts

La caractrisation de la commande optimale pour le problme de minimisation du critre (3.15) pour une condition initiale x(0) donne passe par le calcul des conditions de stationnarit (3.19) avec f = Ax + Bu, 1 T L = 1 (xT Rx + uT Qu) et l = 2 x Sf x et donc la rsolution du problme 2 aux deux bouts suivants d x(t) = A(t)x(t) BQ1 B T (t) dt (3.20) d T (t) = Rx(t) A (t)(t) dt

3.4. COMMANDE LINAIRE QUADRATIQUE LQR

117

avec les conditions limites bilatrales : x(0) donn, et (tf ) = Sf x(tf ). Ltat (adjoint) est de la mme dimension que x. Il joue, dans ce problme doptimisation de trajectoire (i.e. de dimension innie), le mme rle que les multiplicateurs de Lagrange dans les problmes doptimisation sous contraintes en dimension nie (voir [37]). La commande optimale est alors donne par la dernire quation de (3.19) u(t) = Q1 B T (t)(t) La particularit de ces quations (3.20) est quelles admettent une solution explicite sous forme linaire (t) = S (t)x(t) avec S (tf ) = Sf . En substituant dans (3.20), on obtient d S (t)x(t) + S (t)A(t)x(t) S (t)B (t)Q1 B T (t)S (t)x(t) dt = Rx(t) AT (t)S (t)x(t) Il sut alors de choisir S solution de lquation direntielle matricielle de Riccati en temps rtrograde (quadratique en linconnue S ) d 1 T T S (t) = S (t)A(t) + S (t)B (t)Q B (t)S (t) R A (t)S (t) (3.21) dt S (tf ) = Sf pour obtenir nalement la commande optimale u(t) = Q1 B T (t)S (t)x(t) (3.22)

Le fait majeur retenir ici est que la commande optimale (3.22) sexprime prcisment comme une loi de feedback instationnaire dont le gain peuttre calcul hors-ligne 11 (i.e. avant de raliser la moindre exprience) par la rsolution de lquation de Riccati (3.21). Exemple [9] Soit la dynamique J=
11

d x dt

= v,

d v dt

= u et le critre minimiser
tf 0

1 1 c1 v (tf )2 + c2 x(tf )2 + 2 2

u2 (t)dt

On peut montrer que le problme linaire instationnaire avec cot quadratique considr ici donne la solution au deuxime ordre dun problme non-linaire plus prcis dont il est lapproximation. La loi de feedback que nous venons de calculer procure alors le calcul des extrmales de voisinages (voir [9]).

118CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK o c1 , c2 et tf sont des constantes positives. La commande optimale est u(t) = x (t)x(t) v (t)v (t) o kx = 1/c2 + 1/c1 (tf t)2 + 1/3(tf t)3 D(tf t) 1/c1 (tf t) + 1/2(tf t)2 D(tf t)

kv = avec D(tf t) =

1 1 + (tf t)3 c2 3

1 1 + tf t (tf t)4 c1 4

Planication de trajectoires On peut ajouter lobjectif de minimiser un critre quadratique du type (3.14), une contrainte nale, permettant dexprimer le souhait de se rendre exactement en un point donn. On se retrouve alors avec un problme de planication de trajectoire optimale pour un systme linaire instationnaire. La contrainte que nous considrons ici est x(tf ) = (3.23)

o Rn . Il est possible bien sr de considrer des contraintes plus gnrales, ne portant que sur certaines composantes de ltat, on pourra se rfrer [9] pour un expos des mthodes sy rapportant. Les conditions de stationnarit sont modies par ladjonction de la con trainte (3.23). Il sut de remplacer la condition nale dans (3.19) par la condition nale sur x(tf ) = . On obtient la commande optimale par la rsolution des quations suivantes d S (t) = S (t)A(t) + S (t)B (t)Q1 B T (t)S (t) R AT (t)S (t) dt S (tf ) = 0 d V (t) = AT (t) S (t)B (t)Q1 B T (t) V (t) dt V (tf ) = I d H (t) = V T (t)B (t)Q1 B T (t)V (t) dt H (tf ) = 0 (3.24) (3.25) (3.26) (3.27) (3.28) (3.29)

o I est la matrice identit de taille n. On notera que (3.24) est une quation de Riccati quon devra rsoudre en temps rtrograde depuis sa condition

3.4. COMMANDE LINAIRE QUADRATIQUE LQR

119

terminale (3.25). Une fois cette quation rsolue, on pourra calculer V (t) en rsolvant lquation linaire (3.26) partir de la condition terminale (3.27). Ensuite, on pourra calculer H (t) travers (3.28) et (3.29) par une simple intgration en temps rtrograde. La matrice H (t) est toujours ngative car d H (tf ) = 0 et dt H 0. Elle nest pas singulire lorsque le systme est commandable (voir [9]). Finalement, la commande optimale est u(t) = Q1 B T (t) S (t) V (t)H 1 (t)V T (t) x(t) Q1 B T (t)V (t)H 1 (t) Cest encore une fois une loi de feedback instationnaire, complt par un terme de feedforward lui aussi instationnaire. Exemple Considrons le systme dynamique d x(t) = Ax(t) + Bu(t) dt 0 1 1/2 0 x(t) + 0 1 u(t)

On souhaite calculer une commande [0 3] t u(t) R transfrant le systme de x0 = [0.5 1]T xf = [1 0]T = en minimisant le critre quadratique 1 3 J= u(t)2 dt 2 0 On forme le systme d S (t) = S (t)A + S (t)BQ1 B T S (t) AT S (t) dt S (3) = 0 d V (t) = AT S (t)BB T V (t) dt V (3) = I d H (t) = V T (t)BB T V (t) dt H (3) = 0 (3.30) (3.31) (3.32) (3.33) (3.34) (3.35)

quon rsoud en cascade comme expliqu plus haut. Tout dabord, on red V (t) = AT V (t), marque que S (t) = 0. Lquation (3.32) se rcrit alors dt quon peut rsoudre explicitement avec la condition terminale (3.33). Il vient V (t) = exp (t 3)AT Ensuite, on intgre numriquement (3.34) ce qui donne
tf

H (t) =

V T (t)BB T V (t)dt

120CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK

0.5

x1 x2 u

0.5

1.5

0.5

1.5

2.5

Fig. 3.8 Trajectographie sous contraintes nales par minimisation quadratique. pour nalement calculer le contrle optimal u(t) = B T V (t)H 1 (t)V T (t)x(t) B T (t)V (t)H 1 (t) La rsolution eective de ces calculs donne les trajectoires de la gure 3.8.

3.4.3

Rgulateur LQR

On utilise souvent une version plus simple de la commande quadratique que nous venons de prsenter en considrant tf +. Le cot minimiser est alors
+

J=
0

xT (t)Rx(t) + uT (t)Qu(t) dt

(3.36)

o R est une matrice symtrique positive, Q est une matrice symtrique dnie positive et la dynamique que nous considrons est linaire stationnaire d x(t) = Ax(t) + Bu dt (3.37)

o ltat x Rn , la commande u Rm et les matrices A et B sont de tailles n n et n m, respectivement.

3.4. COMMANDE LINAIRE QUADRATIQUE LQR

121

La rsolution de ce problme de commande optimale est plus simple, aboutit un feedback stationnaire qui possde dintressantes proprits. Thorme 15 (Rgulateur LQR). Considrons le problme de minimisation du cot quadratique (3.36) pour le systme (3.37) sous les hypothses suivantes : 1. (A, B ) est commandable 2. R est symtrique positive 3. Q est symtrique dnie positive 4. Il existe une racine de R telle que (A, R1/2 ) est observable (voir chapitre 4) 12 . Sous ces hypothses, une commande optimale est ncessairement stabilisante. Considrons lquation de Riccati algbrique, alors 0 = SA AT S + SBQ1 B T S R 1. (3.38) admet des solutions symtriques stabilisantes 2. (3.38) admet une unique solution symtrique stabilisante S 0 , i.e. telle d x = (A BQ1 B T S 0 )x(t) est asymptotiquement que le systme boucl dt stable 3. le contrle boucle ferme u(t) = Q1 B T S 0 x(t) ralise le minimum du critre (i.e. est loptimum recherch). Ce minimum vaut xT (0)S 0 x(0). Utilisation pratique Pour simplier lutilisation du rsultat prcdent dont lnonc peut drouter, notons lutilisation suivante. Si (A, B ) est commandable, Q diagonale termes strictement positifs et R symtrique positive (par exemple diagonale termes positifs), alors le thorme est applicable. Les matrices Q et R permettent dexprimer un arbitrage entre limportance des erreurs sur ltat et leort sur la commande. Plus un terme est grand, plus lerreur sy rapportant prend dimportance dans la fonction cot et plus elle a tendance tre rduite par la solution optimale. En rsolvant lquation de Riccati, on obtient la loi de commande optimale.
On entend par racine de R, note R1/2 une matrice telle que R = (R1/2 )T R1/2 . Toute matrice hermitienne positive admet une telle factorisation.
12

(3.38)

122CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK Note Dans le thorme prcdent, on utilise souvent les hypothses (plus faibles) de stabilisabilit la place de commandabilit, et de dtectabilit la place dobservabilit. Nous admettons le point 1 qui est dicile, mais nous allons nous concentrer sur les points 2 et 3 qui sont dailleurs les plus utiles pour notre problme de caractrisation de la commande optimale. Dmonstration. Commenons par prouver quune commande optimale est ncessairement stabilisante. Puisque (A, B ) est commandable 13 par hypothse, il existe une commande stabilisante u = Kx qui assure (sans fournir loptimalit du critre) que x(t) et u(t) convergent exponentiellement vers zro. De la sorte, lintgrale (3.36) converge. La commande optimale doit en plus procurer une meilleure valeur de la fonction cot. En particulier, on doit avoir limt+ xT (t)Rx(t) = 0. Ceci signie que limt+ R1/2 x(t) = 0. Or, la paire (A, R1/2 ) est observable 14 par hypothse, donc ceci implique limt+ x(t) = 0. On en dduit que la commande optimale est stabilisante. Pour prouver lunicit nous allons utiliser le lemme suivant. Lemme 2. Lquation matricielle dinconnue X XA + BX = C o A, B et C sont des matrices carres de dimensions bien choisies, possde une unique solution ssi A et B nont pas de valeur propre commune. On pourra se rfrer [28] pour la dmonstration de ce rsultat. Considrons donc deux solutions symtriques distinctes S1 et S2 de lquation (3.38) telles que A1 = A BQ1 B T S1 et A2 = A BQ1 B T S2 sont toutes deux stables. Calculons alors (S1 S2 )A1 + AT 2 (S1 S2 ) + A BQ1 B T S2
T

= S1 A S1 BQ1 B T S1 S2 A + S2 BQ1 B T S1 (S1 S2 ) = R + R = 0

en utilisant deux fois lquation (3.38).


13 14

ici stabilisable sut bien sr dtectable sut galement

3.4. COMMANDE LINAIRE QUADRATIQUE LQR On en dduit lquation matricielle (S1 S2 )A1 + AT 2 (S1 S2 ) = 0

123

qui est justement de la forme voque dans le lemme 2. Or, par hypothse, A1 et A2 ne possdent pas de valeur propre commune car A1 et A2 sont stables. On en dduit S1 = S2 do lunicit. Le point 2 est dmontr. Dmontrons maintenant le point 3. Considrons la commande optimale candidate u(t) = Q1 B T S 0 x(t) et calculons la valeur du critre J pour une autre commande v . Cette commande devant tre stabilisante, on a
0

d T 0 (x S x)dt = xT (0)S 0 x(0) dt

Poursuivons,

J = x (0)S x(0) +
0

xT (t)Rx(t) + v T (t)Qv (t) +

d T 0 (x S x) dt dt

= x (0)S x(0)+

xT (R + AT S 0 + S 0 A)x + v T Qv + v T B T S 0 x + xT S 0 Bv dt
0

en utilisant lquation de Riccati algbrique (3.38) = xT (0)S 0 x(0)+

xT S 0 BQ1 B T S 0 x + v T Qv + v T B T S 0 x + xT S 0 Bv dt
0

=
0

Q1 B T S 0 x + v

Q Q1 B T S 0 x + v dt

Or Q est par hypothse symtrique dnie positive. Donc, loptimum est atteint pour la commande optimale Q1 B T S 0 x et la valeur de cet optimum est xT (0)S 0 x(0)

124CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK


d 1 Exemple Considrons le systme dt x= x + u et le critre quadratique + 1 2 2 J = 2 0 (ax + bu )dt o a 0, b > 0. Lquation de Riccati algbrique associe est S2 2 0= Sa+ b

Elle possde deux solutions S = u=


1

b2 2

+ ab. La commande associe est

1 2

a b

x La commande optimale correspond S+ .

Rsolution de lquation de Riccati algbrique Lorsquon cherche effectivement rsoudre lquation Riccati algbrique (3.38) on peut utiliser deux approches. La premire consiste rsoudre lquation de Riccati direntielle (3.21) en temps rtrograde (i.e. en rajoutant un signe devant le second membre) en partant de la condition initiale nulle. La solution converge pour t + vers la solution de lquation Riccati algbrique (3.38) recherche. Cette mthode est de Kalman. Une autre mthode repose sur la dcomposition de Schur de la matrice recherche (i.e. une dcomposition sous la forme dune matrice unitaire et dune matrice triangulaire suprieure). Cest ce genre dapproche qui est utilise dans les logiciels de calcul scientique. On pourra se rfrer dirents articles sur le sujet dont [3].

3.5
3.5.1

Complments
Linarisation par bouclage

Equivalence statique
d x= La relation dquivalence qui permet de mettre un systme linaire dt Ax + Bu commandable sous forme de Brunovsky peut tre prolonge de la manire suivante. Au lieu de considrer des transformations du type

x Mx u Kx + N u avec M et N matrices inversibles, considrons des transformations inversibles plus gnrales et non linaires suivantes z = (x) x v = k (x, u) u o est un diomorphisme et x bloqu, u k (x, u) galement. Il est donc logique de considrer maintenant les systmes non linaires de la forme

3.5. COMPLMENTS
d x dt

125

= f (x, u) et leur classication modulo le groupe de transformations ci-dessus. La relation dquivalence qui en rsulte est appele quivalence par bouclage statique rgulier et changement de coordonnes (dune faon plus abrge quivalence statique). Dcider si deux systmes avec les mmes d d nombres dtats et des commandes, dt x = f (x, u) et dt z = g (z, v ), (f , g rgulires) sont quivalents, est un problme de gomtrie trs complique et largement ouvert. En revanche, il existe une caractrisation explicite des systmes non linaires quivalents aux systmes linaires commandables. Exercice 1. Soit le systme de la gure 3.5. On suppose que le ressort est non linaire. Dans (3.9) la raideur k est fonction de x1 x2 : k = k0 + a(x1 x2 )2 avec k0 et a > 0. Montrer que le systme reste commandable et calculer sa sortie "non linaire" de Brunovsky (la sortie plate). Exercice 2. Prenons lexemple (3.5) en ne considrant que les deux quations direntielles relatives x1 et T (nous ne considrons que la partie commandable). Montrer (formellement) que ce sous-systme deux tats et une commande est commandable (indication : la quantit y = x1 joue le rle de sortie "non linaire" de Brunovsky (la sortie plate)) Calculer le bouclage statique qui linarise le systme. CNS de linarisation statique
d x= Lintrt pratique est le suivant. Les quations issues de la physique dt f (x, u) sont en gnral non linaires dans les coordonnes de modlisation x et u. La question Existe-t-il des coordonnes, z = (x) et v = k (x, u), qui d rendent les quations linaires, dt z = Az + Bv avec (A, B ) commandable ? est alors dimportance. En eet, une rponse positive signie que le systme est faussement non linaire : le systme est alors dit linarisable par bouclage statique. Il sut de changer de repre pour que tout devienne linaire. A partir de maintenant, nous considrons le systme

d x = f (x, u), x Rn , u Rm dt avec f rgulire et f (0, 0) = 0. Notre point de vue sera local autour de lquilibre (x, u) = (0, 0). Il peut tre largi lespace tout entier sans dicult importante. Lemme 3. Les deux propositions suivantes sont quivalentes 1. Le systme tendu d x = f (x, u) dt du=u dt

(3.39)

126CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK est linarisable par bouclage statique (u est ici la commande) 2. Le systme d x = f (x, u) dt est linarisable par bouclage statique. (3.40)

Preuve Si x = (z ) et u = k (z, v ) transforment (3.40) en un systme d z = Az + Bv , alors (x, u) = ((z ), k (z, v )) et u = linaire commandable dt k k (Az + Bv ) + v v transforment (3.39) en z d z = Az + Bv, dt d v=v dt (3.41)

systme linaire commandable. Ainsi la seconde proposition implique la premire. Supposons maintenant la premire proposition vraie. Comme tout systme linaire commandable peut scrire sous la forme (3.41) avec (A, B ) commandable, (cf forme de Brunovsky) il existe une transformation (x, u) = ((z, v ), (z, v )) et u = k (z, v, v ) qui transforme (3.39) en (3.41) avec dim(z ) = dim(x). Cela veut dire que pour tout (z, v, v ) (z, v )(Az + Bv ) + v = f ((z, v ), (z, v )). z v Donc ne dpend pas de v et la transformation inversible x = (z ), u = d z = Az + Bv . (z, v ) transforme (3.40) en dt d u = u et en prenant comme Ainsi, quitte tendre ltat en posant dt entre u , on peut toujours supposer que f est ane en u, i.e., que le systme admet les quations d x = f (x) + u1 g1 (x) + . . . + um gm (x) dt (3.42)

o f et les gi sont des champs de vecteurs rguliers. Il est alors facile de voir que les transformations x = (z ) et u = k (z, v ) qui rendent le systme linaire sont ncessairement anes en v , i.e., k (x, v ) = (x) + (x)v avec inversible pour tout x. Prenons maintenant un changement rgulier de variables : x = (z ) dinverse = 1 , z = (x). Considrons maintenant le systme dni par (3.42) dans le repre x. Dans le repre z , nous avons les quations suivantes : d z = (D f + u2 D g1 + . . . + um D gm )x=(z) dt (3.43)

3.5. COMPLMENTS o D est la matrice jacobienne de :


i xj

127 . Ainsi f (resp. gk ) devient

D f (resp. D gk ). A partir de ces champs de vecteurs dnissant (3.42), on dnit une suite croissantes despaces vectoriels indexs par x par la rcurrence suivante E0 = {g1 , . . . , gm }, Ei = {Ei1 , [f, Ei1 ]} i 1

i,j

o [f, g ] est le crochet de Lie de deux champs de vecteurs f et g et o { } signie espace vectoriel engendr par les vecteurs lintrieur des parenthses. On rappelle que le crochet de deux champs de vecteurs f et g , de composantes (f1 (x), ..., fn (x)) et (g1 (x), ..., gn (x)) dans les coordonnes (x1 , ..., xn ), admet comme composantes dans les mmes coordonnes x
n

[f, g ]i =
k=1

fi gi gk fk . xk xk

Un simple calcul montrent que si z = (x) est un changement rgulier de variables on obtient les composantes du crochet [f, g ] dans les coordonnes z par les mmes formules que dans les coordonnes x. Cela veut dire que D.[f, g ] = [D.f, D.g ]. Ainsi on sait faire du calcul direntiel intrinsque sans passer par un choix particulier de repre. Les Ek deviennent, dans les coordonnes z , D.Ek . On appelle ce type dobjet des distributions (rien voir avec les distributions de Laurent Schwartz). Ce sont des objets intrinsques car la mthode de construction de Ek ne dpend pas du systme de coordonnes choisies pour faire les calculs. Le rsultat suivant date des annes 1980. Thorme 16. CNS linarisation statique Autour de lquilibre (x, u) = (0, 0), le systme (3.42) est linarisable par bouclage statique rgulier si, et seulement si, les distributions Ei , i = 1, . . . , n 1 dnies ci-dessus sont involutives (stables par le crochet de Lie), de rang constant autour de x = 0 et le rang de En1 vaut n, la dimension de x. Une distribution E est dite involutive, si et seulement si, pour tous champs de vecteurs f et g dans E (pour tout x, f (x) et g (x) appartiennent lespace vectoriel E (x)), alors le crochet [f, g ] reste aussi dans E . Preuve Il est vident que les distributions Ei restent galement inchanges par bouclage statique u = (x)+ (x)v avec (x) inversible. Comme pour un

128CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK


d systme linaire commandable dt x = Ax + Bu, Ei correspondent limage i de (B, AB, . . . , A B ), les conditions sur les Ei sont donc ncessaires. Leur cot susant repose essentiellement sur le thorme de Frobenius [20]. Ce rsultat classique de gometrie direntielle dit que toute distribution involutive E de rang constant m correspond, dans des coordonnes adaptes w = (w1 , ..., wn ), lespace vectoriel engendr par les m premires composantes. On a lhabitude de not /wk le champ de vecteurs de composantes (i,k )1in dans les coordonnes w. Alors E = {/w1 , ..., /wm }. Si les Ei vrient les conditions du thorme, alors il existe un systme de coordonnes locales (x1 , . . . , xn ) autour de 0 tel que

Ei =

,..., x1 xi

d o i est le rang de Ei . Dans ces coordonnes locales, dt xi pour i > 0 ne dpend pas de la commande u. Ainsi, en remplaant u par (x)+ (x)u avec une matrice inversible bien choisie, la dynamique (3.42) scrit ncessairement ainsi

d xi = ui , i = 1, . . . , 0 dt d xi = fi (x), i = 0 + 1, . . . , n. dt Un raisonnement simple montre que, pour i > 1 , fi ne dpend pas de (x1 , . . . , x0 ) car E1 involutive. Ainsi nous avons la structure suivante d xi = ui , i = 1, . . . , 0 dt d xi = fi (x1 , . . . , xn ), i = 0 + 1, . . . , 1 dt d xi = fi (x0 +1 , . . . , xn ), i = 1 + 1, . . . , n. dt De plus le rang de (f0 +1 , . . . , f1 ) par rapport (x1 , . . . , x0 ) vaut 1 0 . Donc 0 1 0 . Quitte faire des permutations sur les 0 premires composantes de x, on peut supposer que (x1 , . . . , x1 0 ) (f0 +1 , . . . , f1 ) est inversible. Cela permet de dnir un nouveau systme de coordonnes en remplaant les 1 0 premires composantes de x par (f0 +1 , . . . , f1 ) . Dans ces nouvelles coordonnes et aprs bouclage statique rgulier u (x)u avec (x) inversible bien choisi, nous avons la structure suivante (les notations avec

3.5. COMPLMENTS u, x et f sont conserves) : d xi = ui , i = 1, . . . , 0 dt d xi = xi0 , i = 0 + 1, . . . , 1 dt d xi = fi (x0 +1 , . . . , xn ), i = 1 + 1, . . . , n. dt

129

On sait que ce systme est linarisable si, et seulement si, le systme rduit d xi = xi0 , i = 0 + 1, . . . , 1 dt d xi = fi (x0 +1 , . . . , xn ), i = 1 + 1, . . . , n dt avec (x1 , . . . , x1 0 ) comme commande. Comme les distributions Ei associes ce systme rduit se dduisent simplement de celles du systme tendu en , on voit quelles vrient, elles , . . . x liminant les champs de vecteurs x 0 1 aussi, les conditions du thorme. Ainsi il est possible de rduire encore le systme. A chaque tape, la linarisation du systme tendu est quivalente celle du systme rduit. Au bout de cette limination (en au plus de n 1 tapes), la linarisation du systme de dpart est alors quivalent celle dun systme rduit de la forme d x = f (x, u) dt o le rang de f par rapport u est gale la dimension de x, linarisation qui est alors triviale. Bouclage dynamique Le lemme 3 est trompeur. Il semble suggrer que le fait dtendre un systme en rajoutant des drives de la commande dans ltat ne rajoute rien pour la linarisation. Ceci est vrai si on rajoute le mme nombre dintgrateurs sur toutes les commandes (prolongation totale). Par contre, des nombres dirents peuvent permettre de gagner quelque chose. Par exemple le systme = u2 x = u1 sin , z = u1 cos 1, nest pas linarisable par bouclage statique bien que le systme tendu x = u1 sin , z = u1 cos 1, u 1 = u 1 , = u2

130CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK de commande ( u1 , u2 ) le soit. Ce fait nest nullement contraire au lemme 3 puisque seule lentre u1 a t prolonge deux fois. Pour un systme une seule commande, on ne gagne videment rien. Cette remarque est lorigine de la linarisation par bouclage dynamique. d Un systme dt x = f (x, u) est dit linarisable par bouclage dynamique rgulier, si, et seulement si, il existe un compensateur dynamique rgulier d = a(x, , v ), dt tel que le systme boucl d x = f (x, k (x, , v )), dt d = a(x, , v ) dt u = k (x, , v ),

soit linarisable par bouclage statique rgulier. Noter que la dimension de est libre. La dimension de lespace dans lequel on doit travailler peut a priori tre arbitrairement grande. Noter galement que les compensateurs dynamiques qui consistent ne prolonger que les entres, sont des compensateurs particuliers. Ils ne permettent pas de linariser certains systmes comme celui ci : x = u2 cos u1 sin z = u2 sin + u1 cos g = u2 . En eet, on peut montrer que, quelque soit le compensateur dynamique de la ( ) ( ) 2 (1 et 2 entiers arbitraires), le systme tendu 1 , u2 2 = u forme u1 1 = u nest pas linarisable par bouclage statique. En revanche il est linarisable par le bouclage dynamique plus gnraux. Cette question est lorigine des systmes plats, les systmes linarisables par des bouclages dynamiques dits endognes et auxquels est associe une relation dquivalence (i.e., une gomtrie). Pour en savoir plus voir [40].

3.5.2

Stabilisation via Lyapounov et backstepping

On a dj entrevu cette mthode de stabilisation autour dun point dquilibre lors de lexemple de la gure 3.1. On reprend ici simplement lide de base pour un systme non linaire15 .
Lide sapplique aussi aux systmes de dimension innie, i.e., gouverns par des quations aux drives partielles avec un contrle sur la frontire.
15

3.5. COMPLMENTS

131

On part dun systme dynamique avec un seul contrle u (pour simplier), d x = f (x) + ug (x) dt et dune fonction V (x) positive et qui tend linni quand x Rn tend vers linni en norme. On suppose ici que toutes les fonctions sont drivables autant de fois que ncessaire. On suppose de plus que pour u = 0, la drive de V le long des trajectoires d x = f (x) est ngative ou nulle. Pour les systmes mcaniques, V est souvent dt lnergie mcanique. Ainsi par hypothse pour tout x on a V f (x) 0. x Avec u = 0 on a d V V V = f (x) + u g (x). dt x x Le feedback est alors construit avec nimporte quelle fonction K : R R assez rgulire qui sannule en 0 uniquement et telle que K ( ) > 0 si < 0 et K ( ) < 0 si > 0 : V u=K g (x) . x Le principe dinvariance de LaSalle sapplique alors (cf thorme 3, page 25). Lensemble vers lequel converge les trajectoires du systme en boucle ferme est alors donn en rsolvant le systme sur-dtermin suivant : d x = f (x), dt V f (x) = 0, x V g (x) = 0. x

La mthode consiste driver un certain nombre de fois les deux quations f (x) = 0 et V g (x) = 0 par rapport au temps et remplacer "algbriques" V x x d chaque fois dt x par f (x). La fonction V est souvent appele "controlled Lyapounov function" ou CLF. La mthode dite du "backstepping" rsout le problme suivant. Les donnes sont un systme ane en contrle (on suppose toujours pour simplier lexpos un seul contrle scalaire) : d x = f (x) + ug (x) dt Une fonction de Lyapounov V pour u = 0 (une CLF donc)

132CHAPITRE 3. COMMANDABILIT, STABILISATION, FEEDBACK On peut donc utiliser la mthode ci-dessous pour construire le feedback, not u = k (x), qui stabilise le systme. On souhaite en dduire un feedback stabilisant pour le systme tendu d x = f (x) + g (x), dt d =u dt

o maintenant le contrle nest plus mais sa drive u. On procde ainsi. On considre la fonction suivante : 1 W (x, ) = V (x) + ( k (x))2 . 2 Ainsi W est bien inni linni et reste positive. Calculons sa drive en temps : V k d W = (f (x) + g (x)) + p( k (x)) u (f (x) + g (x)) . dt x x
d Utilisons quavec = k (x) la drive dt V = V (f (x)+ k (x)g (x)) est ngative. x Cela conduit au re-arrangement suivant du second membre :

d V k V W = (f (x)+k (x)g (x))+( k (x)) u (f (x) + g (x)) + g (x) . dt x x x Il sut, avec p > 0 paramtre, de poser u= pour avoir d V W = (f (x) + k (x)g (x)) p( k (x))2 0. dt x On conclut lanalyse toujours par linvariance de LaSalle. Pour un expos dtaill des possibilits de ces mthodes nous renvoyons le lecteur intress [47]. V k (f (x) + g (x)) g (x) p( k (x)) x x

Chapitre 4 Observabilit, estimation et adaptation


Dans le chapitre prcdent, nous avons vu comment stabiliser une systme par retour dtat (feedback). Le calcul de tels bouclages ncessite la connaissance chaque instant de ltat x. Il est frquent que seule une partie de ltat soit directement accessible la mesure. Aussi est on confront au problme suivant. Connaissant les quations du systme (i.e., ayant un mod x = f (x, u), les relations entre les mesures y et ltat, y = h(x), les dle), dt entres t u(t) et les mesures t y (t) , estimer x. Cela revient rsoudre le problme suivant d x = f (x, u), y = h(x) dt o x est linconnue (une fonction du temps) et o u et y sont des fonctions connues du temps. Il est clair que ce problme est sur-dtermin. Lunicit de la solution correspond lobservabilit. Lexistence au fait que y et u ne peuvent pas tre des fonctions du temps indpendantes lune de lautre. Elles doivent vrier des relations de compatibilit qui prennent la forme dquations direntielles. Ce chapitre aborde cette question. Tout dabord nous donnons les dnitions et les critres assurant lexistence et lunicit de la solution. Pour les systmes linaires nous prsentons une mthode trs conome en calculs pour obtenir x avec un observateur asymptotique. Nous montrons aussi comment paramtrer de "faon optimale" un tel observateur asymptotique pour obtenir le ltre de Kalman. Le couplage avec le feedback est alors simple : il sut de remplacer dans les formules donnant la loi de rtro-action les valeurs de ltat par leur estimes. On montre alors que le contrleur ainsi obtenu, celui qui part des sorties, estime ltat et en dduit le contrle (observateur contrleur, commande modale, bouclage dynamique de sortie), permet de stabiliser 133

134 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION asymptotiquement tout systme linaire coecients constants commandable et observable (principe de sparation). Enn, nous proposons quelques extensions au cas non linaire avec la synthse dobservateurs asymptotiques via linjection de sortie et la notion de contraction.

4.1

Un exemple

Cette exemple est reprsentatif de ce que les ingnieurs appellent capteurs logiciels. Il sagit pour un moteur lectrique de remonter via les signaux de courants (mesure) et de tension (contrle) la vitesse de rotation du moteur et son couple de charge. Ainsi, il est possible dobtenir des estimations de ces deux variables mcaniques, plus coteuses mesurer, en partant des variables lectriques, plus simples et faciles mesurer. Nous traitons ici le cas des moteurs courant continu. Pour les moteurs induction, le mme problme se pose mais il est nettement plus complexe, non compltement rsolu et fait encore lobjet de travaux de recherches et de dveloppement (inobservabilit au premier ordre et sensibilit aux paramtres basse vitesse). Les capteurs logiciels sont des traitements en temps-rel de linformation venant des capteurs pour en dduire des informations non bruites sur des grandeurs mesures ou non. Sur lexemple choisi ici, il sagit, partir de la mesure des tensions et des courants qui traversent le moteur, destimer de faon causale sa vitesse mcanique et son couple de charge. Lintrt pratique est vident : les informations lectriques sont toujours disponibles car les capteurs sont simples et ables. En revanche, les informations mcaniques ncessitent une instrumentation plus complexe, plus chre et moins able. Aussi pour des raisons de cot mais aussi de scurit, dduire des courants et tensions, la vitesse de rotation est un enjeu technologique important en lectro-technique. Dans dautres domaines, on rencontre des problmes trs similaires. Pour les procds, les dbits, tempratures et pressions sont faciles avoir par des capteurs simples et robustes alors que les compositions sont plus diciles mesurer (temps de retard de lanalyse, ...). Un traitement de linformation contenue dans les tempratures, pressions et dbits permet souvent dobtenir des estimations prcieuses sur les compositions. Pour estimer lorientation relative dun mobile par rapport un rfrentiel terrestre les mesures sont de deux types : les gyromtres donnent de faon prcise et rapide les vitesses angulaires ; le GPS ou les images issues camra embarques donnent des informations base frquence sur les positions et orientations. Il faut en dduire grce aux relations cinmatiques une estimation robuste de lorientation du mobile (ses trois angles dEuler, i.e., une matrice de rotation) et de sa vitesse et de sa position. Ce problme est central pour la mise au

4.1. UN EXEMPLE

135

point davion sans pilote. Souvent on parle de fusion de donnes. Lexemple du moteur courant continu permet de se faire une ide des questions souleves et des techniques utiles pour apporter des solutions simples ce type de question. Cet exemple illustre lobservabilit [dnition 7, page 139], les observateurs asymptotiques [section 4.3.2, page 146], lobservateur-contrleur [section 4.4, page 147].

4.1.1

Un modle simple
d J dt = k p d L dt = k R + u

Un premier modle de moteur courant continu est le suivant :

o est la vitesse de rotation du moteur, le courant, u la tension, L > 0 la self, R > 0 la rsistance, k la constante de couple, p le couple de charge et J linertie de la partie tournante (moteur + charge). Nous supposons les paramtres J > 0, k > 0, L > 0 et R > 0 connus et constants. En revanche seule lintensit est mesure. La charge p est une constante inconnue. Il nous faut concevoir un algorithme qui ajuste en temps rel la tension u de faon suivre une vitesse de rfrence r (t) variable dans le temps. Pour cela nous ne disposons que dun capteur de courant. Beaucoup de variateurs de vitesse pilotent la vitesse du moteur sans la mesurer. Rajouter un capteur de vitesse sur larbre du moteur est parfois dlicat. En revanche, brancher entre le moteur et son alimentation lectrique une petit boite, i.e. le variateur de vitesse, est trs simple raliser.

4.1.2

Estimation de la vitesse et de la charge


d p dt

Comme p est un paramtre constant, les variables dtat. Ainsi on a le systme


d p dt d J dt d L dt

= 0 et on peut linclure dans

= 0 = k p = k R + u

avec comme commande u et comme sortie y = . tudier lobservabilit de ce systme [dnition 9, page 140] revient se pose la question suivante : connaissant t ((t), u(t)) et les quations du systme, est-il possible de calculer et p. La rponse est positive et immdiate car = (u L d R)/k, dt p = k (J/k ) d d2 d u L 2 R . dt dt dt

136 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION Le systme est donc observable. On pourrait aussi reprendre le critre de Kalman [thorme 17, page 144]. Il est issu du mme calcul que celui qui prcde mais sur un systme linaire gnral. Cependant les mesures de courant sont bruites. Il est donc hors de question de driver ce signal. Le fait dtre en thorie observable ne donne pas un algorithme destimation raliste. Il nous faut concevoir un algorithme qui soit insensible au bruit, i.e., qui les ltre astucieusement sans introduire de dphasage. Ici apparat une ide centrale celle dobservateur asymptotique. Elle consiste copier la dynamique du systme en lui rajoutant des termes correctifs lis lerreur entre la prdiction et la mesure. Cela donne ici lobservateur suivant
d p dt d J dt d L dt

= Lp ( ) = k p + L ( ) = k R + u + L ( )

o il est dusage de rajouter un chapeau sur les estimes. On parle souvent pour le paramtre p didentication, p tant la valeur identie et pour et destimation ou de ltrage, et tant les valeurs estimes et ltres (cest dire dbarrasses des bruits hautes frquences). En choisissant correctement les gains Lp , L et L les carts entre les estimes et les vraies valeurs tendent vers zro. En eet la dynamique des erreurs ep = p p, e = et e = scrit d e = Lp e dt p d J dt e = ep + (L + k )e d e = (L R)e ke . L dt Il sagit dun systme autonome linaire donc les valeurs propres sont les racines du polynme de degr 3 suivant X3 L R 2 k (L + k ) Lp k X + X . L LJ LJ

tant donn quen jouant sur les Lp , L et L , on peut donner nimporte quelles valeurs aux fonctions symtriques des racines, il est possible de les choisir comme lon veut. Si Lp , L et L vrient L R = r1 + r2 + r3 L k (L + k ) = r1 r2 + r1 r3 + r2 r3 LJ Lp k = r1 r2 r3 LJ

4.1. UN EXEMPLE

137

alors les racines seront r1 , r2 et r3 . On peut choisir pour les ples dobservation [thorme 18, page 146] les valeurs suivantes R r1 = (1 + 1), L R r2 = (1 1), L r3 = k2 . LJ

Ce choix correspond aux chelles de temps caractristiques du systme en boucle ouverte. Les valeurs p , et ainsi calcules convergent vers p, et , quelquesoit la loi horaire t u(t). Noter aussi que mme si la mesure de courant est bruite (bruit haute frquence et centr autour de 0), lobservateur nous donne une valeur ltre, , sans dphasage et qui nlimine que le bruit.

4.1.3

Prise en compte des chelles de temps

Supposons, et cest souvent le cas, que la dynamique lectrique est nettement plus rapide que la dynamique mcanique. Cela revient dire que la self L est trs petite, positive mais mal connue. Ainsi tout ce que lon sait cest que L o est un petit paramtre positif. Il est alors facile de voir que les perturbations singulires [section 1.3.2, page 38] sappliquent ici : le systme reste stable en boucle ouverte avec une dynamique du courant convergeant immdiatement vers son rgime quasi-statique dquation. = (u k )/R et la dynamique lente de la vitesse tant alors J d = (k 2 /R) + (k/R)u p. dt

Il sut de remarquer que puisque = (u R)/k , la vitesse est indirectement connue en combinant la tension et la mesure de courant. Lobservateur asymptotique aura alors la forme plus simple suivante :
d p dt d J dt

= Lp ( z (t)) = (k 2 /R) + (k/R)u p + L ( z (t))

(4.1)

o la mesure z (t) = (u(t) R(t))/k correspond la vitesse , suite lapproximation quasi-statique pour le courant. Les gains Lp et L doivent tre choisis positifs pour garantir la stabilit et pas trop grand cause de lapproximation quasi-statique sur le courant. Le suivi de la rfrence en vitesse t r (t) sera alors assur par le feedback u solution de d (k 2 /R) + (k/R)u p = J ( r ( r )/ ). dt

138 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION si on avait directement accs et p. Ici > 0 est la constante de temps de suivi. ne doit pas tre trop petit toujours cause de lapproximation quasi-statique sur le courant. Il est alors naturel de remplacer et p par leur estimes pour calculer u : (k 2 /R) + (k/R)u p = J( d r ( r )/ ). dt

En rsum nous avons obtenu le bouclage dynamique de sortie y = avec yr = r (t) une rfrence continment drivable en t (la partie dynamique tant alors forme par lobservateur de et p)
d p dt d J dt

p + J u(t) = k +R k

= Lp ( z (t)) = (k 2 /R) + (k/R)u(t) p + L ( z (t)) z (t) = (u(t) Ry (t))/k


d y (t) dt r

yr (t)

4.1.4

Contraintes sur les courants

Il est important pour des raisons de scurit de garantir un courant born. Ainsi nous avons comme contrainte || max o max > 0 est le courant maximum support par le variateur et le moteur. Les algorithmes prcdents ne garantissent pas le respect de cette contrainte dtat. Nanmoins, il est possible de prendre en compte cette contrainte en ne modiant que le contrleur de la section prcdente sans toucher lobservateur. On considre donc un premier bouclage grand gain en courant : 1 ) u = R k + ( o est une rfrence de courant et tel que R 1. Un tel bouclage rend la dynamique du courant stable et bien plus rapide que celle de la vitesse. Remarquer que mme si L est petit, ce bouclage ne fait que renforcer la rapidit du courant sans le dstabiliser. En eet on a L d = ke (R + 1/ )( ) dt

et donc est une trs bonne approximation. Ainsi la dynamique de la vitesse se rduit d J = k i p. dt

4.2. OBSERVABILIT NON LINAIRE

139

Une justication mathmatique de cette rduction relve encore de la thorie des perturbations singulires. La rfrence de courant peut alors tre calcule ainsi : = J r J ( r )/ + p k

o > 0 est un temps nettement suprieur lchelle de temps de la dynamique du courant, i.e., L/(R + 1/ ) avec et p solution de (4.1). Si la rfrence de courant ainsi calcule ne vrie pas la contrainte alors il sut de la saturer en valeur absolue max en prservant son signe. Il est possible de voir quune telle saturation ne peut pas dstabiliser la vitesse. Elle assure de fait le suivi au mieux de la rfrence r .

4.2

Observabilit non linaire

avec x Rn , u Rm et y Rp . Les fonctionsf et h sont rgulires.

Nous considrons les systmes non linaires de la forme : d x = f (x, u) dt y = h(x)

(4.2)

4.2.1

Dnition

Pour dnir lobservabilit, il convient dabord de dnir la notion de distinguabilit. Dnition 7 (distinguabilit). Deux tats initiaux x et x sont dits indistinguables (nots xI x) si pour tout t 0, les sorties y (t) et y (t) sont identiques pour toute entre u(t) admissible1 . Ils sont dits distinguables sinon. Lindistinguabilit est une relation dquivalence. Notons I (x) la classe dquivalence de x. Lobservabilit est alors dnie de la manire suivante : Dnition 8 (observabilit globale). Le systme (4.2) est dit observable en x si I (x) = {x} et il est observable si I (x) = {x} pour tout x.
y (t) (resp. y (t)) correspond la sortie de (4.2) avec lentre u(t) et la condition initiale x (resp. x).
1

140 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION En fait, le systme est observable si pour tous les tats initiaux x et x, il existe une entre admissible u qui distingue x et x, cest dire telle que y (t) = y (t) pour au moins un temps t 0. Il peut exister des entres qui ne distinguent pas certains points. Cependant, le systme peut tre malgr tout observable. Par exemple d dt x1 = ux2 d x2 = 0 dt y = x1 est observable (pour u = 1 par exemple). Cependant lentre u = 0 ne distingue pas les points x et x tels que x1 = x 1 et x2 = x 2 . Notons que lobservabilit ne signie pas que toute entre distingue tous les tats. Lobservabilit est un concept global. Il peut tre ncessaire daller trs loin dans le temps et dans lespace dtat pour distinguer deux tats initiaux. Pour cela nous introduisons le concept plus fort :

Dnition 9 (observabilit locale en temps et en espace). Ltat x de (4.2) est localement observable, si pour tout > 0 et pour tout voisinage U de x, il existe > 0 plus petit que et un voisinage V de x contenu dans U , tel que pour tout x V , il existe une entre [0, ] t u(t) qui distingue x et x, i.e. telle que y ( ) = y ( ). Le systme (4.2) est localement observable sil lest pour tout x. Intuitivement, le systme (4.2) est localement observable si on peut instantanment distinguer chaque tat de ses voisins en choisissant judicieusement lentre u.

4.2.2

Critre

La seule faon eective de tester lobservabilit dun systme est de considrer lapplication qui x associe y et ses drives en temps. Nous supposerons dans cette section que y et u sont des fonctions rgulires du temps. d u, . . .) Nous supposerons galement que les rangs en x des fonctions de (x, u, dt qui apparaissent ci-dessous sont constants. Considrons donc (4.2). On note h0 (x) := h(x). En drivant y par rapport au temps on a d d y = Dx h(x) x = Dx h(x) f (x, u) := h1 (x, u). dt dt Des drivations successives conduisent donc une suite de fonctions hk (x, u, . . . , u(k1) )

4.2. OBSERVABILIT NON LINAIRE dnie par la rcurrence hk+1 = d (hk ), dt h0 (x) = h(x).

141

vaut n = dim(x) alors le systme est localement observable. Il sut dutiliser le thorme dinversion locale pour calculer x en fonction de (y, . . . , y (k) ) et (u, . . . , u(k1) ). Si partir dun certain k , hk+1 ne fait plus apparatre de nouvelle relation en x, i.e., si le rang en x de (h0 , . . . , hk ) est identique celui de (h0 , . . . , hk , hk+1 ) , alors il en est de mme pour k + 2, k + 3, . . . Ainsi, il nest pas ncessaire de driver plus de n 1 fois y pour savoir si un systme est localement observable ou non. Ce raisonnement est correct autour dun tat gnrique, nous ne traitons pas les singularits qui peuvent apparatre en des tats et entres particulires. Nous renvoyons [19] pour les cas plus gnraux avec singularits. Ce calcul lmentaire montre aussi que y et u sont relis par des quations direntielles. Elles correspondent aux relations de compatibilit associes au systme sur-dtermin (4.2) o linconnue est x et les donnes sont u et y . On obtient toutes les relations possibles en liminant x du systme h0 (x) = y d h1 (x, u) = y dt . . . hn (x, u, . . . , u(n1) ) = y (n) . On peut montrer que pour un systme localement observable, u et y sont relis par p = dim(y ) quations direntielles indpendantes. Ces quations font intervenir y driv au plus n fois et u driv au plus n 1 fois. La mise en forme des ides prcdentes est assez fastidieuse mais nanmoins instructive. Nous nous contenterons de retenir quen gnral lobservabilit signie que ltat peut tre exprim en fonction des sorties, des entres et dun nombre ni de leur drives en temps. Dans ce cas, y et u sont relis par p quations direntielles dordre au plus n en y et n 1 en u.

Si pour un certain k , le rang en x du systme h0 (x) = y d h1 (x, u) = y dt . . . hk (x, u, . . . , u(k1) ) = y (k)

142 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION Pour conclure, reprenons lexemple du racteur chimique (3.5) (page 97) an dillustrer lanalyse formelle prcdente. Nous ne considrons que x1 et T car linvariant chimique x1 + x2 est suppos gal xin 1 . Nous supposons que la temprature T est mesure (thermo-couple) mais pas la concentration x1 . Nous avons donc rsoudre le systme sur-dtermin (les quantits autres que (x1 , u, y, T ) sont des constantes connues)
d x dt 1 d T dt

= D(xin 1 x1 ) k0 exp(E/RT )x1 = D(T in T ) + H exp(E/RT )x1 + u y (t) = T.

d On a facilement x1 en fonction de (y, dt y ) et u : d y dt

x1 =

D(T in y ) u . H exp(E/Ry )

(4.3)

Le systme est donc observable. y et u sont relis par une quation direntielle du second ordre en y et du premier ordre en u. On lobtient en utilisant d lquation donnant dt x1 :
d dt
d dt y

D(T in y ) u H exp(E/Ry )

= Dxin 1 (D + k0 exp(E/Ry ))

d dt y

D(T in y ) u . H exp(E/Ry ) (4.4)

Il sagit dune condition de compatibilit entre y et u. Si elle nest pas satisfaite alors le systme sur-dtermin de dpart nadmet pas de solution. On conoit trs bien que ces relations de compatibilit sont la base du diagnostic et de la dtection de panne.

4.2.3

Observateur, estimation, moindre carr

Savoir que le systme est observable est bien. Calculer x partir de y et u est encore mieux. Cependant, la dmarche formelle prcdente ne rpondre en pratique qu la premire question. En eet, avoir x en fonction de drives des mesures savre dune utilit fort limite ds que lordre de drivation dpasse 2 et/ou ds que les signaux sont bruits. Il convient en fait de calculer x en fonction dintgrales de y et u. Dans ce cas, le bruit sur les signaux est beaucoup moins gnant. La synthse dobservateur, cest dire estimer x sans utiliser les drives de y , pose des problmes supplmentaires (et nettement plus diciles en fait) que la caractrisation des systmes observables. Revenons (4.2). Nous avons en fait un nombre inni dquations en trop. En eet, puisque lentre u est connue, ltat x est entirement donn d u 0 par sa condition initiale x0 grce au ot u t de dt x = f (x, u(t)) : t (x ) est

4.2. OBSERVABILIT NON LINAIRE

143

d la solution de dt x = f (x, u(t)) qui dmarre en x0 t = 0. Ainsi x0 vrie chaque instant t, p quations, p tant donc le nombre de mesures : 0 y (t) = h(u t (x )).

Il est trs tentant de rsoudre ce systme par les moindres carrs, mme si, pour un systme non-linaire cela na pas beaucoup de sens (dpend du choix des coordonnes et de la mthode utilise pour mesurer les carts). Fixons nous un intervalle dobservation [0, T ]. x0 peut tre calcul comme largument du minimum de
T

J ( ) =
0

0 2 (y (t) h(u t (x )) dt.

x0 est ainsi obtenu comme on obtient un paramtre partir de donnes exprimentales et dun modle o ce paramtre intervient : en minimisant lerreur quadratique entre lobservation y (t) et la valeur prdite par le modle 0 u t (x ). Ainsi les problmes dobservateur sont fondamentalement proches des problmes destimation pour lesquels loptimisation joue un rle important. Cependant les dicults ne sont pas pour autant aplanies : le calcul du ot, d x = f (x, u) ne peut se faire que i.e., la rsolution de lquation direntielle dt numriquement en gnral ; la fonction J na aucune raison davoir les bonnes proprits de convexit qui assure la convergence des principaux algorithmes doptimisation (c.f.[44]). La synthse dobservateur reste donc une question dicile en gnral bien que trs importante en pratique. Noter enn que d lidentication de paramtres sur un modle dt x = f (x, u, ) est un sousproblme : lidentiabilit correspond alors lobservabilit du systme d x = f (x, u, ), dt d = 0, dt y=x

dtat (x, ) et de sortie y = x. 0 Dans le cas linaire, f = Ax + Bu et h = Cx, u t (x ) est une fonction 0 ane en x :
t 0 u t (x )

= exp(tA)x +
0

exp((t s)A)Bu(s) ds.

Avec un intervalle dobservation [0, T ], x0 peut tre calcul comme largument du minimum de
T

J ( ) =
0 t

(z (t) C exp(tA)x0 )2 dt

(4.5)

o z (t) = y (t) C 0 exp((t s)A)Bu(s) ds. Nous voyons clairement que J est quadratique. On retrouve alors le ltre de Kalman dans le cadre dterministe

144 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION trait dans la section 4.5. Nous allons maintenant aborder lobservabilit des systmes linaires avec un point de vue moins classique qui met laccent sur les observateurs asymptotiques. Ces derniers fournissent, avec des calculs trs 0 conomiques, directement x = u t (x ) en fonction de y , u et leurs intgrales.

4.3

Observabilit linaire
d x dt

On considre ici le systme, dentre u, dtat x et de sortie y suivant = Ax + Bu y = Cx (4.6)

o A est une matrice n n, B une matrice n m et C une matrice p n.

4.3.1

Le critre de Kalman

d x = Ax + Bu, y = Cx est Thorme 17 (critre de Kalman). Le systme dt observable au sens de la dnition 9 si, et seulement si, le rang de la matrice dobservabilit C CA O= . . . n1 CA

est gal n = dim(x).

Pour abrger, on dit souvent que la paire (A, C ) est observable lorsque le rang de la matrice dobservabilit O est maximum. Preuve Drivons y et dutilisons lquation dtat. Une premire drivation donne d d y = C x = CAx + CBu. dt dt Donc x est ncessairement solution du systme (les fonctions y et u sont connues) Cx = y d CAx = dt y CBu.
d y CBu tait une A ce niveau, tout se passe comme si la quantit y 1 = dt 1 CABu. nouvelle sortie. En la drivant de nouveau, nous avons CA2 x = y

4.3. OBSERVABILIT LINAIRE Maintenant, x est ncessairement solution du systme tendu Cx = y 0 = y d y CBu CAx = y 1 = dt 2 1 CABu. CA x = y 2 = y

145

Il est alors facile de voir que x sera ncessairement solution des quations CAk x = y k (4.7)

d o les quantits connues y k sont dnies par la rcurrence y k = dt y k1 k 1 CA Bu pour k 1 et y 0 = y . Si le rang de la matrice dobservabilit est maximum et gal n, elle admet un inverse gauche (non ncessairement unique), P matrice n pn vriant C CA P = 1n . . . . n1 CA

Ainsi

La condition de rang est donc susante. Supposons maintenant que la matrice dobservabilit, de taille pn n, soit de rang r < n. Nous allons montrer quil existe, au moins, deux trajectoires direntes avec les mmes commandes, donnant la mme sortie. Cela montrera que la condition est aussi ncessaire. Soit w Rn un lment non nul du noyau de la matrice de commandabilit. Pour k = 0, . . . , n 1, CAk w = 0. Par un raisonnement identique celui fait lors de la preuve de la proposition 2 avec les noyaux gauche de Ak B , on a ncessairement CAk w = 0, pour toute k n. Donc w est dans le noyau de toutes les matrices CAk . Prenons comme premire trajectoire [0, T ] t (x, u) = 0. Alors, y = 0. Prenons maintenant comme seconde trajectoire, celle qui, commande nulle, dmarre en w : [0, T ] t (x, u) = (exp(tA)w, 0). Sa sortie vaut
+

y 0 . x=P . . . y n1

C exp(tA)w =
i=0

ti CAi w = 0 i!

car chaque terme de la srie est nul.

146 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION

4.3.2

Observateurs asymptotiques

Il est classique de noter par x (t) une estimation de la quantit x(t). Nous cherchons ici obtenir une estimation de ltat sans utiliser les drives de y et u. La premire ide qui vient lesprit est de copier la dynamique du systme. On intgre directement d x = Ax + Bu dt partir dune condition initiale x O . Si la matrice A est stable, alors x peut x tend vers 0 puisque tre pris comme estimation de x car lerreur ex = x d e = Ae . x dt x Si A est instable cette mthode ne marchera pas. En eet, une petite erreur initiale ex (0) sera amplie exponentiellement. Intuitivement, si lerreur x x devient grande alors, le systme tant observable, lerreur sur les sorties y y deviendra grande galement2 . Comme y est connue, il est alors d tentant de modier dt x = Ax + Bu par lajout dun terme du type L( y y) quon connat et qui correspond lerreur dobservation. Ainsi, le problme suivant se pose, peut-on choisir la matrice L de faon ce que la solution x du systme d x = Ax + Bu(t) + L( y y (t)), y = Cx dt converge vers x ? Puis que y = Cx, la question se pose ainsi : peut-on ajuster la matrice L de faon obtenir une quation direntielle derreur stable : d ex = (A + LC )ex ? dt Par un choix judicieux de L, peut-on imposer A + LC davoir toutes ses valeurs propres partie relle strictement ngative ? Or, les valeurs propres restent inchanges par la transposition : A + LC admet le mme spectre que A + C L . De plus la paire (A, C ) est observable si, et seulement si, la paire (A , C ) est commandable : on obtient le critre de Kalman de commandabilit en transposant celui de lobservabilit. Ainsi le thorme 14 se transpose de la manire suivante : Thorme 18 (observateur asymptotique). Si (A, C ) est observable, il existe L, matrice n p, telle que le spectre de A + LC soit le mme que celui de nimporte quelle matrice relle n n.

Exercice 3 (forme canonique). Donner pour un systme linaire observable la forme canonique duale de celle de Brunovsky. Quelle est la relation dquivalence associe cette forme canonique ?
2

On a not y = Cx .

4.4. OBSERVATEUR-CONTRLEUR LINAIRE

147

4.3.3

Observateur rduit de Luenberger

Supposons que C soit de rang maximum p = dim(y ) et que la paire (A, C ) soit observable. On peut toujours supposer, quitte faire un changement de variable sur x, que y correspond aux p premires composantes de ltat x : d x = (y, xr ). Lquation dtat dt x = Ax + Bu scrit alors sous forme blocs :
d y dt d x dt r

= Ayy y + Ayr xr + By u = Ary y + Arr xr + Br u.

Il est facile de montrer, en revenant, par exemple la dnition de lobservabilit, que (A, C ) est observable si, et seulement si, (Arr , Ayr ) lest : en eet d y Ayy y By u, qui connatre y et u implique la connaissance de Ayr xr = dt d peut tre vu comme une sortie du systme dt xr = Arr xr + (Br u + Ary y ). En ajustant correctement la matrice des gains dobservation Lr , le spectre de Arr + Lr Ayr concide avec celui de nimporte quelle matrice relle carre dordre n p = dim(xr ). Considrons alors la variable = xr + Lr y au lieu de xr . Un simple calcul montre que d = (Arr + Lr Ayr ) + (Ary + Lr Ayy (Arr + Lr Ayr )Lr )y + (Br + Lr By )u. dt Ainsi en choisissant Lr , de faon avoir Arr + Lr Ayr stable, nous obtenons un observateur dordre rduit n p pour (donc pour xr = Lr y ) en recopiant cette quation direntielle d +(Ary + Lr Ayy (Arr + Lr Ayr )Lr )y (t)+(Br + Lr By )u(t). = (Arr + Lr Ayr ) dt vrie lquation autonome En eet la dynamique de lerreur sur , e = stable d e = (Arr + Lr Ayr )e . dt Cet observateur rduit est intressant lorsque n p est petit, typiquement n p = 1, 2 : la stabilit dun systme de dimension 1 ou 2 est trs simple tudier.

4.4

Observateur-contrleur linaire

En regroupant les rsultats sur la commandabilit et lobservabilit linaires, nous savons comment rsoudre de faon robuste par rapport de petites erreurs de modle et de mesures, le problme suivant : amener, laide de la commande u, ltat x du systme de p q pendant le temps

148 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION


d T en ne mesurant que y sachant que : dt x = Ax + Bu, y = Cx, (A, B ) commandable et (A, C ) observable. En eet, comme (A, B ) est commandable, nous savons avec la forme de Brunovsky construire explicitement une trajectoire de rfrence [0, T ] t (xr (t), ur (t)) pour aller de p q . Le respect de certaines contraintes peut-tre important ce niveau et tre un guide dans le choix de cette trajectoire de rfrence (dnition du critre pour la commande optimale). Toujours cause de la commandabilit, nous savons construire un bouclage statique sur x, Kx, de faon ce que la matrice A + BK soit stable (placement de ple). La matrice K est souvent appele matrice des gains de la commande. Grce lobservabilit, nous savons construire un observateur asymptotique sur x en choisissant les gains dobservation L de faon avoir A + LC stable. Alors le bouclage dynamique de sortie

u(t) = ur (t) + K ( x xr (t)) contrleur d x = A x + Bu ( t ) + L(C x y (t)) observateur dt assure le suivi asymptotique de la trajectoire de rfrence [0, T ] t (xr (t), ur (t)). Avec ce bouclage, appel commande modale ou encore observa teur-contrleur, les petites erreurs de conditions initiales sont amorties lorsque t crot et les petites erreurs de modle et de mesures ne sont pas amplies au cours du temps. d x = Ax + Bu et y = Cx, on a pour la dynamique du En eet, comme dt systme boucl :
d x dt d x dt

= Ax + B (ur (t) + K ( x xr (t))) = Ax + B (ur (t) + K ( x xr (t))) + L(C x Cx)

o ltat est maintenant (x, x ). Comme (xr , ur ) est une trajectoire du systme, d x = Ax + Bu , on a en prenant comme variables dtat (x = x r r dt r xr (t), ex = x x) au lieu de (x, x ), la forme triangulaire suivante :
d e = (A + LC ) ex dt x d (x) = (A + BK ) dt

x + BK ex .

Ce qui montre que ex et x tendent vers 0 exponentiellement en temps.

4.5

Filtre de Kalman

Nous proposons ici une prsentation simplie de la technique du ltrage de Kalman. On se restreint au cas des ltres gains constants. Le ltre de

4.5. FILTRE DE KALMAN

149

Kalman gains constants, tel que nous le prsentons ici, est un algorithme utilis pour reconstruire les variables dtat dun systme continu soumis des perturbations stochastiques en utilisant des mesures incompltes entches de bruit. Cette technique date des annes 60 [29], et a t utilise de manire intense dans le domaine de la navigation inertielle [16]. Il en existe de nombreuses variantes : version instationnaire, version discrte, version tendue pour tenir compte de la variation du point de fonctionnement, etc. On pourra se reporter [42] pour une prsentation complte et [5] pour des complments au sujet de la robustesse dans le cadre stationnaire.

4.5.1

Formalisme
d x(t) = Ax(t) + Bu(t) + L (t) dt

On considre un systme sous forme dtat linaire stationnaire (4.8)

o ltat est x(t) Rn , lentre est un signal (dterministe) connu u(t) Rm , et (t) Rq reprsente la valeur dun signal stochastique qui agit comme une perturbation sur le systme. On suppose que ce dernier signal possde les proprits statistiques suivantes (qui en font un bruit blanc gaussien centr ) : pour tout t, (t) est une variable gaussienne de moyenne E ( (t)) = 0, cov ( (t), ( )) = M (t ) o est la fonction Dirac (voir [32]), et M est une matrice constante de Mq (R) symtrique dnie positive. Sous ces hypothses, x(t) solution de (4.8) est un processus stochastique gaussien color. En ce qui concerne la mesure, nous disposons de y (t) = Cx(t) + (t) (4.9)

o y (t) Rp , et (t) Rp reprsente lui aussi un bruit blanc gaussien centr, indpendant de (t) tel que E ((t)) = 0, pour tout t cov ((t), ( )) = M (t ) o M est une matrice constante de Mp (R) symtrique dnie positive. On se place dans le cas o on connat les entres et les mesures jusquau temps t. On note alors U (t) = {u( ), ] , t]}

150 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION Y (t) = {y ( ), ] , t]}

tant donn U (t) et Y (t), on cherche une estimation x (t) de ltat x(t) qui soit optimale en un certain sens. Le critre minimiser est la covariance totale de lerreur x (t) = x(t) x (t) J =E x T x = trace E ( x(t) xT (t) sous la contrainte destimation non biaise E ( x(t)) = 0

4.5.2

Hypothses et dnition du ltre

Hypothses Pour pouvoir construire le ltre de Kalman, on suppose que les deux hypothses (fortes) sont vries (H 1) : la paire (A, L) est commandable (H 2) : la paire (A, C ) est observable (H 1) signie que le bruit (t) excite tout ltat du systme. (H 2) implique que la mesure non bruite Cx contient des informations sur tout ltat. On peut relcher ces deux hypothses en nimposant seulement que (H 1 ) : la paire (A, L) est stabilisable (H 2 ) : la paire (A, C ) est dtectable en imposant que les modes non excits par le bruit (t) soient asymptotiquement stables et que les modes non observs soient asymptotiquement stables. Minimisation de la covariance Le ltre de Kalman que nous prsentons est un ltre stationnaire de dimension gale celle de ltat du systme observer. Il admet comme entre le signal u(t) et la mesure bruite y (t). Il scrit, comme pour lobservateur asymptotique de Luenberger, au moyen dune matrice de gain K sous la forme suivante d x (t) = Ax (t) + Bu(t) + K (y (t) C x (t)) dt (4.10)

Le terme y (t) C x (t) est nomm innovation. La stabilit de ce ltre dpend de la stabilit de la matrice A KC . Daprs (H 2), (ou (H 2 )) il est possible

4.5. FILTRE DE KALMAN

151

de stabiliser cette matrice par un choix appropri de K . La particularit du ltre de Kalman rside dans le calcul de K partir des matrices de covariance sur les bruits et . Par dnition de lquation (4.10), lquation satisfaite par lerreur est d x (t) = (A KC ) x(t) + L (t) K(t) dt En utilisant la matrice de transition (t, t0 ) = exp((A KC )(t t0 )) entre un temps initial t0 et t, on peut crire la solution de ce systme comme-suit
t

x (t) = (t, t0 )x(t0 ) +


t0

(t, ) (L ( ) K( )) ( )d

En passant aux esprances, il vient E ( x(t)) = (t, t0 )E (x(t0 )) car les signaux (t) et (t) sont desprance nulle par hypothse. Si A KC est asymptotiquement stable, on en dduit que lorsque le ltre de Kalman est initialis au temps t0 = , on a E ( x(t)) = 0 et on conclut que lestimation est, quel que soit le choix de K (stabilisant), non biaise 3 . Un calcul semblable permet de calculer la covariance de lerreur, note E x (t) xT (t) comme lunique solution symtrique positive de lquation matricielle de Lyapounov suivante (A KC ) + (A KC )T + LM LT + KM K T = 0 (4.11)

Ainsi, pour toute valeur de la matrice de gain K , on peut calculer la covariance de lerreur par lquation prcdente. Le critre que nous cherchons minimiser est justement J = trace(). Pour le ltre de Kalman, K est choisi comme largument du minimum de cette fonction. Gain du ltre Le gain du ltre de Kalman est
1 K = C T M
3

(4.12)

Si on initialise le ltre de Kalman en t = 0 avec un tat x(0) = x0 quelconque, la stabilit permettra de conclure labsence de biais de manire asymptotique, lorsque t +.

152 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION o est lunique solution symtrique positive de lquation de Riccati algbrique 0 = A + AT + LM LT C T (M )1 C

On peut montrer, par une dmonstration trs semblable au cas de la commande quadratique, que le gain K est stabilisant, i.e. est tel que A KC a toutes ses valeurs propres partie relle strictement ngative. Ceci justie a posteriori les hypothses que nous avons formules. Exemple Considrons un systme autonome monodimensionnel trs simple d x = x + u + dt y =x+

o E ( (t)) = 0, pour tout t, cov ( (t), ( )) = (t ), E ((t)) = 0, pour tout t, cov ((t), ( )) = k 2 (t ). Le ltre de Kalman est de la forme x (t) = x + u + K (y (t) x ) o K est calcul par K = (k 2 )1 o est lunique solution positive de 0 = 2 + 1 2 k 2
1

Il vient =

k 2 + k 4 k 2 et lquation du ltre de Kalman est alors d 1 x (t) = 1 + 2 x +u+ dt k 1+ 1 1 y k2

titre dillustration, on a reprsent sur la gure 4.1 des rsultats de simulation permettant de comprendre leet du ltre de Kalman. On peut comparer sur la mme gure ses rsultats avec un autre rglage non optimal. Utilisation dans un cadre dterministe Lorsque le systme nest pas aect par des bruits ou que ceux-ci sont mal connus, on peut continuer utiliser le ltre de Kalman pour rgler lobservateur asymptotique stationnaire quil dnit. Les matrices M et M agissent comme des pondrations (on remarquera lanalogie avec la commande quadratique une fois de plus) avec les eets suivants :

4.5. FILTRE DE KALMAN

153

Bruit dexcitation 200 0 200 10 5 0 10 5 0 4 2 0 10 5 0 4 2 0 0 2 4 6 8 10 12 0 2 4 6 8 10 12 Estimation de la variance de lerreur (autre rglage de filtre) 0 2 4 6 8 10 Etat rel et estimation de ltat (autre rglage de filtre) 12 0 2 4 6 8 10 Estimation de la variance de lerreur (filtre de Kalman) 12 0 2 4 6 8 10 Etat rel et estimation de ltat (filtre de Kalman) 12 0 2 4 6 Mesure bruite 8 10 12

Fig. 4.1 Utilisation dun ltre de Kalman.

154 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION 1. lorsquon augmente M , on a tendance faire moins conance aux mesures (ou certaines dentre elles si on agit seulement sur certains coecients dominants de la matrice) et donc naturellement linuence de ces mesures sur la dynamique du ltre sera rduite travers le calcul de la matrice de gain (4.12) ; 2. lorsquon augmente M , on a tendance faire moins conance au modle de la dynamique non bruite, naturellement on va acclrer la dynamique de lobservateur pour en tenir compte en privilgiant dans (4.10) linnovation aux dpens du modle. Ceci est apparent dans la contribution de M au gain K travers la covariance dans lquation (4.11).

4.6
4.6.1

Complments
Estimation de paramtres et commande adaptative
d x = f (x, t) + p g (x, t), dt

Soit le systme dtat x et de paramtre p : x Rn , pR

On suppose que les trajectoires t x(t) sont bornes et donc dnies pour tout temps t positif. On mesure ici tout ltat x. On souhaite estimer p. On considre lestimateur suivant o K et sont des paramtres constants > 0 (sorte de moindre carr rcursif) d x = f (x(t), t)+ p g (x(t), t)K ( xx(t)), dt d p = g (x(t), t), ( x x(t)) dt

o , est le produit scalaire dans Rn . Cet estimateur donne en temps rel dune part une valeur ltre de x, x et dautre part reconstruit asymptotiquement le paramtre p lorsquil existe > 0 tel que g (x, t) pour tout x Rn et tout temps t. En eet, il sut de considrer la fonction de Lyapounov suivante : 1 1 x x)2 + ( p p)2 . V = ( 2 2 On voit que d V = K ( x x)2 0. dt

4.6. COMPLMENTS

155

d d Ainsi x tend vers x quand t tend vers linni. Et donc, intuitivement dt x dt x converge vers 0 soit donc (pp )g (x, t) converge zro. Comme le vecteur g (x, t) est toujours de norme plus grande que > 0 on en dduit que p converge vers p. Il est possible de gnraliser cet estimateur pour un nombre arbitraire m de paramtres. On part de

d x = f (x, t) + dt

pi gi (x, t).
i=1

On considre avec i > 0 paramtre (i = 1, ..., m) lestimateur d x = f (x(t), t) + dt


m

i=1

p i gi (x(t), t) K ( x x(t))

d p 1 = 1 g1 (x(t), t), ( x x(t)) dt . . . d p m = m gm (x(t), t), ( x x(t)) . dt Il est alors facile de voir que la fonction 1 x x)2 + V = ( 2 est dcroissante :
m

i=1

1 ( pi pi )2 . 2i

d V = K ( x x)2 0. dt Donc on a toujours x qui converge vers x. En revanche, la convergence des p i vers les pi nest pas garantie : tout dpend des gi (x, t) : sils forment pour chaque x et t un systme libre de vecteurs de Rn , systme "bien conditionn", alors la convergence des paramtres est encore assure. Dans les autres cas, cela dpend de la trajectoire suivie par x. En revanche, il est trs intressant de voir que x converge toujours vers x . Lestimateur prcdent est une sorte de ltre non linaire et adaptatif de x. Cet estimateur est aussi la base de la commande adaptative qui estime p en mme temps que lon contrle le systme via u. Prenons un seul paramtre p et un seul contrle u (la gnralisation est simple a partir de l) : d x = f0 (x) + uf1 (x) + pg (x). dt

156 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION Supposons que nous ayons un feedback u = k (x, p) qui stabilise le systme en x = 0 mais o le paramtre p inconnu intervient. Alors, il est naturel de considre le feedback construit partir des estimes u = k (x, p ) ou u = k ( x, p ) avec d x = f0 (x(t)) + u(t)f1 (x(t)) + p g (x(t), t) K ( x x(t)) dt d p = g (x(t), t), ( x x(t)) . dt Sous des hypothses raisonnables sur la dynamique en boucle ouverte pour x (pas dexplosion en temps ni essentiellement) on montre que x tend vers x et ensuite que le feedback assure la convergence de x vers 0. Sans conditions supplmentaires, tout ce que lon peut dire cest que p reste born. Ainsi, la connaissance de p nest pas ncessairement indispensable pour faire converger x vers 0 avec le contrle u. Cest le principal paradoxe du contrle adaptatif. Un lecteur intress pourra consulter [31]. On notera que lune des hypothses trs importante est la dpendance ane de la dynamique par rapport au paramtre p. Dans le cas de dpendance non linaire trs peu de rsultats existent.

4.6.2

Linarisation par injection de sortie

Il arrive parfois que, dans les bonnes coordonnes dtat, coordonnes notes x ici, les quations du systme scrivent ainsi : d x = Ax + f (Cx, t), dt y = Cx

avec la paire (A, C ) observable et f (y, t) est une fonction a priori non linaire. Il est clair quil faut avoir un peu de air pour choisir les bonnes variables x pour que le systme scrive ainsi. Ce nest en gnral pas possible. Parfois cest possible et mme vident comme pour le pendule command : g d2 = sin + u(t), 2 dt l En eet dans ce cas on a x=
d dt

y = .

A=

0 1 0 0 g l

C=

1 0

f (Cx, t) =

0 sin + u(t)

4.6. COMPLMENTS

157

Il est alors facile de construire un observateur pour x. Il sut de choisir L telle que A + LC soit une matrice relle stable. Alors lobservateur d x = Ax + L(C x y (t)) + f (y (t), t) dt est exponentiellement convergent car lorsque lon regarde la dynamique de lerreur ex = x x, les termes non linaires disparaissent et on a d ex = (A + LC )ex . dt

4.6.3

Contraction

La notion de contraction [36, 25] pour un systme, avec une dynamique x = f (x, t), peut tre interprte comme la dcroissance exponentielle, avec le temps, de la longueur de tout segment de conditions initiales transport par le ot.
d Dnition 10 (Contraction Stricte). Soit un systme dynamique dt x = 1 f (x, t) rgulier (C par exemple) dni sur une varit M rgulire. Soit g une mtrique sur M . Soit U M un sous ensemble de M . La dynamique f est dite strictement contractante sur U au sens de la mtrique g , si la partie symtrique de sa matrice Jacobienne est une matrice dnie ngative, cest dire, sil existe > 0 tel que, dans des coordonnes locales x sur U , nous avons pour tout t,

g f f T + f (x, t) g (x). g (x) + g (x) x x x Nous avons le rsultat suivant qui justie cette dnition et cette terminologie.
d x = f (x, t) rgulier dni sur Thorme 19. Soit un systme dynamique dt une varit M rgulire. Soit g (x) une mtrique sur M . Soit X (x, t) le ot associ f

d X (x, t) = f (X (x, t), t) dt X (x, 0) = x

t [0, T [

avec T +.

Considrons deux points x0 and x1 dans M et une godsique (s) qui joint x0 = (0) et x1 = (1). Si f est une stricte contraction sur un sous ensemble U M , avec la constante prsente dans la dnition 10,

158 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION et si X ( (s), t) appartient U pour tout s [0, 1] et pour tout t [0, T [. alors dg (X (x0 , t), X (x1 , t)) e 2 t dg (x0 , x1 ) t [0, T [ o dg est la distance godsique associe la mtrique g . La preuve sinspire de calculs faits par Laurent Praly. Soit l(t) la longueur de la courbe (X ( (s), t), s [0, 1]) au sens de la mtrique g
1

l(t) =
0

dX ( (s), t) dX ( (s), t) T g (X ( (s), t)) ds. ds ds

Nous avons alors d l(t) = dt Comme d dX ( (s), t) d d = f (X ( (s), t), t) = f (X ( (s), t), t) X ( (s), t) dt ds ds X ds nous obtenons d dt avec et X = X ( (s), t). Puisque f est une contraction sur U , il existe > 0 tel que P (s, t) g (X ( (s), t)). On obtient alors lingalit suivante pour la drive d l(t) l(t) dt 2 qui conduit l(t) l(0)e 2 t

1 0

d dt

dX ( (s),t) T (s),t) g (X ( (s), t)) dX ( ds ds dX ( (s),t) T (s),t) g (X ( (s), t)) dX ( ds ds

ds.

dX ( (s), t) T dX ( (s), t) g (X ( (s), t)) ds ds

dX ( (s), t) T dX ( (s), t) = P (s, t) ds ds

f (X ) T f (X ) g (X ) P (s, t) = + f (X, t) g (X ) + g (X ) X X X

d l(t) dt

t [0, T [.

4.6. COMPLMENTS

159

Puisque dg (X (x0 , t), X (x1 , t)) l(t) et l(0) = dg (x0 , x1 ) (en eet est la godsique qui joint les deux points x0 et x1 ), le thorme est dmontr. Lorsque la varit riemanienne M est lespace Euclidien Rn , la dynamique d x = f (x, t) est une contraction lorsque la partie symtrique de la matrice dt jacobienne est ngative : f + x f x
T

0.

Enn, lintrt pour la construction dobservateurs non-linaires asymptotiques vient du fait quavec une dynamique contractante, il sut de simuler le systme pour avoir une estimation de x : d x = f ( x, t) dt la dpendance en temps tant alors due aux entres et/ou aux termes derreur entre la sortie estime et la mesure. Lexemple typique est le suivant. On considre un systme mcanique un degr de libert x1 , de vitesse x2 obissant lquation de Newton suivante : d x1 = x2 , dt d x2 = F (x1 , x2 , t) dt

F 0. On considrer avec comme seule mesure y = x1 et on suppose que x 2 alors lobservateur d x 1 = x 2 ( x1 y (t)) dt d x 2 = F (y (t), x 2 ) ( x1 y (t)) dt avec , > 0 deux paramtres de rglage. On crit symboliquement cet d x = f ( x, t) o la dpendance en t vient de la mesure y (t) = observateur dt d x1 (t). Cet observateur scrit formellement dt x = f ( x, t). Avec comme produit scalaire celui qui est associ la matrice constante symtrique dnie positive

g= on a f x
T

1 0 1 0 2 0 0
F 2 x 2

g+g

f = x

0.

Nous navons pas une contraction stricte comme dans la dnition 10 mais F < 0 uniformment au sens large. Il est cependant facile de voir que si x 2 pour tout x avec > 0, on a une contraction stricte et donc la convergence exponentielle de x vers x.

160 CHAPITRE 4. OBSERVABILIT, ESTIMATION ET ADAPTATION

Annexe A Equations direntielles linaires


A.1 Systme linaire de dimension n

Cette section ne comporte que le strict minimum sur les systmes linaires de dimension arbitraire. Pour un expos complet avec dmonstration, nous renvoyons [26]. Nous considrons le systme linaire dx = Ax dt avec x Rn et A une matrice n n constante. (A.1)

A.1.1

Lexponentielle dune matrice

La matrice dpendant du temps exp(tA) est dnie par la srie absolument convergente t2 2 tk A + . . . + Ak + . . . 2! k! (A.2)

exp(tA) = I + tA +

o I est la matrice identit. Toute solution x(t) de (A.1) passant par x0 t = 0 sexprime sous la forme x(t) = exp(tA) x0 . 161

162

ANNEXE A. EQUATIONS DIFFRENTIELLES LINAIRES

Voici les principales proprits de lexponentielle : exp(tA) exp( A) = exp((t + )A) d (exp(tA)) = exp(tA) A = A exp(tA) dt exp(P AP 1 ) = P exp(A)P 1 exp(A) =
m+

lim

I+

det(exp(A)) = exp(tr(A))

A m

o t et sont des rels, P est une matrice inversible, det dsigne le dterminant ettr dsigne la trace.

A.1.2

Portrait de phases

Nous allons considrer maintenant les cas les plus intressants, principalement les cas gnriques (i.e. stables par petites perturbations des lments de A), que lon peut rencontrer en dimensions n = 2 et n = 3. Dimension n = 2 Les principaux cas sont rsums sur les gures A.1, et A.2. 1 et 2 sont les valeurs propres de A (distinctes ou non, relles ou complexes conjugues), 1 et 2 sont les vecteurs propres rels associs quand ils existent. Dimension n = 3 La gure A.3, montre sur un exemple comment, partir des portraits de phases en dimension 2, on construit, dans les cas gnriques, le portrait de phases en dimension 3 : il sut de dcomposer R3 en somme despaces propres invariants de dimension 1 ou 2.

A.1.3

Forme de Jordan et calcul de lexponentielle

Le calcul de exp(tA) peut tre simpli en faisant intervenir une transformation P inversible qui diagonalise A, lorsque cest possible, ou qui transforme A en une matrice diagonale par blocs, dite matrice de Jordan (c.f. [26]). En dimension 2, on peut ainsi toujours se ramener aux trois formes normales

A.1. SYSTME LINAIRE DE DIMENSION N

163

Fig. A.1 portraits de phases plans et linaires lorsque les valeurs propres de A, 1 et 2 , ont une partie imaginaire non nulle.

Fig. A.2 portraits de phases plans et linaires, x = Ax, lorsque les valeurs propres de A, 1 et 2 , sont relles (1 et 2 vecteurs propres de A, lorsquils existent).

164

ANNEXE A. EQUATIONS DIFFRENTIELLES LINAIRES

Fig. A.3 exemple de portrait de phases dun systme linaire de dimension 3 en fonction des valeurs propres de A. de Jordan suivantes : A=P 1 0 0 2 1 0 P 1 et exp(tA) = P exp(1 ) 0 0 exp(2 ) P 1

A=P

P 1 et exp(tA) = exp(t) P

cos(t) sin(t) sin(t) cos(t) 1 t 0 1 P 1 .

P 1

A=P

P 1 et exp(tA) = exp(t) P

En dimension 3, une matrice A possde toujours une valeur propre relle et un vecteur propre rel. Si lon suppose que nest pas une valeur propre de multiplicit 3, ce qui est trs exceptionnel, on a 0 P 1 a b A=P 0 c d avec P matrice dordre 3 inversible et , a, b, c et d rels. On se ramne ainsi la dimension 2.

A.1.4

Stabilit

Du calcul de lexponentielle via la forme normale de Jordan, il ressort lquivalence les trois proprits suivantes : 1. Toutes les solutions x(t) de (A.1) convergent vers 0 quand t tend vers +.

A.1. SYSTME LINAIRE DE DIMENSION N

165

2. Toutes les solutions x(t) de (A.1) convergent exponentiellement vers 0, i.e., il existe M et > 0 tels que x(t)| M x(0) exp(t) 3. Toutes les valeurs propres de la matrice A sont parties relles strictement ngatives. Noter que lon peut prendre comme , la plus petite des valeurs absolues des parties relles des valeurs propres de A. On rappelle que les valeurs propres de A (son spectre) correspondent aux racines de son polynme caractristique. Ce dernier est obtenu en remplaant d d dans dt x = Ax, loprateur dt par s la variable de Laplace et en cherchant les conditions sur s C pour le systme linaire de n quations n inconnues sx = Ax admette des solutions x non triviales. Ce qui quivaut dire que la matrice sI A nest pas inversible, cest dire que son dterminant P (s), un polynme de degr n, est nul :
n1

=0

s = P (s) = det(sI A) = 0.

Ainsi par un calcul direct on trouve partir des coecients de la matrice A les coecients de ce polynme P (s). On dit que la matrice A est stable (Hurwitz ), lorsque toutes ses valeurs propres sont parties relles strictement ngatives, i.e., les zros du polynme P sont dans le demi-plan (s) < 0. On dit alors que P est un polynme stable. Le critre de Routh permet de caractriser simplement les polynmes stables partir de leur coecients. Pour n = 2, on a simplement 0 = det(A) < 0 et 1 = tr(A) < 0. Pour n = 3, le critre de Routh donne les conditions ncessaires et susante de stabilit suivante : 0 , 1 , 2 < 0 et 0 + 2 3 > 0 Pour le cas gnral, un lecteur intress trouvera la condition ncessaire et susante de stabilit du Routh (voir plus loin) ainsi que sa dmonstration dans [17, 18]. Enn, on sait depuis Galois, quil nexiste pas de formule gnrale utilisant des radicaux donnant les racines dun polynme partir de ses coecients pour un degr n 5.

166

ANNEXE A. EQUATIONS DIFFRENTIELLES LINAIRES

A.1.5

Solution avec un terme source dpendant du temps

La solution gnrale de d x = Ax + b(t), dt scrit x(t) = exp(tA)x(0) + +


0

x Rn ,
t

b(t) Rn

exp ((t )A) b( ) d.

Noter bien que A est indpendant du temps. Si A dpend de t, on nobtient pas une formule correcte en remplaant tA et (t )A par les intt t grales 0 A et A, respectivement. La raison fondamentale est que le produit de deux matrices nest commutatif et donc que lon na pas, en gnt d ral, lidentit pourtant fort sduisante suivante : dt = exp 0 A( ) d A(t) exp 0 A( ) d . Cest cependant vrai si A(t1 ) et A(t2 ) commutent, A(t1 )A(t2 ) = A(t2 )A(t1 ) pour tout couple (t1 , t2 ). Ainsi cette quadrature, fausse en gnrale pour n > 1, nest valide quessentiellement en dimension 1 : la solution gnrale de lquation scalaire ane coecients variables d x = a(t)x + b(t), dt est
t t t t

xR

x(t) = exp
0

a( ) d

x(0) +
0

exp

a( ) d b( ) d.

partir de la dimension 2, on ne dispose plus de formules explicites et gd x = A(t)x + b(t), mme si b(t) = 0. Un nrales pour calculer la solution de dt exemple est lquation dAiry [1] : x = (a + bt)x qui nadmet pas de quadrature simple avec des fonctions usuelles (exponentielle, logarithme, ...) et qui dnit les fonctions dAiry, une classe particulire de fonctions spciales. En fait limmense majorit les fonctions spciales (fonctions de Bessel, de Jacobi,...) sont solutions dquations direntielles du second ordre coefcients polynmiaux en t : elles correspondent donc des matrices carres A(t) de dimension 2 et dont les coecients sont simplement des polynmes en t. En conclusion, il est faux en gnral de dire que, si chaque instant t, A(t) a ses valeurs propres parties relles strictement ngatives, alors les

A.2. EQUATIONS DIFFRENTIELLES SCALAIRES DORDRE N

167

d solutions de dt x = A(t)x convergent vers 0. Cest pourtant trs tentant mais cest rellement faux. Le contre-exemple[30] sut sen convaincre : soit

1 + 1.5 cos2 t 1 1.5 sin t cos t 1 1.5 sin t cos t 1 + 1.5 sin2 t Pour tout t, les valeurs propres de A(t) sont 0.25 0.25 7i. Or le systme x (t) = A(t)x(t) a pour solution A(t) = x(t) = e0.5t cos t et sin t e0.5t sin t et cos t x0

qui, pour des conditions initiales x0 aussi proches de 0 quon le souhaite, diverge lorsque t +. Aussi, on ne dispose pas de mthode gnrale pour caractriser, partir des formules donnant A(t), la stabilit du systme difd frentiel linaire coecients dpendant du temps dt x = A(t)x, sauf lorsque dim(x) = 1, bien sr.

A.2

Equations direntielles scalaires dordre n


y (n) = 0 y + 1 y (1) + . . . + n1 y (n1)

Soit t y (t) R solution de

o les i sont des scalaires et o la -ime drive de y par rapport au temps est note y ( ) . En posant x = (y, y (1) , . . . , y (n1) )T vecteur de Rn , cette quation scalaire d dordre n devient un systme du premier ordre de dimension n, dt x = Ax, avec pour A la matrice suivante : 0 1 0 ... ... 0 0 0 1 0 ... 0 . . . ... ... ... ... . . . A= 0 . . . ... 0 1 0 0 ... ... ... 0 1 0 . . . . . . . . . n2 n1 . sn y = 0 y + 1 sy + . . . + n1 sn1 y. La condition pour que cette quation linaire en y ait des solutions non nulles donne P (s) : P (s) = sn 0 1 s . . . n1 sn1 = 0.

Le polynme caractristique P (s) sobtient ici trs simplement en partant d directement de la forme scalaire dordre n. Il sut de remplacer dt par s :

168

ANNEXE A. EQUATIONS DIFFRENTIELLES LINAIRES

A.3

Polynmes stables

Dnition 11 (Polynme Hurwitz). Un polynme coecients rels dont toutes les racines rsident dans le demi plan complexe ouvert gauche (i.e. sont partie relle strictement ngative) est un polynme Hurwitz. Thorme 20 (Hermite-Biehler). Soit P (s) = a0 + a1 s + ... + an sn un polynme de degr n coecients rels. On dnit Pi (s2 ) et sPp (s2 ) les parties paires et impaires de P (s), si bien que P (s) = Pp (s2 ) + sPi (s2 ). Ce polynme est Hurwitz ssi 1. tous les zros de w Pp (w2 ) et de w Pi (w2 ) sont rels et distincts 2. an et an1 sont de mme signe 3. les racines positives ranges en ordre croissant de w Pi (w2 ) (notes wi1 ,...) et les racines positives ranges en ordre croissant de s Pp (w2 ) (notes wp1 ,...) satisfont la proprit dentrelacement 0 < wp1 < we1 < wp2 < we2 < ... titre dexemple, considrons le polynme P (s) = 36 + 34s + 61s2 + 36s + 29s4 + 11s5 + 4s6 + s7 . On a alors Pp (s2 ) = 36 + 61s2 + 29s4 + 4s6 et Pi (s2 ) = 34+36s2 +11s4 + s6 . Les racines positives ranges en ordre croissant des polynmes
3

w Pp (w2 ) = 36 61w2 + 29w4 4w6 et w Pi (w2 ) = 34 36w2 + 11w4 w6 sont [1 3/2 2] et [1.2873 1.8786 2.4111]. Elles satisfont bien la proprit dentrelacement. Tous les zros de w Pp (w2 ) et de w Pi (w2 ) sont rels et distincts. Enn, les coecients an = 1 et an1 = 4 sont de mme signe. Le polynme P (s) est donc Hurwitz comme on peut aisment le vrier numriquement. Thorme 21 (Critre de Routh). Soit P (s) = a0 + a1 s + ... + an sn un polynme de degr n coecients rels. On dnit la table de Routh partir

A.4. MATRICES SYMTRIQUES de ces deux premires lignes comme suit sn sn1 sn2 sn3 . . . s0 o bn1 = 1 an1 an an2 , an1 an3 cn1 = 1 bn1 bn3 = 1 an1 an an4 , ... an1 an5 an an1 bn1 cn1 . . . gn1 an2 an3 bn3 cn3 . . . . an4 ... an5 bn5 cn5 . . . .

169

an1 an3 ... bn1 bn3

Le nombre de racines de P (s) ayant une partie relle positive est gal au nombre de changement de signe dans la premire colonne de la table de Routh. Le polynome P (s) est Hurwitz ssi il ny a pas de changement de signe dans la premire colonne de la table de Routh.

A.4

Matrices symtriques

Thorme 22 (Sylvester [8]). Une matrice symtrique de Mn (R) est dnie positive ssi tous ses mineurs principaux sont strictement positifs. Le thorme suivant est usuellement utilis pour construire une fonction de Lyapounov V dun systme linaire asymptotiquement stable (P sert pour exhiber V (x) = xT P x) Thorme 23 (Lyapounov [8]). Soit A une matrice et Q une matrice symtrique dnie positive. Si A est stable (Hurwitz), alors il existe une matrice symtrique dnie positive P solution de lquation suivante, quation dite de Lyapounov : AT P + P A = Q (A.3)

Rciproquement, sil existe des matrices symtrique dnies positives P et Q telles que (A.3) est vrie, alors A est stable (Hurwitz).

170

ANNEXE A. EQUATIONS DIFFRENTIELLES LINAIRES

Annexe B Moyennisation
On suppose ici que les eets rapides ont un caractre oscillant. La mthode de moyennisation a t utilise en mcanique cleste depuis longtemps pour dterminer lvolution des orbites plantaires sous linuence des perturbations mutuelles entre les plantes et tudier la stabilit du systme solaire. Gauss en donne la dnition suivante qui est des plus intuitives : il convient de rpartir la masse de chaque plante le long de son orbite proportionnellement au temps pass dans chaque partie de lorbite et de remplacer lattraction des plantes par celle des anneaux de matire ainsi dnis. Dans ce cadre, les quations non perturbes du mouvement de la terre sont celles qui ne prennent en compte que la force dattraction due au soleil. Lorbite de la terre est alors une ellipse dont le soleil est lun des foyers. Les quations perturbes sont celles o lon rajoute les forces dattraction entre la terre et les autres plantes en supposant que ces dernires dcrivent toutes des orbites elliptiques selon les lois de Kepler. Le paramtre correspond au rapport de la masse du soleil celles des plantes : 1/1000. Lchelle de temps rapide est de lordre dune priode de rvolution, quelques annes. Lchelle de temps lente est de lordre de quelques millnaires. La question est alors de savoir si ces petites perturbations dordre peuvent entraner terme, i.e. lchelle du millnaire, une drive systmatique des longueurs du grand axe et du petit axe de la trajectoire de la terre, ce qui aurait des consquences catastrophiques pour le climat. En fait, les calculs (moyennisation) montrent quil nen est rien. En revanche, lexcentricit des orbites oscille lentement. Ces oscillations inuencent le climat. Considrons le systme dx = f (x, z, ) dt dz = g (x, z, ). dt 171

172

ANNEXE B. MOYENNISATION

Sans changer de notation, on pose f (x, y (t), ) = f (x, t, ) : f est rgulire en x et dpend de t de faon priodique (priode T ). Le systme perturb scrit alors dx (B.1) = f (x, t, ), 0 1. dt Le systme moyennis (ou systme lent) est alors 1 dz = dt T
T

On passe de cette forme la forme ( ) choisie pour noncer le thorme de Tikhonov (thorme 7, page 41) par un simple changement dchelle de temps. On remplace t par t/. Lchelle de temps rapide correspond maintenant t dordre 1 et lchelle de temps lente t de lordre de 1/. Le rgime oscillatoire le plus simple pour y est le rgime priodique, de priode T : dy1 = g1 (x, y, ) dt = y2 y1 y= , 2 y2 2 dy2 = y1 = g2 (x, y, ), dt T

f (z, t, 0) dt
0

df = f (z ).

(B.2)

Remplacer les trajectoires du systme instationnaire (B.1) par celles du systme stationnaire (B.2), revient alors lisser les trajectoires de (B.1). Le thorme suivant montre qu un point dquilibre hyperbolique du systme moyen correspond une petite orbite priodique du systme perturb (B.1) (dmonstration dans [22]). Thorme 24 (moyennisation une frquence). Considrons le systme perturb (B.1) avec f rgulire. Il existe un changement de variables, x = z + w(z, t) avec w de priode T en t, tel que (B.1) devienne dz = f (z ) + 2 f1 (z, t, ) dt avec f dnie par (B.2) et f1 rgulire de priode T en t. De plus, (i) si x(t) et z (t) sont respectivement solutions de (B.1) et (B.2) avec comme conditions initiales x0 et z0 telles que x0 z0 = O(), alors x(t) z (t) = O() sur un intervalle de temps de lordre de 1/. (ii) Si z est un point xe hyperbolique stable du systme moyenn (B.2), alors il existe > 0 tel que, pour tout ]0, ], le systme perturb (B.1) admet une unique orbite priodique (t), proche de z ( (t) = z + O())

173 et asymptotiquement stable (les trajectoires dmarrant prs de (t) ont tendance senrouler autour de cette dernire). Lapproximation, O() prs, des trajectoires du systme perturb (B.1) par celles du systme moyenn (B.2) devient valable pour t [0, +[. Il est instructif de voir comment est construit le changement de coordonnes x = z + w(z, t) en enlevant x des termes oscillants dordre (w de priode T en t). On a, dune part, dx dz w dz w = + (z, t) + (z, t) dt dt z dt t et, dautre part, dx = f (z + w(z, t), t, ). dt Ainsi w dz = I + (z, t) dt z = f (z, t, 0)
1

f (z + w(z, t), t, )

w (z, t) t

w (z, t) + O(2 ). t

Comme la dpendance en t de w est T -priodique, il nest pas possible dannuler compltement le terme dordre 1 en car il ny a aucune raison pour que la fonction dnie par
t

f (z, s, 0) ds
0

soit T -priodique en temps. En revanche, on peut liminer la dpendance en temps du terme dordre 1 en . Il sut de poser
t

w(z, t) =
0

f (z, s, 0) f (z ) ds

(noter que w est bien de T -priodique) pour obtenir dz = f (z ) + O(2 ). dt Si cette approximation nest pas susante, il faut prendre en compte les termes dordre 2 et liminer leur dpendance en temps par un changement de variable du type x = z + w1 (z, t) + 2 w2 (z, t) avec w1 et w2 T -priodique.

174

ANNEXE B. MOYENNISATION

Terminons cette section par un exemple, lquation du second ordre suivante : d2 d = + (1 2 ) . 2 dt dt Cest lquation dun pendule pour lequel on a rajout un petit frottement positif pour les grandes amplitudes ( > 1) et ngatif pour les petites ( < 1). Mettons dabord ce systme sous la forme standard dx = f (x, t, ). dt Le terme oscillant vient du systme non perturb d2 = dt2 dont les orbites sont des cercles. Les phnomnes lents (chelle de temps 1/) sont clairement relatifs aux rayons de ces cercles (i.e. les amplitudes des oscillations). Cest pourquoi il convient de passer en coordonnes polaires = r sin( ). Dans ces coordonnes, le systme en posant = r cos( ) et perturb scrit : dr = [1 r2 cos2 ( )] sin2 ( ) dt d = 1 + sin( ) cos( )[1 r2 cos2 ( )]. dt dr dr dt = . d dt d Ainsi, on se ramne la forme standard en prenant comme variable de temps : [1 r2 cos2 ( )] sin2 ( ) dr = = f (r, , ). d 1 + sin( ) cos( )[1 r2 cos2 ( )] Le systme moyennis est alors du = u(4 u2 ). d 8 u = 2 est un point dquilibre hyperbolique attracteur pour , i.e. t +. Donc pour susamment petit, lquation perturbe possde

est quasiment gal, une constante prs, au temps t. On peut crire

175 un cycle limite hyperbolique attracteur donc lquation est approximative2 = 4 + O(). ment 2 + Linconvnient principal de la thorie des perturbations est quil faut, ds le dpart, avoir une ide assez prcise de ce que lon cherche : il convient de trouver un petit paramtre et disoler la partie rapide du systme. A ce niveau lintuition physique joue un rle important.

176

ANNEXE B. MOYENNISATION

Annexe C Intgrations numriques


Rappelons ici des faits trs lmentaires pour la rsolution numrique d de dt X = F (X, t). La premire ide qui vient lesprit est la rcurrence suivante : n+1 n X n t Xt = F (X t , nt) t n o X t serait une approximation de X linstant t = n t. Ce schma est connu sous le nom de schma dEuler explicite. Il est dordre 1 []. Il est convergent. La convergence signie ici la chose suivante : connaissant la condition initiale x0 t = 0, la solution x(t) en t = T > 0 (quand elle existe) 0 0 est alors la limite quand n tend vers + de xn t (xt = x ) o t = T /(n 1) dpend de n. La convergence nest pas une proprit vidente dmontrer. La dicult vient du fait que plus le pas t est petit, plus le nombre ditrations pour atteindre le temps nal T est grand. Le schma dEuler implicite correspond la rcurrence suivante
n+1 n X n+1 t Xt = F (X t , nt). t n+1 Calculer X t ncessite la rsolution dune quation implicite et donc la mise en oeuvre de techniques type algorithme de Newton. Les calculs sont donc plus lourds. Ce schma dordre 1 est convergent aussi. Les schmas implicites sont bien adapts aux systmes raides, cest dire, aux systmes lents/rapides qui comportent une grande diversit dchelles de temps, les chelles les plus rapides tant stables (c.f. la section sur la thorie des perturbations ci-dessous). En eet, il nest pas ncessaire davoir un pas de temps t plus petit que lchelle de temps la plus rapide comme cest le cas pour les mthodes explicites. Aussi il peut tre plus conomique deectuer peu ditrations avec un t assez grand (sachant que chaque itration cote assez chre) plutt que beaucoup ditrations avec un t trs petit.

177

178 Prenons un exemple :

ANNEXE C. INTGRATIONS NUMRIQUES

d x = x/ + y, dt

d y = y/ dt

( >> sont deux paramtres positifs). Le schma dEuler explicite donne la rcurrence xn+1 = (1 t/ ) xn + t y n y n+1 = (1 t/) y n . Cette rcurrence est stable si t < 2. Le schma implicite conduit (la rsolution est facile) xn+1 = y n+1 t 1 yn xn + 1 + t/ 1 + t/ 1 yn, = 1 + t/

rcurrence stable pour tout t > 0. Par exemple t /10 donne dj une bonne approximation de la solution du systme des chelles de temps de lordre de . Nous renvoyons le lecteur [13] o sont prsentes les mthodes numriques les plus classiques comme celle de Gear (prdicteur-correcteur) pour rsoudre les systmes raides.

Annexe D Commande prdictive


La philosophie de la commande prdictive (MPC pour Model Predictive Control) se rsume utiliser le modle pour prdire le comportement du systme et choisir la dcision la meilleure au sens dun certain cot tout en respectant les contraintes . Les termes de cot et de contraintes sont familiers ceux qui connaissent loptimisation. Dans notre cas, il sagit dun cas particulier sadressant loptimisation des systmes dynamiques : la commande optimale. Lide la commande prdictive se trouve dj entre les lignes dun des ouvrages fondateurs de la commande optimale par Bellman en 1957 [6]. Ltude de la stabilit dune telle loi de commande en boucle ferme remonte quand elle Kalman en 1960 qui note que loptimalit nimplique pas la stabilit. Historiquement, cette ide ne sera mise en uvre industriellement quavec Richalet en 1976 dans le logiciel IDCOM (identication, commande voir [45]). Le formalisme choisi permet de considrer les systmes linaires comme des ltres rponse impulsionnelle nie (FIR pour Finite Impulse Response). Les cot considrs sont quadratiques, la partie estimation repose sur une approche moindres carrs. On peut spcier des contraintes anes sur les entres et les sorties. En 1980 apparat DMC (Dynamic Matrix Control) de Cutler et Ramaker. DMC reprend de nombreuses ides de IDCOM, les systmes sont reprsents par leur rponses lchelon. En 1988 il est possible grce SMOC (Shell Multivariable Optimizing Control) de considrer les systmes sous forme dtat. La partie estimation est assure par un ltre de Kalman. Outre ces outils plus modernes de lautomatique, SMOC intgre la notion de contraintes dures et molles et permet de les ordonner. Cest en pratique une possibilit intressante. Le but de ce chapitre est de prsenter les lments constitutifs fondamentaux dun outil de commande prdictive ainsi que son utilisation pratique. 179

180

ANNEXE D. COMMANDE PRDICTIVE

D.1
D.1.1

Thorie gnrale de la commande prdictive


Principe

La commande prdictive consiste en la rsolution rpte chaque pas de temps (not ici et spci par lutilisateur) dun problme de commande optimale : comment aller de ltat actuel un objectif de manire optimale en satisfaisant des contraintes. Le pas de temps sera en premier lieu choisi de manire cohrente avec la nesse du modle souhait 1 . Pour cel il faut connatre chaque itration ltat du systme et utiliser un outil de rsolution numrique.

D.1.2

Commande optimale

Considrons dans un premier temps un problme dpourvu de contraintes. Les quations reprsentant le systme sont en toute gnralit = f (x, u) x x(0) = x0 (D.1) t [0, +[ o f est une fonction Lipchitz (hypothse gnrale qui permet dassurer comme on la vu au chapitre 1.2.2, lexistence des trajectoires). La solution gnrale de ces quations en fonction de u(.) est
t

xu (t, x0 ) = x0 +
0

f (xu (, x0 ), u( ))d.

Considrons que le cut optimiser est

J (u(.), x0 ) =
0

q (xu (, x0 ), u( ))d q (0, 0) = 0, q C 2

Notons le cot optimal atteint J (x0 ) = minu(.) J (u(.), x0 ).

q (x, u) cq ( x 2 + u 2 ), cq > 0 u q (x, u) convexe pour tout x.

(D.2)

on se reportera au chapitre 1.3, pour une discussion du choix du modle de commande comme rduction du modle de connaissance ou de simulation.
1

D.1. THORIE GNRALE DE LA COMMANDE PRDICTIVE x0 x (t, x0 ) x (., x0 )

181

Fig. D.1 Trajectoire optimale

Fig. D.2 Application du principe doptimalit de Bellman.

D.1.3

Bouclage et stabilit

En chaque point x0 il faut rsoudre le problme prcdent de commande optimale. Si en tout point x0 on appliquait au systme u (t, x0 , ) (la commande est donc un bouclage) alors on aurait stabilit du systme. Nous allons prouver ce rsultat. Raisonnons de manire innitsimale (voir Figure D.1). Partant de x0 linstant 0 appliquons pendant t << 1 la commande u (t, x0 , ). Nous par courons une portion de la courbe x (., x0 ) et parvenons alors en (t, x (t, x0 ). partir de ce point on dcide de rsoudre nouveau le problme de commande optimale qui scrit maintenant minu(.) J (u(.), x (t, x0 )). Que trouvet-on comme solution ? Le principe doptimalit de Bellman nous indique la solution. Il stipule en eet que une suite de dcisions est optimale si, quels que soient ltat et linstant considr sur la trajectoire associe, les dcisions ultrieures sont optimales pour le sous-problme ayant cet tat et cet instant comme conditions initiales . Autrement dit, on trouve comme solution la n de la trajectoire x (., x0 ). On a lgalit x ( t, x ) = x ( t t, x ( t, x )) pour tout t [ t, + [. Il est 0 0

182

ANNEXE D. COMMANDE PRDICTIVE

donc possible de dcomposer le cut optimal comme


t J (x0 ) = J (x (t, x0 )) + 0 q (x (, x0 ), u (, x0 ))d

en passant la limite t 0 on trouve d J .f (x0 , u (0, x0 )) = q (x0 , u (0, x0 )) dx soit


dJ = q (x0 , u (0, x0 )) < 0. dt

Nous allons maintenant utiliser J comme fonction de Lyapounov du sys tme. En eet la fonction x J ( x) > 0 sauf en 0 o elle vaut 0 et sa dJ drive temporelle dt 0. Cette proprit sert montrer que cest donc une fonction de Lyapounov. Par le thorme de Lyapounov, 0 est un point stable du systme. Autrement dit, lutilisation comme bouclage de la commande minimisant J garantit la stabilit. Cest un intressant rsultat thorique mais qui en pratique nest pas utilisable, car on ne sait pas en gnral calculer la commande minimisant J . Toutes les mthodes numriques habituelles reposent sur une reprsentation approximante du problme combines des mthodes dintgration numrique type Runge-Kutta pour lvaluation des intgrales qui permettent dvaluer uniquement des intgrales sur un intervalle de longueur nie. Dans ce qui suit nous allons dsormais nous intresser des problmes quon sait traiter numriquement. Nous sommes donc contraints dapproximer J par T

J (u(.), x0 , T ) =
0

q (xu (, x0 ), u( ))d + V (xu (T, x0 )).

Notons alors J (x0 , T ) = min J (u(.), x0 , T )


u(.)

et u (t, x0 , T ) = arg min J (u(.), x0 , T )


u(.)

loptimum de J (u(.), x0 , T ) et la commande le ralisant.

D.1. THORIE GNRALE DE LA COMMANDE PRDICTIVE Optimisation horizon ni et bouclage On dnit la commande prdictive comme lalgorithme suivant 1. rsoudre min J (u(.), x0 , T ), dont la solution est u (., x0 , T ) 2. appliquer u (, x0 , T ) pour [0, ], 0 T 3. rpter en remplaant x0 par x( ).

183

Malheureusement, cette fois ci le principe doptimalit de Bellman ne sapplique pas. En eet, entre deux itrations les problmes rsoudre ne sont pas exactement comparables. Ainsi la premire itrations on minimise linT T + tgrale 0 alors qu la deuxime cest . Le deuxime problme nest pas un sous-problme du premier. Ctait le cas en horizon inni puisque tait bien un sous problme de 0 . En ralit, il est possible par un choix adquat du cut terminal V de +q 0 rendre stable la commande prdictive. Par exemple la condition V permet de montrer que la fonction de retour optimal est encore une fonction de Lyapounov du systme 2 . Le problme des temps de calcul Un autre problme qui nest pas trait par la thorie de la commande prdictive mais qui a une importance pratique est celui de linuence des temps de calculs. un instant donn, on calcule la commande optimale partant du point actuel, ou plutt on commence calculer cette commande. En ralit, elle ne sera disponible quune fois le calcul termin. Entre temps on pourra utiliser loptimum prcdent. Mais cette commande nest pas adapte au problme. Si les temps de calculs (qui sont en outre variables) ne sont pas ngligeables par rapport temps dapplication, on risque dengendrer une instabilit dans le schma de commande prdictive. Cette situation est rsume sur la gure D.3. Il faut donc utiliser pour un temps qui soit grand devant les temps de calculs et court devant les constantes de temps du systme. Ces deux contraintes se contredisent dans le cas des systmes rapides, ceci explique le grande succs de la commande prdictive dans le domaine du gnie des procds et son succs plus que modeste dans le domaine de laronautique (ceci est en train de changer avec larrive de calculateurs embarqus rellement puissants).
2

on pourra se rfrer [41] pour un expos complet.

184

ANNEXE D. COMMANDE PRDICTIVE

Commande utilise ce quil faudrait faire

Calcul 0 0

Calcul 1

Fig. D.3 Le problme des temps de calculs.

D.2

Commande prdictive linaire

Un cas particulier trs important en pratique est celui des systmes linaires avec cot quadratique. Ces systmes sont frquents dans les applications car ils reprsentent le comportement au voisinage dun point de fonctionnement donn dun systme non linaire. On peut reprsenter un systme linaire commander sous les deux formes suivantes x = Ax + Bu (D.3) y = Cx dite forme dtat o sous la forme discrte suivante qui aura dans la suite notre faveur car elle se prte bien au traitement informatique temps rel de la commande prdictive xj +1 = Axj + Buj yj = Cxj . En outre, on considre des contraintes anes Duj d, Hxj h (D.4)

o D et H sont des matrices coecients constants et d et h des vecteurs composantes positives.

D.2.1

Commande prdictive en reprsentation discrte

On peut dnir la commande prdictive linaire (MPC par opposition la GMPC pour Generalized MPC) comme la loi de rtro-action uj = (xj )

D.2. COMMANDE PRDICTIVE LINAIRE qui minimize 1 = 2


+

185

j =0

(yj y )T Q(yj y ) + (uj u )T R(uj u ) + uT j S u j

avec uj = uj uj 1 , Q, R, S matrices symtriques dnies positives. On appellera ( y, u ) les cibles nonomiques. y reprsente un rgime de fonctionnement vu de lextrieur (sortie) idal, alors que u est une des recettes pour y arriver (il y en a en gnral plusieurs). En toute gnralit, y et u peuvent varier dans le temps. Par exemple dans un procd type batch de polymrisation, y pourra reprsenter un prol thermique dans le temps, qui conditionnera la formation des chaines et confrera au polymre produit certaines proprits rhologiques.

D.2.2

Calcul dune cible atteignable

La premire chose faire est de traduire lobjectif conomique en un point de fonctionnement (xs , ys , us ) o xs est un point stationnaire. On veut dcider autour de quel point stationnaire on va travailler. Ainsi on saura comment volue le systme via son quation dtat xj +1 = Axj + Buj , ce quon ne pourrait pas faire via la seule quation de sortie yj = Cxj qui nest quune simple projection. La donne de (ys , us ) est insusante. Idalement ys = y , us = u mais ce nest pas toujours possible. Pour trouver un tel point nous allons utiliser une mthode de pnalisation exacte en minimisant le cot suivant 1 T min T Qs + (us u )Rs (us u ) + qs (xs ,us , ) 2 o Qs , Rs sont des matrices symtriques dnies positives, sous les contraintes xs = Axs + Bus , y Cxs , 0, Dus d, Hxs h o est une variable de relaxation. La mthode de pnalisation exacte Lintrt de la mthode de pnalisation exacte est que sil existe une solution de Cxs = y (qui est bien lquation quon a relaxe en introduisant ) alors, pour qs susamment grand ce sera eectivement la solution du problme de minimisation prcdent. Plus prcisment, la thorie traite le problme suivant min f0 (x), x Rm ,

186

ANNEXE D. COMMANDE PRDICTIVE sous les contraintes i = 1...q : fi (x) 0, i = q + 1...m : fi (x) = 0.

Les contraintes dnissent un certain sous-ensemble de Rn not . On introduit alors P (x) = f0 (x) + (x) o est en quelque sorte une fonction indicatrice, : Rn R (x) 0, x Rn (x) = 0 quivaut a ` x . Les deux exemples suivants de telles fonctions sont intressants :
q m

1 (x) =
i=1 q

max(0, fi (x)) +
i=q +1 m

fi (x)2 |fi (x)|.

2 (x) =
i=1

max(0, fi (x)) +
i=q +1

Considrons ensuite une suite strictement croissante (i ) R+ , i +. Notons (xk ) la suite des solutions des problmes de minxRn Pk . Cette suite a les proprits suivantes Pk (xk ) Pk+1 (xk+1 ) (xk ) (xk+1 ) f (xk ) f (xk+1 ). Autrement dit on augmente la satisfaction des contraintes alors quon augmente le cot du problme contraint. Le rsultat suivant donne alors une mthode pour calculer une solution du problme contraint Thorme 25. Supposons arg min(Pk (x)) = et que = alors les points daccumulations de (xk ) sont les solutions de P . Fort de cette mthode, on a dtermin un point stationnaire de fonctionnement (xs , us ) dont la projection Cxs est proche de (et mme souvent gale ) lobjectif conomique y . Cette technique de pnalisation exacte est souvent rencontre en pratique pour traiter des contraintes non linaires gnrales dont on ne sait pas si elles possdent un point admissible.

D.2. COMMANDE PRDICTIVE LINAIRE Contraintes dures

187

Contraintes molles Fig. D.4 Contraintes dures et molles

D.2.3

Rcriture et rsolution

Plaons nous maintenant en cart par rapport ce point de fonctionnement que nous venons de dterminer. Posons pour cel wj = x j x s v j = uj us zj = yj Cxs . Ces quantits vrient wk+1 = Awk + Bvk , zk = Cwk . Nous cherchons maintenant rsoudre le problme suivant
+ wk ,vk

min (xj ) =
k=0

T T T wk Qzk + vk Rvk + vk S v k

sous les contraintes w0 = x j x s wk+1 = Awk + Bvk Dvk d + Dus Hwk h + Hxs . Ceci nest pas un problme LQR (linear quadratic regulator) classique en raison de la prsence de contraintes ingalits. On ne sait pas en trouver une solution analytique comme on sait le faire par une quation de Riccati en labsence de telles contraintes (voir chapitre 3.4). En outre ce problme possde un nombre inni de variables w0 , w1 , ... , v0 , v1 , ... par rapport auxquelles il nous faut optimiser. En vue de la rsolution numrique qui va suivre il nous faut donc approximer ce problme par un

188

ANNEXE D. COMMANDE PRDICTIVE

problme en horizon ni avec cot terminal, avec un nombre ni dinconnues w0 , ...wN 1 , v0 , ...vN 1 . Le problme 3
N 1 wk ,vk

(xj ) = min
k=0

T T T T wk Qzk + vk Rvk + vk S v k + w N wN

sous les contraintes w0 = x j x s wk+1 = Awk + Bvk Dvk d + Dus Hwk h + Hxs est un problme cot quadratique sous contraintes anes. Cest un problme de programmation quadratique de la forme
T min xT M1 x + M2 x x T sous la contrainte M3 x M4 pour lequel de nombreux algorithmes de rsolution sont disponibles. Les contraintes anes dnissent un polytope qui peut tre vide. Dans ce cas, le problme na pas de solution. Si le polytope nest pas vide, on a unicit de la solution en raison de la convexit du cot et des contraintes. En pratique, on attend de lalgorithme de commande prdictive quil donne toujours une rponse, quitte ce quelle viole certaines contraintes. cet eet, on dnit des priorits entre les contraintes : en premier lieu des contraintes dures, dont on sassurera au pralable quelles admettent toujours des points les vriant. ensuite des contraintes molles quil est intressant de vrier exactement. Ce sont des contraintes quon relaxera par la mthode prcdente de pnalisation exacte. En conclusion, les contraintes dures seront toujours satisfaites par la solution fournie par lalgorithme de commande prdictive alors que les contraintes molles seront satisfaites si cest possible.

On pourra en pratique utiliser comme matrice de cot terminal la valeur initiale de la solution de lquation de Riccati discrte correspondant au problme sans contraintes sur [N 1, [. En eet sous lhypothse que les contraintes ne sont pas actives sur lintervalle T [N 1, [ on sait que la queue de la srie vaut exactement wN wN . Ce sera donc une approximation intressante pour notre cas.
3

D.2. COMMANDE PRDICTIVE LINAIRE Calcul de la cible y , u x s , us QP avec ordonnancement des contraintes Systme contrler yj

189

xj estim Estimateur Fig. D.5 Une implmentation de la MPC

D.2.4

Implmentation

En rsum un algorithme de commande prdictive a besoin chaque itration de ltat du systme (pour lcriture de la premire contrainte) : qui lui sera fourni pas un estimateur calculant une valeur approche de xs partir des mesures une traduction des objectifs conomiques en point de fonctionnement un ordonnancement des contraintes permettant de toujours obtenir une solution acceptable Une implmentation raliste dune MPC est donc telle que reprsente sur la gure D.5.

D.2.5

Extensions possibles

Aujourdhui on envisage dutiliser de plus en plus le modle de connaissance (i.e. issu des quations de la physique) dans le schma de commande prdictive. passage dun point un autre possdant des approximations linaires (modles) trs direntes. On pourra pour cel mettre jour le modle grce un estimateur. utilisation du modle de connaissance nonlinaire pour lestimateur utilisation dun algorithme de rsolution NLP (nonlinear programming) au lieu dun QP. Le principal problme rside dans la non convexit du problme doptimisation. En pratique, on risque de ne pas trouver loptimum global sil existe mais un minimum local.

190

ANNEXE D. COMMANDE PRDICTIVE

D.3
D.3.1

Systmes rponse impulsionnelle nie FIR


Notations et dnitions

Dans un premier on se restreint au cas des sytmes une seule entre u et une seule sortie y . On chantillonne le signal de sortie y (t) intervalles rguliers en notant T la priode dchantillonnage. On note la suite des chantillons successifs de la sortie {y (0), y (1), ..., y (k ), ...} et de mme pour la commande {u(0), u(1), ..., u(k ), ...} Le signal de commande est dni par le bloqueur dordre zro u(t) = u(k ), kT < t (k + 1)T On sintressera dans la suite deux signaux dentre particuliers : limpulsion v (0) = {1, 0, ..., 0, ...} lchelon v (0) = {1, 1, ..., 1, ...}. Rponse impulsionnelle Soit y (0) = {h0 , h1 , ..., hn , hn+1 , ...} la rponse du systme limpulsion. On appelle systme rponse impulsionnelle nie (FIR) un systme tel que h0 = 0 et hk = 0 pour k > n o n est un entier donn. On dit quun tel systme stablit 0 aprs n chantillons. On note H1 = [h1 , h2 , ..., hn ]T la matrice des coecients du systme, elle le dnit entirement par les deux principes suivants. Principe de dcalage Lentre dcale u (0) = {0, 1, 0, ...} produit la sortie dcale y (0) = {0, 0, h1 , h2 , ...}. Principe de superposition Lentre u (0) = {u(0), u(1), u(2), ...} produit la sortie y (0) = {0, y (1), y (2), ...} telle que y (k ) = n i=1 hi u(k i). Ainsi, pour calculer la valeur de la sortie y (k ) il faut garder en mmoire les n valeurs de lentre u(k 1), ... u(k n).

D.3. SYSTMES FIR Cette formule provient de la superposition u (0) = u(0){1, 0, ..., 0, ...} + u(1){0, 1, 0, ..., 0, ...} + ... qui fournit par linarit y (0) = u(0){0, h1 , ..., hn , hn+1 , ...} + u(1){0, 0, h1 , ..., hn , hn+1 , ...} + ... Rponse un chelon

191

Considrons un systme FIR. Lentre v (0) = {1, 1, ..., 1, ...} fournit la rponse y (0) = {0, s1 , ..., sn , sn+1 , ...} = {0, h1 , h1 + h2 , h1 + h2 + h3 , ...}. Il est intressant en pratique de dnir la rponse du systme par ces coecients S = [s1 , s2 , ..., sn ]T . En notant u(i) = u(i) u(i 1) on peut crire la rponse du systme lchelon y (0) = {0, y (1), y (2), ...}, avec
n1

y (k ) = sn u(k n) +

i=1

si u(k i).

On constate galement que pour calculer y (k ) il faut garder en mmoire les n dernires valeurs de lentre. k Enn les relations de passage entre S et H sont sk = i=1 hi , hk = s k sk 1 . tat dun systme FIR On appelle ltat dun systme FIR la matrice (k ) = [ Y y0 (k ), y 1 (k ), ..., y n1 (k )]T o y i (k ) = y (k + i) calcule pour u(k + j ) = 0 pour tout j 0. En dautre termes y i (k ) est la sortie du systme au temps k + i lorsque lentre vaut 0 partir du temps k .

D.3.2

Prvisions

Prvisions partir de la rponse indicielle Ltat du systme reprsente la prvision de lvolution future du systme si les valeurs futures de lentre sont nulles. Il est de dimension nie n car le systme stablit naturellement 0 aprs n chantillons. Si la commande

192

ANNEXE D. COMMANDE PRDICTIVE

future est non nulle, on peut prvoir les valeurs futures de la sortie par les formules qui vont suivre. Les relations sont de la forme y (k + 1) = y 1 (k ) + h1 u(k ), y (k + 2) = y 2 (k ) + h1 u(k + 1) + h2 u(k ), ... En dautres termes y 1 (k ) y (k + 1) y (k + 2) y2 (k ) = . . . . . . yp (k ) y (k + p)

o on voit ltat et la contribution des commandes futures. Il est possible enn de calculer de manire rcursive les prvisions par la formule (k + 1) = M H Y (k ) + Hu(k ) Y o M H est la matrice nilpotente M
H

h1 h2 . . . hp

u(k ) + ... +

0 0 . . . h1

u(k + p 1)

1 0 ... ... . ... 1 0 0 0

Prvisions partir de la rponse lchelon An dutiliser les grandeurs u(i) dnies prcdemment, on dnit un (k ) = [ autre tat Y y0 (k ), y 1 (k ), ..., y n1 (k )]T o y i (k ) = y (k + i) o u(k + j ) = 0 pour tout j 0. En dautres termes, y i (k ) est la sortie du systme au temps k + i lorsque lentre reste inchange partir de linstant k . Comme prcdemment il est possible dtablir une formule de rcurrence pour la prvision de cet tat : (k + 1) = M S Y (k ) + S u(k ) Y o MS = 1 0 ... ... . 0 1 0 1 0

D.4. APPLICATIONS

193

Notons enn quil est possible de gnraliser les concepts dtat, de rponses impulsionnelles et lchelon, et des formules de prdiction au cas des systmes ayant un nombre quelconque nu dentres et ny de sorties. Ainsi on notera T T T T S = S1 , S2 , ..., Sn la collection des matrices Si = (sl,m,i ) o llment sl,m,i reprsente le coefcient i de la rponse de la sortie l un chelon sur lentre m. Ltat du sytme sera not (k ) = [ Y y0 (k ), y 1 (k ), ..., y n1 (k )]T o chaque lment est de dimension ny . On tablit alors la formule de rcurrence (k + 1) = M Y (k ) + S u(k ) Y o I 0 ... ... 0 I 0 I 0

est une matrice de taille (ny n) (ny n).

M =

D.4

Applications de la MPC en gnie des procds

Aujourdhui on compte plus de 2000 applications de la MPC dans le monde. Parmi celles-ci seules 100 sont de nature non linaire (cest dire du type prsent en extension la section D.2.5). Le reste relve donc de la mthodologie prsente dans ce cours. Nous allons considrer deux exemples caractristiques dapplications de la commande prdictive sur des cas pratiques.

D.4.1

Exemple 1 : racteur exothermique

Considrons un racteur parfaitement agit o se produit la raction exothermique A B . Le produit A est introduit en continu par la vanne F1 , lexothermicit de la raction est vacue par les changes avec la double enveloppe dont le dbit de circulation est donn par la vanne F2 . Le mlange ractionnel est soutir en continu par la vanne F3 . Les quations direntielles

194 F1

ANNEXE D. COMMANDE PRDICTIVE

F2
TC LC CC

F3 Fig. D.6 Racteur exothermique avec commandes monovariables rgissant lvolution de ce systme sont de la forme (quations bilans) d (V CA ) = F1 CA0 F3 CA keEa/(RT ) CA V dt d Cp (V T ) = (F1 CP 0 T0 F3 Cp T ) + AeEa/(RT ) CA V (H ) F2 (T T c) dt d V = F1 F2 . dt Ltat du systme est (CA , T, V ), respectivement la concentration en produit A, la temprature et le volume du milieu ractionnel. k , Cp , CA0 , CP 0 , Tc et Ea sont des constantes. CP est suppose constante. On souhaite rguler les trois grandeurs (CA , T, V ) en utilisant les trois vannes F1 , F2 , F3 . Dans le cadre de la commande monovariable, on sait comment quiper cette unit de rgulateur PID en asservissant CA par la vanne F1 , T par la vanne F2 et V par la vanne F3 . Un tel systme de rgulation fonctionne trs bien. En revanche il est malais de rpondre aux questions suivantes : comment eectuer des changements de rgime (autrement appeles des transitoires) de manire optimale ? comment grer des contraintes sur les actionneurs ? Le problme des transitoires avec PID ou MPC ? Faire passer le systme dun point un autre nest pas un problme facile quand les quations de la dynamiques sont non linaires. En prsence de

D.4. APPLICATIONS tat 2

195

transitoire

rgulation

tat 1 Fig. D.7 Le problme de la rgulation et des transitoires contraintes, la rgion accessible dans lespace des tats nest pas forcment convexe. On peut se retrouver dans les dirents cas de gure reprsents ci-dessous pour lesquels les simples PID monovariables ont des performances variables (cas deux tats pour simplier la reprsentation). Chaque PID tente de faire converger la grandeur quil est suppos asservir vers la consigne quon lui a assigne. 1. Dans ce cas, les PID apportent une rponse satisfaisante. La commande prdictive napporte comme amlioration que loptimalit du chemin parcouru. Cest un gain souvent marginal compar la dirence de complexit de la commande prdictive par rapport aux simples PID. 2. En ajoutant un override sur les PID, cest dire un limiteur sur la valeur de sortie des PID (complt par un dispositif anti-windup), on obtient un comportement relativement satisfaisant tout en respectant les contraintes. En revanche il est probable que le chemin suivi est cette fois relativement coteux compar loptimum calcul par la MPC. 3. Cette fois il ny a pas moyen de faire fonctionner les PID monovariables. Le PID sur ltat 2, empche le systme davancer au del du point C . Les PID sont incapables de trouver le chemin calcul par le MPC. 4. Dans cette situation extrme les PID savrent particulirement inecaces. En centralisant les dcisions, cest dire en planiant une

196

ANNEXE D. COMMANDE PRDICTIVE

tat 2

tat 2

MPC PID

MPC PID

tat 1 Cas 1 tat 2 tat 2 Cas 2

tat 1

MPC

MPC

PID

PID

tat 1 Cas 3 Cas 4

tat 1

Fig. D.8 Comparaisons PID contre MPC

D.4. APPLICATIONS F1

197

F2
TC LC CC

F3

MPC

Ordres conomiques

Fig. D.9 Racteur exothermique avec MPC trajectoire pour x1 et x2 de manire coordonne, on trouve le bon chemin. Notre racteur chimique est un systme dont ltat est de dimension 3. Lanalyse graphique prcdente est donc plus dlicate mais reste valide dans son principe. Un rgulateur ecace dans le cas de notre racteur chimique centralisera les mesures de temprature, volume et concentration et calculera de manire centralise les trois commandes F1 , F2 , F3 . Il apparat donc que la centralisation des dcisions na que des avantages. Pourtant, certaines rgles de scurit indiquent quil nest pas souhaitable de jouer sur ces deux degrs de libert. Ainsi les erreurs de modle peuvent conduire des mprises sur le respect des contraintes (essayer datteindre un volume ngatif...). Le cas dune perte de connection entre le calculateur centralis et ses capteurs, ou mme dune panne informatique, entrane la dfaillance de tous les rgulateurs en mme temps. Aussi prserve-t-on de simples mais ecaces contrleurs PID monovariables sur les variables essentielles pour la scurit : niveaux, certaines tempratures lorsquon sapproche des limites de lemballement, etc... On peut aussi prendre certaines marges de scurit sur les contraintes admissibles par la MPC.

198

ANNEXE D. COMMANDE PRDICTIVE

L D

F, zF

B Fig. D.10 Colonne distiller binaire

D.4.2

Exemple 2 : colonne distiller binaire

Considrons une colonne distiller binaire. tant donn un certain dbit de charge F de puret zF , on veut rguler les quatre tats VD , xD , VB , xB , respectivement le volume et la puret en tte, le volume et la puret en fond de la colonne. On dispose de quatre commande L, V, D, B , respectivement le dbit de recycle, le rebouillage, le dbit de distillat et de production en fond. On peut choisir quatre stratgies de commande pour ce systme quatre entres et quatre sorties en utilisant successivement de moins en moins de PID et de plus en plus de MPC. 1. Le tout PID. Par exemple on pourra asservir xD avec L, xB avec V , VB avec B , VD avec D (cest la commande en (L, V )). Cest une commande ecace tant quon est pas en haute puret, on pourra la remplacer le cas chant par une commande en ratio (voir par exemple [49]). 2. On peut choisir de laisser les deux niveaux asservis par des PID agissant respectivement sur B pour VB et sur D pour VD . En revanche on laisse la MPC agir de manire concerte sur L et V pour rguler xD et xB .

D.5. CONCLUSION

199

On est donc assur que quelles que soient les dcisions de la MPC, les niveaux seront rguls, ce qui est important pour viter lengorgement et les surpressions. 3. En reprenant la structure prcdente, on peut autoriser la MPC mettre jour les points de consignes des rgulations de niveaux assures par les PID. Les chemins calculs par la MPC seront encore plus optimaux dans le sens o la MPC dispose de degrs de libert supplmentaires par rapport auxquels optimiser. En cas de dfaillance de systme MPC, les rgulateurs de niveaux peuvent continuer fonctionner en utilisant le dernier point de consigne calcul. 4. On peut utiliser le MPC sur les quatres entres pour rguler les quatres sorties. Cest optimal au niveau des performances mais risqu au niveau scurit. En outre il faut sattendre des excursions importantes des niveaux si on ne les fait pas apparatre par des pondrations importantes dans le cot optimiser (la MPC se rservant le droit de jouer comme bon lui semble sur ces degrs de liberts). En pratique, la solution retenue est souvent la solution 2 ou 3. La solution 1 est gnralement considre comme trop sous-optimale et est rserve aux colonnes dont la qualit de sparation nest pas cruciale pour lunit de production. La solution 4 nest pas souhaitable car juge trop extrme, mme si cest thoriquement loptimum.

D.5

Conclusion

Les principales caractristiques de la MPC sont : son caractre multi-variable ; quelle fournit des rponses optimales au sens dun cot prcis par lutilisateur ; quelle permet de grer des contraintes. Cest une technique de commande utile en transitoire. Elle est dj trs utilise dans lindustrie et reste un thme de recherche actif dont la thorisation est plus rcente que les applications.

Bibliographie
Pour les rfrences historiques en particuliers sur les travaux de Bellman et ltude de la stabilit par Kalman, on se reportera [41] et [45]. Pour des dtails concernant la mise en oeuvre concerte de rgulateurs PID avec

200

ANNEXE D. COMMANDE PRDICTIVE

la MPC, on pourra consulter [46]. Enn pour des considrations sur les avantages et inconvnients de la logique centralise de commande, on pourra lire [27].

Annexe E Lexique
Bouclage dynamique Contrleur en boucle ferme possdant un ou plusieurs tats (par exemple un terme intgral) Bouclage statique Contrleur en boucle ferme ne possdant pas dtat. Sa valeur de sortie est une fonction des valeurs instantanes de ses entres. Champs de vecteurs Application rgulire qui associe chaque point x M , M ouvert de Rn , un vecteur f (x) Rn ayant ce point pour origine. tat Grandeur satisfaisant une quation direntielle et dont il faut xer la condition initiale pour pouvoir exprimer lvolution future. tat stationnaire Point dquilibre dun systme x = g (x). Caractris par g (x) = 0. Feedforward Terme hors de la boucle rajout un contrleur en boucle ferme notamment pour amliorer ses performances en transitoire. Fonction de transfert propre Fonction de transfert dont le degr du numrateur est infrieur celui du dnominateur (strictement propre si lingalit est stricte). Forme dtat Systme d quations direntielles du premier ordre de la forme x = f (x, u) pour les systmes avec commande ou x = f (x) pour les systmes autonomes. Gain proportionnel Gain multipliant lcart entre une mesure et sa consigne. 201

202

ANNEXE E. LEXIQUE

Priode dchantillonnage Pas de temps dun modle discret. Perturbation Entre subie par un systme. Ce peut tre laction dun autre systme, un changement intempestif de paramtres dans les quations... PI, PID Contrleurs (Proportionnel, Intgral) et (Proportionnel, Intgral, Driv). Plan de phases Espace des tats dun systme dynamique. Point hyperbolique Point dquilibre dun systme dynamique tel que les valeurs propres du Jacobien associ en ce point sont toutes partie relle non nulle. Rponse Signal de sortie dun systme dynamique excit par une entre. Terme intgral Intgrale de lcart entre une mesure et sa consigne.

Index
attracteur, 25 bassin dattraction, 41 bouclage dynamique, 15 boucle ferme, 15 boucle ouverte, 15 champ de vecteurs, 31 etat stationnaire, 23 facteur damortissement, 53 feedback, 9 feedforward, 9 forme dtat, 15 forme standard, 41 gain danti-emballement, 16 gain intgral, 11 homocline, 31 htrocline, 31 localement asymptotiquement stable, 21, 23 marges de robustesse, 55 matrice de transition, 151 moyennisation, 39 orbite priodique, 35 perturbations singulires, 38 plan de phases, 19 pulsation de coupure, 53 priode dchantillonnage, 11 203 robuste, 28 robustesse paramtrique, 45 stable au sens de Lyapounov, 21 terme intgral, 11

204

INDEX

Bibliographie
[1] M. Abramowitz and I.A. Stegun. Handbook of Mathematical Functions. Dover, New York, 1965. [2] V. Alexeev, E. Galeev, and V. Tikhomirov. Receuil de Problmes dOptimisation. Editions Mir, Moscou, 1987. [3] W.F. III Arnold and A.J. Laub. Generalized eigenproblem algorithms and software for algebraic Riccati equations. Proc. IEEE, 72 :17461754, 1984. [4] K. J. strm and T. Hgglund. PID Controllers : Theory, Design, and Tuning. Instrument Society of America, 1995. [5] M. Athans. The Control Handbook, chapter Kalman ltering, pages 589 594. CRC Press and IEEE Press, 1996. [6] R. E. Bellman. Dynamic Programming. Princeton University Press, Princeton, 1957. [7] H. S. Black. Inventing the negative feedback amplier. IEEE Spectrum, pages 5560, 1977. [8] F. Brauer and J. A. Nohel. The qualitative theory of ordinary dierential equations. W. A. Benjamin, Inc., New York, 1969. [9] A.E. Bryson and Y.C. Ho. Applied Optimal Control. Ginn and Company, 1969. [10] H. Cartan. Thorie lmentaire des fonctions analytiques. Hermann, 1961. [11] K. L. Chien, J. A. Hrones, and J. B. Reswick. On the automatic control of generalized passive systems. Transactions ASME, 74 :175185, 1952. [12] G. H. Cohen and G. A. Coon. Theoretical consideration of retarded control. Trans. A.S.M.E., Vol. 75(No. 1) :pp. 827834, 1953. [13] M. Crouzeix and A.L. Mignot. Analyse Numrique des Equations Diffrentielles. Masson, Paris, 1992. [14] M. Demazure. Bifurcations and Catastrophes. Universitext. Springer, 2000. 205

206

BIBLIOGRAPHIE

[15] V. Ditkin and A. P. Prudnikov. Formulaire pour le calcul oprationnel. Masson et Cie., 1967. [16] P. Faurre. Navigation inertielle et ltrage stochastique. Mthodes mathmatiques de linformatique. Dunod, 1971. [17] F.R. Gantmacher. Thorie des Matrices : tome 1. Dunod, Paris, 1966. [18] F.R. Gantmacher. Thorie des Matrices : tome 2. Dunod, Paris, 1966. [19] J.P. Gauthier and I. Kupka. Deterministic Observation Theory and Applications. Cambridge University Press, 2001. [20] C. Godbillon. Gomtrie direntielle et mcanique analytique. Hermann, Paris, 1969. [21] K. Gu, V. L. Kharitonov, and J. Chen. Stability of time-delay systems. Birkhuser, 2003. [22] J. Guckenheimer and P. Holmes. Nonlinear Oscillations, Dynamical Systems and Bifurcations of Vector Fields. Springer, New York, 1983. [23] J. K. Hale and S. M. Verduyn Lunel. Introduction to functional dierential equations. Springer-Verlag, 1993. [24] S. Haroche. Contrle de la dcohrence : thorie et expriences, 2004. Notes de cours, Collge de France. http ://www.lkb.ens.fr/recherche/qedcav/college/college.html. [25] P. Hartman. Ordinary Dierential Equations. Birkuser, Boston, 1982. [26] M.W. Hirsch and S. Smale. Dierential Equations, Dynamical Systems and Linear Algebra. Acamedic Press : New-York, 1974. [27] H. Huang and J. B. Riggs. Comparison of PI and MPC for control of a gas recovery unit. Journal of Process Control, 12 :163173, 2002. [28] T. Kailath. Linear Systems. Prentice-Hall, Englewood Clis, NJ, 1980. [29] R. E. Kalman and R. S. Bucy. New results in linear ltering and prediction problems. ASME Journal of Basic Engineering, pages 95108, 1961. [30] H.K. Khalil. Nonlinear Systems. MacMillan, 1992. [31] M. Krsti, I. Kanellakopoulos, and P.V. Kokotovic. Nonlinear and Adaptive Control Design. J. Wiley, New-York, 1995. [32] O. Latte. Distributions et applications. Cours et exercices, cole Nationale Suprieure des Mines de Paris, 2005. [33] C. Lanczos. Linear Dierential Operators. Dover Publications, 1997. [34] Y. Lee, S. Park, M. Lee, and C. Brosilow. PID controller for desired closed-loop responses for SI/SO systems. AIChE Journal, Vol. 44(No. 1) :pp. 106115, 1998.

BIBLIOGRAPHIE

207

[35] W. S. Levine. The Control Handbook. CRC Press and IEEE Press, 1996. [36] W. Lohmiler and J.J.E. Slotine. On contraction analysis of nonlinear systems. Automatica, 34 :683696, 1998. [37] F. Maisonneuve. Calcul direntiel. Cours et exercices, cole Nationale Suprieure des Mines de Paris, 2005. [38] F. Maisonneuve. Calcul intgral. Cours et exercices, cole Nationale Suprieure des Mines de Paris, 2005. [39] F. Maisonneuve. Fonctions dune variable complexe. Cours et exercices, cole Nationale Suprieure des Mines de Paris, 2005. [40] Ph. Martin, R. Murray, and P. Rouchon. equivalence and trajectory generation, 2003. http ://www.cds.caltech.edu/reports/. Flat systems, Technical Report

[41] D. Q. Mayne, J. B. Rawlings, C. V. Rao, and P. O. M. Scokaert. Constrained model predictive control : stability and optimality. Automatica, 36 :789814, 2000. [42] N. E. Nahi. Estimation theory and applications. John Wiley & Sons, Inc., 1969. [43] Z. J. Palmor. Stability properties of Smith dead-time compensator controller. Int. J. Control, 32(6) :937949, 1980. [44] N. Petit. Optimisation. Notes de cours, cole Nationale Suprieure des Mines de Paris, 2004. [45] J. Richalet. Pratique de la commande prdictive. Adersa, Herms, 1993. [46] L. O. Santos, P. A. F. N. A. Alfonso, J. A. A. M. Castro, and N. M. C. Oliveira. On-line implementation of nonlinear mpc : an experimental case study. Control Engineering Practice, 9 :847857, 2001. [47] R. Sepulchre, M. Jankovi, and P. Kokotovi. Constructive nonlinear control. Springer Verlag, 1997. [48] G. J. Silva, A. Datta, and S. P. Bhattacharyya. PID controllers for time-delay systems. Birkhuser, 2005. [49] S. Skogestad. Dynamics and control of distillation columns : a critical survey. Modeling, Identication and Control, 18 :177217, 1997. [50] O.J.M. Smith. Closer control of loops with dead time. Chemical Engineering Progress, 53(5) :217219, 1958. [51] E. Sontag. Mathematical Control Theory. Springer Verlag, 1990. [52] A. Tikhonov, A. Vasileva, and A. Sveshnikov. Dierential Equations. Springer, New York, 1980.

208

BIBLIOGRAPHIE

[53] K. Yosida. Operational Calculus. Springer, Berlin, 1999. [54] J. G. Ziegler and N. B. Nichols. Optimum settings for automatic controllers. Trans. A.S.M.E., Vol. 64 :pp. 759765, 1942. Available from www.driedger.ca. [55] J. G. Ziegler and N. B. Nichols. Process lags in automatic-control circuits. Transp. A.S.M.E., Vol. 65 :pp. 433444, 1943.