Memoire Finale Kaddour
Memoire Finale Kaddour
Memoire Finale Kaddour
A ma femme et ma fille,
Je remercie ALLAH le tout puisant de m’a donné le courage et la volonté de mener à terme
ce présent travail.
Je remercie tout les enseignants qu’ils nous ont enseigné dans les deux années passées et le
chef de département ST et aussi mes amis pour leur soutient.
Abstract
In the frame of this work, we are interested in the problem of adaptive control of rigid
robot manipulators. We will introduce some basics concepts of this system, 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 stage required for the dynamic modeling of robot manipulators is
explained. In particular, a detailed presentation of the Lagrange formalism, which in used for
the calculation of the dynamic model of robot manipulators is made. The model of the robot
manipulators SCARA 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, those used for the problem of trajectory tracking based
on the linearisation of the feedback (computed torque), and those based on the theory of
Lyapunov (Paden and Panja). Then, a synthesis of adaptive control law used for rigid robot
manipulator. All the control approaches considered in this work will be validate through the
simulation results obtained in the case study of the robot manipulator SCARA with three
degree of freedom.
Key words : non linear systems, dynamic model of robot manipulator, Robot manipulator
SCARA, classical control laws, regulation problem, computer torque, trajectory problem,
adaptive control, asymptotic stability.
Résumé
Mots clés : systèmes non linéaire, modèle dynamique des robots manipulateurs, robot
manipulateur Scara, lois de commande classiques, commande point à point, commande de
Paden et Panja, commande couple calculé, commande adaptative, stabilité asymptotique.
Tables des matières
3.1. INTRODUCTION………………………………………………………………….. 34
3.2.1. Introduction……………………………………………………………... 34
3.2.2. Principe de la commande……………………………………………….. 35
3.3. PROBLEME DE POURSUITE DE TRAJECTOIRE……………………………… 37
3.3.1. Introduction……………………………………………………………... 37
3.3.2. Loi de commande de Paden et Panja……………………………………. 38
3.4. COMMANDE COUPLE CALCULE ( COMPUTED TORQUE CONTROL )…… 39
3.4.1. Introduction……………………………………………………………... 39
3.4.2. Loi de commande……………………………………………………….. 40
3.4.3. Etude de la stabilité……………………………………………………… 41
3.5. APPLICATION A UN ROBOT MANIPULATEUR A TROIS DEGREE DE
LIBERTE………………………………………………………………………………… 43
3.5.1. Introduction……………………………………………………………… 43
3.5.2. Résultats de simulation………………………………………………….. 43
3.6. CONCLUSION……………………………………………………………………... 51
Notion et Abréviations
𝑗_1
𝐴𝑗 Matrice d’orientation de la base du repère 𝑅𝑗
𝑔 Vecteur de gravité
𝐿(𝑞, 𝑞̇ ) Le Lagrangien
𝑞𝒅 Position désirée
𝑞̇ 𝑑 Vitesse désirée
𝑞̈ 𝑑 Accélération désirée
𝑖
𝑟 Vecteur des coordonnées d’un point du segment 𝑖
𝑖
𝑟̅ Vecteur des coordonnées du centre du segment 𝑖
𝑡 Le temps
𝑗_1
𝑇𝑗 Matrice de transformation homogène
𝑣 Vecteur de vitesse
𝑥̇ Dynamique de 𝑥
𝛼 Constante scalaire
𝛽 Constante scalaire
𝜃̃ Erreur paramétrique
Figure 2.1 La structure géométrique d’un robot manipulateur à chaîne ouverte simple
Figure 2.4 Configuration de Denavit-Hartenberg des trois premiers degrés de liberté du robot
SCARA (RRP)
Figure 3.4 Les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande point à point
Figure 3.5 Les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande de Paden et Panja
Figure 3.6 Les poursuites de trajectoire de vitesse et des erreurs de vitesse avec la loi de
commande de Paden et Panja
Figure 3.7 Les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande couple calculé
Liste des figues
Figure 3.8 Les poursuites de trajectoire de vitesse et des erreurs de vitesse avec la loi de
commande couple calculé
Figure 4.1 Schéma synoptique de la commande adaptative du couple calculé avec mesure de
l’accélération
Figure 4.2 Les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande adaptative basée sur le couple calculé (loi d’adaptation du type gradient)
Figure 4.3 Les poursuites des masses et des erreurs de poursuite des masses avec la loi de
commande adaptative basée sur le couple calculé (loi d’adaptation du type gradient)
Tableau 2.1 Table représentant les valeurs des paramètres du robot Scara en simulation
Tableau 2.2 Paramètres de Denavit-Hartenberg des trois premiers degrés de liberté du robot
Scara
Introduction Générale
Introduction générale
Avec le nombre croissant des robots manipulateurs utilisés dans l’industrie pendant
ces dernières décennies, la commande de poursuite de trajectoire des manipulateurs avec des
paramètres dynamique inconnus ou variant dans le temps est devenue un domaine de
recherche très important. Pour avoir une convergence asymptotiquement ou exponentielle
globale de l’erreur de poursuite en tenant compte les conditions citées ci-dessus, les lois de
commande classique, qui sont basées sur la supposition de la connaissance parfaite du modèle
dynamique du robot ne peuvent pas être utilisées. Par conséquent, la nécessité de recourir à la
commande adaptative est très importante.
Dans le deuxième chapitre 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. En utilisant la description de Denavit-Hartenberg
Standard. 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. Nous terminons ce chapitre par une élaboration d’un modèle
dynamique des trois premiers degrés de liberté du robot Sacra. Ce modèle est utilisé dans les
autres chapitres pour valider l’étude théorique présentée dans ce mémoire.
Dans le troisième chapitre, nous étudions trois lois de commande classique, nous
commençons par la commande point à point. Après nous étudions les deux lois de commande
qui traitent le problème de poursuite de trajectoire, où nous allons traiter la commande de
Paden et Panja et la commande nommée couple calculé type PD. A la fin de ce chapitre, nous
2
Introduction générale
appliquons ces lois de commande au modèle dynamique du robot manipulateur Sacra établi
dans le deuxième chapitre.
3
Chapitre 1
1.1 Introduction
Le bras manipulateur est un système de positionnement. Pour contrôler cette position,
les propriétés dynamiques de ce bras doivent être connues. Vu le nombre de degrés de liberté
qui peut avoir lieu, la détermination de ces propriétés dynamiques n'est pas un processus
facile [2].
La plus part des systèmes dynamiques sont non linéaires, Dans les systèmes
dynamiques non linéaires (SDNL) l'évolution de chacun des constituants dépend en général
de celle de plusieurs autres constituants, et ce de façon non proportionnelle ou non additive
(non linéaire), qui n’admit pas le principe de superposition.
Les systèmes dynamiques non linéaires sont par exemple nécessaires à la formation de
structures spontanées dans la nature.
5
Chapitre 1 Généralité sure les robots manipulateurs rigides
machines polyvalentes sont généralement étudiées pour effectuer la même fonction de façon
cyclique et peuvent être adaptées à d’autre fonction sans modification permanence du
matériel.
Cette définition est le reflet des différentes composantes d’une cellule robotisée, le
mécanisme : ayant une structure plus ou moins proche de celle du bras humain, il permet de
remplacer ou de prolonger son action (le terme "manipulateur" exclut implicitement les robots
mobiles autonomes). Sa motorisation est réalisée par des actionnaires électriques,
pneumatiques ou hydrauliques qui transmettent leurs mouvements aux articulations par des
systèmes appropriés [2].
La robotique est donc une science pluridisciplinaire qui requiert des connaissances en
mécanique, électrotechnique, traitement du signal, informatique, communication,
automatique….
6
Chapitre 1 Généralité sure les robots manipulateurs rigides
Sous le terme organe terminal, on regroupe tous dispositif destiné à manipuler des
objets (dispositifs de serrage, dispositifs magnétiques, à dépression …) ou à les transformer
(outils, torche de soudage, pistolet de peinture…). Il s’agit donc d’une interface permettant au
robot d’interagir avec son environnement. Un organe terminal peut être multifonctionnel,
c’est-à-dire qu’il est équipé de plusieurs dispositifs ayant des fonctionnalités différentes.
Il peut aussi être monofonctionnel mais interchangeable, un robot, enfin, peut être
multi-bras, chacun des bras portant un organe terminal différent. Par la suite nous utilisons
indifféremment le terme organe terminal, préhenseur, outil ou effecteur pour nommer le
dispositif d’interaction fixé à l’extrémité mobile de la structure mécanique [2].
Le rôle de la structure mécanique articulée est d’amener l’organe terminal dans une
situation (position et orientation) donnée, selon des caractéristiques de vitesse et
d’accélération donnée. Son architecture est une chaine cinématique de corps, généralement
rigides ou supposée comme tels, assemblés par des liaisons appelées articulations. Les chaines
peuvent être soit ouvertes simples, soit arborescentes, soit fermées.
1.4.3. Articulations
Une articulation lie deux corps successifs en limitant le nombre de degrés de liberté de
l’un par rapport à l’autre. Soit m le nombre de degrés de liberté résultant de la mobilité de
l’articulation. La mobilité est tell que :
0≤m≤6
Lorsque m = 1 , ce qui est le cas le plus fréquent en robotique, l’articulation est dite simple,
soit rotoïde, soit prismatique [2].
Il s’agit d’une articulation de type pivot, réduisant le mouvement entre deux corps à
une rotation autour d’un axe commun. La situation relative entre les deux corps est données
7
Chapitre 1 Généralité sure les robots manipulateurs rigides
par l’angle autour de cet axe. L’articulation rotoïde est représentée par le symbole de la
figure1.1.
Il s’agit d’une articulation de type glissière réduisant le mouvement entre deux corps à
une translation le long d’un axe commun. La figure 1.2 donne sa représentation symbolique.
La situation relative entre les deux corps est mesurée par la distance le long de cet axe
Un robot non redondant doit disposer de six degrés de liberté pour positionner et
orienter un solide quelconque dans l’espace .toute fois, si ce solide présente une symétrie de
révolution, cinq degrés de liberté suffisant puisque il n’est pas nécessaire de spécifier la
rotation autour de l’axe de révolution de même pour situer un corps dans un plan, il ne faut
que trois degrés de liberté : deux fixent les cordonnée dans le plan et le troisième détermine
son orientation dans ce plan. A partir de ces constatations, on déduit que : les caractéristique
8
Chapitre 1 Généralité sure les robots manipulateurs rigides
des solides manipulés par le robot, donc la classe de tâches à réaliser, permettant de
déterminer le nombre de degrés de liberté dont il doit disposer une condition nécessaire mais
non suffisante pour qu’il ya compatibilité entre le robot et la tâche et que le nombre de degrés
de liberté de l’organe terminale du robot soit supérieure ou égale à celui de la tâche, le
mécanisme peut alors placer l’organe terminale dans la situation désirée.
On convient d’appeler les trois premiers degrés de liberté le porteur de robot. Les
degrés de liberté résiduels forment le poignet, caractérise par des dimensions beaucoup plus
petites et des masses faibles.
9
Chapitre 1 Généralité sure les robots manipulateurs rigides
Un robot est redondant lorsque le nombre de degrés de liberté de l’organe terminal est
inferieur 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émentaires autorisant leur
contournement.
1.7. Conclusion
Nous nous sommes contentés dans ce chapitre à donner quelques définitions de termes
concernant plus particulièrement les domaines de la modélisation et de la commande des
robots ces définitions reviendront très souvent dans ce travail.
10
Chapitre 2
2 .1. Introduction :
Nous terminons ce chapitre par une élaboration d’un modèle dynamique des trois
premiers degrés de liberté du robot Scara en utilisant les différentes étapes de la procédure
présentée dans ce chapitre. Ce model du robot est obtenu en vue de la validation du
développement théorique présenté dans ce mémoire [3], [4].
12
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
utilisée, et qui est considérée dans cette section. Cette représentation permet une description
homogène, avec un minimum de paramètres, des systèmes mécaniques articulaires à chaîne
ouvert simple [2]. La description géométrique est basée sur les règles et les conventions
suivantes :
Figure 2.1 La structure géométrique d’un robot manipulateur à chaîne ouverte simple.
Le passage d’un repère 𝑅𝑗−1 à un repère 𝑅𝑗 peut être déterminé complètement par les
quatre paramètres de Denavit-Hartenberg suivants (voir figure 2.2) :
13
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
𝑞𝑗 = (1- 𝜎𝑗 ) 𝜃𝑗 + 𝜎𝑗 𝑟𝑗 (1.1)
Où
𝑗_1
𝑇𝑗 = 𝑅𝑜𝑡(𝑥, 𝛼𝑗 )𝑇𝑅𝐴𝑁𝑆(𝑥, 𝑑𝑗 )𝑅𝑜𝑡(𝑍, 𝜃𝑗 ) 𝑇𝑅𝐴𝑁𝑆(𝑧, 𝑟𝑗 ) (1.2)
14
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
Avec :
1 0 0 0
0 cos 𝛼𝑗 −sin(𝛼𝑗 ) 0
𝑅𝑜𝑡(𝑥, 𝛼𝑗 ) = [ ] ( 1.3)
0 sin(𝛼𝑗 ) cos 𝛼𝑗 0
0 0 0 1
cos 𝜃𝑗 −sin 𝜃𝑗 0 0
sin 𝜃𝑗 cos 𝜃𝑗 0 0]
𝑅𝑜𝑡(𝑍, 𝜃𝑗 ) = [ (1.4)
0 0 1 0
0 0 0 1
1 0 0 𝑑𝑗
𝑇𝑅𝐴𝑁𝑆(𝑥, 𝑑𝑗 ) = [0 1 0 0] (1.5)
0 0 1 0
0 0 0 1
1 0 0 0
0 1 0 0
𝑇𝑅𝐴𝑁𝑆(𝑧, 𝑟𝑗 ) = [ 1 𝑟𝑗 ] (1.6)
0 0
0 0 0 1
Alors :
cos 𝜃𝑗 −sin 𝜃𝑗 0 𝑑𝑗
𝑗_1 cos 𝛼𝑗 sin 𝜃𝑗 cos 𝛼𝑗 cos 𝜃𝑗 −sin 𝛼𝑗 −𝑟𝑗 sin 𝛼𝑗
𝑇𝑗 = (1.7)
sin 𝜃𝑗 sin 𝛼𝑗 cos 𝜃𝑗 sin 𝛼𝑗 cos 𝛼𝑗 𝑟𝑗 cos 𝛼𝑗
[ 0 0 0 1 ]
𝑗_1 𝑗_1
𝑗_1
𝑇𝑗 = [ 𝐴𝑗 𝑃𝑗 ] (1.8)
000 1
𝑗_1
Où 𝐴𝑗 est une matrice ∈ 𝑅 3×3 qui définit l’orientation de la base du repère 𝑅𝑗 par rapport à
𝑗_1
celle du repère 𝑅𝑗−1, et 𝑃𝑗 est une matrice ∈ 𝑅 3×3 qui définit les coordonnées de l’origine
𝑂𝑗 du repère 𝑅𝑗 dans le repère 𝑅𝑗−1 .
15
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
2.3.1 Introduction
Le modèle dynamique d’un robot manipulateur est constitué par des formulations
mathématiques des équations de mouvement de ce robot. Les équations de mouvements sont
un ensemble d’équations différentielles décrivant le comportement dynamique du robot
manipulateur.
Il existe deux types de modèle dynamique : le modèle dynamique inverse utilisé dans
les applications de la commande, ce modèle fournit les couples articulaires, exercés par les
actionneurs, en fonction des positions, vitesses et accélérations articulaires, et le modèle
dynamique direct utilisé en simulation, qui fournit les accélérations articulaires en fonction
des positions, vitesses et couples articulaires.
Plusieurs méthodes sont utilisées pour obtenir le modèle dynamique inverse [4], [5].
Nous citons la formulation de Newton-Euler et la formulation de Lagrange-Euler. Nous
utilisons la formulation de Lagrange-Euler parce qu’elle est simple et systématique et décrit
le modèle dynamique du système en termes de travail et d’énergie en utilisant les coordonnées
généralisées.
𝑑 𝜕𝐿 𝜕𝐿
− =𝜏 (1.10)
𝑑𝑡 𝜕𝑞̇ 𝜕𝑞
16
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
i
Etant donné un point du corps "i" avec le vecteur de coordonnées r par rapport au
repère associé au corps considéré, les coordonnées de ce point dans le repère R 0 s’écrivent :
𝑟 = 0𝑇𝑖𝑖 𝑟 (1.11)
0 0
Avec Ti = T1 1T2 … i−1Ti une transformation homogène ∈ R4×4 qui est une
fonction des variables articulaires 𝑞1 , 𝑞2,…, 𝑞𝑖 par conséquent, dans le repère R 0 est donné
par l’expression :
𝑗−1
𝑑𝑟 𝜕 0𝑇𝑖
𝑣= = ∑{ 𝑞̇ } 𝑖𝑟 (1.12)
𝑑𝑡 𝜕𝑞𝑖
𝑖
∂ 0Ti
Puisque = 0 pour j > 𝑖, nous pouvons remplacer la limite supérieure de la
∂qi
𝑇
𝑣 = [ 𝑣𝑥 𝑣𝑦 𝑣𝑧 ] est :
1
𝑑𝑘𝑖 = ( 𝑣𝑥2 + 𝑣𝑦2 + 𝑣𝑧2 ) 𝑑𝑚
2
1 𝑇
= (𝑣 𝑣 )𝑑𝑚 (1.13. a)
2
En utilisant l’expression de la vitesse "𝑣" donnée par l’équation (1.12), nous obtenons :
𝑛 𝑛 𝑇
1 ∂ 0Ti i 𝑖 𝑇 𝜕 0Ti
𝑑𝑘𝑖 = { ∑ ∑ ( ) ( r 𝑟 𝑑𝑚) 𝑞̇ 𝑞 ̇ } (1.13. 𝑏)
2 ∂q i 𝜕𝑞𝑘 𝑗 𝑘
𝑗 𝑘
17
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
𝐾𝑖 = ∫ 𝑑𝐾𝑖 (1.14)
En substituant 𝑑𝑘𝑖 par l’expression (1.13.b), nous pouvons déplacer le symbole d’intégration
à l’intérieur des sommations. Alors, la matrice pseudo-inertie ∈ 𝑅 𝑛×𝑛 pour le corps "𝑖" est
donnée par :
𝐼𝑖 = ∫ 𝑖𝑟 𝑖𝑟 𝑇 𝑑𝑚 (1.15)
𝑛 𝑛 𝑇
1 ∂ 0Ti 𝜕 0Ti
𝐾𝑖 = 𝑡𝑟𝑎𝑐𝑒 {∑ ∑ ( ) Ii 𝑞̇ 𝑞 ̇ } (1.16)
2 ∂q i 𝜕𝑞𝑘 𝑗 𝑘
𝑗 𝑘
Où les intégrales sont prises sur le volume du corps "𝑖". C’est une matrice constante qui est
évaluée une fois pour chaque corps. Elle dépend de la géométrie et la distribution de la masse
du corps "𝑖". En effet, elle est exprimée en termes des moments d’inertie du corps "𝑖" :
18
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
𝐼𝑥𝑦 = ∫ 𝑥𝑦 𝑑𝑚
𝐼𝑥𝑧 = ∫ 𝑥𝑧 𝑑𝑚 (1.19)
𝐼𝑦𝑧 = ∫ 𝑦𝑧 𝑑𝑚
𝑚𝑥̅ = ∫ 𝑥 𝑑𝑚
𝑚𝑦̅ = ∫ 𝑦 𝑑𝑚 (1.20)
𝑚𝑧̅ = ∫ 𝑧 𝑑𝑚
𝑖
Avec "𝑚" est la masse totale du corps "𝑖" et 𝑟̅ = [𝑥̅ 𝑦̅ 𝑧̅ 1 ]𝑇 représente le vecteur des
cordonnées de centre de gravité du corps "𝑖" dans le repère 𝑅𝑖 , nous pouvons écrire :
Ces grandeurs sont soit données par les spécifications du constructeur, soit peuvent calculées
à partir des autres grandeurs.
𝑛 𝑛 𝑛 𝑛 𝑇
1 ∂ 0Ti 𝜕 0Ti
𝑘 = ∑ 𝑘𝑖 = ∑ 𝑡𝑟𝑎𝑐𝑒 {∑ ∑ ( ) Ii 𝑞̇ 𝑞 ̇ } (1.22. 𝑎)
2 ∂q i 𝜕𝑞𝑘 𝑗 𝑘
𝑖=1 𝑖=1 𝑗 𝑘
Puisque la trace d’une somme des matrices est la somme des traces individuelles, nous
pouvons interchanger les sommations et l’opérateur de la trace pour obtenir :
19
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
𝑛 𝑛
1
𝑘 = ∑ ∑ 𝑚𝑗𝑘 (𝑞) 𝑞𝑗̇ 𝑞𝑘̇ (1.22. b)
2
𝑗=1 𝑘=1
Où
1 𝑇
𝑘= 𝑞̇ 𝑀(𝑞)𝑞̇ (1.22. 𝑐)
2
Où la matrice d’inertie du bras 𝑀(𝑞) ∈ 𝑅 𝑛×𝑛 a les éléments génériques définis comme suit :
𝑛 𝑇
∂ 0Ti 𝜕 0Ti
𝑚𝑗𝑘 (𝑞) = ∑ 𝑡𝑟𝑎𝑐𝑒 {( )I } (1.23. 𝑎)
∂qi i 𝜕𝑞𝑘
𝑖=1
∂ 0Ti
Puisque = 0 pour j > i, nous pouvons écrire :
∂qi
𝑛 𝑇
∂ 0Ti 𝜕 0Ti
𝑚𝑗𝑘 (𝑞) = ∑ 𝑡𝑟𝑎𝑐𝑒 {( )I } (1.23. 𝑏)
∂q i i 𝜕𝑞𝑘
𝑖=max(𝑗,𝑘)
Si le corps 𝑖 a une masse 𝑚𝑖 est un centre de gravité 𝑖𝑟̅ exprimé dans les coordonnées
du repère 𝑅𝑖 l’énergie potentielle du corps est donnée par :
Où 0𝑔𝑇 est le vecteur de gravité exprimé avec les coordonnées de repère de base 𝑅0 ainsi :
𝑔𝑇 = [ 𝑔𝑥 𝑔𝑦 𝑔𝑧 ]
20
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
𝑛 𝑛
𝑑 𝜕𝐾 𝜕𝐾 𝜕𝑈
− + =𝜏 (1.26)
𝑑𝑡 𝜕𝑞̇ 𝜕𝑞𝑘 𝜕𝑞𝑘
𝑛 𝑛
𝑑 𝜕𝐾 𝑑 1 1
= { ∑ 𝑚𝑖𝑘 (𝑞) 𝑞𝑖̇ + ∑ 𝑚𝑖𝑘 (𝑞) 𝑞𝑗̇ }
𝑑𝑡 𝜕𝑞̇ 𝑑𝑡 2 2
𝑖 𝑗
𝑛
𝑑
= {∑ 𝑚𝑘𝑗 (𝑞) 𝑞𝑗̇ }
𝑑𝑡
𝑗
𝑛 n
𝑑 𝑚𝑘𝑗 (𝑞)
= ∑ 𝑚𝑘𝑗 (𝑞) 𝑞𝑗̈ + ∑ 𝑞𝑗̇
𝑑𝑡
𝑗 i,j
𝑛 n
𝑑 𝑚𝑘𝑗 (𝑞)
= ∑ 𝑚𝑘𝑗 (𝑞) 𝑞𝑗̈ + ∑ 𝑞𝑗̇ (1.27)
𝑑𝑞𝑖 𝑞𝑖̇
𝑗 i,j
n
𝜕𝐾 1 𝑑 𝑚𝐼𝑗 (𝑞)
= ∑ 𝑞𝑗̇ (1.28)
𝜕𝑞𝑘 2 𝑑𝑞𝐾 𝑞𝐼̇
i,j
𝑛 𝑛 𝑛
𝜕𝑚𝑘𝑗 (𝑞) 1 𝜕𝑚𝑖𝑗 (𝑞) 𝜕𝑈
∑ 𝑚𝑘𝑗 (𝑞) 𝑞𝑗̈ + ∑ { − ∑ } 𝑞̇ 𝑖 𝑞̇ 𝑗 + = 𝜏𝑘 (1.29)
𝜕𝑞𝑖 2 𝜕𝑞𝑘 𝜕𝑞𝑘
𝑗 𝑖,𝑗 𝑖,𝑗
21
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
𝑛 𝑛
𝜕𝑚𝑘𝑗 (𝑞) 1 𝜕𝑚𝑘𝑗 (𝑞) 𝜕𝑚𝑘𝑖 (𝑞)
∑ 𝑞̇ 𝑖 𝑞̇ 𝑗 = ∑ { + } 𝑞̇ 𝑖 𝑞̇ 𝑗 (1.30)
𝜕𝑞𝑖 2 𝜕𝑞𝑖 𝜕𝑞𝑗
𝑖,𝑗 𝑖,𝑗
Donc
𝑛
𝜕𝑚𝑘𝑗 (𝑞) 1 𝜕𝑚𝑖𝑗 (𝑞) 1 𝜕𝑚𝑘𝑗 (𝑞) 𝜕𝑚𝑘𝑖 (𝑞) 𝜕𝑚𝑖𝑗 (𝑞)
∑{ − } 𝑞̇ 𝑖 𝑞̇ 𝑗 = ∑ { + − } 𝑞̇ 𝑖 𝑞̇ 𝑗 (1.31)
𝜕𝑞𝑖 2 𝜕𝑞𝑘 2 𝜕𝑞𝑖 𝜕𝑞𝑗 𝜕𝑞𝑘
𝑖,𝑗
Les termes
Sont appelés symboles de Christoffel. Nous remarquons que, pour un 𝑘 donné, nous avons
𝜕𝑈
𝐺𝑘 = (1.33)
𝜕𝑞𝑘
𝑛 𝑛
Où
22
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
𝐶(𝑞, 𝑞̇ ) : matrice des forces centrifuges et de Coriolis ∈ 𝑅 𝑛×𝑛 dont les éléments sont :
𝑛
1 𝜕𝑚𝑘𝑗 (𝑞) 𝜕𝑚𝑘𝑖 (𝑞) 𝜕𝑚𝑖𝑗 (𝑞)
=∑ { + − } 𝑞𝑖̇ (1.36)
2 𝜕𝑞𝑖 𝜕𝑞𝑗 𝜕𝑞𝑘
𝑖
SCARA est (Selective Compliant Articulated Robot for Assembly) montré dans la figure
(2.3), est une configuration très connue. Comme son nom sous-entend il est spécialement
conçu pour les opérations d’assemblage. Quoique le robot SCARA a une structure RRP figure
2.4, il est tout à fait différent de la configuration sphérique ni dans l’apparence ni dans le
domaine d’application. A la différence du designe sphérique qui a z0, z1, z2 mutuellement
perpendiculaires, le robot SCARA a z0, z1, z2 parallèles.
23
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
Les valeurs des paramètres du robot Scara, utilisées en simulation sont données par le tableau
suivant :
Tableau 2.1 table représentant les valeurs des paramètres du robot Scara en simulation.
articulation 𝑖 𝛼 𝑑 𝑟 𝜃𝑖𝑛𝑖𝑡𝑖𝑎𝑙
1 0 0 0 0
2 0 L1 0 0
3 0 L2 𝑑3 0
24
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
Tableau 2.2 paramètres de Denavit-Hartenberg des trois premiers degrés de liberté du robot
Scara
Dans cette section, nous allons calculer le modèle dynamique du robot Scara en se
basant sur les formules présentées dans ce chapitre et en utilisant le logiciel de calcul
mathématique Maple pour déterminer les éléments de la matrice 𝑀 et 𝐶 et les éléments de 𝐺.
Nous présentons maintenant les matrices de passage d’un repère à un autre.
cos(𝑞1 ) −sin(𝑞1 ) 0 0
0 sin(𝑞1 ) cos(𝑞1 ) 0 0]
𝑇1 = [ (1.37)
0 0 1 0
0 0 0 1
cos(𝑞2 ) −sin(𝑞2 ) 0 𝑙1
1 sin(𝑞2 ) cos(𝑞2 ) 0 0]
𝑇2 = [ (1.38)
0 0 1 0
0 0 0 1
1 0 0 𝑙2
2
𝑇3 = [0 1 0 0] (1.39)
0 0 1 𝑑3
0 0 0 1
𝑐1 𝑐2 − 𝑠1 𝑠2 −𝑐1 𝑠2 − 𝑠1 𝑐2 0 𝑐1 𝑙1
𝑠 𝑐 + 𝑐1 𝑠2 𝑐1 𝑐2 − 𝑠1 𝑠2 0 𝑠1 𝑙1
0
𝑇2 = [ 1 2 ] (1.40)
0 0 1 0
0 0 0 1
Trouvons tout d’abord les matrices pseudo-inertie. Pour des raisons de simplification
du calcul et d’absence des valeurs des paramètres, nous considérons que les corps du bras sont
25
Chapitre 2 Modélisation dynamique des robots manipulateurs rigides
des tiges. Donc tous les produits d’inerties sont nuls, ainsi que les moments d’inertie par
rapport aux axes 𝑥 et 𝑦.
2. 5 Conclusion
26
Chapitre 3
Commandes Dynamiques Classiques Des
Robots Manipulateurs Rigides
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
3.1 Introduction
Pour qu’un bras d’un robot manipulateur atteigne une position désirée ( régulation )
ou bien suive un trajectoire pré-définie ( poursuite ), la loi de commande doit avoir certaines
propriétés (robustesse, rapidité, convergence ou stabilité) il ya plusieurs lois de commandes
de type P.D ou P.I.D qui ont l’avantage de la non exigence ni de la structure ni des paramètres
du modèles mais leur ajustement, pour avoir une stabilité asymptotique globale, est parfois
très difficile ou même impossible [5]. Une autre loi de commande toujours de type P.D mais
avec une compensation de l’effet de gravité ou éventuellement des frottements appelée aussi
point-à-point [7]. Cependant cette commande ne peut être utilisée que lorsqu’il s’agit des
problèmes de régulation.
Lorsqu’il s’agit des problèmes de poursuite, d’autres lois de commande ont été
utilisées à savoir la poursuite de trajectoire basées sur la théorie de Lyaponuv et celle sur la
linéarisation (ou le couple calculé). Dans ce chapitre, nous allons étudier la loi de commande
point-à-point et deux lois de commande qui traitent le problème de poursuite de trajectoire (la
loi de commande couple calculé et la loi de Paden et Panja).
3. 2 Commande point-à-point
3.2.1 Introduction
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és. 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é. Ce type de loi de commande s’appelle commande point à
34
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
point. L’objectif de cette loi de commande consiste à maintenir les positions articulaires du
robot manipulateur autour d’une valeur désirée constante 𝑞𝑑 [8].
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 que 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 :
𝑀(𝑞)(𝑞̈ − 𝜏0 ) = 0 (3.2)
En tenant compte du fait que la matrice M(q) est régulière, nous aurons n système
linéaires découplés :
𝑞̈ = 𝜏0 (3.3)
𝜏0 = 𝑘𝑝 (𝑞𝑑 − 𝑞) − 𝑘𝑣 𝑞̇ (3.4)
35
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
A partir des équations (3.15) et (3.16), 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 :
𝑞̈ + 𝑘𝑣 𝑞̇ + 𝑘𝑝 𝑞̃ = 0 (3.5)
Où
̃𝑞 = 𝑞 − 𝑞𝑑 (3.6)
L’équation d’erreur (3.17) est asymptotiquement stable par un choix convenable des
matrices des gains 𝑘𝑝 et 𝑘𝑣 . Pour montrer cela, nous pouvons écrire l’équation d’erreur sous
la forme d’espace d’état, avec 𝑥 = (𝑞̃ 𝑇 , 𝑞̇ 𝑇 )𝑇 :
0 𝐼
𝑥̇ = [−𝑘 − 𝑘𝑣 ] 𝑥 = 𝐴𝑥 (3.7)
𝑝
36
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
𝐴 est une matrice stable puisque les matrices 𝑘𝑣 et 𝑘𝑝 sont définies positives. Donc nous
pouvons trouver, pour une matrice 𝑄 > 0, une matrice 𝑃 symétrique définie Positive
satisfaisant :
𝑃 = 𝑃𝑇 > 0
𝐴𝑇 𝑃 + 𝑃𝐴 = −𝑄 (3.8)
Pour démontrer que le point d’équation 𝑥 = 0 est stable, nous choisissons la fonction
candidate de Lyapunov comme suit :
𝑉(𝑥) = 𝑥 𝑇 𝑃𝑥 (3.9)
= 𝑥 𝑇 (𝐴𝑇 𝑃 + 𝑃𝐴 )𝑥 (3.11. 𝑏)
𝑉̇ (𝑥) = −𝑥 𝑇 𝑄𝑥 (3.12)
Qui est une fonction définie négative, ce qui implique que le point d’équilibre (𝑞̃̇ , 𝑞̃) = (0,0)
est asymptotiquement stable.
3.3.1. Introduction
37
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
Cette loi de commande appartient à la classe des commandes basées sur la théorie de
Lyapunov, elle est donnée par :
𝜏 = 𝑀(𝑞)𝑞̈ 𝑑 (𝑡) + 𝐶(𝑞, 𝑞̇ )𝑞̇ 𝑑 (𝑡) + 𝐺(𝑞) − 𝑘𝑝 (𝑞 − 𝑞𝑑 (𝑡)) − 𝑘𝑣 (𝑞̇ − 𝑞̇ 𝑑 (𝑡)) (3.13)
En remplaçant le couple 𝜏 du modèle dynamique (1.35) par la loi de commande (3.25), nous
obtenons la dynamique suivante du robot manipulateur (voir figure 3.2) :
38
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
𝐺(𝑞)
1 𝑇 1
𝑉(𝑞̃̇ , 𝑞̃, 𝑡) = 𝑞̃̇ 𝑀(𝑞̃ + 𝑞𝑑 (𝑡))𝑞̃̇ 𝑇 + 𝑞̃ 𝑇 𝑘𝑝 𝑞̃ (3.16)
2 2
dont la dérivée temporelle le long des trajectoires du système (3.26) est donnée par :
1
𝑉̇ (𝑞̃̇ , 𝑞̃, 𝑡) = 𝑞̃̇ 𝑇 𝑀(𝑞̃ + 𝑞𝑑 (𝑡))𝑞̃̈ + 𝑞̃̇ 𝑇 𝑀̇(𝑞̃ + 𝑞𝑑 (𝑡))𝑞̃̇ + 𝑞̃̇ 𝑇 𝑘𝑝 𝑞̃ ( 3.17)
2
𝑉̇ (𝑞̃̇ , 𝑞̃, 𝑡) = 𝑞̃̇ 𝑇 𝑘𝑣 𝑞̃̇ 𝑇 + 𝑞̃̇ 𝑇 𝑀̇(𝑞̃ + 𝑞𝑑 (𝑡)) − 2𝐶 (𝑞̃ + 𝑞𝑑 (𝑡), 𝑞̃̇ + 𝑞̇ 𝑑 (𝑡)) 𝑞̃̇ (3.18)
39
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
3.4.1. Introduction
La commande couple calculé a été développée au début des années soixante dix, dite
aussi linéarisante puisqu’elle est considérée comme une application spéciale de la
linéarisation en boucle fermée des systèmes non linéaires. Donc elle repose sur l’annulation
des termes non linéaires et le découplage de chaque segment [4], [6]. Son utilisation pour les
robots manipulateurs dépond de l’inversion de quelques termes du modèle dynamique du
robot, et pour cette raison elle s’appelle aussi la dynamique inverse [10].
En appliquant cette loi de commande au modèle dynamique du robot donné par l’équation
(2.37), nous aurons l’équation en boucle fermée suivante :
𝑀(𝑞)(𝑞 −
̈ 𝜏0 ) = 0 (3.21)
En prenant en considération que la matrice 𝑀(𝑞) est régulière (inversible), nous obtenons "𝑛"
systèmes linéaires découplés :
𝑞̈ = 𝜏0 (3.22)
Ou 𝜏0 est un terme auxiliaire de la commande avec une unité d’accélération, qui peut être
défini par un terme de compensation dynamique linéaire 𝑘(𝑝) en fonction de 𝑝 de type P.I.D
ou P.D et est exprimé ainsi :
40
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
𝑞̈ = 𝑞̈ 𝑑 − 𝑘(𝑝) 𝑞̃
𝑘(𝑝) = 𝑘𝑣 𝑝 + 𝑘𝑝 (3.25)
L’équation de l’erreur (3.7) est asymptotiquement stable par un choix convenable des
matrices 𝑘𝑝 et 𝑘𝑣 . Pour montrer cela, nous pouvons réécrire le système donné par l’équation
(3.7) sous forme d’espace d’état-à-dire [6] :
41
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
𝑥̇ = 𝐴(𝑥) (3.27)
0𝑛 𝐼𝑛
𝐴 = [−𝑘 (3.27)
𝑝 −𝑘𝑣 ]
Nous pouvons remarquer que 𝐴 est stable puisque les matrices 𝑘𝑣 et 𝑘𝑝 sont définies
positives. Donc nous pouvons trouver, pour une matrice 𝑄 > 0, une matrice 𝑃 symétrique
définie 𝑃 = 𝑃𝑇 > 0 positive satisfaisant :
𝐴𝑇 𝑃 + 𝑃𝐴 = −𝑄 (2.28)
𝑉(𝑥) = 𝑥 𝑇 𝑃𝑥 (3.29)
𝑉̇ (𝑥) = 𝑥 𝑇 𝐴𝑇 𝑃𝑥 + 𝑥 𝑇 𝑃𝐴𝑥
= 𝑥 𝑇 (𝐴𝑇 𝑃 + 𝑃𝐴 ) 𝑥 (3.30. 𝑏)
𝑉̇ (𝑥) = −𝑥 𝑇 𝑄𝑥 (3.31. 𝑐)
qui est une fonction définie négative. Donc, l’équation (3.26) est globalement
asymptotiquement stable. C’est-à-dire pour n’importe position initiale, l’erreur de poursuite
va converger asymptotiquement.
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
42
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
suffisamment puissant. Cependant, les paramètres du robot sont toujours connus partiellement
donc les performances du système n’atteignent jamais l’idéal.
3.5.1. Introduction
Pour simuler ces lois de commande avec le modèle dynamique du robot manipulateur
Scara obtenu dans le deuxième chapitre, nous avons recouru au logiciel Matlab avec
l’interface Simulink qui nous facilitera l’ajustement des gains des différentes matrices.
Les simulations de ce chapitre ont été faites en boucle fermée avec différentes loi de
commande à savoir la commande point à point la commande de poursuite trajectoire et aussi
la commande de couple calculé. Nous allons faire une comparaison entre ces trois lois de
commande, citées ci-dessus en tenant compte l’analyse de certaines performances, robustesse,
temps de convergence ou rapidité.
𝐶33 (𝑞, 𝑞̇ ) = 0
0
𝐺(𝑞) = [ 0 ]
−𝑚3
Les positions désirées utilisées dans la simulation pour la commande point à point sont :
43
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
Les trajectoires désirées utilisées dans la simulation pour la commande poursuite trajectoire et
la commande couple calculé sont :
Les paramètres convenable obtenus par simulation par exemple pour la commande du couple
calculé est les suivants :
1155 0 0 300 0 0
𝑘𝑝 = [ 0 900 0 ] ; 𝑘𝑣 = [ 0 30 0 ]
0 0 1960 0 0 300
Nous remarquons que les valeurs des gains 𝑘𝑝 et 𝑘𝑣 sont acceptables et peuvent être
réalisables.
Les figures (3.4, 3.5, 3.6, 3.7, 3.8) sont issues des simulations faites en boucle fermée
avec les trois lois de commande, qui sont la commande point à point, et la poursuite de
trajectoire de Padan et Panja et la commande de couple calculé dans le cas où les paramètres
sont considérés connus parfaitement (sans perturbation extérieure) et les variables de sorties
ne contiennent aucun bruit de mesure. Les simulations dans ce cas, considéré comme le cas
idéal, sont effectuées pour étudier, l’influence de ces conditions sur les performances de
chaque loi de commande.
44
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
erreur e1 (rad)
0.8 -0.2
0.6 -0.4
0.4 -0.6
0.2 -0.8
0 -1
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
1 0
position 2(rad)
erreur e2 (rad)
0.8 -0.2
0.6 -0.4
0.4 -0.6
0.2 -0.8
0 -1
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
0.15 -0.05
0.1 -0.1
0.05 -0.15
0 -0.2
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
Figure 3.4 les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande point à point.
45
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
erreur e1 (rad)
2
-0.5
1
-1
0
-1 -1.5
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
2 -0.2
position 2(rad)
erreur e2 (rad)
1.5 -0.4
1 -0.6
0.5 -0.8
0 -1
-0.5 -1.2
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
erreur e3 (rad)
2 -0.4
1.5 -0.6
1 -0.8
0.5 -1
0 -1.2
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
Figure 3.5 les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande de Paden et Panja.
46
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
-5
-2
-10 -4
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
-1
0
-2
-3
-5 -4
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
5
5
0
0
-5
-10 -5
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
Figure 3.6 les poursuites de trajectoire de vitesse et des erreurs de vitesse avec la loi de
commande de Paden et Panja.
47
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
erreur e1 (rad)
2
-0.4
1 -0.6
-0.8
0
-1
-1 -1.2
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
2
erreur e2 (rad)
-0.4
1.5
-0.6
1
-0.8
0.5 -1
0 -1.2
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
poursuite de position du 3 éme segment erreur de poursuit de position 3
3.5 0.2
réelle.
3 désirée. 0
2.5 -0.2
position 3 (rad)
erreur e3 (rad)
2 -0.4
1.5 -0.6
1 -0.8
0.5 -1
0 -1.2
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
Figure 3.7 les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande couple calculé.
48
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
5
4
2
0
0
-2
-5
-4
-10 -6
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
10
0
5
-5 -5
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
5
5
0
0
-5
-10 -5
0 1 2 3 4 0 1 2 3 4
time (s) time (s)
Figure 3.8 les poursuites de trajectoire de vitesse et des erreurs de vitesse avec la loi de
commande couple calculé.
49
Chapitre 3 Commandes dynamiques classiques des robots manipulateurs rigides
Il est clair d’après les figures précédentes que les performances de poursuite de ces
lois de commande donnent des bons résultats, c’est-à-dire la convergence des erreurs de
poursuite du système à zéro est garanti à cause de l’absence des perturbations externes.
3.6. Conclusion
Dans ce chapitre nous avons présenté trois lois de commandes dynamiques classiques
appliques aux robots manipulateurs rigides, soient celle qui traitent le problème de régulation,
telle que la commande point à point, soient celles qui traitent le problème de poursuite de
trajectoire, telle que la commande linéarisante (couple calculé de type PD), et la commande de
Paden et Panja. A la fin du chapitre, nous avons fait des applications de ces lois de commandes
au modèle dynamique du robot manipulateurs rigides SCARA, 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. Dans le cas contraire, nous
allons présenter une loi de commande adaptative de type gradient, qui prend en considération
les variations des paramètres, cette loi de Commande est conçue à partir de la loi de
commande couple calculer
50
Chapitre 4
Commande Adaptative Des Robots
Manipulateurs Rigides
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
4.1.1. Introduction
4.2.1 Définition
Supposons que
Définissons l’erreur :
= Ѱ(𝑡)𝜃(𝑡) − Ѱ(𝑡)𝜃̂(𝑡)
= Ѱ(𝑡)𝜃̃(𝑡) (4.2)
Avec :
Soit :
2
𝑉1 (𝑡) = [𝑒 (𝜃̃(𝑡))] (4.5)
53
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
𝜕𝑒 𝑇 (𝑡)𝑒(𝑡) ̇
𝑉1̇ (𝑡) = 𝜃̃(𝑡) (4.6)
𝜕𝜃̃(𝑡)
Pour que 𝑒 2 (𝑡) décroit le plus possible, il faut choisir 𝜃̂̇(𝑡) de la forme :
𝑇 T
̇𝜃(𝑡) = − ᴦ [𝜕𝑒 (𝑡)𝑒(𝑡) ]
̂ (4.7)
2 𝜕𝜃̃ (𝑡)
𝜕𝑒 𝑇 (𝑡)𝑒(𝑡) 𝜕𝑒(𝑡)𝑇
=2 𝑒(𝑡)
𝜕𝜃̃(𝑡) 𝜕𝜃̃(𝑡)
= 2 Ѱ𝑇 (𝑡)𝑒(𝑡) (4.8)
Puisque nous allons utiliser les paramètres estimés, la loi de commande sera
constituée par des quantités estimées. Alors la loi de commande exprimée par (3.1) sera
remplacée par l’expression suivante (voire figure 4.1)
54
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
Figure 4.1 schéma synoptique de la commande adaptative du couple calculé avec mesure de
l’accélération.
55
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
𝑌(𝑞, 𝑞̇ , 𝑞̈ )𝜃̃ = 𝑀
̂ (𝑞)(𝑞̃̈ + 𝑘𝑣 𝑞̃̇ + 𝑘𝑝 𝑞̃) (4.15)
̂ −1 (𝑞)𝑌(𝑞, 𝑞̇ , 𝑞̈ )𝜃̃
𝑞̃̈ + 𝑘𝑣 𝑞̃̇ + 𝑘𝑝 𝑞̃ = 𝑀 (4.16)
Nous pouvons écrire le système (4.7) sous forme d’espace d’état ainsi :
𝑥̇ = 𝐴𝑥 + 𝐵Ѱ𝜃̃ (4.17)
𝑞̃
𝑥 = [ ̇] (4.18)
𝑞̃
0 0𝑛 𝐼𝑛
et 𝑏 = [ 𝑛 ] ; 𝐴 = [−𝑘
𝐼𝑛 𝑝 −𝑘𝑣 ]
avec 𝐼𝑛 est une matrice ∈ 𝑅 𝑛×𝑛 et 0𝑛 est une matrice des zéros ∈ 𝑅 𝑛×𝑛 .
Après avoir formé le système d’erreur de poursuite, nous utilisons l’analyse de la stabilité de
Lyaponuv pour montrer que cette erreur est asymptotiquement stable avec le choix
convenable de la loi d’adaptation.
Tout d’abord, nous choisissons une fonction candidate de Lyaponuv définie positive ainsi :
𝑉 = 𝑥 𝑇 𝑃𝑥 + 𝜃̃ 𝑇 ᴦ−1 𝜃̃ (4.19)
Où 𝑃 est une matrice symétrique constante définie positive ∈ 𝑅 2𝑛×2𝑛 et ᴦ est une matrice
ᴦ = 𝑑𝑖𝑎𝑔 (𝑦1 , 𝑦2 , … 𝑦𝑟 )
ou 𝑟 est le nombre des paramètres à estimer du robot et 𝑦𝑖 sont des constantes scalaires
positives à trouver par simulation.
56
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
𝑇
𝑉̇ = 𝑥 𝑇 𝑃(𝐴𝑥 + 𝐵Ѱ𝜃̃) + (𝐴𝑥 + 𝐵Ѱ𝜃̃ ) 𝑃𝑥 + 2𝜃̃ 𝑇 ᴦ−1 𝜃̃̇
𝐴𝑇 𝑃 + 𝑃𝐴 = −𝑄
Pour que 𝑉̇ soit au moins semi définie négative, qui est la condition de la stabilité, la loi
d’adaptation doit s’écrire comme suite :
𝑉̇ = −𝑥 𝑇 𝑄𝑥
Nous avons d’après l’expression de l’erreur paramétrique 𝜃̃̇ = 𝜃̂̇ puisque 𝜃̇ = 0 donc
l’expression (4.21) s’écrire ainsi :
Dans cette section, nous allons étudier le type de la stabilité de l’erreur de poursuite
puisque 𝑉̇ est semi définie négative et 𝑉 est minorée par zéro, 𝑉 reste majorée dans
l’intervalle de temps [0, ∞) ; donc
lim 𝑉 = 𝑉∞
𝑡→+∞
où 𝑉∞ est une scalaire positif. Puisque 𝑉 est majorée, il est évident à partir de la définition de
𝑉 donnée par (4.19) que 𝑥 et 𝜃̃ sont bornés.
donc 𝑞̈ est borné puisque 𝑞̈ et 𝜏 dépendent seulement des grandeurs bornées 𝑞 et 𝑞̇ et 𝜃̃.Alors
57
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
𝑥̇ est bornée. Donc, nous pouvons conclure à partir de (4.20) que 𝑉̈ est borné. Nous avons
maintenant 𝑉 est minorée par 0, 𝑉̈ est indéfini négative et 𝑉̈ est borné alors en utilisant le
lemme de Barbalat suivant :
lim 𝑓̇ (𝑡) = 0
𝑡→+∞
lim 𝑓̇ (𝑡) = 0
Deuxième version : si 𝑓(𝑡) ≥ 0, 𝑓̇ (𝑡) est bornée alors 𝑡→+∞
lim 𝑉̇ = 0
𝑡→+∞
A partir de la loi d’adaptation présentée par l’équation (4.22), nous pouvons conclure
que l’erreur paramétrique est borné s’il existe toujours l’inverse de ̂
𝑀(𝑞). Pour analyser la
convergence de l’erreur paramétrique, nous allons considérer le système complet (4.17)
et (4.22) ainsi :
𝑥̇ 𝐴 𝐵Ѱ 𝑥
[ ̇] = [ ][ ] (4.23)
̂
𝜃 −ᴦѰ𝐵 𝑇
𝑃 0 𝜃̂
où Ѱ = ̂
𝑀−1 (𝑞)𝑌. Plusieurs chercheurs ont étudié la stabilité asymptotiquement de (4.23).
pour que ce système soit uniformément asymptotiquement stable il faut que le système
linéaire (𝐴, 𝐵, 𝐵 𝑇 𝑃) soit réel strictement positif et Ѱ satisfaire la condition de la persistance de
l’excitation suivante :
𝑡0 +𝑝
𝛼𝐼𝑟 ≤ ∫ Ѱ𝑇 Ѱ𝑑𝑡 ≤ 𝛽𝐼𝑟 (4.24)
𝑡0
58
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
inversible et bornée et définie et 𝑌 est bornée alors l’inégalité (4.24) est satisfaite s’il existe
𝑦 > 0 tel que :
𝑇0 +𝑝
𝑦𝐼𝑟 ≤ ∫ 𝑌𝑌 𝑇 𝑑𝑡 (4.25)
𝑇0
est satisfait.
𝑇0 +𝑝
𝑦𝐼𝑟 ≤ ∫ 𝑌𝑑 𝑌𝑑 𝑇 𝑑𝑡
𝑇0
La loi de command adaptative présentée dans ce chapitre, est simulée avec le modèle
dynamique du robot manipulateur présenté dans le deuxième chapitre. Le logiciel utilisé est le
logiciel Matlab.
Avec l’utilisation de cette loi de commande, nous avons supposé que les valeurs des
longueurs des segments 𝑙1 , 𝑙2 et la constante de gravité 𝑔 sont connues. Les paramètres
considérés comme inconnus dans ce chapitre, sont les masses des segments 𝑚1 , 𝑚2 , et 𝑚3 .
Donc le vecteur des paramètres peut s’écrire ainsi :
𝜃 = [𝑚1 𝑚2 𝑚3 ]𝑇 (4.26)
Les trajectoires utilisées dans la simulation pour les deux premières articulations sont de la
forme :
59
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
Où
Avec logiciel de calcul mathématique Maple, on peut déterminer les éléments du vecteur des
couples appliqués aux articulations :
2.2656 0 0 0.0004 0 0
0 1.4170 0 0 0.0010 0
𝑃= 0 0 1.3976 0 0 0.0071
0.0004 0 0 0.0016 0 0
0 0.0010 0 0 0.0025 0
[ 0 0 0.0071 0 0 0.0169]
60
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
0.8
0.5
position 1 (rad)
erreur e1 (rad)
0.6
0
0.4
-0.5
0.2
-1 0
-1.5 -0.2
0 2 4 6 8 10 0 2 4 6 8 10
time (s) time (s)
0.4
0.5
position 2 (rad)
erreur e2 (rad)
0.3
0
0.2
-0.5
0.1
-1 0
-1.5 -0.1
0 2 4 6 8 10 0 2 4 6 8 10
time (s) time (s)
10
-0.005
position 3 (rad)
erreur e3 (rad)
8
-0.01
6
-0.015
4
-0.02
2
0 -0.025
0 2 4 6 8 10 0 2 4 6 8 10
time (s) time (s)
Figure 4.2 les poursuites de trajectoire de position et des erreurs de position avec la loi de
commande adaptative base sure le couple calculé (loi d’adaptation de type gradient).
61
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
0.8 -0.2
0.6 -0.4
0.4 -0.6
0.2 -0.8
0 -1
0 1 2 3 4 5 0 1 2 3 4 5
time (s) time (s)
poursuite de la masse du 2eme segment erreur de poursuit de la masse m2
1.2 0.2
réelle.
estimé.
1 0
erreur teta 2 (rad)
0.8 -0.2
m2 (Kg)
0.6 -0.4
0.4 -0.6
0.2 -0.8
0 1 2 3 4 5 0 1 2 3 4 5
time (s) time (s)
poursuite de la masse du 3eme segment erreur de poursuit de la masse m3
1.6 0.6
réelle.
1.4 0.4
estimé.
1.2 0.2
erreur teta 3 (rad)
1 0
m3 (Kg)
0.8 -0.2
0.6 -0.4
0.4 -0.6
0.2 -0.8
-1
0 0 1 2 3 4 5
0 1 2 3 4 5
time (s) time (s)
Figure 4.3 les poursuites des masses et des erreurs de poursuite des masses avec la loi de
commande adaptative basée sur le couple calculé (loi d’adaptation de type gradient).
62
Chapitre 4 Commande Adaptative des robots manipulateurs rigides
Les figures (4.2-4.3) montrent les résultats de simulation effectuées dans le cas
considéré parfait (ni perturbation extérieures ni bruit de mesure). Dans ce cas, nous
remarquons que la loi d’adaptation de type gradient a permis aux paramètres de converger très
rapidement vers leurs valeurs réelles puis aux erreurs de poursuite de converger aussi vers
zéro. Nous remarquons que les paramètres peuvent prendre n’importe quelle valeur non nulle
et convergent avec ces valeurs vers leurs valeurs réelles.
4.5. Conclusion
Dans ce chapitre nous avons étudié une loi de commande adaptative basée sur le
couple calculé avec une loi d’adaptation de type gradient en absence des paramètres (les
masses des corps).
A partir des résultats de simulation obtenus dans ce chapitre, nous pouvons remarquer
que la loi de commande adaptative nous a permet d’avoir une convergence des paramètres
estimés et des erreurs de poursuite très rapide dans le cas idéale (ni perturbation extérieures ni
bruit de mesure).
63
Conclusion Générale
Conclusion générale
Les travaux présentés dans ce mémoire ont été effectués dans le but de connaitre où on
peut appliquer les lois de commande classique et les lois de commande adaptative (dans ce
mémoire nous avons appliquée la commande adaptative basée sur le couple calculé de type
gradient).
Dans le chapitre 1 a été présenté quelque notions de base sur le robot manipulateur
rigide, premièrement nous avons donné quelque définitions (système dynamique non linéaire,
robot manipulateur rigide). Ensuite, la description mécanique des robots manipulateurs
rigides. Nous avons terminé ce chapitre par la présentation de quelques notions qui sont
nécessaires dans la modalisation dynamique des robots.
Le chapitre 2 a été consacré à l’étape de base pour simuler une commande d’un robot
manipulateur rigide qui est l’étape de la modélisation. Premièrement, nous avons montré la
description de la structure géométrique des robots manipulateurs rigides à chaîne ouverte
simple, y compris l’application des notions de Denavit-Hartenberg, ensuite, la formulation de
Lagrange, qui est nécessaire pour établir les équations de mouvement des robots
manipulateurs à n degrés de liberté, a été détaillée. Nous avons terminé ce chapitre par une
élaboration d’un modèle dynamique d’un robot manipulateur à trois degrés de liberté afin de
l’utiliser en simulation pour valider les résultats développés dans les autres chapitres.
Dans le chapitre 3, trois lois de commande classiques ont été présentées, à savoir la
commande point à point, la commande Paden et Panja et la commande nommée couple
calculé type PD, pour illustrer les différentes performances d’une loi de commande (rapidité
de convergence, robustesse dans le cas où les paramètres du robot sont considérés connus.
Nous avons appliqué l’étude théorique au modèle dynamique présenté dans le chapitre 1.
Nous avons déduit que les performances de poursuite de ces lois de commande donnent des
bons résultats, c’est-à-dire la convergence des erreurs de poursuite du système à zéro est
garanti à cause de l’absence des perturbations externes.
Dans le chapitre 4. Une loi de commande adaptative basée sur le couple calculé de
type gradient a été présentée et appliquée au robot Scara. A partir des résultats de simulation
obtenus dans ce chapitre. Nous pouvons conclure que cette loi de commande d’adaptation
permet une convergence des paramètres estimés et des erreurs de poursuite très rapide.
66
Références Bibliographiques
REFERENCES BIBLIOGRAPIQUES
[1] Negrache Bensaouag « Commande dynamique et Adaptative des robots manipulateurs
rigides en utilisant l’algorithme des moindres carrés et du gradient application à un robot à
3ddl, Puma »université d’Oran Es-Sénia, 23 octobre 2004.
[2] Etienne Dombre et Wisama Khalil « Modélisation et commande des robots » Editions
Hermes paris, 1988.
[3] Samson C, Michel Le Borgne and Bernard Espiau « Robot Control» Clarendon
press-oxford, 1991.
[4] Spong M.W. and M. Vidyasagar « Robot Dynamics and Control» John Willey and sons,
New York, 1989.
[6] F. L. Lewis and C. T. Abdullah and D. M. Dawson « Control of robot manipulators» New
York, Macmillan, 1993
[7] Regilio Lozano and Damia Taoutaou « Identification et Commande Adaptative » Herms,
Paris, 2001.
[8] Kerraci Abdelkader « Synthèse des commande robustes des robots manipulateurs rigides »
université d’Oran Es-Sénia, 23 octobre 2004.
[9] Paden B. et R. Panja « Globally Aasymptotically Stable ‘ PD+’ Controller For Robot
Manipulators» Int Journal on Control, Vol. 47, P. 1697-1712.
[10] Kemal M. Citiz and Kumpati S. Narendra. « Adaptive Control of Robotic Manipulators
Usig Multiple Models and Switching » The International Journal of Robotics Research,
15(6):592-610, MIT December 1996.
67
Annexe A
Annexe A
Définition A.1
Une matrice réelle 𝐴 ∈ 𝑅 𝑛×𝑛 est dite définie positive si 𝑥 𝑇 𝐴 𝑥 > 0 pour tous 𝑥 ∈ 𝑅 𝑛 ,
et 𝑥 ≠ 0.
Une matrice réelle 𝐴 ∈ 𝑅 𝑛×𝑛 est dite semi définie positive si 𝑥 𝑇 𝐴 𝑥 ≥ 0 pour tous 𝑥 ∈ 𝑅 𝑛 .
Une matrice réelle 𝐴 ∈ 𝑅 𝑛×𝑛 est dite définie négative si 𝑥 𝑇 𝐴 𝑥 < 0 pour tous 𝑥 ∈ 𝑅 𝑛
et 𝑥 ≠ 0.
Une matrice réelle 𝐴 ∈ 𝑅 𝑛×𝑛 est dite semi définie négative si 𝑥 𝑇 𝐴 𝑥 ≤ 0 pour tous 𝑥 ∈ 𝑅 𝑛 .
Une matrice réelle 𝐴 ∈ 𝑅 𝑛×𝑛 est dite indéfinie si 𝑥 𝑇 𝐴 𝑥 > 0 pour quelque 𝑥 ∈ 𝑅 𝑛 et 𝑥 𝑇 𝐴 𝑥 <
0 pour les autres 𝑥 ∈ 𝑅 𝑛
Théorème A.2
Soit 𝐴 = [𝑎𝑖𝑗 ] une matrice réelle symétrique ∈ 𝑅 𝑛×𝑛 . Par conséquent, toutes les valeurs
propres de 𝐴 sont réelles. Nous avons :
Une matrice réelle ∈ 𝑅 𝑛×𝑛 est définie positive si toutes ses valeurs propres sont positives.
Une matrice réelle ∈ 𝑅 𝑛×𝑛 est semi définie positive si toutes ses valeurs propres sont non
négatives.
Une matrice réelle ∈ 𝑅 𝑛×𝑛 est définie négative si toutes ses valeurs propres sont négatives.
Une matrice réelle ∈ 𝑅 𝑛×𝑛 est semi définie négative si toutes ses valeurs propres sont non
positives.
Une matrice réelle ∈ 𝑅 𝑛×𝑛 est indéfinie si quelques de ses valeurs propres sont positives et les
autres sont négatives.
69
Annexe A
Lyapunov était capable d’extraire à partir de ce raisonnement une théorie générale qui
est applicable à n’importe quelle équation différentielle. Cette théorie demande de cherche
une fonction une fonction qui satisfait quelques propriétés. Cette fonction set une
généralisation de l’énergie des systèmes mécanique et elle est maintenant appelée la fonction
de lyapunov.
Dans cette section, nous devons donner le théorème de base de Lyapunov qui est
utilisée dans la stabilité, stabilité asymptotique et stabilité exponentielle.
70
Annexe A
Théorème A.3
L’origine du système (A.1) est stable, s’il existe une fonction de classe 𝐶 1 et localement
définie positive 𝑉 ∶ 𝑅+ × 𝑅 𝑛 −→ 𝑅 et une constante 𝑟 > 0 telle que :
𝑉̇ (𝑥, 𝑡) ≤ 0, ∀ 𝑡 ≥ 𝑡0 𝑒𝑡 ∀𝑥 ∈ 𝐵𝑟
Théorème A.4
L’origine du système (A.1) est uniformément stable, s’il existe une fonction de 𝐶 1
définie positive localement 𝑉 ∶ 𝑅+ × 𝑅 𝑛 −→ 𝑅 et une constante 𝑟 > 0 telle que :
𝑉̇ (𝑥, 𝑡) ≤ 0, ∀ 𝑡 ≥ 0 𝑒𝑡 ∀𝑥 ∈ 𝐵𝑟
Théorème A.4
L’origine du système (A.1) est asymptotiquement stable, s’il existe une fonction scalaire
𝑉 ∶ 𝑅+ × 𝑅 𝑛 −→ 𝑅 telle que :
En plus, si 𝑉(𝑡, 𝑥) est décroissante, alors l’origine est uniformément asymptotiquement stable.
Théorème A.5
71