Commande des systèmes linéaires à plusieurs entrées

  • Upload
    abdel77

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    1/47

    Commande des systmes linaires plusieurs entres.

    F. RotellaEcole Nationale dIngnieurs de Tarbes

    [email protected]

    Table des matires

    1 Introduction 3

    2 Modlisation 4

    2.1 Linarisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.1.1 Autour dun point de fonctionnement . . . . . . . . . . . . . . . . . . . . . . . 52.1.2 Le long dune trajectoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    2.2 Modles linaires : notion doprateur de transfert . . . . . . . . . . . . . . . . . . . . 7

    3 Modles 8

    3.1 La forme diffrentielle entre-sortie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.2 La matrice transfert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.3 Lquation dtat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.4 Modles bloqus-chantillonns des systmes linaires . . . . . . . . . . . . . . . . . . 11

    4 Passage entre modles 12

    4.1 Ralisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.1.1 L inversible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.1.2 L non inversible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    4.2 Factorisation de la matrice transfert . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    5 Commande par retour dtat 17

    5.1 Structure dun systme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195.2 Placement de ples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.3 Placement de structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    6 Autre forme de placement de ples 24

    6.1 Par platitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256.2 Par commande LQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    7 Retour de sortie 26

    A Exemples de modles de systmes 27

    A.1 Modle dun sous-marin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27A.1.1 Modlisations du comportement . . . . . . . . . . . . . . . . . . . . . . . . . . 27A.1.2 Modle dtat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28A.1.3 Modle transfert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    1

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    2/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    A.2 Avion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29A.3 Turbo-gnrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29A.4 Vhicule tlcommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    B Forme de Smith des matrices 30B.1 Cas des matrices constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30B.2 Cas des matrices polynomiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    C Formes canoniques dune quation dtat 33

    C.1 Forme canonique commandable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33C.2 Forme canonique observable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    D Forme de Jordan dune matrice 37

    E Cas des systmes mono-entre 38

    E.1 Forme canonique mono-entre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39E.2 Formule de Bass et Gura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40E.3 Formule de Ackermann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41E.4 Formule de Mayne-Murdoch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41E.5 Application aux gains dyadiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    F Dcomposition en valeurs singulires 42

    F.1 Dcomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42F.2 Valeurs singulires extrmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44F.3 Application la rsolution dun systme linaire . . . . . . . . . . . . . . . . . . . . . 44F.4 Conditionnement dune matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    Rfrences 46

    2

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    3/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    1 Introduction

    Lorsque lon envisage la commande dun systme, la premire tape consiste le modliser.Modliser un systme cela peut consister , dune part, laborer un objet mathmatique qui permette

    de dcrire et prdire le comportement dynamique du systme lorsque ce dernier est soumis desinfluences externes. Ou bien, dautre part, cela peut consister laborer un objet mathmatique quipermette dappliquer des mthodes pour amliorer son comportement dynamique. On doit donc icidistinguer la modlisation pour lanalyse, qui demande la construction de modles prcis et souventcomplexes, et la modlisation pour la synthse qui va demander des modles exploitables par desmthodes disponibles. De faon gnrale, ces deux points de vue ne conduisent pas forcment aumme objet mathmatique et comme cest le deuxime point de vue que lon va privilgier ici et quelon possde un arsenal de techniques et de mthodes bas sur le formalisme matriciel, on focaliserala modlisation sur les modles linaires coefficients constants. Avant de poursuivre arrtons-noussur les deux termes importants que nous avons utiliss de faon intuitive :

    Systme : un systme est un ensemble de pices, dobjets ou dentits qui ralise une oprationspcifique. Il y a donc une notion daction sur lenvironnement en fonction dexcitations ext-rieures :

    -

    -

    -

    -

    -

    -

    -

    -

    ? ? ? ?

    SYSTMEe(t) s(t)entres

    consignescommandes

    sortieseffets

    mesures

    perturbationsbruits

    d(t)

    Un systme est ainsi dfini par ses entres et ses sorties qui le relient lenvironnement extrieur.

    Comportement dynamique : cest le comportement des variables de sortie du systme au cours

    du temps relativement lvolution des variables dentres. Ce comportement est distinguer ducomportement statique o les variables de sorties reproduisent, un gain prs, le comportementdes variables dentre.Le comportement dynamique met en vidence le fonctionnement temporel du systme ainsi quela transformation dinformation implique par son action.

    Suivant ce que lon connait du systme, on peut construire deux types de modles : un modlede connaissance o apparaissent les quations de fonctionnement du systme ainsi que des variablesinternes ; un modle de comportement qui tablit des relations entres les entres et les sorties dusystmes partir dexpriences et du comportement observ du systme en rponse des entresfixes ou tout au moins connues. Alors que lobtention du premier type de modle relve plutt

    de la modlisation, lobtention du deuxime type fait appel lidentification dun systme et danschacun des cas nous ne nous poserons pas la question de savoir si les paramtres des modles sontconnus, nous le supposerons toujours implicitement. Dans tous les cas, lorsque des paramtres dunmodle sont inconnus, il y a lieu de procder une identification paramtrique [32], et ceci sur lun

    3

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    4/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    ou lautre des types de modles. On voit donc que la diffrence entre modles de connaissance et decomportement est souvent tnue et quil sagit essentiellement dobtenir un modle mathmatiquepermettant de simuler et danalyser un systme existant ou crer. En ce qui nous concerne ici, laclasse de modles qui nous permettra de concevoir une commande adquate est celle des modles

    linaires et dans un premier temps nous verrons comment, partir des quations de fonctionnementdu systme, on peut les obtenir.

    Nous verrons ensuite quil existe trois reprsentations possibles pour un systme linaire parmilesquelles nous utiliserons plus particulirement la reprsentation dtat. Comme cette reprsenta-tion nest pas souvent celle obtenue immdiatement, il sera ncessaire dtudier les mthodes quipermettent de passer de lune lautre.

    La commande que nous allons dtailler ici sera base sur la notion de retour dtat et aura pourprincipal objectif de dplacer la structure du systme, cette structure tant compose des vecteurspropres et valeurs propres associs la reprsentation dtat. Le placement des valeurs proprespermet de rgler les ples ou dynamiques du systme boucl, donc permet den rgler la stabilit

    ou la rapidit. Contrairement au cas des systmes mono-entre, nous allons voir quil existe, dansle cas des systmes multi-entre, des paramtres de rglage inutiliss. Ceux-ci peuvent tre utilisspour agir sur les vecteurs propres dont nous verrons lintrt plus loin. Nous verrons galement dansquelle conditions un retour de sortie sera envisageable.

    2 Modlisation

    Lutilisation des lois de la physique qui rgissent ou dcrivent le comportement dun systmeont linconvnient dtre non linaires. Il suffit par exemple de songer au phnomne de saturationprsent dans tout actionneur ou capteur. Rappelons quun fonctionnement est non linaire lorsque

    la multiplication de lentre par une constante arbitraire ne conduit pas une volution de la sortiedans la mme proportion et quune fonction f(x) est linaire lorsquelle scrit f(x) = Ax, o Aest une matrice constante. Bien quil existe des mthodes de synthse propres aux systmes nonlinaires [14], celles-ci sont lourdes mettre en uvre, sont bien souvent des extensions des mthodesdveloppes dans le cas des systmes linaires et se pose le difficile problme de lobservation desvariables internes. Cest la raison pour laquelle ce que nous allons dvelopper ici le sera dans le cadredes systmes linaires et bien sr la premire tape va donc tre lobtention dun modle linaire partir des quations de fonctionnement du systme.

    2.1 Linarisation

    Considrons un processus dcrit par les quations non linaires :

    (x(t), x(t), u(t)) = 0,(y(t), x(t), u(t)) = 0,

    (1)

    o u(t), y(t) et x(t) reprsentent respectivement les variables dentre, de sortie et les variablesinternes du processus. Linariser ce systme consiste en chercher un modle qui localement vrifiela proprit de linarit :

    si u1(t) donne y1(t) et u2(t) donne y2(t)alors

    si u1(t) + u2(t) donne y1(t) + y2(t).

    Pour y parvenir, nous allons considrer le systme autour dun quilibre, qui peut tre constantou pas. Dans le premier cas il sagira dun point de fonctionnement et dans le deuxime, nous

    4

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    5/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    envisagerons une trajectoire. Mais ce qui est important, cest que nous allons considrer des variationsautour de cet quilibre. Le modle linaire obtenu ne sera donc pas entre les variables initiales maisentre les carts de ces variables.

    2.1.1 Autour dun point de fonctionnement

    Soit y = f(x, z) une fonction non linaire algbrique alors autour du point dquilibre (xe, ye, ze)dfini par :

    ye = f(xe, ze)

    on a la srie de Taylor :

    y = f(xe, ze) +

    f(x, z)

    x

    xe,ze

    (x xe) +

    f(x, z)

    z

    xe,ze

    (z ze) +

    Tronque aprs les termes du premier ordre, on a entre les variables dcart :

    x = x xe,y = y ye,z = z ze,

    la loi linarise :

    y =

    f(x, z)

    x

    xe,ze

    x +

    f(x, z)

    z

    xe,ze

    z.

    Nous allons appliquer ce principe sur le systme (1), pour lequel un point dquilibre constantE = (ye, xe, ue) est dfini par xe = 0 et :

    (0, xe, ue) = 0,(ye, xe, ue) = 0.

    Lutilisation de variables dcart :

    x = x xe,y = y ye,u = u ue,

    et un dveloppemment limit au premier ordre de (1) donne :

    (x(t), x(t), u(t)) | {z } 0

    = (0, xe, ue) | { z } 0

    + (,,) Ex(t)+(,,)

    E

    x(t) +

    (,,)

    E

    u(t),

    (y(t), x(t), u(t)) | {z } 0

    = (ye, xe, ue) | { z } 0

    +

    (,,)

    E

    y(t)+

    (,,)

    E

    x(t) +

    (,,)

    E

    u(t).

    Comme

    x(t) =

    dx(t)

    dt , lorsque h(,,) iE et h(,,) iE sont rgulires, on obtient lquationlinarise autour du point de fonctionnement :x(t) = Ax(t) + Bu(t),y(t) = Cx(t) + Du(t).

    5

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    6/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    avec :

    A =

    (,,)

    1E

    (,,)

    E

    , B =

    (,,)

    1E

    (,,)

    E

    ,

    C = (,,)

    1E

    (,,)

    E

    , D = (,,)

    1E

    (,,)

    E

    .

    Cette relation est appele quation dtat car elle ne fait apparatre que des drives dordre 1.A titre dexemple considrons le pendule simple de moment dinertie I, de masse M et de longueur

    L. La modlisation et la linarisation passe par les tapes suivantes :

    1. Dfinition du systme : lentre est le couple sur larticulation et la sortie langle par rapport la verticale .

    2. Loi de fonctionnement : I + MgL sin = .

    3. Position dquilibre statique : (e,e) d

    fi

    ni par MgL sin e =e.

    4. Variables dcarts : = e, = e.5. Srie de Taylor tronque au premier ordre : sin = sin e + (cos e).

    6. Comme e = e = 0, on a = () et = ()

    7. Systme linaris :I () + MgL(cos e) =

    ayant comme entre et comme sortie qui sont des variations autour du point de fonction-nement.

    Pour prparer ce qui va suivre, on peut envisager deux types deux modles linaires partir dici : par introduction dun codage de loprateur de drivation, p ,

    ddt

    , ce qui donne :

    Ip2 + MgL(cos e)

    =

    et conduit un modle linaire qui explique lvolution de en fonction de celle de par = F(p) sous la forme du transfert :

    F(p) =1

    [Ip2 + MgL(cos e)];

    par introduction de lidentit = d()

    dt, on obtient lquation dtat :

    x(t) =

    "0 1

    MgL(cos e)I

    0

    #x(t) +

    "01

    I

    #u(t),

    y(t) =

    1 0

    x(t),

    o u(t) = , y(t) = et x(t) =

    .

    6

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    7/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    2.1.2 Le long dune trajectoire

    Si on considre Td(t) = (yd(t), xd(t), ud(t)) une trajectoire du systme vrifiant les quations (1).A partir des variables dcart :

    u(t) = ud(t) u(t),y(t) = yd(t) y(t),x(t) = xd(t) x(t),

    un dveloppement limit au premier ordre de (1) conduit aux quations linarises :

    (x(t), x(t), u(t)) | {z } 0

    = (xd(t), xd(t), ud(t)) | {z } 0

    +

    (,,)

    Td(t)

    x(t)+

    (,,)

    Td(t)

    x(t) +

    (,,)

    Td(t)

    u(t),

    (y(t), x(t), u(t)) | {z } 0

    = (yd(t), xd(t), ud(t)) | {z } 0

    +(,,)

    Td(t)

    y(t)+

    (,,)

    Td(t)

    x(t) +

    (,,)

    Td(t)

    u(t).

    Sur tout intervalle [t0, tF] oh(,,)

    iTd(t)

    eth(,,)

    iTd(t)

    sont rgulires on obtient le modle

    linaris sous la forme :x(t) = A(t)x(t) + B(t)u(t),y(t) = C(t)x(t) + D(t)u(t).

    avec :

    A(t) =

    (,,)

    1Td(t)

    (,,)

    Td(t)

    , B(t) =

    (,,)

    1Td(t)

    (,,)

    Td(t)

    ,

    C(t) =

    (,,)

    1Td(t)

    (,,)

    Td(t)

    , D(t) =

    (,,)

    1Td(t)

    (,,)

    Td(t)

    .

    On a obtenu une quation dtat linaire, mais qui nest pas coefficients constants. Bien que nousne la considrerons pas dans la suite, on peut adapter ce type de modlisations les mthodes quenous allons dtailler. Pour plus de dtails on pourra se rferer [28] et dornavant nous entendrons

    par systmes linaires les systmes linaires coefficients constants.

    2.2 Modles linaires : notion doprateur de transfert

    Nous avons vu, en particulier sur lexemple prcdent, que la linarisation conduisait des qua-tions diffrentielles linaires, qui de faon gnrale scrivent :

    s(n)(t) + an1s(n1)(t) + an2s

    (n2)(t) + + a1s(1)(t) + a0s(t) =

    bme(m)(t) + bm1e

    (m1)(t) + + b1e(1)(t) + b0e(t).

    Lutilisation du codage de loprateur de drivation par p , ddt :

    px(t) =dx(t)

    dt= x(t) = x(1)(t),

    7

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    8/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    conduit la notion de transfert traduisant lquation diffrentielle. Soit :pn + an1p

    n1 + an2pn2 + + a1p + a0

    s(t) =

    bmp

    m + bm1pm1 + + b1p + b0

    e(t),

    ce qui donne le transfert reprsentant le systme linaris :

    F(p) =bmp

    m + bm1pm1 + + b1p + b0

    pn + an1pn1 + an2pn2 + + a1p + a0,

    et lon pourra crire :s(t) = F(p)e(t).

    Cette criture, qui permet une manipulation simple des transferts, sera gnralise dans le casmulti-entres multi-sorties par la notion de matrice de transfert. Mais ce quil ne faudra pas perdrede vue cest quassoci tout oprateur de transfert existe un ensemble dquations diffrentielles coefficients constants.

    3 Modles

    Dans le cadre des modles linaires nous allons rencontrer essentiellement 3 types de modles :la forme diffrentielle entre-sortie, la matrice transfert et lquation dtat. Aprs avoir rapidementrappel leurs caractristiques nous regarderons comment passer de lun lautre.

    3.1 La forme diffrentielle entre-sortie

    Lorsque lon crit les quations de fonctionnement du systme on obtient un ensemble de relationsalgbriques et diffrentielles qui relient les variables dentres, regroupes dans le vecteur u(t) dedimension m, les variables de sorties, regroupes dans le vecteur y(t) de dimension l, et des variablesinternes.

    Aprs limination des variables internes, ce qui peut se faire par lutilisation de la mthode desgraphes de fluence, on obtient des relations algbriques et diffrentielles qui lient les sorties auxentres. Sous une forme matricielle, cela se prsente sous la forme :

    Ly()(t) + L1y

    (1)(t) + + L1y(1)(t) + L0y(t) =

    Mu()(t) + M1u

    (1)(t) + + M1u(1)(t) + M0u(t).

    Dans cette relation, les matrices Li et Mj sont des matrices constantes de tailles adaptes auxdimensions de y(t) et u(t), cest--dire avec respectivement l et m colonnes. En considrant p, lop-rateur de drivation, la forme diffrentielle peut scrire :

    L(p)y(t) = M(p)u(t), (2)

    o L(p) et M(p) sont deux matrices polynomiales dfinies par :

    L(p) = Lp + L1p

    1 + + L1p + L0,

    M(p) = Mp + M1p

    1 + + M1p + M0.

    On saperoit ici que la forme diffrentielle entre-sortie est le modle ARX ou modle de prdic-tion donn par les mthodes didentification. Lorsque lon intgre un bruit de modlisation on obtientun modle ARMAX.

    8

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    9/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    En ce qui concerne le nombre de lignes, il faut quil soit gal au nombre de sorties, sinon une dessorties dpend des autres. En effet, soit k le nombre de lignes dans la relation (2), alors en prenantla forme de Smith de L(p) (cf. annexe B) :

    L(p) = W(p)S(p)V(p),

    o S(p) = diag {s1(p), . . . , sr(p), 0, . . . , 0} est une matrice (k l) avec r = rang L(p) et U(p) et W(p)sont deux matrices inversibles. En posant Y(t) = V(p)y(t) et U(t) = W1(p)M(p)u(t), on est doncramen :

    diag{s1(p), . . . , sr(p), 0, . . . , 0}Y(t) = U(t),

    qui indique quil ny a que r sorties compltement indpendantes. De plus, pour viter des contraintesde dpendance entre les entres il est ncessaire que les kr dernires lignes de la matrice W1(p)M(p)soient nulles. En rsum, on a obtenu un systme multi-entres multi-sorties r entres et r sorties.Ainsi de faon viter le cas des systmes suractionns (m > l) ou sous actionns (m < l), nousprendrons toujours l = m et les matrices Li et Mj seront donc de taille (m m).

    3.2 La matrice transfert

    Dans le cadre des systmes linaires, lutilisation de la proprit de superposition permet degnraliser la notion de transfert dfinie pour des systmes mono-entre mono-sortie au cas dessystmes multi-entres multi-sorties. Si on considre la relation entre lentre j et la sortie i sous laforme dun transfert :

    yi(t) =Nij(p)

    Dij(p)uj(t), (3)

    alors par superposition, on obtient :

    yi(t) =mX

    j=1

    Nij(p)Dij(p)

    uj(t).

    La relation entre u(t) et y(t) sera donne laide de la matrice transfert F(p) sous la forme :

    y(t) = F(p)u(t), (4)

    o F(p) est une matrice dont les coefficient sont des fonctions rationnelles en loprateur p :

    F(p) =

    Nij(p)

    Dij(p)

    .

    Remarques :

    1. En vrit, la relation (3) doit tre lue Dij(p)yi(t) = Nij(p)uj(t), ce qui en prenant les p.p.c.m.i(p) des polynmes Dij(p) :

    i(p) = Qij(p)Dij(p),

    conduit par superposition :

    i(p)yi(t) =mX

    j=1

    Qij(p)Nij(p)uj(t),

    qui conduit bien la formule donnant la matrice transfert.2. Il est vident que lorsque L(p) est inversible dans (2), on a la relation :

    F(p) = L1(p)M(p).

    3. Dans le cas mono-entre mono-sortie il ny a pas lieu de distinguer le transfert de la formediffrentielle.

    9

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    10/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    3.3 Lquation dtat

    Ltat dun modle est lensemble des informations indpendantes ncessaire connatre linstantinitial pour pouvoir prdire le comportement du modle en rponse une entre donne. Construire

    une quation dtat dun modle consiste donc proposer un modle ne faisant intervenir que desquations diffrentielles dordre 1. Dans le cas dun systme linaire coefficients constants, ce seraune quation de la forme :

    x(t) = Ax(t) + Bu(t),y(t) = Cx(t) + Du(t),

    (5)

    o A, B, C et D sont des matrices constantes de dimensions respectives (n n), (n m), (m n)et (m m).

    Lintroduction de ces variables suscite deux questions relativement chacune des relations de (5).La premire concerne linfluence de la commande u(t) sur lvolution de ltat x(t) : est-ce que, pourtout couple x0 = x(t0) et x1 = x(t1), il existe un vecteur de commande u(t) dfini sur lintervalle

    [t0, t1] qui permette de passer de x0 x1? Il sagit du problme de la commandabilit. La deuximequestion concerne la dtermination de lvolution de ltat x(t) partir de la connaissance des sortiesy(t) : est-ce que la connaissance de y(t) sur lintervalle [t0, t1] permet dobtenir la valeur de ltat linstant t0? Il sagit du problme de lobservabilit.

    De nombreux rsultats existent pour qualifier lune ou lautre de ces proprits [3], mais nousnutiliserons, en ce qui nous concerne que le rsutat suivant, appel critre de Kalman :

    le systme (5) est commandable (on dit aussi la paire (A, B) est commandable) si et seulementsi :

    rang

    B AB A2B An1B

    = n;

    le systme (5) est observable (on dit aussi la paire (A, B) est observable) si et seulement si :

    rang

    C

    CA

    CA2

    ...CAn1

    = n.

    Comme on verra que ces deux proprits sont ncessaires, que ce soit pour le placement destructure o il faudra que le systme soit commandable, ou pour la construction dobservateurs[25] o il faudra que le systme soit observable, il sera ncessaire de partir dune reprsentation

    dtat minimale, cest--dire commandable et observable. Cette reprsentation peut tre obtenue enliminant les parties non commandables ou non observables la condition imprative que celles-cisoient asymptotiquement stables.

    Remarques :

    1. Cette reprsentation est galement valable dans le cas des systmes dont les paramtres varientdans le temps et dans ce cas les matrices ont leurs coefficients qui dpendent explicitement dutemps.

    2. Cette forme permet dunifier les systmes mono-entre mono-sortie et multi-entres multi-sorties et ceci sans changer de formalisme. Cest celle que nous prendrons dans la suite.

    3. Le passage de lquation au formalisme transfert est immdiat par utilisation de loprateur de

    drivation p :F(p) = D + C(pI A)1B.

    10

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    11/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    4. Un changement de variables dtat, z = P x, o P est inversible, conduit lquation dtat :

    z(t) = A0z(t) + B0u(t),y(t) = C0z(t) + Du(t),

    o A0 = P AP1, B0 = P B et C0 = CP1. Si lon calcule le transfert correspondant cettequation, on obtient :

    D + C0(pI A0)1B0 = D + CP1(pI P AP1)1P B = F(p),

    qui montre que le transfert est indpendant du choix des variables dtat.

    3.4 Modles bloqus-chantillonns des systmes linaires

    Dans le cas, situation de plus en plus frquente, o la commande dun systme se fait par linter-

    mdiaire dun calculateur, celle-ci peut tre ralis de deux faons :1. Par discrtisation de la commande conue pour le modle diffrentiel linaire du systme. Lal-

    gorithme de commande est donc obtenu par utilisation dapproximations numriques des opra-tions de drivation ou dintgration. Parmi les plus utilises de ces approximations, loprateurp peut tre remplac par :

    lapproximation dEuler : p 1 q1

    hq1;

    lapproximation dEuler rtrograde : p 1 q1

    h;

    lapproximation de Tustin : p 2

    h

    1

    q1

    1 + q1 ,

    o q1 reprsente loprateur de retard (q1xk = xk1) et dans chaque cas le pas de calcul hdoit tre pris aussi petit que possible.

    2. Par construction dun modle discret du systme, le modle bloqu-chantillonn du systme,prenant en compte le fait que la commande du systme est constante entre deux priodesdchantillonnage, i.e. entre [kTe, (k + 1)Te) la commande vaut uk, et le fait que la sortie soitchantillonne, i.e. on ne mesure que yk = y(kTe), o Te est la priode dchantillonnage fixepar le concepteur. Lutilisation du formalisme dtat permet de construire facilement ce modlebloqu-chantillonn [1]. En effet, pour un modle linaire1 continu de la forme :

    x(t) = Ax(t) + Bu(t),y(t) = Cx(t) + Du(t),

    on a :

    x(t) = exp(A(t t0))x0 +Ztt0

    exp(A(t ))Bu()d ,

    o x0 = x(t0). Ainsi dans les conditions dutilisation dun calculateur on obtient, avec xk =x(kTe) et uk = u(kTe), constant sur [kTe, (k + 1)Te), le modle bloqu-chantillonn discretsous forme dtat :

    xk+1 = exp(ATe)xk + hRTe0

    exp(A)diBuk,yk = Cxk + Duk.1Dornavant nous ne mentionnerons plus que les variables sont des variations autour de points de fonctionnement,

    cela sera sous-entendu.

    11

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    12/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Lutilisation de loprateur davance q(qxk = xk+1) conduit directement au transfert F(q) entrelentre uk et la sortie yk, yk = F(q)uk, par la formule :

    F(q) = D + C(qI

    exp(ATe))1Z

    Te

    0

    exp(A)dB.Pour simplifier, et parce que les interprtations sont plus immdiates dans le cas continu, nous ne

    nous intresserons qu ce cas, mais toutes les mthodes que nous allons dvelopper dans le cas continupeuvent tre utilises ou transposes, mutatis mutandis, dans le formalisme des systmes discrets cequi conduit directement aux algorithmes de commande mettre en uvre sur le calculateur. Pourplus de dtails sur les choix prendre dans un tel contexte, on pourra se rfrer [1].

    Dans le cas des systmes multi-entres, une forme plus gnrale peut tre envisage lorsqueles priodes dchantillonnages-blocages sont diffrentes pour chaque canal dentre. Cette situationintervient par exemple lorsque des calculateurs diffrents doivent grer un systme complexe. Nousnen parlerons pas ici, mais lorsque toutes les priodes dchantillonnage sont toutes multiples entiresdune priode commune Te, le formalisme dtat permet de traiter ce mode de commande avec lesmmes mthodes que dans le cas mono-cadenc.

    4 Passage entre modles

    Lorsque lon conoit un systme de commande on peut avoir besoin dutiliser lun ou lautre deces modles. En effet :

    partir du systme, les premiers modles que lon obtient sont la forme diffrentielle entre-sortie ou la matrice transfert dans le cas o on procde aux identifications pour chaque paire

    (entre uj, sortie yi); comme les deux grandes classes de mthodes de conception de commandes sont bases surlquation dtat (cest elle que nous tudierons) ou sur la matrice transfert, il y a lieu de passerde la matrice transfert ces deux reprsentations.

    De faon ne pas alourdir le nombre de parties nous regarderons dans un premier temps lepassage de la matrice transfert la forme diffrentielle partir de la notion de la forme de Smith-McMillan. Dans un deuxime temps nous regarderons le passage de la forme diffrentielle lquationdtat. Cette dernire opration sappelle une ralisation

    4.1 Ralisation

    Il sagit de passer de la paire (L(p), M(p)) de la relation (2) au quadruplet de matrices (A,B,C,D)de la relation (5). Pour ce faire, nous allons distinguer 2 cas suivants que L est inversible ou non.Pour simplifier les expressions, quite rajouter des matrices nulles, nous supposerons que = .

    4.1.1 L inversible

    Premire tape.En multipliant gauche toutes les matrices par L1 , on transforme (2) en :

    L0(p)y(t) = M0(p)u(t), (6)

    o, en posant L0i = L1 Li et M0i = L1 Mi :

    L0(p) = p + L01p1 + + L01p + L

    00,

    M0(p) = M0p + M01p

    1 + + M01p + M00.

    12

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    13/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Deuxime tape.En multipliant (6) par p, on peut crire :

    y(t) = M0u(t) + M01p

    1u(t) + + M01p+1u(t) + M00p

    u(t)

    L01p1y(t) L01p+1y(t) L00py(t),que lon met sous la forme :

    y(t) = M0u(t) +p1

    M01u(t) L01y(t) +p1

    M01u(t) L01y(t)+p1

    +p1

    M01u(t) L01y(t) +p1 [M00u(t) L00y(t)]

    .

    Troisime tape.On introduit les vecteurs x1(t), . . . , x(t) et on dcompose la relation prcdente sous la forme :

    x1(t) = p1 [M00u(t)

    L00y(t)] ,

    x2(t) = p1 [M01u(t) L01y(t) + x1(t)] ,

    x3(t) = p1 [M02u(t) L02y(t) + x2(t)] ,

    ...

    x1(t) = p1

    M02u(t) L02y(t) + x2(t)

    ,

    x(t) = p1

    M01u(t) L01y(t) + x1(t)

    ,

    y(t) = M0u(t) + x(t).

    Quatrime tape.En liminant y(t) et en multipliant les premires relations par p, on obtient :

    x1(t) = M000 u(t) L00x(t),

    x2(t) = M001 u(t) L01x(t) + x1(t),

    x3(t) = M002 u(t) L02x(t) + x2(t),

    ...

    x1(t) = M002u(t) L02x(t) + x2(t),

    x(t) = M001u(t) L01x(t) + x1(t),

    y(t) = M0u(t) + x(t),

    o :M00i = M

    0i L0iM0.

    Cinquime tape.Pour le vecteur tat :

    X(t) =

    x1(t)x2(t)

    ...x1(t)

    x(t)

    ,

    13

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    14/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    on obtient la ralisation :

    A =

    0 0 L00Il

    . . .... L01

    0 . . . . . . ... ......

    . . . Il 0 L020 0 Il L01

    , B =

    M000M001

    ...M002M001

    ,

    C =

    0 0 Il

    , D = M0.

    Remarques : cette ralisation nest pas unique, mais toutes les ralisations sont relies par similitude ; la dimension du vecteur dtat donne lordre du systme. On voit que lorsque L est inversible,

    cet ordre est n = m.

    4.1.2 L non inversible

    Dans le cas, la procdure prcdente ne peut tre applique et nous allons voir que lon est conduit un systme dordre plus petit que l.Premire tape.

    On construit la forme de Smith de la matrice L (cf. annexe B) :

    L = P

    I 00 0

    Q,

    o P et Q sont deux matrices constantes inversibles et = rang L.

    Remarque : P et Q ne sont pas uniques et des mthodes de construction de cette dcompositionsont la factorisation de rang maximum ou la dcomposition en valeurs singulires [29].Deuxime tape.

    Soit le nouveau vecteur de sortie :z(t) = P y(t),

    alors en multipliant droite, les matrices Li, par Q1 et, gauche toutes les matrices par P1, ontransforme (2) en :

    L0(p)z(t) = M0(p)u(t), (7)

    o, en posant L0i = P1LiQ

    1 et M0i = P1Mi :

    L0(p) = I 0

    0 0

    p + L01p

    1 + + L01p + L00,

    M0(p) = M0p + M01p

    1 + + M01p + M00.

    Troisime tape.On dcompose z(t) sous la forme :

    z(t) =

    z1(t)z2(t)

    ,

    o z1(t) regroupe les premires composantes de z(t). Cela permet de dcomposer (7) en deux

    sous-systmes :

    (1) : L011(p)z1(t) + L

    012(p)z2(t) = M

    01(p)u(t),

    (2) : L021(p)z1(t) + L

    022(p)z2(t) = M

    02(p)u(t),

    14

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    15/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    o L012(p), L021(p) et L

    022(p) sont des matrices polynomiales de degr 1 et L011(p) est une matrice

    polynomiale dont le terme de plus haut degr scrit Ip.Quatrime tape.

    En considrant z2(t) comme une entre auxilliaire, on va raliser, le sous-systme (1) crit sous

    la forme :L011(p)z1(t) = M

    001 (p)U(t),

    o :

    U(t) =

    u(t)z2(t)

    , M001 (p) =

    M01(p) L012(p)

    En appliquant la technique dcrite dans la partie prcdente, on obtient lquation dtat :

    X1(t) = A1X1(t) + B1u(t) + F1z2(t),z1(t) = C1X1(t) + G1u(t) + H1z2(t),

    (8)

    o dim X1 = .Cinquime tape.Le terme L021(p)z1(t) qui apparat dans (2) est une combinaison linaire de z1(t) et de toutes ses

    drives jusqu lordre 1. Or daprs ltape prcdente, on a :

    z1(t) = C1X1(t) + G1u(t) + H1z2(t),

    z1(t) = C1(A1X1(t) + B1u(t) + F1z2(t)) + G1u(t) + H1z2(t),

    = C11X1(t) + G11(p)u(t) + H

    11 (p)z2(t),

    z1(t) = C11(A1X1(t) + B1u(t) + F1z2(t)) + G

    11(p)u(t) + H

    11 (p)z2(t),

    = C21X1(t) + G21(p)u(t) + H

    21 (p)z2(t),

    ...

    Ainsi, par itrations successives, on peut construire les expressions gnerales :

    i, z(i)1 (t) = Ci1X1(t) + Gi1(p)u(t) + Hi1(p)z2(t),

    o les matrices Ci1 sont des matrices constantes et les matrices Gi1(p) et H

    i1(p) sont des matrices

    polynomiales dordre i. Ainsi, on peut crire :

    L021(p)z1(t) = C12X1(t) + G12(p)u(t) + H12(p)z2(t),

    o C12 est une matrice constante et les matrices G12(p) et H12(p) sont des matrices polynomiales dedegr 1. En injectant cette expression dans le modle de (2), celui-ci scrit :

    L0022(p)z2(t) = M002 (p)u(t) C12X1(t), (9)

    o :L0022(p) = L

    022(p) + H12(p), M

    002 (p) = M

    02(p) G12(p).

    Sixime tape.Si le coefficient matriciel de degr 1 de L0022(p) est inversible, en appliquant la technique dcrite

    dans la partie prcdente, on obtient la ralisation de (9) sous la forme de lquation dtat :

    X2(t) = A2X2(t) + B2u(t) + F2X1(t),z2(t) = C2X2(t) + G2u(t) + H2X1(t),

    (10)

    o dim X2 = (m )( 1).

    15

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    16/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Remarque : sauf dans le cas o les matrices L0022(p) et M002 (p) sont des matrices constantes, la

    matrice H2 est nulle.Dans le cas o le coefficient matriciel de degr 1 de L0022(p) nest pas inversible, on applique

    de nouveau la dmarche dans le cas o L est non inversible sur (9). Cela conduit de nouvelles

    dcompositions, mais on est sr que le nombre ditrations ncessaires est fini, cest--dire que leprocessus de ralisation se termine toujours.Septime tape.

    On suppose ici que la ralisation de (2) est (10). En la regroupant avec la ralisation (8), onobtient la ralisation dfinie par ltat :

    X(t) =

    X1(t)X2(t)

    ,

    et les matrices constantes :

    A = A1 + F1H2 F1C2F2 A2 , B = B1 + F1G2B2 ,C = Q1

    C1 + H1H2 H1C2H2 C2

    , D = Q1

    G1 + H1G2G2

    .

    Lordre du systme obtenu est alors m( 1) + , et, de faon comparer avec le cas prcdent,on a m m( 1) = m 0.

    4.2 Factorisation de la matrice transfert

    Il sagit ici de transformer une matrice transfert (4) en un modle ARX (2). Pour raliser cetteopration, on suppose que tous les coefficients de F(p) sont irrductibles et on considre le polynme(p), p.p.c.m. des dnominateurs Dij(p), pour crire F(p) sous la forme :

    F(p) =1

    (p)N(p),

    o N(p) est une matrice polynomiale. Soit la dcomposition de Smith de N(p) (cf. annexe B) :

    N(p) = U(p)S(p)V(p),

    o : U(p) et V(p) sont deux matrices (m m) polynomiales unimodulaires, cest--dire dont les

    dterminants sont des constantes non nulles ;

    S(p), forme de Smith de N(p), est une matrice (m m) diagonale :S(p) = diag {s1(p), s2(p), . . . , sr(p), 0, . . . , 0} ,

    o les si(p) sont des polynmes et chacun de ces polynmes sont divisibles sans reste par leprcdent.

    Cela conduit la forme de Smith-Mc Millan de F(p) :

    M(p) =S(p)

    (p)= diag

    s1(p)

    (p),

    s2(p)

    (p), . . . ,

    sr(p)

    (p), 0, . . . , 0

    ,

    = diag1(p)

    1(p)

    ,2(p)

    2(p)

    , . . . ,r(p)

    r(p)

    , 0, . . . , 0 ,o les fractions

    i(p)

    i(p)sont irrductibles. Comme les si(p) sont divisibles sans reste par le prcdent,

    on a les proprits, pour i = 2 r :

    16

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    17/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    i(p) divise sans reste i1(p); i1(p) divise sans reste i(p); 1(p) = (p).Remarques :

    les racines des numrateurs sappellent les zros de F(p); les racines des dnominateurs sappellent des ples de F(p).La factorisation de M(p) peut tre envisage de deux faons :

    M(p) = [diag {1(p), 2(p), . . . , r(p), 1, . . . , 1}]1 diag {1(p), 2(p), . . . , r(p), 0, . . . , 0} ,

    M(p) = diag {1(p), 2(p), . . . , r(p), 0, . . . , 0} [diag {1(p), 2(p), . . . , r(p), 1, . . . , 1}]1

    .

    A partir de la premire factorisation, on obtient la forme diffrentielle entre-sortie :

    F(p) = D1G (p)NG(p),

    o :DG(p) = diag {1(p), 2(p), . . . , r(p), 1, . . . , 1} U

    1(p),

    NG(p) = diag {1(p), 2(p), . . . , r(p), 0, . . . , 0} V(p),

    car U1(p) est une matrice polynomiale.Remarque : lorsque lon exploite la deuxime factorisation, on obtient :

    F(p) = ND(p)D1D (p),

    o :

    DD(p) = V1(p)diag {1(p), 2(p), . . . , r(p), 1, . . . , 1} ,ND(p) = U(p)diag {1(p), 2(p), . . . , r(p), 0, . . . , 0} .

    Cette forme conduit la relation :

    y(t) = ND(p)D1D (p)u(t),

    et conduit introduire un vecteur (t), appel tat partiel, dfini par :

    DD(p)(t) = u(t),y(t) = ND(p)(t).

    (11)

    5 Commande par retour dtat

    La commande par retour dtat consiste considrer le modle du processus sous la forme dunequation dtat2 :

    x(t) = Ax(t) + Bu(t),y(t) = Cx(t),

    (12)

    o u(t) est le vecteur de commande de dimension m, x(t), le vecteur dtat, de dimension n, et y(t)le vecteur de sortie de dimension m et faire un bouclage de la forme :

    u = F r(t) Kx(t), (13)2Suivant ce que nous avons dit prcdemment, nous ne considrerons que les systmes ayant autant dentres que

    de sorties, et le cas dun systme o la sortie comporte une transmission directe, de la forme y(t) = Cx(t) + Du(t),sera trait en considrant la nouvelle sortie y(t) Du(t).

    17

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    18/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    o F et K sont des matrices constantes de dimensions convenables et r est la consigne de rfrencede dimension m.

    Le but de la conception dune commande par retour dtat consiste dterminer les matrices Fet K de faon satisfaire certaines spcifications. Nous verrons dans la suite que ces spcifications

    peuvent reposer sur un placement des valeurs propres en boucle ferme, ou sous une forme plusgnrale, sur un placement de structure. On peut galement obtenir ces gains matriciels de bouclageen utilisant des principes de commande optimale. Sans dtailler cette dernire mthode nous enrappelerons les rsultats pour en voir linfluence sur la structure obtenue.

    Toutefois ces mthodes, que nous allons voir dans les parties qui suivent, donnent la matrice K,et le gain F, quon pourrait appeler gain de prbouclage, est calcul a posteriori. En effet, pour ungain K stabilisant le systme en boucle ferme, le bouclage conduit au systme :

    x(t) = (A BK)x(t) + BF r(t),y(t) = Cx(t),

    ce qui pour une rfrence constante r, conduit au gain statique :

    C(BK A)1BF.

    Une faon de dterminer F consiste imposer un gain statique a priori, soit , ce qui donne :

    F =

    C(BK A)1B1 .Dautre part, avant de rentrer dans le vif du sujet, mentionnons un certain nombre de points sur

    la commande par retour dtat.

    1. Comme nous lavons signal dans lintroduction, la commande par retour dtat ncessite laconnaissance de cet tat. Ceci est ralis, partir des mesures accessibles sur les entres et lessorties, par un observateur qui est un systme ddi dont la fonction consiste reconstruire cettat. La forme gnrale dun observateur est :

    z(t) = Nz(t) + Hu(t) + Ey(t),

    x(t) = P z(t) + Mu(t) + V y(t),

    o x(t) est ltat reconstruit. Dans lhypothse de la mise en uvre dune commande par retourdtat, on ralise :

    u = F r(t) Kx(t),ce qui modifie les relations de lobservateur en :

    z(t) = N0z(t) + H0r(t) + E0y(t),

    x(t) = P0z(t) + M0r(t) + V0y(t),

    o :P0 = (I + MK)1P, N0 = N HK P0,

    M0 = (I + MK)1M F, H 0 = HF HK M0,V0 = (I + MK)1V, E0 = E HK V0.

    Les mthodes de conception, cest--dire la dtermination des matrices constantes F, H, E, P,M et V, dun observateur sont dtailles dans [25], pour un systme non bruit, et dans [26],pour un systme prsentant des bruits sur les mesures ou sur les commandes.

    18

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    19/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    2. Le retour peut avoir galement comme objectif de dcoupler leffet des entres sur les sorties. Lesmthodes de dcouplage conduisent souvent des retours dtat dynamiques, par opposition ceux que nous envisagerons ici tels que (13) qui sont des retours dtat statique. Les mthodesde conception des bouclages dcouplants, qui ont lavantage de dcomposer un systme multi-

    entres multi-sorties en plusieurs systmes mono-entre mono-sortie en parallle, sont dtaillesdans [27]. Notons que ces mthodes sont manier avec prcaution car elles peuvent, si on nyprte pas attention, laisser une partie non observable dont il convient de vrifier la stabilit.Lorsque cette partie nest pas stable, il y a lieu de changer, ou la structure du systme ou lessorties considres, mais, comme lindique la commande par platitude [7], si lquation dtatest commandable, on sait quil en existera toujours.

    3. Nous nenvisagerons ici que les systmes linaires paramtres constants, cest--dire issusprincipalement dune linarisation autour dun point de fonctionnement. On peut tendre, dansleur principe, les mthodes que nous allons voir au cas des systmes paramtres variants dansle temps mais au prix dune augmentation de la lourdeur des traitements. Ceci est propos

    dans [28], mais ne sera pas dvelopp ici.4. Une forme rduite de la commande statique par retour dtat, que nous tudierons dans un

    chapitre particulier, est la commande par retour statique de sortie de la forme :

    u(t) = F r(t) Ky(t),

    qui a lavantage de ne pas demander dobservateur mais qui permettra de satisfaire moins decontraintes. En effet, dans le cas mono-entre mono-sortie, K est un scalaire pour un retour desortie, donc on ne dispose que dun paramtre de rglage, alors que le gain dun retour dtatest compos de n paramtres de rglage. Dans le cas o F = K, on obtient un retour statique

    derreur et si lon force une action intgrale cela permet dassurer une boucle ferme avec ungain statique unit.

    5.1 Structure dun systme

    La structure dun systme linaire dfini par lquation dtat (12) repose sur lensemble desmatrices dfinies par la dcomposition de Jordan de la matrice A. Suivant lannexe D, A peut tredcompose sous la forme :

    A = P1JP, (14)

    o J = diag {J1, . . . , J } , Ji est le bloc de Jordan (ni ni) :

    Ji =

    i 1. . . . . .

    . . . 1i

    ,

    et les colonnes de P1 sont constitues par les vecteurs propres et vecteurs propres gnraliss deA. Les i et les ni sont les valeurs propres de A et leur ordre de multiplicit (gomtrique)3, avecbien sr

    Pi=1 ni = n. Lensemble (J, P

    1) constitue la structure du systme. Grce au bouclage parretour dtat, on va chercher obtenir un systme en boucle ferme ayant une structure particulire.

    Comme la dcomposition de Jordan peut scrire galement AP1

    = P1

    J ou P A = JP, lescolonnes de la matrice P1 sont les vecteurs propres et vecteurs propres gnraliss droite et leslignes de la matrice P sont les vecteurs propres et vecteurs propres gnraliss gauche.

    3A ne pas confondre avec lordre de multiplicit algbrique donn par le polynme caractristique.

    19

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    20/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Plaons-nous dans le cas o A est diagonalisable, situation simplifie mais non restrictive car dansle cas o on pourra placer les ples de A BK, on aura intrt les choisir tous distincts. En effet :

    00 + ,est plus proche, lorsque tend vers 0, de

    00

    , que de

    10

    .

    Dans ce cas, en notant P1 = D = [ d1 d2 dn ] et :

    P = G =

    g1g2...

    gn

    ,

    le changement de variables z(t) = Gx(t), soit x(t) = Dz(t), conduit :

    z(t) = Jz(t) + GBu(t),

    y(t) = CDz(t).

    Ainsi, la matrice D indique comment les composantes de z(t), qui sont parfois appeles com-posantes modales ou modes du systme [8], se rpartissent dans le vecteurs dtat x(t), la matriceCD comment elles se rpartissent dans la sortie y(t) et la matrice GB comment les commandesse rpartissent pour influencer lvolution des composantes de z(t). Si on note GBu(t) = v(t) =[ v1(t) vn(t) ], et J = diag {1, . . . , n}, on a :

    pour i = 1 n, zi(t) = eitzi(0) +Zt0

    ei(t)vi() d .

    En utilisant le fait que DG = GD = I, on en dduit que, lorsque les valeurs propres, i, i = 1 n, de A sont toutes distinctes ou si A est diagonalisable, on a :

    F(p) = C(pI A)1B =nX

    i=1

    (Cdi)(giB)

    p i .

    Ces considrations conduisent pouvoir imposer des contraintes structurelles que lon peut obtenirsur le systme en boucle ferme.

    A titre dexemple, lutilisation du bouclage (13) sur le systme :

    x(t) = Ax(t) + Bu(t) +d(t),

    o d(t) est une perturbation, conduit au systme en boucle ferme :

    x(t) = (A BK)x(t) + BF r(t) + d(t).Soit (J, D) la structure, suppose diagonale, de ABK, et le changement de variable x(t) = Dz(t).

    On obtient alors :

    z(t) = Jz(t) + GBFr(t) + Gd(t),

    y(t) = CDz(t).

    En notant ek = [ 0 0 1 0 0 ]T le k-ime vecteur unit, le placement de structurepermet dimposer certaines contraintes comme par exemple :

    20

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    21/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    la k-ime sortie ne contient pas zi(t) peut se traduire par : eTk Cdi = 0; la k-ime perturbation ninfluence pas zi(t) peut se traduire par : giek = 0.De mme, lutilisation du rsultat prcdent permet denvisager un dcouplage partiel entre des

    groupes dentres et des groupes de sorties.

    Une autre application du placement de structure rside dans lutilisation dobservateurs lorsqueltat nest pas compltement accessible. En effet, si on considre une sortie bruite de la forme :

    y(t) = Cx(t) + b(t),

    alors lutilisation dun observateur de la forme :

    x(t) = Ax(t) + Bu(t) + L(y(t) Cx(t)),conduit une erreur dobservation, e(t) = x(t) x(t), rgie par :

    e(t) = (A

    LC)e(t) +d(t)

    Lb(t).

    Lutilisation de la structure (J, D) associe la matrice A LC, conduit aprs changement devariables, e(t) = D(t), :

    (t) = J(t) + Gd(t) GLb(t),et un choix judicieux de certains gi orthogonaux des colonnes de ou de L permet de rejeter bruitsou perturbations dans lobservation.

    Le placement de structure par bouclage dtat peut tre dcompos en deux tapes : tout dabordune modification des valeurs propres en boucle ferme, il sagit dun placement de ples, puis dans undeuxime temps, et ceci est une spcificit des systmes multi-entres, on peut envisager un placementdes vecteurs propres du systme en boucle ferme. Dans la partie suivante, nous allons regarder le

    problme et la rsolution du placement de ples, puis dans la troisime partie nous traiterons duproblme du placement de vecteurs propres. Lutilisation dautres techniques de commande, commela commande LQ, conduit un placement de structure implicite que nous voquerons dans unesection particulire.

    5.2 Placement de ples

    Suivant lannexe C, lorsque le systme (12) est commandable, celui-ci, par le changement devariable, xC = TCx, et le changement de commande, uC = HCu, o HC est la matrice (m m)forme des lignes significatives de BC :

    HC =

    1 0 1

    ...0 0 0 1

    ,

    peut tre mis sous la forme canonique commandable :

    xC(t) = ACxC(t) + BCuC(t), (15)

    o, les i sont les indices de commandabilit et :

    AC =

    A

    11C A

    12C A

    1mC

    A21C A22C A

    2mC

    ...... . . .

    ...Am1C A

    m2C A

    mmC

    , BC = diag

    0...01

    i

    ,

    21

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    22/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    avec AijC une matrice (i j) ayant la structure suivante :

    si i = j, AiiC =

    0 1 0 0... 0 1

    ...

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

    aiiC

    ,

    si i 6= j, AijC =

    0 0...

    ...0 0

    aijC

    .

    Cette structure va permettre un rsolution simple du problme de placement de ples. En effet,

    comme une matrice compagne retrouve sur sa dernire ligne loppos des coeffi

    cients de son polynmecaractristique :

    det

    I

    0 1 0 0... 0 1

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

    ...0 0 1

    c0 c1 cn2 cn1

    = n + cn1n1 + + c1 + c0,

    et que le polynme caractristique est inchang par un changement de variables dtat, une dtermi-nation du gain de bouclage va passer par les tapes suivantes :

    1. Dcomposition du polynme caractristique dsir a() en m polynmes caractristiques ai(),chacun de degr i :

    a() =mYi=1

    ai().

    2. Soient aiiC les m vecteurs lignes forms par les opposs des coefficients des polynmes ai() etAiiC, la matrice compagne associe :

    AiiC =

    0 1 0 0... 0 1

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

    aiiC

    , (16)

    et AC = diagn

    AiiC

    o.

    3. Soit KC le gain de retour dtat en xC que lon va partitionner en :

    KC =

    k11C k12C k

    1mC

    k21C k22C k

    2mC

    ... ... . . . ...km1C k

    m2C k

    mmC

    ,

    o les kijC sont des vecteurs ligne de i composantes.

    22

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    23/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    4. Grce la structure de BC, on peut obtenir :

    AC = AC BCKC.Il suffit pour cela de prendre :

    pour i 6= j, kijC = aijC; pour i = j, kiiC = a

    iiC aiiC.

    5. Comme KC = HCKT1C , on obtient lexpression du gain de retour dtat en x :

    K = H1C KCTC.

    Remarques : cette dtermination, qui nest pas unique, gnralise celle obtenue dans le cas mono-entre (cf.

    annexe E); pour placer les n ples du systme, nous navons besoin que de n paramtres. Or K possde

    nm paramtres dterminer quici nous avons tous utiliss. En regardant un peu mieux, onaurait pu se contenter dutiliser que :

    mXi=1

    ii

    paramtres pour arriver au mme rsultat. Toujours est-il que lon a utilis beaucoup plus deparamtres que ncessaire pour placer les ples du systmes. Nous allons voir dans la suiteque les paramtres qui restent peuvent tre utiliss pour placer quelques vecteurs propres dusystme boucl.

    5.3 Placement de structure

    De faon plus prcise, il a t tabli dans [19], que pour le systme (12) commandable avec rangB = m et rang C = l, on peut placer arbitrairement :

    max (m, l) valeurs propres ; min (m, l) composantes de chaque vecteur propre correspondant.Le fait de considrer ici une forme plus gnrale de lquation dtat (12) o le nombre de sorties

    diffre du nombre dentres permet de considrer comme cas particuliers : le cas du retour dtat, en faisant C = I donc l = n, et on saperoit alors quun retour dtat

    permet de placer toutes les valeurs propores en boucle ferme et seulement m composantes desvecteurs propres ;

    le cas du retour de sortie, en faisant l = m, et on saperoit que lon peut placer seulement mvaleurs propres du systme en boucle ferme;

    le cas du retour de mesures, o on dispose de plus de mesures que de sorties contrler avecl > m.

    La cl du placement de la structure du systme en boucle ferme, cest--dire le placement de lapaire (J, D) correspondant la dcomposition de Jordan de la matrice A BK obtenue aprs leretour dtat (13), repose sur la relation :

    (A BK)D = DJ.En supposant que la matrice J est diagonale, ce qui nest pas restrictif pour des raisons de

    robustesse voques plus haut4, en reprenant les notations prcdentes, soit :

    J = diag{1, . . . , n} et D = [ d1 d2 dn ],

    4Cela aussi simplifie notablement les calculs. Le cas des valeurs propres multiples peut tout fait tre evisag etest dcrit avec force dtails dans [19].

    23

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    24/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    la relation prcdente scrit :

    i {1, . . . , n}, (A BK)di = idi.Le problme consiste donc chercher K telle que cette relation soit vrifie lorsque les vecteurs

    de D ont certaines composantes imposes ou vrifient certaines contraintes qui sexpriment sous laforme dune relation linaire Eidi = 0.De faon rsoudre ce problme, on introduit les vecteurs, pour i = 1 n, i = Kdi, et les

    relations prcdentes se ramnent rsoudre n systmes linaires, pour i = 1 n :A iI B

    Ei 0

    dii

    = 0.

    La rsolution de ces systmes, par exemple en utilisant la dcomposition en valeurs singuliresdcrite lannexe F, conduit aux n paires de vecteurs (di, i). Soit = [ 1 2 n ], comme = KD, on obtient le gain du bouclage dtat par :

    K = D1

    .

    Remarques :

    1. Nous navons fait aucune hypothse sur la qualit des valeurs propres dsires i, et le calculprcdent reste valide, mais dans le cas o celle-ci est complexe, soit i = i +ji, on prfre(mais ce nest pas obligatoire) lassocier sa valeur propre conjugue, soit i+1 = i = iji.On va ainsi chercher des vecteurs rels en groupant les deux relations concernes et en lesremplaant par la rsolution du systme linaire :

    A iI iI B 0iI A iI 0 B

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    25/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    6.1 Par platitude

    Lorsque lon construit la forme canonique commandable (15) du systme en boucle ouverte, onsaperoit que si lon connait certaines composantes de xC(t) sur un intervalle donn alors toutes les

    autres variables, y(t) mais aussi la commande u(t) sont entirement dtermines sur cet intervalle.De faon plus prcise ces composantes peuvent tre regroupes dans le vecteur :

    z(t) =

    xC,1(t)xC,1+1(t)

    xC,1+

    2+1(t)

    ...xC,

    1+

    2+

    m1+1(t)

    ,

    appel sortie plate [7] du systme et lon obtient la relation :

    A(p)z(t) = uC(t),y(t) = C(p)z(t),

    (17)

    o A(p) est une matrice polynomiale de degr = max {i} et C(p) une matrice poynomiale dedegr 1. On pourra noter que la sortie plate nest rien dautre, un changement de variables prsque ltat partiel mis en vidence dans (11).

    Lintrt de la commande par platitude consiste utiliser les relations (17) pour gnrer : une commande boucle ouverte, la nominale udC(t) correspondant lxcution dune trajectoire

    dsire sur la sortie plate zd(t) par udC(t) = A(p)zd(t); une commande boucle ferme permettant de suivre asymptotiquement cette trajectoire.

    Pour construire cette dernire commande, on introduit les notations suivantes : A(p) = diag {pi} + A(p); pour i = 1 m, di(p) est le polynme caractristique des matrices (16).La commande :

    uC(t) = diag {pi}zd(t) + diag {di(p) pi}(z(t) zd(t)) + A(p)z(t), (18)permet dobtenir une erreur de poursuite e(t) = z(t) zd(t) rgie par :

    diag {di(p)}e(t) = 0.

    Cette erreur tendra asymptotiquement vers 0 si les polynmes ont leur racines partie rellengative. De plus ces racines qui correspondent aux dynamiques de lerreur de poursuite peuventtre choisies en fonction de la trajectoire poursuivre. La commande par platitude constitue doncune aide prcieuse dans le choix des dynamiques dsires pour la boucle ferme.

    Lorsque lon interprte (18), en tenant compte du fait que les drives des composantes de z(t)sont les composantes de ltat xC(t), la commande prcdente peut tre crite sous la forme du retourdtat :

    uC(t) = rd(t) KCT1C x(t),o apparat le fait que le terme F r(t) du bouclage dtat habituel doit tre remplac par rd(t) qui

    met en vidence que la consigne a essentiellement pour objectif lxcution dune trajectoire dsiresur la sortie plate.

    25

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    26/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    6.2 Par commande LQ

    Le principe de la commande LQ (Linaire Quadratique) [2, 18] consiste chercher le bouclagedtat5 u(t) = Kx(t) tel que soit minimis le critre :

    J =Z0

    (xT(t)Qx(t) + uT(t)Ru(t))dt,

    pour le systme (12) avec Q et R deux matrices dfinies positives. Lutilisation des principes dopti-malit conduit crire la solution cherche sous la forme :

    u(t) = R1BTP x(t),o P est la solution dfinie positive de lquation algbrique de Riccati :

    ATP + P A + Q P BR1BTP = 0.

    En crivant Q = NTN et BR1BT = MMT, lorsque la paire (A, M) est commandable et lapaire (A, N) est observable, la solution dfinie positive de lquation de Riccati existe toujours et estunique. De plus, dans les mmes conditions, la matrice en boucle ferme obtenue A BR1BTP atoutes ses valeurs propres partie relle ngative.

    Lun des intrts de la commande LQ consiste garantir une bonne robustesse vis--vis derreurssur les gains des canaux dentres. Cependant il nest pas possible dimposer a priori les dynamiquesen boucles fermes qui correspondent loptimalit dun critre quadratique.

    7 Retour de sortie

    Comme y(t) = Cx(t), le retour de sortie (ou de mesures pour tre plus exact) :

    u(t) = F r(t) Ky(t), (19)conduit au systme en boucle ferme :

    x(t) = (A BKC)x(t) + BF r(t),et il sagit ici de chercher le gain K de faon imposer la structure de A BKC ou tout au moinsune partie de la structure. En reprenant les notations de la partie prcdente, la cl du placement destructure rside dans la relation :

    (A BKC)D = DJ,soit, pour i = 1 n :

    (A BKC)di = idi.De mme que prcdemment, lintroduction des vecteurs i = KC di, permet dcrire ces relations

    sous la forme de n quations linaires :

    A iI B

    dii

    = 0.

    Pour simplifier nous ne rajoutons pas de contraintes supplmentaires mais cela pourrait tre

    envisag comme cela a t fait dans le cas du retour dtat. La rsolution de ces n quations fournitn paires (di, i) compatibles permettant de construire les matrices D et .

    5Pour simplifier, nous nous placerons ici dans un contexte de rgulation autour de 0 et non de poursuite detrajectoire.

    26

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    27/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Pour rsoudre le problme initial, il sagit maintenant de chercher la matrice K de taille (m m)vrifiant lidentit :

    = KCD.

    Comme CD est une matrice (mn) elle est non inversible. De faon contourner cet inconvnient,il faut slectionner m valeurs propres i parmi celles dsires en boucle ferme, que lon regroupedans lensemble m telles que les vecteurs di correspondants permettent de construire la matrice Dmde taille (n m) telle que CDm soit inversible. Soit m la matrice des vecteurs i correspondants,le gain de bouclage qui place ces m valeurs propres est donn par :

    K = m(CDm)1.

    Les nm autres valeurs propres ne correspondent pas en gnral celles dsires et dans le cas oelles sont trop distinctes de ce qui est admissible, il y a lieu denvisager un retour dynamique de sortiepar lintermdiaire dun observateur dtat. Cela est toujours possible mais au prix dune dgradation

    de la robustesse de la commande relativement des erreurs sur les paramtres ou relativement desdynamiques ngliges au niveau de la modlisation du systme.

    A Exemples de modles de systmes

    Quelques modles linariss de systmes multivariablesCes modles sont donns sous la forme dune quation dtat :

    x = Ax + Bu,

    y = Cx,

    correspondant au modle linaris autour dun point de fonctionnement.

    A.1 Modle dun sous-marin

    La manuvre dans le plan vertical de la descente ou monte dun sous-marin est ralise laidedes gouvernes de proue ou de poupe. Comme une phase de plonge ou de remonte doit tre ralise assiette constante, il est ncessaire dagir sur les deux commande. Cela conduit ncessairementtudier un systme mutivariable qui prsente comme caractristiques principales un couplage entreles entres et les sorties et des entres actions antagonistes. En effet, manuvrer une seule des euxgouvernes modifie la fois la position verticale du centre de gravit du sous-marin et son assiette,et actionner les gouvernes dans un sens identique conduit des effets qualitativement opposs. Onpeut remarquer que lon aurait des caractristiques analogues si lon sintressait aux modles de voldes avions.

    A.1.1 Modlisations du comportement

    Modles linariss autour de deux vitesses de fonctionnement, 6 nuds et 30 nuds.Variables : commandes : angles des gouvernes de proue et de poupe :

    u1 = b, u2 = s;

    sorties : profondeur et angle de tangage :

    y1 = h, y2 = ;

    27

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    28/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    A.1.2 Modle dtat

    u =

    u1 u2T

    , y =

    y1 y2T

    , x =

    x1 x2 x3 = y1 x4 = y2T

    ,

    x =

    a11 a12 0 a14a21 a22 0 a241 0 0 a340 1 0 0

    x +

    b11 b12b21 b220 00 0

    u,

    y =

    0 0 1 00 0 0 1

    x.

    1. Pour une vitesse de 6 nuds :

    a11 = 0.038006; a12 = 0.89604; a14 = 0.0014673;a21

    = 0.0017105; a22

    =

    0.091676; a24

    =

    0.0056095;a34 = 3.0867; b11 = 0.007542; b12 = 0.022859;

    b21 = 0.0017323; b22 = 0.0022217;

    2. Pour une vitesse de 30 nuds :

    a11 = 0.19003; a12 = 4.4802; a14 = 0.0014673;a21 = 0.0085526; a22 = 0.45988; a24 = 0.0056095;a34 = 15.433; b11 = 0.1855; b12 = 0.57149;b21 = 0.043308; b22 = 0.055543;

    A.1.3 Modle transferty1y2

    =

    1

    (p)

    H11(p) H12(p)H21(p) H22(p)

    u1u2

    .

    1. Pour une vitesse de 6 nuds :

    (p) = (p + 0.062829)(p2 + 0.067152p + 0.0033532);

    H11(p) = 0.007542(p + 0.54578)(p + 0.049356)p

    ;

    H12(p) = 0.022859(p + 0.060304)(p

    0.18124)

    p ;

    H21(p) = 0.0017266(p + 0.030559);

    H22(p) = 0.0022144(p + 0.055605);

    2. Pour une vitesse de 30 nuds :

    (p) = (p + 0.55476)(p + 0.0066662)(p + 0.0028485);

    H11(p) = 0.18855(p + 2.7789)(p + 0.19681)p

    ;

    H12(p) = 0.57149(p + 0.40667)(p

    1.0113)

    p ;

    H21(p) = 0.0431654(p + 0.15279);

    H22(p) = 0.0553618(p + 0.27803);

    28

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    29/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    A.2 Avion

    En prenant comme variables : de commande :

    langle de la gouverne de profondeur (en diximes de degrs) ; la pousse (en m.s2) ; langle de la gouverne dlvation (en degrs) ;

    dtat : laltitude (par rapport une rfrence) la vitesse horizontale (en m.s1) ; langle de tangage (en degrs) ; la vitesse de tangage (en degrs.s1) ; la vitesse verticale (en m.s1) ;

    de sortie : les trois premiers tats ;le modle linaris du comportement dynamique dans le plan vertical dun avion peut tre dcrit

    par :

    A =

    0 0 1.132 0 10 0.0538 0.1712 0 0.07050 0 0 1 00 0.0485 0 0.8556 1.0130 0.2909 0 1.0532 0.6859

    ,

    B =

    0 0 00.12 1 0

    0 0 0

    4.419 0 1.6651.575 0 0.0732

    , C =

    1 0 0 0 00 1 0 0 0

    0 0 1 0 0

    .

    A.3 Turbo-gnrateur

    Modle linaris dun turbo-alternateur de grande dimension deux entres (la position de lavalve dalimentation et la commande dinducteur), deux sorties (la tension gnre et la positionangulaire du gnrateur) et 6 tats dcrit par les matrices :

    A =

    18.4456 4.2263 2.283 0.226 0.422 0.0951

    4.0977

    6.0706 5.6825

    0.6966

    1.2246 0.2873

    1.4449 1.4336 2.6477 0.6092 0.8979 0.230.0093 0.2302 0.5002 0.1764 6.3152 0.1350.0464 0.3489 0.7238 6.3117 0.6886 0.36450.0602 0.2361 0.23 0.0915 0.3214 0.2087

    ,

    B =

    0.2748 3.14630.0501 9.37370.155 7.42960.0716 4.6176

    0.0814 10.26480.0244 13.7943

    ,

    C =

    0.5971 0.7697 4.885 4.8608 9.8177 8.8613.1013 9.3422 5.6 0.749 2.9974 10.5719

    .

    29

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    30/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    A.4 Vhicule tlcommand

    Modle linaris dun vhicule tlcommand deux entres, deux sorties et 6 tats dcrit par lesmatrices :

    A =

    0.2567 36.617 18.897 32.090 3.2509 0.762579.257 105 1.8997 0.98312 7.256 104 0.1708 4.965 1030.012338 11.720 2.6316 8.758 104 31.604 22.396

    0 0 1 0 0 00 0 0 0 30 00 0 0 0 0 30

    ,

    B =

    0 00 00 00 0

    30 00 30

    , C =

    0 1 0 0 0 00 0 0 1 0 0

    .

    Les ples (valeurs propres de A) de ce modles sont :

    {30, 30, 5.67, 0.26, 0.69 + 0.25j, 0.69 0.25j} .

    B Forme de Smith des matrices

    B.1 Cas des matrices constantes

    Considrons les matrices lmentaires rgulires suivantes qui traduisent des oprations lmen-taires sur les lignes (resp. colonnes) dune matrice, lorsquelles la multiplient gauche (resp. droite),(20) change la i-ime ligne (resp. colonne) et la j-ime ligne (resp. colonne), (21) multiplie la i-imeligne (resp. colonne) par le scalaire non nul , et (22) ajoute -fois la j-ime ligne (resp. i-imecolonne) la i-ime ligne (resp. j-ime colonne) :

    Eij =

    1. . .

    10 1

    1

    . . .

    11 0

    1. . .

    1

    , (20)

    Ei() =

    1. . .

    1

    1

    . . .

    1

    , (21)

    30

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    31/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Eij() =

    1. . .

    1 0 0 . . .

    0. . ....

    . . . 01

    . . .

    1

    . (22)

    Le principe de la construction de la forme de Smith dune matrice A(m n) consiste effectuerdes multiplications par les matrices lmentaires droite et gauche pour se ramener la matriceS(m n), forme de Smith de A, telle que :

    S =

    Ir 00 0

    . (23)

    Thorme 1 Toute matrice A(m n) de rangr est quivalente sa forme de Smith S(m n) (23).

    Cest--dire quil existe deux matrices rgulires P et Q, non uniques telles que S = P AQ. Ceprincipe stend utilement aux matrices polynomiales (cf. chap. 11). Comme rang A = rang S, on endduit que deux matrices de mmes dimensions sont quivalentes si et seulement si elles ont mmerang.

    B.2 Cas des matrices polynomiales

    Dans cette partie nous nous placerons dans le cas des matrices polynomiales rectangulaires :

    A() =

    qXk=0

    A(k)k, A(q) 6= 0.

    . Comme dans le cas des matrices constantes, on va en chercher une forme normale polynomialequivalente.

    Pour ce faire, introduisons les oprations lmentaires suivantes traduites par des matrices quilorsquelles sont multiplies droite par une matrice ralisent une opration sur les lignes (ce sontalors des oprations lmentaires gauche) et si elle sont multiplies gauche (en tant quoprationslmentaires droite) ralisent une opration sur les colonnes :

    multiplication dune ligne (resp. colonne) par un scalaire non nul :

    E1() = diag{1, . . . , 1, , 1, . . . , 1}; (24)

    addition une ligne (resp. colonne) dune autre ligne (resp. colonne) multiplie par un polynmep() :

    E2(i,j,p()) = diag

    1, . . . , 1,

    1

    0. . .

    ... . . .

    0. . .

    p() 0 . . . 0 1

    , 1, . . . , 1

    ; (25)

    31

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    32/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    change de deux lignes (resp. colonnes) :

    E3(i, j) = diag

    1, . . . , 1,

    0 0 . . . 0 10 1 0

    ... . . . ...0 1 01 0 . . . 0 0

    , 1, . . . , 1

    . (26)

    On peut remarquer que chacune de ces matrices lmentaires est unimodulaire :

    det E1 = , det E2 = 1, det E3 = 1. (27)

    A laide dune suite de transformations lmentaires gauches et droites judicieusement choisies, toutematrice polynomiale A() de taille (m n) peut tre mise sous la forme dune matrice diagonale laquelle elle est quivalente :

    S() = diag {a1(), . . . , as(), 0, . . . , 0}. (28)

    La matrice obtenue est sa forme de Smith et possde la proprit que les polynmes a1() as()ont leur coefficient de degr le plus lev est gal 1 et, pour j = 2 s aj() est divisible par aj1()sans reste. Remarque : cette forme de Smith est unique et indpendante de lordre des oprationssur les lignes et les colonnes que lon effectuera.Dmonstration : Soit A() = [aij()] une (m n) matrice polynomiale. Par une permutation delignes ou de colonnes, on peut toujours se ramener un coefficient a11() non nul de degr minimum.

    Soient les quotients et les restes de la division de a1i() et aj1() par a11() :

    i = 2, . . . , n, a1i() = q1i()a11() + r1i(), (29)

    j = 2, . . . , m, aj1() = qj1()a11() + rj1(). (30)

    Si lun au moins de tous les restes est non nul, par exemple r1i(), alors en retranchant de la i-imecolonne la premire multiplie par q1i(), on remplace a1i() par r1i() qui est de degr infrieur celuide a11(). En recommenant cette opration, on arrive donc par une suite doprations lmentairesgauches ou droites au cas o tous les restes sont identiquement nuls.

    Dans ce cas, en retranchant de la j-ime ligne, la premire multiplie par qj1(), et de la i-imecolonne la premire multiplie par q1i(), la matrice polynomiale prend la forme quivalente :

    A1() =

    a1() 0 . . . 00 b22() . . . b2n()...

    ......

    0 bm2() . . . bmn()

    , (31)

    Si au moins lun des lments bij() nest pas divisible sans reste par a1(), en ajoutant lapremire ligne, la ligne qui contient un tel lment, on se retrouve au cas prcdent. On peut alorsde nouveau remplacer a1() par un polynme de degr infrieur.

    Comme tous les coefficients de A() sont des polynmes de degrs finis, par un nombre dop-rations fini, on se ramne une matrice A1() telle que tous les lments bij() sont divisibles sansreste par a1().

    32

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    33/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Si au moins un des lments bij() est non nul, on recommence lopration encore une fois ce quiconduit mettre A() sous la forme quivalente :

    A2() =

    a1() 0 0 . . . 0

    0 a2() 0 . . . 00 0 c33() . . . c3n()...

    ......

    ...0 0 cm3() . . . cmn()

    , (32)

    o a2() est divisible sans reste par a1().En continuant lalgorithme, on met ncessairement, aprs un nombre fini doprations, A() sous

    la forme quivalente S() (28) o chaque polynme ai() est divisible sans reste par le prcdent.Par des multiplications par des scalaires on peut rendre chacun de ces polynmes unitaires et dans

    ce cas la forme de Smith est unique. De plus, en faisant le produit des matrices de transformation

    droite et gauche utilises on obtient deux matrices unimodulaires P() et Q() telles que :P()A()Q() = S(), (33)

    ce qui peut scrire aussi sous la forme de la dcomposition de Smith de A() :

    A() = P1()S()Q1(), (34)

    o P1() et Q1() sont des matrices polynomiales. Il est noter que bien que S() soit uniqueles matrices P() et Q() ne le sont pas, et la preuve utilise est constructive pour dterminer ladcomposition de Smith dune matrice polynomiale. En effet :

    [E1()]1 = E1(()

    1),

    [E2(i,j,p())]1 = E2(i,j, p()),

    [E3(i, j)]1 = E3(i, j).

    C Formes canoniques dune quation dtat

    Nous allons dans cette partie dcrire lalgorithme de Luenberger qui permet de mettre sous uneforme canonique une quation dtat de la forme :

    x = Ax + Bu,x Rn, u Rm, B = b1 b2 bm1 bm ,y = Cx,y Rm.

    C.1 Forme canonique commandable

    Test prliminaire :rang

    B AB A2B An1B

    = n.

    1. Dans :C(A,B) =

    B AB A2B An1B ,

    en allant de gauche droite (), on slectionne une colonne si elle nest pas linairementdpendante des prcdentes.

    33

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    34/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    2. On calcule les m indices de commandabilit i, pour i = 1, . . . , m, comme le plus petit entierk tel que Akbi soit linairement dpendante des colonnes prcdentes. On calcule galement lesindices cumuls de commandabilit i :

    i = 1, . . . , m, i =iX

    j=1

    j.

    3. On rordonne les colonnes slectionnes au pas 1 pour construire la matrice :

    V =

    b1 Ab1 A

    11b1 b2 Ab2 A

    21b2

    bm Abm Am1bm

    4. On calcule V1, do lon extrait les i-imes lignes. Soient Li, i = 1, . . . , m, ces lignes.

    5. On construit la matrices de changement de variables :

    TC =

    L1L1A

    ...L1A

    11

    L2L2A

    ...L2A

    21

    ..

    .LmLmA

    ...LmA

    m1

    .

    6. La transformation :xC = TCx,

    conduit lquation dtat :

    xC = ACxC + BCu,y = CCxC,

    34

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    35/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    avec :

    AC = TCAT1C =

    1

    . . .1

    1

    1. . .

    1

    2

    ......

    . . ....

    1

    . . .1

    m

    1 2 m

    ,

    BC

    = TC

    B =

    1

    1

    0 1

    2

    ...

    0 0 0 1

    m

    , CC

    = CT1

    C.

    7. Par le changement de variables de commande :

    uC = HCu,

    o HC est la matrice (m m) forme des lignes significatives de BC :

    HC =

    1 0 1

    ...0 0 0 1

    ,

    on arrive finalement lquation dtat canonique commandable :

    xC = ACxC + BCuC,

    y = CCxC,

    35

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    36/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    avec :

    BC = BCH1C =

    1 0 0 0

    1

    0 1 0 0

    2

    ...

    0 0 0 1

    m

    .

    C.2 Forme canonique observable

    Test prliminaire :

    rang

    A

    CA

    CA2

    ...CAn1

    = n.

    En partant du systme dual :

    = AT + CT,

    = BT,

    lapplication de lalgorithme prcdent conduit la forme canonique commandable de ce systmefictif. Une dernire transposition conduit la forme canonique observable :

    xO = AOxO + BOu,

    yO = COxO,

    o xO = TOx, yO = HOy, et :

    AO = TOAT1O =

    1 . . .

    ...1

    ...

    ...

    1

    ...

    1

    . . ....

    1

    ...

    2

    ......

    . . ....

    ...

    ...

    1 . . . ...1

    m

    1 2 m

    ,

    36

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    37/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    BO = TOB,

    CO = H1O CT

    1O =

    1

    00...0

    0

    10...0

    0

    0...01

    1 2 m

    .

    Les indices i, i = 1, . . . , m , mis en vidence pour la construction de cette forme sappellent lesindices dobservabilit.

    D Forme de Jordan dune matrice

    Thorme 2 Toute matrice carre A est semblable sa forme de Jordan :

    J = diag {J1, . . . , J } ,

    o Ji est le bloc de Jordan (ni ni) :

    Ji =

    i 1. . . . . .

    . . . 1

    i

    , (35)

    dans lequel les i, i = 1, , , sont les valeurs propres de A qui vrifient :

    i = 1, , , vi 6= 0, Avi = ivi.

    Lorsque deux i et j sont gaux, la matrice est dite dfective. Suivant ce rsultat, il existe unematrice rgulire P telle que J = P AP1. Nous allons donner ici la mthode de construction de lamatrice P. Comme P1J = AP1, si lon note les vecteurs composant P1 sous la forme :

    P1 =

    v11 v

    21 v

    ni1 v

    1i v

    nii v

    1 v

    ni

    ,

    o les ni, i = 1, . . . , sont les tailles des blocs de Jordan Ji, on obtient pour tout i dans {1, , } :

    iv1i = Av

    1i ,

    iv2i + v

    1i = Av

    2i ,

    ...

    ivnii + v

    ni1i = Av

    nii .

    Ainsi les couples (i, v1i ) vrifient (iI A)v1i = 0, cest--dire que les i, valeurs propres de A,sont les complexes qui rendent singulire la matrice caractristique A = I A, et les v1i , vecteurspropres de A, sont les vecteurs linairement indpendants qui engendrent N(Ai), i = 1, , . Les

    autres vecteurs v2i vnii , qui sappellent les vecteurs propres gnraliss de A, vrifient, pour tout idans {1, , }, A2iv

    2i = 0, . . . , A

    nii

    vnii = 0, cest--dire quils engendrent N(Aki

    ), k = 1, . . . , ni. Lasuite des vecteurs (v1i , v

    2i , . . . , v

    nii ) constitue la i-ime chane de Jordan de A et donne directement

    les colonnes de P1. La construction de J et P sopre donc de la faon suivante :

    37

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    38/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    1. Recherche des valeurs propres de A : {1, 2, . . . , r}.

    2. Recherche des vecteurs linairement indpendants v1i , i = 1, . . . , , r, qui engendrentles espaces N(Ai), i = 1, . . . , r . A chacun de ces vecteurs est associe une valeur propre et lenombre de vecteurs associs une mme valeur propre i est donn par dimN(Ai).

    3. Construction des chanes de Jordan associes, soit pour i = 1, . . . , : Vi = {v1i , . . . , vnii }.

    4. Construction de P1 =

    V1 V2 V

    .

    5. Inversion de P1, ce qui donne P.

    6. Construction de J sous la forme : J =diag {J1, . . . , J } .

    Dans le cas o la forme de Jordan dune matrice est diagonale, celle-ci est dite diagonalisable.

    Thorme 3 Une matrice A est diagonalisable si et seulement si lune de deux conditions suivantesest vrifie :

    pour chaque valeur propre, la dimension du sous-espace vectoriel propre associ est gal sonordre de multiplicit dans le polynme caractristique ;

    son polynme caractristique et son polynme minimal sont identiques.

    E Cas des systmes mono-entre

    Nous allons considrer ici le placement de ples dans le cas particulier des systmes mono-entre.En effet, nous allons voir que, dans ce cas, on peut obtenir directement des formules explicites pourle calcul du gain k de retour dtat sans avoir besoin, comme dans le cas multi-entres de passer parune forme canonique. Dautre part, comme le nombre n des coefficients de rglage, composantes du

    gain de retour dtat tant identique au nombre de ples placer, il ny a pas lieu de se poser leproblme du placement de vecteurs propres. Par contre, si seulement une partie des ples devaienttre placs, e.g. r, alors on pourrait utiliser n r composantes de k pour placer des vecteurs propres,mais cela ne sera pas considr ici.

    Considrons le systme mono-entre dordre n, suppos commandable :

    x(t) = Ax(t) + bu(t), (36)

    pour lequel on cherche le bouclage dtat :

    u(t) = gv(t)

    kx(t).

    De faon bien insister, comme u(t) et v(t) sont des scalaires, b est un vecteur colonne, k unvecteur ligne, chacun de n composantes et g un scalaire. Aprs bouclage, on obtient le systme :

    x(t) = (A bk)x(t) + gbu(t),

    et nous noterons A = A bk, a (resp. a) le vecteur des coefficients du polynme caractristique deA (resp. A) not a() (resp. a()) :

    a =

    a0a1

    ...an2an1

    , a() = det(I A) = n +

    n1Xi=0

    aii,

    38

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    39/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    a =

    a0a1...

    an2an1

    , a() = det(I A) = n +n1

    Xi=0ai

    i.

    A partir de ces notations nous allons donner quelques formules explicites donnant k lorsque lesai sont connus, donc lorsque les ples en boucle ferme sont fixs.

    E.1 Forme canonique mono-entre

    Bien que cette forme ne soit pas ncessaire dans les formules explicites du gain, nous en auronsbesoin pour tablir certaines dentre elles. Le systme (36) tant commandable, il est semblable laforme canonique :

    z(t) = Acz(t) + bcu(t),

    o z(t) = P x(t) et :

    Ac =

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

    ......

    . . . 1 00 0 1

    a0 a1 an2 an1

    , bc =

    0......01

    .

    Pour dterminer P, on dispose de 2 formules :

    1. A partir de la relation entre les matrices de commandabilit :

    C[A,b] =

    b Ab A2b An1b

    ,

    C[Ac,bc] =

    bc Acbc A2cbc A

    n1c bc

    ,

    soit :C[Ac,bc] = P C[A,b],

    ce qui donne :P = C[Ac,bc]C

    1[A,b].

    2. A partir des relations :P1bc = b, P

    1Ac = AP1,

    et en notant ci la i-me colonne de P1, on obtient :

    cn = b,a0cn = Ac1,a1cn + c1 = Ac2,...an1cn + cn1 = Acn,

    ce qui peut se mettre sous la forme :

    cn = b,

    cn1 = Ab + an1b,cn2 = A

    2b + an1Ab + an2b,...c1 = A

    n1b + an1An2b + an2A

    n3b + + a1b.

    39

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    40/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    Lintroduction de la matrice rgulire :

    TA =

    a1 a2 an1 1a2 a3 1 0

    ... ... 0 ...an1 1 0 0

    1 0 0 0

    ,

    permet dcrire :P1 = C[A,b]TA.

    On peut remarquer quen comparant les deux formules qui donnent P, on obtient la relation :

    T1A = C[Ac,bc].

    Dautre part, comme placer les valeurs propres de A revient placer celles de Ac mais avec ungain kc = kP1 de retour dtat z(t), et que ce gain est simplement donn par :

    kc = (a a)T,

    on obtient une premire formule pour le gain :

    k = (a a)TP.

    E.2 Formule de Bass et Gura

    Remarquons dabord que lon peut crire la relation :

    a() = det(I A + bk) = a() 1 + k(I A)1b .Lutilisation de la formule de Leverrier :

    a()(I A)1 = In1 + (A + an1I)n2 + (A2 + an1A + an2I)n3 ++ + (An1 + an1A

    n2 + + a2A + a1I),

    permet alors dobtenir :

    a0 a0 = k(An1b + an1An2b + + a2Ab + a1b),a1 a1 = k(An2b + an1An3b + + a3Ab + a2b),...an2 an2 = k (Ab + an1b) ,an1 an1 = kb,

    que lon peut crire :a a = TACT[A,b]kT.

    On obtient ainsi la formule de Bass et Gura :

    k = [a a]T T1A C1[A,b].

    40

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    41/47

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    42/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    E.5 Application aux gains dyadiques

    Le bouclage par gain dyadique permet de simplifier le placement de ples des systmes multi-entres en se ramenant au cas des sytmes mono-entre. Considrons le systme multi-entres :

    x(t) = Ax(t) + Bu(t),

    pour lequel on cherche le bouclage dtat :

    u(t) = Gv(t) Kx(t),o cette fois u(t) est un vecteur de m composantes. Chercher un bouclage par gain dyadique consiste chercher K de la forme :

    K = fk, (37)

    o f et k sont deux vecteurs de dimensions adaptes. Le bouclage par ce gain conduit au problme deplacement de ples sur un systme mono-entre avec b = Bf dont on cherche le gain k. Ce problme

    sera soluble si et seulement si on peut trouver un vecteur b dans Im{B} tel que :

    rang

    b Ab A2b An1b

    = n.

    Si cela est possible, la rsolution du sytme toujours compatible Bf = b donne f. Lutilisationdes formules de calcul du gain fournissent k, et (37) donne K.

    F Dcomposition en valeurs singulires

    F.1 Dcomposition

    Plus utilise en pratique que la dcomposition sous forme de Jordan car plus robuste dun point devue numrique, la dcomposition en valeurs singulires dune matrice met en vidence une matricediagonale qui lui est quivalente. Elle jouera un rle fondamental dans la gnralisation au casmultivariable du lieu frquentiel dun systme linaire. Dans toute la suite k.k dsignera la normespectrale k.k2.

    Thorme 4 Pour toute matrice complexe A(m n) il existe deux matrices unitaires U(m m) etV(n n), telles que :

    UAV = ,

    o est une matrice relle (m n) diagonale, = diag{1, . . . , p} , avec p = min{m, n}, et :

    1 2 p 0.Les i apparaissant dans ce thorme sont appeles les valeurs singulires de A do le nom de la

    dcomposition en valeurs singulires de A sous la forme :

    A = UV.

    Comme :AA = VTV, et AA = UTU,

    o T = diag21, . . . , 2p, 0, . . . , 0 est une matrice (n n) et T =diag21, . . . , 2p, 0, . . . , 0, estune matrice (m m), o p = min(m, n), les valeurs singulires non nulles sont les racines carresdes valeurs propres non nulles de la matrice AA mais aussi celles de la matrice AA. Notons U =

    u1 um

    et V =

    v1 vn

    , alors les ui et les vi, daprs les expressions prcdentesreoivent une interprtation en termes de vecteurs propres de AA ou AA :

    42

  • 8/8/2019 Commande des systmes linaires plusieurs entres

    43/47

    F. Rotella, J.Y Fourquet Commande structurelle des systmes

    pour i = 1, . . . , n :AAvi =

    2i vi,

    pour i = 1, . . . , m :AAui =

    2i ui.

    Ainsi lorsque X et Y sont des matrices unitaires de dimensions convenables on a :

    i(XAY) = i(A).

    Comme on a galement :AV = U, et AU = VT,

    on obtient les relations suivantes, avec p = min(m, n) : pour i = 1, . . . , p :

    Avi = iui, et Aui = ivi,

    pour i = p + 1, . . . , max(m, n) :Avi = 0, et Aui = 0.

    Gomtriquement, les valeurs singulires dune matrice sont les longueurs des demi-axes delhyper-ellipsode dfini par :

    {y, y = Ax,x Cn, kxk = 1} ,et vi leur direction. Ainsi v1 est la direction dans laquelle kAxk est la plus grande sur kxk = 1 et vn,la direction dans laquelle kAxk est la plus petite.

    Thorme 5 Soient 1 2 . . . r > r+1 = 0, alors, en dsignant par span lespace vectorielengendr par un ensemble de vecteurs :

    1. rang A = r;

    2. N(A) = span {vr+1