Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un...

41
Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique de Gipsa-lab Co-tuteurs: Daniel SIMON et Olivier SENAME 25 juin 2008

Transcript of Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un...

Page 1: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Commande robuste d’un véhiculesous-marin autonome

Emilie Roche

INRIA Rhône AlpesDépartement d’Automatique de Gipsa-lab

Co-tuteurs:Daniel SIMON et Olivier SENAME

25 juin 2008

Page 2: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Résumé :

Ce rapport développe une loi de commande robuste pour un véhiculesous-marin autonome.

Un modèle non linéaire du sous-marin a été implémenté avec Matlab,puis il a été linéarisé par une méthode tangentielle. Une modélisation LPVpolytopique a également été réalisé, en considérant la masse comme seulparamètre variant.

Deux correcteurs robustes ont ensuite été synthétisés : l’un par la méthodeH∞, l’autre par la méthode LPV polytopique.

Des résultats de simulation montrent les performances obtenues avec cha-cun des correcteurs, et notamment l’amélioration apportée par la méthodeLPV.

Abstract :

This report present a robust control law for autonomous underwater ve-hicles (AUV).

A non linear model of the AUV was implemented on Matlab, then it hasbeen linearized by a tangential method. An LPV polytopique model was alsodeveloped, considering the mass as the unique varying parameter.

Simulation results are provided to show performances obtained with bothcontroller, and specifically the improvement brought with the LPV method.

Page 3: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Table des matières

Introduction 1

1 Modélisation du véhicule sous-marin 41.1 Modèle hydromécanique . . . . . . . . . . . . . . . . . . . . . 41.2 Mise en oeuvre sous Matlab . . . . . . . . . . . . . . . . . . . 7

1.2.1 S-function . . . . . . . . . . . . . . . . . . . . . . . . . 71.2.2 Création du schéma Simulink . . . . . . . . . . . . . . 81.2.3 Vérification du modèle obtenu . . . . . . . . . . . . . . 8

1.3 Linéarisation du modèle . . . . . . . . . . . . . . . . . . . . . 101.4 Modèle LPV polytopique . . . . . . . . . . . . . . . . . . . . . 11

2 Synthèse d’un correcteur H∞ 132.1 Présentation de la méthode . . . . . . . . . . . . . . . . . . . 132.2 Spécification des gabarits fréquentiels . . . . . . . . . . . . . . 142.3 Résultats obtenus . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 Synthèse d’un correcteur LPV Polytopique 203.1 Explication de la méthode . . . . . . . . . . . . . . . . . . . . 203.2 Mise en œuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.3 Résultats obtenus . . . . . . . . . . . . . . . . . . . . . . . . . 21

Conclusion 25

Page 4: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Remerciements

Je tiens à remercier Messieurs Daniel Simon et Olivier Sename, respon-sables de mon stage, pour m’avoir fait confiance sur ce projet et pour m’avoirconseillé et guidé tout au long de ce travail. Sans oublier leur participationau cheminement de ce rapport

Je voudrais aussi remercier les laboratoires qui m’ont accueillis pendantmes 5 mois de stage : l’INRIA Rhône Alpes et le GIPSA-lab, ainsi que toutel’équipe NeCS à laquelle j’ai été intégrée.

Merci également à mes camarades stagiaires, qui ont contribués à faire destage un moment agréable, donc merci pour leur bonne humeur.

Page 5: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Introduction

Ce stage s’inscrit dans le cadre du projet CONNECT (CONtrol NEtwor-ked Cooperative sysTems). Ce projet a pour but de contrôler un systèmemulti-agents (composé de véhicules de surface (ASV) et de véhicules sous-marins (AUV)), interconnectés par un réseau de communication sans fils.

Parmi les missions envisageables pour ce type de système, on peut noter :- la cartographie de fonds sous marins par une flottille d’AUV.- la localisation d’une boîte noire après un crash aérien.- la détection d’une source par suivi de gradient (eau douce, gaz,

produit chimique...).

Le but de ce stage est de concevoir une commande robuste afin d’asservirla vitesse longitudinale et l’altitude d’un sous-marin de type Asterχ, tout enminimisant les vitesses de roulis et de tangage.

Fig. 1 – Photo du sous-marin Asterχ ((c) Ifremer)

1

Page 6: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

Actuellement, la commande des véhicules sous-marins se fait principale-ment par la méthode par modes glissants : cette méthode permet de calculerune loi de commande stabilisant un système non linéaire, dont la loi d’évo-lution est très mal connue (incertitude sur la modélisation du système). Ellepermet également de spécifier lors de la conception du contrôleur, une tra-jectoire à suivre par le système bouclé.

L’idée est ici d’utiliser un autre type de commande, qui n’est pas faiteà l’origine pour des systèmes non linéaires : la commande H∞ qui permet,grâce à des gabarits fréquentiels, de fixer le comportement souhaité en bouclefermée. La robustesse apportée par ce type de correcteur peut ensuite suffireà garantir de bonnes performances sur le système non linéaire.

Depuis une dizaine d’années, la synthèse H∞ a été étendue au systèmesà paramètres variants, notamment dans les domaines de l’aéronautique et del’automobile.

Ce stage a été effectué au sein de deux laboratoires de recherche : l’INRIARhône Alpes et le laboratoire GIPSA-lab.

L’INRIA (Institut National de Recherche en Informatique et Automa-tique) a pour vocation d’entreprendre des recherches fondamentales et appli-quées dans les domaines des sciences et technologies de l’information et de lacommunication (STIC). L’institut assure également un fort transfert de tech-nologie en accordant une grande attention à la formation par la recherche,à la diffusion de l’information scientifique et technique, au développement, àl’expertise et à la participation à des programmes internationaux. L’INRIAdéveloppe de nombreux partenariats avec le monde industriel et favorise letransfert technologique et la création d’entreprises dans le domaine des STIC.

L’INRIA Rhône Alpes est réparti sur 4 sites : Inovallée Meylan-Montbonnotet campus à Grenoble, domaine scientifique de la Doua et technopole Gerlandà Lyon, comptant un total de 600 personnes : 200 chercheurs et enseignants-chercheurs, 200 ingénieurs, techniciens, administratifs, 200 doctorants et post-doctorants (dont 45% étrangers) et 136 stagiaires.

L’INRIA Rhône Alpes est divisé en 28 équipes de recherche : j’ai étéintégrée à l’équipe NeCS (NEtworked Controlled Systems), dont le but estde développer une nouvelle approche de commande pour prendre en comptel’apparition de nouveaux composants sans fils de faible coût, l’accroissementde la complexité des systèmes et la répartition dans un réseau à reconfigura-tion dynamique de capteurs et d’actionneurs (réseaux de capteurs).

Cette équipe est commune au département automatique du GIPSA-lab.Le GIPSA-lab regroupe trois départements :

- Automatique- Images et signal

2

Page 7: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

- Parole et cognition

GIPSA-lab est une unité mixte de recherche entre le CNRS (UMR 5216),l’INPG et l’UJF.

Gipsa-lab s’investit dans des recherches fondamentales sur la parole, laperception, la cognition, le cerveau, le diagnostic et la commande des sys-tèmes. Il développe des applications dans les secteurs de l’interaction mul-timodale, des télécommunications, de l’énergie, de l’environnement, des sys-tèmes embarqués, de la mécatronique-robotique, de la santé, des transports,etc.

L’effectif total du GIPSA-lab est d’environ 300 personnes, dont 137 per-manents, une vingtaine de chercheurs invités, posts-doctorants et ATER, 140doctorants et une soixante de stagiaires de master.

Le département automatique est à son tour divisé en plusieurs équipes derecherche : Systèmes à événements discrets ; Systèmes linéaires et robustesse ;Systèmes non linéaires et complexité ; Systèmes biomécaniques ; Signal, au-tomatique pour le diagnostic et la surveillance et Systèmes commandés enréseaux (NeCS).

Dans une première partie, on va réaliser un modèle non linéaire du sous-marin, qui tient compte des aspects cinématiques, dynamiques et hydrody-namiques du mouvement. Puis on va linéariser ce modèle de façon à pouvoirutiliser des outils de la commande robuste des systèmes linéaires.

Dans une deuxième partie, on va calculer un correcteur H∞ et évaluer sesperformances sur les systèmes linéaire et non linéaire.

Puis dans une troisième partie, on va construire un autre type de correc-teur, basé sur un modèle LPV polytopique (Linéaire à Paramètres Variants),qui permet de prendre en compte à la conception des variations de paramètresmal connus.

3

Page 8: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Chapitre 1

Modélisation du véhiculesous-marin

1.1 Modèle hydromécaniqueL’analyse détaillée de la modélisation d’un sous-marin du même type que

celui étudié a déjà été effectuée (Fossen, 1994; Santos, 1995). On donne iciun résumé des résultats obtenus. La modélisation du sous-marin ayant pourbut une implémentation en vue de simulation, on ne cherchera pas seulementune équation donnant le comportement global du sous-marin, mais égale-ment une description de chacun des comportements pris séparément. On faitalors l’hypothèse que le comportement global est la somme de chacune descomposantes prises à part.

Pour la modélisation du sous-marin, deux repères sont à considérer :- le repère lié au véhicule : <(C,X, Y, Z) dont l’origine C (centre

de carène) peut être différente du centre de gravité de véhicule. Le centrede carène est une centre géométrique, et donc ne change jamais, contraire-ment au centre de gravité qui peut être modifié (cas de batteries mobiles parexemple).

- le repère inertiel : <0(O,X0, Y0, Z0) qui dans le cas de sous-marinse déplaçant à faible vitesse peut être pris comme étant lié à la Terre.

Pour décrire le comportement du véhicule, on utilisera un vecteur d’état

à 12 variables[η(6)ν(6)

].

η représente la situation du véhicule exprimée dans le référentiel inertiel

<0 : η =

[η1

η2

]avec

4

Page 9: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

- η1 la position du véhicule : η1 =[x y z

]T .- η2 l’orientation du véhicule : η2 =

[φ θ ψ

]T .Les angles φ, θ et ψ représentent respectivement le roulis, le tangage et

le lacet du véhicule (utilisation de la paramétrisation par les angles d’Euler),comme le montre la figure suivante :

X0

Z0

Y0

X0

Y0

Z0

Fig. 1.1 – Définition des angles φ (roulis), θ (tangage), et Ψ (lacet).

ν représente le torseur vitesse : ν =

[ν1

ν2

]exprimé dans le repère local du

véhicule <. Les variables ν1 et ν2 sont respectivement les vitesses linéaires etles vitesses angulaires (dérivées premières des vecteurs η1 et η2 au change-ment de repère près) et sont notées : ν1 =

[u v w

]T et ν2 =[p q r

]T .Pour décrire le comportement du système, on sépare l’analyse en deux

parties : la cinématique (aspects géométriques du mouvement) et la dyna-mique (effets des forces et des moments sur le mouvement). Le détail deséquations est donné en annexe (Annexe 1).

L’étude complète permet d’aboutir au système dynamique suivant :

Mν = G(ν)ν +D(ν)ν + Γg + Γp + Γu (1.1)

η = Jc(η2)ν

où les paramètres de l’équation 1.1 correspondent à :- M est la matrice d’inertie. Elle est composée de 2 termes : Md, la

matrice d’inertie due à la dynamique du système et Ma, matrice d’inertied’eau ajoutée, dont les paramètres sont issus de modèles semi-empiriques(erreur pouvant aller jusqu’à 50 à 70%).

5

Page 10: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

- G(ν) représente l’action des forces de Coriolis et des forces centri-fuges. Il est également composé de deux termes : Gd dû aux forces dyna-miques, et Ga dû aux forces hydrodynamiques (calculées à partir des coeffi-cients de la matrice d’inertie d’eau ajoutée).

- D(ν) est la matrice des coefficients d’amortissement hydrodyna-mique (également issue d’estimation donc la connaissance est très approxi-mative).

- Γg est le vecteur des force de gravité et de la poussée d’Archimède.

- Γu représente les forces et moments générés par les actionneurs duvéhicule, et dépend bien évidement du type d’actionneur que possède l’engin.Dans notre cas, le sous-marin possède une hélice pour commander la vitesselongitudinale (dont la commande est fournie sous forme de poussée Qc) ainsique des ailerons :

- deux ailerons horizontaux à l’avant du véhicule (plans canards -les ailerons droits et gauches sont commandés avec le même angle β1).

- deux ailerons horizontaux à l’arrière (angle β2).- deux ailerons verticaux à l’arrière (angle δ1).

β2

β1

Fig. 1.2 – Définition des angles de commande pour les plans canards (à l’avant) et lesailerons horizontaux arrières

Remarque : La modélisation des gouvernes ainsi que des efforts hydrody-namiques (détaillée en annexe) n’est valable que pour un angle d’incidenceinférieur à 20 degrés (l’angle d’incidence représente l’inclinaison du sous-marin relativement au fluide en mouvement). Au delà la force de portancen’agit plus et il y a "décrochage".

- Γp représente les forces et moments dus aux perturbations (diffé-rentes densités de l’eau de mer, courants marins...) considérés nuls dans notremodèle.

- Jc(η2) est la matrice de passage du référentiel local <(C, xyz) au

repère inertiel (lié à la terre) <0(O,X0Y0Z0) : Jc(η2) =

[Jc1(η2) 03x3

03x3 Jc2(η2)

]

6

Page 11: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

1.2 Mise en oeuvre sous MatlabIl existe déjà un modèle de sous-marin codé en C, presque identique à

l’asterχ). Pour pouvoir par la suite utiliser des outils disponibles uniquementsous Matlab (synthèse de correcteur H∞), il est nécessaire de disposer d’unmodèle utilisable sous Matlab.

Pour réaliser ce modèle, on va utiliser des S-functions, qui permettentd’utiliser un programme en langage C depuis un schéma Simulink (ce qui mepermettra de reprendre des morceaux des programmes déjà existants.

1.2.1 S-function

Une S-function est un bloc défini sous Matlab-Simulink qui permet àl’utilisateur de définir lui-même un algorithme exécutable. Elle peut êtrecodée en langage Matlab (sous forme de M-file) ou en langage C (sous formede C MEX-file). C’est cette deuxième solution qui a été utilisée.

Une S-function est composée de plusieurs fonctions qui permettent depasser des informations importantes dans le schéma Simulink :

? static void mdlInitializeSizes(SimStruct *S) permet de défi-nir le nombre d’entrées et de sorties qui devrait être connecté au bloc, et devérifier que ce nombre est bien respecté. Elle permet également de vérifier lenombre de paramètres.

? static void mdlInitializeSampleTimes(SimStruct *S) sert à dé-finir si la fonction est continue ou discrète (dans le cas de fonction discrète,c’est ici qu’il faut définir la période d’échantillonnage).

? static void mdlOutputs(SimStruct *S, int_T tid) réalise l’algo-rithme souhaité : il faut récupérer les entrées depuis Matlab, effectuer lescalculs nécessaires puis écrire les sorties qui seront transmises au schéma Si-mulink.

? static void mdlTerminate(SimStruct *S){} clos la S-function. Dansnotre cas aucune procédure particulière est nécessaire donc cette fonction res-tera vide (mais sa présence est indispensable).

7

Page 12: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

1.2.2 Création du schéma Simulink

On utilise une S-function pour décrire chacun des comportements présen-tés dans la partie "modèle hydromécanique" (ainsi qu’en annexe). Voici lacorrespondance entre les différentes fonctions codée en C et les paramètresde l’équation 1.1 :

- changement de repère pour la matrice Jc(η2).- dynamique pour Gd(ν) (le terme Ga est négligé.- hydrodynamique pour D(ν)- Gamma_G pour Γg- le bloc Gamma_u qui regroupe la propulsion de l’hélice et les trois

ailerons : terme Γu.- Minertinv représente l’inverse de la matrice d’inertie M .

Il suffit ensuite de relier les blocs Simulinks de façon à obtenir le compor-tement global du sous-marin : voir figure 1.3

Fig. 1.3 – Schéma simulink

Pour faciliter l’implémentation, on calcule séparément les vecteurs η et νpuis on recombine les variables de façon à avoir une forme plus classique :[x x y y · · · ]T

1.2.3 Vérification du modèle obtenu

On ne dispose pas de données permettant une comparaison avec un mo-dèle déjà existant. De plus, les coefficients utilisés pour la modélisation étantfournis par l’Ifremer (fabriquant du sous-marin) on les supposera exacts.

8

Page 13: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

La vérification consistera donc à contrôler que le comportement du sys-tème ne soit pas aberrant. Pour cela, on réalise quelques tests simples :

? Essai à vitesse nulle : On part d’un état initial nul, on applique une vi-tesse nulle. Le sous marin reste immobile, donc il est parfaitement équilibré.

? Essai à vitesse constante : on part d’un état initial nul et on appliqueen t = 0 un échelon de poussée correspondant à une vitesse longitudinaleu de 1m/sec. Le résultat obtenu est correct : u passe de 0 à 1m/sec en 40secondes, la position x varie linéairement avec une pente de 1m/sec (après letransitoire). Evolution inattendue : petite variation de l’altitude z (de l’ordrede 5.3cm en 100 secondes), surement due à un léger décalage du point d’ap-plication de la poussée de l’hélice par rapport au centre d’inertie.

? Essai à vitesse constante et plan canard : On part d’un état initial nulsauf pour la vitesse longitudinale égale à u0 (1m/sec) et on applique un éche-lon à l’angle d’incidence des plans canards β1 de 0.1 radians. On observe unevariation de l’altitude z de l’ordre de 30m en 100sec (cette valeur est obtenuepour des gouvernes exagérément grande ; un angle de braquage positif faitmonter le sous-marin donc z diminue) ainsi qu’une petite variation de l’anglede tangage θ (environ 0.04 radian). Du fait de la force de trainée due auxgouvernes, on observe également une diminution de u de 0.025m/sec.

? Essai à vitesse constante et gouverne arrière horizontale : on appliquela même variation que précédemment mais sur β2 : on observe la même évo-lution que précédemment (variation d’altitude z, modification de la vitesseu), mais dans le sens inverse (le sous-marin descend donc z augmente). Eneffet, comme cette gouverne est située de l’autre côté du centre de gravité,pour un angle de braquage positif, le sous-marin descend. Les dimensionsdes deux gouvernes étant à peu près identiques, les évolutions sont du mêmeordre de grandeur.

? Essai avec braquage des 2 ailes horizontales (avant et arrière) : on peutdistinguer deux cas intéressant : les ailes ont le même braquage ou des bra-quages opposés.

Dans le cas ou les ailes ont le même angle de braquage, si l’angle estpositif (respectivement négatif), le sous-marin remonte vers la surface (res-pect. descend), mais avec un angle de tangage presque nul. Par exemple sion braque les deux gouvernes avec des angles β1 = β2 = 0.1rad on obtientune variation d’altitude de 3.3m en 100 secondes avec un angle de tangageθ = 0.013rad.

9

Page 14: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

0 10 20 30 40 50 60 70 80 90 100−0.025

−0.02

−0.015

−0.01

−0.005

0

0.005

0.01

0 10 20 30 40 50 60 70 80 90 1000

0.5

1

1.5

2

2.5

3

3.5

Fig. 1.4 – Position z et angle de tangage pour des angles de braquage égaux (0.1 radian)

Dans le cas ou les angles de braquage sont opposés, (c’est-à-dire que lesdeux ailes tendent à faire évoluer le sous marin dans la même direction), ledéplacement se fait dans le sens attendu, avec deux fois plus d’intensité quesi une seule aile est braquée. Le mouvement se fait alors avec un angle detangage non nul (θ ' 0.8rad)

0 10 20 30 40 50 60 70 80 90 100−70

−60

−50

−40

−30

−20

−10

0

10

0 10 20 30 40 50 60 70 80 90 100−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

Fig. 1.5 – Position z et angle de tangage pour des angles de braquage opposés (0.1 et-0.1 radian)

? Essai avec un angle de roulis puis un angle de tangage non nul : dans lesdeux cas, après un temps très court, le système revient à un angle de roulisou de tangage nul.

1.3 Linéarisation du modèlePour linéariser le modèle précédemment obtenu, on utilise la méthode

suivante de linéarisation tangentielle :Soit la fonction f : f(x1, x2) que l’on souhaite linéariser autour de (x10 , x20)

alors :Flin = f(x10 , x20) +

∂f

∂x1

∣∣∣∣x10 ,x20

∆x1 +∂f

∂x2

∣∣∣∣x10 ,x20

∆x2 (1.2)

10

Page 15: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

Dans notre cas, la fonction f dépend des 12 variables d’état ainsi que desquatres commandes (β1(braquage des plans canards), β2 (braquage des aile-rons arrières horizontaux), δ1 (braquage des ailerons arrières verticaux), Qc

(référence de poussée pour l’hélice)) .Cela mène à une représentation d’état de la forme :{

x(t) = Ax(t) +Bu(t) + Ey(t) = Cx(t) +Du(t)

(1.3)

avec- x l’état du système : x = [x u y v z w φ p θ q ψ r]T .- u les commandes : u = [β1 β2 δ1 Qc]

T .- y les sorties mesurées. dans un premier temps on peut supposer que

l’ensemble des sorties est mesurées donc y = x.Le code Matlab correspondant aux matrices A, B, C, D et E est donné

en annexe (voir Annexe 2).

Pour vérifier la linéarisation obtenue, on effectue quelques simulations. Ils’avère que la plus grande différence entre le modèle non-linéaire et le modèlelinéarisé se situe au niveau des gouvernes. Le comportement des deux sys-tèmes est quasiment identique pour une même commande de poussée Qc ; enrevanche, un même angle de braquage des gouvernes (que ce soit β1 ou β2)produit des variations d’altitude différentes. En effet lors de la linéarisation,la force de trainée a totalement disparu, et la force de portance n’est plusreliée à l’angle d’incidence de l’AUV, ce qui entraine un mouvement plusimportant que prévu suivant les axes Ox (pas de diminution de la vitesselongitudinale u) et Oz (si l’aile braquée est horizontale).

1.4 Modèle LPV polytopiqueLe principe est d’utiliser un outil de la commande des systèmes linéaires

pour commander un système non linéaire. On peut approximer le comporte-ment du système non linéaire par un système Linéaire à Paramètres Variants(LPV) c’est-à-dire un système où les matrices A, B, C et D (représentéesdans l’equation 1.4) varient en fonction d’un ou plusieurs paramètres ρ(·).{

x(t) = A(ρ(·))x(t) +B(ρ(·))u(t)y(t) = C(ρ(·))x(t) +D(ρ(·))u(t)

(1.4)

Dans le cas où on peut borner a priori les variations de ces paramètresρ entre ρmin et ρmax, on peut construire un modèle valable dans toute la

11

Page 16: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

plage de variation. Si les paramètres sont mesurables en ligne, on peut alorsconstruire un correcteur qui s’adapte en ligne à ces paramètres, donc uncorrecteur LPV . Le principe de la méthode (pour plus d’explication, voirchapitre 3) est de construire un polytope (ensemble convexe) dont les som-mets correspondent aux combinaisons des bornes minimales et maximalesdes paramètres variants. Ensuite, une combinaison linéaire de ces modèlespermet d’obtenir un modèle valable pour une certaine valeur de chacun desparamètres (ce qui suppose une estimation des paramètres).

Pour le système 1.4, si on considère un seul paramètre variant ρ ∈ [ρmin,ρmax], on construit deux systèmes sommets dont les matrices sont {Amin,Bmin, Cmin, Dmin} et {Amax, Bmax, Cmax, Dmax}.

Pour n’importe quelle valeur de ρ comprise entre ρmin et ρmax, on a alors :{A(ρ) = α1 × Amin + α2 × Amaxα1 + α2 = 1

(1.5)

Ce type de modèle peut être intéressant pour prendre en compte l’incer-titude sur les paramètres hydrodynamiques (qui sont connus avec une erreurallant jusqu’à 70%). Malheureusement, il y a trop de paramètres pour pou-voir appliquer la méthode polytopique (14 paramètres ce qui ammènerait àla construction d’un polytope de 214 sommets).

On choisit donc, dans un premier temps, d’appliquer cette méthode pourune variation de la masse, qui est l’un des paramètres influançant le plusle comportement du système. Cette variation sera de + ou − 20% de lamasse nominale. Le modèle linéaire obtenu lors de la phase précédente étantlinéaire vis-à-vis de la masse, la construction du modèle LPV polytopiqueest très simple : on calcule les matrices d’état (A et B, les matrices C et Détant indépendantes de la masse) pour les deux valeurs extrèmes de la masse(Mmin et Mmax). Ensuite, pour une valeur déterminée de la masse (M) oncalcule la combinaison linéaire :

AM = α1 × AMmin+ α2 × AMmax

avecα1 = Mmax−M

Mmax−Mminet α2 = M−Mmin

Mmax−Mmin

(1.6)

12

Page 17: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Chapitre 2

Synthèse d’un correcteur H∞

2.1 Présentation de la méthodeLe principe de la commande H∞ est de spécifier des performances en

boucle fermée grâce à des gabarits fréquentiels, placés à des endroits spéci-fiques dans la boucle de commande (suivant la fonction de sensibilité que l’oncherche à modifier).

Par exemple, pour traiter un problème d’asservissement, il faut agir surla fonction S = ε/y, et donc placer un poidsWe comme indiquée sur la figureci-dessous.

Pour imposer des contraintes sur les actions, il faut jouer sur la fonctionde sensibilité KS = u(action)/r, et donc placer un poidsWu comme montrerfigure 2.1.

On peut également imposer un comportement pour certaines sorties mé-surées : présence du poids Wy.

K Gr

du dy

n

+-

++

++u

WuWe

Wy

Fig. 2.1 – Schéma formé par l’interconnexion du modèle du système G, du correcteur Ket des différents poids We, Wu et Wy

Le problème posé de cette façon doit ensuite être reformulé sous la forme

13

Page 18: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

du problème standard :

P

K

w

y

z

u

Fig. 2.2 – Problème standard

Cette formalisation sert à étudier le transfert entre w (les entrées exo-gènes) et z (les sorties à contrôler) (y étant les sorties mesurées et u lesentrées contrôlées). P est le modèle augmenté : il contient le modèle, ainsique les poids Wi et les incertitudes (si il y en a).

On cherche alors à déterminer le controleur K tel que :

‖T (s)‖∞ ≤ γ (2.1)

avec T (s) la fonction de transfert en boucle fermée du système mis sous formestandard.

2.2 Spécification des gabarits fréquentielsPour calculer un correcteurH∞, il faut tout d’abord déterminer une struc-

ture ainsi que des gabarits qui permettent de définir des spécifications (tempsde réponse en boucle fermée, erreur statique...). Dans notre cas, les spécifi-cations à respecter sont les suivantes :

? pour la vitesse longitudinale u, un suivi de consigne avec un tempsde réponse de l’ordre de 5 secondes, une erreur statique faible (10−2) et unemarge de module suffisante.

? pour la position z, un suivi de consigne avec la même dynamiqueque u (le sous-marin étant manœuvré par des ailerons, on considèrera que lapente du terrain n’est pas trop abrupte : une pente trop importante ne peutpas être franchie avec ce type d’actionneurs).

? vitesse de tangage et de roulis aussi faible que possible (par exemple10−2), ceci pour faciliter, par exemple, la reconstruction des cartes à partirdes données collectées.

? respect des contraintes sur les actionneurs (angle de braquage desgouvernes inférieur à 0.5 radian ; poussée du propulseur inférieure à Pmax =

14

Page 19: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

750).

Ceci nous permet de déduire la structure nécessaire :- un poids We sur l’erreur de poursuite pour les spécifications sur u

et z, les deux variables à asservir.- un poids Wu sur l’action pour la contrainte sur les actionneurs.- un poids Ws sur certaines des sorties (vitesse de roulis p et de

tangage q).

Tous les gabarits auront une forme diagonale, ce qui permet de spéci-fier des performances pour chaque variable du système MIMO (Multi InputsMulti Outputs).

? We est une matrice de la forme :(Weu 0

0 Wez

). Les coefficients sont

des transferts du premier ordre :

1

Weu

=1

Wez

=s+ wbεsMs

+ wb

avec- Ms = 2 pour avoir une marge de module suffisante- wb = 0.46 pour avoir un temps de réponse de 5 secondes.- ε = 0.01 pour voir une erreur de poursuite inférieure à 1%

? Wu est fixé à 1 pour chaque actionneur car toutes les actions sont nor-malisées.

? Ws est fixé à 10−2 pour les états p (vitesse de roulis) et q (vitesse detangage)

Il suffit ensuite d’utiliser la commande Matlab sysic (qui calcule le sys-tème augmenté sous forme standard) et la fonction lmiHinf qui calcule lecorrecteur H∞ minimisant l’écart entre le gabarit spécifié et les performancesgaranties avec le correcteur (niveau d’atténuation optimal γopt).

2.3 Résultats obtenusPour connaitre a priori les performances du correcteur que l’on vient de

calculer, on dispose de deux outils :

15

Page 20: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

- le nombre γopt retourné par la fonction lmiHinf. Plus ce nombreest proche de 1, mieux les gabarits seront respectés (ce qui assure un com-portement très proche de celui désiré).

- les fonctions de sensibilité S (sur u et z) qui permettent de visua-liser le comportement fréquentiel du système bouclé obtenu.

Dans notre cas γopt est très élevé (γopt = 102) ce qui pourrait indiquer detrès mauvaises performances en boucle fermée.

On trace ensuite les fonctions de sensibilité relatives au deux variables àcontrôler :

1/Weu

Su

Sz 1/Wez

Fig. 2.3 – Fonction de sensibilité S sur u (vitesse longitudinale) et sur z, ainsi que lesgabarits correspondants

On s’aperçoit que les gabarits ne sont pas respectés (bien que les résultatsobtenus ne soient pas si mauvais que la valeur de γopt ne le laissait présager) :

- pour u, le comportement dans les hautes fréquences est conformeau gabarit fixé, en revanche, dans les basse fréquence, il y a une augmentationde la fonction S (−20dB, soit une erreur statique de 10%). Pour améliorerce comportement, on diminue la valeur de εu à 10−4.

- pour z, la bande passante et l’erreur statique ne sont pas respectées.La bande passante est très proche de celle fixée ; de plus, le sous-marin n’aurajamais de pente à 90 degrés à franchir, donc on conserve ce résultat. Pourl’erreur statique, on diminue εz à 10−4.

Afin d’améliorer les performances et respecter les gabarits spécifiés, on vamodifier le problème à résoudre.

Le principe de la modification des gabarits est le suivant : puisque les ga-barits ne peuvent pas être respectés, on augmente les contraintes. Le gabaritsmodifié ne sera toujours pas respecté (vu que le problème est plus complexeà résoudre), mais les gabarits initiaux seront mieux respecté.

16

Page 21: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

Les résultats obtenus dans ce cas là respectent les spécifications fixées audépart pour u et z donc on conserve les gabarits suivants : figure : 2.4

1/Weu

Su Sz1/Wez

Fig. 2.4 – Fonction de sensibilité S sur u (vitesse longitudinale) et sur z, ainsi que lesgabarits retenus

Dans ce cas là, on a une valeur γopt encore plus importante : γopt = 10640,mais cette valeur correspond à l’éloignement des fonctions de pondérationspar rapport aux gabarits fixés, qui sont plus contraignants que nécessaire.

On teste ce correcteur sur le système linéarisé ainsi que sur le systèmenon linéaire. On obtient les résultats suivants : figure : 2.5

Pour la vitesse longitudinale u : la consigne est constante et égale à1m/sec. La réponse du modèle linéaire est conforme à nos attente, avec untemps de réponse de 2 secondes (inférieur à celui spécifié) et une erreur sta-tique nulle. Sur le modèle non linéaire, on observe des variations de la vitesse,mais qui restent dans un intervalle de + ou − 5% autour de la valeur finale.Le temps de réponse est de 6 secondes et l’erreur statique maximale est de1% de la valeur finale.

Pour la position z : la consigne est une rampe de pente 0.4m /sec (pentemaximum pouvant être gravie par le sous-marin) sur les intervalles de temps :[0; 100] et [200; 300] secondes et constante entre les deux. Là encore laréponse du système linéaire est celle attendue ; celle du système non linéaireprésente un petit dépassement, mais reste très proche de la consigne.

Pour la vitesse de roulis p : l’objectif de la commande est de minimisercette vitesse. Il est atteint puisque les variations sont de l’ordre de 10−5, quece soit sur le modèle linéaire ou non linéaire.

Pour la vitesse de tangage q : l’objectif est le même que précédemment.Sur le modèle linaire, on note une variation assez importante de cette vi-tesse ( allant jusqu’à 0.13 m/sec, soit 10 fois plus que ce qui était demandé.En revanche, sur le système non linéaire, la réponse est meilleure, puisquele maximum de variation est de 0.045 m/sec et que cette vitesse tend à se

17

Page 22: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

Fig. 2.5 – Réponses temporelles obtenues avec le correcteur H∞ pour u (vitesse longi-tudinale), z (altitude), p (vitesse de roulis) et q (vitesse de tangage). Simulation sur lemodèle linéaire (en bleu) et sur le modèle non linéaire (en vert) ainsi que les consignes(en rouge)

18

Page 23: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

stabiliser autour de zero.

Bien que le correcteur H∞ ne soit pas conçu pour fonctionner sur lemodèle non linéaire, la robustesse qu’il apporte permet d’obtenir des per-formances dégradées pour certains états, mais qui restent assez bonnes dansl’ensemble.

19

Page 24: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Chapitre 3

Synthèse d’un correcteur LPVPolytopique

Après avoir calculé un correcteur H∞ qui fonctionne correctement surle modèle non linéaire, on cherche à améliorer les performances obtenues,surtout en terme d’erreur statique sur la vitesse longitudinale u et de dépas-sement sur l’altitude z. Pour cela, on va calculer un correcteur sur le modèleLPV polytopique présenté dans le premier chapitre (voir 1.4).

3.1 Explication de la méthodeLa commande LPV polytopique repose sur la synthèse H∞. Pour la

résolution, on utilise une fonction de Lyapunov V de la forme suivante :V = ATclPAcl (avec P une matrice définie positive : P = P T > 0 ; Acl est lamatrice d’état de la boucle fermée). La dérivée de V doit être négative pourassurer la stabilité :

V = ATclP + PAcl < 0 (3.1)

Dans le cadre des systèmes LPV polytopique, on ne dispose plus d’uneseule représentation d’état du système, mais de 2N (avec N le nombre deparamètres variants). Il y a donc 2N fonctions de Lyapunov à vérifier. Pourgarantir la stabilité quadratique dans l’ensemble du polytope il faut trouverune unique matrice P qui vérifie l’ensemble des 2N équations.

Par exemple dans le cas ou une seul paramètre varie, il y a deux matricesA : A1 et A2, on ne cherche pas à vérifier :{

AT1 P1 + P1A1 < 0AT2 P2 + P2A2 < 0

(3.2)

20

Page 25: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

mais : {AT1 P + PA1 < 0AT2 P + PA2 < 0

(3.3)

3.2 Mise en œuvreDans un premier temps, on construit les deux systèmes sommets pour

des masses Mmin et Mmax égales à plus ou moins 20% de la masse nominaleM . On obtient les systèmes Gmin = {Amin, Bmin, Cmin, Dmin} et Gmax ={Amax, Bmax, Cmax, Dmax}.

Pour pouvoir comparer le correcteur LPV polytopique que l’on va calculeravec le correcteur H∞ obtenu précédemment, on garde les mêmes pondéra-tions We, Wu et Wy.

On utilise ensuite la fonction "lmiHinfPolytope (développée par CharlesPoussot : http ://www.lag.ensieg.inpg.fr/cpoussot/index.html) qui calcule lesdeux correcteurs correspondant à chacun des sommets du polytope, ainsi quele γopt.

3.3 Résultats obtenusComme pour le correcteur H∞, le γopt obtenu est très important : γopt =

10633.Dans un premier temps, on calcule le correcteur correspondant au modèle

nominal :Knominal = α1 ×Kmin + α2 ×Kmax

avecα1 = Mmax−Mnominal

Mmax−Mmin= 0.5 et α2 = Mnominal−Mmin

Mmax−Mmin= 0.5

(3.4)

On teste ce correcteur sur les modèles linéaires et non linéaire, en appli-quant les mêmes consignes que précédement : figure 3.1

Les réponses obtenues sont meilleures qu’avec le correcterur H∞ :

Pour la vitesse longitudinale u : le modèle linéaire donne les mêmes ré-sultats qu’avec le correcteur H∞. Sur le modèle non linéaire, on obtient demeilleures performances : les changements de référence sur z sont mieux ab-sorbés : les pics ont une amplitude plus faible (2.5%) et l’erreur statique nedépasse pas 0.1%.

Pour l’altitude z : le suivi de référence est meilleur qu’auparavant, ledépassement qui était visible au changement de référence a disparu.

Pour la vitesse de roulis p : elle reste très faible, de l’ordre de 10−6m/sec.

21

Page 26: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

Fig. 3.1 – Réponses temporelles obtenues avec le correcteur LPV polytopique pour u(vitesse longitudinale, z (altitude), p (vitesse de roulis) et q (vitesse de tangage). Simula-tion sur le modèle linéaire (en bleu) et sur le modèle non linéaire (en vert) ainsi que lesconsignes (en rouge)

22

Page 27: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

Pour la vitesse de tangage q : les pics observés au changement de référencepour z ont une amplitude un peu plus importante : 0.03 au lieu de 0.015 pourle correcteur H∞, mais cette fois la vitesse se stabilise autour de zéro.

De façon générale, on peut noter que dans le cas de la commande LPVpolytopique, les résultats obtenus sur les deux modèles sont beaucoup plusproches que dans le cas de la commande H∞.

Précédement, nous avons expliqué que cette technique était utilisable sion pouvait estimer ou mesurer le paramètre qui varie. Mais en simulant lecorrecteur nominal (Knominal = 0.5 × Kmin + 0.5 × Kmax) sur le systèmeminimum et sur le système maximum, on se rend compte que le système eststable, et les résultats, bien que légèrement dégradés, restent très prochesdes spécifications fixées au départ. Le correcteur calculé pour une borne del’intervalle donne toujours des résultats corrects sur la borne opposée. Voicipar exemple les courbes obtenues pour le correcteur Kmax sur le systèmeGmin : voir figure 3.2

On pourrait donc s’affranchir de la mesure de la masse : en utilisant toutle temps le correcteur nominal (calculé pour la masse nominale), on obtientdes résultats satisfaisants.

En augmentant progressivement les variations de masse, on s’aperçoit quel’on peut calculer un correcteur pour un écart de + ou − 70% de la massenominale. Pour ces valeurs, les performances sont légèrement dégradées, maisles spécifications sont respectées. Au delà, on obtient un système instable enboucle fermée.

23

Page 28: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

ROCHE Emilie Commande robuste d’un véhicule sous-marin autonome

Fig. 3.2 – Réponses temporelles obtenues avec le correcteur LPV polytopique pour u(vitesse longitudinale, z (altitude), p (vitesse de roulis) et q (vitesse de tangage). Simula-tion sur le modèle linéaire (en bleu) et sur le modèle non linéaire (en vert) ainsi que lesconsignes (en rouge)

24

Page 29: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Conclusion

Dans ce rapport, après avoir construit les modèles nécessaires au calculd’une commande, nous avons réalisé deux types de correcteurs robustes. Toutd’abord un correcteur H∞ a été synthétisé qui donne des résultats très sa-tisfaisants sur le modèle linéaire, mais qui, sur le modèle non linéaire, laisseapparaitre une erreur statique assez importante sur u (la vitesse longitudi-nale) et un dépassement sur z (l’altitude).

Pour remédier à ces imperfections, un deuxième type de correcteur a étéconçu : un correcteur LPV polytopique. Avec ce correcteur, les résultats obte-nus sont meilleurs que précédemment, puisque, en considérant une variationde masse de + ou − 20% par rapport à la masse nominale, on obtient uneerreur statique quasiment nulle pour u et plus aucun dépassement pour z. Deplus, bien que cette méthode nécessite en théorie une mesure ou estimationdu paramètre variant, on s’est aperçu que le correcteur calculé sur le systèmenominal permettait de stabiliser le système et de garantir les performancesspécifiées lors de la synthèse.

Dans l’avenir l’objectif est d’utiliser la méthode LPV polytopique pourfaire une synthèse de correcteur à période variable. Ainsi, en fonction del’utilisation des ressources, ou de la qualité de la commande, le correcteurpourrait adapter la période d’échantillonnage, ainsi que les performances dé-sirées, pour continuer à avoir un système stable en boucle fermée.

25

Page 30: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Annexe 1 : Détails des équations régissant le mouvement du sous-marin

Etude cinématique

La trajectoire du véhicule est donnée par la relation suivante :

η1 = Jc1(η2)ν1 (3.5)

où Jc1(η2) correspond à la matrice de passage du référentiel inertiel (où sontexprimées les vitesses linéaires u, v et w) au référentiel local (où sont expri-mées les positions x, y et z) :

Jc1(η2) =

cos θ cosψ sin θ sinφ cosψ − sinψ cosφ sin θ cosφ cosψ + sinψ sinφcos θ sinψ sin θ sinφ sinψ + cosψ cosφ sin θ cosφ sinψ − cosψ sinφ− sin θ cos θ sinφ cos θ cosφ

(3.6)

De la même façon, pour les vitesses angulaires :

η2 = Jc2(η2)ν2 (3.7)

avec

Jc2(η2) =

1 sinφ tan θ cosφ tan θ0 cosφ − sinφ0 sinφ/ cos θ cosφ/ cos θ

(3.8)

Etude dynamique

• Dynamique d’un corps rigideOn applique le premier principe de la dynamique au centre de gravité G

du sous-marin :Γ1 = mVG/<0 (3.9)

Γ1 étant la somme des forces appliquées au sous-marin.On applique également les lois de la mécanique des solides :

Γ2 = H(C)/<0 + VC ∧ (mVG) (3.10)

avec H(C) = m(−→CG ∧ VC) + ICν2 le moment cinétique au point C.

Le développement des calculs permet d’aboutir à une relation du type :

Mdν = Gd(ν)ν + Γ (3.11)

Page 31: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

avec : Md la matrice d’inertie due à la dynamique du système :

Md =

m 0 0 0 mzG −myG0 m 0 −mzG 0 −mxG0 0 m myG −mxG 00 −mzG myG Ixx −Ixy −Ixz

mzG 0 −mxG −Ixy Iyy −Iyz−myG mxG 0 Ixz −Iyz Izz

et Gd(ν)ν le vecteur des forces de Coriolis et des forces centrifuges appliquéesau véhicule :

Gd(ν) =

[03x3 mSν1 + ν2 ∧

−→CG

mSν1 + ν2 ∧−→CG S(ICν2)

]

Gd(ν) =

0 0 0 0 −m(w + pyG − qxG) m(v − pzG + rxG)0 0 0 m(w + pyG − qxG) 0 −m(u+ qzG − ryG)0 0 0 −m(v − pzG + rxG m(u+ qzG − ryG) 00 −m(w + pyG − qxG) m(v − pzG + rxG) 0 Ixzp+ Iyzq − Izzr −Ixyp+ Iyyq − Iyzr

m(w + pyG − qxG) 0 −m(u+ qzG − ryG) −Ixzp− Iyzq + Izzr 0 −Ixxp+ Ixyq + Ixzr−m(v − pzG + rxG) m(u+ qzG − ryG) 0 Ixyp− Iyyq + Iyzr Ixxp− Ixyq − Ixzr 0

• Poids et poussée d’Archimède

En ajoutant la contribution du poids (F = mg) et celle de la pousséed’Archimède (FA = ρ∆g, ∆ etant le volume immergé) et en projetant dansle repère local lié au véhicule, on obtient le résultat suivant :

Γg(ν) = g

−(m− ρ∆) sin θ

(m− ρ∆) sinφ cos θ(m− ρ∆) cosφ cos θ

(ygm− yfρ∆) cos θ cosφ− (zgm− zfρ∆) cos θ sinφ−(zgm− zfρ∆) sin θ − (xgm− xfρ∆) cos θ cosφ(xgm− xfρ∆) cos θ sinφ+ (ygm− yfρ∆) sin θ

• Efforts hydrodynamiquesCes forces et moments agissent sur tout corps en mouvement dans un

fluide supposé visqueux. Ils sont dus à l’action de la masse d’eau ajoutéeainsi qu’aux frottements visqueux du fluide sur le corps en mouvement. Ilsne peuvent pas être obtenus théoriquement et l’estimation des coefficients esttrès mauvaise (marge de connaissance de 50 à 70%). D’une façon générale,on peut formuler les efforts hydrodynamiques de la manière suivante :

Page 32: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Force axiale : Xu|u|u|u|+Xvrvr +Xwqwq

Force latérale : Ywpwp+Yurur+Yuvuv+Yupup+Yr|r|r|r|+Yr|v|r|v|+Yv|r|v|r|+Yv|v|v[v|

Force verticale : Zuwuw+Zuquq +Zvpvp+Zw|w|w|w|+Zw|q|w|q|+Zq|w|q|w|+Zq|q|q|q|

Moment de roulis : Luvuv + Lurur + Lupup+ Lp|p|p|p|

Moment de tangage : Muwuw+Muquq+Mprpr+Mq|q|q|q|+Mw|q|w|q|+Mq|w|q|w|+Mw|w|w|w|

Moment de lacet : Nuvuv+Nurur+Nupup+Npqpq+Nr|r|r|r|+Nr|v|r|v|+Nv|r|v|r|+Nv|v|v|v|

avec :? Xvr Xwq Ywp Yuv Zuw Zuq des termes de nature inertielle : ils corres-

pondent à la prise en compte de la masse d’eau ajoutée lors de la dérivationde la vitesse.

? Xu|u| Yv|v| Zw|w| Yr|v| Yv|r| Zw|q| Zq|w| Nv|v| Mw|w| Yr|r| Zq|q| Nv|r| Nr|v|Mw|q| Mq|w| Nr|r| Mq|q| des termes de trainée.

? Yur Yuv Yup Zuw Zuq Luv Lur Lup Muw Muq Nuv Nur Nup des termes deportance.

? Lp|p| est un terme d’amortissement en roulis.

• Propulsion par l’héliceLa propulsion principale de l’engin est assurée par une hélice placée dans

l’axe du véhicule. Une consigne sous forme de poussée est fournie par le cor-recteur, ce qui permet de calculer la vitesse de rotation des pales de l’hélice :N =

√consigne/Px ∗ 2.24.

Cette vitesse permet de calculer le coefficient d’avance : J = Va

NDHavec

Va la vitesse d’avance ( Va = u+ q ∗ zg). On peut alors calculer le coefficientde poussée : Kt = f(J, J2, J3).

Reste maintenant à calculer l’angle γ, dont dépend l’expression des effortsde propulsion : gamma = arctan Va

0.7∗N∗DH.

L’expression des efforts de porpulsion étant assez complexe , elle ne serapas détaillée ici.

• Forces dues aux gouvernesLes gouvernes exercent deux forces : la force de portance fn normale à

la surface de l’aileron et la force de trainée ft, tangente à la surfac dont lesexpressions sont les suivantes :

fn = (β − α) ∗ v2r ∗ zb2 (3.12)

Page 33: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

etft = (0.01 + 1.1 ∗ (β − α)2 ∗ v2

r ∗ (zb2/2.5) (3.13)

avec :? β : l’angle d’inclinaison de la gouverne.? α : l’angle d’incidence du sous-marin dans la direction considérée.? vr : la vitesse de l’eau sur l’aileron.? zb2 : coefficient dépendant de la surface des gouvernes.Il suffit ensuite de projeter ces forces sur les axes Ox et Oz pour les

gouvernes horizontales, et Ox et Oy pour les gouvernes verticales.

Page 34: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Annexe 2 : Détails des matrices de la représentation d’état

%% Systeme linearise% Etat X=[x; u; y; v; z; w; phi; p; theta; q; psi; r]% comande:U= [beta1, beta2, delta1, Qc]% [gouv_arriere_hor, gouv_avant, gouv_arriere_vert, propulsion]

beta10=0;beta20=0;delta10=0;Qc0lin=0;reflin=[beta10, beta20, delta10, Qc0lin];

%parametres:

Kt0=0.369516;Kt1=0.490246;Kt2=0.182464;Kt3=0.391137;

Kt1u=Kt1/(2.24*Dh*sqrt(Qc0*Px));Kt2u=Kt2*2*u0/(2.24^2*Dh^2*Qc0*Px);Kt3u=Kt3*3*u0^2/(2.24^3*Dh^3*(Qc0*Px)^(3/2));Kt1Qc=Kt1*u0/(2.24*Dh*sqrt(Qc0*Px));Kt2Qc=Kt2*u0^2/(2.24^2*Dh^2*Qc0*Px);Kt3Qc=Kt3*u0^3/(2.24^3*Dh^3*(Qc0*Px)^(3/2));zb1prim = (paght2+paghb2)*zb1;yd1prim = pagvh3 * yd1;yd3prim = pagvb3 * yd3;yd1pp = pagvh1 * yd1;yd2pp = pagj1 * yd2;yd3pp = pagvb1 * yd3;

%% model nominal%vecteur correspondant au derivee de chacune des vitesses lineaireset angulaires

Au=[ 0;%x(2*Xuu*u0*A11+k0*Qc0*(-Kt1u+Kt2u-Kt3u)*A11);%u0;%y

(Yuv*u0*A12+Luv*u0*A14+Nuv*u0*A16-u0*(yd3-yd1)*A12);%v0;%z(Zuw*u0*A13+Muw*u0*A15-u0*(zb2+zb1)*A13+PATS1*u0*zb2*A15+paght1*u0*zb1*A15);%w((m_nominal-rho*delta)*g*A12-(Zg*m_nominal-Zf*rho*delta)*g*A14);%phi(Yup*u0*A12+Lup*u0*A14+Nup*u0*A16);%p(-(m_nominal-rho*delta)*g*A11-(Zg*m_nominal-Zf*rho*delta)*g*A15);%theta(m_nominal*u0*A13+Zuq*u0*A13+Muq*u0*A15+k0*Qc0*Zg*(-Kt1u+Kt2u-Kt3u)*A11);%q0;%psi(-m_nominal*u0*A12+m_nominal*Zg*u0*A14+Yur*u0*A12+Lur*u0*A14+Nur*u0*A16)];

Bu=[(u0^2*zb1*A13+u0^2*zb1prim*A14-paght1*u0^2*zb1*A15);%beta1(u0^2*zb2*A13-PATS1*u0^2*zb2*A15);%beta2(u0^2*(yd3-yd1)*A12-u0^2*(yd1prim+yd3prim)*A14+(yd1pp+yd3pp)*u0^2*A16+A16*yd2pp/(rho+PI+Dh^2)......*(k0*Qc0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc)));%delta1(k0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc+Qc0*(Kt1Qc/(2*Qc0)-Kt2Qc/Qc0+Kt3Qc*3/(2*Qc0)))*A11);%Qc];

Av=[ 0;%x(2*Xuu*u0*A21+k0*Qc0*(-Kt1u+Kt2u-Kt3u)*A21);%u0;%y

(Yuv*u0*A22+Luv*u0*A24+Nuv*u0*A26-u0*(yd3-yd1)*A22);%v

Page 35: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

0;%z(Zuw*u0*A23+Muw*u0*A25-u0*(zb2+zb1)*A23+PATS1*u0*zb2*A25+paght1*u0*zb1*A25);%w((m_nominal-rho*delta)*g*A22-(Zg*m_nominal-Zf*rho*delta)*g*A24);%phi(Yup*u0*A22+Lup*u0*A24+Nup*u0*A26);%p(-(m_nominal-rho*delta)*g*A21-(Zg*m_nominal-Zf*rho*delta)*g*A25);%theta(m_nominal*u0*A23+Zuq*u0*A23+Muq*u0*A25+k0*Qc0*Zg*(-Kt1u+Kt2u-Kt3u)*A21);%q0;%psi(-m_nominal*u0*A22+m_nominal*Zg*u0*A24+Yur*u0*A22+Lur*u0*A24+Nur*u0*A26)];

Bv=[(u0^2*zb1*A23+u0^2*zb1prim*A24-paght1*u0^2*zb1*A25);%beta1(u0^2*zb2*A23-PATS1*u0^2*zb2*A25);%beta2(u0^2*(yd3-yd1)*A22-u0^2*(yd1prim+yd3prim)*A24+(yd1pp+yd3pp)*u0^2*A26+A26*yd2pp/(rho+PI+Dh^2)......*(k0*Qc0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc)));%deltA2(k0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc+Qc0*(Kt1Qc/(2*Qc0)-Kt2Qc/Qc0+Kt3Qc*3/(2*Qc0)))*A21);%Qc];

Aw=[ 0;%x(2*Xuu*u0*A31+k0*Qc0*(-Kt1u+Kt2u-Kt3u)*A31);%u0;%y

(Yuv*u0*A32+Luv*u0*A34+Nuv*u0*A36-u0*(yd3-yd1)*A32);%v0;%z(Zuw*u0*A33+Muw*u0*A35-u0*(zb2+zb1)*A33+PATS1*u0*zb2*A35+paght1*u0*zb1*A35);%w((m_nominal-rho*delta)*g*A32-(Zg*m_nominal-Zf*rho*delta)*g*A34);%phi(Yup*u0*A32+Lup*u0*A34+Nup*u0*A36);%p(-(m_nominal-rho*delta)*g*A31-(Zg*m_nominal-Zf*rho*delta)*g*A35);%theta(m_nominal*u0*A33+Zuq*u0*A33+Muq*u0*A35+k0*Qc0*Zg*(-Kt1u+Kt2u-Kt3u)*A31);%q0;%psi(-m_nominal*u0*A32+m_nominal*Zg*u0*A34+Yur*u0*A32+Lur*u0*A34+Nur*u0*A36)];

Bw=[(u0^2*zb1*A33+u0^2*zb1prim*A34-paght1*u0^2*zb1*A35);%beta1(u0^2*zb2*A33-PATS1*u0^2*zb2*A35);%beta2(u0^2*(yd3-yd1)*A32-u0^2*(yd1prim+yd3prim)*A34+(yd1pp+yd3pp)*u0^2*A36+A36*yd2pp/(rho+PI+Dh^2)......*(k0*Qc0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc)));%deltA3(k0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc+Qc0*(Kt1Qc/(2*Qc0)-Kt2Qc/Qc0+Kt3Qc*3/(2*Qc0)))*A31);%Qc];

Ap=[ 0;%x(2*Xuu*u0*A41+k0*Qc0*(-Kt1u+Kt2u-Kt3u)*A41);%u0;%y

(Yuv*u0*A42+Luv*u0*A44+Nuv*u0*A46-u0*(yd3-yd1)*A42);%v0;%z(Zuw*u0*A43+Muw*u0*A45-u0*(zb2+zb1)*A43+PATS1*u0*zb2*A45+paght1*u0*zb1*A45);%w((m_nominal-rho*delta)*g*A42-(Zg*m_nominal-Zf*rho*delta)*g*A44);%phi(Yup*u0*A42+Lup*u0*A44+Nup*u0*A46);%p(-(m_nominal-rho*delta)*g*A41-(Zg*m_nominal-Zf*rho*delta)*g*A45);%theta(m_nominal*u0*A43+Zuq*u0*A43+Muq*u0*A45+k0*Qc0*Zg*(-Kt1u+Kt2u-Kt3u)*A41);%q0;%psi(-m_nominal*u0*A42+m_nominal*Zg*u0*A44+Yur*u0*A42+Lur*u0*A44+Nur*u0*A46)];

Bp=[(u0^2*zb1*A43+u0^2*zb1prim*A44-paght1*u0^2*zb1*A45);%beta1(u0^2*zb2*A43-PATS1*u0^2*zb2*A45);%beta2(u0^2*(yd3-yd1)*A42-u0^2*(yd1prim+yd3prim)*A44+(yd1pp+yd3pp)*u0^2*A46+A46*yd2pp/(rho+PI+Dh^2)......*(k0*Qc0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc)));%deltA4(k0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc+Qc0*(Kt1Qc/(2*Qc0)-Kt2Qc/Qc0+Kt3Qc*3/(2*Qc0)))*A41);%Qc];

Aq=[ 0;%x(2*Xuu*u0*A51+k0*Qc0*(-Kt1u+Kt2u-Kt3u)*A51);%u0;%y

(Yuv*u0*A52+Luv*u0*A54+Nuv*u0*A56-u0*(yd3-yd1)*A52);%v0;%z(Zuw*u0*A53+Muw*u0*A55-u0*(zb2+zb1)*A53+PATS1*u0*zb2*A55+paght1*u0*zb1*A55);%w

Page 36: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

((m_nominal-rho*delta)*g*A52-(Zg*m_nominal-Zf*rho*delta)*g*A54);%phi(Yup*u0*A52+Lup*u0*A54+Nup*u0*A56);%p(-(m_nominal-rho*delta)*g*A51-(Zg*m_nominal-Zf*rho*delta)*g*A55);%theta(m_nominal*u0*A53+Zuq*u0*A53+Muq*u0*A55+k0*Qc0*Zg*(-Kt1u+Kt2u-Kt3u)*A51);%q0;%psi(-m_nominal*u0*A52+m_nominal*Zg*u0*A54+Yur*u0*A52+Lur*u0*A54+Nur*u0*A56)];

Bq=[(u0^2*zb1*A53+u0^2*zb1prim*A54-paght1*u0^2*zb1*A55);%beta1(u0^2*zb2*A53-PATS1*u0^2*zb2*A55);%beta2(u0^2*(yd3-yd1)*A52-u0^2*(yd1prim+yd3prim)*A54+(yd1pp+yd3pp)*u0^2*A56+A56*yd2pp/(rho+PI+Dh^2)......*(k0*Qc0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc)));%delta1(k0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc+Qc0*(Kt1Qc/(2*Qc0)-Kt2Qc/Qc0+Kt3Qc*3/(2*Qc0)))*A51);%Qc];

Ar=[ 0;%x(2*Xuu*u0*A61+k0*Qc0*(-Kt1u+Kt2u-Kt3u)*A61);%u0;%y

(Yuv*u0*A62+Luv*u0*A64+Nuv*u0*A66-u0*(yd3-yd1)*A62);%v0;%z(Zuw*u0*A63+Muw*u0*A65-u0*(zb2+zb1)*A63+PATS1*u0*zb2*A65+paght1*u0*zb1*A65);%w((m_nominal-rho*delta)*g*A62-(Zg*m_nominal-Zf*rho*delta)*g*A64);%phi(Yup*u0*A62+Lup*u0*A64+Nup*u0*A66);%p(-(m_nominal-rho*delta)*g*A61-(Zg*m_nominal-Zf*rho*delta)*g*A65);%theta(m_nominal*u0*A63+Zuq*u0*A63+Muq*u0*A65+k0*Qc0*Zg*(-Kt1u+Kt2u-Kt3u)*A61);%q0;%psi(-m_nominal*u0*A62+m_nominal*Zg*u0*A64+Yur*u0*A62+Lur*u0*A64+Nur*u0*A66)];

Br=[(u0^2*zb1*A63+u0^2*zb1prim*A64-paght1*u0^2*zb1*A65);%beta1(u0^2*zb2*A63-PATS1*u0^2*zb2*A65);%beta2(u0^2*(yd3-yd1)*A62-u0^2*(yd1prim+yd3prim)*A64+(yd1pp+yd3pp)*u0^2*A66+A66*yd2pp/(rho+PI+Dh^2)......*(k0*Qc0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc)));%delta1(k0*(Kt0-Kt1Qc+Kt2Qc-Kt3Qc+Qc0*(Kt1Qc/(2*Qc0)-Kt2Qc/Qc0+Kt3Qc*3/(2*Qc0)))*A61);%Qc];

Ax = [0 1 0 0 0 0 0 0 0 0 0 0];Ay = [0 0 0 1 0 0 0 0 0 0 u0 0];Az = [0 0 0 0 0 1 0 0 -u0 0 0 0];Aphi = [0 0 0 0 0 0 0 1 0 0 0 0];Atheta = [0 0 0 0 0 0 0 0 0 1 0 0];Apsi = [0 0 0 0 0 0 0 0 0 0 0 1];

%matrice de la representation d’etatAs = [Ax; Au’; Ay; Av’; Az; Aw’; Aphi; Ap’; Atheta; Aq’; Apsi; Ar’];

%[beta1, beta2, delta1, Qc, 1]Bs = [0 0 0 0; Bu’; 0 0 0 0 ; Bv’; 0 0 0 0 ; Bw’; 0 0 0 0 ; Bp’; 0 0 0 0 ; Bq’; 0 0 0 0 ; Br’];

Cs = eye(12);Ds = zeros(12,4);Eq = [u0;0; 0; 0; 0; (m_nominal-rho*delta)*g; 0; 0; 0; 0; 0; 0];

Page 37: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Annexe 3 : Résultats de simulation avec le correcteur H∞ : zooms

0 5 10 15 20 25 30 35 40 45 500

0.2

0.4

0.6

0.8

1

Fig. 3.3 – u (vitesse longitudinale) obtenue en simulation avec le correcteur H∞ surle modèle linéaire (en bleu) et sur le modèle non linéaire (en vert) ainsi que consigne (enrouge)

90 95 100 105 110 115 120 125 130 135 14034

35

36

37

38

39

40

41

42

Fig. 3.4 – z (altitude) obtenue en simulation avec le correcteur H∞ sur le modèlelinéaire (en bleu) et sur le modèle non linéaire (en vert) ainsi que consigne (en rouge)

Page 38: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Annexe 4 : Résultats de simulation avec le correcteur LPV polytopique : zooms

0 5 10 15 20 25 30 35 40 45 500

0.2

0.4

0.6

0.8

1

1.2

1.4

Fig. 3.5 – u (vitesse longitudinale) obtenue en simulation avec le correcteur LPV surle modèle linéaire (en bleu) et sur le modèle non linéaire (en vert) ainsi que les consignes(en rouge)

0 20 40 60 80 100 120−5

0

5

10

15

20

25

30

35

40

45

Fig. 3.6 – z (altitude) obtenue en simulation avec le correcteur LPV sur le modèlelinéaire (en bleu) et sur le modèle non linéaire (en vert) ainsi que les consignes (en rouge)

Page 39: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Annexe 5 : Correcteur LPV polytopique avec + ou - 70% de variation sur la masse

Fig. 3.7 – Réponses temporelles obtenues avec le correcteur LPV polytopique pour u(vitesse longitudinale, z (altitude), p (vitesse de roulis) et q (vitesse de tangage). Simula-tion sur le modèle linéaire (en bleu) et sur le modèle non linéaire (en vert) ; consigne enrouge

Page 40: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Bibliographie

A. Pedro Aguiar, A. M. P. (2002). Dynamic Positioning and Way-PointTracking of Underactuated AUVs in the Presence of Ocean Currents. InConference on decision and control.

A. Pedro Aguiar, João P. Hespanha, A. M. P. (2007). Switched seesaw controlfor the stabilization of underactuated vehicles. Automatica, 43 :1997–2008.

Apkarian, P. (1997). On the discretization of LMI-synthesized LinearParameter-varying Controllers. automatica, 33 :655–661.

Apkarian, P. (1998). Advanced Gain-Scheduling Techniques for UncertainSystems. IEEE Transactions on control systems technologiy, 6 :21–32.

BIANNIC, J.-M. (1996). Commande robuste des systèmes à paramètres va-riables. PhD thesis, ENSAE.

C. S. Chin, M.W.S. Lau, E. L. G. S. (2006). A robust controller design methodand stability analysis of an underactuated underwater vehicle. Internatio-nal Journal of Applied Mathematics and Computer Sciences, 16 :345–356.

C. Silvestre, A. P. (2004). Control of the INFANTE AUV using gain schedu-led static output feedback. Control Engineering Practice, 12 :1501–1509.

Cervin, A. (2003). Integrated Control and Real-Time Scheduling. PhD thesis,Lund Institute of Technology.

Daniel Simon, David Robert, O. S. (2005). Robust control/scheduling co-design : application to robot control. In IEEE Real Time and EmbddedTechnology and applications Symposium.

Fossen, T. I. (1994). Guidance and control of Ocean Vehicles. John Wiley &Sons Ltd.

36

Page 41: Commande robuste d’un véhicule sous-marin autonome stage/rapport... · Commande robuste d’un véhicule sous-marin autonome Emilie Roche INRIA Rhône Alpes Département d’Automatique

Henriksson, D. (2006). Resource-Constrained Embedded Control and Com-puting Systems. PhD thesis, Department of Automatic Control Lund Uni-versity.

N.E.Leonard, D.A. Paley, F. L. R. S. F. D. F. R. D. (2007). Collective motion,sensor networks, and ocean sampling. Proceedings of the IEEE, 95 :48–74.

Pierre Apkarian, Pascal Gahinet, G. B. (1995). Self-scheduled H∞ Controlof Linear Parameter-varying Systems : a design Example. Automatica,31 :1251–1261.

Robert, D. (2007). Contribution à l’interaction commande / ordonnance-ment. PhD thesis, INPG.

Sala, A. (2005). Computer control under time-varying samplin period : AnLMI gridding approach. automatica, 41 :2077–2082.

Santos, A. S. (1995). Contribution à la conception des sous-marins auto-nomes : architecture des capteurs d’altitude, et commande référencées cap-teurs. PhD thesis, Ecole nationale supérieure des Mines de Paris.

Z. Feng, R. A. (2004). Reduced order H∞ control of an autonomous under-water vehicle. Control Engineering Practice, 12 :1511–1520.

Zin, A. (2005). Sur la commande robuste de suspension automobiles en vuedu control global de chassis. PhD thesis, INPG.