Vous êtes sur la page 1sur 192

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/325206791

SYNTHÈSE DES COMMANDES ROBUSTES DES ROBOTS MANIPULATEURS


RIGIDES

Thesis · December 2004


DOI: 10.13140/RG.2.2.11606.34889

CITATION READS

1 864

3 authors, including:

Kerraci Abdelkader
Université de Khemis Miliana
2 PUBLICATIONS   8 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

robot control with support vector machine approach View project

All content following this page was uploaded by Kerraci Abdelkader on 17 May 2018.

The user has requested enhancement of the downloaded file.


République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

Université d’Oran Es-Sénia

Faculté des Sciences


DÉPARTEMENT DE MAINTENANCE ET DE SÉCURITÉ INDUSTRIELLE
MÉMOIRE
présenté par

Mr. KERRACI Abdelkader


pour l’obtention du diplôme de
MAGISTER EN AUTOMATIQUE
Option : Contrôle de Processus Industriels et de Laboratoire

SYNTHÈSE DES
COMMANDES ROBUSTES DES ROBOTS
MANIPULATEURS RIGIDES
Soutenu publiquement le : 05 Décembre 2004 devant le jury composé de :

Président : Dr. Haffaf H. Maître de Conférences à l’Université d’Oran

Rapporteur : Dr. Khelfi M. F. Maître de Conférences à l’Université d’Oran

Examinateur : Dr. Boudjani A. Maître de Conférences à l’Université d’Oran

Examinateur : Dr. Mansouri A. Maître de Conférences à l’ENSET d’Oran

Examinateur : Mr. Hachemi K. Chargé de Cours à l’Université d’Oran


A mes parents,
A mes frères et sœurs,
A tous ceux qui me sont chers.
Remerciements

Je tiens à exprimer toute ma reconnaissance au Dr. H. Haffaf, Maître de Conférences, au


Département d’Informatique de l’Université d’Oran, pour l’honneur qu’il me fait en présidant
le jury de ce mémoire.

J’exprime ma profonde gratitude au Dr. A. Boudjani, Maître de Conférences et Président


du Conseil Scientifique du Département de Maintenance et de Sécurité Industrielle de
l’Université d’Oran, pour avoir accepté d’examiner ce travail et pour l’attention accordée.

Mes remerciements et mes reconnaissances s’adressent également au Dr. A. Mansouri,


Maître de Conférences à l’ENSET d’Oran pour avoir accepté d’être examinateur de ce travail
et pour m’avoir fait part de ses précieux conseils.

Je désire exprimer toute ma reconnaissance envers monsieur K. Hachemi, Chargé de


Cours au Département de Maintenance et de Sécurité Industrielle de l’Université d’Oran pour
l’intérêt qu’il a apporté à mon travail et pour avoir accepté d’examiner ce mémoire.

C’est sous la direction du Dr. M. F. Khelfi, Maître de Conférences et Chef du


Département d’Informatique de l’Université d’Oran que j’ai effectué cette étude. Qu’il me
soit permis de lui exprimer ma gratitude et ma profonde reconnaissance pour la confiance
qu’il m’a témoignée tout au long de ce travail. Son savoir et sa grande culture scientifique
m’ont appris le sens de la recherche.

J’aimerais ensuite remercier tous les enseignants qui m’ont fait bénéficier de leur
enseignement durant l’année théorique du magister et en particulier monsieur M. Chenafa
et mademoiselle A. Amri, qui ont fait preuve d’une grande disponibilité et m’ont aidé en bien
des circonstances avec de bonne humeur et amitié.

Je tiens à remercier vivement mon frère Hamdada pour l’aide et le soutien qu’il m’a
apporté tout au long de ma formation.

Enfin, que toutes les personnes qui ont apporté leur aide à la réalisation de ce travail,
trouvent ici l’expression de mes remerciements.
Abstract
In the frame of this work, we are interested in the problem of robust control of rigid robot
manipulators. We will introduce some basic concepts of these systems in order to facilitate the
study and understanding. Using modified conventions of Denavit-Hartenberg, A description
of the structure geometry of the robot manipulators within an open loop structure will be
presented. All the stages required for the dynamic modelling of robot manipulators are
explained. In particular, a detailed presentation of the Lagrange formalism, which is used for
the calculation of the dynamic model of robot manipulators, is made. Various structural
properties of the dynamic model are quoted. The model of the robot manipulator Puma 560
will be calculated. Then, a synthesis of the classical dynamic control laws used for rigid robot
manipulators will be proposed. We will present control laws used in the regulation problem,
such as the PD with compensation of the effect of gravity, those used for the problem of
trajectory tracking based on the linearisation of the feedback (computed torque, predictive
controller), and those based on the theory of Lyapunov (Paden and Panja controller, Slotine
and Li controller, etc.). Three important approaches of stable and robust controllers including
the dynamic equations modelling the rigid robot manipulators are defined theoretically. These
approaches are: the robust linear multivariable approach, the robust saturation approach and
the variable structure with sliding mode approach. To achieve a good tracking of model
uncertainties, sufficient conditions are given. A rigorous analysis of the stability and
robustness properties of several schemes suggested by the literature is made. It appears that
the calculation of stable controller does not require necessarily a significant knowledge of the
system to be controlled. This is what justify the use of the simple schemes in practice. All the
control approaches considered in this work will be validated through the simulation results
obtained in the case study of the robot manipulator Puma 560 with six degree of freedom.

Key words: non linear systems, dynamic model of robot manipulator, Robot manipulator
Puma 560, classical control laws, robust linear multivariable controller, robust saturation
controller, variable structure with sliding mode controller, incertitude, asymptotic stability.
Résumé
Nous nous intéressons dans ce mémoire au problème de la commande robuste des robots
manipulateurs rigides. Nous introduirons tout d’abord quelques notions de bases de ces
systèmes pour faciliter l’étude et la compréhension. Une description de la structure
géométrique des robots manipulateurs à chaîne ouverte simple sera présentée en utilisant les
conventions de Denavit-Hartenberg modifiées. Nous explicitons toutes les étapes nécessaires
à la modélisation dynamique des robots manipulateurs. En particulier, nous faisons une
présentation détaillée du formalisme de Lagrange qui est utilisé pour le calcul du modèle
dynamique des robots manipulateurs. Les différentes propriétés structurelles du modèle
dynamique seront citées. A titre d’exemple, le modèle du robot manipulateur Puma 560 sera
calculé. Puis, une synthèse sur les lois de commandes dynamiques classiques des robots
manipulateurs rigides sera proposée. Nous présentons des lois de commande qui traitent le
problème de régulation telles que, la loi de commande PD avec compensation de l’effet de
gravité et des lois de commande qui traitent le problème de poursuite de trajectoire telles que,
les lois de commandes basées sur la linéarisation avec retour d’état (couple calculé,
commande prédictive) et les lois de commandes basées sur la théorie de Lyapunov
(commande de Paden et Panja, commande de Slotine et Li,…). Après, nous faisons une étude
théorique dans la quelle nous définissons trois approches importantes de commandes stables
et robustes pour un système non linéaire dont les équations englobent les équations
dynamiques des robots manipulateurs rigides, ces dernières sont l’approche multivariable
linéaire robuste, l’approche de saturation robuste et l’approche à structure variable avec mode
de glissement. Des conditions suffisantes pour réaliser une bonne poursuite d’un modèle
incertain sont démontrées. Les propriétés de stabilité et de robustesse de plusieurs schémas de
commande proposées dans la littérature sont analysées d’une façon rigoureuse. Il apparaît que
le calcul de commandes stables ne requiert pas nécessairement une connaissance importante
du système que l’on veut commander. Ce qui justifié l’utilisation des schémas de commande
simples dans la pratique. Toutes les approches considérées dans ce mémoire seront validées à
travers les résultats de simulations obtenues sur le robot manipulateur Puma 560 (six degré de
liberté).

Mots clés : systèmes non linéaires, modèle dynamique des robots manipulateurs, robot
manipulateur Puma 560, lois de commande classiques, commande multivariable linéaire
robuste, commande de saturation robuste, commande à structure variable avec mode de
glissement, incertitudes, stabilité asymptotique.
Table des matières

INTRODUCTION GENERALE .................................................................................... 2

Chapitre I. Modélisation Dynamique des Robots


Manipulateurs Rigides

I-1. INTRODUCTION ............................................................................................................... 6


I-2. NOTIONS SUR LES ROBOTS MANIPULATEURS ....................................................... 6
I-2-1. Structure générale des robots manipulateurs............................................................. 6
I-2-2. Constitution géométrique des robots manipulateurs ................................................. 7
I-2-3. Degré de liberté d’un robot manipulateur ................................................................. 7
I-2-4. Espace opérationnel .................................................................................................. 7
I-2-5. Notion de redondance ............................................................................................... 8
I-2-6. Notion de configuration singulière............................................................................ 8
I-3. DESCRIPTION GEOMETRIQUE DES ROBOTS MANIPULATEURS ......................... 8
I-3-1. Introduction ............................................................................................................... 8
I-3-2. Hypothèses de base .................................................................................................. 9
I-3-3. Méthode utilisant la convention de Denavit-Hartenberg [1955]............................... 9
I-3-4. Forme générale de la matrice de transformation..................................................... 11
I-3-5. Convention de Khalil-Kleinfinger .......................................................................... 12
I-3-6. Forme générale de la matrice de transformation..................................................... 13
I-3-7. Influence de la nature de l’articulation ................................................................... 14
I-4. MODELISATION DYNAMIQUE DES ROBOTS MANIPULATEURS A CHAINE
OUVERTE SIMPLE ......................................................................................................... 14
I-4-1. Introduction ............................................................................................................. 14
I-4-2. Modèle dynamique.................................................................................................. 15
I-4-2-1. Introduction.......................................................................................................... 15
I-4-2-2. Les équations de Lagrange-Euler ........................................................................ 16
I-4-2-2-1. Introduction ...................................................................................................... 16
I-4-2-2-2. Equations de mouvement de Lagrange............................................................. 16
I-4-2-2-3. Vitesses articulaires du robot manipulateur ..................................................... 16
I-4-2-2-4. L’énergie cinétique du robot manipulateur ...................................................... 18
I-4-2-2-5. L’énergie potentielle du robot manipulateur .................................................... 20
I-4-2-2-6. Equation du mouvement d’un robot manipulateur ........................................... 20
I-4-3. Propriétés structurelles du modèle dynamique ....................................................... 24
I-4-3-1. Propriétés de la matrice d’inertie M(q)................................................................ 24
I-4-3-2. Propriétés de la matrice des forces centrifuges et de Coriolis ............................. 24

i
Table des matières

I-4-3-3. Propriétés du vecteur des forces de gravité ......................................................... 27


I-4-3-4. Propriétés du vecteur des frottements Ft( q& ) ........................................................ 27
I-4-3-5. Propriétés du vecteur Γd ....................................................................................... 28
I-4-3-6. Propriétés de passivité des robots manipulateurs ................................................ 28
I-4-3-7. Linéarité dans les paramètres .............................................................................. 29
I-4-4. Exemple de modélisation d’un robot de type Puma 560......................................... 29
I-5. CONCLUSION ................................................................................................................. 36

Chapitre II. Commandes Dynamiques Classiques


des Robots Manipulateurs Rigides

II-1. INTRODUCTION............................................................................................................ 38
II-2. GENERATION DE MOUVEMENT............................................................................... 39
II-2-1. Introduction............................................................................................................ 39
II-2-2. Génération de mouvement entre deux points........................................................ 39
II-2-2-1. Interpolation polynomiale .................................................................................. 40
a). Interpolation linéaire .................................................................................................... 40
b). Interpolation polynomiale de degré trois ..................................................................... 41
c). Interpolation polynomiale de degré cinq ..................................................................... 41
II-2-2-1. Interpolation Bang-Bang .................................................................................... 42
II-3. LOIS DE COMMANDE CLASSIQUES POUR LES ROBOTS MANIPULATEURS . 43
II-3-1. Problème de régulation .......................................................................................... 44
II-3-1-1. Loi de commande de type PD ............................................................................ 44
II-3-1-2. Loi de commande de type PID ........................................................................... 46
II-3-1-3. Loi de commande de type PD avec compensation de l’effet de gravité............. 48
II-3-1-4. Loi de commande par découplage non linéaire .................................................. 50
II-3-2. Problème de poursuite de trajectoire ..................................................................... 52
II-3-2-1. Loi de commande de Paden et Panja .................................................................. 52
II-3-2-2. Loi de commande Couple Calculé ..................................................................... 54
II-3-2-3. Loi de commande prédictive .............................................................................. 56
II-3-2-4. Commande de Slotine et Li ................................................................................ 57
II-4. APPLICATION AU ROBOT MANIPULATEUR PUMA 560 ...................................... 60
II-4-1. Introduction............................................................................................................ 60
II-4-2. Modèle utilisé ........................................................................................................ 60
II-4-3. Algorithme et simulation ....................................................................................... 61
II-4-3-1. Lois de commande point à point ........................................................................ 61
II-4-3-2. Lois de commande de poursuite de trajectoire ................................................... 62

ii
Table des matières

II-4-4. Comparaison en simulation ................................................................................... 65


II-4-4-1. Problème de régulation....................................................................................... 65
II-4-4-2. Problème de poursuite ........................................................................................ 71
II-5. CONCLUSION ................................................................................................................ 90
......................................................................................................................................................

Chapitre III. Commandes Robustes des Robots


Manipulateurs Rigides

III-1. INTRODUCTION ...................................................................................................92


III-2. L’APPROCHE MULTIVARIABLE LINEAIRE ROBUSTE ....................................94
III-3. L’APPROCHE DE LA SATURATION ROBUSTE ............................................... 101
III-3-1. Méthode basée sur la linéarisation du retour d’état............................................ 101
III-3-2. Méthode basée sur la passivité ........................................................................... 107
III-4. LA COMMANDE A STRUCTURE VARIABLE AVEC L’APPROCHE MODE DE
GLISSEMENT ..................................................................................................... 113
III-4-1. La commande de Slotine ............................................................................ 116
III-4-2. Commande à structure variable basée sur la linéarisation du retour d’état ...... 121
III-4-3. Conception du mode d’atteinte (reaching mode) .......................................... 125
III-5. APPLICATION AU ROBOT MANIPULATEUR PUMA 560 ............................... 128
III-5-1. Introduction ............................................................................................. 128
III-5-2. Modèle et trajectoire utilisés ................................................................... 128
III-5-3. Algorithme et simulation......................................................................... 129
III-5-3-1. L’Approche Multivariable Linéaire Robuste...................................... 129
III-5-3-2. L’approche de la saturation robuste..................................................... 130
III-5-3-3. La Commande à Structure Variable avec L’approche Mode de
Glissement ............................................................................................ 131
III-5-4. Comparaison en simulation..................................................................... 135
III-6. CONCLUSION ................................................................................................. 161

CONCLUSION GENERALE ................................................................................................ 163


REFERENCES BIBLIOGRAPHIQUES ............................................................................... 166
ANNEXES .................................................................................................................... 171

iii
Notations et Abréviations

LISTE DES PRINCIPALES NOTATIONS ET ABREVIATIONS

Am Borne supérieure sur l’accélération désirée


Ci Corps i du robot
Cijk Symboles de Christoffel
CSV Commande à structure variable
~ Erreurs d'estimation de la matrice des forces de Coriolis et Centrifuges
C(q,q&)
C0 (q,q&) Partie connue de la matrice C
CCC Commande couple calculé
CPP Commande de Paden et Panja
CSL Commande de Slotine et Li
δ ij Delta de Kronecker
ddl Degré de liberté d’un robot manipulateur
DH Convention de Denavit et Hartenberg
dKi L’énergie cinétique de la masse infinitésimale

Ft Effort extérieur (forces et couples) à exercer par l’organe terminal


Fs q& Matrices des coefficients de frottement sec des articulations du robot
Fv( q& ) Matrices des coefficients de frottement visqueux des articulations du robot
G(q) Vecteur des forces de gravité
g Vecteur ligne de gravité exprimé dans le repère de base R0
gb Borne supérieure des forces de gravité
Ĝ Vecteur de gravité estimé
~ Erreurs d'estimation des forces de gravité
G(q)
G0 (q) Partie connue de la matrice G
Γ Vecteur des couples/forces des actionneurs
Γd Vecteur des couples des articulations correspondant à l’effort extérieur.

Γ0 Entrée auxiliaire de la commande


h(q, q& ) Vecteur des forces non linéaires de Coriolis et centrifuges
In Matrice unité
η Terme d’incertitudes
ε Paramètre conçu relative à la borne de l’erreur de poursuite
K L’énergie cinétique
Kp Gain de commande proportionnel
Kv Gain de commande dérivé
Ki Gain de commande intégral
ξ d1 Vecteur des positions désirées qd
ξT Vecteur d’état
L Fonction de Lagrange
λmin(Q) Valeur propre minimale de la matrice Q
M(q) Matrice d’inertie

iv
Notations et Abréviations

mjk (q) Eléments de la matrice d’inertie


M̂ Matrice d’inertie estimée
MM Borne supérieure de la matrice d’inertie
Mm Borne inférieure de la matrice d’inertie
~ Erreurs d'estimation de la matrice d’inertie
M(q)
M 0 (q) Partie connue de la matrice M
N̂ Matrice des forces centrifuges, de Coriolis et de gravité
P L’énergie potentielle
PD Proportionnel dérivé
PID Proportionnel intégral dérivé
p0 Borne supérieure pour la norme de P
q Vecteur des positions articulaires
q& Vecteur des vitesses articulaires
q&& Vecteur des accélérations articulaires.
qd Position désirée

q&d Vitesse désirée

q&&d Accélération désirée


q~ L’erreur de position
q~& L’erreur de vitesse
q&~& Erreur d’accélération
qi Variable de l’articulation i
qi Position initiale
qf Position finale
(q~,q~& ) Point d’équilibre
UUB Uniformément ultimement bornée
u(x,t) Loi de commande à structure variable
Rj Repère lié au corps Cj
Rot Rotation
Rj-1 Repère lié au corps Cj-1
rii Point fixe du bras i
ri i Vecteur du centre de masse du bras i exprimé dans le ieme repère
S L’ensemble des points d’équilibre
SISO mono entrée-mono sortie
SRP Strictement réel positif
ρ(ξ ,t) Borne scalaire à temps variant
ρ Fonction scalaire qui borne les incertitudes du système
SSV Système à structure variable
s i( x ) Fonction de commutation scalaire
sign Fonction signe
sat(s/ε) Fonction de saturation
tanh(gs) Fonction tangente hyperbolique
Tii −1 Matrice de transformation du repère Ri au repère Ri-1
Tr Translation

v
Notations et Abréviations

t f. Temps final
V(q~,q~& ) Fonction candidate de Lyapunov
V&(q~,q~& ) Dérivé de la fonction candidate de Lyapunov
vr Terme de commande additionnel
XiYiZi Trirectangle direct formé par les axes du bras i
x Vecteur d’état

vi
Figures et Tableaux

LISTE DES FIGURES

Figure I.1 Robot à chaîne ouverte simple 7


Figure I.2 Exemples de singularité 8
Figure I.3 Paramètres de Denavit-Hartenberg standard 10
Figure I.4 Paramètres de Denavit-Hartenberg modifiés 13
Figure I.5 Le Robot Puma 560 30
Figure I.6 Paramètres de Denavit-Hartenberg modifiée du robot Puma 560 31
Figure II.1 Interpolation linéaire pour une articulation donnée j 40
Figure II.2 Interpolation polynomiale de degré trois pour une articulation donnée j 41
Figure II.3 Interpolation polynomiale de degré cinq pour une articulation donnée j 42
Figure II.4 Interpolation Bang-Bang pour une articulation donnée j 43
Figure II.5 Schéma synoptique de la commande type PD 44
Figure II.6 Schéma synoptique de la commande type PID 46
Figure II.7 Schéma synoptique de commande type PD avec compensation de l’effet
49
de gravité
Figure II.8 Schéma synoptique de commande par découplage non linéaire 51
Figure II.9 Schéma synoptique de la commande de Paden et Panja 53
Figure II.10 Schéma synoptique de la commande couple calculé type PD 55
Figure II.11 Schéma synoptique de la commande couple calculé type PID 56
Figure II.12 Schéma synoptique de commande prédictive 57
Figure II.13 Schéma synoptique de la commande de Slotine et Li 58
Figure II.14 Schéma synoptique de la commande proposée par Sadegh et Horowitz 59
Figure II.15 Erreurs de poursuite des six bras du robot en utilisant la commande PD 67
Figure II.16 Erreurs de poursuite des six bras du robot en utilisant la commande PID 68
Figure II.17 Erreurs de poursuite des six bras du robot en utilisant la commande PD
69
avec compensation de l’effet de gravité
Figure II.18 Erreurs de poursuite des six bras du robot en utilisant une loi de
70
commande par découplage non linéaire
Figure II.19 Erreurs de poursuite des six bras du robot en utilisant la commande de
73
Paden et Panja
Figure II.20 Erreurs de poursuite des six bras du robot en utilisant la commande
75
couple Calculé type PD
Figure II.21 Erreurs de poursuite des six bras du robot en utilisant la commande
77
Couple Calculé type PD avec une perturbation constante de 10 Nm
Figure II.22 Erreurs de poursuite des six bras du robot en utilisant la commande
78
Couple Calculé PID avec une perturbation constante de 10 Nm
Figure II.23 Erreurs de poursuite des six bras du robot en utilisant la commande
80
prédictive
Figure II.24 Erreurs de poursuite des six bras du robot en utilisant la commande de
82
Slotine et Li
Figure II.25 Erreurs de poursuite des six bras du robot en utilisant la commande de
84
Sadegh et Horowitz
Figure II.26 Erreurs de poursuite des six bras du robot en utilisant la CCC, CPP et
88
CSL

Figure III.1 Conception multivariable linéaire 96

vii
Figures et Tableaux

Figure III.2 Domaine de limites 120


Figure III.3.a Fonction de saturation 121
Figure III.3.b Fonction tangente hyperbolique 121
Figure III.4 Erreurs de poursuite et couples des six bras du robot en utilisant la 136
commande MLR avec Kp=140 I et Kv=12 I
Figure III.5 Erreurs de poursuite et couples des six bras du robot en utilisant 139
l’approche MLR avec Kp=400 I et Kv=30 I
Figure III.6 Erreurs de poursuite et couples des six bras du robot en utilisant 141
l’approche mode de glissement de Slotine avec le terme de saturation
sat(s/ε) (ε=0.1)
Figure III.7 Erreurs de poursuite et couples des six bras du robot en utilisant 145
l’approche mode de glissement de Slotine avec le terme tanh(gs)
Figure III.8 Erreurs de poursuite et couples des six bras du robot en utilisant la 148
commande SV proposée par Zhihong (avec le terme de commutation)
Figure III.9 Erreurs de poursuite et couples des six bras du robot en utilisant la 152
commande proposée par Zhihong avec la modification domaine de
limites (ε=0.1)
Figure III.10 Erreurs de poursuite et couples des six bras du robot en utilisant la loi 156
du mode d’atteinte avec K=90 I, Λ=40I et Q =15 I
Figure III.11 Erreurs de poursuite et couples des six bras du robot en utilisant la loi 159
du mode d’atteinte avec K=90 I, Λ=40I et Q =0.1 I

LISTE DES TABLEAUX

Tableau I.1 Masses des bras (kilogramme ; ±0.01+1% ) 30


Tableau I.2 Centres de gravité des bras (mètre ± 0.03 ) 31
Tableau I.3 Paramètres de Denavit-Hartenberg modifiée 32
Tableau I.3 Valeurs des constantes d’inertie 33

viii
INTRODUCTION
GÉNÉRALE
Introduction générale

Nous nous intéressons dans ce mémoire au problème de la commande robuste des robots
manipulateurs rigides (ou indéformables) sans l’utilisation volontaire des observateurs. Tant
qu’un manipulateur reste un automate devrant réaliser une tâche spécifique et répétitive (tel
que le transport à faible vitesse d’un objet de masse et de géométrie connues, d’un point de
départ à un point d’arrivée selon une trajectoire invariante fixée à l’avance), le problème de
commande de ce manipulateur est un problème bien conditionné pouvant être résolu
simplement par des techniques classiques de commande de systèmes linéaires.

Dans les années 80, la plupart sinon la quasi-totalité des manipulateurs utilisés dans
l’industrie ou proposés sur le marché est conçue selon le principe précédent. Dans la mesure
où ces manipulateurs répondent de façon satisfaisante aux besoins de leurs utilisateurs, cela
signifie que pour un certain nombre d’applications il n’est pas forcement utile d’aller plus loin
dans le degré de sophistication des manipulateurs [Samson 1983]. Cependant, dans ces
dernières années, les conditions de performance du robot sont devenues de plus en plus
importantes, donc, les incertitudes du modèle ne peuvent plus être ignorées.

La demande de bonnes performances de poursuite ou d’une vitesse élevé d’exécution des


tâches par le manipulateur exige la connaissance exacte de la dynamique du système robot
pour que les schémas de commande classiques peuvent être utilisé. En général, le modèle
mathématique d'un robot est très complexe si tous les facteurs possibles sont considérés (telle
que la dynamique du moteur) et il est difficile de concevoir une commande pour un système
complexe. De ce fait, la conception de la commande utilise le modèle réduit du système, et les
facteurs réduits sont pris en considération comme des incertitudes ou des perturbations. De
plus, les paramètres du robot (la masse, centre de gravité, moments de rotation…) sont
habituellement inconnus ou non mesurables avec précision, ainsi l’estimation des paramètres
est un problème très important dans l'analyse et la conception des systèmes de commande du
robot.

La commande des systèmes incertains est généralement accomplie en utilisant soit une
commande adaptative soit une philosophie de la commande robuste. L’idée de base dans
l'approche adaptative est de concevoir une commande qui essaye de connaitre les paramètres
incertains du système, et, si elle est correctement conçue, elle sera par la suite une meilleure
commande pour le système incertain. Dans l'approche robuste, la commande a une structure
fixe qui donne une performance "acceptable" pour un ensemble donné d'incertitude du
modèle.

En général, l'approche adaptative est applicable à la plus grande gamme d'incertitude,


mais l’implémentation des commandes robustes est plus simple et le temps nécessaire pour
"accorder" la commande aux variations du modèle est nul. Plus récemment, les chercheurs ont

2
Introduction générale

essayé de robustifier certaines commandes adaptatives afin de combiner les avantages des
deux approches, voir [Canudas et al. 1992].

Le schéma de la commande robuste a été le sujet de différentes recherches et cela en


utilisant de différentes approches, de ce fait, plusieurs commandes robustes ont été proposées
pour le système robot manipulateur. Généralement, les schémas de la commande robuste
comporte un compensateur non-linéaire et un stabilisateur robuste, la première composante
est pour éliminer les effets non-linéaires, et la deuxième est conçue de telle façon que le
système satisfait la stabilité ou quelques performances. En général, si le modèle du système
est parfaitement connu, alors le compensateur non-linéaire peut complètement compenser
l'action non-linéaire, et par conséquent le stabilisateur robuste peut conduire le système à la
stabilité.

Pour bien traiter le problème, ce mémoire est organisé de la façon suivante. Dans le
chapitre I, nous donnons quelques notions de base des robots manipulateurs. Puis, nous
présentons une description géométrique des systèmes articulés et plus spécialement les robots
manipulateurs; une description basée sur deux méthodes, l’une d’elles est celle de Denavit-
Hartenberg standard, l’autre plus moderne et plus puissante c’est la méthode de Denavit-
Hartenberg modifiée, nommée aussi la convention de Khalil et Kleinfinger. Après, nous
abordons la modélisation dynamique des robots manipulateurs en utilisant le formalisme de
Lagrange. Cette approche particulière est assez simple à mettre en œuvre et elle est bien
adaptée aux techniques du calcul manuel ainsi qu’aux méthodes assistées par ordinateur.
Aussi dans ce chapitre nous allons traiter les différentes propriétés structurelles du modèle
dynamique qui sont très efficaces dans la synthèse des correcteurs. A la fin du chapitre I et à
titre d’exemple, le calcul du modèle dynamique du robot manipulateur Puma 560 sera montré
et cela pour l’utiliser dans la validation des commandes présentées dans la suite de ce
mémoire.

Dans le chapitre II, une synthèse des lois de commande dynamiques classiques
appliquées sur les robots manipulateurs rigides sera exposée. Pour cela nous commençons
tout d’abord par la présentation de différentes méthodes de génération de mouvement
(différents types d’interpolation). Après nous étudions les lois de commande qui traitent le
problème de régulation, où nous allons présenter de différentes loi de commande telles que la
commande PD, la commande PID, la commande PD avec compensation de l’effet de gravité
et la commande par découplage non-linéaire qui est une bonne approche puisqu’elle améliore
la rapidité d’exécution des tâches faites par le robot, comme elle assure la stabilité
asymptotique globale de la dynamique du système en boucle fermée.

Puis, nous entamons l’étude des lois de commande dynamiques classiques qui traitent le
problème de poursuite de trajectoire, où nous allons traiter la commande de Paden et Panja, la

3
Introduction générale

commande linéarisante, la commande nommée couple calculé type PD et type PID, une
commande prédictive, la commande de Slotine et Li originale et celle modifiée par Sadegh et
Horowitz. Au court de ce chapitre, et à fin classifier les commandes présentées dans un ordre
croissant selon ses performances, nous simulons chacune d’elles avec le modèle dynamique
du robot Puma 560.

Dans le chapitre III, nous classifions les techniques robustes utilisées pour la commande
des robots en trois catégories principales; la technique multivariable linéaire robuste, la
technique de saturation robuste et la technique de commande à structure variable.

L'approche multivariable linéaire robuste inclut des méthodes basées sur la linéarisation
avec retour d’état du système robot, c.-à-d. la loi de commande couple calculé. Cette
technique emploie la dynamique inverse du robot pour linéariser globalement et découpler
l'équation non-linéaire du robot. Généralement, la linéarisation ne sera pas parfaite puisque
nous n'avons pas la dynamique inverse exacte du système. Ceci sera manifesté par les termes
incertains qui peuvent être traitées en utilisant les techniques multivariables linéaires robustes.
Dans cette approche, nous pouvons écrire le système en boucle fermée sous la forme d’une
partie linéarisée, plus quelques termes additionnels incertains. Nous verrons que le problème
de commande non-linéaire sera réduit à concevoir des techniques linéaires de commande qui
devraient garantir la stabilité de la boucle fermée dans la présence du terme paramétrique
d'incertitude. La deuxième technique n'est pas basée sur les techniques linéaires robustes,
mais plutôt elle emploie une commande de saturation auxiliaire pour traiter l'incertitude
présentée dans la dynamique du robot manipulateur. Ces commandes sont robustes du fait
qu'elles dépendent plutôt des bornes des incertitudes que les valeurs courantes des paramètres.

A la fin de ce chapitre, nous présentons une approche très importante qui a été très utilisée
dans la commande de plusieurs systèmes non-linéaires incertains due à ses propriétés de
robustesse élevées et au fait qu'elle fournit un procédé de conception simple. Cette approche
est basée sur la théorie de la commande à structure variable. L'idée de base de cette technique
est qu’elle cherche seulement de conduire le signal d'erreur à une surface de commutation,
après le système est en mode de glissement et il ne sera plus affecté par aucune incertitude de
modélisation et/ou perturbations externes. Pour illustrer cette approche, nous présentons de
différentes commandes à structure variable appliquées aux robots manipulateurs, et nous
allons essayer de donner le détail nécessaire sur la conception des algorithmes des
commandes qui utilisent cette technique.

Une classification selon les performances obtenues de ces commande sera faite sur la base
des résultas de simulation de ces dernières avec le modèle dynamique du robot Puma 560 qui
sera présenté dans le chapitre I.

4
CHAPITRE I
Modélisation Dynamique Des
Robots Manipulateurs Rigides

Dans ce chapitre, nous allons déduire le modèle dynamique des robots


manipulateurs rigides. Nous introduirons d’abord quelques notions de bases de ces
systèmes pour faciliter l’étude et la compréhension, puis, une description de la
structure géométrique de ces derniers sera présentée en utilisant les conventions de
Denavit-Hartenberg modifiées. Après, nous citerons les différentes propriétés
structurelles du modèle dynamique déduit. Finalement, le modèle du robot
manipulateur Puma 560 sera décrit pour l’utiliser plus tard dans la simulation.
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

I-1. INTRODUCTION

La première partie de ce chapitre sera consacrée à la présentation de quelques notations


de base des robots manipulateurs [Gorla et al. 1984, Dombre et al. 1988], tel que le degré de
liberté, la notion de singularité, etc.

Dans la deuxième partie nous allons présenter une description géométrique des systèmes
articulés et plus spécialement les robots manipulateurs; une description basée sur deux
méthodes, l’une d’elles est celle de Denavit-Hartenberg standard met en 1955 qui est
présentée dans plusieurs références [Vibet 1987, Spong et al. 1989, Coiffet 1992]; cette
méthode n’est pas assez puissante surtout dans le cas des structures articulé arborescente ou
parallèles, l’autre plus moderne et plus puissante c’est la méthode de Denavit-Hartenberg
modifiée [Dombre et al. 1988, Spong et al. 1989, Coiffet 1992], nommée aussi la convention
de Khalil et Kleinfinger.

Pour la troisième partie de ce chapitre, le formalisme de Lagrange [Dombre et al. 1988,


Spong et al. 1989, Lewis et al. 1993] sera utilisé pour modéliser le comportement du robot
manipulateur, une modélisation qui exprime la relation entre les efforts généralisés de
commande à appliquer aux liaisons et les coordonnées, vitesses et accélérations généralisées
qu’ils y produisent. Cette approche particulière est assez simple à mettre en œuvre et elle est
bien adaptée aux techniques du calcul manuel ainsi qu’aux méthodes assistées par ordinateur.

Aussi dans cette partie nous allons traiter les différentes propriétés structurelles du
modèle dynamique [Spong et al. 1989, Lewis et al. 1993, Lozano et al. 2001] qui sont très
efficaces dans la synthèse des correcteurs.

A la fin de ce chapitre et à titre d’exemple, le calcul du modèle dynamique du robot


manipulateur Puma 560 sera fait et cela pour l’utiliser dans la validation des commandes
présentées dans la suite de ce mémoire.

I-2. NOTIONS SUR LES ROBOTS MANIPULATEURS

I-2-1. Structure générale des robots manipulateurs

Un robot manipulateur ou plus simplement manipulateur est l’ensemble formé


[Giordano 1990] par :

• Une structure mécanique qui supporte l’organe terminal à situer ;

• Des actionneurs qui servent à agir sur la structure mécanique pour changer la situation
de l’organe terminal ;

• Des capteurs divers nécessaire à la commande ;

• Un système de commande qui pilote les actionneurs du robot manipulateur ;

6
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

• Un système décisionnel qui assure la fonction de raisonnement et élabore le


mouvement du robot manipulateur ;

• Un système de communication qui gère le message transmis entre le système


décisionnel et l’opérateur via une console de visualisation ;

I-2-2. Constitution géométrique des robots manipulateurs

Un robot manipulateur est une cinématique constituée de n+1 corps, possédant deux
corps particuliers et des actionneurs. Le premier corps particulier, appelé base, est le socle du
robot ; le second, appelé terminal, est le support d’un préhenseur ou d’un outil [Gorla et al.
1984]. Les n corps sont liés entre eux par des liaisons (articulations), suivant une structure de
chaîne, ces liaisons sont de nature rotoïde R ou prismatiques P. Les corps et les liaisons du
robot manipulateur sont numérotés de 0 à n dans un ordre croissant en partant du socle (voir
figure I.1).

Ci+1
Ci Cn-1
Cn

C1
Corps i Terminal
Outil
Base
C0 Liaison ou articulation
i

Figure I.1. Robot à chaîne ouverte simple

I-2-3. Degré de liberté d’un robot manipulateur

Le degré de liberté ddl d’un robot manipulateur est égal au nombre des paramètres
indépendants qui fixent la situation de l’organe terminal.

I-2-4. Espace opérationnel

L’espace opérationnel est celui dans lequel la situation de l’organe terminal est
représentée. La solution la plus simple consiste à utiliser les coordonnées cartésiennes. Soit
Rm cet espace. La valeur m constitue donc le nombre de degrés de liberté maximum que peut
avoir l’organe terminal, égal au nombre des paramètres indépendants nécessaires pour décrire
la situation de l’organe terminal dans l’espace cartésien.

7
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

I-2-5. Notion de redondance

Un robot est redondant lorsque le nombre de degrés de liberté de l’organe terminal est
inférieur au nombre d’articulations motorisées. Cette propriété permet d’augmenter le volume
du domaine accessible et de préserver les capacités de déplacement de l’organe terminal en
présence d’obstacles, le ou les degrés de liberté supplémentaire autorisant leur contournement.

I-2-6. Notion de configuration singulière

Pour tous les robots, soient redondants ou non, il se peut dans certaines configurations
dites singulières le nombre de degrés de liberté de l’organe terminal soit inférieur à la
dimension de l’espace opérationnel [Dombre et al. 1988]. Ce cas se présente par exemple
lorsque :

- Deux axes d’articulations prismatiques se retrouvent parallèles (cf. figure I.2.(a));

- Deux axes d’articulations rotoïdes se retrouvent confondus (cf. figure I.2.(b));

Exemple 1.1

Dans le cas de la figure I.2.(a), le robot est dans une configuration singulière, en effet, en
faisant varier les deux liaisons prismatiques d’une même amplitude, mais en sens opposé,
l’organe terminal ne change pas de situation. Même chose pour les articulations rotoïdes de la
figure I.2.(b).

(a) (b)

Figure I.2. Exemples de singularité

I-3. DESCRIPTION GEOMETRIQUE DES ROBOTS MANIPULATEURS

I-3-1. Introduction

Dans ce paragraphe nous allons présenter les démarches qui sont utilisées pour la
description géométrique des robots manipulateurs à chaîne ouverte simple, deux méthodes
vont être présentées, l’une d’elles utilise la convention de Denavit-Hartenberg [1955] [Spong
et al. 1989, Coiffet 1992], l’autre c’est celle qui s’appelle la convention de Denavit-
Hartenberg modifiées, présenté par Khalil et Kleinfinger [Dombre et al. 1988, Spong et al.

8
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

1989, Coiffet 1992], cette dernière nous allons l’utiliser par la suite dans la modélisation des
robots manipulateurs.

I-3-2. Hypothèses de base [Dombre et al. 1988]

Les deux méthodes sont basées sur les règles suivantes :


• La variable de l’articulation i est notée qi ,

• Le corps est noté Ci .

• Les corps sont supposés parfaitement rigide. Ils sont connectés par des
articulations considérées comme idéales (pas de jeu mécanique, pas d’élasticité).

• Le repère Rj est lié au corps Cj.

I-3-3. Méthode utilisant la convention de Denavit-Hartenberg [1955]

Denavit et Hartenberg ont proposé une méthode systématique qui permet d’effectuer le
passage entre articulations adjacentes d’un système mécanique. Cette méthode est appelée la
convention de Denavit-Hartenberg, elle est mise en 1955 [Denavit et al. 1955].

La convention de DH standard concerne essentiellement les chaînes cinématiques


ouvertes, dont chaque articulation possède un degré de liberté de rotation ou de translation.

La translation et la rotation sont des assemblages cinématiques dits d’ordre inférieur,


c’est-à-dire que les surfaces adjacentes restent en contact pendant leur déplacement. Les six
possibilités ainsi offertes [Gorla et al. 1984] sont la charnière, la glissière, le palier
cylindrique, la rotule sphérique, le couple vis-écrous, et le mouvement plan sur plan. Les
robots ne font guère appel qu’à la charnière et la glissière. La convention DH est basée sur les
hypothèses et les règles suivantes :

1- Numérotation des bras constitutifs du robot manipulateur, à partir du support de base.


Le statif ou socle est le référentiel d’indice 0, tandis que la pince ou l’outil constitue le
référentiel d’ordre n, comme l’illustrée la figure I.1, le bras i est mobile par rapport au bras
i-1, par un mouvement de translation ou de rotation dans le référentiel du bras i-1.

2- Définition du système d’axes de chacun des bras en appliquant les règles suivantes :

a- L’axe Zi-1 correspond au déplacement du bras i dans le référentiel i-1. Dans le cas
d’une articulation prismatique Zi-1 définit l’axe de translation du bras i dans Oi-1; pour une
rotation, Zi-1 définit l’axe de rotation du bras i.

b- L’axe Xi est choisi perpendiculaire à Zi-1 d’une part et Zi d’autre part. Si Zi et Zi-1 ne se
coupent pas, nous choisissons Xi colinéaire avec la perpendiculaire commune à Zi et Zi-1. Si Zi
et Zi-1 se coupent, l’orientation de Xi n’est pas définie, et nous pouvons la choisir celle que

9
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

nous voulons. Si d’autre part Zi et Zi-1 sont colinéaires, Xi peut être choisi quelconque dans le
plan perpendiculaire à Zi-1.

c- L’axe Yi est choisi de façon à obtenir un trièdre XiYiZi trirectangle direct.

Nous voyons donc que le choix d’un système d’axe reste assez souple.

La convention dit que pour passer de Oi-1 à Oi et de Ri-1 à Ri [Coiffet 1992], nous pouvons
toujours suivre le chemin suivant :
1. Une rotation autour de Zi-1 d’un angle θ i : Rot (Z, θ )

2. Une translation le long de Zi-1 d’une longueur di : Tr (Z,d)


3. Une translation le long de Xi d’une longueur ai : Tr (X,a)

4. Une rotation autour de Xi d’un angle αi : Rot (X, α ).

Les grandeurs θ i , di, ai et αi sont définies de la façon suivante : [Spong et al. 1989]

di : distance entre Oi-1 et l’intersection de Xi et Zi-1, le long de l’axe Zi-1. di est une variable
si l’articulation i est prismatique.

ai : distance entre Oi et l’intersection de Xi et Zi-1, le long de l’axe Xi

α i : l’angle entre Zi-1 et Zi mesuré autour de l’axe Xi..


θ i : l’angle entre Xi-1 et Xi mesuré autour de l’axe Zi-1, θi est une variable si l’articulation
est rotoïde (voir figure I.3).

Zi
αi Yi
Zi-1

ai

Xi
Oi
di

Yi-1
Oi-1

θi

Xi-1

Figure I.3. Paramètres de Denavit-Hartenberg standard

10
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

I-3-4. Forme générale de la matrice de transformation

Cette matrice définie le repère Ri dans le repère Ri-1. Dans cette convention, la matrice de
transformation est toujours égale à [Vibet 1987, Spong et al. 1989, Coiffet 1992]:
Tii −1 = Rot(Z,θ)Tr(Z,d)Tr(X,a) Rot(X,α) (1.1)

avec :
⎛1 0 0 0⎞
⎜ ⎟
⎜ 0 Cosα − Sinα 0⎟
Rot(X,αi )=⎜ ⎟
i i
(1.2)
⎜ ⎟
⎜ 0 Sinαi Cosαi 0⎟
⎜ ⎟
⎝0 0 0 1⎠

⎛ Cosθ i − Sinθ i 0 0⎞
⎜ ⎟
⎜ ⎟
Sinθ i Cosθ i 0 0⎟
Rot(Z,θ i )=⎜ (1.3)
⎜ ⎟
⎜ 0 0 1 0⎟
⎜ ⎟
⎝ 0 0 0 1⎠

⎛ 1 0 0 di ⎞
⎜ ⎟
⎜ 0 1 0 0⎟
Tr(X,di )=⎜ ⎟ (1.4)
⎜ ⎟
⎜ 0 0 1 0⎟
⎜ ⎟
⎝ 0 0 0 1⎠

⎛1 0 0 0⎞
⎜ ⎟
⎜0 1 0 0⎟
Tr(Z,ai )=⎜ ⎟ (1.5)
⎜ ⎟
⎜0 0 1 ai ⎟
⎜ ⎟
⎝0 0 0 1⎠

en remplaçant dans la relation (1.1) nous trouvons :


⎛ Cosθ i − Sinθ i Cosαi Sinθ i Sinαi ai Cosθ i ⎞
⎜ ⎟
⎜ ⎟
Sinθ i Cosθ i Cosαi −Cosθ i Sinαi ai Sinθ i
Ti =⎜⎜
i −1 ⎟
⎟ (1.6)
⎜ 0 Sinαi Cosαi di ⎟
⎜⎜ ⎟⎟
⎝ 0 0 0 1 ⎠

ou plus simplement :

11
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

⎛ Cii −1 dii −1⎞


Ti i −1 =⎜ ⎟ (1.7)
⎜0 0 0 1 ⎟
⎝ ⎠

La partie supérieure gauche de la matrice, de dimension 3x3 est la matrice


d’orientation Cii −1 du bras i (repère Ri ) par rapport au bras i−1 (repère Ri −1 ).

Les trois composantes de la colonne de droite de Ti i −1 d’équation (1.6) sont les


composantes du vecteur translation dii −1 .
Ce vecteur donne la position de l’origine du référentiel Oi dans le référentiel Oi −1 .

Remarque 1.1 [Coiffet 1992]

En principe il suffit trois paramètres pour définir l’orientation d’un référentiel par rapport
à un autre.
Cependant, du fait que Cii −1 possède seulement deux paramètres indépendants (θi ,αi ) ,
elle ne peut pas être utilisée que pour les systèmes de coordonnées qui se déduisent l’un de
l’autre par deux rotations successives, θ i d’abord, αi ensuite.

Nous notons que pour des assemblages cinématique d’ordre inférieur, ces deux rotations
sont suffisantes. Si nous avons défini les référentiels en suivant la convention DH, il est
toujours possible d’obtenir la matrice d’orientation.

Remarque 1.2 [Coiffet 1992]

La convention de Denavit-Hartenberg [1955] malgré son intérêt, ne permet pas de rendre


compte de la présence des boucles mécaniques ou d’arborescences dans la chaîne
cinématique. Or des boucles apparaissent souvent, par exemple dans les robots parallèles. De
même des robots série partant d’un tronc commun peuvent avoir plusieurs bras ou
arborescences.

Pour cela Khalil et Kleinfinger ont proposé une nouvelle notation, dérivée de celle de
Denavit-Hartenberg qui a permis la prise en considération les particularités cinématiques
précédentes, elle s’appèle aussi la convention de Denavit-Hartenberg modifiée et son énoncé
est comme suit :

I-3-5. Convention de Khalil-Kleinfinger [Dombre et al. 1988, Coiffet 1992]

Cette dernière est basée sur les conventions suivantes :


L’axe Z i du repère Ri est porté par l’axe de l’articulation i ;

L’articulation i connecte le corps Ci et Ci −1 ;

X i est sur la perpendiculaire commune à Zi et Zi +1 ;

αi est l’angle entre Zi −1 et Zi correspondant à une rotation autour de X i −1 ;

12
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

θi est l’angle entre X i −1 et X i correspondant à une rotation autour de Zi ;

ai est la distance comptée sur Zi entre X i−1 et X i ;

di est la distance entre l’axe Zi −1 et Zi le long de X i −1 ;

Ces conventions sont présentées sur la figure I.4.

Xi
Z
Zi-1
Zi
(Ri)
θi
X
Oi
(Ri-1) αi
ai
di
Oi-1
Xi-1

Figure I.4. Paramètres de Denavit-Hartenberg modifiés

I-3-6. Forme générale de la matrice de transformation


La matrice définissant le repère Ri dans le repère Ri −1 [Dombre et al. 1988, Coiffet 1992]
est donnée par :
Ti i −1= Rot(X,αi )Tr(X,di ) Rot(Z,θi )Tr(Z,ai ) (1.8)

et par le remplacement des différentes matrices de translations et de rotations nous obtenons :


⎛ Cosθ i − Sinθ i 0 di ⎞
⎜ ⎟
⎜ ⎟
Cosαi Sinθ i Cosαi Cosθ i − Sinαi −ai Sinαi
Ti i −1 =⎜⎜ ⎟
⎟ (1.9)
⎜ Sinαi Sinθ i Sinαi Cosθ i Cosαi ai Cosαi ⎟
⎜⎜ ⎟⎟
⎝ 0 0 0 1 ⎠
et nous pouvons écrire Tii −1 sous une forme simplifiée comme suit :

⎛ Cii −1 dii −1 ⎞
Ti =⎜
i −1 ⎟ (1.10)
⎜0 0 0 1 ⎟
⎝ ⎠

avec :
Cii −1 : est la matrice R3x3 d’orientation de la base du repère Ri dans la base du repère Ri −1 .

13
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

dii −1 est un vecteur colonne de 3 éléments définis les cordonnées de Oi (l’origine du


repère Ri ) par rapport au repère Ri −1 .

I-3-7. Influence de la nature de l’articulation [Dombre et al. 1988, Coiffet 1992]


Zi étant l’axe de l’articulation i, la variable de l’articulation est notée θi pour une
rotation et ai pour une translation, nous pouvons écrire la variable généralisée qi par :

qi =σ i θ i +σ i ai (1.11)

avec :
σ i =1 (σ i =0) pour une translation (1.12)

σ i =0 pour une rotation (1.13)

Remarque 1.3 [Dombre et al. 1988]


Pour la définition du repère de référence R0 , le choix le plus simple consiste à prendre R0
confondu avec le repère R1 quand q1 = 0 . Ce choix n’est pas obligatoire mais il annule les
paramètres α1 , d1 et q1 .

De même, en définissant l’axe X n du repère Rn comme étant colinéaire à X n−1


lorsque qn = 0 , nous rendons le paramètre qn nul.

I-4. MODELISATION DYNAMIQUE DES ROBOTS MANIPULATEURS A CHAINE


OUVERTE SIMPLE

I-4-1. Introduction

Un robot manipulateur, quelle que soit la fonction qui lui est attribuée, doit positionner et
orienter son organe terminal dans l’espace opérationnel, car le concepteur perçoit de façon
naturelle, par la vision la tâche à accomplir dans cet espace [Gorla et al. 1984]. Ce qui
nécessite une modélisation de ce dernier, une modélisation qui consiste à représenter le
comportement du robot par des équations algébriques, soit du point de vue des positions, c’est
le modèle géométrique, soit du point de vue des vitesses, c’est le modèle cinématique, soit
encore en considérant les efforts mis en jeu, c’est le modèle dynamique.

Les deux premiers modèles interviennent dans le calcul de la transformation de


coordonnées, permettant de programmer le robot dans l’espace de la tâche. C’est un aspect
théorique qui intéresse surtout le concepteur du robot, mais il est bon que l’utilisateur sache
de quoi il s’agit [Giordano 1990].

Pour le modèle dynamique, qui s’appelle aussi le modèle des efforts, c’est celui qui nous
intéresse dans le reste de notre étude parce qu’il est nécessaire pour la mise au point des
systèmes de commande dynamique.

14
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

I-4-2. Modèle dynamique

I-4-2-1. Introduction

Le modèle dynamique exprime les couples des différents bras du robot en fonction des
positions, vitesses et accélérations articulaires et les efforts exercés par l’organe terminal sur
l’environnement.

Il est représenté par la relation suivante :


Γ = f(q,q&,q&&,Ft ) (1.14)

où :

Γ = (n x 1) vecteur des couples/forces des actionneurs selon que l’articulation est rotoïde
ou prismatique.
q : (n x 1) vecteur des positions articulaires.

q& : (n x 1) vecteur des vitesses articulaires

q&& : (n x 1) vecteur des accélérations articulaires.

Ft : effort extérieur (forces et couples) à exercer par l’organe terminal.

La relation (1.14) est appelée modèle dynamique inverse ou tout simplement le modèle
dynamique. Le modèle dynamique direct utilisé dans la stimulation est celui qui exprime les
accélérations en fonction des positions, vitesses et couples des actionnaires. Il est alors
représenté par la relation suivante :
q&&= f(q,q&,Γ,Ft ) (1.15)

Plusieurs formalismes ont été utilisés pour obtenir le modèle dynamique des robots
[Dombre et al. 1988, Spong et al. 1989, Coiffet 1992].

Les formalismes les plus souvent utilisés sont :

a- Le formalisme de langage [Dombre et al. 1988, Spong et al. 1989, Lewis et al. 1993].

Ce dernier est mieux adapté pour le calcul du modèle direct que nous l’utilisons en
simulation :

b- Le formalisme de Newton-Euler.

Dans ce mémoire, nous présentons que le formalisme de Lagrange-Euler et nous ne


considérons que les robots à chaîne ouverte simple.

15
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

I-4-2-2. Les équations de Lagrange-Euler

I-4-2-2-1. Introduction

Le formalisme de Lagrange consiste à calculer tout d’abord la fonction de Lagrange du


robot manipulateur ; c’est-à-dire la différence entre son énergie cinétique et son énergie
potentielle, et ensuite à en déduire le modèle dynamique en calculant des dérivées et des
dérivées partielles. Les n équations scalaires obtenues, appelées équations de Lagrange.

I-4-2-2-2. Equations de mouvement de Lagrange

L’équation de Lagrange-Euler pour les systèmes conservatifs [Lewis et al. 1993] est
donnée par :
d ⎡ ∂L ⎤ − ∂L = Γ (1.16)
dt ⎢⎣ ∂q& ⎥⎦ ∂q

où :

L : la fonction de Lagrange, elle est égale à la différence entre l’énergie cinétique K


et l’énergie potentielle P , et nous écrivons :

L = K-P (1.17)
q : vecteur des coordonnées généralisées du robot.

q& : vecteur de la 1ère dérivée par rapport au temps du vecteur des coordonnées
généralisées.

Γ : vecteur des forces généralisées (ou les couples) appliquées au système.

I-4-2-2-3. Vitesses articulaires du robot manipulateur

La formulation de Lagrange-Euler exige la connaissance de l’énergie cinétique du


système physique, d’où la nécessité de la connaissance de la vitesse de chaque articulation de
ce système.
Soit : rii un point fixe du bras i exprimé dans les coordonnées homogènes par rapport au
repère du i eme bras.

⎡ xi ⎤
⎢ ⎥
⎢ yi ⎥
rii = ⎢ ⎥ =(xi , yi ,zi ,1)T (1.18)
⎢ zi ⎥
⎢ ⎥
⎢⎣ 1 ⎥⎦

16
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

Soit ri0 le même point rii exprimé par rapport au repère de base, et Ti 0 est la matrice de
transformation homogène qui lie le i eme repère au repère de base, alors ri0 est liée à rii par la

relation suivante :
ri0 =Ti0 rii (1.19)

où :
Ti0 =T10T21...Tii −1 (1.20)

La vitesse du point rii exprimé dans le repère de base peut être obtenue comme suit :

d(ri0) d 0 i
Vi0 =Vi = = (T r ) (1.21)
dt dt i i
Vi0 =T&10T21...Tii −1rii +T10T&21...Tii −1rii +...+T10T21...T&ii −1rii +Ti0r&ii (1.22)

avec :

∂T 0 ∂q j
rii =0; T&i0 = d (Ti0 )= i (1.23)
dt ∂q ∂t j

d’où, nous pouvons écrire :


⎡ i ∂Ti0 ⎤ i
Vi0 = ⎢ ∑ q& j ⎥ri (1.24)
⎢⎣ j =1 ∂q j ⎥⎦

La dérivé partielle de Ti0 par rapport à qi peut être facilement calculer en utilisant la
matrice Qi qui est définie pour une articulation rotoïde comme suit :

⎡ 0 −1 0 0 ⎤
⎢ ⎥
1 0 0 0⎥
Qi =⎢ (1.25)
⎢ 0 0 0 0⎥
⎢ ⎥
⎣ 0 0 0 0⎦

et pour une articulation prismatique


⎡0 0 0 0⎤
⎢ ⎥
⎢0 0 0 0⎥
Qi =⎢ ⎥ (1.26)
⎢0 0 0 1⎥
⎢0 0 0 0 ⎥⎦

Nous écrivons :
∂Ti i −1 =Q T i −1 (1.27)
i i
∂qi

d’où, pour i = 1,2,…n

17
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

⎧T 0T 1...T j −2 Q T j −1...Tii −1 pour j ≤i


∂Ti0 ⎪ 1 2 j −1 j j
=⎨ (1.28)
∂q j ⎪0 pour j >i

L’équation (1.28) peut être interprétée comme l’effet du mouvement du bras j sur tous
les points du bras i .

Pour simplifier les notations, nous posons U ij = ∂Ti0 / ∂q j , alors l’équation (1.28) devient
comme suit pour i =1,2,...,n

⎧T j0−1Q jT jj −1 pour j ≤ i

U ij =⎨ (1.29)
⎪0 pour j > i

en utilisant cette notation, la vitesse Vi peut être exprimée comme suit :

⎡ i ⎤
Vi =⎢∑U ij q& j ⎥ rii (1.30)
⎣⎢ j =1 ⎦⎥

I-4-2-2-4. L’énergie cinétique du robot manipulateur [Vibet 1987]

Après l’obtention de la vitesse de chaque bras, il est nécessaire de trouver l’énergie


cinétique de chaque bras i pour exprimer le modèle dynamique du robot.
Soit Ki l’énergie cinétique du bras i , i =1,2,...,n exprimé dans le repère de base du
système, et soit dKi l’énergie cinétique de la masse infinitésimale dm du bras i ; alors :

dKi =1/ 2 ( x&i2 + y&i2 + z&i2 ) dm (1.31.a)

= trace (Vi ViT )dm (1.31.b)

⎡ i ⎛ i ⎞
T⎤
=1/ 2trace⎢∑U ij q& j rii ⎜⎜ ∑U ik q&k rii ⎟⎟ ⎥ dm (1.31.c)
⎢ j =1 ⎝ k =1 ⎠ ⎥⎦

⎡ i i ⎤
=1/ 2trace⎢∑ ∑U ij rii riiT U ikT q& j q&k ⎥ dm (1.31.d)
⎣⎢ j =1 k =1 ⎦⎥
⎡ i i ⎤
=1/ 2 trace⎢∑ ∑U ij (rii dm riiT )U ikT q& j q&k ⎥ (1.31.e)
⎣⎢ j =1 k =1 ⎦⎥

La matrice U ij est constante pour tous les points du bras i et elle est indépendante de la
masse du bras i , aussi q&i est indépendante de dm .

18
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

Ki = ∫
⎡ i i
( ) ⎤
dKi = 1 trace ⎢∑ ∑Uij ∫ rii riiT dm UikT q& j q&k ⎥
2
(1.32)
segment i ⎣⎢ j =1 k =1 ⎦⎥
⎛ xi2dm
⎜∫ ∫ xi yi dm ∫ xi zi dm ∫ xi dm ⎞⎟
⎜ ⎟
⎜ xi yi dm
T ⎜∫ ∫ yi2dm ∫ i i ∫ i ⎟⎟
y z dm y dm
où : Ji =∫ ri ri =
i i (1.33)
⎜ ⎟
⎜ ∫ xi zi dm ∫ yi zi dm ∫ zi2dm ∫ zi dm ⎟
⎜ ⎟
⎜ x dm ⎟
⎝∫ i ∫ yi dm ∫ zi dm ∫dm ⎠
si nous utilisons le tenseur d’inertie Iij qui est défini par :
⎡ ⎡ ⎤ ⎤
Iij = ∫ ⎢δ ij ⎢∑ xk2 ⎥ − xi x j ⎥ dm (1.34)
⎣ ⎣k ⎦ ⎦

où : les indices i, j et k indiquent les axes principaux du i eme repère de coordonnées et δ ij est

le delta de Kronecker.
⎧ 1 pour i = j
δij = ⎨ (1.35)
⎩ 0 pour i≠ j

alors J i peut s’écrit sous la forme :

⎛ − I xx + I yy + I zz ⎞
⎜ I xy I xz mi xi ⎟
⎜ 2 ⎟
⎜ ⎟
⎜ I xx − I yy + I zz ⎟
⎜ I xy I yz mi yi ⎟
Ji =⎜ 2
⎟ (1.36)
⎜ I xx + I yy − I zz ⎟
⎜ I xz I yz mi zi ⎟
⎜ 2 ⎟
⎜⎜ ⎟
⎝ mi xi mi yi mi zi mi ⎟⎠

où : ri i =(xi , yi , zi ,1)T est le vecteur du centre de masse du bras i exprimé dans le ieme repère.

L’énergie cinétique du bras manipulateur est :


n n ⎡1 1 ⎤
K = ∑ Ki =1/ 2 ∑ Ki =1/ 2∑trace ⎢∑ ∑Uij Ji UikT q&i q&k ⎥ (1.37)
i =1 i =1 ⎢⎣ j =1 k =1 ⎥⎦

Puisque la trace d’une somme est égale à la somme des traces individuelles de chaque
matrice, nous obtenons :
n i i
[
K =1/ 2 ∑∑∑ Trace (U ij J iUikT )q& j q&k ] (1.38)
i =1 j =1k =1

19
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

et nous avons pour max(j,k)>i , l’énergie cinétique est nulle d’où nous pouvons écrire :
n n n
[
K =1/ 2 ∑∑∑ Trace(U ij J iUikT )q& j q&k ] (1.39)
i =1 j =1k =1

et de (1-39) nous écrivons : [Lewis et al. 1993]


n n
K = 1/ 2 ∑ ∑m jk (q)q& j q&k (1.40)
i =1 j =1

Comme nous pouvons l’exprimer sous la forme :


K = 1/ 2 q&T M(q)q& (1.41)

où la matrice d’inertie M(q) ∈R n×n a ses éléments définis par :

n
mjk (q) = ∑Trace [Uij Ji UikT ] (1.42)
i =1

et puisque Uij = 0 pour j>i, l’équation (1.42) peut s’écrire sous la forme :
n
mjk (q) = ∑Trace [Uij Ji UikT ] (1.43)
i = max(j,k)

I-4-2-2-5. L’énergie potentielle du robot manipulateur [Lewis et al. 1993]

Soit Pi l’énergie potentielle du bras i.


Pi = -mi g ri 0 =−mi g(Ti0ri i) i = 1,2…,n (1.44)

L’énergie potentielle totale du robot est égale à la somme des énergies potentielles de tout
les bras du robot et nous écrivons :
n n
P =∑ Pi =∑−mi g(Ti0ri i) (1.45)
i =1 i =1

où : g=(gx, gy, gz,0) est le vecteur ligne de gravité exprimé dans le repère de base R0.

I-4-2-2-6. Equation du mouvement d’un robot manipulateur

Par l’exploitation de la relation (1.41) et la relation (1.45) d’énergie cinétique et d’énergie


potentielle dans la fonction de Lagrange (1.17), puis dans la formulation de Lagrange-Euler
donnée par :

Γ= d ⎡⎢ ∂L ⎤⎥ − ∂L (1.46)
dt ⎣ ∂q& ⎦ ∂q

Nous trouvons que :


∂L = ∂K q& parce que P est indépendante de q& .
∂q& ∂q&

20
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

et par le remplacement de la valeur de K =1/2 q&T M(q)q& , nous trouvons :

∂L =q&M(q) (1.47)
∂q&

d’où :
d (∂L)= d (q&M(q)) (1.48.a)
dt ∂q& dt

= q&& M(q) + q&M& (q) (1.48.b)

et pour ∂L , nous avons :


∂q

∂L = ∂K − ∂P(q) (1.49.a)
∂q ∂q ∂q

∂(1 q&T M(q).q&) ∂P(q)


= 2 − (1.49.b)
∂q ∂q
∂M(q) ∂P(q)
= 1 q&T q& − (1.49.c)
2 ∂q ∂q

Nous remplaçons (1.48.b) et (1.49.c) dans (1.16) nous trouvons :


∂M(q) ⎞ ∂P(q)
Γ= M(q)q&&+ ⎛⎜ M& (q)− 1 q&T q& ⎟ + (1.50)
⎝ 2 ∂q ⎠ ∂q

de cela nous pouvons écrire :


Γ= M(q).q&&+h(q,q&)+G(q) (1.51)

avec :

Γ =n x 1 Vecteur des couples appliqué à l’articulation i=1,………n ;

avec Γ (t)= ( Γ 1(t), Γ 2(t), Γ 3(t),………. Γ n(t))T

q = nx1 vecteur des variables articulaires du robot manipulateur ;

avec q = (q1, q2, q3….qn)T


q& = nx1 vecteur des vitesses articulaires du robot manipulateur;

avec q& = ( q&1 , q&2 , q&3 ,…………. q&n )T

q&& = nx1 vecteur des accélérations articulaires du robot manipulateur;

avec q&& = ( q&&1 , q&&2 , q&&3 ,…………. q&&n )T

M(q) = nxn matrice symétrique d’inertie du robot, ses éléments sont égaux à :
n
mjk (q) = ∑Trace [Uij Ji UikT ] (1.52)
i = max(j,k)

21
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

h(q, q& ) = nx1 Vecteur des forces non linéaires de Coriolis et centrifuges, ses éléments
sont égaux à :
n n
hi =∑∑hikmq&k q&m i = 1, 2,……..,n (1.53)
k =1m=1

et :
hikm = ∑ trace(U jkm J jU Tj i) i, k, m = 1, 2,………,n (1.54)
j = max(i,k,m)

G(q) = nx1 vecteur des forces de gravité, ses éléments sont égaux à :
n
Gi = ∑−m j gU jirjj i = 1, 2,……..,n (1.55)
j =i

Nous pouvons écrire la matrice h(q, q& ) sous la forme C(q, q& ) q& , en suivant les démarches
suivantes :

Nous avons :
L = K – P = 1/ 2 ∑mij(q).q&i q& j −P(q) (1.56)
i, j

de (1.56) nous trouvons que :


∂L = m (q)q&
∑ kj j
dq&k j
(1.57)

et :
d ∂L = m (q)q&& + d m (q)q&
dt ∂q& ∑ j ∑ dt kj
kj j (1.58.a)
j k j

∂mkj
= ∑mkj(q)q&& j +∑ q&i q& j (1.58.b)
j i, j ∂qi

aussi :

∂L =1/ 2 ∂mij q& q& − ∂p


∂qk
∑ ∂q i j ∂q (1.59)
ij k k

Par le remplacement dans la formule de Lagrange-Euler définie pour chaque bras comme
suit :
⎛ ⎞
Γk = d ⎜ ∂L ⎟ − ∂L k=1,2,…,n (1.60)
dt ⎜ ∂q& ⎟ ∂q
⎝ k⎠ k

nous obtenons :

22
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

⎛ ∂m ∂m ⎞ ∂p
∑mkj(q).q&&j +∑⎜⎜ ∂qkj − 12 ∂qij ⎟⎟q&i q& j + ∂q =Γk k = 1,2,…,n (1.61)
j ij⎝ i k ⎠ k

et par le changement de l’ordre de sommation et la prise en compte de la propriété de la


symétrie nous trouvons :
⎛ ∂mij ⎞ ⎛ ∂m ⎞
⎜ ⎟q& q& =1/ 2 ⎜ kj − 1 ∂mki ⎟q& q&
∑⎜ ∂q ⎟ i j ∑⎜ ∂q 2 ∂q ⎟ i j (1.62)
i, j ⎝ i ⎠ i, j ⎝ i j ⎠

avec :
⎛ ∂mkj ⎞ ⎛ ⎞
⎜ 1 ∂mij ⎟q& q& = 1/ 2 ⎜ ∂mkj − ∂mki − ∂mij ⎟q& q&
∑⎜ ∂q 2 ∂q ⎟ i j ∑ ⎜ ∂q ∂q ∂q ⎟ i j
− (1.63)
i, j ⎝ i k ⎠ i, j ⎝ i j k ⎠

Les termes :
⎧⎪ ∂mkj ∂m ∂mij ⎫⎪
Cijk = 1/2 ⎨ + ki − ⎬ (1.64)
⎪⎩ ∂qi ∂q j ∂qk ⎪⎭

sont connus sous le nom les symboles de Christoffel

Alors nous pouvons écrire les équations de Lagrange-Euler sous la forme :


∂p
∑mkj(q)q&&j +∑Cijk (q)q&i q& j + ∂q =Γk , k = 1,…,n (1.65)
j i, j k

Comme nous pouvons l’écrire sous la forme matricielle :


Γ= M(q).q&&+C(q, q&) q& +G(q) (1.66)

où :
⎧⎪ ∂m (q) ∂m (q) ∂m (q) ⎫⎪
Ckj(q, q& )=1/2 ∑⎨ ⎬q&i =∑Cijk (q,q&).q&i
kj ij
+ ki − (1.67)
k ⎪⎩ ∂q i ∂q j ∂q k ⎪⎭ k

Si nous prenons en considération les frottements secs et visqueux qui sont difficile à
modéliser. Pourtant, ils sont loin d’être négligeables sur les robots industriels et aussi les
efforts extérieurs exercés par et sur l’organe terminal dans et par l’environnement ; le terme
du couple devient :
Γ= M(q).q&&+C(q, q&) q& +G(q)+ Fs q& + Fv(q&)+Γd (1.68)

où :
Fs q& et Fv( q& ) désignent respectivement les matrices des coefficients de frottement sec
et visqueux des articulations du robot.

23
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

Γd ∈ Rn est le vecteur des couples des articulations correspondant à l’effort extérieur.

I-4-3. Propriétés structurelles du modèle dynamique

Dans cette partie nous allons présenter les différentes propriétés des matrices qui
constituent le modèle dynamique du robot manipulateur, car la connaissance de ces propriétés
nous permet l’élaboration d’une commande simple et efficace du robot.

I-4-3-1. Propriétés de la matrice d’inertie M(q) [Craig 1988, Lewis et al. 1993]

1- La matrice, M(q) est symétrique et définie positive. Le fait que, l’énergie du bras
manipulateur est :

K = 1 q&T M(q).q& (1.69)


2

2- La deuxième propriété est que M(q) est donnée comme suit ;


Mm I ≤ M(q)≤ MM I (1.70)

avec Mm et MM des scalaires positives, et I est la matrice d’identité. De même, l’inverse de la


matrice d’inertie est borné, car si nous faisons l’inverse de (1.70), nous obtenons :
1 ≤ M −1(q) ≤ 1 (1.71)
MM Mm

Si les articulations sont rotoïdes, les bornes Mm et MM sont des constantes, car la variable
articulaire q apparaît dans M(q) uniquement à travers des sinus ou des cosinus, qui sont
bornés par 1. Par ailleurs, si les articulations sont prismatiques, Mm et MM peuvent être des
fonctions scalaires de la variable articulaire q.

La propriété de bornitude de la matrice d’inertie peut être exprimée comme suit :


m1 ≤ M(q) ≤ m2 (1.72)

où n’importe qu’elle norme matricielle induite peut être utilisée pour définir les scalaires m1
et m2.

I-4-3-2. Propriétés de la matrice des forces centrifuges et de Coriolis

La matrice des forces centrifuges et de Coriolis à trois propriétés sont :


1- La matrice N(q, q& ) = M& (q)−2C(q,q&) est antisymétrique [Spong et al. 1989], ce que veut
dire que les éléments njk de la matrice N(q, q& ) vérifient l’égalité njk = - nkj.

Preuve

Soit M(q), la matrice d’inertie, le kjème élément de M& (q) est donné par :

24
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

n ∂mkj
m& kj =∑ q&i (1.73)
i =1 ∂qi

Donc, le kjème élément de N = M& -2C est donné par :


nkj = m& kj -2Ck j (1.74.a)

n ⎡ ∂m ⎧ ⎫⎤
kj ⎪ ∂mkj ∂mki ∂mij ⎪
= ∑⎢ −⎨ + − ⎬⎥q&i (1.74.b)
i =1 ⎢ ∂qi ⎪⎩ ∂q ∂q ∂qk ⎪⎥
⎭⎦
⎣ i i

n ⎡ ∂mij ∂m ⎤
= ∑⎢⎢ ∂q − ∂qki ⎥⎥q&i (1.74.c)
i =1 ⎣ k j ⎦

et puisque la matrice d’inertie M(q) est symétrique, mij = mji, donc par l’échange des indices k
et j dans (1.74.a) nous trouvons

njk = - nkj (1.75)


2- La matrice N(q, q& ) vérifie la relation [Craig 1988, Lewis et al. 1993] suivante :

C(q,x) y = C (q,y)x (1.76)

avec x, y les vecteurs de vitesse de dimension (n x 1)

Preuve

Nous avons pour la kème coordonnée du vecteur C(q,x)y


Ckj(q,x)yj = ∑Cijk (q)xi yi =∑Cijk (q)xi yi (1.77.a)
i i

= ∑Cijk (q)xi yi =∑Ckj(q, y)x j (1.77.b)


i i

Car les symboles de Christoffel sont symétriques par rapport aux deux premiers indices :
3- C(q, q& ) q& peut être s’écrie sous la forme : [Armstrong et al. 1986, Craig 1988, Lewis
et al. 1993]
C(q, q& ) q& = B(q) [q q& ] + C(q) [ q& 2 ] (1.78)

où :

B(q) : une matrice de dimensions nxn(n-1)/2 des coefficients de Coriolis ses éléments
sont égaux à :
⎛ ∂mkj ∂m ∂mij ⎞⎟
bijk= ⎜ + ki − (1.79)
⎜ ∂q ∂q j ∂qk ⎟⎠
⎝ i

25
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

et [q, q& ] est un vecteur de dimension n(n-1)/2x1de produit des vitesses articulaires, il est
donné par :

[
[q, q& ] = q&1 q&2 q&1 q&3 .... & &
qn−1qn ] T
(1.80)

et C(q) est une matrice de dimension nxn des coefficients centrifuges et [ q& 2 ] est un vecteur

de dimension nx1, il est donné par :


[ q& ²] = [ q&12 q&22 .... q&n2 ] (1.81)

Les éléments de C(q) sont égaux à :


⎛ ∂mkj ∂m jj ⎞
Ckj = 1 ⎜ 2 − ⎟ (1.82)
2 ⎜ ∂q ∂qk ⎟⎠
⎝ j

4- La norme de la matrice C(q, q& ) vérifie la relation suivante :

C(q, q&) ≤ v0 q& (1.83)

où :

v0 > 0 est indépendant de q.

Preuve

D’après la relation (1.67), nous avons :


⎧⎪ ∂mkj(q) ∂m (q) ∂mij (q) ⎫⎪
Ckj(q, q& )=1/2 ∑⎨ + ki − ⎬q&i =∑Cijk (q,q&) q&i (1.84)
k ⎪⎩ ∂q i ∂q j ∂q k ⎪ ⎭ k

Dans le cas d’un robot manipulateur à n articulation uniquement rotoïdes nous avons :
⎧⎪ ∂mkj(q) ∂m (q) ∂mij (q) ⎫⎪
maxi, j, k sup ∑⎨ ∂q + ∂kiq − ∂q ⎬≤α (1.85)
k ⎪ k ⎪
n
q∈R ⎩ i j ⎭

d’où :

Ckj(q, q&) ≤ n.α q& (1.86)


2

Dans le cas d’une articulation prismatique, α dépend de la variable articulaire.


5- La matrice C(q, q& ) q& vérifie la relation [Lewis et al. 1993] suivante :

C(q, q&)q& ≤ C0 q& ² (1.87)

pour une constante bornée C0 > 0.

26
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

La norme du vecteur de Coriolis et centrifuge est bornée supérieurement par le carré de la


norme du vecteur de vitesse multipliée par une constante C0.

Nous pouvons démontrer ça en suivant les démarches de la preuve de la propriété


précédente.

I-4-3-3. Propriétés du vecteur des forces de gravité

La norme du vecteur de gravité est bornée supérieurement ce que veut dire :


G(q) ≤ gb (q) (1.88)

où : gb est une fonction scalaire.

Pour une articulation rotoïde gb est une constante indépendante de la variable articulaire
q, mais pour une articulation prismatique, gb peut être dépend de q.
G(q) est bornée parce qu’elle ne dépend que des cosinus et sinus des variables
articulaires.
I-4-3-4. Propriétés du vecteur des frottements Ft( q& )

Le frottement dans l’équation de mouvement du robot manipulateur comme il est indiqué


dans la formule (1.68) est : Ft( q& ) = Fv q& +Fd( q& )

avec Fv matrice des coefficients du frottement visqueux, et Fd le terme du frottement


dynamique (frottement sec).

Ces coefficients sont parmi les paramètres les plus difficiles à les déterminer, de ce fait la
formule (1.68) ne représente qu’une approximation mathématique pour leur influence sur le
système [Craig 1988, Lewis et al. 1993].
Les deux propriétés de notre modèle du frottement Ft( q& ) sont :

1- Le frottement à effet local est découplé, alors nous pouvons écrire chaque élément
fi( q&i ).

et nous écrivons la forme générale du frottement :


⎡ fi(q&1) ⎤
⎢ . ⎥
Ft( q& )= vec { fi(q&i)}=⎢ . ⎥ (1.89)
⎢.fn(.q&n)⎥
⎣ ⎦

avec fi(.) est définie comme fonction scalaire peut être déterminer pour chaque bras du robot
manipulateur.

Le frottement visqueux est souvent exprimé sous la forme :


{ }
Fv q& = vec vi q&i (1.90)

27
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

avec vi est un coefficient constant

Le frottement sec peut être souvent exprimé sous la forme :


{
Fd( q& ) = vec Ki sgn(q&i ) } (1.91)

avec Ki coefficient constant et sign est une fonction définie pour x scalaire par :
⎧⎪ +1 x>0
sign(x) = ⎨ indéter miné x=0 (1.92)
⎪⎩ −1 x<0

Une borne sur les termes de frottement est définie par :

Fv q& + Fd (q&) ≤ V q& + K (1.93)

avec V et K des termes connus pour chaque bras et • désigne une norme vectorielle
appropriée.
2- Les forces de frottement sont dissipatives, c’est-à-dire, q&T F(q&)≥0 .

I-4-3-5. Propriétés du vecteur Γd

Le vecteur Γd, correspond aux incertitudes de modélisation dynamique et aux


perturbations, il est borné par :
Γd ≤ d (1.94)

où : d représente une constante scalaire qui peut être déterminée pour n’importe quelle
articulation du robot manipulateur. • désigne une norme vectorielle appropriée.

I-4-3-6. Propriétés de passivité des robots manipulateurs

Un système est dit passif [Lozano et al. 2001] s’il vérifie une inégalité du type :
t
∫ uT y dτ ≥ −γ 2 ∀ t, t0 où γ ∈ R (1.95)
t0

Nous allons montrer qu’un robot manipulateur est passif lorsque nous définissons la
sortie comme q& .

L’énergie cinétique stockée dans les masses qui composent le robot est donnée par :
1 q&T M(q)q& (1.96)
2

L’énergie potentielle est dénotée par U(q) ≥ 0. elle est telle que :
∂U = g(q)T (1.97)
∂q

Considérons la fonction de Lyapunov candidate :

28
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

V(q,q&) = 1 q&T M(q)q& +U(q) (1.98)


2

alors :

2
{ }
V& = 1 q&&T M(q)q& +q&T M& (q)q& + q&T M(q)q&& + ∂U q&
∂q
(1.99.a)

= q&T M(q)q&&+ 1 q&T M& (q)q& + g(q)T q& (1.99.b)


2

= q&T [−C(q,q&)q& − g(q)+Γ]+ 1 q&T M& q& + q&T g(q) (1.99.c)


2

[
=q&T Γ+ 1 q&T M& (q)−2C(q,q&) q&
2
] (1.99.d)

= q&T Γ (1.99.e)

où nous avons utilisé le fait que M& −2C est antisymétrique.

Finalement :
t t
∫t 0
V&dt = ∫ q&T Γdt = V(t)−V(t0 ) ≥ −V(t0 )
t0
(1.100)

ainsi nous pouvons conclure que l’opérateur : Γ→q& est passif.

I-4-3-7. Linéarité dans les paramètres [Dombre et al. 1988]

L’équation dynamique du robot a une propriété très importante que nous allons l’utiliser
dans le chapitre III de ce mémoire. Cette propriété est nommée, linéarité dans les paramètres,
le premier qui a utilisé cette dernière est [Craig 1988] dans la commande adaptative. Cela est
important, puisque la majorité ou tout les paramètres peuvent être inconnu; ainsi les
dynamiques sont linéaires dans les termes inconnus.

Cette propriété peut être exprime comme


Γ= M(q).q&&+C(q, q&) q& +G(q)+ Fs q& + Fv(q&)+Γd (1.101.a)

= M(q).q&&+ N(q, q&) =Y (q, q&, q&&)θ (1.101.b)

avec θ est le vecteur qui contient tous les paramètres du robot et Y (q, q&,q&&) est une matrice des
fonctions du robot, elle dépende des variables articulaires, vitesses articulaires et accélérations
articulaires. Cette matrice peut être calculée pour n’importe quel robot donné, donc elle est
connue.

I-4-4. Exemple de modélisation d’un robot de type Puma 560

Dans cet exemple, nous allons faire la modélisation dynamique du robot manipulateur
Puma 560 [Armstrong et al. 1986, Lewis et al. 1993] et cela par l’application des formules de
ce chapitre. Ce modèle sera par la suite utilisé pour valider les commandes présentées dans ce
mémoire par la simulation Matlab.

29
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

Le robot Puma 560 est un robot à 6 degrés de liberté, dont les trois premiers sont rotoïdes,
le reste sont ceux de l’organe terminal comme le montre la figure I.5.

1 2eme bras
2

3eme bras
1er bras
5

6
L’organe terminal
4

Figure I.5. Le Robot Puma 560

a) : Paramètres mesurés du Puma 560

Les masses des axes de 1 à 6 sont reportées sur le tableau I.1; la masse du bras 1 n’est
pas incluse parce qu’il se trouve confondu avec la base, et il tourne autour de son axe Z1
seulement (voir figure I.6).

Axes masse de l’axe (kilogramme)


2eme bras 17.40
3eme bras 4.80
er
1 axe de l’organe terminal 0.82
2eme axe de l’organe terminal 0.34
3eme axe de l’organe terminal 0.09
eme
3 bras avec l’organe terminal complet 6.04
L’organe terminal détaché 2.24

Tableau I.1. Masses des axes (kilogramme ; ±0.01+1% )

Les positions des centres de gravités sont reportées sur le tableau I.2. Les dimensions x ,
y et z sont les coordonnées des centres de gravité des différents axes par rapport au repère de
chaque axe.

30
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

Axes x y z
2eme bras 0.068 0.006 -0.016
eme
3 bras 0 -0.070 0.014
3eme bras avec le terminal 0 -0.143 0.014
er
1 axe de l’organe terminal 0 0 -0.019
eme
2 axe de l’organe terminal 0 0 0
eme
3 axe de l’organe terminal 0 0 0.032
Le terminal 0 0 -0.064

Tableau I.2. Centres de gravité des axes (mètre ± 0.03 )

b) : Définition des paramètres géométriques

Les repères des coordonnées utilisés sont obtenus par la méthode de Denavit-Hartenberg
modifiée, le repère i est attaché à l’articulation i, et l’axe Zi se retrouve confondu avec l’axe
de rotation de cette articulation. Les repères des coordonnées sont représentés dans la
figure I.6.
Z46
Z5 Y46
Z46

Y5 X456

Z2
d3

Z1 Y2
Y1 X2
a4
Z3

X1
d4
Y3 X3
a3

a2

Figure I.6. Paramètres de Denavit-Hartenberg modifiée du robot Puma 560

31
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

Les paramètres de Denavit-Hartenberg modifiée du robot manipulateur Puma 560 sont


présentés dans le tableau I.3 avec d3=0.4318, d4=0.0203, a2=0.2435, a3=0.0934, a4=0.4331,
en mètre.
i αi θi di ai
(degree) (degree) (metre) (metre)
1 0 q1 0 0
2 -90 q2 0 a2
3 0 q3 d3 -a3
4 90 q4 -d4 a4
5 -90 q5 0 0
6 90 q6 0 0

Tableau I.3. Paramètres de Denavit-Hartenberg modifiée

c) : Calcul des matrices de passage

Les matrices de transformation sont comme suit :


Cosθ1 − Sinθ1 0 0 Cosθ2 − Sinθ2 0 0

Sinθ1 Cosθ1 0 0 0 0 1 a2
T10 = T21 =
0 0 1 0 − Sinθ2 − Cosθ2 0 0

0 0 0 1 0 0 0 1

Cosθ3 − Sinθ3 0 d3 Cosθ 4 − Sinθ 4 0 d4


Sinθ3 Cosθ3 0 0 0 0 −1 − a4
T32 = T43 =
0 0 1 a3 Sinθ 4 Cosθ 4 0 0

0 0 0 1 0 0 0 1

Cosθ5 − Sinθ5 0 0 Cosθ 6 − Sinθ 6 0 0

0 0 1 0 0 0 −1 0
T54 = T65 =
− Sinθ5 − Cosθ5 0 0 Sinθ 6 Cosθ 6 0 0

0 0 0 1 0 0 0 1

et la matrice de passage du repère R0 au repère R6 s’obtient du produit suivant:


T65 = T10 * T21 * T32 * T43 * T54 * T65

32
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

d) : Les tenseurs d’inertie

Les valeurs des constantes d’inertie [Armstrong et al. 1986] sont présentées dans le
tableau I.4.
Axes I xx I yy I zz
1er bras - - 0.35
2eme bras 0.130 ( ± 3%) 0.524 ( ± 5%) 0.539 ( ± 3%)
3eme bras 0.066 0.0125 0.086
3eme bras avec le terminal 0.192 ( ± 4%) 0.0154 ( ± 5%) 0.212 ( ± 4%)
1er axe de l’organe terminal 1.80 x10-3 1.80 x10-3 1.30 x10-3
2eme axe de l’organe terminal 0.30 x10-3 0.30 x10-3 0.40 x10-3
3eme axe de l’organe terminal 0.15 x10-3 0.15 x10-3 0.04x10-3

Tableau I.4. Valeurs des constantes d’inertie

Pour obtenir la matrice pseudo-inertie du bras i en Oi il suffit de remplacer les valeurs des
constantes d’inertie, la masse et les coordonnées du centre de gravité de l’axe i dans la
matrice donnée par (1.36) :
⎛ − I xx + I yy + I zz ⎞
⎜ I xy I xz mi xi ⎟
⎜ 2 ⎟
⎜ ⎟
⎜ I xx − I yy + I zz ⎟
⎜ I xy I yz mi yi ⎟
Ji =⎜ 2
⎟ pour i=1,2…6
⎜ I xx + I yy − I zz ⎟
⎜ I xz I yz mi zi ⎟
⎜ 2 ⎟
⎜⎜ ⎟
⎝ mi xi mi yi mi zi mi ⎟⎠

e) : Les éléments de la matrice d’inertie

Par l’exploitation de la formule (1.43) nous trouvons, et en tenant compte que :


a2=cos(x(2))
a3=cos(x(3)
a4=cos(x(4))
a5=cos(x(5))
b2=sin(x(2))
b3=sin(x(3))
b4=sin(x(4))
b5=sin(x(5))
a23=cos(x(2)+x(3))

33
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

b23=sin(x(2)+x(3))
a223=cos(2*x(2)+x(3))

où x2, x3, x4, x5 sont les variables articulaires q2, q3, q4, q5.

Les éléments de La matrice d’inertie M(q) du robot Puma 560 [Armstrong et al. 1986,
Lewis et al. 1993] sont les suivants:
M(1,1)=2.57+1.38*a2^2+0.3*b23^2+0.744*a2*b23;
M(1,2)=0.69*b2-0.134*a23+0.0238*a2;
M(1,3)=-0.134*a23-0.00397*b23;
M(1,4)=0; M(1,5)=0; M(1,6)=0;
M(2,1)=0.69*b2-0.134*a23+0.0238*a2;
M(2,2)=6.79+0.744*b3;
M(2,3)=0.333+0.372*b3-0.011*a3;
M(2,4)=0; M(2,5)=0; M(2,6)=0;
M(3,1)=-0.134*a23-0.00397*b23;
M(3,2)=0.333+0.372*b3-0.011*a3;
M(3,3)=1.16;
M(3,4)=-0.00125*b4*b5;
M(3,5)=0.00125*a4*a5;
M(3,6)=0; M(4,1)=0; M(4,2)=0;
M(4,3)=-0.00125*b4*b5;
M(4,4)=0.2;
M(4,5)=0; M(4,6)=0; M(5,1)=0; M(5,2)=0;
M(5,3)=0.00125*a4*a5;
M(5,4)=0;
M(5,5)=0.18;
M(5,6)=0; M(6,1)=0; M(6,2)=0; M(6,3)=0; M(6,4)=0; M(6,5)=0;
M(6,6)=0.19;

f) : Calcul de la matrice de Coriolis C(q,q&)

De la matrice d’inertie M(q), nous obtenons la matrice de Coriolis C(q,q& ) par


l’application de la formule (1.67) en utilisant les symboles de Christoffel, et cela par le calcul
des dérivés de M(q) par rapport à q1, q2, q3, q4, q5 et q6..
⎧⎪ ∂mkj(q) ∂m (q) ∂mij (q) ⎫⎪
Ckj(q, q& )=1/2 ∑⎨ + ki − ⎬q&i pour i=1,2,…,6
k ⎪⎩ ∂q i ∂q j ∂q k ⎪ ⎭

nous obtenons la matrice de Coriolis suivante :

34
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

Cqp(1,1)=0.5*(0.6*b23*a23-2.76*b2*a2+0.744*a223)* q& 2 +0.5*(0.6*b23*a23+0.744*a2*a23)* q& 3 ;

Cqp(1,2)=0.5*(0.6*b23*a23-2.76*b2*a2+0.744*a223)* q&1 +(0.69*a2- 0.0238*b2+0.134*b23)* q& 2 +…

0.5*(0.268*b23-0.00397*a23)* q& 3 ;

Cqp(1,3)=0.5*(0.6*b23*a23+0.744*a2*a23)* q&1 +0.5*(0.268*b23-0.00397*a23)* q&2 +…

(0.134*b23-0.00397*a23)* q&3 ;

Cqp(1,4)=0, Cqp(1,5)=0, Cqp(1,6)=0 ;

Cqp(2,1)=0.5*(2.76*b2*a2-0.6*b23*a23-0.744*a223)* q&1 +0.5*(0.00397*a23)* q&3 ;

Cqp(2,2)=0.5*0.774*a3* q& 3 ;

Cqp(2,3)=0.5*.00397*a23* q&1 +0.5*0.744*a3* q& 2 +(0.372*a3+0.011*b3)* q& 3 ;

Cqp(2,4)=0, Cqp(2,5)=0, Cqp(2,6)=0 ;

Cqp(3,1)=-0.5*(0.6*b23*a23+0.744*a2*a23)* q&1 -0.5*(0.00397*a23)* q& 3 ;

Cqp(3,2)= -0.5*0.00397*a23* q&1 -0.5*0.744*a3* q& 2 ;

Cqp(3,3)=0;

Cqp(3,4)= -0.00125*a4*b5* q& 4 - 0.00125*b4*a5* q&5 ;

Cqp(3,5)= -0.00125*b4*a5* q&4 - 0.00125*a4*b5* q&5 ;

Cqp(3,6)=0; Cqp(4,1)=0; Cqp(4,2)=0; Cqp(4,3)=0; Cqp(4,4)=0; Cqp(4,5)= 0; Cqp(4,6)=0; Cqp(5,1)=0;


Cqp(5,2)=0; Cqp(5,3)=0; Cqp(5,4)=0; Cqp(5,5)=0; Cqp(5,6)=0; Cqp(6,1)=0; Cqp(6,2)=0; Cqp(6,3)=0;
Cqp(6,4)=0; Cqp(6,5)=0; Cqp(6,6)=0

g) : La matrice des forces de gravité


La matrice des forces de gravité G (q ) [Armstrong et al. 1986, Lewis et al. 1993] est la
suivante :
G(1,1)=0
G(2,1)=-37.2*a2-8.4*b23+1.02*b2
G(3,1)=-8.4*b23+0.25*a23
G(4,1)=0.028*b23*b4*b5
G(5,1)=-0.028*(a23*b5+b23*a4*a5)
G(6,1)=0

35
Chapitre I Modélisation Dynamique des Robots Manipulateurs Rigides

I-5. CONCLUSION

Ce chapitre nous a permis de tracer un aperçu sur quelques notions de base du robot
manipulateur dans la section I.1. Dans la section I.2 nous avons abordé la description
géométrique des mécanismes articulés et plus particulièrement les robots manipulateurs en
utilisant les deux conventions de Denavit-Hartenberg, standard [1955], et celle modifiée avec
une analyse bien détaillée et complète.

Après, et en utilisant le formalisme de Lagrange-Euler, nous avons fait une modélisation


dynamique du robot manipulateur dans la section I.3.

Dans la section I.4 les propriétés structurelles du modèle dynamique du robot


manipulateur sont présentées avec des démonstrations de la majorité de ses propriétés, ainsi
les différentes formes de la matrice qui présente les effets de forces de Coriolis et centrifuge
sont données.

A la fin du chapitre, un exemple d’une analyse dynamique du robot Puma 560 est réalisé
pour l’utiliser dans ce qui suit de ce mémoire.

36
CHAPITRE II
Commandes Dynamiques
Classiques Des Robots
Manipulateurs Rigides
Dans ce chapitre, nous présenterons une synthèse des lois de commandes
dynamiques classiques des robots manipulateurs rigides : celles qui traitent le
problème de régulation telles que la commande PD, la commande PID, PD avec
compensation de l’effet de gravité…, et celles qui traitent le problème de poursuite
de trajectoire, lois de commandes basées sur la linéarisation avec retour d’état
(couple calculé, commande prédictive) et les commandes basées sur la théorie de
Lyapunov (commande de Paden et Panja, commande de Slotine et Li,…).
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

II-1. INTRODUCTION

L’objectif de ce chapitre est de faire une synthèse des lois de commande dynamiques
classiques appliquées sur les robots manipulateurs rigides. Ces lois de commande subdivisent
suivant ses objectives en, des lois qui traitent le problème de régulation et des lois qui traitent
le problème de poursuite de trajectoire. Le problème de régulation s’appelle aussi ‘point à
point’, son objectif est de déplacer l’organe terminal d’un point initial à un point final dans
l’espace articulaire d’une manière libre (c’est-à-dire que la trajectoire à suivre n’est pas
imposée), par contre dans le problème de poursuite de trajectoire, l’organe terminal doit
suivre une trajectoire bien définie dans son déplacement du point initial au point final, ce type
de commande est utilisé lorsque l’espace de travail du robot manipulateur contient des
obstacles.

Dans la section II.2 de ce chapitre, nous allons présenter des différentes méthodes de
génération de mouvement [Dombre et al. 1988, Spong et al. 1989, Lewis et al. 1993], telle
que l’interpolation linéaire, l’interpolation polynomiale de degré trois, de degré cinq
et l’interpolation Bang-Bang. Par la suite, dans la simulation, nous allons utiliser la trajectoire
d’interpolation polynomiale de degré cinq, puisqu’elle est continue en position, en vitesse
et en accélération.
La première partie de la section II.3 traite les lois de commandes classiques qui résolvent
le problème de régulation [Dombre et al. 1988, Canudas et al. 1992, Lewis et al. 1993, Khelfi
1995], où nous allons présenter la loi de commande PD qui assure la stabilité asymptotique
globale de la dynamique du robot en boucle fermée, mais avec une erreur d’état permanent
différente de zéro pour des gains Kp très grands ce qui est indésirables dans la pratique. En
deuxième lieu, nous allons exposer la commande PID qui assure la stabilité asymptotique
locale du robot en boucle fermée avec une erreur de position nulle. Bien que la présence du
terme intégral puisse causer de sérieux problèmes de saturation, ce type de commandes reste
efficace dans le domaine industriel. En troisième lieu, nous allons étudier la commande PD
avec compensation de l’effet de gravité. A la fin de cette section, nous allons exposer une loi
de commande par découplage non-linéaire qui est une bonne approche puisqu’elle améliore la
rapidité d’exécution des tâches réalisées par le robot, comme elle assure la stabilité
asymptotique globale de la dynamique du système en boucle fermée.
La deuxième partie de la section II.3 est consacrée à la présentation des lois de
commande dynamiques classiques qui traitent le problème de poursuite de trajectoire, où nous
allons traiter la commande de Paden et Panja [Paden et al. 1988, Khelfi 1995], puis la
commande linéarisante [Samson et al. 1991, Canudas et al. 1992, Lewis et al. 1993], cette

38
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

commande cherche à linéariser et à découpler la dynamique du robot. Dans ce conteste, nous


allons exposer la commande nommée couple calculé type PD et type PID [Spong et al. 1989,
Canudas et al 1992, Lewis et al. 1993] et une commande prédictive [Dombre et al. 1988], ces
commandes assurent la stabilité asymptotique globale de la dynamique du robot en boucle
fermée si les paramètres du système sont bien définis. La deuxième loi de commande que
nous allons examiner par la suite est la commande de Slotine et Li [Canudas et al. 1992,
Lozano et al. 2001] basée sur la théorie de Lyapunov. Cette loi ne cherche ni la linéarisation
ni le découplage de la dynamique du système, elle cherche seulement la stabilité asymptotique
globale (parfois exponentielle) du système. A la fin de cette partie nous allons exposer une
modification faite par Sadegh et Horowitz en 1990 de la commande de Slotine et Li. Dans la
section II-4 et afin de valider l’étude théorique de ce chapitre, nous simulons les différentes
lois de commande en les appliquant au modèle dynamique du robot Puma 560 présenté dans
la section I-4-4.

II-2. GENERATION DE MOUVEMENT

II-2-1. Introduction

Quelle que soit la tâche à exécuter par le robot manipulateur, les axes de ce dernier
doivent faire un mouvement. Le plus simple mouvement du robot est le mouvement nommé
point-à-point. Dans cette approche le robot est commandé pour aller d’une configuration
initiale à une configuration finale, dont la trajectoire est libre entre ces deux points. Ce type de
mouvement est convenable lorsque l’espace de travail ne contient pas des obstacles.

Dans le cas contraire, nous somme obligés de générer un mouvement entre les deux
points, initial et final qui permet au robot d’éviter les obstacles ce que veut dire que la
trajectoire entre ces deux points est bien définie ou d’un autre sens l’évolution désirée de la
situation de l’organe terminal (outil) est imposée.

II-2-2. Génération de mouvement entre deux points [Dombre et al. 1988]

Nous considérons un robot à n degrés de liberté. Soit qi et qf les vecteurs des coordonnées
articulaires correspondants aux configurations initiale et finale. Le mouvement interpolé entre
qi et qf en fonction du temps t, est décrit par l’équation suivante :
qd(t)=qi+r(t)D 0≤t≤t f (2.1)

avec :

D=qf-qi (2.2)

Les valeurs aux limites de la fonction d’interpolation r(t) sont données par :

39
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

⎧ r(0)=0
⎨r(t )=1 (2.3)
⎩ f

Plusieurs fonctions permettent de satisfaire le passage par qi à t=0 et par qf à t=tf. Nous
étudierons successivement l’interpolation polynomiale et la loi Bang-Bang.

II-2-2-1. Interpolation polynomiale

Les modes d’interpolation polynomiale les plus fréquemment rencontrés sont


l’interpolation linéaire et l’interpolation par des polynômes de degré trois et cinq.

a). Interpolation linéaire [Dombre et al. 1988, Craig 1988]

Cette méthode est la plus simple à mettre en oeuvre. Le mouvement de chaque axe est
décrie par une équation linéaire en fonction du temps. L’équation de mouvement est comme
suit :
qd (t)=qi + r(t)D (2.4)

avec :
⎧ D =q f −qi

⎨ (2.5)
⎪ r(t)= t

tf

La forme de cette trajectoire est illustrée dans la figure II.1.


qj q& j
q jf

q& jf − q& ij
tf
q ij t t
tf tf
q&& j

tf
t

Figure II.1. Interpolation linéaire pour une articulation donnée j

Cette loi de mouvement impose une vitesse constante le long de la trajectoire, elle est
continue en position et discontinue en vitesse.

40
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

b). Interpolation polynomiale de degré trois [Dombre et al. 1988]

Si nous imposons une vitesse nulle au point initial et au point final, nous ajouterons deux
contraintes aux deux contraintes précitées dans l’équation de position de la méthode
interpolation linéaire. Le polynôme qui satisfait ces quatre contraintes est de degré trois et il a
la forme générale suivante :
qd (t)=α0 +α1 t +α 2t 2 +α3t 3 (2.6)

avec les conditions initiales et finales :


qd (0)=qi , qd (t f )=q ,f q&d (0)=0, q&d (t f )=0. (2.7)

nous définissons les coefficients de la relation (2.6) avec ces conditions et nous obtenons :

α0 =qi ,α1 =0,α2 =3 D2 ,α3 =−2 D3 (2.8)


tf tf

Par le remplacement de (2.8) dans (2.6) nous trouvons :

qd (t)=qi +(3( t )2 −2( t )3)D (2.9)


tf tf

La figure II.2 montre l’évolution de la position, la vitesse et l’accélération avec le temps


en utilisant une interpolation polynomiale de degré trois. Cette loi de mouvement assure la
continuité de vitesse mais pas celle d’accélération.

qj 3D q& j
q jf j
2t
f

q ij t t
tf tf /2 tf
q&& j
6D
j
tf
t2 t
f
tf /2 t

Figure II.2. Interpolation polynomiale de degré trois pour une articulation donnée j

c). Interpolation polynomiale de degré cinq

Si nous cherchons la continuité de l’accélération, nous somme obligé de satisfaire six


contraintes et l’interpolation polynomiale sera de degré cinq. Choisissons en plus à (2.7), les
conditions :

41
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

q&&d (0)=0,q&&d (t f )=0 (2.10)

En utilisant les même paramètres comme avant nous pouvons démonter que l’équation de
mouvement s’écrit comme suit :

qd (t)=qi +(10( t )3 −15( t )4 +6( t )5)D (2.11)


tf tf tf

L’évolution de la position, la vitesse et l’accélération du bras i avec une interpolation


polynomiale de degré cinq est représentée dans la figure II.3.

qj q& j
q jf 30 D j

tf

q ij t t
tf tf /2 tf
&& j
10 D j q

3t f tf
t
tf /2

Figure II.3. Interpolation polynomiale de degré cinq pour une articulation donnée j

II-2-2-1. Interpolation Bang-Bang

Le mouvement est représenté par une phase d’accélération constante jusqu’à tf /2 puis par
une phase de désaccélération jusqu’à tf. Les vitesses initiale et finale sont égales à zéro. La
trajectoire est continue en position et vitesse mais pour l’accélération est discontinue voir
figure II.4. Le mouvement s’écrit :
⎧q (t) =qi +2( t )2D pour 0≤t ≤t f /2
⎪d tf

⎨ (2.12)
⎪ ⎡ ⎤
q (t) = qi +⎢−1+4( t ) −2( t )2⎥ D pour t f /2 ≤t ≤t f
⎪d ⎢
⎩ ⎣ tf t f ⎥⎦

Ceci constitue essentiellement des types de trajectoires de référence qui nous serviront
dans notre étude, il existe d’autre type de trajectoires de cosinus et de sinus. Il s’est avéré
pendant les recherches que la trajectoire de degré cinq est le plus riche pour l’analyse de la loi
de commande.

42
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

qj 2D q& j
q jf j
t
f

q ij t t
&& tf tf /2 tf
4D qj
j
t2
f tf
t

Figure II.4. Interpolation Bang-Bang pour une articulation donnée j

II-3. LOIS DE COMMANDE CLASSIQUES POUR LES ROBOTS


MANIPULATEURS

Nous appelons commande dynamique tout système capable d’assurer la compensation


automatique des forces et couples dus aux vitesses et accélérations des bras massifs d’un
mécanisme articulé : forces d’inertie, centrifuges et de Coriolis agissant sur chaque bras pris
isolement [Dombre et al. 1988].

Dans cette section nous allons présenter une synthèse des commandes dynamiques
classiques appliquées aux robots manipulateurs, que nous pouvons les classifier selon ses
objectifs en deux catégories.

La première classe contient les commandes qui traitent le problème de régulation. La


commande PD (Proportionnelle et Dérivée) est la plus simple commande de cette classe, elle
assure la stabilité asymptotique globale de la dynamique du robot en boucle fermée mais en
utilisant des grands gains. Pour faire face à cet inconvénient, nous ajoutons un terme intégral à
la commande PD, ce qui nous permet d’obtenir une commande de type PID, qui assure à son
tour la stabilité asymptotique locale de la dynamique du système en boucle fermée, mais elle
ne peut pas garantir l’uniformité du comportement transitoire. Pour remédier ce problème,
nous faisons appel à une commande de type PD avec compensation des forces de gravité
G(q), cette commande assure la stabilité asymptotique de la dynamique du système en boucle
fermée avec une erreur d’état permanent nulle. Dans ce conteste, nous allons exposer aussi
une commande par découplage non linéaire.

La deuxième classe contient les commandes qui traitent le problème de poursuite de


trajectoire, cette dernière subdivise à son tour en deux grandes catégories, dont la première est
celle des commandes linéarisantes qui cherchent à linéariser et découpler les dynamiques du

43
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

robot (différents types de la commande couple calculé). Par contre dans la deuxième
catégorie, nous trouvons les commandes basées sur la théorie de Lyapunov (commande de
Paden et Panja, de Slotine et Li, de Sadegh et Horowitz), qui ne cherche ni la linéarisation, ni
la le découplage des dynamiques du robot, mais elles exploitent les propriétés des robots
manipulateurs, et cherchent la stabilité asymptotique globale (ou bien exponentielle) du
système en boucle fermée.

II-3-1. Problème de régulation

II-3-1-1. Loi de commande de type PD

Dans la première étape, nous appliquons une simple commande de type PD sur le robot
manipulateur [Spong et al. 1989, Canudas et al. 1992, Lewis et al. 1993]. Par la négligence
des termes de frottements et les perturbations extérieures, l’équation du robot devient :
M(q)q&&+C(q,q&)q& +G(q)=Γ (2.13)

L’objectif de régulation est de maintenir la position de la variable articulaire q du robot


constante autour d’une position désirée constante dénotée qd. La commande proportionnelle
dérivée (PD) a la forme de base suivante :
Γ= K p(qd −q)− Kv q& (2.14)

Soit q~ = q − q d l’erreur de position, alors, nous avons q~& = q& et q&~& = q&& puisque q& d = 0 . En
appliquant cette loi de commande sur la dynamique du robot, nous obtenons la dynamique du
système en boucle fermée (voir figure II.5) :
&
&+ C (q, q&)q%
M (q)q% &+ G (q) + K q%
& %= 0 (2.15)
v + K pq

qd + + q
Kp Robot
- q&
-

Kv

Figure II.5. Schéma synoptique de la commande type PD

Les points d’équilibres du système en boucle fermée sont définis par l’ensemble :
{
S = ( q~ , q~& ):K p q~ + G ( q~ + q d ) = 0 , q~& = 0 } (2.16)

L’analyse de la stabilité du système en boucle fermée se fait au sens de Lyapunov et pour


cela la fonction candidate de Lyapunov est choisie comme :

44
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

{
S = ( q~ , q~& ):K p q~ + G ( q~ + q d ) = 0 , q~& = 0 } (2.17)

où P(q) représente l'énergie potentielle et P0 est une constante positive choisie pour que la
fonction candidate V de Lyapunov soit définie positive.

Si nous dérivons V par rapport au temps, nous obtenons :


&&+ 1 q~& T M& (q)q~& +q~& T K pq~+ P& (q)
V&(q~,q~& )=q~& T M(q)q~ (2.18)
2

La dérivée de l’énergie potentielle est calculée comme suit :


∂q ∂p
p& (q)=( )T =q&T G(q) (2.19)
∂t ∂q

puisque ;
∂p
=G(q) (2.20)
∂q

par le remplacement de M(q) q&~& obtenue de l’équation (2.15) dans (2.18) nous obtenons :

V&(q~,q~& )=−q~& T C(q,q~& )q~& −q~& T Kv q~& −q~& T K pq~−q~& T G(q)+ 1 q~& T M& (q)q~& +q~& T K pq~+q~& T G(q)
2
M& (q)
En exploitant la propriété q~& T [ − C (q, q& )]q~& = 0 , nous obtenons directement le
2
résultat :
V&(q~,q~& )=−q~& T Kv q~& (2.21)

qui est une fonction semi-définie négative, alors le point d’équilibre (q~, q~& ) = (0,0) est stable au
sens de Lyapunov.
Mais la négativité de (2.21) assure seulement la convergence du deuxième état, ou q~& , à
zéro, donc l’analyse n’est pas complète. Nous pouvons donc appliquer le théorème de LaSalle
pour conclure que les états du système convergeront à l’ensemble S défini par l’équation
(2.16), dans un temps fini.
Nous avons V&(q~,q~& )=0 seulement pour, alors par le remplacement de cette dernière dans la
dynamique de la boucle fermée (2.15), nous obtenons :
K pq~+G(q)=0 (2.22)

qui est sûrement vrai si,


q~ = − K −p1G (q ) (2.23)

alors,
q~ ≤ K −p1 G(q) ≤ gb K −p1 (2.24)

45
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

où gb est une borne supérieure du vecteur de gravité citée dans l’équation (1.88).

De cela nous concluons que le système converge localement vers S défini dans l’équation
(2.16) et que la précision du système dépend de la matrice du gain Kp.
En outre, si Kp et Kv sont des matrices définies positives alors toutes les solutions (q~, q~& )
convergent asymptotiquement globalement (si Kp est grand) ou localement (si Kp est petit) à
l’ensemble des points d’équilibre S.

L'erreur de l’état stable peut donc, en principe, soit réduit en augmentant Kp


arbitrairement, néanmoins le bruit de mesure et autres dynamiques non modélisables
limiteront l'usage de hauts gains.

II-3-1-2. Loi de commande de type PID

Pour résoudre le problème des hauts gains de la commande PD, la commande PID
[Spong et al. 1989, Canudas et al. 1992, Lewis et al. 1993] peut être utilisée. Pour cela,
l’action intégrale peut donc être soit ajoutée à la commande PD pour agir sur les forces de
gravité qui peuvent être considérées dans certaines mesures comme des perturbations
constantes. Cela mène à une commande d’une structure Proportionnelle, Intégrale et Dérivée
(PID).

La loi de commande PID a la forme suivante (voir figue II.6) :


t
Γ=−Kv q& + K p(qd −q)+ Ki ∫ (qd −q)dt (2.25)
0

-
qd + ε
Kp
+ q
+
Ki ∫ Robot
+ q&
q& d ε&
+
Kv
-

Figure II.6. Schéma synoptique de la commande type PID

nous décrivons la dynamique du robot (2.13) sous la forme d'espace d'état,


avec ξ1 = q, ξ 2 = q& et ξ T = (ξ1T , ξ 2T ) , comme :

ξ&1 =ξ2 (2.26)

(
ξ&2 =M(ξ1 )−1 −C(ξ1 ,ξ2 )ξ2 −G(ξ1 )+Γ ) (2.27)

46
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

et les erreurs du vecteur d'état sont définies comme :


~
ξ1 =ξ1 −ξd1 (2.28)
~
ξ2 =ξ2 (2.29)

où, ξ d1 dénote le vecteur des positions désirées qd. nous introduisons l'intégrale de l'erreur de
position plus la composante − G (ξ d1 ) , comme un troisième état,
~ t~
ξ3 =∫ ξ1 dτ −G(ξd1) (2.30)
0

Le remplacement de la commande (2.25) dans (2.27) donne :


~& ~
ξ1 = ξ2
~&
[ ~ ~ ~ ~
ξ2 =M(ξ1 )−1 −C(ξ1 ,ξ2 )ξ2 −G(ξ1 )− K pξ1 − Kvξ2 − Ki (ξ3 +G(ξd1))
~
] (2.31)

~& ~
ξ3 =ξ1

Pour étudier la stabilité locale de l'équation d'erreur précitée du système, nous


considérons une approximation de sa tangente linéaire autours de l’origine,
~& ~ ~
ξ = Aξ +o(ξ ) (2.32)

avec :
⎡ 0 I 0 ⎤ ⎛ ξ~ ⎞
⎢ ⎥ ⎜ 1 ⎟
~ ~
A = ⎢(− B0 K p + A0 ) − B0 K v Ki ⎥ , ξ = ⎜ξ 2 ⎟ (2.33)
⎢ ⎥ ⎜~ ⎟
⎢⎣ I 0 0 ⎥ ⎜ξ 3 ⎟
⎦ ⎝ ⎠
~
où o(ξ ) décrit les termes du plus haut ordre de l'expansion de Taylor.
~ ~ 2
Notons que pour la dynamique du robot, o(ξ ) satisfait : o(ξ ) ≤ c1 ξ .

∂M −1G
Les matrices A0 et B0 sont données par : A0 = , B0 =M(ξd1)−1 (2.34)
∂ξ1
ξ1 =ξ d1

Si les gains Kp, Kv et Ki sont choisis pour rendre le système autonome linéaire
asymptotiquement stable, les états du système en boucle fermée (2.32) tendent vers zéro.
~
Donc ξ1 → 0 , l'erreur d'état stable peut être nulle sans la présence des perturbations.

Si A est une matrice stable, nous pouvons alors définir V comme :


~ ~
V =ξ T Pξ (2.35)

47
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

où P est une matrice symétrique définie positive satisfaisant : PA+ AT P=−Q , pour Q>0. Alors

nous obtenons :
~ ~ ~ ~
V& = −ξ T Qξ + 2ξ T P0 (ξ ) (2.36)

~2 ~3
≤ −λminQ ξ + 2c0 p0 ξ (2.37)

~2
( ~
= − ξ λminQ−2c0 p0 ξ ) (2.38)

où c0 est une constante positive et p0 est une borne supérieure pour la norme de P. Au
voisinage de l'origine, le terme carré négatif domine le terme cubique positif. Le point
d’équilibre est donc localement stable au sens de Lyapunov. Il est maintenant simple à
prouver en se basant sur le théorème des ensembles invariants que le vecteur de l'erreur
converge vers zéro.

Il est important de savoir que l’application de la commande PID sur des robots
manipulateurs réels peut causer de sérieux problèmes si elle n’est pas bien calculée. Ces
problèmes sont dus au phénomène appelé ‘’Integrator windup’’ [Lewis et al. 1993].

II-3-1-3. Loi de commande de type PD avec compensation de l’effet de gravité

Nous pouvons remarquer de l’application d’une simple loi de commande de type PD, que
la dynamique du système n'est pas utilisée. Donc, les non linéarités du système du robot ne
sont pas compensées. Alors, en incluant quelques termes dynamiques non linéaires dans la
commande PD va probablement donner de bons résultats. En effet, la compensation de la
gravité agit comme un correcteur qui compense seulement l’ensemble des forces qui créent le
dépassement et le comportement transitoire asymétrique du système.

Pour profiter de ces avantages la commande PD est remplacée par une commande PD
plus le terme des forces de gravité [Khelfi 1995, Lozano et al. 2001]. Ce type de loi de
commande s’appelle commande point à point. L’objectif de cette loi de commande consiste à
maintenir les positions articulaires du robot manipulateur autour d’une valeur désirée
constante q d . Pour cette méthode, la commande, le couple Γ appliqué aux actionneurs, est
donnée par
Γ = G(q)− K p q~ − Kv q& (2.39)

où :
q~ = q − qd (2.40)

désigne l’écart de position, Kp ∈Rn xn , Kv ∈Rn xn sont des matrices définies positives, Kp>0,

Kv>0. La loi de commande est composée par un terme de compensation de la gravité.

48
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

En insérant la loi de commande dans le modèle du robot, nous obtenons la dynamique du


système en boucle fermée (voir figure II.7) :
M(q)q&&+C(q,q&)q& +G(q) = G(q) − K p q~ − Kv q& (2.41)

ou encore :
M(q)q&&+C(q,q&)q& + Kv q& + K p q~ =0 (2.42)

Nous allons utiliser une fonction de Lyapunov candidate composée de l’énergie cinétique
et d’une énergie potentielle introduite par la loi de commande et donnée par :

V(q&,q~)= 1 q&T M(q)q& + 1 q~T K p q~ (2.43)


2 2

G(q)

+
qd + q
Kp + Robot
- - q&

Kv

Figure II.7. Schéma synoptique de la commande type PD avec compensation de l’effet


des forces de gravité
En substituant M(q) q&& , nous obtenons :

V& = q&T[−Cq& − Kv q& − K p q~]+ 1 q&T M& q& + q&T K p q~ (2.44.a)


2

= − q&T Kv q& + 1 q&T [M& −2C]q& (2.44.b)


2
= − q&T Kv q& ≤0 (2.44.c)

L’état xT = [q~T ,q&T ] du système bouclé est borné. Nous considérons alors une trajectoire
(q(t), q& (t)) contenue dans l’ensemble :

{
Z = (q~,q&) V&(q~,q&) ≡ 0 } (2.45)

qui est équivalent à :


Z = {q& =0} (2.46)

49
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

L’équation de la boucle fermée est :


M(q)q&&+C(q,q&)q& + Kv q& + K pq~ =0 (2.47)

C’est-à-dire que les trajectoires dans Z sont telles que q~ = 0 .

En réalité la seule trajectoire contenue dans Z est le point d’équilibre (q, q& )=( q d ,0) du
robot manipulateur. D’après le théorème de LaSalle, le point d’équilibre ( q d ,0) est
asymptotiquement stable.

Lorsque l’application nécessite des évolutions rapides du robot et une grande précision
dynamique, il est nécessaire de concevoir un système de commande plus sophistiqué qui
prenne en compte tout ou partie des forces d’interaction dynamiques. L’utilisation de la
commande par découplage non linéaire constitue une bonne approche en ce sens [Zabala
1978, Raibet 1978, Khalil 1978, Khatib 1980, Luh 1980, Freund 1982, Bejczy et al. 1985,
Khosla 1986, Khalil 1987]. Ce type de commande est aussi connu sous le nom de
‘’commande dynamique’’ parce qu’il est basé sur l’utilisation du modèle dynamique.

II-3-1-4. Loi de commande par découplage non linéaire [Dombre et al. 1988]

La loi de commande par découplage non linéaire consiste à transformer par retour d’état
le problème de commande d’un système non linéaire en un problème de commande d’un
système linéaire. Dans le cas général le problème de linéarisation par retour d’état d’un
système non linéaire est difficile à résoudre et il n’existe pas toujours de solution. Cependant,
dans le cas des robots manipulateurs, l’élaboration d’une loi de commande qui linéarise
et découple les équations est simplifiée du fait que le modèle dont nous disposons est un
modèle inverse. Dans ce qui suit, nous allons développer cette méthode, tout d’abord pour le
problème de régulation, puis pour le problème de poursuite de trajectoire.

La loi de commande est donnée par :


Γ=M(q)Γ0 +C(q,q&)q& +G(q) (2.48)

En substituant cette commande dans l’équation dynamique (2.13) nous obtenons


l’équation du système en boucle fermée comme suit :
M(q)(q&&−Γ0 )=0 (2.49)

En tenant compte du fait que la matrice M(q) est régulière, nous aurons n systèmes
linéaires découplés ;
q&& = Γ0 (2.50)

où Γ0 est une entrée auxiliaire de la commande à designer. Pour résoudre le problème de


régulation, un choix possible de Γ0 est de prendre (voir figure II.8) :

50
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Γ0 = K p(qd −q)− Kv q& (2.51)

où Kp et Kv sont des matrices diagonales de dimension (nxn), déterminées en fonction de la


dynamique désirée.

A partir des équations (2.50) et (2.51), nous déduisons que, dans le cas d’une
modélisation parfaite et pour des erreurs initiales nulles, l’équation de la boucle fermée du
système est donnée par :
q&&+ Kv q& + K p q~ =0 (2.52)

qui est une équation linéaire découplée du deuxième ordre.

-
qd + + Γ0 + Γ
q
Kp M(q) Robot
- q&
+
C (q, q& )q& + G (q)

Kv

Figure II.8. Schéma synoptique de commande par découplage non linéaire

La commande définie par les équations (2.48) et (2.51) comporte deux parties; la
première compense les forces centrifuges, les forces de Coriolis, de gravité et de frottement,
alors que la deuxième est une correction de position et un retour de vitesse à gains variables.

L’équation d’erreur (2.52) est asymptotiquement stable par un choix convenable des
matrices des gains Kp et Kv. Pour montrer cela, nous pouvons écrire l’équation d’erreur sous la
forme d’espace d’état, avec x=(q~T ,q&T )T :

⎛ 0 I ⎞⎟

x& =⎜ ⎟ x = Ax (2.53)
⎜ − K p − Kv ⎟
⎝ ⎠

A est une matrice stable puisque les matrices Kp et Kv sont des matrices définies positives.
Donc nous pouvons trouver, pour une matrice Q>0, une matrice P symétrique définie positive
satisfaisant :
AT P+ PA=−Q (2.54)

Pour démontrer que le point d’équilibre x=0 est stable, nous choisissons la fonction
candidate de Lyapunov comme suit :

51
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

V(x)= xT Px (2.55)

qui est définie positive.

La dérivée par rapport au temps de V(x) est :


V&(x)= x&T Px+ xT Px& (2.56)

et par le remplacement de x& par Ax, nous obtenons :


V&(x)= xT AT Px+ xT PAx (2.57.a)

= xT (AT P + PA)x (2.57.b)

La substitution de l’expression (2.54) dans (2.57.b), donne :


V&(x)=−xT Qx (2.58)

qui est une matrice définie négative, ce qui implique que le point d’équilibre (q~& ,q~)=(0,0) est
asymptotiquement stable.

II-3-2. Problème de poursuite de trajectoire

Le problème de poursuite de trajectoire dans l’espace articulaire, consiste à suivre une


trajectoire donnée, qd(t) et ses dérivées successives q& (t ) et q&&(t ) qui décrivent la vitesse désirée
et l’accélération désirée respectivement. Il y a plusieurs conceptions qui peuvent accomplir
cet objectif et que nous pouvons les classifier en deux groupes :

Commande linéarisante cherche à linéariser et découpler la dynamique du robot. Dans les


cordonnées d’espace articulaire, il existe une commande unique qui satisfait ces deux
propriétés ; la loi de commande couple calculé qui est un exemple facile d’utilisation de la
technique de linéarisation de la dynamique du robot dans l’espace articulaire ; les linéarités tel
que les forces de Coriolis et de gravité peuvent être simplement compensées par l’addition de
ces forces au signal de commande.

Commande basée sur la théorie de Lyapunov cherche ni la linéarisation ni le découplage


de la dynamique du système non linéaire. L’idée est de rechercher la stabilité asymptotique
(exponentielle). Plusieurs commandes sont proposées dans la littérature. Elles peuvent être
appeler commandes basées sur la passivité, parce qu’elles exploitent les propriétés de la
passivité de la dynamique du robot.

II-3-2-1. Loi de commande de Paden et Panja [Paden et al. 1988, Khelfi 1995]

Cette loi de commande appartient à la classe des commandes basées sur la théorie de
Lyapunov, elle est donnée par :

Γ= M(q)q&&d (t)+C(q,q&)q&d (t)+G(q)− K p (q −qd (t))− Kv (q& −q&d (t)) (2.59)

52
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

En remplaçant le couple Γ du modèle dynamique (1.13) par la loi de commande (2.59),


nous obtenons la dynamique suivante du robot manipulateur (voir figure II.9) :

M(q)q&~& +C(q,q&)q~& + Kv q~& + K p q~ =0 (2.60)

où q~ =q−qd (t), q~& =q& −q&d (t), q~


&&=q&&−q&& (t) désignent respectivement l’erreur de poursuite en
d

position, en vitesse et en accélération.

L’expression de l’erreur de poursuite en accélération est donnée par :

q&~&=−M −1(q)(C(q,q&)q~& + Kv q~& + K p q~) (2.61)

+
+ G(q)
qd - -
Kp

q& d
+ Γ q
- - Robot
Kv q&
C(q, q& ) +
q&&d +
M(q)

Figure II.9. Schéma synoptique de la commande de Paden et Panja

La stabilité du système bouclé est prouvée en prenant comme fonction de Lyapunov


définie positive :

V(q~& ,q~,t)= 1 q~& T M(q~ +qd (t))q~& + 1 q~T K p q~ (2.62)


2 2

dont la dérivée temporelle le long des trajectoires du système (2.60) est donnée par :

V&(q~& ,q~,t)=q~& T M(q~ + qd (t))q~


&&+ 1 q~& T M& (q~ +q (t))q~& +q~& T K p q~ (2.63)
2 d

En substituant l’expression de q~ && donnée par la relation (2.63), nous obtenons :

V&(q~& ,q~,t)=−q~& T Kv q~& + q~& (M& (q~ + qd (t))−2C(q~ + qd (t),q~& + q&d (t)))q~& (2.64)

En exploitant la propriété 1 de la matrice M& (q)−2C(q,q&), la relation (2.64) devient :

V&(q~& ,q~,t) = − q~& T Kv q~& ≤0 (2.65)

Les trajectoires du système bouclé sont bornées, en utilisant le lemme de Barbalat nous
pouvons montrer que le point d’équilibre (q~& ,q~)=(0,0) est globalement asymptotiquement
stable. En effet, il est clair que si lim V&(q~& ,q~,t)=0, alors, lim q~& (t)=0 (cf. (2.65)). Il nous reste
t →+∞ t →+∞

53
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

à montrer lim q~(t)=0 . Sachant que lim q~& (t)=0 , et si nous montrons que q&~&(t) est
t →+∞ t →+∞
uniformément continue ( &q~&&(t) est bornée), alors d’après le lemme de Barbalat, lim q~
&&(t)=0 .
t →+∞
Ainsi, en développant la dérivée temporelle de la relation (2.65), nous remarquons que
&q~&&(t) est bornée (donc lim q~
&&(t)=0 ). En remplaçant lim q~& (t)=0 et lim q~
&&(t)=0 dans la relation
t →+∞ t →+∞ t →+∞
(2.65), nous pouvons conclure que lim q~(t)=0 (car K p∈R n×n >0 ). Le seul point d’équilibre
t →+∞
globalement asymptotiquement stable est donc (q~& ,q~)=(0,0) .

II-3-2-2. Loi de commande Couple Calculé [Canudas et al. 1992, Lewis et al. 1993]

La commande couple calculé ou computed torque a été développée au début des années
70 sous l’appellation de la dynamique inverse. Elle repose sur l’idée de l’annulation des
termes non-linéaires de chaque axe par l’application d’une commande de la forme suivante :
Γ=M(q)Γ0 +C(q,q&)q& +G(q) (2.66)

Par l’application de cette commande dans l’équation dynamique (2.13) nous obtenons
l’équation du système en boucle fermée comme suit :
M(q)(q&&−Γ0 )=0 (2.67)

En tenons compte que la matrice M(q) est régulière, nous aurons n systèmes linéaires
découplés :
q&&=Γ0 (2.68)

où Γ0 est une entrée auxiliaire de la commande à designer. Les choix typiques de Γ0 sont :

Une commande Proportionnelle Dérivée (voir figure II.11)


Γ0 =q&&d + Kv (q&d −q&)+ K p(qd −q) (2.69)

ou avec une composante intégrale

Une commande Proportionnelle Intégrale Dérivée (voir figure II.12)


t
Γ0 =q&&d + Kv (q&d −q&)+ K p(qd −q)+ Ki ∫ (qd −q)dτ (2.70)
0

Par le remplacement de (2.69) dans (2.68), nous obtenons l’équation d’erreur suivante :
q&~&+ Kv q~& + K pq~=0 (2.71)

54
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

-
qd +
Kp

q&&d + Γ0 q
+ + Γ
M(q) Robot
q&
+ +
q& d +
Kv C (q, q& )q& + G (q)
-

Figure II.10. Schéma synoptique de la commande couple calculé type PD

et si nous faisons la même procédure pour (2.70), l’équation d’erreur devient :


&q~&&+ Kv q&~&+ K pq~& + K q~=0 (2.72)
i

Les deux équations d’erreur (2.71) et (2.72) sont des équations différentielles linéaires, la
première est de deuxième ordre et la deuxième c’est de troisième ordre. Et puisque Kp, Kv et
Ki sont des matrices diagonales définies positives appartenant à Rn×n , le système est

parfaitement découplé.

Les équations des erreurs (2.71) et (2.72) seront asymptotiquement stables par un choix
convenable des matrices des gains Kp, Kv et Ki. Pour montrer cela, nous pouvons écrire les
deux équations d’erreur sous la forme d’espace d’état, avec x=(q~T ,q~& T )T pour (2.71)
et x=(q~T ,q~& T ,q~
&&T )T pour (2.54) :

⎛ 0 I ⎞⎟

x& =⎜ ⎟ x = Ax (2.73)
⎜ − K p − Kv ⎟
⎝ ⎠

pour l’équation (2.71), et


⎛ 0 I 0 ⎞
⎜ ⎟

x& = ⎜ 0 0 I ⎟ x = Ax (2.74)

⎜⎜ ⎟⎟
⎝ − Ki − K p − K v ⎠

pour l’équation (2.72).

A est une matrice stable puisque les matrices Kp, Kv et Ki sont définies positives. Donc
nous pouvons trouver, pour une matrice Q>0, une matrice P symétrique définie positive
satisfaisant

55
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

AT P+ PA=−Q (2.75)

Pour démontrer que le point d’équilibre x=0 est globalement asymptotiquement stable,
nous suivons les mêmes étapes de la démonstration utilisée dans la commande par découplage
non linéaire qui traite le problème de régulation.

La commande du couple calculé est une bonne approche pour commander les robots
manipulateurs lorsque les paramètres sont parfaitement connus et elle nécessite un calculateur
suffisamment puissant. Cependant, les paramètres du robot manipulateur sont toujours connus
partiellement donc les performances du système n’atteignent jamais l’idéal.

Nous avons vu que la loi de commande couple calculé de type PD est très efficace si tous
les paramètres du robot manipulateur sont connus et que les perturbations sont nulles.
Cependant, dans la cas contraire (présence d’incertitudes et/ou perturbations), l’application de
cette loi de commande, donne des erreurs de poursuite non nulles. Pour surpasser ce
inconvénient, nous ajoutons un terme intégral à cette loi de commande, Cela mène à une
commande couple calculé d’une structure Proportionnelle, Intégrale et Dérivée (PID). [Lewis
et al. 1993].

-
qd +
Kp

+ Γ0 q
Ki∫ +
+ Γ
q&&d M(q) Robot
+ q&
+ +
q& d +
Kv C (q, q& )q& + G (q)
-

Figure II.11. Schéma synoptique de la commande couple calculé type PID

II-3-2-3. Loi de commande prédictive [Dombre et al. 1988]

Un autre schéma de commande peut être établi en utilisant une commande prédictive
dans laquelle le calcul de M, C et G se fait, non pas en fonction des valeurs courantes de
q et q& , mais plutôt en fonction des variables du mouvement désiré qd et q&d . Dans ce cas, la
loi de commande a pour expression :
Γ=M(qd )Γ0 +C(qd ,q&d )q&d +G(qd ) (2.76)

avec : Γ0 =q&&d + Kv (q&d −q&)+ K p(qd −q) (2.77)

56
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

La figure II.12 représente le schéma bloc de cette loi de commande.

-
qd + qd
Kp

q& d + Γ0 Γ
q
+ + M(qd) + Robot
Kv
q&&d - + q&
+

C(qd ,q&d )q&d +G(qd )

Figure II.12. Schéma synoptique de commande prédictive


Si le suivi est correct, nous pouvons supposer que M(q)=M(qd ), C(q,q&)=C(qd ,q&d )
et que G(q)=G(qd ). S’il n’y a pas d’erreur de modélisation, et pour des erreurs initiales nulles,
la loi (2.76) linéarise et découple les équations du système comme dans le cas précédent (loi
de commande du couple calculé).

Une autre approche, qui ne cherche ni la linéarisation ni le découplage du système non


linéaire, elle cherche seulement la stabilité asymptotique, et aussi utilisée dans la commande
des robots manipulateurs. Le schéma de cette commande est proposé dans le travail fait par
Slotine et Li concernant la commande adaptative des robots manipulateurs (Slotine et Li,
1987a). Nous allons présenter dans ce que suit la version non adaptative de cette loi de
commande.

II-3-2-4. Commande de Slotine et Li [Canudas et al. 1992, Lozano et al. 2001]

Le robot manipulateur doit suivre une trajectoire prédéfinie par les variables articulaires
désirées ( q d (t ) , q& d (t ) , q&&d (t ) ). La loi de commande est donnée par (voire figure II.13) :

Γ= M(q)q&&r +C(q,q&)q&r +G(q)− K d (q& −q&r ) Kd>0 (2.78)

où :
q~ =q−qd et q&r =q&d −Λq~ (2.79)

En remplaçant le couple Γ du modèle dynamique par la loi de commande, nous obtenons


la dynamique suivante du robot manipulateur :
M(q)q&&+C(q,q&)q& +G(q)=M(q)q&&r +C(q,q&)q&r +G(q)− K d (q& −q&r ) (2.80)

Nous allons utiliser la définition de la variable s :

57
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

s=q& −q&r =q~& +Λq~ Λ>0

Notons que s→0 ⇒ q~ → 0 et q~& → 0 . Notons aussi que q&r et q&&r ne sont pas en fonctions de
l’accélération q&& . La boucle fermée s’écrit aussi :

M(q)s&+C(q,q&)s + K d s =0 (2.81)

Soit la fonction :

V(q,q&,qd (t),q&d (t)) = 1 sT M(q)s (2.82)


2

alors,
V& = sT M(q)s& + sT M& (q)s (2.83.a)

= sT[−C(q,q&)s − K d s]+ 1 sT M& (q)s (2.83.b)


2

=−sT K d s + 1 sT[M& (q)−2C(q,q&)]s (2.83.c)


2
=−sT K d s<0 (2.83.d)

Pour montrer la convergence de q~ vers zéro, nous ne pouvons plus utiliser le théorème de
LaSalle car V( q, q& , q d (t ), q& d (t ) ) n’est pas uniquement en fonction de l’état q, q& . Nous
pouvons néanmoins utiliser le lemme de Barbalat pour montrer que q~ → 0 .

+
G(q)
+
-
Kd Γ q
+ q&r - Robot
qd - - + q&
Λ C(q, q& )
+
q& d - - q&&r +
Λ M(q)
q&&d + +

Figure II.13. Schéma synoptique de la commande de Slotine et Li

Si V(t) est une fonction continue qui converge lorsque t → ∞ et si dV est uniformément
dt
. & →0.
continue, alors V

Pour montrer que dV est uniformément continue, il suffit de montrer que d²V est bornée.
dt dt²

58
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Dans notre cas :

V = 1 sT M(q)s (2.84)
2

et :
V& = − sT K d s (2.85)

alors, V est bornée et s est bornés aussi.

De l’équation de la boucle fermée :


M& (q)s&+ C(q,q&)s + K d s = 0 (2.86)

nous concluons que s& est bornée. Par ailleurs, V&& est égale à :

V&& = −2sT K d s& (2.87)

qui est bornée et ce qu’implique que V& est uniformément continue. Donc le lemme de
Barbalat nous permet de conclure que V& → 0 ⇒ q~ → 0. Le système est
asymptotiquement globalement stable.

Remarque

En 1990, Sadegh et Horowitz ont proposé une modification de la loi de commande (2.78),
dans la quelle l’analyse de la stabilité se fait au sens de Lyapunov [Sadegh et al. 1990]. Cette
commande a la forme (voire figure II.14) :
Γ= M(q)q&&r +C(q,q&)q&r +G(q)− K d (q& −q&r )+ K p q~ (2.88)

qui est identique à (2.78) avec un terme d’une action proportionnelle explicite K p q~ en plus.

+ +
qd - + G(q)
Λ -
Kp
Γ q
+ Robot
+ Kd q&
- q&r +
C(q, q& )
q& d - - q&&r +
Λ M(q)
q&&d + +

Figure II.14. Schéma synoptique de la commande proposée par Sadegh et Horowitz

59
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

L’équation différentielle du système en boucle fermée est de la forme suivante :


M(q)s&+C(q,q&)s + K d s + K p q~ =0 (2.89)

Considérant la fonction de Lyapunov candidate :

V = 1 sT M(q)s + q~T K p q~ (2.90)


2

La dérivée temporelle de cette fonction de Lyapunov le long de la dynamique de l’erreur


(2.89) donne :
V& =−sT K d s −q~T (ΛK p)q~& (2.91)

De cela, et selon l’équation linéaire (2.91), la stabilité exponentielle uniforme globale du


système en boucle fermée (2.89) peut être vérifiée en utilisant la méthode directe de
Lyapunov.

II-4. APPLICATION AU ROBOT MANIPULATEUR PUMA 560

II-4-1. Introduction

Ce paragraphe présente les résultats de simulations qui sont effectuées pour évaluer les
caractéristiques des différentes lois de commande discutées dans ce chapitre.

L’objective de cette étude est de faire une comparaison entre les différentes lois de
commande en présentant les avantages et les inconvénients de chacune d’elles.

II-4-2. Modèle utilisé

Cette étude de simulation est faite par l’application des différentes lois de commande au
robot manipulateur rigide Puma 560 (6 degrés de liberté). Les différentes caractéristiques et le
modèle dynamique de ce système sont présentés dans la section I-4-4. Le modèle dynamique
sous sa forme matricielle est :
M(q)q&&+C(q,q&)q& +G(q)=Γ (2.92)

Le vecteur d’état utilisé dans les simulations est :

[ ]
T
x = q1 q2 q3 q4 q5 q6 q&1 q&2 q&3 q&4 q&5 q&6 (2.93)

Le vecteur d’état initial pour toutes les simulations est :


x(0) = [0.1 0.1 0.1 0.1 0.1 0.1 0 0 0 0 0 0] T (2.94)

60
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

II-4-3. Algorithme et simulation

II-4-3-1. Lois de commande point à point

Les positions désirées utilisées dans la simulation sont :


qd = (1.5 1.6 1.7 1.8 1.9 2.0)T (2.95)

II-4-3-1-1. Loi de commande de type PD

La commande proportionnelle dérivée (PD) a la forme de base suivante :


Γ= K p(qd −q)− Kv q& (2.96)

La dynamique du système en boucle fermée est :


M(q)q&~&+C(q,q&)q~& +G(q)+kv q~& +k pq~=0 (2.97)

Les paramètres de simulation sont les matrices des gains Kp et Kv données par :
⎛ 2500 0 0 0 0 0 ⎞ ⎛ 200 0 0 0 0 0 ⎞
⎜ 0 3500 0 0 0 0 ⎟ ⎜ 0 320 0 0 0 0 ⎟
⎜ 0 2500 0 0 0 ⎟ ⎜ ⎟
Kp =⎜ 0 Kv = ⎜ 0 0 160 0 0 0 ⎟ (2.98)
0 0 0 400 0 0 ⎟ 0 0 0 35 0 0
⎜ 0 0 0 0 400 0 ⎟ ⎜ 0 0 0 0 35 0 ⎟
⎜ 0 0 0 0 0 400 ⎟⎠ ⎜ 0 0 0 0 0 35 ⎟
⎝ ⎝ ⎠

II-4-3-1-2. Loi de commande de type PID

La commande proportionnelle intégrale dérivée (PID) a la forme de base suivante :


t
Γ=−Kv q& + K p(qd −q)+ Ki ∫ (qd −q)dt (2.99)
0

Les paramètres de simulation sont les matrices des gains Kp, Kv et Ki données par :
⎛2500 0 0 0 0 0 ⎞ ⎛130 0 0 0 0 0 ⎞ ⎛2500 0 0 0 0 0 ⎞
⎜ 0 3600 0 0 0 0 ⎟ ⎜ 0 225 0 0 0 0 ⎟ ⎜ 0 3800 0 0 0 0 ⎟
⎜ 0 0 2500 0 0 0 ⎟ ⎜ 0 0 100 0 0 0 ⎟ ⎜ ⎟
Kp =⎜ ⎟ Kv =⎜ ⎟ Ki =⎜ 0 0 3000 0 0 0 ⎟ (2.100)
0 0 0 400 0 0 0 0 0 20 0 0 0 0 0 500 0 0
⎜ 0 0 0 0 400 0 ⎟ ⎜ 0 0 0 0 20 0 ⎟ ⎜ 0 0 0 0 500 0 ⎟
⎜ 0 0 0 0 0 400⎟ ⎜ 0 0 0 0 0 20⎟ ⎜ 0 0 0 0 0 500⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠

II-4-3-1-3. Loi de commande de type PD avec compensation de l’effet de gravité

La commande proportionnelle dérivée (PD) avec compensation de l’effet de gravité est


donnée par :
Γ = G(q)− K p q~ − Kv q& (2.101)

où :
q~ = q − qd (2.102)

La dynamique du système en boucle fermée :

61
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

M (q )q&& + C (q, q& )q& + K p q% + K v q& = 0 (2.103)

Les paramètres de simulation sont les matrices des gains Kp et Kv données par :
⎛ 880 0 0 0 0 0 ⎞ ⎛120 0 0 0 0 0⎞
⎜ 0 1500 0 0 0 0 ⎟ ⎜ 0 220 0 0 0 0 ⎟
⎜ 750 0 0 0 ⎟ ⎜ 0 80 0 0 0 ⎟
Kp =⎜ 0 0 Kv = ⎜ 0 (2.104)
0 0 0 150 0 0 ⎟ 0 0 0 14 0 0 ⎟
⎜ 0 0 0 0 150 0 ⎟ ⎜ 0 0 0 0 14 0 ⎟
⎜ 0 0 0 0 0 150 ⎟⎠ ⎜ 0 0 0 0 0 14 ⎟⎠
⎝ ⎝

II-4-3-1-4. Loi de commande par découplage non linéaire

La loi de commande est donnée par :


Γ=M(q)Γ0 +C(q,q&)q& +G(q) (2.105)

où Γ0 est une entrée auxiliaire de la commande à designer. Pour résoudre le problème de


régulation, un choix possible de Γ0 est donné par :

Γ0 = K p(qd −q)− Kv q& (2.106)

L’équation du système en boucle fermée est comme suit :


M(q)(q&&−Γ0 )=0 (2.107)

Les paramètres de simulation sont les matrices des gains Kp et Kv données par :
⎛ 750 0 0 0 0 0 ⎞ ⎛ 80 0 0 0 0 0⎞
⎜ 0 950 0 0 0 0 ⎟ ⎜ 0 100 0 0 0 0⎟
⎜ 700 0 0 0 ⎟ ⎜ 0⎟
Kp =⎜ 0 0 Kv = ⎜ 0 0 65 0 0 (2.108)
0 0 0 130 0 0 ⎟ 0 0 0 20 0 0⎟
⎜ 0 0 0 0 130 0 ⎟ ⎜0 0 0 0 20 0⎟
⎜ 0 0 0 0 0 130 ⎟⎠ ⎜0 0 0 0 0 20 ⎟⎠
⎝ ⎝

II-4-3-2. Lois de commande de poursuite de trajectoire

La trajectoire utilisée dans la simulation est une interpolation polynomiale de degré cinq
d’où la position est de la forme suivante :

qd (t)=qi +(10( t )3 −15( t )4 +6( t )5)D (2.109)


tf tf tf

où :
D = q f − qi (2.110)

avec :
qi , q f et t f sont respectivement la position initiale, la position finale et le temps final.

62
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

avec :
qi =(0 0 0 0 0 0) T (2.111)

q f = (1.5 1.6 1.7 1.8 1.9 2.0)


T
(2.112)

II-4-3-2-1. Loi de commande de Paden et Panja

Cette loi de commande appartient à la classe des commandes basées sur la théorie de
Lyapunov, elle est donnée par :

Γ= M(q)q&&d (t)+C(q,q&)q&d (t)+G(q)− K p (q −qd (t))− Kv (q& −q&d (t)) (2.113)

La dynamique du système en boucle fermée est :

M(q)q~
&& +C(q,q&)q~& + Kv q~& + K q~ =0
p (2.114)

Les paramètres de simulation sont les matrices des gains Kp et Kv données par :

⎛ 750 0 0 0 0 0 ⎞ ⎛100 0 0 0 0 0 ⎞
⎜ 0 950 0 0 0 0 ⎟ ⎜ 0 145 0 0 0 0 ⎟
⎜ 750 0 0 0 ⎟ ⎜ ⎟
Kp =⎜ 0 0 Kv = ⎜ 0 0 80 0 0 0 ⎟ (2.115)
0 0 0 150 0 0 ⎟ 0 0 0 14 0 0
⎜ 0 0 0 0 150 0 ⎟ ⎜ 0 0 0 0 14 0 ⎟
⎜ 0 0 0 0 0 150 ⎟⎠ ⎜ 0 0 0 0 0 14 ⎟
⎝ ⎝ ⎠

II-4-3-2-2. Loi de commande Couple Calculé type PD

Cette loi de commande a la forme suivante :


Γ=M(q)Γ0 +C(q,q&)q& +G(q) (2.116)

où :
Γ0 =q&&d + Kv (q&d −q&)+ K p(qd −q) (2.117)

L’équation du système en boucle fermée est :


M(q)(q&&−Γ0 )=0 (2.118)

Les paramètres de simulation sont les matrices des gains Kp et Kv données par :
⎛ 950 0 0 0 0 0 ⎞ ⎛ 60 0 0 0 0 0⎞
⎜ 0 950 0 0 0 0 ⎟ ⎜0 60 0 0 0 0⎟
⎜ 0 ⎟ ⎜ 0⎟
K p = ⎜ 0 0 950 0 0 Kv = ⎜ 0 0 60 0 0 (2.119)
0 0 0 450 0 0 ⎟ 0 0 0 40 0 0⎟
⎜ 0 0 0 0 450 0 ⎟ ⎜0 0 0 0 40 0⎟
⎜ 0 0 0 0 0 450 ⎟⎠ ⎜0 0 0 0 0 40 ⎟⎠
⎝ ⎝

II-4-3-2-3. Loi de commande Couple Calculé type PID

La loi de commande couple calculé de type PID a la forme suivante :


Γ=M(q)Γ0 +C(q,q&)q& +G(q) (2.120)

63
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

où :
t
Γ0 =q&&d + Kv (q&d −q&)+ K p(qd −q)+ Ki ∫ (qd −q)dτ (2.121)
0

L’équation du système en boucle fermée est comme suit :


M(q)(q&&−Γ0 )=0 (2.122)

Les paramètres de simulation sont les matrices des gains Kp, Kv et Ki données par :
⎛950 0 0 0 0 0 ⎞ ⎛ 60 0 0 0 0 0 ⎞ ⎛1000 0 0 0 0 0 ⎞
⎜ 0 950 0 0 0 0 ⎟ ⎜ 0 60 0 0 0 0 ⎟ ⎜ 0 1000 0 0 0 0 ⎟
⎜ 0 0 950 0 0 0 ⎟ ⎜ ⎟ ⎜ ⎟
Kp =⎜ ⎟ Kv = ⎜ 0 0 60 0 0 0 ⎟ Ki =⎜ 0 0 900 0 0 0 ⎟ (2.123)
0 0 0 450 0 0 0 0 0 40 0 0 0 0 0 410 0 0
⎜ 0 0 0 0 450 0 ⎟ ⎜ 0 0 0 0 40 0 ⎟ ⎜ 0 0 0 0 410 0 ⎟
⎜ 0 0 0 0 0 450⎟ ⎜ 0 0 0 0 0 40⎟ ⎜ 0 0 0 0 0 410⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠

II-4-3-2-4. Loi de commande prédictive

La loi de commande a pour expression :


Γ=M(qd )Γ0 +C(qd ,q&d )q&d +G(qd ) (2.124)

où :
Γ0 =q&&d + Kv (q&d −q&)+ K p(qd −q) (2.125)

L’équation du système en boucle fermée est :


M(q)(q&&−Γ0 )=0 (2.126)

Les paramètres de simulation sont les matrices des gains Kp, Kv et Ki données par :
⎛ 950 0 0 0 0 0 ⎞ ⎛ 60 0 0 0 0 0⎞
⎜ 0 950 0 0 0 0 ⎟ ⎜0 60 0 0 0 0⎟
⎜ 0 ⎟ ⎜ 0⎟
K p = ⎜ 0 0 950 0 0 Kv = ⎜ 0 0 60 0 0 (2.127)
0 0 0 450 0 0 ⎟ 0 0 0 40 0 0⎟
⎜ 0 0 0 0 450 0 ⎟ ⎜0 0 0 0 40 0⎟
⎜ 0 0 0 0 0 450 ⎟⎠ ⎜0 0 0 0 0 40 ⎟⎠
⎝ ⎝

II-4-3-2-5. Commande de Slotine et Li

La loi de commande est donnée par (voire figure II.13) :


Γ= M(q)q&&r +C(q,q&)q&r +G(q)− K d (q& −q&r ) Kd>0 (2.128)

où :
q~ =q−qd et q&r =q&d −Λq~ (2.129)

La dynamique de la boucle fermée s’écrit :

64
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

M(q)s&+C(q,q&)s + K d s =0 (2.130)

avec :
s=q& −q&r =q~& +Λq~ Λ>0 (2.131)

Les paramètres de simulation sont les matrices des gains Kd et Λ données par :
⎛150 0 0 0 0 0⎞ ⎛13 0 0 0 0 0 ⎞
⎜ 0 250 0 0 0 0⎟ ⎜ 0 13 0 0 0 0 ⎟
⎜ 0⎟ ⎜ ⎟
Kd = ⎜ 0 0 100 0 0 Λ = ⎜ 0 0 13 0 0 0 ⎟ (2.132)
0 0 0 15 0 0⎟ 0 0 0 13 0 0
⎜ 0 0 0 0 5 0⎟ ⎜ 0 0 0 0 13 0 ⎟
⎜ 0 0 0 0 0 5 ⎟⎠ ⎜ 0 0 0 0 0 13⎟
⎝ ⎝ ⎠

II-4-3-2-6. Commande de Sadegh et Horowitz

Cette commande a la forme:


Γ= M(q)q&&r +C(q,q&)q&r +G(q)− K d (q& −q&r )+ K p q~ (2.133)

où :
q~ =q−qd et q&r =q&d −Λq~ (2.134)

La dynamique du système en boucle fermée est de la forme suivante :


M(q)s&+C(q,q&)s + K d s + K p q~ =0 (2.135)

avec :
s=q& −q&r =q~& +Λq~ Λ>0 (2.136)

Les paramètres de simulation sont les matrices des gain Kd, Kp et Λ données par :
⎛100 0 0 0 0 0 ⎞ ⎛ 20 0 0 0 0 0⎞ ⎛ 20 0 0 0 0 0⎞
⎜ 0 150 0 0 0 0 ⎟ ⎜0 25 0 0 0 0⎟ ⎜0 20 0 0 0 0⎟
⎜ 0 0 130 0 0 0 ⎟ ⎜ ⎟
0 Λ =⎜ 0 0⎟
Kd = ⎜ ⎟ Kp =⎜ 0 0 20 0 0 0 20 0 0 (2.137)
0 0 0 10 0 0 0 0 0 5 0 0⎟ ⎜0 0 0 20 0 0⎟
⎜ 0 0 0 0 10 0 ⎟ ⎜0 0 0 0 5 0 ⎟ ⎜0 0 0 0 20 0⎟
⎜ 0 0 0 0 0 10 ⎟ ⎜0 0 0 0 0 5⎠⎟ ⎜0 0 0 0 0 20 ⎟⎠
⎝ ⎠ ⎝ ⎝

II-4-4. Comparaison en simulation

II-4-4-1. Problème de régulation

Dans cette partie nous allons étudier le comportement de la commande PD, la commande
PID, la commande PD avec compensation de l’effet de gravité et la commande par
découplage non linéaire décrites respectivement par l’équation (2.96), (2.99), (2.101) et
(2.105) appliquées sur le modèle du robot Puma 560.

La figure II.15 montre les erreurs des positions des différents axes du robot manipulateur
lorsque la commande PD est utilisée. A partir de cette figure nous pouvons conclure que cette

65
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

commande assure une bonne poursuite de position avec une erreur résiduelle non nulle à
cause de l’effet de gravité pour des valeurs de gains Kp très grandes, ce qui est indésirable
puisque le bruit de mesure et autres dynamiques non modélisables limiteront l’usage de hauts
gains.

Pour surpasser ce problème, nous implémentons la commande PID dans la quelle le


terme intégral agi sur l’effet de gravité. Cette commande résout le problème de régulation
avec une erreur de position nulle des six axes du robot (voir figure II.16), mais la présence du
terme intégral peut causer de sérieux problèmes dus au phénomène appelé ‘’Integrator
windup’’.

Pour remédier à ce problème, nous appliquons la commande PD avec compensation de


l’effet de gravité cité par l’équation (2.101). Cette dernière assure une erreur de position nulle
avec des gains plus petits que ceux utilisés dans la commande PD (voir figure II.17).

La figure II.18 montre les erreurs des positions des différents axes obtenues par
l’application de la commande par découplage non linéaire cité par l’équation (2.105) sur le
modèle du robot. Cette dernière assure une bonne poursuite de position avec des erreurs nulles
et des gains Kp plus petit que ceux utilisés dans la commande PD avec compensation de l’effet
de gravité. En effet, elle comporte deux parties; la première compense les forces centrifuges,
les forces de Coriolis, de gravité et de frottement, alors que la deuxième est une correction de
position et un retour de vitesse à gains variables.

66
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.15.a Erreur de poursuite de la Figure II.15.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande PD commande PD

Figure II.15.c Erreur de poursuite de la Figure II.15.d Erreur de poursuite de


position du 3eme bras en utilisant la la position du 1er axe du terminal en
commande PD utilisant la commande PD

Figure II.15.e Erreur de poursuite de la Figure II.15.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant la commande PD utilisant la commande PD

67
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.16.a Erreur de poursuite de la Figure II.16.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande PID commande PID

Figure II.16.c Erreur de poursuite de la Figure II.16.d Erreur de poursuite de


position du 3eme bras en utilisant la la position du 1er axe du terminal en
commande PID utilisant la commande PID

Figure II.16.e Erreur de poursuite de la Figure II.16.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant la commande PID utilisant la commande PID

68
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.17.a Erreur de poursuite de la Figure II.17.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande PD avec compensation de commande PD avec compensation de
l’effet de gravité l’effet de gravité

Figure II.17.c Erreur de poursuite de la Figure II.17.d Erreur de poursuite de


position du 3eme bras en utilisant la la position du 1er axe du terminal en
commande PD avec compensation de utilisant la commande PD avec
l’effet de gravité compensation de l’effet de gravité

Figure II.17.f Erreur de poursuite de la


Figure II.17.e Erreur de poursuite de la position du 3eme axe du terminal en
position du 2eme axe du terminal en utilisant la commande PD avec
utilisant la commande PD avec compensation de l’effet de gravité
compensation de l’effet de gravité

69
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.18.a Erreur de poursuite de la Figure II.18.b Erreur de poursuite de


position du 1er bras en utilisant une loi la position du 2eme bras en utilisant une
de commande par découplage non loi de commande par découplage non
linéaire linéaire

Figure II.18.c Erreur de poursuite de la Figure II.18.d Erreur de poursuite de


position du 3eme bras en utilisant une loi la position du 1er axe du terminal en
de commande par découplage non utilisant une loi de commande par
linéaire découplage non linéaire

Figure II.18.e Erreur de poursuite de la Figure II.18.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant une loi de commande par utilisant une loi de commande par
découplage non linéaire découplage non linéaire

70
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

II-4-4-2. Problème de poursuite

Dans cette partie nous allons simuler la loi de commande de Paden et Panja, la
commande couple calculé type PD, type PID, la commande prédictive, la commande de
Slotine et Li et la commande de Sadegh et Horowitz citées respectivement par les équations
(2.113), (2.116)-(2.117), (2.120)-(2.121), (2.124)-(2.125), (2.128) et (2.133), appliquées au
robot Puma 560.

Pour valider les résultats obtenus de l’étude présentée dans la section II-3-2 concernant
les commandes de poursuite de trajectoire, plusieurs simulations ont été réalisées. Notre
premier objectif est de montrer les performances de chaque commande dans le but de les
classifier.

La figure II.19 illustre les erreurs de poursuite des positions et des vitesses quand la lois
de commande de Paden et Panja est utilisée. Nous pouvons voir que les performances de
poursuite sont acceptables et que nous pouvons les améliorer en augmentant les gains de
commande.

Les figures II.14 et II.15 illustrent le comportement de la commande couple calculé de


type PD et la commande couple calculé de type PID respectivement. Ces deux commandes
linéarisent et découplent le système dynamique du robot en le réduisant à un système de n
équations différentielles linéaires de deuxième ordre indépendantes.

Nous avons vu que la loi de commande couple calculé type PD citée par les équations
(2.116)-(2.117) est très efficace si tous les paramètres sont bien connus et que les
perturbations sont nulles (voir figure II.20). Cependant, de la théorie de la commande
classique, nous savons que dans la présence d’une perturbation constante, l’erreur de position
de l’état stable est non nulle pour la commande PD. La figure II.21 illustre les erreurs de
poursuite des positions quand nous ajoutons une perturbation constante Γp =10 Nm à la
dynamique du robot, comme suit :
M(q)q&&+C(q,q&)q& +G(q)+Γp =Γ (2.138)

Pour solutionner le problème provoqué par l’application de la commande couple calculé


type PD au modèle dynamique du robot avec une perturbation constante Γp =10 Nm, nous
somme poussé à ajouter un intégrateur dans la chaîne de bouclage de cette commande, ce qui
nous a conduit à utiliser une loi de commande couple calculé type PID (l’équation (2.120)-
(2.121)). Cette dernière permit d’avoir des erreurs de poursuite des position nulles, mais et
comme nous avons dit, le terme intégral peut causer de sérieux problèmes (voir figure II.22).

La commande prédictive est une variante de la commande couple calculé. Elle utilise les
éléments du vecteur de la trajectoire désiré au lieu des variables articulaires réelles dans le
calcul de la dynamique du robot. La figure II.23 illustre les erreurs de poursuite des positions

71
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

et des vitesses obtenues par l’application de cette commande sur le modèle dynamique
du robot puma 560. Si nous appliquons les mêmes valeurs des gains utilisées dans la
commande couple calculé, nous pouvons voir que les deux signaux d'erreur de poursuite sont
légèrement différents dans la phase de départ, mais après un certain temps, les deux figures
(figure II.20 et figure II.23) sont identiques jusqu'au point final. Cela est dû au fait que la
commande prédictive utilise les valeurs des variables désirées, qui ne sont pas exactement
égales aux variables réelles à la phase de départ, et cela est due aux conditions initiales non
nulles. Après un certain temps, les deux commandes se comportent d’une manière identique.

La figure II.24 illustre le comportement du robot lorsque la commande de Slotine et Li


citée par l’équation (2.128) est utilisée. Il est clair de la figure que la convergence de l’erreur
de poursuite est assurée. De plus, cette commande facilite la tache du réglage des gains. Du
fait que la nouvelle variable s est utilisée, qui est une combinaison linéaire de l’erreur de
poursuite, l’erreur dynamique est décrie par une équation différentielle de premier ordre.
Alors, en premier temps, nous choisissons le gain Kd cité dans l’équation (2.128) pour assurer
la convergence da la variable s, et alors sélectionner le gain Λ pour que l’erreur de poursuite
de position tende exponentiellement vers zéro.

La figure II.25 illustre les erreurs de poursuite des positions et des vitesses des six axes
du robot commandé par la loi de commande de Sadegh et Horowitz. La convergence de
l'erreur de poursuite du système commandé tend à être semblable à celle de la figure II.24, et
cela parce que l’expression de la commande de Sadegh et Horowitz est rien que celle de la
commande de Slotine et Li plus un gain proportionnel Kp ce qui nous donne plus de liberté
dans le réglage des gains de commande.

72
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.19.a Erreur de poursuite de la Figure II.19.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande de Paden et Panja commande de Paden et Panja

Figure II.19.c Erreur de poursuite de la Figure II.19.d Erreur de poursuite de


position du 3eme bras en utilisant la la position du 1er axe du terminal en
commande de Paden et Panja utilisant la commande de Paden et Panja

Figure II.19.e Erreur de poursuite de la Figure II.19.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant la commande de Paden et Panja utilisant la commande de Paden et Panja

73
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.19.g Erreur de poursuite de la Figure II.19.h Erreur de poursuite de


vitesse du 1er bras en utilisant la la vitesse du 2eme bras en utilisant la
commande de Paden et Panja commande de Paden et Panja

Figure II.19.i Erreur de poursuite de la Figure II.19.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en utilisant
commande de Paden et Panja la commande de Paden et Panja

Figure II.19.k Erreur de poursuite de Figure II.19.l Erreur de poursuite de la


la vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant la commande de Paden et Panja utilisant la commande de Paden et Panja

74
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.20.a Erreur de poursuite de la Figure II.20.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande Couple Calculé type PD commande Couple Calculé type PD

Figure II.20.c Erreur de poursuite de la Figure II.20.d Erreur de poursuite de la


position du 3eme bras en utilisant la position du 1er axe du terminal en utilisant
commande Couple Calculé type PD la commande Couple Calculé type PD

Figure II.20.e Erreur de poursuite de la Figure II.20.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant la commande Couple Calculé utilisant la commande Couple Calculé
type PD type PD

75
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.20.g Erreur de poursuite de la Figure II.20.h Erreur de poursuite de


vitesse du 1er bras en utilisant la la vitesse du 2eme bras en utilisant la
commande Couple Calculé type PD commande Couple Calculé type PD

Figure II.20.i Erreur de poursuite de la Figure II.20.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en utilisant
commande Couple Calculé type PD la commande Couple Calculé type PD

Figure II.20.k Erreur de poursuite de Figure II.20.l Erreur de poursuite de la


la vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant la commande Couple Calculé utilisant la commande Couple Calculé
type PD type PD

76
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.21.a Erreur de poursuite de la Figure II.21.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande Couple Calculé type PD avec commande Couple Calculé type PD avec
une perturbation constante de 10 Nm une perturbation constante de 10 Nm

Figure II.21.c Erreur de poursuite de la Figure II.21.d Erreur de poursuite de la


position du 3eme bras en utilisant la position du 1er axe du terminal en utilisant
commande Couple Calculé type PD avec la commande Couple Calculé type PD
une perturbation constante de 10 Nm avec une perturbation constante de 10 Nm

Figure II.21.e Erreur de poursuite de la Figure II.21.f Erreur de poursuite de la


position du 2eme axe du terminal en utilisant position du 3eme axe du terminal en utilisant
la commande Couple Calculé type PD avec la commande Couple Calculé type PD avec
une perturbation constante de 10 Nm une perturbation constante de 10 Nm

77
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.22.a Erreur de poursuite de la Figure II.22.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande Couple Calculé PID avec une commande Couple Calculé PID avec une
perturbation constante de 10 Nm perturbation constante de 10 Nm

Figure II.22.c Erreur de poursuite de la Figure II.22.d Erreur de poursuite de la


position du 3eme bras en utilisant la position du 1er axe du terminal en utilisant
commande Couple Calculé PID avec une la commande Couple Calculé PID avec
perturbation constante de 10 Nm une perturbation constante de 10 Nm

Figure II.22.e Erreur de poursuite de la Figure II.22.f Erreur de poursuite de la


position du 2eme axe du terminal en utilisant position du 3eme axe du terminal en utilisant
la commande Couple Calculé PID avec une la commande Couple Calculé PID avec une
perturbation constante de 10 Nm perturbation constante de 10 Nm

78
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.22.g Erreur de poursuite de la Figure II.22.h Erreur de poursuite de


vitesse du 1er bras en utilisant la la vitesse du 2eme bras en utilisant la
commande Couple Calculé PID avec une commande Couple Calculé PID avec une
perturbation constante de 10 Nm perturbation constante de 10 Nm

Figure II.22.i Erreur de poursuite de la Figure II.22.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en utilisant
commande Couple Calculé PID avec une la commande Couple Calculé PID avec
perturbation constante de 10 Nm une perturbation constante de 10 Nm

Figure II.22.k Erreur de poursuite de la Figure II.22.l Erreur de poursuite de la


vitesse du 2eme axe du terminal en utilisant la vitesse du 3eme axe du terminal avec la
commande Couple Calculé PID avec une commande Couple Calculé PID avec une
perturbation constante de 10 Nm perturbation constante de 10 Nm

79
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.23.a Erreur de poursuite de la Figure II.23.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande prédictive commande prédictive

Figure II.23.c Erreur de poursuite de la Figure II.23.d Erreur de poursuite de


position du 3eme bras en utilisant la la position du 1er axe du terminal en
commande prédictive utilisant la commande prédictive

Figure II.23.e Erreur de poursuite de la Figure II.23.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant la commande prédictive utilisant la commande prédictive

80
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.23.g Erreur de poursuite de la Figure II.23.h Erreur de poursuite de


vitesse du 1er bras en utilisant la la vitesse du 2eme bras en utilisant la
commande prédictive commande prédictive

Figure II.23.i Erreur de poursuite de la Figure II.23.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en utilisant
commande prédictive la commande prédictive

Figure II.23.k Erreur de poursuite de Figure II.23.l Erreur de poursuite de la


la vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant la commande prédictive utilisant la commande prédictive

81
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.24.a Erreur de poursuite de la Figure II.24.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande de Slotine et Li commande de Slotine et Li

Figure II.24.c Erreur de poursuite de la Figure II.24.d Erreur de poursuite de


position du 3eme bras en utilisant la la position du 1er axe du terminal en
commande de Slotine et Li utilisant la commande de Slotine et Li

Figure II.24.e Erreur de poursuite de la Figure II.24.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant la commande de Slotine et Li utilisant la commande de Slotine et Li

82
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.24.g Erreur de poursuite de la Figure II.24.h Erreur de poursuite de


vitesse du 1er bras en utilisant la la vitesse du 2eme bras en utilisant la
commande de Slotine et Li commande de Slotine et Li

Figure II.24.i Erreur de poursuite de la Figure II.24.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en utilisant
commande de Slotine et Li la commande de Slotine et Li

Figure II.24.k Erreur de poursuite de Figure II.24.l Erreur de poursuite de la


la vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant la commande de Slotine et Li utilisant la commande de Slotine et Li

83
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.25.a Erreur de poursuite de la Figure II.25.b Erreur de poursuite de


position du 1er bras en utilisant la la position du 2eme bras en utilisant la
commande de Sadegh et Horowitz commande de Sadegh et Horowitz

Figure II.25.c Erreur de poursuite de la Figure II.25.d Erreur de poursuite de la


position du 3eme bras en utilisant la position du 1er axe du terminal en utilisant la
commande de Sadegh et Horowitz commande de Sadegh et Horowitz

Figure II.25.e Erreur de poursuite de la Figure II.25.f Erreur de poursuite de


position du 2eme axe du terminal en la position du 3eme axe du terminal en
utilisant la commande de Sadegh et utilisant la commande de Sadegh et
Horowitz Horowitz

84
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.25.g Erreur de poursuite de la Figure II.25.h Erreur de poursuite de


vitesse du 1er bras en utilisant la la vitesse du 2eme bras en utilisant la
commande de Sadegh et Horowitz commande de Sadegh et Horowitz

Figure II.25.i Erreur de poursuite de la Figure II.25.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en utilisant
commande de Sadegh et Horowitz la commande de Sadegh et Horowitz

Figure II.25.k Erreur de poursuite de Figure II.25.l Erreur de poursuite de la


la vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant la commande de Sadegh et utilisant la commande de Sadegh et
Horowitz Horowitz

85
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Les résultats théoriques obtenus dans cette section sont validés, dans l’analyse ci-dessus
où la convergence globale de toutes les erreurs du système avec les différentes lois de
commande est illustrée par les figures montrées ci-dessus.

Afin de faire une étude comparative entre les trois commandes de poursuite de
trajectoires données par les équations (2.113), (2.116)-(2.117) et (2.128) successivement,
présentées dans ce chapitre, les gains des commandes doivent être choisis d’une manière
équivalente. C’est à dire, les matrices des gains de la commande de Paden et Panja et la
commande de Slotine et Li doivent être choisies équivalentes à celles de la commande couple
calculé [Berghuis 1993].

De (2.114), (2.118) et (2.130) nous trouvons que :


K p _ CPP ≡ Md (q)K p _ CCC et Kv _ CPP ≡ Md (q)Kv _ CCC (2.139)

K d _ CSL ≡ Md (q)Kv _ CCC et ΛCSL ≡ K d−1_ CSL Md (q)K p _ CCC (2.140)

avec :

Kv _ CPP = 2 K p _ CCC , i=1,…,n (2.141)


i i

La relation (2.141) est la condition qui permit d’avoir l’amortissement critique des
signaux d’erreur [Berghuis 1993, Lewis et al. 1998].
Md est une estimation de la matrice d’inertie. Sa valeur est une approximation de la
matrice diagonale d’inertie lorsque le robot est en position de repos. Dans notre cas, elle est
égale à :
⎛ 0.1800 0 0 0 0 0 ⎞
⎜ 0 0.1900 0 0 0 0 ⎟
⎜ 0 0 0.2000 0 0 0 ⎟
Md =⎜ (2.142)
0 0 0 1.1405 0 0 ⎟
⎜ 0 0 0 0 2.7542 0 ⎟
⎜ 0 0 0 0 0 6.9253⎟⎠

Les matrices des gains Kp et Kv de la commande couple calculé utilisé dans la simulation
sont :
⎛ 6000 0 0 0 0 0 ⎞ ⎛ 700 0 0 0 0 0⎞
⎜ 0 6000 0 0 0 0 ⎟ ⎜ 0 700 0 0 0 0⎟
⎜ 0 5000 0 0 0 ⎟ ⎜ 0⎟
Kp =⎜ 0 Kv = ⎜ 0 0 400 0 0 (2.143)
0 0 0 144 0 0 ⎟ 0 0 0 20 0 0⎟
⎜ 0 0 0 0 144 0 ⎟ ⎜ 0 0 0 0 20 0⎟
⎜ 0 0 0 0 0 144 ⎟⎠ ⎜ 0 0 0 0 0 20 ⎟⎠
⎝ ⎝

Il est clair de la figure II.26 que les performances de poursuite de ces lois de commande
sont approximativement équivalentes. La commande couple calculé a la meilleure réponse,
puisqu’elle linéarise et découple parfaitement le système, et les gains cités ci-dessus, la

86
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

convergence des erreurs de poursuite du système à zéro est garanti. De plus, nous notons que
la réponse de la commande de Paden et Panja est presque égale à celle de la commande
couple calculé. Ceci peut être s’expliqué par l'équivalence principale de la relation (2.139), les
deux commandes seront approximativement les mêmes. Le choix de la matrice diagonale
d'inertie et les conditions initiales non nulles sont la cause de cette légère différence entre les
deux commandes.

D'autre part, la réponse de la commande de Slotine et Li (CSL) est moins semblable à


celle de la commande couple calculé (CCC). Ceci peut être vu de l'expression de la
commande donnée par (2.128)-(2.129). En effet, si nous considérons la relation (2.140),
l'algorithme de la commande de Slotine et Li contiendra deux termes
additionnelles ; − M(q) Λ q~& et − C(q,q&) Λ q~& . Ces deux termes non linéaires causent la différence
dans les erreurs de poursuite par rapport aux deux autres commandes.

Pendant la simulation, nous avons noté qu'en augmentant les gains de la commande
couple calculé dans (2.139) et (2.140), les trois réponses tendront à être exactement
semblables. De cette analyse, nous concluons que les commandes ci-dessus, se comportent
pareillement dans le problème de poursuite à condition que la dynamique du robot soit connue
exactement (pas d’incertitudes paramétriques et pas de perturbations externes).

87
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.26.a Erreur de poursuite de la Figure II.26.b Erreur de poursuite de


position du 1er bras en utilisant la CCC, la position du 2eme bras en utilisant la
CPP et CSL CCC, CPP et CSL

Figure II.26.c Erreur de poursuite de la Figure II.26.d Erreur de poursuite de


position du 3eme bras en utilisant la CCC, la position du 1er axe du terminal en
CPP et CSL utilisant la CCC, CPP et CSL

Figure II.26.e Erreur de poursuite de la Figure II.26.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant la CCC, CPP et CSL utilisant la CCC, CPP et CSL

88
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

Figure II.26.g Erreur de poursuite de la Figure II.26.h Erreur de poursuite de


vitesse du 1er bras en utilisant la CCC, la vitesse du 2eme bras en utilisant la
CPP et CSL CCC, CPP et CSL

Figure II.26.i Erreur de poursuite de la Figure II.26.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la CCC, vitesse du 1er axe du terminal en utilisant
CPP et CSL la CCC, CPP et CSL

Figure II.26.k Erreur de poursuite de Figure II.26.l Erreur de poursuite de la


la vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant la CCC, CPP et CSL utilisant la CCC, CPP et CSL

89
Chapitre II Commandes Dynamiques Classiques des Robots Manipulateurs Rigides

II-5. CONCLUSION

Ce chapitre nous a permis de présenter plusieurs méthodes de génération de mouvement


couramment utilisées en robotique. Le problème a été traité pour des mouvements entre deux
points : différents modes d’interpolation ont été étudies, notamment la loi d’interpolation d’un
polynôme de degré cinq dans la quelle la position, la vitesse et l’accélération sont continues.

De plus, nous avons réussi de présenter plusieurs lois de commandes dynamiques


classiques appliquées aux robots manipulateurs rigides, soient celles qui traitent le problème
de régulation, telle que la commande PD, la commande PID, la commande PD avec
compensation de l’effet de gravité et la commande par découplage non-linéaire, soient celles
qui traitent le problème de poursuite de trajectoire, telle que la commande linéarisante (couple
calculé type PD et couple calculé type PID et commande prédictive), et la commande basée
sur la théorie de Lyapunov (commande de Paden et Panja, de Slotine et Li et de Sadegh et
Horowitz). A la fin du chapitre, nous avons fait des applications de ces lois de commandes au
modèle dynamique du robot manipulateur rigide Puma 560 (cf. section I-4-4) où nous avons
validé notre étude théorique.

Les commandes étudiées dans ce chapitre ne sont efficaces que dans le cas ou, les
paramètres du système à commander (robot) sont bien définis, c’est-à-dire pas d’incertitudes,
pas de frottement et pas de perturbations. Dans le cas contraire, il est recommandé d’utiliser
des lois de commande dites robustes. Ceci fera l’objet du chapitre III.

90
CHAPITRE III
Commandes Dynamiques
Robustes Des Robots
Manipulateurs Rigides
Dans ce chapitre nous étudierons trois approches de lois de commandes
robustes qui garantissent une bonne poursuite de position et de vitesse en présence
des incertitudes du système, ces dernières sont l’approche multivariable linéaire
robuste, l’approche de saturation robuste et l’approche à structure variable avec
mode de glissement.
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

III-1. INTRODUCTION

Jusqu'à ici, nous avons montré que les schémas de commande classiques donnent des
résultats satisfaisants dans le problème de la commande des robots manipulateurs rigides. La
connaissance exacte de la dynamique du système est la supposition de base dans la conception
de ces schémas. En général, le modèle mathématique d'un robot est très complexe si tous les
facteurs possibles sont considérés (telle que la dynamique du moteur) et il est difficile de
concevoir une commande pour un système complexe. De ce fait, la conception de la
commande utilise le modèle réduit du système, et les facteurs réduits sont pris en
considération comme des incertitudes ou des perturbations. De plus, les paramètres du robot
(la masse, centre de gravité, moments de rotation…) sont habituellement inconnus ou non
mesurables avec précision, ainsi l’estimation des paramètres est un problème très important
dans l'analyse et la conception des systèmes de commande du robot. Dans la plupart des
anciennes recherches, les incertitudes de la dynamique du modèle ont été ignorées
et seulement la commande non-linéaire classique a été utilisée à cause de la vitesse lente du
mouvement et de la basse exigence de la précision de commande. Cependant, dans ces
dernières années, les conditions de performance du robot sont devenues de plus en plus
importantes, donc, les incertitudes du modèle ne peuvent plus être ignorées [Xu 1995].

La commande des systèmes incertains est généralement accomplie en utilisant soit une
commande adaptative soit une philosophie de la commande robuste. L’idée de base dans
l'approche adaptative est de concevoir une commande qui essaye de connaître les paramètres
incertains du système, et, si elle est correctement conçue, elle sera par la suite une meilleure
commande pour le système incertain. Dans l'approche robuste, la commande a une structure
fixe qui donne une performance "acceptable" pour un ensemble donné d'incertitude du
modèle.

En général, l'approche adaptative est applicable à la plus grande gamme d'incertitude,


mais l’implémentation des commandes robustes est plus simple et le temps nécessaire pour
"accorder" la commande aux variations du modèle est nul. Plus récemment, les chercheurs ont
essayé de robustifier certaines commandes adaptatives afin de combiner les avantages des
deux approches.

Le schéma de la commande robuste a été le sujet de différentes recherches et cela en


utilisant de différentes approches, de ce fait, plusieurs commandes robustes ont été proposées
pour le robot manipulateur. Généralement, les schémas de la commande robuste comporte un
compensateur non-linéaire et un stabilisateur robuste, la première composante est pour
éliminer les effets non linéaires, et la deuxième est conçue de telle façon que le système
satisfasse la stabilité ou quelques performances. En général, si le modèle du système est

92
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

parfaitement connu, alors le compensateur non-linéaire peut complètement compenser l'action


non-linéaire, et par conséquent le stabilisateur robuste peut conduire le système à la stabilité.
Un aperçu de la commande robuste pour les robots rigides est présenté par [Abdellah et al.
1991].

Dans ce chapitre, nous classifierons les techniques robustes utilisées pour la commande
des robots en trois catégories principales; la technique multivariable linéaire robuste, la
technique de saturation robuste et la technique de commande à structure variable.

L'approche multivariable linéaire robuste inclut des méthodes basées sur la linéarisation
du retour d’état du modèle dynamique du robot, c.-à-d. la loi de commande couple calculé (cf.
section II-3-2-2). Cette technique emploie la dynamique inverse du robot pour linéariser
globalement et découpler l'équation non-linéaire du robot. Généralement, la linéarisation ne
sera pas parfaite puisque nous n'avons pas la dynamique inverse exacte du système. Ceci se
manifestera par les termes incertains qui peuvent être traitées en utilisant les techniques
multivariables linéaires robustes [Lewis et al. 1993, Spong et al. 1984, Spong et al. 1987,
Craig 1988]. Dans cette approche, nous pouvons écrire le système en boucle fermée sous la
forme d’une partie linéarisée, plus quelques termes additionnels incertains. Nous verrons que
le problème de commande non-linéaire sera réduit à concevoir les techniques linéaires de
commande qui devraient garantir la stabilité de la boucle fermée avec la présence du terme
paramétrique d'incertitude.

Malheureusement, nous noterons que des gains excessivement élevés devraient être
implémentés pour garantir des performances acceptables de la boucle fermée pour une classe
donnée de perturbations.

La deuxième technique n'est pas basée sur les techniques linéaires robustes, mais plutôt
elle emploie une commande de saturation auxiliaire pour traiter l'incertitude présentée dans la
dynamique du robot manipulateur.

Ces commandes sont robustes du fait qu'elles dépendent plutôt des bornes des
incertitudes que les valeurs courantes des paramètres. En fait, une supposition importante à
considérée dans la conception de cette classe de commandes est que la borne supérieure
d'incertitude paramétrique du système devrait être connue à priori, qui pourrait être une étape
difficile dans la plupart des applications faites sur les robots. Pour satisfaire cette condition,
un procédé simple pour estimer cette borne supérieure d'incertitude sera discuté.

A la fin de ce chapitre, nous présenterons une approche très importante qui a été très
utilisée dans la commande de plusieurs systèmes non-linéaires incertains due à ses propriétés
de robustesse élevées et au fait qu'elle fournit un procédé de conception simple. Cette

93
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

approche est basée sur la théorie de la commande à structure variable. L'idée de base de cette
technique est qu’elle cherche seulement de conduire le signal d'erreur à une surface de
commutation, après le système soit en mode de glissement et il ne sera plus affecté par aucune
incertitude de modélisation et/ou perturbations externes. Malheureusement, une telle
performance est obtenue par un effet extrêmement élevé d'activité de commande. Par
conséquent, le phénomène de vibration se produit toujours, qui est fortement indésirable parce
qu'il peut exciter la dynamique non modélisée à haute fréquence. Pour illustrer cette approche,
nous présenterons de différentes commandes à structure variable appliquées aux robots
manipulateurs, et nous allons essayer de donner le détail nécessaire sur la conception des
algorithmes des commandes qui utilisent cette technique.

III-2. L’APPROCHE MULTIVARIABLE LINEAIRE ROBUSTE

Dans le chapitre deux, nous avons vu que la commande couple calculé, donnée par
l’équation (2.69) et (2.70) (cf. section II-3-2-2), linéarise et découple parfaitement le modèle
dynamique du robot si l’équation dynamique est exactement connue. Dans cette section, nous
allons étudier des commandes considérées comme une modification de la commande couple
calculé. Pour traiter cette classe de commande, nous considérons la commande couple calculé
dans la représentation d’espace d’état.

Considérons l’équation dynamique du robot donnée dans le chapitre I par :


M(q)q&&+C(q,q&)q& +G(q)= M(q)q&&+ N(q,q&)=Γ (3.1)

avec :
N ( q , q& ) = C ( q , q& ) q& + G ( q ) (3.2)

Pour le problème de poursuite de trajectoire du robot manipulateur rigide, nous


définissons q~ et q~& comme l’erreur de poursuite de position et de vitesse respectivement tel
que :
q~ = q − q d et q~& = q& − q& d (3.3)

Nous pouvons également linéariser et découpler le système d’erreur non linéaire en :


⎛ q~& ⎞ ⎛ 0 I n ⎞ ⎛ q~ ⎞ ⎛ 0 ⎞
⎜ ⎟=⎜ ⎟⎜ ⎟ ⎜ ⎟
+ u (3.4)
⎜~ ⎜
&& ⎟ ⎜ 0 0 ⎟⎟ ⎜ q~& ⎟ ⎜⎜ I ⎟⎟
⎝ ⎠ ⎝
q ⎠⎝ ⎠ ⎝ n ⎠

où :
u = M ( q ) −1( − N ( q , q& ) + Γ ) − q&&d (3.5)

Alors, la commande couple calculé non linéaire devient :

94
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Γ = M ( q )( q&&d + u ) + N ( q , q& ) (3.6)

ce qui nous donne un système en boucle fermée décrit par une équation différentielle de 2ème
ordre :
q~
&&=u (3.7)

Donc le problème se résume à trouver une commande linéaire u qui accomplira une
performance de la boucle fermée désirée. Notons que de l’équation d’erreur (3.7), les
différents axes du robot manipulateur sont découplés afin que des commandes n-SISO
peuvent être conçus pour commander les n axes du robot. Cependant, l’implémentation
pratique de ce type de commandes (couple calculé) exige la considération des différentes
sources d’incertitude tel que les erreurs de modélisation, les perturbations extérieures, les
charges inconnues, et le bruit. Alors, la commande robuste consiste à maintenir une poursuite
précise sous des incertitudes.

Dans notre cas, nous considérons que la dynamique du robot n’est pas connue
exactement, et une loi de commande de type couple calculé modifiée doit être utilisée. Au lieu
d’utiliser l’équation dynamique réelle (3.6), nous utilisons des estimés de ses non linéarités,
M̂ et N̂ . La commande est définie par :
Γ = Mˆ ( q&&d + u ) + Nˆ (3.8)

Nous pouvons voir que cette loi de commande réintroduira quelque couplages dans le
modèle linéaire. L’application de cette commande à la dynamique du robot (3.1)-(3.2) donne
le système en boucle fermée suivant :
M(q)q&&+ N(q,q&)= Mˆ (q&&d +u)+ Nˆ (3.9)
ce qui nous mène à écrire :
M(q)q&~& +(M(q)− Mˆ )q&&d = Mˆ u + Nˆ − N(q,q&) (3.10)

afin que, les erreurs dynamiques soient régies par :


q~
&&=(M(q)−1Mˆ − I n )(q&& +u)+ M(q)−1(Nˆ − N(q,q&))+u
d (3.11)

De cela, nous pouvons écrire l’équation de la boucle fermée sous une forme matricielle
comme suit :
ξ&= Aξ + B(u +η) (3.12)

avec :
η = E(q&&d +u)+ M(q)−1δ (3.13)

E = M(q)−1Mˆ (q)− I n (3.14)

95
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

δ =(Nˆ − N(q,q&)) (3.15)

⎛ q~ ⎞ ⎛ 0 In ⎞ ⎛0⎞
⎜ ⎟ ⎜ ⎟
et ξ =⎜ ⎟ A=⎜ ⎟ B =⎜⎜ ⎟⎟ (3.16)
⎜ ~& ⎟ ⎜0 0 ⎟
⎝q ⎠ ⎝ ⎠ ⎝ In ⎠

Notons que dans le cas idéal, Mˆ =M(q) et Nˆ = N(q,q&) , la commande sera réduite à la
commande idéale de la dynamique inverse, où E, δ et η sont nulles.

En effet, notons que le système (3.12) est un système non linéaire couplé puisque η est
une fonction de u et ξ. Donc, elle ne peut pas être traitée en tant qu’une perturbation externe
qui peut être rejetée par la loi de commande u(t), elle représente une perturbation interne de la
dynamique de l’erreur globalement linéarisée, causée par les incertitudes de la modélisation,
variation des paramètres, perturbations extérieurs, termes de frottement, et peut être assimilés
à des bruits de mesures [Lewis et al. 1993, Spong et al. 1987a].

Le problème est alors d’utiliser n’importe quelle technique multivariable robuste dans la
synthèse d’une commande linéaire u(t) pour que le système en boucle fermée soit stable dans
des sens convenables (la bornitude uniforme, la bornitude ultime uniforme, la stabilité
asymptotique…), pour une classe donnée de la perturbation non linéaire η . La figure III.1
illustre le système en boucle fermée décrit par les équations (3.12)–(3.16), avec h(.) dénotant
la fonction de transfert du retour d’état linéaire.

+ +
E M-1(q) δ
η
+ ξ
+
Robot

u h(.)

Figure III.1. Conception multivariable linéaire.

Pour aller plus loin, la supposition suivante est souvent utilisée pour permettre
l’application de cette approche sur les robots [Abdellah et al. 1991, Lewis et al. 1993, Spong
et al. 1989].

Supposition

Sur la base des propriétés du modèle dynamique du robot manipulateur présenté dans la
section I-4-3, les propriétés suivantes peuvent être facilement obtenues :
1 ≤ M(q)−1 ≤ 1 (3.17.a)
MM Mm

96
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

E ≤α <1 (3.17.b)

δ ≤ β0 + β1 ξ + β 2 ξ ² (3.17.c)

q&&d ≤ A M (3.17.d)

où • peut être une norme appropriée quelconque. Ces bornes peuvent être facilement
obtenues à partir des propriétés structurelles du robot manipulateur présentées dans la section
I-4-3.

L’énoncé du retour d’état statique est considérablement utilisée dans la synthèse de u(t).
Considérons la commande donnée par:
u(t)=−Kξ (3.18)

Alors, l’équation dynamique de l’erreur sera :


ξ& = ( A − BK ) ξ + B η (3.19)

Il peut être vu que par le choix des modes de la partie linéaire du système décrite par
Ac = A− BK pour être suffisamment stable ; c’est à dire placer les pôles suffisamment loin
dans le coté gauche du plan complexe, la stabilité robuste du système en boucle fermée dans
la présence de η peut être garantie.

Pour le problème de régulation, q&(t)=0 , avec un couple de perturbation nul, l’énoncé


précédent est vrai, voir [Takegaki et al. 1981]. Il est simple de voir que si nous choisissons
dans l’équation (3.8), Mˆ = I n et Nˆ =G(q)−q&&d , alors la commande avec retour d’état précédente
se réduira à une commande de type PD avec compensation de gravité proposé par [Takegaki
et al. 1981] et présenté dans la section II-3-1-3.

De plus, dans la section II-3-2-2, nous avons vu que l’augmentation des gains de la
commande couple calculé, assure la bornitude de l’erreur de poursuite pour un système
incertain.

Nous pouvons facilement montrer que la commande par retour d’état statique (3.18)
assure la bornitude uniforme du système d’erreur (3.19). Puisque la matrice Ac = A− BK est
conçue pour être une matrice stable, il existe une matrice P=PT>0, tel que pour Q=QT>0, P
est la solution de l’équation de Lyapunov :
ATc P+ PAc =−Q (3.20)
Par conséquent, la matrice des gains est choisie comme :
K = BT P (3.21)

97
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Ensuite, nous considérons la fonction candidate de Lyapunov, en supposant que les


erreurs initiales de poursuite sont nulles :

V = 1 ξ T P ξ + ∫ u T (σ ) E u (σ ) d σ (3.22)
2

Notons que cette fonction de Lyapunov est définie positive si la matrice E ≥ 0. Cela peut
être vérifié si, de (3.14), nous supposons que Mˆ >M M I n .

La dérivée par rapport au temps de cette fonction de Lyapunov évaluée le long de la


dynamique de l’erreur (3.19) est obtenue comme :

V& = − 1 ξ T Q ξ +ξ T PB η +ξ T K T EK ξ (3.23)
2

L’utilisation de (3.13) et (3.18), donne :

V& = − 1 ξ T Q ξ +ξ T K T E q&&d +ξ T K T M −1( q ) δ (3.24)


2

Par l’utilisation de (3.17), une borne supérieure de V& est donc obtenue comme :

V& ≤ − 1 λ min ( Q ) ξ ² + K
2
ξ (E A M + δ M m−1 ) (3.25)

où, λmin(Q) est la valeur propre minimale de la matrice Q. l’exploitation de (3.17) donne :

V& ≤ ξ ( α 0 − α 1 ξ + α 2 ξ ²) (3.26)

avec :
α 0 = K (β 0 M m−1+αAM ) (3.27.a)

α1 = 1 λmin(Q)− K β 1 M m−1 (3.27.b)


2
α 2 = K β 2 M m−1 (3.27.c)

Il est simple à vérifier que, sous la condition :


λmin(Q) >2 K β1 M m−1 (3.28)

l’équation (3.26) peut être réécrite comme :


V& ≤ g ( ξ )< 0 pour η1 < ξ <η2 (3.29)

avec :

α1 − α12 −4α 0α 2 α1 + α12 −4α 0α 2


η1 = et η2 = (3.30)
2α 2 2α 2

98
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

En utilisant Le théorème A.5 (cf. annexe), nous pouvons directement conclure que le
système d’erreur est uniformément borné par une sphère autour de zéro.

Le choix de la matrice des gains K peut être fait en utilisant des différentes approches.
Parmi ces approches, nous trouvons le théorème de passivité, par lequel nous pouvons
déterminer la matrice des gains K qui rend le système en boucle fermée strictement réel positif
(SRP) comme il est décrit dans le théorème A.7 (cf. annexe). Ensuite, nous devons mettre le
sous système linéaire strictement réel positif (SRP) pour que la stabilité du système globale
soit garantie [Abdellah et al. 1990b, 1991].

En effet, dans [Abdellah et al. 1990a], la commande du retour d’état est utilisée pour
définir une sortie Kξ appropriée, tel que le système linéaire en boucle fermée entrée-sortie est
SRP. Alors, la stabilité de la boucle fermée est assurée pour toute η , résultante du système
non linéaire passif en utilisant le théorème de passivité. Dans ce conteste, [Abdellah et al.
1990a] ont montré que le système linéaire décrit par :
⎛ 0 I n ⎞⎟ ⎛⎜ 0 ⎞⎟
& ⎜
ξ =⎜ ⎟ξ + u (3.31)
⎜ − K p − K v ⎟ ⎜⎜ I n ⎟⎟
⎝ ⎠ ⎝ ⎠
y =(K p Kv)ξ = Kξ (3.32)

avec K p =k p I n et Kv =kv I n , est SRP si :

Kv2 > K p (3.33)

avec le choix de :
⎛ 2K 2p 0 ⎞
Q =⎜ ⎟ (3.34)
⎜ ⎟
⎝ 0 2Kv −2K p ⎠
2

tel que :
⎛ 2K p Kv K p ⎞
⎜ ⎟
P =⎜ ⎟ (3.35)
⎜ K p Kv ⎟
⎝ ⎠

est la solution définie positive unique de l’équation de Lyapunov.


2
et K = BT P=⎛⎜ Kv Kv ⎞⎟ , µ > 1 (3.36)
⎝ µ ⎠

En suivant ces mêmes arguments, le théorème suivant peut être annoncé.

Théorème 3.1
Le système en boucle fermée (3.19) sera uniformément borné si q(0)=q~& (0)=0 , et :

99
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

µ > 1 + 1 ⎛⎜ β1 + 2 (β 2 β 0 + β 2 (M m + M M ) AM ) ⎞⎟ (3.37)
Mm ⎝ ⎠

où :
Kv =2µI n et K p =4µI n (3.38)

Preuve

Choisissons la fonction candidate de Lyapunov de l’équation (3.22). La dérivé par


rapport au temps de cette fonction est bornée, voir les équations (3.25)-(3.27).
Pour satisfaire la condition (3.17), nous choisissons Mˆ (q)= M M I n , d’où nous obtenons :

M M +M m
α= (3.39)
MM Mm

et pour vérifier l’équation (3.28), la borne inférieure de µ doit être choisie selon la relation
(3.37). Par l’application du théorème A.5 (cf. annexe), nous pouvons voir, que le signal
d’erreur va être borné par un terme qui tend vers zéro lorsque µ augmente.

De l'analyse ci-dessus, nous pouvons noter que la matrice E peut être arbitrairement
grande lorsque Mˆ ≥ M M I n .

D'autres schémas de commande, qui ont la même structure de ces commandes statiques,
existent [Craig 1988]. La seule différence est que l’étude de la stabilité du système d'erreur se
fait en utilisant des concepts d'entrée-sortie plutôt que les méthodes d'espace d'état impliquées
par les techniques de Lyapunov. Ainsi, les commandes statiques du retour d’état assurent la
bornitude de l'erreur de poursuite aussi longtemps que les gains de commandes sont
choisissaient assez grands.

Des commandes dynamiques sont également considérées dans la conception de la loi de


commande u(t). Ces commandes prendront les signaux mesurés et les filtreront à l'aide d'un
système dynamique avant d'introduire le signal de nouveau à l'entrée. Ceci peut être vu dans
le travail proposé par [Spong et al.1987a]. Dans ce travail, l'approche stable de la factorisation
a été appliquée pour concevoir un compensateur linéaire qui permet d’obtenir une poursuite
optimale avec le rejet de perturbation. En utilisant une paramétérisation d’une matrice stable,
la classe du compensateur dynamique stabilisant pour le système non perturbé; η =0 , a été
générée. Ensuite, en donnant des bornes sur l'incertitude, ils ont développé une condition
suffisante pour la stabilité du système perturbé. Les auteurs ont supposé que β 2 =0 dans
l'équation (3.17) pour avoir une expression linéaire sur les bornes de δ .

L’analyse ci-dessus montre que l’approche multivariable linéaire robuste utilisée avec la
méthode de linéarisation du retour d’état (le similaire de la commande couple calculé), est

100
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

robuste. Cependant, des gains excessivement grands peuvent être nécessaires pour garantir la
bornitude de l’état d’erreur de poursuite. Cette classe de compensateurs qui est constituée de
plusieurs structures communes est utilisée par les constructeurs des robots puisqu’elle est la
plus simple pour l’implémentation et l’étude [Abdellah et al.1990b, 1991, Lewis et al. 1993]

D’autre part, il existe d’autre type de commandes, qui constituent une classe très
importante de compensateurs des robots, se sont les commandes non linéaires, ce n’est pas
l’analogue de la commande couple calculé, ces commandes sont obtenues directement de
l’équation du robot sans l’utilisation de la procédure de la linéarisation avec retour d’état.
Elles peuvent être obtenues de la passivité de la dynamique du robot. Généralement, ces
commandes peuvent être écrites comme une commande couple calculé additionnée avec une
commande auxiliaire non linéaire, qui introduit un couplage entre les différentes articulations
du robot.

Parmi les commandes non linéaires de cette classe, nous allons étudier deux approches
utilisées dans la commande des systèmes robotisés. Nous commençons notre étude par la
commande de type saturation qui utilise un compensateur auxiliaire pour compenser les effets
des incertitudes du système en boucle fermée. Puis, nous présentons une classe importante des
commandes à structure variable avec le mode de glissement.

III-3. L’APPROCHE DE LA SATURATION ROBUSTE

Dans cette section, nous allons étudier les approches qui utilisent des commandes
auxiliaires de saturation pour compenser l’incertitude présentée dans la dynamique du robot
comme elle est donnée par l’équation dynamique du robot (3.1)–(3.2)

Les commandes désignées par cette approche sont basées sur la garantie de la stabilité
des systèmes incertains, et elles sont robustes puisqu’elles dépendent seulement des bornes
d’incertitudes plutôt que les valeurs courantes des paramètres.

Plusieurs commandes de saturation ont été développées pour les systèmes robotisés. Nous
pouvons distinguer deux différentes approches ; la première est basée sur la linéarisation avec
retour d’état du modèle dynamique du robot, tandis que la deuxième traite les commandes
basées sur la passivités [Spong et al. 1994].

III-3-1. Méthode basée sur la linéarisation du retour d’état

Pour analyser cette méthode, nous pouvons commencer par le travail présenté dans
[Spong et al. 1987b], qui est une représentation de cette classe. La commande est donnée par :
Γ = Mˆ (q)(q&&d − Kv q~& − K p q~ +vr )+ Nˆ (q,q&) (3.40)

101
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Cette loi de commande est basée sur la technique de la linéarisation avec retour d’état.
Ainsi, le système en boucle fermée obtenu sera de la même structure comme dans l’équation
(3.12). La différence principale entre la méthode précédente et celle-ci, est le terme de
commande additionnel vr qui est utilisé pour compenser les effets de l’incertitude du système.

Si nous remplaçons cette loi de commande dans la dynamique du robot (3.1), nous
obtenons la dynamique de l’erreur décrite par :
ξ&= Acξ + B(vr +η) (3.41.a)

où la matrice K est donnée par :

K=(Kp Kv) (3.41.b)

Dans ce cas, le terme incertain est obtenu comme :


η = E(q&&d − Kξ +vr )+ M(q)−1δ (3.41.c)

E et δ sont définies dans (3.13)-(3.14). L’objectif de ce type de commandes est de


rechercher, tout d’abord, une borne scalaire à temps variant, ρ(ξ ,t) , pour l’incertitude η,
c’est-à-dire :
η ≤ ρ(ξ , t) (3.42)

Ensuite, concevoir le terme d’entrée additionnel vr pour garantir la stabilité asymptotique


ou au moins la bornitude ultime de l’erreur de poursuite ξ(t) dans l’équation (3.41). Il est claire
que le calcul de la borne ρ(ξ ,t) est difficile, à cause de la complexité du terme de perturbation
dansη, et du fait que l’incertitude η est elle-même en fonction de vr.

Puisque Ac est une matrice stable avec des valeurs propres prédéfinies. Nous pouvons
choisir une matrice définie positive Q, et soit P = PT>0, est la seule solution de l’équation de
Lyapunov (3.20).

Ensuite, le théorème suivant peut être démontré.

Théorème 3.2

L’erreur de poursuite de trajectoire ξ(t) est uniformément ultimement bornée (UUB) avec
la commande (3.40) et :
⎧ BT Pξ
⎪− ρ(ξ,t) si BT Pξ ≥ε
⎪ BT Pξ
vr =⎨ pour ε >0 (3.43)
⎪ BT Pξ
⎪⎩ − ρ (ξ ,t ) si BT Pξ < ε
ε

102
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

avec : ε >0 est un paramètre conçu relative à la borne de l’erreur de poursuite, et les gains de
commande sont définis comme des matrices diagonales positives, c’est-à-dire Kv=kvIn
et Kp=kpIn.

De plus, la matrice estimée d’inertie dans l’équation (3.40) est choisie comme :
M mM M
Mˆ (q) =2 (3.44)
M m +M M

la borne supérieure des incertitudes du système est donnée par :



( ) ⎞
ρ = 1 ⎜⎜α q&&d +k p q~ +kv q~& + 1 δ ⎟⎟
1−α ⎝ Mm ⎠
(3.45)

α est définie dans l’équation (3.17) et sa valeur selon (3.44) est donnée dans la preuve :

Preuve

Choisissons la fonction candidate de Lyapunov comme suit :

V(ξ,t)= 1ξ T Pξ (3.46)
2

La dérivée temporelle de V(ξ,t) évaluée le long de la dynamique de l’erreur (3.41) donne :

V& =− 1ξ T Qξ&+ξ T PB(vr +η) (3.47)


2

En utilisant l’expression (3.43), et si nous avons BT Pξ > ε , alors :

⎛ BT Pξ ⎞
V& =− 1ξ T Qξ +ξ T PB⎜ − ρ(ξ,t) +η ⎟ (3.48)
2 ⎜ BT Pξ ⎟
⎝ ⎠

En utilisant l’inégalité (3.42), nous pouvons directement écrire :

V& ≤− 1 ξ T Qξ (3.49)
2

Si BT Pξ ≤ ε , (3.47) est équivalente à :

⎛ BT Pξ ⎞
& 1 ⎜
V = − ξ Qξ +ξ PB − ρ(ξ,t)
T T +η⎟ (3.50)
2 ⎜ ε ⎟
⎝ ⎠

par conséquent, l’utilisation de (3.42) donne :


BT Pξ
V& ≤− 1ξ T Qξ − ρ(BT Pξ)T +ξ T PBρ (3.51)
2 ε
Notons que les arguments de V& et ρ sont négligées dans l’intérêt de la simplicité de
notation, alors :

103
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

⎛ 2 ⎞
⎜ BT Pξ ⎟
V& ≤ − 1 λmin (Q) ξ + ρ ⎜ − ⎟
2
+ BT Pξ (3.52)
2 ⎜ ε ⎟
⎜ ⎟
⎝ ⎠

Il est facile de déduire que le deuxième terme du côté droit de l’équation (3.52) atteint
son maximum à BT Pξ > ε / 2 , d’où nous pouvons écrire :

V& ≤− 1 λmin(Q) ξ + 1 ερ
2
(3.53)
2 4

De cette dernière inégalité, nous pouvons montrer que l’erreur de poursuite de trajectoire
est uniformément ultimement bornée par l’application directe du théorème A.6 (cf. annexe).
Nous avons de (3.46) :
1 λ (P) ξ 2 ≤V ≤ 1 λmax (P) ξ 2
(3.54)
2 min 2

De plus, l’équation (3.53) peut être réécrite comme :


2
⎛ ερ ⎞
V& ≤− 1 λmin (Q) ξ + 1 λmin(Q)⎜ ⎟
2
(3.55)
2 2 ⎜ 2λ (Q) ⎟
⎝ min ⎠

En appliquant le théorème A.6 (cf. annexe) avec :

γ 1 (.) = 1 λmin(P)(.)2 , γ 2(.) = 1 λmax(P)(.)2 et γ 3 (.) = 1 λmin(q)(.)2 (3.56)


2 2 2

Nous pouvons directement conclure que :


λmax(P) ερ
ξ≤ , pour tout t∈[t0+T, ∞) (3.57)
λmin(P) 2λmin(Q)
Donnons :
ερ
ηs > (3.58)
2λmin(Q)

Nous avons :
⎧ 0 si ξ (t0 ) ≤ηs
⎪ 2
T =⎨ λmax(P) ξ(t0 ) −λmin(P)(ηs ) (3.59)
⎪ si ξ (t0 ) >ηs
⎩ γ 3 (ηs )−(ερ / 4)

Donc, la bornitude ultime uniforme du signal d’erreur est garantie. Pour compléter la
preuve, une borne supérieure des incertitudes du système devra être déduite.

De l’équation (3.41.c), nous pouvons écrire :

104
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

δ
(
η ≤ E q&&d + K ξ + vr + ) Mm
(3.60)

En utilisant les bornes (3.17), (3.42) et l’expression de vr donnée par (3.43) nous
obtenons :

( )
η ≤α q&&d + Kv q~& + K p q~ + ρ + 1 ⎛⎜ β0 + β1 q~ + β 2 q~& ⎞⎟= ρ
Mm ⎝
2


(3.61)

avec le choix (3.44), la valeur de α peut être directement obtenue comme :


M M −M m
α= (3.62)
M M +M m

De cela, la borne supérieure (3.45) des incertitudes est directement obtenue, ce qui
complète la preuve.

Notons que, la borne (3.45) est une fonction des paramètres de la trajectoire. Par une
étude plus profonde de la commande ci-dessus, il devient clair que vr dépend des gains Kp
et Kv à travers la borne d’incertitude ρ(ξ ,t) . Cela peut compenser les effets d’ajustement des
gains et il peut être évité [Dawson et al. 1990]. Les auteurs proposent d’utiliser la même
structure de la commande (3.40), avec les choix particuliers suivant :
Mˆ = I n et Nˆ = −q&&d (3.63)

Cela conduit à utiliser une commande simple de type PD avec un terme de saturation
conçu pour palier aux problèmes des incertitudes du système. Les résultats obtenus sont
annoncés dans le théorème suivant :

Théorème 3.3

L’erreur de poursuite de trajectoire ξ(t) du système (3.41) en boucle fermée est


uniformément ultimement bornée avec la commande :
Γ = − K pq~ − Kv q~& + vr (ρ,q~,q~& ,ε) (3.64)

avec KP, Kv des matrices diagonales définies positive citées dans le théorème 3.2 et :
⎧ (µq~ + q~& )
⎪⎪ ~ ~& ρ si µq~ + q~& ρ >ε
vr =⎨ µq + q (3.65)
⎪ (µq~ +q~& )
⎪⎩ ε ρ si µq~ +q~& ρ ≤ε

µ = K p Kv−1 (3.66)

ε>0 est un paramètre conçu relatif à la borne de l’erreur de poursuite, α est un scalaire
constant défini comme : 0<α<1.

105
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

ρ est la fonction scalaire qui borne les incertitudes, elle est donnée par :

ρ =δ 0 +δ1 ξ +δ 2 ξ 2 (3.67)

avec les δ i des scalaires positives.

La preuve de ce théorème nécessite quelques manipulations mathématiques pour changer


la structure dynamique de l’erreur, c’est pour cela nous avons évité sa présentation ici, voir
[Dawson et al. 1990].
Notons que ρ(ξ ,t) ne dépend plus des gains, de ce fait, nous pouvons ajuster KP et Kv sans
modifier la commande auxiliaire vr.
De plus, il est montré dans [Dawson et al. 1990], que si q~(0)=0 l’erreur de poursuite peut
être bornée par le terme suivant :
1
⎛ (2Kv + M M (1+ µ))ε ⎞ 2
ξ ≤⎜ ⎟ (3.68)
⎝ µKv M m(1− µ) ⎠

Cela montre l’effet direct des paramètres de commande sur l’erreur de poursuite. De plus
nous pouvons voir que pour une valeur donnée de µ, par exemple 0,5, et une grande valeur de
Kv avec la prise en considération de la borne de la matrice d’inertie, la borne d’erreur tend
vers des valeurs constantes multipliées par ε . Pour diminuer la valeur de la borne d’erreur,
nous devons diminuer ε. Par conséquent, il est facile de voir que l’erreur de poursuite peut
être choisie arbitrairement petite en diminuant ε. Cela va améliorer l’action de la commande
comme nous avons vu dans (3.65). Cependant, du point de vue pratique, nous somme limité
par la grandeur de la borne d’erreur puisque une énergie de commande extrêmement grande
est presque jamais disponible.

Ce type de commande est nommé commande de saturation robuste basée sur la


linéarisation du retour d’état puisque la structure de ce dernier est basée sur la linéarisation
avec le retour d’état de la dynamique du robot.

Remarque 3.1

La loi de commande de saturation donnée par l’équation (3.40) et (3.43) est en réalité une
modification de la commande proposée par [Spong et al. 1994]. La version originale de cette
commande est donnée par :
⎧ BT Pξ
⎪⎪− ρ(ξ,t) si BT Pξ ≠0
vr =⎨ BT Pξ (3.69)

⎪⎩ 0 si BT Pξ =0

106
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Nous pouvons facilement démontrer que le système en boucle fermée décrit par
l’équation (3.41) est asymptotiquement stable. Du fait que, avec (3.69), le second membre du
côté droite de l’équation (3.48) est égal à zéro et l’équation (3.49) est toujours satisfaite.
Ainsi, quand le terme de commutation (3.69) est utilisé avec (3.40), il donne de meilleure
performance de stabilité que la commande de saturation (3.43) proposé. Cependant, dans la
pratique, la discontinuité de (3.69) cause une vibration du signal de commande, due au retard
non nul de commutation. Cela est la cause pour la quelle la commande de saturation robuste
est plus utilisée dans les applications pratiques que son ancienne version.

Il existe d’autres méthodes robustes qui ne sont pas basées sur la linéarisation avec retour
d’état de la dynamique du robot manipulateur, mais plutôt elles exploitent les propriétés
structurelles du robot et plus spécialement sa propriété de passivité. Ce sont les commandes
de saturation robuste basées sur la passivité.

III-3-2. Méthode basée sur la passivité

Une loi de commande particulière simple qui utilise la propriété de linéarité de la


dynamique par rapport aux paramètres physique inconnus du robot manipulateur est donnée
dans [Spong 1992]. La bornitude ultime uniforme (BUU) de l’erreur de poursuite est montrée,
en utilisant une commande robuste simple qui contient un compensateur non-linéaire et un
stabilisateur robuste. Contrairement à la méthode de la linéarisation avec retour d’état, le
compensateur non-linéaire utilisé ici ne cherche ni la linéarisation, ni le découplage du
système du robot, mais il essai plutôt de compenser les non-linéarités du système pour assurer
la stabilité asymptotique du système non perturbé. Ce terme comprend essentiellement la
commande de Slotine et Li étudiée dans la section II-3-2-4. Tout d’abord, nous considérons
l’équation du robot en utilisant la propriété de la paramétrisation linéaire de la dynamique du
robot vue dans la section I-4-3-7. Nous avons vu que la dynamique du robot peut être écrite
sous la forme :
Γ=Y(q,q&,q&&)θ (3.70)

avec θ est le vecteur qui contient tous les paramètres du robot, il est de dimension p
et Y (q, q&,q&&) est une matrice des fonctions du robot, elle dépende des variables articulaires,
vitesses articulaires et accélérations articulaires. Cette matrice peut être calculée pour
n’importe quel robot donné, donc elle est connue.

Comme précédemment, la conception de la commande robuste consiste à rechercher une


borne supérieure pour les paramètres incertains du système, puis utiliser cette borne, pour
concevoir une commande de saturation pour la quelle l’erreur de poursuite est au moins
ultimement bornée.

107
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Considérons que le vecteur de paramètre θ est incertain, et la borne de cette incertitude


est considérée comme :
∃θ ∈R p et ρ∈R+ tel que :
~
θ = θ −θ 0 ≤ ρ (3.71)

La loi de commande proposée contient un vecteur de commande nominal Γ0 définie par


les termes du vecteur de paramètre fixe θ 0 comme :

Γ0 = M 0 (q)q&&r +C0 (q,q&)q&r +G0 (q)− Ks

=Y(q,q&,q&&r ,q&r )θ 0 − Ks (3.72)

où q&r =q&d −Λq~ et s =q~& +Λq~ avec q~ =q−qd . K et Λ sont deux matrices diagonales définies
positives.
Notons que les dynamiques du système nominal M 0 (q), C0 (q,q&) et G0 (q) ont des
significations différentes que les estimés utilisées dans la loi de commande (3.40). Bien que
l’analyse dans les deux cas est la même, ici, nous supposons que les dynamiques du système
sont partiellement bien définies, et les estimations ne sont pas nécessaires.

Définissons la commande d’entrée Γ contenant les termes du vecteur de commande


nominal Γ0 comme :

Γ=Γ0 +Y(q,q&,q&&r ,q&r )vr =Y(q,q&,q&&r ,q&r )(θ 0 +vr )− Ks (3.73)

La bornitude ultime uniforme de l’erreur de poursuite du système en boucle fermée,


construit par (3.70) et (3.73), est donnée par le théorème suivant :

Théorème 3.4

Soit ε >0 , et choisissons le vecteur de commande vr dans (3.73) comme :


⎧ YT s
⎪− ρ si Y T s >ε
⎪ YT s
vr =⎨ (3.74)
⎪ YT s
⎪⎩ − ρ ε si Y T s ≤ε

Alors, la loi de commande Γ est continue et le système en boucle fermée est


uniformément ultimement borné.

108
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Preuve

Tout d’abord, il est claire que Γ est continu quelque soit ε >0 . Le système en boucle
fermée est décrit par l’expression suivante :
Y(q,q&,q&&)θ =Y(q,q&,q&&r ,q&r )(vr +θ 0 )− Ks (3.75)

comme nous avons q& =q~& + q&d et s =q~& +Λq~ , nous pouvons écrire :

Y(q,q&,q&&)θ =M(q)q&&+C(q,q&)q& +G(q) (3.76.a)

=M(q)(s&−Λq~& +q&&d )+C(q,q&)(s−Λq~+q&d )+G(q) (3.76.b)

=M(q)s&+C(q,q&)s +G(q)+ M(q)q&&r +C(q,q&)q&r (3.76.c)

=M(q)s&+C(q,q&)s +Y(q,q&,q&&r ,q&r )θ (3.76.d)

Alors, le système en boucle fermée (3.76), s’écrira comme :


Y(q,q&,q&&)θ =M(q)s&+C(q,q&)s +Y(q,q&,q&&r ,q&r )θ (3.77)

et aussi,
Y(q,q&,q&&)θ =Y(q,q&,q&&r ,q&r )(vr +θ 0 ) − Ks (3.78)

Donc;
~
M(q)s&+C(q,q&)s + Ks =Y(q,q&,q&&r ,q&r )(θ +vr ) (3.79)

Notons que la loi de commande (3.73)-(3.74) ne permet pas d’obtenir un système


découplé linéaire même dans le cas ou les paramètres sont connus, c’est-à-dire θˆ=θ .
Cependant, l’avantage obtenu est que la fonction ne contient pas l’accélération q&& ni l’inverse
de la matrice estimée d’inertie.
Du fait que s est une combinaison linéaire de q~ et q~& , la stabilité du point d’équilibre
(q~,q~& )=(0,0) est équivalente à la stabilité du point d’équilibre (q~,s)=(0,0) . Par conséquent, une
fonction candidate de Lyapunov est définie comme :

V(s,q~)= 1 sT M(q)s +q~T ΛT Kq~ (3.80)


2

Nous remarquons que cette fonction est déjà choisie dans la section II-3-2-4, (cf.
remarque 3.1) pour démontrer la stabilité asymptotique du système en boucle fermée avec la
commande de Slotine et Li. La dérivée temporelle de cette fonction candidate de Lyapunov
donne :

V& =sT M(q)s&+2q~T ΛT Kq~& + 1 sT M& (q)s (3.81)


2

109
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

En évaluant cette équation le long de la dynamique (3.79), et en utilisant la propriété


antisymétrique du robot manipulateur rigide (cf. section I-4-3-1), l’équation (3.81) devient :
~
V& =−q~& T Kq~& −q~T ΛT KΛq~ + sT Y(q,q&,q&&r ,q&r )(θ +vr ) (3.82)

Finalement, la dérivée peut être écrite comme :


~
V&(ξ)=−ξ T Qξ + sT Y(q,q&,q&&r ,q&r )(θ +vr ) (3.83)

avec ξ T =(q~T ,q~& T ) et Q= bloc diag (ΛT KΛ, K) .

Nous examinons maintenant le deuxième terme de V&. Pour des raisons de simplification,
nous utilisons le terme Y pour indiquer le vecteur Y(q,q&,q&&r ,q&r ) . L’utilisation de l’expression
dans vr donnée par (3.74) donne :

Si Y T s >ε , alors,

⎛ Y T s ⎞⎟
& ⎜~
V(ξ)=−ξ Qξ +(Y s) ⎜θ − ρ
T T T
⎟ (3.84)
⎜ YT s ⎟
⎝ ⎠

qui peut être bornée en utilisant (3.71) comme :


⎛ Y T s ⎞⎟
& 2 ⎜ 2
V(ξ)≤−λmin(Q) ξ +(Y s) ⎜ ρ − ρ
T T
⎟≤−λmin(Q) ξ (3.85)
⎜ YT s ⎟
⎝ ⎠

où λmin(Q) est la valeur propre minimale de la matrice Q.

Si Y T s <ε , alors,

⎛ ~ YT s ⎞
V(ξ)=−ξ Qξ +(Y s) ⎜θ − ρ
& T T T ⎟ (3.86)
⎜ ε ⎟
⎝ ⎠

ensuite,
⎛ T ⎞
& 2 ⎜ T T Y s ⎟
V(ξ) ≤ −λmin(Q) ξ + ρ⎜ (Y s) − ⎟ (3.87)
⎜ ε ⎟
⎝ ⎠
Le deuxième terme dans (3.87) atteint une valeur maximale quand Y T s =ε / 2 , qui
donne :
2 ερ
V&(ξ)≤−λmin(Q) ξ + (3.88)
4

110
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

De cela, et en utilisant les mêmes arguments comme dans le théorème 3.2, la bornitude
ultime uniforme du vecteur d’état ξ T =(q~T ,q~& T ) se déduit. Ceci complète la démonstration.

Puisque cette loi de commande utilise une commande nominale de la même structure
comme dans la commande de Slotine et Li basée sur la passivité, ils l’ont classifié avec les
commandes robustes basées sur la passivité.

En comparant cette approche avec la 1ère, décrite par l’équation (3.40), nous voyons que
~
le fait de trouver une borne constante ρ pour le vecteur constant θ est très simple que de
trouver une borne à temps variant pour η . La borne ρ dans ce cas dépend des paramètres
d’inertie du manipulateur, alors que ρ(ξ ,t) dans (3.45) dépend du vecteur d’état du
manipulateur, la trajectoire de référence, de plus, nécessite quelques suppositions sur la
matrice estimée d’inertie.

Remarque 3.2

La commande de saturation (3.73)-(3.74) est une modification de la commande de type


commutation donnée par :
⎧ YT s
⎪⎪− ρ si Y T s ≠ 0
vr =⎨ YT s (3.89)

⎪⎩ 0 si Y T s =0

Il peut être facilement montré que cette commande assure la stabilité asymptotique du
système en boucle fermée. La nature de discontinuité de cette commande la rond difficilement
applicable dans la pratique, due au phénomène de vibration qui sont provoqués à cause du
retard non nul de commutation. Pour cela, le schéma de la commande de saturation robuste
proposé est une amélioration de la loi de commande originale, donnée par (3.69), même si
l’aspect de la stabilité asymptomatique est perdu, elle est plus convenable du point de vue
pratique.
Remarque 3.3

Diverses améliorations sont possibles pour l’approche ci-dessus. Par le remplacement de


la commande de type saturation continue par un terme de non saturation donnée par :
YT s
vr =−ρ où λ1, λ2 >0 (3.90)
Y T s +λ1 exp(−λ2t)

Pas seulement la vibration causé par la commande (3.89) est éliminée par cette
commande (3.90), mais aussi, la stabilité asymptotique globale de l’erreur de poursuite peut
être montré en suivant les mêmes étapes comme dans le théorème 3.4.

111
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Remarque 3.4

Dans la relation (3.71), l’incertitude est mesurée par un seul nombre. Cela peut conduire à
utiliser des gains supérieurs que les nécessaires. Pour cette raison, il peut être intéressant
d’attribuer de différents gains au compensateur vr. Cela est fait dans [Spong 1992], où il a été
~
supposé que la mesure de l’incertitude pour chaque paramètre θ i séparément est possible et
qu’elle est donnée par :
~
θ i ≤ ρi , i =1,...p (3.91)

Soit ζ i , la ième composante du vecteur YsT , puis choisissons une constante


positive ε i , i=1,…p et définissons la ième composante du terme saturation vr comme :

⎧ ζi
⎪− ρi si ζ i > ε i
⎪ ζi
vr =⎨ (3.92)
⎪ ζi
i

⎪⎩− ρi ε si ζ i ≤ ε i

Ensuite, il est facile de montrer par l’utilisation des mêmes arguments comme ci-dessus
la bornitude ultime uniforme de l’erreur.

Remarque 3.5

Les commandes basées sur la passivité citées ci-dessus par les équations (3.74) et (3.90)
ont été expérimentalement mises en application pour le problème de poursuite de trajectoire
pour un robot manipulateur d'entraînement direct de 2.ddl dans [Jaritz et al. 1996]. Les
auteurs ont montré que ces commandes fournissent un procédé de conception simple,
particulièrement pour la borne nécessaire sur l'incertitude, et elles ont la meilleure
performance de poursuite par rapport aux deux autres commandes de type saturation robuste
proposées par [Liu et al. 1993] et [Zeneih et al. 1994].

Remarque 3.6

La supposition fondamentale considérée pour l’application de cette méthode est que la


borne supérieure des paramètres incertains doit être connue en priorité. Qui est une étude
difficile dans la majorité des cas. Pour faire face à cette condition une procédure pour estimer
cette borne supérieure d’incertitude a simplifié la procédure désignée. De cela, [Koo et al.
1994] ont introduit une loi d’estimation simple avec une zone morte pour la borne supérieure
du paramètre incertain comme suit :
⎧⎪α Y T s si Y T s >ε
ρˆ (t)=⎨ (3.93)
⎪⎩ 0 si Y T s ≤ε

112
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

et :
⎧ YTs
⎪⎪ − ρ
ˆ ( t ) si Y T s >ε
vr =⎨ YTs (3.94)
⎪ − ρˆ (t) Y s
T
si Y T s ≤ε
⎪⎩ ε

avec α une constante positive du gain d’adaptation. Dans ce schéma l’entrée additionnelle de
la commande (3.69) est mise à jour comme une fonction de l’estimation de la borne
supérieure d’incertitude, tel que la BUU est garantie. La preuve que cette loi de commande
modifiée assure la BUU de l’erreur de poursuite est similaire de celle de [Spong 1992],
discutée dans le théorème 3.4, et elle se trouve aussi dans [Koo et al. 1994]. Ce schéma de
commande est simple à concevoir que le premier, parce que le pré-calcul de la borne
supérieure du paramètre incertain ρ n’est pas nécessaire. De plus, le temps nécessaire pour
l’estimation de cette borne est moins que le temps nécessaire lorsque nous utilisons des lois
d’adaptation.

III-4. LA COMMANDE A STRUCTURE VARIABLE AVEC L’APPROCHE MODE

DE GLISSEMENT

Une autre approche à la commande robuste des systèmes non-linéaires incertains est la
méthodologie de la commande à structure variable (CSV) avec le mode de glissement. Cette
approche est basée sur la théorie du système à structure variable (SSV). Plusieurs auteurs
depuis la fin des années 60 ont développé des algorithmes de la commande à structure
variables en se basant sur les résultats obtenus par [Filippov 1960] sur les équations
différentielles discontinues. L'application de cette approche à la commande des robots
manipulateurs est l’original de plusieurs recherches [Utkin 1977, Young 1978, Slotine 1985].
L'idée fondamentale de la CSV est que nous devons seulement conduire le signal d'erreur à
une "surface de commutation", après cela, le système est "en mode de glissement" et il ne sera
plus affecté par aucune incertitude de modélisation et/ou perturbations [Slotine 1985].

Les professionnels de la technologie n’ont pas accord une grande importance à la CSV
avant les années 70, cela est probablement dû au manque d'un procédé de conception et à
l'existence d’une vibration appréciable dans les systèmes de la CSV. Dans les années 70, Une
élévation d'intérêt aux CSV s'est produite parce que la robustesse et l'invariance des CSV ont
été graduellement identifiées. Des contributions importantes ont été apportées à des systèmes
de CSV ayant des modèles linéaires. Cependant, pour les systèmes multi-entrées, il y a des
problèmes persistants. Ils incluent la caractérisation des schémas de commutation possibles, la
simplification du procédé de conception, la commande de la performance du mode d'atteinte,

113
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

la réduction de la vibration, et d'autres. L'approche CSV a été également employée dans la


commande de plusieurs processus non-linéaires [DeCarlo et al.1988].

Avant de traiter les méthodes de conception des CSV pour les robots manipulateurs, des
définitions importantes doivent être citées pour faciliter la lecture et la compréhension de cette
approche.

Définition 3.1

La structure d'un système CSV est régie par le signe d'une fonction vecteur-évalué s(x),
qui est définie pour être la fonction de commutation. Une fonction de commutation est
généralement supposée linéaire de dimension m, c.-à-d. :

s(x) = C x (3.95)

où:

et C =(c1T T)
T
s(x)=(s1 (x) s2(x) ... sm(x))T c2T .....cm (3.96)

Chaque fonction de commutation scalaire si(x) décrit une surface linéaire si(x)=0, qui est
définie pour être une surface de commutation.

Définition 3.2

Si pour n'importe quel x0 dans S, nous avons x(t) dans S pour tout t>t0, alors le système
est dans le mouvement glissant ou en mode de glissement.

Définition 3.3

Si tout point dans S est un point final, c'est-à-dire que pour chaque point dans S il y’a des
trajectoires qui les atteignent des deux côtés de S, alors la surface de commutation S s'appelle
une surface de glissement.

Définition 3.4

L'état se déplacera vers et atteint la surface de glissement sous une condition appelée la
condition d'atteinte (reaching condition).

Le problème de la CSV peut être formulé comme suit; considérons le système non-
linéaire :
x& = f (x,t)+ h(x,t)u (3.97)
avec : x∈R n et u∈R m

1. Concevoir m fonctions de commutation, s(x), et

2. Concevoir une commande à structure variable u(x,t)

114
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

⎧⎪u +(x,t) pour s(x)>0 (3.98.a)


u(t)=⎨
⎪⎩u −(x,t) pour s(x)<0 (3.98.b)

telle que la surface de commutation s(x)=0 est atteinte en un temps fini.

La signification physique des deux points ci-dessus est; d'abord, nous devons concevoir
une surface de commutation s(x)=0 pour représenter une dynamique du système désirée, qui
est d'ordre inférieur que le modèle donné. En second lieu, concevoir une loi de commande à
structure variable u(x,t) tels que ce qui est en dehors de la surface de commutation est conduit
pour atteindre la surface dans un temps fini. Dans la surface de commutation, le mode de
glissement a lieu, suivant la dynamique désirée. De cette façon, le système global est
globalement asymptotiquement stable [Hung et al.1993, Gao et al.1993].

De ce fait la conception de la loi de commande u(x,t) est nécessaire pour satisfaire une
condition d'atteinte prédéfinie qui garantit de son tour l'existence du mode de glissement dans
la surface de commutation [Gao et al.1993]. Ainsi, le choix de la condition d'atteinte est
également une étape de conception importante des systèmes de CSV. Des méthodes sur la
conception des surfaces de commutation, des conditions d’atteinte et la loi de commande se
trouvent détaillé dans [Hung et al. 1993].

Cependant, la performance ci-dessus est obtenue par un effet extrêmement élevé


d’activité de commande. De plus, une des suppositions fondamentales dans la conception des
systèmes CSV est que la commande peut être commutée d'une valeur à une autre d’une façon
infiniment rapide. Dans les applications pratiques, il est impossible de commuter à un taux
infini. En conséquence, la vibration se produit en mode de glissement dans l'état permanent,
comme des oscillations à haute fréquence autour du point d'équilibre désiré du système, et elle
peut servir comme une source pour exciter la dynamique non modélisée du système à haute
fréquence.

Plusieurs approches ont traité le phénomène de la vibration qui est fortement indésirable
du point de vue pratique. Ces approches, sont classifiées dans la littérature en deux catégories.
La première, connu comme la méthode de continuation, consiste à utiliser une approximation
continue de la loi de commande, où le déclencheur du type relais est remplacé par un
dispositif à haut gain avec saturation. Bien que, cette méthode élimine ou réduise au moins la
vibration à haute fréquence, il est montré qu'elle détruit le mode de glissement en perdant la
propriété de stabilité asymptotique du système en boucle fermée [Abdellah et al. 1991].

Une deuxième approche traite directement le processus d'atteinte. Puisque la vibration est
provoquée par l'atteinte non-idéale à la fin de la phase d'atteinte. Cette approche utilise une loi
d'atteinte pour établir les caractéristiques du mode d'atteinte, elle est donc appelée par la

115
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

méthode de la loi d'atteinte. Une caractéristique importante de cette méthode est la facilité
d'obtenir de la loi de commande CSV [Gao et al.1993].

Dans cette section, nous discuterons de la littérature quelques approches de la commande


à structure variables, qui ont été largement utilisées dans la commande des processus non
linéaires, et nous verrons comment cette technique est appliquée aux systèmes robots.

La première application de cette théorie à la commande du robot peut être trouvée dans
[Young 1978], où le problème de régulation a été résolu en utilisant la commande :
⎧Γ + si si (q~i ,q&i )>0
Γi =⎨ i − ~ , pour i=1,…,n (3.99)
⎩ Γi si si (qi , q&i )<0

où si est le plan de commutation défini par :


si (q~i ,q&i )=λi q~i + q&i , avec λi > 0 (3.100)

Il est alors donné des bornes sur les incertitudes dans le modèle du manipulateur, celui-là
+
peut prendre Γ − et Γ afin de conduire le signal d'erreur à l'intersection des surfaces de
glissement, après la quelle, l’erreur se glisse à zéro. Cette commande élimine le couplage non-
linéaire des articulations en forçant le système vers le mode de glissement. A partir de ce
schéma de commande, d’autres CSV ont été conçus.

Il y a deux points principaux à critiquer de ces commandes quand elles sont appliquées
aux robots manipulateurs. Le premier est par l’ignorance de la physique du robot, les
performances de cette commande ne sont pas meilleures (si elles ne sont pas mauvaises) que
celles des commandes qui exploitent la structure de l'équation de Lagrange-Euler (telle que
les commandes de saturation présentés dans la section III-3). Le deuxième est relatif au
problème de vibration, qui est généralement lié aux systèmes de commande à structure
variables, qui est fortement indésirable dans plusieurs applications pratiques.

Une réponse à la première issue est que malgré que les applications initiales de la CSV
n’aient pas pris en considération la physique des robots manipulateurs, les conceptions de
[Slotine 1985, Chen et al.1990] ont remédié ce problème, c’est ce que nous allons voir dans la
section suivante. Le deuxième problème sera discuté le long des méthodes de conception
présentées dans cette section.

III-4-1. La commande de Slotine

Dans cette technique, [Slotine 1985] a présenté une modification de la commande


originale SV. Pour résoudre le problème de poursuite pour des robots manipulateurs décrits
par l'équation (3.40). Une erreur dépendante du terme de commutation est ajoutée à une
commande non-linéaire qui utilise les valeurs estimées de la dynamique du robot. La stabilité

116
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

asymptotique du système en boucle fermée est garantie sous certaines conditions sur les gains.
La structure de la commande non-linéaire est fondamentalement celle proposée en [Slotine
et Li 1987] et discutée précédemment (cf. section III-3-2). La commande proposée est définie
comme :
Γ= Mˆ q&&r +Cˆ q&r +Gˆ − Ksign(s) (3.101)

avec :
q&r =q&d −Λq~, Λ = diag(λ1 ,.....λn ) (3.102)

s =q& −q&r =q~& + Λq~ (3.103)

et :

K =diag(ki), ki >0 (3.104)


où Mˆ , Cˆ , et Gˆ sont les estimés constantes des matrices M(q), C(q,q&) et G(q) respectivement de
la dynamique du robot. La variable s de l'équation (3.103) est une combinaison linéaire des
éléments d'erreur de poursuite, et elle définit une surface de commutation. Le terme sign(s)
représente la fonction signe de la variable s, il est donnée par:

sign (s) = (sign (s1),…, sing (sn)) (3.105.a)

et :
⎧ 1 si si > 0
sign(si ) =⎨ (3.105.b)
⎩ −1 si si < 0

L'application de cette loi de commande sur la dynamique du robot décrite dans (3.40)
donne la dynamique du système en boucle fermée suivante:

M(q)q&&+C(q,q&)q& +G(q)= Mˆ q&&r +Cˆ q&r +Gˆ − Ksign(s) (3.106)

Ensuite, et après quelques manipulations, nous obtenons:


~ ~ ~
M(q)s&+C(q,q&)s =−M(q)q&&r −C (q,q&)q&r −G(q)− Ksign(s) (3.107)
~ ~ ~
où M(q)= M(q)− Mˆ , C(q,q&)=C(q,q&)−Cˆ , et G(q)=G(q)−Gˆ sont les erreurs d'estimation de la
dynamique du système. Elles sont considérées comme les incertitudes du système. A ce stade,
il est nécessaire de vérifier que la loi de commande proposée assure la stabilité asymptotique
du système en boucle fermée. Ceci est assuré comme nous avons vu ci-dessus en satisfaisant
une condition d’atteinte prédéfinie. Considérons le théorème suivant :

117
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Théorème 3.5

Considérons la commande (3.101), alors l’erreur atteint la surface s=0 dans un temps fini.
De plus, dans la surface, q(t) converge exponentiellement à qd (t) .

Preuve

Choisissons la fonction candidate de Lyapunov suivante:

V(s)= 1 sT M(q)s (3.108)


2

La dérivée temporelle de cette fonction est :

V&(s)= sT M(q)s&+ 1 sT M& (q)s (3.109)


2

L'évaluation de cette fonction le long de la trajectoire du signal d'erreur donne :

( ~ ~ ~
)
V&(s)= sT −C(q,q&)s −M(q)q&&r −C (q,q&)q&r −G(q)− Ksign(s) + 1 sT M& (q)s
2
(3.110)

En utilisant la propriété antisymétrique de M& (q )−2C(q,q& ) nous obtenons:

( ~ ~ ~
)
n
V&(s)= sT − M(q)q&&r −C (q,q&)q&r −G(q) −∑ki si (3.111)
i =1

Alors, un choix du gain ki peut assurer la négativité de la dérivée de la fonction


candidate de Lyapunov. Un simple choix de ce gain de commande peut être pris comme:

(
~ ~ ~
)
ki ≥ M(q)q&&r +C (q,q&)q&r +G(q) i + ηi , (ηi > 0) (3.112)

Par conséquent,
n
V&(s)≤−∑ηi si (3.113)
i =1

Ce qui implique que la surface s=0 est atteinte dans un temps fini. De plus, selon
l'équation (3.103), une fois que somme en mode de glissement, l'erreur de poursuite de
position q~ converge exponentiellement vers zéro.

Remarque 3.7

La négativité de la dérivée temporelle de la fonction de Lyapunov donnée par l'équation


(3.109) est la condition d'atteinte nécessaire que la loi de commande doive la satisfaire. La
définition de la loi d'atteinte dans ce cas est connue comme l’approche de la fonction de
Lyapunov. Plusieurs approches pour définir la condition d’atteinte existent et qui ne sont pas
considérées ici.

118
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Plus récemment, dans [Chen et al. 1990], une autre commande a été donnée. Cette
dernière exploite la dynamique du robot et considère les bornes qui dépendent de l'incertitude
de chaque élément de la matrice d’inertie M(q) et de C(q,q& ) . Fondamentalement, la commande
a la même forme que la commande proposée par [Slotine 1985]. Depuis lors, plusieurs
et différentes approches de CSV pour des robots ont été développés suivant la croissance
d'intérêt envers la théorie de SSV.

Malgré que ces algorithmes exploitent la dynamique du robot, ils sont affectés par le
phénomène de vibration qui est généralement produit dans les systèmes de commande à
structure variables à cause de la présence des termes discontinus dans la loi de commande.

La vibration est généralement fortement indésirable dans la pratique, puisqu'elle implique


une activité de commande extrêmement élevée, encore plus, elle peut exciter la dynamique à
haute fréquence négligée au cours de la modélisation.

Pour remédier ce problème, [Slotine 1985] a modifié le CSV original en utilisant la


commande nommée ‘’commande de succion’’. Dans cette approche, la surface de glissement
S est à temps variant et l’application de cette commande consiste à; d'abord, la commande
force et conduit la trajectoire d'erreur vers la surface de glissement tandis que dans la seconde,
la commande est lissée à l'intérieur d'un domaine de limites à temps-variant. Ceci achèvera un
compromis optimal entre la largeur de bande de la commande et la précision de poursuite,
donc l'élimination de la vibration et de la sensibilité de la commande de la dynamique non
modélisée aux hautes fréquences.

Avec cette modification, l'objectif de la commande est d'assurer que n'importe quelle
trajectoire, commençant en dehors de ce domaine, convergera vers lui et glisse à l'intérieur de
ce domaine. Le domaine de limites est défini par :
S(t) = {X : / S(x) ≤Φ} , Φ>0 (3.114)

où Φ est l'épaisseur du domaine de limites qui a la largeur ε . Une représentation du domaine


de limites pour un système du second ordre est illustrée dans la figure ci-dessous.

Dans notre cas, cette approche du domaine de limite est utilisée en remplaçant la fonction
signe, sign, dans la loi de commande (3.101) par la fonction de saturation de haut gain
sat(s /ε ) avec ε > 0 , avec:

⎧sign(s) si s > Φ

sat(s /ε) = ⎨ (3.115)
⎪⎩ s /ε si s ≤ Φ

119
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

x&
S=0 +
S

S−
Ф

Figure III.2. Domaine de limites

Il est clair que lorsque la largeur de ce domaine de limites deviendra petite, l'action de la
commande aura approximativement la même performance que la commande de commutation.
(voir la figure III.2).

Une méthode alternative est d’utiliser un terme continûment différentiable qui constitue
une bonne approximation de sign(s) pour s grand, qui est la fonction tangente hyperbolique,
tanh(gs), avec g; un paramètre de gain qui ajuste la pente de cette fonction autour de l'origine,
(voir la figure III.3).

En utilisant ces deux approximations, et par un ajustement correct de ε et g, nous pouvons


obtenir une performance semblable à celle de la commande de sign(s), (3.101), sans
comportement vibratoire mais en utilisant des gains plus élevés. De plus, si nous suivons les
mêmes arguments comme dans le théorème 3.2, nous pourrons facilement prouver que le
système en boucle fermée quand ces méthodes sont utilisées, est uniformément ultimement
borné. Ainsi, la décroissance asymptotique de l'erreur de poursuite est perdue.

De la commande ci-dessus, nous pouvons voir que le compensateur non-linéaire ne


cherche pas à linéariser le système du robot mais il utilise les estimés du modèle dynamique
du robot pour compenser les non-linéarités présentes dans le système. De plus, les
incertitudes du système sont utilisées pour déterminer des bornes inférieures de l'équation de
matrice des gains. Ce choix n'utilise pas les bornes prédéfinies des incertitudes du système
dans la désignation de K. Une commande à structure variable qui est basé sur la linéarisation
du retour d’état du modèle dynamique du robot, et qui prend en compte la borne d'incertitude,
se trouve dans le travail fait par [Zhihong et al. 1994], et discutée dans la sous-section
suivante :

120
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

sat(s/ε) tanh(gs)
1 1

-1 -1

Figure III.3.a. Fonction de saturation figureIII.3.b. Fonction tangente hyperbolique

III-4-2. Commande à structure variable basée sur la linéarisation du retour d’état

Dans cette partie, nous présentons un schéma de commande robuste utilisant un


compensateur à structure variable dans le système en boucle fermée du robot manipulateur
rigide, où ; le manipulateur est traité en tant qu’un système partiellement connu. La
dynamique connue est séparée et utilisée pour effectuer une linéarisation du système non-
linéaire. Ensuite, une commande du retour d’état nominal basée sur la théorie de la stabilité
garantie du système incertain est conçue pour assurer que le système nominal poursuit
asymptotiquement le signal de référence désiré et un compensateur à structure variable est
conçu. Une borne supérieure sur les incertitudes du système est utilisée dans le compensateur
de commutation pour éliminer les effets de la partie inconnue du modèle. Ce schéma est
conçu pour garantir la convergence asymptotique de l'erreur de poursuite vers zéro avec une
réponse transitoire prescrite, ce dernier est robuste par rapport aux grandes incertitudes du
système. Cela n'est pas dû seulement à l'utilisation de borne d’incertitudes du système dans le
terme de la commande à structure variable, mais également, au fait qu’en mode de glissement,
le système en boucle fermée est sensible aux incertitudes et aux perturbations externes.

Considérerons l'équation du modèle dynamique du robot:


M(q)q&&+C(q,q&)q& +G(q) =Γ (3.116)

si nous considérons que la dynamique du système n'est pas exactement connue, alors il y a
quelques termes connus et le reste des termes est inconnu, donc, nous pouvons écrire :
~
M(q)=M 0 (q)+ M(q) (3.117.a)
~
C(q,q&)=C0 (q,q&)+C(q,q&) (3.117.b)
~
G(q)=G0 (q)+G(q) (3.117.c)

121
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

où C0 (q,q&), M 0 (q) et G0 (q) sont les termes connus de la dynamique correspondante,


~ ~ ~
et C(q,q&), M(q) et G(q) sont les termes inconnus. En utilisant l'équation (3.117), la dynamique
du système (3.116) peut être réécrite comme:
M 0 (q)q&&+C0 (q,q&)q& +G0 (q) =Γ+ ρ(t) (3.118)

où :
~ ~ ~
ρ(t)=−(M(q)q&&+C(q,q&)q& +G(q)) (3.119)

Alors, le système nominal est décrit par :


M 0 (q)q&&+C0 (q,q&)q& +G0 (q) = Γ0 (3.120)

De plus, il est supposé que M 0 (q) est une matrice non singulière pour toute q(t), le
système nominal est stabilisable et les incertitudes du système ρ(t ) sont bornées par une
fonction positive comme:
ρ (t) < b0 + b1 q(t) + b2 q&(t) ² (3.121)

où les nombres positifs b0, b1 et b2 sont supposés connus. Pour les problèmes pratiques de
commande, ces paramètres de borne doivent être estimés pour chaque robot manipulateur.

Alors, le procédé de conception est appliqué en deux étapes ; d'abord, une commande de
retour d’état nominal est conçue pour que le système nominal suive asymptotiquement la
trajectoire de référence désirée. Puis, un CSV est conçu pour traiter les effets des incertitudes
du système de sorte que le signal de l'erreur de poursuite du système en boucle fermée avec de
grandes incertitudes converge asymptotiquement vers zéro.
Si nous voulons que le système poursuive une trajectoire désirée qd (t) , nous pouvons
globalement linéariser le système nominal (3.120) et avoir l'équation différentielle qui régie la
dynamique de l’erreur de poursuite de sortie écrite comme:
ξ&= Aξ + B u (3.122)
u = M 0 (q)−1(Γ0 −C0 (q,q&)q& +G0 (q))−q&&d (3.123)

avec ξ est le vecteur de l'erreur de poursuite, les matrices A et B sont définies comme dans
(3.16). En utilisant la technique de linéarisation avec retour d’état, donnée par (3.6), avec une
commande linéaire avec retour d'état, nous choisissons la loi de commande nominale comme:
Γ0 = M 0 (q)(q&&d − Kξ)+C0 (q,q&)q& +G0 (q) (3.124)

où la matrice du gain K est choisie de façon que la matrice A c = A− BK est asymptotiquement


stable, qui est possible en raisonnant par les suppositions citées ci-dessus. Puisque le système

122
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

nominal est globalement linéarisé, la plupart des schémas de commande linéaires, tels que le
placement de pôles et la commande optimale, peuvent être appliqués à la conception du gain
K du retour d’état.

Après, nous mettons la commande Γ sous la forme:


Γ = M 0 (q)(q&&d − Kξ ) + C0 (q, q& )q& + G0 (q) + vr (t ) = u0 (t ) + vr (t ) (3.125)

où u0(t) est conçu pour le système nominal de l’équation (3.124), vr (t) est le compensateur
utilisé pour traiter les effets des incertitudes du système.
En utilisant la dynamique du système incertain (3.125), et l'expression de Γ0 , la
dynamique d'erreur sera régie par:
ξ&= Acξ + BM 0 (q)−1(vr (t)+ ρ(t)) (3.126)

Afin de concevoir une commande à structure variable avec mode de glissement, la


première étape à faire est de définir une surface de commutation dans l'espace d'erreur, puis
concevoir la loi de commande (3.118) tels que cette surface soit attractive.

Considérons la surface de commutation comme:


s=Cξ (3.127)

( )
où : C= C1 C2 , et C1 et C2 sont des matrices non singulières, et :

Rel (λ(−C2−1 C1 )) < 0 (3.128)

La définition de s dans (3.127) est la définition générale de la surface de commutation.


Avec un choix simple des éléments de C, cette surface de commutation peut être équivalente à
celle considérée dans la commande de Slotine. Le théorème suivant présente la stabilité
asymptotique du système en boucle fermée.

Théorème 3.6
L'erreur de poursuite de sortie ξ ( t ) pour le modèle dynamique du robot manipulateur
avec des incertitudes du système, converge asymptotiquement à zéro, si la commande
d’entrée est donnée par (3.124)-(3.125) avec vr (t) donnée par:
−1 T
⎧ (s C2 M 0 (q) )
T
⎪⎪ w s ≠0
vr = ⎨ sT C2 M 0 (q)−1 ² (3.129)

⎪⎩ s =0
0

123
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

avec :

(
w= − sT CAcξ − s C2 M 0 (q)−1 b0 +b1 q +b2 q& ² ) (3.130)

Preuve

Définissons la fonction candidate de Lyapunov comme:

V(s)= 1 sT s (3.131)
2

La dérivée par rapport au temps de cette fonction est:


V&(s)= sT s& (3.132)

(
V&(s)= sT CA cξ +CBM 0 (q)−1(vr + ρ) ) (3.133)

En utilisant l'expression (3.129), nous obtenons:


V&(s)= sT CA cξ + sT CBM 0 (q)−1ρ(t)+ w (3.134)

alors, l’utilisation de (3.130), donne:

( )
V&(s) ≤ − s C2 M 0 (q)−1 b0 +b1 q +b2 q& ² + sT CBM 0 (q)−1ρ(t) (3.135)

qui est négatif, pour s ≠ 0 en utilisant les bornes sur ρ ( t ) dans (3.121).

La négativité de la dérivée temporelle de la fonction candidate de Lyapunov (3.125), est


la condition d'atteinte pour la quelle l’état atteint la surface de glissement ou s =Cξ =0 .

Dans le mode de glissement ; la dynamique de l'erreur en boucle fermée est décrite par:
q~& =−C −1C q~ 2 1 (3.136)

Par conséquent, si la condition (3.128) est satisfaite, l'erreur de poursuite converge


asymptotiquement à zéro.

Remarque 3.8

Contrairement à la plupart des schémas de commande à structure variable, l'introduction


du terme à structure variable vr (t) de la relation (3.129) dans le système de commande
éliminera non seulement les effets des incertitudes du système mais elle garantira également
la convergence asymptotique de l’erreur de poursuite vers zéro. D'autre part, le taux de
convergence du signal d’erreur peut être arbitrairement diminué par un choix approprié de la
matrice C en mode de glissement.

124
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Remarque 3.9

Du fait que le compensateur à structure variable (3.129) est discontinu, il cause la


vibration qui est indésirable. Pour éliminer la vibration et réduire le signal d’entrée de
commande, un compensateur du domaine de limites peut être utilisé à la place du CSV
original comme :

( )
⎧ sT C M (q)−1 T
⎪ 2 0
⎪ w sT C2 M 0 (q)−1 ≥ ε
2
⎪ −1
v r' =⎨ s C2 M 0 (q)
T
(3.137)

(⎪ 2 0 )
⎪ sT C M (q)−1 T
sT C2 M 0 (q)−1 < ε
⎩ w
ε²
où ε >0

Cette commande de domaine de limites offre une loi de commande continue et garantit
l'attraction au domaine de limites et la bornitude ultime de l'erreur de poursuite à n'importe
quel voisinage de l'origine. Cette commande de saturation pourrait être classifiée parmi les
commandes de saturation robustes discutées dans la section III-3. Ceci a été évité pour des
raisons explicatives.

De ceci, nous voyons que le terme de commande de type commutation assure la stabilité
asymptotique du système en boucle fermée en présence des incertitudes du système.
Malheureusement, ceci est accompli à un effet élevé d'activité de commande qui cause la
vibration. Des solutions à ce problème ont été fournies. Notamment, il est montré qu'en
utilisant le terme de commutation continue dans le système de commande, élimine (réduit) la
vibration.

Du fait que, la vibration est provoquée par la phase d’atteinte non-idéal, une autre
approche proposée par [Gao et al. 1993] décrit une technique récente qui traite directement le
processus d'atteinte (reaching). Cette approche emploie la méthode de la loi d'atteinte pour
établir les caractéristiques du mode d'atteinte au moins pour éliminer ou réduire l'effet de
vibration.

III-4-3. Conception du mode d’atteinte (reaching mode)

Cette récente technique est utilisée pour spécifier la méthode de la loi d'atteinte présentée
dans [Gao et al. 1993]. Cette loi d'atteinte est une équation différentielle qui spécifie la
dynamique de la fonction de commutation s(x). L’intéressant de cette méthode, est que
l'équation différentielle d'une s(x) asymptotiquement stable est elle-même une condition
d'atteinte (ainsi, la loi de commande qui assure la stabilité asymptotique de la loi d'atteinte

125
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

considérée, assurera la stabilité du système en boucle fermée). De plus, par le choix des
paramètres dans l'équation différentielle, la qualité dynamique du mode d'atteinte peut être
commandée. La forme générale de cette loi est donnée par:
s&=−Q sign(s)−h(s) (3.138)

où : pour i=1,…m (m est la dimension du vecteur d'entrée)


Q=diag(qi ), qi > 0 (3.139.a)

K =diag(ki ), ki > 0 (3.139.b)

h(s)=(h1(s1) … hm(sm))T, sihi (si)>0 et hi (0) = 0 (3.139.c)

Puisque l'équation différentielle d'une s(x) asymptotiquement stable est elle-même une
condition d'atteinte, l'équation ci-dessus devrait être considérée pour concevoir la loi de
commande.

Afin d'illustrer l'efficacité de cette méthode lorsqu'elle est appliquée au robot


manipulateur à n ddl dont la dynamique est décrite par:
M(q)q&&+C(q,q&)q& +G(q)=Γ+η (q,q&,t) (3.140)

où η (q , q& , t ) est la somme de toutes les perturbations.

Notons que dans la section précédente de ce chapitre, nous avons seulement considéré les
incertitudes possibles du système comme perturbations. En effet, η (q , q& , t ) peut être
considéré en tant que les incertitudes possibles du système.

Définissons le vecteur de la fonction de commutation de dimension n:


⎛ q~ ⎞
s(ξ) = Cξ = (Λ I n ) ⎜ ⎟ = q~& + Λ q~ (3.141)
⎜ ~& ⎟
⎝q ⎠

Si nous adoptons la loi d'atteinte :


s&=−Q sign(s)− Ks (3.142)

La dérivée temporelle de (3.141) donne :


s& (ξ) =Cξ&=Λq~& + q~
&& (3.143)

En utilisant la dynamique du système (3.140), et en substituant la relation q~


&& =q&&−q&& dans
d
(3.143), nous pouvons écrire :
s& (ξ) =Λq~& + M(q)−1(−C(q,q&)q& −G(q)+η(q,q&,t)+Γ )−q&&d (3.144)

126
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Égalisant (3.142) avec (3.144), et en résolvant pour la loi de commande Γ , nous


obtenons :
( )
Γ= M(q) −Qsign(s)− Ks −Λq~& +q&&d +C(q,q&)q& +G(q)−η(q,q&,t) (3.145)

Le seul paramètre inconnu de cette loi de commande est la fonction de perturbation, η .


Pour faire face à ce problème, nous remplaçons le terme inconnu par une quantité
conservatrice ηc , qui est choisie pour garantir la condition d'atteinte. Alors la loi de
commande sera:
( )
Γ= M(q) −Qsign(s)− Ks −Λq~& + q&&d +C(q,q&)q& +G(q)−ηc (3.146)

Cette dernière équation définit la dynamique de la boucle fermée comme:


s&=−Qsign(s)− Ks − M(q)−1(η(q,q&,t)−ηc ) (3.147)

Alors, le vecteur ηc sera choisi de sorte qu'il domine le vecteur inconnu η pour assurer la
condition d'atteinte. Une fois que ceci est fait, le choix simple des matrices Q et K qui rend
(3.147) asymptotiquement stable satisfera la condition d'atteinte s&=−Q sign(s)− Ks, et la
stabilité asymptotique de l'erreur de poursuite est garantie.

Remarque 3.10
Si nous n’avons pas le terme conservatif de la fonction de perturbation, ηc , η sera bornée
du coté supérieure et inférieure comme suit:
ηL <η <ηU (3.148)

où les bornes sont connues, ensuite et selon l'équation (3.147), le choix de ηc sera fait selon la
logique suivante :
quand si>0, alors nous somme besoin que ηi >ηc , donc nous posons ηc = ηL.
i i

quand si<0, alors nous somme besoin que ηi <ηc , donc nous posons ηc = ηU .
i i

Ensuite, si nous choisissons:


η −η η +η
η ' = U L ,η" = U L et F ' =diag (η1',....,ηn' ) (3.149)
2 2
alors, l’expression de ηc peut être écrite comme :
ηc =η '' − F 'sign(s) (3.150)

et l'expression finale de loi de commande qui devrait être appliquée est :


( )
Γ= M(q) −Qsign(s)− Ks −Λq~& +q&&d +C(q,q&)q& +G(q)−(η" − F ' sgn(s)) (3.151)

127
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Remarque 3.11

Une importante caractéristique de cette méthode de loi d'atteinte peut être vue de la
facilité du réglage des paramètres de la loi d'atteinte donnés dans (3.142). La vibration peut
être réduite par des paramètres de réglage qi et ki dans la loi d'atteinte :
s&i =−qi sign(si )−ki si , pour i =1,....,m (3.152)

Prés de la surface de commutation, si ≈0, donc s&i ≈ qi . En choisissant de petit gain qi, la

vitesse du mouvement sera réduite pour que la trajectoire du système approche de la surface
de commutation. En conséquence, l'amplitude de la vibration sera réduite. Cependant, qi ne
peut pas être choisi égal à zéro, parce que le temps d'atteinte deviendrait infini, et le système
n'est pas un système de commande en mode de glissement. Une grande valeur de ki augmente
le taux d'atteinte quand l'état n'est pas prés de la surface de commutation.

III-5. APPLICATION AU ROBOT MANIPULATEUR PUMA 560

III-5-1. Introduction

Afin de valider l’étude théorique que nous avons présenté dans ce chapitre, plusieurs
simulations vont être effectuées dans cette section où nous allons classifier les différentes lois
de commande robustes selon leurs performances.

III-5-2. Modèle et trajectoire utilisés

Le robot manipulateur rigide utilisé dans la simulation est le Puma 560 (6 degrés de
liberté) présenté dans la section I-4-4.

La trajectoire utilisée dans la simulation est une interpolation polynomiale de degré cinq
d’où la position est de la forme suivante :

qd (t)=qi +(10( t )3 −15( t )4 +6( t )5)D (3.153)


tf tf tf

où :
D = q f − qi (3.154)

avec :
qi , q f et t f sont respectivement la position initiale, la position finale et le temps final.

avec :
qi =(0 0 0 0 0 0) T (3.155)

q f = (1.5 1.6 1.7 1.8 1.9 2.0)


T
(3.156)

128
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Le vecteur d’état utilisé dans les simulations est :

[ ]
T
x = q1 q2 q3 q4 q5 q6 q&1 q&2 q&3 q&4 q&5 q&6 (3.157)

III-5-3. Algorithme et simulation

III-5-3-1. L’Approche Multivariable Linéaire Robuste


Les suppositions :
1 ≤ M(q)−1 ≤ 1 , Mm ≠ 0 (3.158)
MM Mm

E ≤α <1 (3.159)

δ ≤ β0 + β1 ξ + β 2 ξ ² (3.160)

q&&d ≤ A M (3.161)

q% (0) = q&% (0) = 0 (3.162)

La commande est définie par :


Γ = Mˆ ( q&&d + u ) + Nˆ (3.163)
où :
Mˆ >M M I n (3.164)
⎛ q~ ⎞
u(t)=−K pξ − Kv ξ et ξ =⎜ ⎟
& (3.165)
⎜ ~& ⎟
⎝q ⎠
Kv =2µI n et K p =4µI n (3.166)

µ > 1 + 1 ⎛⎜ β1 + 2 (β 2 β 0 + β 2 (M m + M M ) AM ) ⎞⎟ (3.167)
Mm ⎝ ⎠

Les paramètres de simulation sont :


Am=100, MM=7.5, Mm=0.1 (3.168)
Mˆ =MM I, Nˆ =0, ce qui nous donne
β 0 = 13, β1 =2 13, β 2 = 13 et µ = 1122.5 (3.169)
Ces valeurs nous donnent des grands gains plus qui sont nécessaires réellement pour y
avoir la stabilité du système en boucle fermée, pour cela nous avons pris les gains suivants :

Kp=140 I (3.170)

Kv=12 I (3.171)

Et pour voir l’influence des valeurs des gains sur la convergence des erreurs de poursuite
(positions et vitesses) vers zéro, nous avons pris les gains suivants :

129
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Kp=400 I (3.172)

Kv=30 I (3.173)

Le vecteur d’état initial pour toutes les simulations est :


x(0) = [0 0 0 0 0 0 0 0 0 0 0 0] T (3.174)

III-5-3-2. L’approche de la saturation robuste

III-5-3-2-1. Méthode basée sur la linéarisation du retour d’état


Les suppositions sont :
1 ≤ M(q)−1 ≤ 1 , Mm ≠ 0 (3.175)
MM Mm

δ ≤ β0 + β1 ξ + β 2 ξ ² (3.176)

La commande est donnée par :


Γ = Mˆ (q)(q&&d − Kv q~& − K p q~ +vr )+ Nˆ (q,q&) (3.177)

avec :
M mM M
Mˆ (q) =2 (3.178)
M m +M M

⎧ BT Pξ
⎪− ρ(ξ,t) si BT Pξ >ε
⎪ BT Pξ
vr = ⎨ pour ε >0 (3.179)
⎪ BT Pξ
⎪ − ρ(ξ,t) si BT Pξ ≤ε
⎩ ε
1 ⎛ ⎞
ρ = ⎜α
1−α ⎝
( q&&d + k p q% + kv q%& ) + M1 m
δ ⎟

(3.180)

MM − M m
α= (3.181)
M M +M m
Kv=kvIn et Kp= kpIn (3.182)
III-5-3-2-2. Méthode non linéaire

Les suppositions:
1 ≤ M(q)−1 ≤ 1 , Mm ≠ 0 (3.183)
MM Mm

La loi de commande est :

130
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Γ = − K pq~ − Kv q~& + vr (ρ,q~,q~& ,ε) (3.184)

où :
⎧ (µq~ + q~& )
⎪⎪ ~ ~& ρ si µq~ + q~& ρ >ε
vr =⎨ µq + q (3.185)
⎪ (µq~ +q~& )
⎪⎩ ε ρ si µq~ +q~& ρ ≤ε

ρ =δ 0 +δ1 ξ +δ 2 ξ 2 (3.186)

avec les δ i des scalaires positifs.

III-5-3-3. La Commande à Structure Variable avec L’approche Mode de Glissement

III-5-3-3-1. La commande de Slotine

1. Avec le terme signe de commutation

La commande proposée est définie comme :


Γ= Mˆ q&&r +Cˆ q&r +Gˆ − Ksign(s) (3.187)

où :
q&r =q&d −Λq~, Λ = diag(λ1 ,.....λn ) (3.188)

s =q& −q&r =q~& + Λq~ (3.189)

K =diag(ki), ki >0 (3.190)

sign (s) = (sign (s1),…, sing (sn)) (3.191)


⎧ 1 si si > 0
sign(si ) =⎨ (3.192)
⎩ −1 si si < 0
2. Avec le terme saturation
La loi de commande est donnée comme suit :
Γ= Mˆ q&&r +Cˆ q&r +Gˆ − Ksat(s /ε) (3.193)
où :
q&r =q&d −Λq~, Λ = diag(λ1 ,.....λn ) (3.194)

s =q& −q&r =q~& + Λq~ (3.195)


K =diag(ki), ki >0 (3.196)

131
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

⎧sign(s) si s > Φ

sat(s /ε) = ⎨ avec ε >0 (3.197)
⎪⎩ s /ε si s ≤ Φ

sign (s) = (sign (s1),…, sing (sn)) (3.198)

Les paramètres de simulation sont :


Mˆ = I , Cˆ =0, Gˆ = 0, ε = 0.1, Φ = 0.8 (3.199)

Les matrices des gains sont :


⎛ 250 0 0 0 0 0 ⎞ ⎛ 20 0 0 0 0 0⎞
⎜ 0 350 0 0 0 0 ⎟ ⎜0 20 0 0 0 0⎟
⎜ ⎟ ⎜ 0 0⎟
K = ⎜ 0 0 90 0 0 0 ⎟ Λ =⎜ 0 0 15 0 (3.200)
0 0 0 15 0 0 0 0 0 4.5 0 0⎟
⎜ 0 0 0 0 16.5 0 ⎟ ⎜0 0 0 0 4.8 0 ⎟
⎜ 0 0 0 0 0 11⎟ ⎜0 0 0 0 0 4 ⎟⎠
⎝ ⎠ ⎝

Le vecteur d’état initial est :


x(0) = [0.1 0.11 0.12 0.13 0.14 0.15 0.1 0.11 0.12 0.13 0.14 0.15] T (3.201)

3. Avec le terme tangente hyperbolique


La loi de commande est donnée comme suit :
Γ = Mq ˆ & + Gˆ − K tanh (gs )
ˆ && + Cq (3.202)
r r

avec g; un paramètre de gain qui ajuste la pente de cette fonction autour de l'origine.

Les paramètres de simulation sont :


Mˆ = I , Cˆ =0, Gˆ = 0, g =5 (3.203)

Les matrices des gains sont :


⎛ 200 0 0 0 0 0⎞ ⎛ 20 0 0 0 0 0⎞
⎜ 0 350 0 0 0 0⎟ ⎜0 20 0 0 0 0⎟
⎜ 70 0 0 0 ⎟ ⎜ 0⎟
K =⎜ 0 0 Λ =⎜ 0 0 20 0 0 (3.204)
0 0 0 56 0 0 ⎟ 0 0 0 25 0 0⎟
⎜ 0 0 0 0 56 0 ⎟ ⎜0 0 0 0 25 0⎟
⎜ 0 0 0 0 0 56 ⎟⎠ ⎜0 0 0 0 0 25 ⎟⎠
⎝ ⎝

Le vecteur d’état initial est :


x(0) = [0.1 0.11 0.12 0.13 0.14 0.15 0.1 0.11 0.12 0.13 0.14 0.15] T (3.205)

132
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

III-5-3-3-2. Commande à structure variable basée sur la linéarisation du retour d’état


1. Commande proposée par Zhihong utilisant le terme de type commutation
La loi de commande est de la forme :
Γ0 = M 0 (q)(q&&d − Kξ)+C0 (q,q&)q& +G0 (q) (3.206)
Γ = M 0 (q)(q&&d − Kξ ) + C0 (q, q& )q& + G0 (q ) + vr (t ) = u0 (t ) + vr (t ) (3.207)

avec :
−1 T
⎧ (s C2 M 0 (q) )
T
⎪⎪ w s ≠0
vr = ⎨ sT C2 M 0 (q)−1 ² (3.208)

⎪⎩ s =0
0

(
w= − sT CAcξ − s C2 M 0 (q)−1 b0 +b1 q +b2 q& ² ) (3.209)

ρ (t) < b0 + b1 q(t) + b2 q&(t) ² (3.210)

( )
C= C1 C2 = (Λ In) (3.211)

s=Cξ (3.212)

Ac = A − BK (3.213)

Les paramètres de simulation sont :

b0=0.05; b1=0.02; b2=0.02; (3.214)

Les matrices des gains sont :


⎛250 0 0 0 0 0 ⎞ ⎛30 0 0 0 0 0 ⎞ ⎛500 0 0 0 0 0 ⎞
⎜ 0 260 0 0 0 0 ⎜ 0 35 0 0 0 0 ⎟ ⎜ 0 500 0 0 0 0 ⎟
⎜ 0 0 250 0 0 0 ⎜ ⎟ ⎜ ⎟
Kp =⎜ Kv = ⎜ 0 0 30 0 0 0 ⎟ Λ=⎜ 0 0 500 0 0 0 ⎟ (3.215)
0 0 0 1525 0 0 0 0 0 200 0 0 0 0 0 1150 0 0
⎜ 0 0 0 0 1650 0 ⎜ 0 0 0 0 65 0 ⎟ ⎜ 0 0 0 0 100 0 ⎟
⎜ 0 0 0 0 0 1500 ⎜ 0 0 0 0 0 55⎟ ⎜ 0 0 0 0 0 375⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
Le vecteur d’état initial est :
x(0) = [0.1 0.11 0.12 0.13 0.14 0.15 0.1 0.11 0.12 0.13 0.14 0.15] T (3.216)

2. Commande proposée par Zhihong avec la modification domaine de limites

Γ0 = M 0 (q)(q&&d − Kξ)+C0 (q,q&)q& +G0 (q) (3.217)


Γ= M 0 (q)u(t)+C0 (q,q&)q& +G0 +vr (t)=u0(t)+vr (t) (3.218)

133
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

avec :
( ⎧ sT C M (q)−1 T
⎪ 2 0 )
⎪ w sT C2 M 0 (q)−1 ≥ ε
2
⎪ T −1
v r' =⎨ s C2 M 0 (q) ε >0 (3.219)

( ⎪ sT C M (q)−1 T
⎪ 2 0 ) sT C2 M 0 (q)−1 < ε
⎩ w
ε²
b0, b1 et b2, C et s sont définis dans (3.223), (3.224) et (3.225) respectivement.

Les paramètres de simulation sont :

b0=0.05; b1=0.02; b2=0.02; (3.220)

Les matrices des gains sont :


⎛100 0 0 0 0 0 ⎞ ⎛18 0 0 0 0 0⎞ ⎛30 0 0 0 0 0 ⎞
⎜ 0 150 0 0 0 0 ⎟ ⎜0 20 0 0 0 0⎟ ⎜ 0 150 0 0 0 0 ⎟
⎜ 0 0 100 0 0 0 ⎟ ⎜ ⎟
0 0 Λ=⎜ 0 0 30 0 0 0 ⎟ (3.221)
Kp =⎜ Kv = ⎜ 0 0 18 0
0 0 0 850 0 0 ⎟ 0 0 0 80 0 0⎟ ⎜ 0 0 0 700 0 0 ⎟
⎜ 0 0 0 0 850 0 ⎟ ⎜0 0 0 0 60 0 ⎟ ⎜ 0 0 0 0 750 0 ⎟
⎜ 0 0 0 0 0 550⎟ ⎜0 0 0 0 ⎟
0 50 ⎠ ⎜ 0 0 0 0 0 680⎟
⎝ ⎠ ⎝ ⎝ ⎠
Le vecteur d’état initial est :
x(0) = [0.1 0.11 0.12 0.13 0.14 0.15 0.1 0.11 0.12 0.13 0.14 0.15] T (3.222)

III-5-3-3-3. Loi du mode d’atteinte (reaching mode)

La loi de commande est:


( )
Γ= M(q) −Qsign(s)− Ks −Λq~& + q&&d +C(q,q&)q& +G(q)−ηc (3.223)

Les paramètres de simulation sont :

ηc = 0.27[1 1 1 1 1 1]T (3.224)

Les matrices des gains sont :

K=90 I (3.225)

Λ=40 I (3.226)

Q= 0.1 I (3.227)

Dans le but d’illustration, nous allons utiliser Q=15 I dans la simulation avec les mêmes
valeurs des autres paramètres.

Le vecteur d’état initial est :


x(0) = [0.1 0.11 0.12 0.13 0.14 0.15 0.1 0.11 0.12 0.13 0.14 0.15] T (3.228)

134
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

III-5-4. Comparaison en simulation

III-5-4-1. L’Approche Multivariable Linéaire Robuste

Les résultats de simulation sont obtenus en utilisant la commande basée sur la


linéarisation du retour d’état avec les gains cités dans (3.170) et (3.171), pour la poursuite de
trajectoire du robot Puma 560 (6 ddl) décrit dans la section I-4-4. Dans ces simulations, nous
appliquerons des perturbations sur le modèle du robot (perturbations sur la matrice d’inertie,
perturbations sur la matrice des forces centrifuges et de Coriolis et des perturbations
extérieurs), que la loi de commande devrait compenser.

De la figure III.4, nous pouvons voir l'influence des perturbations sur les erreurs de
poursuite, spécialement sur le deuxième bras. Notons que le signal d'erreur est borné et tend à
converger vers zéro. Les erreurs de poursuite de position mesurées dans l'état d'équilibre (plus
de 0,5 sec) sont entre 10-5 et 0.0031 rad pour les six axes. Cette réponse a été prévue puisque
la commande proposée assure la bornitude ultimement uniforme de l'erreur de poursuite avec
la présence des incertitudes du système. Malheureusement, pour obtenir une telle réponse,
nous somme obligés de mettre en application des gains très élevés (de l’ordre de µ = 1122.5).
Si nous utilisons des gains plus petits, la réponse obtenue ne sera pas acceptable. De la figure
III.5 nous voyons que la convergence s’améliore quand nous utilisons les valeurs des gains
donnés par (3.172) et (3.173).

135
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.4.a Erreur de poursuite de la Figure III.4.b Erreur de poursuite de la


position du 1er bras en utilisant position du 2eme bras en utilisant
l’approche MLR l’approche MLR

Figure III.4.c Erreur de poursuite de la Figure III.4.d Erreur de poursuite de la


position du 3eme bras en utilisant position du 1er axe du terminal en
l’approche MLR utilisant l’approche MLR

Figure III.4.e Erreur de poursuite de la Figure III.4.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant l’approche MLR utilisant l’approche MLR

136
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.4.g Erreur de poursuite de la Figure III.4.h Erreur de poursuite de la


vitesse du 1er bras en utilisant l’approche vitesse du 2eme bras en utilisant
MLR l’approche MLR

Figure III.4.i Erreur de poursuite de la Figure III.4.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant vitesse du 1er axe du terminal en utilisant
l’approche MLR l’approche MLR

Figure III.4.k Erreur de poursuite de la Figure III.4.l Erreur de poursuite de la


vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant l’approche MLR utilisant l’approche MLR

137
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.4.m Couple du 1er bras en Figure III.4.n Couple du 2eme bras en
utilisant l’approche MLR utilisant l’approche MLR

Figure III.4.o Couple du 3eme bras en Figure III.4.p Couple du 1er axe du
utilisant l’approche MLR terminal en utilisant l’approche MLR

Figure III.4.q Couple du 2eme axe du Figure III.4.u Couple du 3eme axe du
terminal en utilisant l’approche MLR terminal en utilisant l’approche MLR

138
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.5.a Erreurs de poursuite des positions des six axes en utilisant
l’approche MLR avec Kp=400 I et Kv=30 I

Figure III.5.b Erreurs de poursuite des vitesses des six axes en utilisant l’approche
MLR avec Kp=400 I et Kv=30 I

Figure III.5.c Couples des six axes en utilisant l’approche MLR


avec Kp=400 I et Kv=30 I

139
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

L'analyse ci-dessus prouve que l'approche multivariable linéaire robuste utilisée avec la
méthode de la linéarisation du retour d’état, c-à-d le similaire du couple calculé, est robuste.
Cependant, des gains excessivement élevés peuvent être exigés pour garantir que la bornitude
de l'état de l'erreur de poursuite. Cette classe de compensateurs constitue la structure
commune la plus utilisée par les constructeurs des robots et elle est la plus simple pour
l’application et l’étude.

Maintenant, nous présenterons tous les résultats de simulation obtenus en utilisant les
commandes à structure variable présentées au cours de ce chapitre. Nous essayerons de
restaurer la capacité de chaque méthode aux incertitudes du système en utilisant les valeurs
minima possibles des gains de commande. Pour voir ceci, les couples d'entrées appliqués sont
montrés dans chaque cas. Puisque ces commandes provoquent le phénomène de vibration,
nous illustrerons le comportement de leurs versions modifiées dans le problème de poursuite
avec des incertitudes du système. Nous commencerons par la commande de Slotine avec le
terme de saturation sat(s/ε) (domaine de limites). La simplicité de cette commande permet la
facilité de la mise en application. Les erreurs de poursuite sont montrées par la figure III.6.

Il est clair que la convergence des erreurs de poursuite est garantie. La figure III.6.l
montre l'influence des incertitudes du système sur les erreurs de poursuite de vitesse. Notons
que les variations à haute fréquence sur le signal d'erreur de vitesse sont dues à la fonction
sat(ε/ε).

140
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.6.a Erreur de poursuite de la Figure III.6.b Erreur de poursuite de la


position du 1er bras en utilisant l’approche position du 2eme bras en utilisant l’approche
mode de glissement de Slotine avec le terme mode de glissement de Slotine avec le terme
de saturation sat(s/ε) (ε=0.1) de saturation sat(s/ε) (ε=0.1)

Figure III.6.c Erreur de poursuite de la Figure III.6.d Erreur de poursuite de la


position du 3eme bras en utilisant l’approche position du 1er axe du terminal en utilisant
mode de glissement de Slotine avec le terme l’approche mode de glissement de Slotine
de saturation sat(s/ε) (ε=0.1) avec le terme de saturation sat(s/ε) (ε=0.1)

Figure III.6.e Erreur de poursuite de la Figure III.6.f Erreur de poursuite de la


position du 2eme axe du terminal en utilisant position du 3eme axe du terminal en utilisant
l’approche mode de glissement de Slotine l’approche mode de glissement de Slotine
avec le terme de saturation sat(s/ε) (ε=0.1) avec le terme de saturation sat(s/ε) (ε=0.1)

141
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.6.g Erreur de poursuite de la Figure III.6.h Erreur de poursuite de la


vitesse du 1er bras en utilisant l’approche vitesse du 2eme bras en utilisant
mode de glissement de Slotine avec le l’approche mode de glissement de Slotine
terme de saturation sat(s/ε) (ε=0.1) avec le terme de saturation sat(s/ε) (ε=0.1)

Figure III.6.i Erreur de poursuite de la Figure III.6.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant l’approche vitesse du 1er axe du terminal en utilisant
mode de glissement de Slotine avec le terme l’approche mode de glissement de Slotine
de saturation sat(s/ε) (ε=0.1) avec le terme de saturation sat(s/ε) (ε=0.1)

Figure III.6.k Erreur de poursuite de la Figure III.6.l Erreur de poursuite de la


vitesse 2eme axe du terminal en utilisant vitesse du 3eme axe du terminal en utilisant
l’approche mode de glissement de Slotine l’approche mode de glissement de Slotine
avec le terme de saturation sat(s/ε) (ε=0.1) avec le terme de saturation sat(s/ε) (ε=0.1)

142
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.6.m Couple du 1er bras en Figure III.6.n Couple du 2eme bras en
utilisant l’approche mode de glissement utilisant l’approche mode de glissement
de Slotine avec le terme de saturation de Slotine avec le terme de saturation
sat(s/ε) (ε=0.1) sat(s/ε) (ε=0.1)

Figure III.6.o Couple du 3eme bras en Figure III.6.p Couple du 1er axe du
utilisant l’approche mode de glissement terminal en utilisant l’approche mode
de Slotine avec le terme de saturation de glissement de Slotine avec le terme de
sat(s/ε) (ε=0.1) saturation sat(s/ε) (ε=0.1)

Figure III.6.q Couple du 2eme axe du Figure III.6.u Couple du 3eme axe du
terminal en utilisant l’approche mode terminal en utilisant l’approche mode
de glissement de Slotine avec le terme de de glissement de Slotine avec le terme de
saturation sat(s/ε) (ε=0.1) saturation sat(s/ε) (ε=0.1)

143
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Cette commande réduit les oscillations sur les erreurs de poursuite de vitesse et assure des
erreurs de poursuite de position similaires à celles de la commande originale (commande de
Slotine avec le terme signe) si le domaine de limites est choisi d’une façons suffisamment
étroite (pour les petites valeurs de ε).

La figure III.7 illustre le comportement du robot quand nous utilisons la fonction tangente
hyperbolique au lieu de la fonction sat(s/ε) dans (3.197). Il est clair de la figure que la
convergence des erreurs de poursuite soit de position ou de vitesse est garantie, mais avec des
gains plus grands que ceux utilisés dans la commande du domaine de limites.

En plus, avec un bon choix de g et ε et en utilisant des gains plus élevés, nous pouvons
obtenir les mêmes résultats de la commande originale de Slotine.

144
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.7.a Erreur de poursuite de la Figure III.7.b Erreur de poursuite de la


position du 1er bras en utilisant position du 2eme bras en utilisant
l’approche mode de glissement de l’approche mode de glissement de
Slotine avec le terme tanh(gs) Slotine avec le terme tanh(gs)

Figure III.7.c Erreur de poursuite de la Figure III.7.d Erreur de poursuite de la


position du 3eme bras en utilisant position du 1er axe du terminal en
l’approche mode de glissement de utilisant l’approche mode de glissement
Slotine avec le terme tanh(gs) de Slotine avec le terme tanh(gs)

Figure III.7.e Erreur de poursuite de la Figure III.7.f Erreur de poursuite de la


position du 2eme axe du terminal en position du 3eme axe du terminal en
utilisant l’approche mode de glissement utilisant l’approche mode de glissement
de Slotine avec le terme tanh(gs) de Slotine avec le terme tanh(gs)

145
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.7.g Erreur de poursuite de la Figure III.7.h Erreur de poursuite de la


vitesse du 1er bras en utilisant l’approche vitesse du 2eme bras en utilisant
mode de glissement de Slotine avec le l’approche mode de glissement de
terme tanh(gs) Slotine avec le terme tanh(gs)

Figure III.7.i Erreur de poursuite de la Figure III.7.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant vitesse du 1er axe du terminal en utilisant
l’approche mode de glissement de l’approche mode de glissement de
Slotine avec le terme tanh(gs) Slotine avec le terme tanh(gs)

Figure III.7.k Erreur de poursuite de la Figure III.7.l Erreur de poursuite de la


vitesse du 2eme axe du terminal en vitesse du 3eme axe du terminal en
utilisant l’approche mode de glissement utilisant l’approche mode de glissement
de Slotine avec le terme tanh(gs) de Slotine avec le terme tanh(gs)

146
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.7.m Couple du 1er bras en Figure III.7.n Couple du 2eme bras en
utilisant l’approche mode de glissement de utilisant l’approche mode de glissement de
Slotine avec le terme tanh(gs) Slotine avec le terme tanh(gs)

Figure III.7.o Couple du 3eme bras en Figure III.7.p Couple du 1er axe du
utilisant l’approche mode de glissement de terminal en utilisant l’approche mode de
Slotine avec le terme tanh(gs) glissement de Slotine avec le terme tanh(gs)

Figure III.7.q Couple du 2eme axe du Figure III.7.u Couple du 3eme axe du
terminal en utilisant l’approche mode de terminal en utilisant l’approche mode de
glissement de Slotine avec le terme tanh(gs) glissement de Slotine avec le terme tanh(gs)

147
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

La figure III.8 montre les performances de poursuite de la commande à structure variable


basée sur la linéarisation du retour d’état, proposé par Zhihong (qui utilise le terme de
commutation donné par (3.208)).

Figure III.8.a Erreur de poursuite de la Figure III.8.b Erreur de poursuite de la


position du 1er bras en utilisant la position du 2eme bras en utilisant la
commande SV proposée par Zhihong commande SV proposée par Zhihong

Figure III.8.c Erreur de poursuite de la Figure III.8.d Erreur de poursuite de la


position du 3eme bras en utilisant la position du 1er axe du terminal en utilisant
commande SV proposée par Zhihong la commande SV proposée par Zhihong

148
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.8.e Erreur de poursuite de la Figure III.8.f Erreur de poursuite de la


position du 2eme axe du terminal en utilisant position du 3eme axe du terminal en utilisant
la commande SV proposée par Zhihong la commande SV proposée par Zhihong

Figure III.8.g Erreur de poursuite de la Figure III.8.h Erreur de poursuite de la


vitesse du 1er bras en utilisant la vitesse du 2eme bras en utilisant la
commande SV proposée par Zhihong commande SV proposée par Zhihong

Figure III.8.i Erreur de poursuite de la Figure III.8.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en utilisant
commande SV proposée par Zhihong la commande SV proposée par Zhihong

149
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.8.k Erreur de poursuite de la Figure III.8.l Erreur de poursuite de la


vitesse du 2eme axe du terminal en utilisant vitesse du 3eme axe du terminal en utilisant
la commande SV proposée par Zhihong la commande SV proposée par Zhihong

Figure III.8.m Couple du 1er bras en Figure III.8.n Couple du 2eme bras en
utilisant la commande SV proposée par utilisant la commande SV proposée par
Zhihong Zhihong

Figure III.8.o Couple du 3eme bras en Figure III.8.p Couple du 1er axe du
utilisant la commande SV proposée par terminal en utilisant la commande SV
Zhihong proposée par Zhihong

150
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.8.q Couple du 2eme axe du Figure III.8.u Couple du 3eme axe du
terminal en utilisant la commande SV terminal en utilisant la commande SV
proposée par Zhihong proposée par Zhihong

Des figures ci-dessus nous pouvons voir que la poursuite asymptotique est obtenue en
utilisant des gains plus grands par rapport à la commande de Slotine avec le terme tangente
hyperbolique, pour avoir une meilleure performance. La figure III.8.k montre l’influence de la
commande de type commutation sur l'erreur de poursuite de vitesse. En outre, le couple
d'entrée appliqué illustré dans la figure III.8.p, subi le phénomène de vibration, qui est
fortement indésirable dans la pratique. Pour résoudre ce problème, le terme de commande du
domaine de limites donné dans l'équation (3.219) est testé avec les mêmes conditions de
fonctionnement que la commande originale. La figure III.9 illustre les erreurs de poursuite du
système en boucle fermée.

151
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.9.a Erreur de poursuite de la Figure III.9.b Erreur de poursuite de la


position du 1er bras en utilisant la position du 2eme bras en utilisant la
commande proposée par Zhihong avec la commande proposée par Zhihong avec la
modification domaine de limites (ε=0.1) modification domaine de limites (ε=0.1)

Figure III.9.c Erreur de poursuite de la Figure III.9.d Erreur de poursuite de la


position du 3eme bras en utilisant la position du 1er axe du terminal en utilisant la
commande proposée par Zhihong avec la commande proposée par Zhihong avec la
modification domaine de limites (ε=0.1) modification domaine de limites (ε=0.1)

Figure III.9.e Erreur de poursuite de la Figure III.9.f Erreur de poursuite de la


position du 2eme axe du terminal en utilisant position du 3eme axe du terminal en utilisant
la commande proposée par Zhihong avec la la commande proposée par Zhihong avec la
modification domaine de limites (ε=0.1) modification domaine de limites (ε=0.1)

152
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.9.g Erreur de poursuite de la Figure III.9.h Erreur de poursuite de la


vitesse du 1er bras en utilisant la vitesse du 2eme bras en utilisant la
commande proposée par Zhihong avec la commande proposée par Zhihong avec la
modification domaine de limites (ε=0.1) modification domaine de limites (ε=0.1)

Figure III.9.i Erreur de poursuite de la Figure III.9.j Erreur de poursuite de la


vitesse du 3eme bras en utilisant la commande vitesse du 1er axe du terminal en utilisant la
proposée par Zhihong avec la modification commande proposée par Zhihong avec la
domaine de limites (ε=0.1) modification domaine de limites (ε=0.1)

Figure III.9.k Erreur de poursuite de la Figure III.9.l Erreur de poursuite de la


vitesse du 2eme axe du terminal en utilisant vitesse du 3eme axe du terminal en utilisant
la commande proposée par Zhihong avec la commande proposée par Zhihong avec
la modification domaine de limites (ε=0.1) la modification domaine de limites (ε=0.1)

153
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.9.m Couple du 1er bras en Figure III.9.n Couple du 2eme bras en
utilisant la commande proposée par utilisant la commande proposée par
Zhihong avec la modification domaine Zhihong avec la modification domaine
de limites (ε=0.1) de limites (ε=0.1)

Figure III.9.o Couple du 3eme bras en Figure III.9.p Couple du 1er axe du
utilisant la commande proposée par terminal en utilisant la commande
Zhihong avec la modification domaine proposée par Zhihong avec la
de limites (ε=0.1) modification domaine de limites (ε=0.1)

Figure III.9.q Couple du 2eme axe du Figure III.9.u Couple du 3eme axe du
terminal en utilisant la commande terminal en utilisant la commande
proposée par Zhihong avec la proposée par Zhihong avec la
modification domaine de limites (ε=0.1) modification domaine de limites (ε=0.1)

154
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Nous pouvons voir que la performance de poursuite est gardée avec peu d'oscillations
dans le signal d'erreur de poursuite de vitesse (voir figure III.9.k), quoique théoriquement, la
commande du domaine de limites assure seulement la bornitude ultime de l'erreur. C'est le
procédé important de cette commande, puisque dans ce domaine de limites, le taux par le quel
l'erreur tend vers zéro peut être arbitrairement ajusté par l'intermédiaire de la matrice C de
(3.211). De plus, l'effet de la vibration est considérablement réduit comme il est illustré dans
la figure III.9.p.

Finalement, nous étudierons la nouvelle technique discutée dans la section III-4-3 (la
méthode de la loi d’atteinte) qui traite la vibration. La commande donnée dans (84), avec η c
citée dans (85) est implémentée sous les mêmes conditions de fonctionnement comme ci-
dessus. Dans un but d'illustration, nous changerons les paramètres de la commande et nous
verrons ses influences sur l'erreur de poursuite, ainsi sur les couples d'entrée appliqués. Les
figures III.10 et III.11 illustrent les erreurs des poursuites et les couples appliqués en utilisant
de différents paramètres de commande.

155
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.10.a Erreur de poursuite de Figure III.10.b Erreur de poursuite de


la position du 1er bras en utilisant la loi la position du 2eme bras en utilisant la loi
du mode d’atteinte avec K=90 I , Λ=40 I du mode d’atteinte avec K=90 I , Λ=40 I
et Q =15 I et Q =15 I

Figure III.10.c Erreur de poursuite Figure III.10.d Erreur de poursuite de


de la position du 3eme bras en utilisant la position du 1er axe du terminal en
la loi du mode d’atteinte avec utilisant la loi du mode d’atteinte avec
K=90 I , Λ=40 I et Q =15 I K=90 I , Λ=40 I et Q =15 I

Figure III.10.e Erreur de poursuite de Figure III.10.f Erreur de poursuite de


la position du 2eme axe du terminal en la position du 3eme axe du terminal en
utilisant la loi du mode d’atteinte avec utilisant la loi du mode d’atteinte avec
K=90 I , Λ=40 I et Q =15 I K=90 I , Λ=40 I et Q =15 I

156
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.10.g Erreur de poursuite Figure III.10.h Erreur de poursuite de


de la vitesse du 1er bras en utilisant la la vitesse du 2eme bras en utilisant la loi
loi du mode d’atteinte avec K=90 I , du mode d’atteinte avec K=90 I , Λ=40 I
Λ=40 I et Q =15 I et Q =15 I

Figure III.10.i Erreur de poursuite Figure III.10.j Erreur de poursuite de


de la vitesse du 3eme bras en utilisant la vitesse du 1er axe du terminal en
la loi du mode d’atteinte avec K=90 I utilisant la loi du mode d’atteinte avec
, Λ=40 I et Q =15 I K=90 I , Λ=40 I et Q =15 I

Figure III.10.k Erreur de poursuite de Figure III.10.l Erreur de poursuite de


la vitesse du 2eme axe du terminal en la vitesse du 3eme axe du terminal en
utilisant la loi du mode d’atteinte avec utilisant la loi du mode d’atteinte avec
K=90 I , Λ=40 I et Q =15 I K=90 I , Λ=40 I et Q =15 I

157
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.10.m Couple du 1er bras en Figure III.10.n Couple du 2eme bras en
utilisant la loi du mode d’atteinte avec utilisant la loi du mode d’atteinte avec
K=90 I , Λ=40 I et Q =15 I K=90 I , Λ=40 I et Q =15 I

Figure III.10.o Couple du 3eme bras en Figure III.10.p Couple du 1er axe du
utilisant la loi du mode d’atteinte avec terminal en utilisant la loi du mode
K=90 I , Λ=40 I et Q =15 I d’atteinte avec K=90 I , Λ=40 I et Q =15 I

Figure III.10.q Couple du 2eme axe du Figure III.10.u Couple du 3eme axe du
terminal en utilisant la loi du mode terminal en utilisant la loi du mode
d’atteinte avec K=90 I , Λ=40 I et Q =15 I d’atteinte avec K=90 I , Λ=40 I et Q =15 I

158
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

Figure III.11.a Erreurs de poursuite des positions des six axes en utilisant la loi du
mode d’atteinte avec K=90 I , Λ=40 I et Q = 0.1 I

Figure III.11.b Erreurs de poursuite des vitesses des six axes en utilisant la loi du
mode d’atteinte avec K=90 I , Λ=40 I et Q = 0.1I

Figure III.11.c Couples des six axes en utilisant la loi du mode d’atteinte avec
K=90 I , Λ=40 I et Q = 0.1 I

159
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

De ces figures, nous pouvons voir que pour K fixe, et pour des grandes valeurs de Q, une
bonne performance de poursuite est garantie mais avec des oscillations à haute fréquence du
signal d'entrée. De ce fait, l'utilisation de la méthode de la loi d’atteinte avec de grands
paramètres de commande n'éliminera pas la vibration. Alors que, l'utilisation des valeurs plus
basses de ces paramètres réduira considérablement la vibration et garde la performance de
poursuite. De plus, le couple d'entrée maximum est réduit (voir figure III.11).

160
Chapitre III Commandes Robustes des Robots Manipulateurs Rigides

III-6. CONCLUSION

Dans ce chapitre, de différentes méthodes de conception des commandes de mouvement


robustes pour les robots manipulateurs rigides ont été discutées. Trois approches de
conception principale ont été identifiées et examinées.

L'approche multivariable linéaire robuste est basée sur l’utilisation des techniques
linéaires robustes pour concevoir une commande linéaire. Ceci est achevé par l’application
d'une commande non-linéaire de linéarisation avec retour d’état qui linéarise et découple
partiellement la dynamique du robot due à la présence des incertitudes du système. Nous
avons montré que le signal d'erreur est borné à condition que de hauts gains soient mis en
application.

Les commandes de saturation robustes ont été étudiées. Ce type de commandes utilise
principalement un compensateur non-linéaire avec un stabilisateur robuste. Ce dernier est
conçu selon la théorie de la stabilité garantie des systèmes incertains. Selon la structure du
compensateur non-linéaire, nous avons proposé deux approches pour la conception du terme
de saturation. L'étape la plus difficile dans cette méthode de conception est la détermination
d'une borne supérieure sur les incertitudes du système. Cette borne est déduite pour chaque
méthode, et sa structure constitue la différence principale entre les deux approches proposées.

A la fin de ce chapitre, nous avons discuté la classe importante des commandes à


structure variable avec le mode de glissement. Ce type de commandes fournit un simple
procédé de conception et assure la stabilité asymptotique du système en boucle fermée.
Malheureusement, due au retard non nul de commutation, la vibration se produit toujours.
Pour remédier ce problème, deux méthodes ont été discutées, la méthode de continuation et la
méthode de conception du mode d'atteinte. L’utilisation de l'approche du domaine de limite
garantit seulement la bornitude ultime de l'erreur du système. L'approche de la loi d'atteinte
traite la vibration avant qu'elle se produise car elle spécifie le processus d'atteinte par une
condition d'atteinte définissant la dynamique de la trajectoire du système à la phase d'atteinte.

Puisqu’il est difficile de classifier ces méthodes dans un ordre croissant comme nous
avons fait dans le deuxième chapitre et cela sur la base de l’étude analytique, les résultats de
plusieurs simulations de ces commandes appliquées au modèle dynamique du robot
manipulateur rigide Puma 560 (cf. section I-4-4) sont présentées à la fin de ce chapitre.

161
CONCLUSION
GÉNÉRALE
Conclusion générale

La présente étude a été conçue dans le but d’aide à la conception de commandes de


manipulateurs, du fait que chaque manipulateur ayant des caractéristiques qui lui sont propres,
et les tâches à accomplir pouvant être de difficulté très inégale, il est évident que prôner à
priori l’emploi d’une commande plutôt q’une autre n’a pas beaucoup de sens. Nous avons
donc essayé de localiser un certain nombre de difficultés liées au problème général de la
commande de manipulateurs et d’indiquer des directions pour résoudre ces problèmes.

Dans le chapitre I, des notions de base des robots manipulateurs ont été exposées. La
description géométrique des mécanismes articulés a été abordé et plus particulièrement les
robots manipulateurs en utilisant les deux conventions de Denavit-Hartenberg, standard
[1955], et celle modifiée avec une analyse bien détaillée et complète. En utilisant le
formalisme de Lagrange-Euler, nous avons présenté la modélisation dynamique du robot
manipulateur. Les propriétés structurelles du modèle dynamique du robot ont été présentées,
ainsi les différentes formes de la matrice des forces de Coriolis et centrifuge sont données. Un
exemple d’une analyse dynamique du robot Puma 560 (six degré de liberté) a été réalisé pour
valider en simulation les résultats des travaux de ce mémoire.

Dans le chapitre II, nous avons présenté plusieurs méthodes de génération de mouvement
couramment utilisées en robotique. Le problème a été traité pour des mouvements entre deux
points. Différents modes d’interpolation ont été étudies, notamment la loi d’interpolation d’un
polynôme de degré cinq dans la quelle la position, la vitesse et l’accélération sont continues.
Nous avons étudié plusieurs lois de commandes dynamiques classiques appliquées aux robots
manipulateurs rigides, soient celles qui traitent le problème de régulation, soient celles qui
traitent le problème de poursuite de trajectoire, et nous avons validé notre étude en simulant
toutes les lois de commande présentées avec le modèle du robot Puma 560.

Dans le chapitre III, de différentes commandes robustes ont été discutées. Trois
approches de conception principale ont été identifiées et examinées : L'approche multivariable
linéaire robuste qui est basée sur l’utilisation des techniques linéaires robustes pour concevoir
une commande linéaire. L’approche de saturation robuste a été étudiée après, elle utilise
principalement un compensateur non-linéaire avec un stabilisateur robuste. Ce dernier est
conçu selon la théorie de la stabilité garantie des systèmes incertains. Selon la structure du
compensateur non-linéaire, nous avons proposé deux approches pour la conception du terme
de saturation. L'étape la plus difficile dans cette méthode de conception est la détermination
d'une borne supérieure sur les incertitudes du système. Cette borne est déduite pour chaque
méthode, et sa structure constitue la différence principale entre les deux approches proposées.
Après, nous avons discuté la classe importante des commandes à structure variable avec le
mode de glissement. Ce type de commandes fournit un simple procédé de conception et
assure la stabilité asymptotique du système en boucle fermée. Malheureusement, due au retard

163
Conclusion générale

non nul de commutation, la vibration se produit toujours. Pour remédier ce problème, deux
méthodes ont été discutées, la méthode de continuation et la méthode de conception du mode
d'atteinte. Afin de valider nos résultats théoriques, nous avons appliqué la plupart des
approches robustes présentées sur le robot manipulateur rigide puma 560 en simulation.

Il est intéressent de réaliser d’autre étude complémentaire qui consisterait à étudier la


possibilité de robustifier les commandes adaptatives et les appliquer sur le robot Puma 560 en
temps réel.

164
RÉFÉRENCES
BIBLIOGRAPHIQUES
Références bibliographiques

Abdellah A.C. et R. Jordan, (1990a) “A positive real design for robotic manipulators”, IEEE

Amer. Cont. Conf., San Diego, CA.

Abdellah A.C., D. Dorato et M. Jamshidi, (1990b) “ Survey of the Robust Control of Robots”,
J. ACC-90, San Diego, p. 718-721.

Abdellah A.C., D. Dawson, D. Dorato et M. Jamshidi, (1991) “ Survey of robust control for
rigid robots”, IEEE Control system magazine, Vol. 11, p. 24-30.

Armstrong B., O. Khatib et J. Burdick (1986) “The explicit dynamic model and inertial
parameters of the Puma 560 arm”, Proc. IEEE Conf. Robot. Autom., p. 510-518, San
Fransisco, Avr. 7-10.

Bejczy A.K., T.J. Tarn, X. Yun et S. Hans, (1985) “Non linear feedback control of Puma 560
robot arm by computer”, Proc. 24th IEEE Conf. on Decision and Control, Fort
Lauderdale, p. 1680-1688.

Berghuis H. (1993) “Model-based control: from theory to practice”, Thèse PhD, Université de

Twente, Holand.

Canudas de Wit C., B. Brogliato, A. De Luca, B. Siciliano, P. Tomei, C. Samson, R. Ortega,


R. Lozano, G. Bastin, G. Campion, B. D’Andrea-Novel, W. Khalil, (1992) “Theory of
robot control”, Ecole d’Eté d’Automatique de Grenoble, Laboratoire d’Automatique
de Grenoble, France, Sep. 7-11.

Chen Y.F., T. Mita, S. Wahui, (1990) “A new and simple algorithm for sliding mode control
of robot arm”, Trans. on Automatic Control, Vol. 35, p. 828-829.

Coiffet P., (1992) “La robotique: principes et applications, 3e édition revue et complétée”,
Edition Hermès, Paris.

Craig J.J., (1988) “Adaptive control of mechanical manipulators”, Adisson-Wesley Publishing


Company, Inc, New York.

Dawson D.M., Z. Qu, F.L. Lewis, et J.F. Dorsrey, (1990) “Robust control for the tracking of
robot motion”, Int. J. Control, vol. 52, p. 581-595.

DeCarlo R.A., B.H. Zak et G.P. Matthews, (1988) “Variable structure control on nonlinear
multivariable systems: A tutorial”, Proc. IEEE, Vol. 76, p. 212-232.

Denavit J. et R.S. Hartenberg, (1955) “A kinematic notation for lower-pair mechanisms based
on matrices”, Journal of Applied Mechanics, p. 215-221.

Dombre E. et W. Khalil, (1988) “Modélisation et commande des robots”, Edition Hermès,


Paris.

166
Références bibliographiques

Desoer C.A. et M. Vydiazagar, (1975) “Feedback systems : Input output properties”, New
York, Academic Press.

Filippov A.F., (1960) “Differential Equation with discontinuous right hand side”,
Mathematicheskii Sbornik, Vol. 51, p. 99-128.

Freund E., (1982) “Fast nonlinear control with arbitrary pole placement for industrial robots
and manipulators”, The Int. J. of Robotics Researches, Vol. 1(1), p. 65-78.

Gao W. et J.C. Hung, (1993) “Variable structure control of nonlinear systems: A new
approach”, IEEE Trans. on Industrial Electronics, Vol. 40, p. 45-56.

Giordano M. et J. Lottin, (1990) “Cours de robotique: Description et fonctionnement des


robots industriels”, Armand Colin éditeur, Paris.

Gorla B. et M. Renaud, (1984) “Modèles des robots manipulateurs: application à leur


commande”, Cepadues-éditions, Toulouse, France.

Hung J.Y., W. Gao et J.C. Hung, (1993) “Variable structure control : a survey”, IEEE Trans.
on Industrial Electronics, Vol. 40, p. 2-21.

Jaritz A. et M.W. Spong, (1996) “An experimental comparison of robust control algorithms
on a direct drive manipulators”, IEEE Trans. on Control Systems Technology, Vol. 4,
p. 627-640.

Khalil W., (1978) “Contribution à la commande automatique des manipulateurs avec l’aide
d’un modèle mathématique des mécanismes”, Thèse d’Etat, USTL, Montpellier.

Khalil W. et Chevallereau C., (1987) “An efficient algorithm for the dynamic control of
robots in the cartesian space”, Proc. 26th IEEE Conf. on Decision and Control, Los
Angeles, p. 582-588.

Khatib O., (1980) “Commande dynamique dans l’espace opérationnel des robots
manipulateurs en présence d’obstacles”, Thèse de Docteur-Ingénieur, Ecole Nationale
Supérieure de l’Aéronautique et de l’Espace, Toulouse.

Khelfi M.F., (1995) “Observateurs non lineaires: Application à la commande des robots
manipulateurs” Thèse de Doctorat, Univ. Henri Poincaré, Nancy I, France.

Khosla P.K., (1986) “Real-time control and identification of direct drive manipulators”, Thèse
Ph. D., Carnegie Mellon University, Pittsburgh.

Koo K.M. et J.H. Kim, (1994) “Robust control of robot manipulators with parametric
uncertainty”, IEEE Trans. on Automatic Control, Vol. 39.

Lewis F.L., C.T. Abdellah et D. M. Dawson, (1993) “Control of robot manipulators”, New
York, Macmillan.

167
Références bibliographiques

Liu G. et A. Goldenberg, (1993) “On robust saturation control of robot manipulators”, in


Proc. 32nd Conf. Decision and Control, San Antonio, TX, p. 2115-2120.

Lozano R. et D. Taoutaou, (2001) “Identification et commande adaptative”, Edition Hèrmes,


Paris.

Luh J.Y.S., M.W. Walker et R.C.P. Paul, (1980) “Resolved-acceleration control of


mechanical manipulators”, IEEE Trans. on Automatic Control, Vol. AC-25(3), p. 468-
474.

Paden B. et R. Panja, (1988) “ Globally asymptotically stable ‘PD +’ controller for robot
manipulators”, Int. Journal on Control, Vol. 47, p. 1697-1712.

Raibet M.H. et Horn B.K.P., (1978) “Manipulator control using the configuration space
method”, The Industrial Robot, Vol. 5(2), p. 69-73.

Sadegh N. et R. Horowitz, (1990) “Stability and robustness analysis of a class of adaptive


controllers for robotic manipulators”, Int. Journal of Robotics Researches, Vol. 9, p.
74-94.

Samson C., (1983) “Commande non linéaire robuste des robots manipulateurs”, Rapport de
recherche n° 83 de l’Institut National de Recherche en Informatique et en
Automatique, Centre de Rennes, France.

Samson C., M. Le Borgne et B. Espiau, (1991) “Robot control: The task function approach”,
Clarendon Press, Oxford.

Slotine J.J.E., (1985) “The robust control of robot manipulators”, Int. Journal of Robotics
Researches, Vol. 4, p. 49-64.

Slotine J.J.E. et W. Li, (1987) “On the adaptive control of robot manipulators”, Int. Journal of
Robotics Researches, Vol. 6, p. 49-59.

Spong M.W., J.S. Thorp et J.M. Kleinwaks, (1984) “The control of robot manipulators with
bounded inputs”, Proc. 23rd IEEE Conf. on Decision and Control, Las Vegas.

Spong M.W. et M. Vidyasagar, (1987a) “Robust linear compensator design for nonlinear
robotic control”, IEEE Journal of Robotics and Automation, Vol. RA-3, p. 345-351.

Spong M.W., J.S. Thorp et J.M. Kleinwarks, (1987b) “Robust microprocessor control of robot
manipulators”, Automatica, Vol. 23, p. 373-379.

Spong M.W. et M. Vidyasagar, (1989) “Robot dynamics and control”, New York, John
Wiley & sons.

Spong M.W., (1992) “On the robust control of robot manipulators”, IEEE Trans. on
Automatic Control, Vol. 37, p. 1182-1786.

168
Références bibliographiques

Spong M.W., F.L. Lewis et C.T. Abdellah, (1994) “Robot control, dynamics, motion planning
and analysis”, IEEE Press.

Takegaki M. et S. Arimoto, (1981) “A new feedback method for dynamic control of


manipulators”, ASEM Journal of Dynamic Systems, Measurement and Control, Vol.
102, p. 119-125.

Utkin V.I., (1977) “Variable structure system with sliding mode”, IEEE Trans. Automatic
Control, Vol. AC-22, p. 212-222.

Vibet C., (1987) “Robots: Principes et controle”, Edition Marketing, Paris.

Xu S.J., (1995) “Contribution à la commande robuste et adaptative aux robots manipulateurs”,


Thèse Ph.D., Univ. Henri Poincaré, Nancy I, France.

Young K.K.D., (1978) “Controller design for a manipulator using the theory of variable
structure systems”, IEEE Trans. Systems Man. Cyber., Vol. SMC-8, p. 210-218.

Zabala Iturralde J., (1978) “Commande des robots manipulateurs à partir de la modélisation
de leur dynamique”, Thèse de Troisième Cycle, Université P. Sabatier, Toulouse, juil.

Zeneih S. et M. Corless, (1994) “Simple robust tracking controllers for robotic manipulators”,
in Proc. SYROCO’94, Copri, Italy, p. 193-198.

Zhihong M. et M. Palaniswami, (1994) “Robust tracking control for rigid robotic


manipulators”, IEEE Trans. on Automatic Control, Vol. 39, p. 154-159.

169
ANNEXES
Annexes

A.1 Normes [Lewis et al. 1993]

La norme est une généralisation des idées de la distance et de la longueur. Nous donnons
ici une courte description de quelques normes. pour plus de détails, voir [Desoer et al. 1975].

A.1.1 Normes d’un vecteur [Lewis et al. 1993]


Une norme . d'un vecteur x est une fonction à valeurs réelles définie sur l'espace
vectoriel X tels que :
(a) x ≥0 , pour tous x ∈ X avec x =0 si et seulement si x =0.

(b) ax = a . x pour tous x ∈ X et a est une grandeur scalaire.

(c) x+ y ≤. x + y pour tous x, y ∈ X .

Ce qui suivent sont des normes importantes dans X = Rn, où Rn est l'ensemble des
vecteurs nx1 avec des composantes réelles.
n
norme d’ordre 1: x 1≡∑ xi
i =1

1/ 2
⎛ n ⎞
norme d’ordre 2: x 2 ≡⎜⎜ ∑ xi2 ⎟⎟ , connu aussi sous le nom norme euclidienne.
⎝ i =1 ⎠
1/ p
⎛ n p⎞
norme d’ordre p: x p ≡⎜⎜ ∑ xi ⎟⎟
⎝ i =1 ⎠

norme d’ordre ∞ : x ∞ ≡ max xi


1≤i ≤ n

A.1.2 Normes D’une Matrice [Lewis et al. 1993]


Soit x une norme donnée de x∈Rn. Alors chaque matrice A de nxn a une norme définie
par :
A i = max Ax
x =1

Il est impératif de vérifier que les normes proposées vérifient les conditions (a), (b) et (c).
Comme nous pouvons montrer que la norme de matrice peut également satisfaire la
condition :
AB i ≤ A i B i

pour toute matrice A nxm et toute matrice B mxp.

Pour une matrice A, nous pouvons distinguer les normes suivantes : la norme d’ordre ∞ ,
la norme d’ordre 1 et la norme d’ordre 2 comme suit :

171
Annexes

norme d’ordre 1: A i1=max ∑ aij


j i

norme d’ordre 2: A i2 = λmax(AT A)

norme d’ordre ∞ : A i∞ =max ∑ aij


i j

où λmax est la valeur propre maximale.

A.2 Propriétés des Matrices [Lewis et al. 1993]

Quelques propriétés des matrices ont un rôle important dans l'étude de la stabilité des
systèmes dynamiques. Les propriétés utilisées dans cette thèse sont rassemblées dans cette
section.

Définition A.1 [Lewis et al. 1993]

Définie Positive: Une matrice réelle A nxn est définie positive si xTAx > 0 pour tout x∈Rn,
x ≠0.

Semi-définie Positive: Une matrice réelle A nxn est semi-définie positive si xTAx ≥ 0 pour
tout x∈Rn.

Définie Négative: Une matrice réelle A nxn est définie négative si xTAx <0 pour tout
x∈Rn, x≠0.

Semi-définie Négative: Une matrice réelle A nxn est semi-définie négative si xTAx ≤ 0
pour tout x∈Rn.

Indéfinie: A est indéfinie si xT Ax>0 pour certains x∈Rn et xTAx < 0 pour autre x∈Rn.

Notons que :
A+ AT
xT Ax= xT x= xT As x ,
2

où As est la partie symétrique de la matrice A. Donc, l'essai de la définition d'une matrice peut
être fait en considérant seulement la partie symétrique de A.

Théorème A.1 [Lewis et al. 1993]

Soit A=[aij] une matrice nxn réelle symétrique. En conséquence, toutes les valeurs
propres de A sont réelles. Nous avons alors ce qui suit :

Définie Positive: Une matrice réelle A nxn est définie positive si toute ses valeurs propres
sont positives.

Semi-définie Positive: Une matrice réelle A nxn est semi-définie positive si toute ses
valeurs propres ne sont pas négatives.

172
Annexes

Définie Négative: Une matrice réelle A nxn est définie négative si toute ses valeurs
propres sont négatives.

Semi-définie Négative: Une matrice réelle A nxn est semi-définie négative si toute ses
valeurs propres ne sont pas positives.

Indéfinie: A est indéfinie si xTAx>0 pour certains x∈Rn et xTAx < 0 pour autre x∈Rn. Donc,
Une matrice réelle A nxn est indéfinie si certaines de ses valeurs propres sont positives et les
autres sont négatifs.

Définition A.2 [Lewis et al. 1993]


Dans toutes les parties de cette définition xe est un point d'équilibre au temps t0, et
. dénote n'importe quelle norme de fonction définie précédemment.

Stabilité: xe est stable à t0 au sens de Lyapunov (SL), si tout état commençant au voisinage
de xe à t0, restera toujours près de xe quelque soit t. Plus précisément, xe est SL à t0 si pour
chaque ∈> 0 donné, il existe δ(∈,t0) positif tels que si:

x0 − xe <δ(∈,t0 )

alors,

x(t)−xe <∈ pour tous t≥t0

xe est stable au sens de Lyapunov s'il est stable pour n'importe quel t0 donné.

Instabilité: xe est instable au sens de Lyapunov (IL) si tout état commençant au voisinage
de xe à t0, ne restera pas confiné à proximité de xe à un temps postérieur. En d'autres termes, xe
est instable s'il n'est pas stable à t0.
Convergence: xe est convergent (C) à t0, si les états commençant près de xe convergeront
par la suite à xe . En d'autres termes, xe est convergent à t0 si pour n’importe ∈1 positif, il
existe δ1 (t0) positif et T(∈1,x0,t0) positif tels que si

x0 − xe <δ1 (t0 )

alors,

x(t)− xe <∈1 pour tous t ≥t0 +T(∈1, x0,t0 )

xe est convergent s'il est convergent pour n'importe quel t0 .

Stabilité Asymptotique: xe est asymptotiquement stable (AS) à t0 si les états commençant


suffisamment près de xe resteront éventuellement prés et convergeront par la suite à xe. Plus

173
Annexes

précisément, xe est AS à t0 s’il est convergent et stable à t0. xe est AS si il est AS à n'importe
quel t0.
Stabilité Asymptotique Globale: xe est globalement asymptotiquement stable (GAS) à t0 si
n'importe quel état initial restera près de xe et convergera par la suite à lui. En d'autres termes,
xe est GAS s'il est stable à t0, et si chaque x(t) converge à xe lorsque t tend vers l'infini. xe est
GAS s'il est GAS pour n’importe t0 et le système serait GAS dans ce cas, puisqu'il peut avoir
un seul point d'équilibre xe .

Définition A.3 [Lewis et al. 1993]


Dans toutes les parties de cette définition, xe est un point d'équilibre au temps t0.

Stabilité Uniforme: xe est uniformément stable (US) sur [t0, ∞) si δ(∈,t0) dans la définition
A.2 est indépendant de t0.
Convergence Uniforme: xe est uniformément convergent (UC) sur [t0,∞) si δ1(t0) et
T(∈1,x0,t0) de définition A.2 peuvent être choisi indépendants de t0.
Stabilité Asymptotique Uniforme: xe est uniformément, asymptotiquement, stable (UAS)
sur [t0, ∞) s'il est US et UC.
Stabilité Asymptotique Uniforme Globale: xe est globalement, uniformément,
asymptotiquement stable (GUAS) s'il est US et UC.
Stabilité Exponentielle Globale: xe est globalement exponentiellement stable (GES) s’il
existe α>0 et β>0 tels que pour tous x0∈Rn.

x(t)− xe <α x0 e− β(t −t0) , t ≥t0

Notons que GES implique GUAS.

Définition A.4 [Lewis et al. 1993]


Bornitude: xe est borné (B) à t0 si les états commençant près de xe ne deviendront jamais
trop lointains. En d'autres termes, xe est borné à t0 si pour tout δ>0 tels que

x0 − xe <δ

il existe ∈(r,t0 )<∞ positif tels que pour tous t≥t0

x(t)− xe <∈(r,t0 )

xe est borné s'il est borné pour tout t0.

Bornitude Uniforme: xe est uniformément borné (UB) sur [t0, ∞) si ∈(r,t0) peut être posé
indépendant de t0.

174
Annexes

Bornitude ultime Uniforme: xe est dit uniformément ultimement borné (UUB) si les états
commençant près de xe deviendront par la suite bornés. Plus précisément, xe est UUB si pour
tout δ,∈>0, il existe un temps fini T(∈,δ) tels que quand x0 − xe <δ , ce qui suit est satisfait:

x(t)− xe ≤∈ pour tous t ≥T(∈,δ)

Bornitude Ultime Uniforme Globale: xe est dit globalement uniformément ultimement


borné (GUUB) si pour ∈>0, il existe un temps fini T(∈) tels que :

x(t)− xe ≤∈ pour tous t ≥T(∈)

Théorème A.2: Lyapunov [Lewis et al. 1993]

Etant donné le système non-linéaire


x& = f(t, x) x(0)= x0

avec un point d'équilibre à l'origine [i.e., f(t,0)=0], et soit N un voisinage de l'origine ;


c'est-à-dire,
N =[x; x est petit ]

alors,

Stabilité: l'origine est stable au sens de Lyapunov si pour x∈N il existe une fonction
scalaire V(t,x)avec un dérivé partiel continu tels que

(1) V(t,x) est définie positive


(2) V&(t, x) est semi-définie négative

Stabilité Uniforme: l'origine est uniformément stable si en plus de (1) et de (2)


(3) V(t, x)≤ β ( x ) pour tous t ≥0 et tout x∈N et N = R n

Stabilité Asymptotique: L'origine est asymptotiquement stable si V(t,x) satisfait (1) et


(4) V&(t, x) est définie négative

Stabilité asymptotique globale: l'origine est globalement, asymptotiquement stable si


V(t,x) vérifie (1) et (4) pour tous x∈Rn (i.e., si N=Rn).

Stabilité Asymptotique Uniforme: l'origine est UAS si V(t,x) satisfait (1), (3) et (4).

Stabilité Asymptotique Uniforme Globale: l'origine est GUAS si N=Rn et si V(t,x) satisfait
(1), (3), (4) et
(5) V(t,x) va uniformément à l'infini dans le temps quand x →∞ .

175
Annexes

Stabilité Exponentielle: L'origine est exponentiellement stable s’il existe des constantes
positives α, β et γ tels que.
(6) α x ²≤V(t, x)≤ β x ² et V& (t, x)≤−γ x ² pour tous x∈N

Stabilité Exponentielle Globale : L'origine est globalement exponentiellement stable si


(6) est vrai pour tout le x∈Rn.

Lemme A.1 Barbalat [Lewis et al. 1993]

Soit une fonction f(t) dérivable.


df
Première version : Si f&(t)= est uniformément continue et lim f(t)<∞, alors
dt t →+∞
lim f&(t)=0.
t →+∞

Deuxième version : Si f(t)≥0, f&(t) est bornée, alors lim f&(t)=0.


t →+∞

Théorème A.3 : LaSalle [Lewis et al. 1993]


Considérons un système non linéaire décrit par x& = f(t). Supposons qu’il existe une
fonction V de Lyapunov définie positive vérifiant lim V(x) →∞ et V&(x)≤0 pour tout x∈R n .
x →+∞

{ }
Définissons un voisinage D= x∈R n /V&(x)=0 et supposons que la seule trajectoire contenue

dans D soit la trajectoire triviale, alors le point d’équilibre x=0 est globalement
asymptotiquement stable.

Théorème A.4 [Lewis et al. 1993]

Donnons un système linéaire à temps invariant


x&(t)= Ax(t)

Le système est stable si et seulement s’il existe une solution définie positive P à
l'équation
AT P + PA=−Q

où Q est une matrice définie positive arbitraire.

Théorème A.5 [Dawson et al. 1990]

Si V(.) est une fonction de Lyapunov pour un système à temps continu donné avec la
propriété
2 2
γ 1 x(t) ≤V(t, x)≤γ 2 x(t)

V&(t, x)≤0 si η1 < x(t) <η2

176
Annexes

12
⎛λ ⎞
où η2 >⎜ 2 ⎟ η1
⎜λ ⎟
⎝ 1⎠

avec λ1, λ2 deux scalaires positive, alors


12
⎛λ ⎞
x(t) <⎜ 2 ⎟ (η1 +ε), ∀ t∈[t0,t1 ]
⎜λ ⎟
⎝ 1⎠

où ε est une petite constante positive arbitraire.

Théorème A.6 [Dawson et al. 1990]

Soit V(.) une fonction de Lyapunov pour n'importe quel système à temps continu donné
avec les propriétés :
γ 1 ( x(t) )≤V(t, x)≤γ 2( x(t) )

V&(t, x)≤−γ 3 ( x(t) )+γ 3 (η)

où η est une constante positive, γ1(.) et γ2(.) sont des fonctions croissantes strictement
continues, γ3(.) est une fonction non décroissante et continue. Si V&(t, x)≤0 pour tous x >η ,
alors le système donné à la propriété de bornitude ultime uniforme. C'est, si x(t) est une
solution du système avec l'état initial x(t0), alors en donnant la quantité
d s >(γ 1−1oγ 2)(η)

Nous avons
x(t) <d s

Pour chaque t∈[t0 +T,∞) , où

⎧ 0 si x(t0 ) ≤ηs
⎪⎪
( )
T =⎨γ 2 x(t0 ) −γ 1 (ηs )
⎪ si x(t0 ) >ηs
⎪⎩ γ 3 (ηs )−γ 3 (η)

et ηs =(γ 2−1oγ 1 )(d s )

Dans plusieurs d'autres résultats, équation (1.7.14) peut être trouvé comme
V&(t, x )≤ g( x )<0

où g( x ) est un polynôme du second degré de ses arguments [Berghuis 1993]

177
Annexes

Définition [Berghuis 1993]

Supposons que le système de la figure A.1 a le même nombre d'entrées et de sorties. Le


système serait passif si
T
∫ yT (τ)u(τ)dτ ≥γ
0

pour tous T >0 et γ> −∞ . et strictement passif s’il existe un δ>0 et γ> −∞ , tels que
T T
∫ yT (τ)u(τ)dτ ≥δ ∫uT (τ)u(τ)dτ +γ
0 0

pour tous T >0.

Un système passif est en effet qui ne crée pas d'énergie.

u(t) Système y( t )

Figure A.1 Description entrée-sortie des systèmes non linéaires

Théorème A.7 [Berghuis 1993]

Considérons le système du retour d’état de la figure A.2, où

s1=H1v, v = -H2s

où H1 et H2 plan L2e dans L2e, et supposons qu’il existe des solutions s et v dans L2e. Assumons
que H1 est passive et H2 est strictement passive, ainsi
T
s,v ≡ ∫ sT (σ)v(σ)dσ ≥−α
0
T
2
−v,s ≡ ∫vT (σ)s(σ)dσ ≥ β s 2T
0

α >0, β >0. alors, s∈L2

Feedforward
0 H1 s

-
+
-v H2 0

Retour d’état

Figure A.2 Interconnection du retour d’état de deux systemes

178

View publication stats