Contribution à l'étalonnage géométrique des robots industriels
Contribution à l'étalonnage géométrique des robots industriels Contribution à l'étalonnage géométrique des robots industriels
ECOLE MILITAIRE POLYTECHNIQUE MEMOIRE Présenté pour obtenir le diplôme de Magister Filière : ROBOTIQUE, AUTOMATIQUE ET INFORMATIQUE INDUSTRIELLE Président : Option : Systèmes mécaniques robotisés Par : Toufik BENTALEB Ingénieur d’Etat en Génie Mécanique Contribution à l’étalonnage géométrique des robots industriels Soutenu publiquement le 20 / 12 / 2006 devant le Jury composé de : BOUKHAROUBA Taoufik Professeur/ U.S.T.H.B Examinateurs : BELAIDI Abed El Rahmane Maître de conférences / U.M.B.B MILOUDI Abed El Hamid Maître de conférences / U.S.T.H.B CHETTIBI Taha Chargé de cours / E.M.P Rapporteur : BELOUCHRANI Med El Amine Maître de conférences / E.M.P
- Page 2 and 3: exÅxÜv|xÅxÇàá Ce manuscrit es
- Page 4 and 5: Abréviation Signification CAO Conc
- Page 6 and 7: Nc Nombre de configurations. ddli N
- Page 8 and 9: Figure II.9 Description de la chaî
- Page 10 and 11: Chapitre I VII LISTE DES TABLEAUX T
- Page 12 and 13: II.7 LA SIMULATION.................
- Page 14 and 15: ___________________________________
- Page 16 and 17: Ecole Militaire Polytechnique INRTO
- Page 18 and 19: Ecole Militaire Polytechnique INRTO
- Page 20 and 21: ___________________________________
- Page 22 and 23: Ecole Militaire Polytechnique Chapi
- Page 24 and 25: Ecole Militaire Polytechnique Chapi
- Page 26 and 27: Ecole Militaire Polytechnique Chapi
- Page 28 and 29: Ecole Militaire Polytechnique Chapi
- Page 30 and 31: Ecole Militaire Polytechnique Chapi
- Page 32 and 33: Ecole Militaire Polytechnique Chapi
- Page 34 and 35: Ecole Militaire Polytechnique Chapi
- Page 36 and 37: École Militaire Polytechnique Chap
- Page 38 and 39: École Militaire Polytechnique Chap
- Page 40 and 41: École Militaire Polytechnique Chap
- Page 42 and 43: École Militaire Polytechnique Chap
- Page 44 and 45: École Militaire Polytechnique Chap
- Page 46 and 47: École Militaire Polytechnique Chap
- Page 48 and 49: École Militaire Polytechnique Chap
- Page 50 and 51: École Militaire Polytechnique Chap
ECOLE MILITAIRE POLYTECHNIQUE<br />
MEMOIRE<br />
Présenté pour obtenir le diplôme de Magister<br />
Filière :<br />
ROBOTIQUE, AUTOMATIQUE ET INFORMATIQUE INDUSTRIELLE<br />
Président :<br />
Option :<br />
Systèmes mécaniques robotisés<br />
Par : Toufik BENTALEB<br />
Ingénieur d’Etat en Génie Mécanique<br />
<strong>Contribution</strong> <strong>à</strong> l’étalonnage<br />
<strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> <strong>industriels</strong><br />
Soutenu publiquement le 20 / 12 / 2006 devant le Jury composé de :<br />
BOUKHAROUBA Taoufik Professeur/ U.S.T.H.B<br />
Examinateurs :<br />
BELAIDI Abed El Rahmane Maître de conférences / U.M.B.B<br />
MILOUDI Abed El Hamid Maître de conférences / U.S.T.H.B<br />
CHETTIBI Taha Chargé de cours / E.M.P<br />
Rapporteur :<br />
BELOUCHRANI Med El Amine Maître de conférences / E.M.P
exÅxÜv|xÅxÇ<strong>à</strong>á<br />
Ce manuscrit est l'aboutissement d’une année de recherche au sein du<br />
Laboratoire de Mécanique <strong>des</strong> Structures EMP. Je tiens <strong>à</strong> remercier mon directeur de<br />
thèse : Dr BELOUCHRANI M ed El Amine (Maître Conférences <strong>à</strong> l'EMP et Resp.<br />
d’option), mes remerciements vont aussi <strong>à</strong> monsieur le directeur de la recherche et<br />
de la formation Post-Graduée : Dr A. Yousnadj, ainsi que le responsable du<br />
Département Mécanique : Dr K. Necib (Maître Conférences <strong>à</strong> EMP), le chef du<br />
Laboratoire de Mécanique <strong>des</strong> Structures : Dr T. Saidouni et le codirecteur de thèse :<br />
Mr A.K. Zanadi.<br />
Merci aux membres du jury d'avoir bien voulu analyser et porter un regard<br />
critique sur mon travail, nécessaire <strong>à</strong> l'aboutissement de tout projet scientifique. Je<br />
tiens aussi <strong>à</strong> exprimer ma gratitude envers toutes les personnes qui ont contribué<br />
scientifiquement et humainement <strong>à</strong> la réalisation de ce travail de recherche.<br />
Je remercie Prof. Wisama Khalil de m’avoir envoyé <strong>des</strong> documents intéressants<br />
sur le sujet de mon travail.<br />
Cette page ne saurait être complète sans remercier Hammache Hakim, Khadraoui<br />
Aek sans oublier mes camara<strong>des</strong> de la 8ème, 9ème et 10ème promotion.<br />
Merci enfin <strong>à</strong> mes amis, proches ou lointains, déj<strong>à</strong> cités ou non, pour leur<br />
présence, ainsi qu'<strong>à</strong> ma famille et <strong>à</strong> mes parents, dont le soutien sans faille tout au<br />
long de ces années m'a été plus que précieux : indispensable.
Dédicaces<br />
À ma mère<br />
À mon père<br />
Et <strong>à</strong> toute ma famille
Abréviation Signification<br />
CAO Conception Assisté par Ordinateur.<br />
DDL Dégrée De Liberté.<br />
EMP Ecole Militaire Polytechnique.<br />
EPFL Ecole Polytechnique Fédérale de lausanne.<br />
LIRMM<br />
I<br />
LISTE DES ABREVIATIONS<br />
Laboratoire d'Informatique, Robotique et Microélectronique de<br />
Montpellier.<br />
LMS Laboratoire de Mécanique <strong>des</strong> Structure.<br />
MGD Modèle Géométrique Direct.<br />
MGI Modèle Géométrique Inverse.<br />
PC angl. Personal Computer.<br />
SVD angl. Singular Valuer Decomposition.<br />
UGV Usinage Grande Vitesse.
Symbole Désignation<br />
αi<br />
βi<br />
γi<br />
θi<br />
II<br />
LISTE DES SYMBOLES<br />
Angle entre le i e bras et le plan de la base fixe. Par convention, l’angle<br />
αi est positif lorsque le bras est situé du côté de la nacelle.<br />
Angle entre le plan du i e parallélogramme et le plan horizontal,<br />
mesuré dans un plan vertical πi contenant le bras i.<br />
Angle entre le plan vertical πi et une <strong>des</strong> barres du parallélogramme i.<br />
Angle entre le plan πi et le plan Oxz.<br />
P (px, py, pz) ou X Coordonnées du centre de la nacelle.<br />
R Différence entre les longueurs Ra et Rb.<br />
Ra Distance entre le centre de la base fixe et l’axe de rotation du bras.<br />
Rb<br />
Distance entre le centre de la nacelle et le côté du parallélogramme<br />
solidaire de la nacelle.<br />
r Exposé réel ou exacte.<br />
j Ti<br />
La matrice de passage 4×4 définissant le repère Ri par rapport<br />
au repère Rj.<br />
J La matrice jacobienne.<br />
q Le vecteur <strong>des</strong> variables articulaires.<br />
m Les mesures seront notées en exposant par m .<br />
Lb Longueur d’une barre parallèle.<br />
La Longueur du bras.<br />
j Ai<br />
Nm<br />
Matrice de rotation (3×3).<br />
Nombre d’équations.
Nc<br />
Nombre de configurations.<br />
ddli Nombre de degrés de liberté de la liaison numéro i.<br />
m Nombre de degrés de liberté du mécanisme.<br />
Nl<br />
mint<br />
NP<br />
Np<br />
Nombre de liaisons entre les soli<strong>des</strong> indépendants.<br />
Nombre de mobilités internes.<br />
Nombre de paramètres.<br />
Nombre de soli<strong>des</strong> indépendants.<br />
i Noté la chaîne. Exemple : P i paramètres de chaîne i.<br />
P Paramètres <strong>géométrique</strong>s.<br />
k<br />
Une configuration.<br />
ρ Valeur d’actionneur.<br />
workspace<br />
Variable booléen qui caractérise l’appartenance de l’effecteur dans<br />
l’espace de travail.<br />
III
Chapitre I<br />
IV<br />
LISTE DES FIGURES<br />
Figure I.1 Structure générale d’un robot industriel...................................... 8<br />
Figure I.2 Le robot IRB 7600-150 (ABB, photo et graphe d’agencement).. 9<br />
Figure I.3 Le robot Hexamove-System, photo et graphe d’agencement... 10<br />
Figure I.4 Le robot FlexPicker (ABB), photo et graphe d’agencement............ 13<br />
Figure I.5 Précision absolue, résolution et répétabilité................................ 15<br />
Figure I.6 Le Robot Delta ................................................................................. 16<br />
Figure I.7 Photographie du robot Delta......................................................... 17<br />
Figure I.8 Schéma cinématique du robot Delta............................................. 18<br />
Figure I.9 Robot Delta, image CAO et graphe d’agencement.................... 19<br />
Chapitre II<br />
Figure II.1<br />
Figure II.2<br />
Figure II.3<br />
Le paramétrage du robot delta sans les déviations<br />
<strong>géométrique</strong>s...................................................................................<br />
26<br />
Le paramétrage d'une chaîne d’articulations du robot delta avec<br />
<strong>des</strong> déviations <strong>géométrique</strong>s …......................................................... 26<br />
Interprétation <strong>géométrique</strong> de Modèle 24 comme structure<br />
spatiale 3(R2S) .................................................................................. 31<br />
Figure II.4 Modèle <strong>géométrique</strong> de robot Delta ................................................. 32<br />
Figure II.5<br />
Figure II.6<br />
Figure II.7<br />
Chaîne cinématique équivalente en considérant que la<br />
nacelle est réduite <strong>à</strong> un point......................................................... 33<br />
L’interface utilisée pour commander et simuler de la position de<br />
robot Delta par le MGD et MGI......................................................... 37<br />
Longueurs paramétriques et angles caractéristiques du robot<br />
DELTA. .............................................................................................. 38<br />
Figure II.8 Description d’une seule chaîne.......................................................... 39
Figure II.9 Description de la chaîne simplifiée.................................................... 39<br />
Figure II.10<br />
Une approximation du volume de travail du robot Delta [37] :<br />
(a) volume de travail du robot en 3D ; (b) volume de travail du<br />
robot en 3D vue du haut; (c) Vue de profil du robot avec son<br />
volume de travail. .............................................................................<br />
Figure II.11 Organigramme de Calcul test d’appartenance <strong>à</strong> l’espace de travail 41<br />
Figure II.12<br />
Figure II.13<br />
Figure II.14<br />
Organigramme de calcul <strong>des</strong> erreurs de position <strong>à</strong> partir <strong>des</strong><br />
paramètres réelles. .......................................................................... 43<br />
Erreur de positionnement du robot Delta en fonction de la<br />
position de l’organe terminal dans le plan (z = -400) pour<br />
une erreur sur le paramètre <strong>géométrique</strong> La≈ 1 [mm], Lb≈ 1<br />
[mm].…………………………………….........................................<br />
Erreur de positionnement du robot Delta en fonction de la<br />
position de l’organe terminal dans les plans (z = -300, -400, -<br />
500 et -600 [mm]) pour une erreur sur le paramètre<br />
<strong>géométrique</strong> (La ≈ 1 [mm]) ............................................................<br />
Figure II.15 Simulation de l’étalonnage............................................................. 48<br />
Trois cas de figure où la méthode d’optimisation converge en<br />
présence de bruit de mesure : l’étalonnage améliore (gain<br />
Figure II.12<br />
positif) la connaissance <strong>des</strong> paramètres <strong>géométrique</strong>s, la<br />
50<br />
détériore (gain négatif) ou n’a pas d’influence (gain nul) ........<br />
Chapitre IV<br />
Figure IV.1<br />
Figure IV.2<br />
Figure IV.3<br />
Figure IV.4<br />
Figure IV.5<br />
Figure IV.6<br />
Figure IV.7<br />
Figure IV.8<br />
Figure IV.9<br />
Résultats méthode directe, sans bruit de mesures, Nc=8, p=1<br />
mm, ................................................................................................... 74<br />
Résultats méthode directe, sans bruit de mesures, Nc=8,<br />
p=0.1 mm, ....................................................................................... 74<br />
Résultats méthode directe, avec bruit de mesures, Nc=8, p=<br />
0.1 mm, pos= L= 0.001 mm, R= 0.001°,....................................... 75<br />
Résultats méthode directe, avec bruit de mesures, Nc=20, p=<br />
0.1 mm, pos= L= 0.001 mm, R= 0.001°,....................................... 75<br />
Résultats méthode directe, avec bruit de mesures, Nc=40, p=<br />
0.1 mm, pos=L=0.001 mm, R=0.001°,.......................................... 76<br />
Résultats méthode directe, avec bruit de mesures, Nc=60, p=<br />
0.1 mm, pos=L=0.001 mm, R=0.001°,.......................................... 76<br />
Résultats méthode directe, avec bruit de mesures, Nc=60,<br />
p=0.1 mm, pos=L=0.01 mm, R=0.01°,........................................ 77<br />
Résultats méthode inverse, sans bruit de mesures, Nc= 8, p=<br />
10 mm, ............................................................................................. 79<br />
Résultats méthode inverse, avec bruit de mesures, Nc=8,<br />
p=10 mm, ........................................................................................ 79<br />
Figure IV.10 Résultats méthode inverse, avec bruit de mesures, Nc=8, p=1<br />
mm, pos=L=0.001 mm, R=0.001°,................................................ 80<br />
Figure IV.11 Résultats méthode inverse, avec bruit de mesures, Nc=8, p=1<br />
mm, pos=L=0.001 mm, R=0.001°,................................................ 80<br />
Figure IV.12 Résultats méthode inverse, avec bruit de mesures, Nc=8, p=1<br />
mm, pos=L=0.01 mm, R=0.01°,.................................................... 81<br />
V<br />
40<br />
44<br />
44
Figure IV.13<br />
Figure IV.14<br />
Figure IV.15<br />
Chapitre V<br />
Résultats méthode inverse, avec bruit de mesures, Nc=20,<br />
p=1 mm, pos=L=0.01 mm, R=0.01°,........................................... 81<br />
Résultats méthode inverse, avec bruit de mesures, Nc=40,<br />
p=1 mm, pos=L=0.01 mm, R=0.01°,........................................... 82<br />
Résultats méthode inverse, avec bruit de mesures, Nc=60,<br />
p=1 mm, pos=L=0.01 mm, R=0.01°,........................................... 82<br />
Figure V.1 Représentation de mécanisme de Blocage ........................................ 89<br />
Figure V.2<br />
Utilisation de la méthode Khalil pour la <strong>des</strong>cription de la<br />
chaîne i simplifiée .......................................................................... 91<br />
Figure V.3<br />
Utilisation de la méthode Khalil pour la <strong>des</strong>cription de la chaîne<br />
cinématique i. .................................................................................... 92<br />
Figure V.4 Blocage <strong>des</strong> articulations passives β i et γ i ................................. 93<br />
Figure V.5<br />
Résultats de la méthode auto-étalonnage. Nc=8, p=1 mm,(a) Gain<br />
de l’étalonnage sur les paramètres,(b) Erreur sur les paramètres….. 96<br />
Résultats de la méthode auto-étalonnage. Nc=8, p=1 mm.<br />
Figure V.6<br />
Annexe A<br />
pos=L=0.001 mm, R=0.001°, (a) Gain de l’étalonnage sur les 96<br />
paramètres,(b) Erreur sur les paramètres..........................................<br />
Figure A.1 Géométrie du robot LMD-DELTA 740............................................ 101<br />
VI
Chapitre I<br />
VII<br />
LISTE DES TABLEAUX<br />
Tableau I.1 Représentation normalisée de quelques liaisons.…….……….. 18<br />
Tableau I.2 Conventions <strong>des</strong> graphes d’agencement………………………. 19<br />
Chapitre II<br />
Tableau II.1<br />
Nombre minimal de paramètres nécessaires <strong>à</strong> la<br />
modélisation du robot Delta.………………………………….… 25<br />
Tableau II.2<br />
Le paramétrage <strong>des</strong> trois chaînes articulaires R(2S/2S) du<br />
robot……………………………………………………………….. 28<br />
Tableau II.3 les paramètres du modèle nominal dérivé du tableau II.2….. 31<br />
Tableau II.4<br />
Langueurs caractéristiques et Angles limites du robot<br />
LMS_DELTA……………………………………………………….. 42<br />
Chapitre V<br />
Tableau V.1<br />
Paramétrage Khalil-kleinfinger pour une chaîne cinématique i du<br />
robot Delta …………………………………………………………. 90
IX<br />
SOMMAIRE<br />
LISTE DES ABREVIATIONS….……………………...………………………………………………….……I<br />
LISTE DES SYMBOLES………………………………...…………………………………………………...…II<br />
LISTE DES FIGURES……………………………...………………………………………………………..…IV<br />
LISTE DES TABLEAUX………………………………...……………………………………………………VII<br />
SOMMAIRE………………….…………………………...……………………………………………………IX<br />
INTRODUCTION GÉNÉRALE…………..………………………………………...………………………...1<br />
Chapitre I : GENERALITES<br />
I.1 INTRODUCTION.......................................................................................................................................... 7<br />
I.2 LES ROBOTS INDUSTRIELS..................................................................................................................... 7<br />
I.2.1 LES ROBOTS SERIELS ................................................................................................................................... 9<br />
I.2.1 LES ROBOTS PARALLELES ......................................................................................................................... 10<br />
I.2.2.1 Avantages ....................................................................................................................................... 11<br />
I.2.2.2 Inconvénients ................................................................................................................................. 12<br />
I.2.2.3 Deux générations de <strong>robots</strong> parallèles........................................................................................ 13<br />
I.3 PRECISION ABSOLUE, REPETABILITE ET RESOLUTION............................................................. 14<br />
I.4 LE ROBOT PARALLELE DELTA ............................................................................................................. 16<br />
I.4.1 CONVENTION ET REPRESENTATION......................................................................................................... 16<br />
I.4.1.1 La photographie............................................................................................................................. 17<br />
I.4.1.2 Le schéma cinématique................................................................................................................. 17<br />
I.4.1.3 Le <strong>des</strong>sin d'ensemble..................................................................................................................... 18<br />
I.4.1.4 Le graphe d'agencement............................................................................................................... 19<br />
I.5 CONCLUSION............................................................................................................................................. 20<br />
Chapitre II : MODELISATION ET OUTILS DE L'ETALONNAGE<br />
II.1 INTRODUCTION...................................................................................................................................... 22<br />
II.2 MODELISATION DU ROBOT ............................................................................................................... 22<br />
II.2.1 LE TYPE D'ERREUR................................................................................................................................... 22<br />
II.2.1.1 Les erreurs d'origine <strong>géométrique</strong> ............................................................................................. 22<br />
II.2.1.2 Les erreurs d'origine non-<strong>géométrique</strong>..................................................................................... 23<br />
II.2.2 LA MODELISATION DU ROBOT ................................................................................................................ 23<br />
II.2.2.1 Paramétrage du robot Delta........................................................................................................ 25<br />
II.2.2.2 Modèle 54 ...................................................................................................................................... 28<br />
II.2.2.3 Modèle 24 ...................................................................................................................................... 29<br />
II.2.2.4 Modèle nominale.......................................................................................................................... 31<br />
II.3 LES MODELES GEOMETRIQUES ........................................................................................................ 32<br />
II.3.1 LES MODELES GEOMETRIQUES DE ROBOT DELTA ................................................................................. 32<br />
II.3.1.1 Le Modèle <strong>géométrique</strong> Direct (MGD)...................................................................................... 32<br />
II.3.1.2 Le Modèle <strong>géométrique</strong> Inverse (MGI) ..................................................................................... 36<br />
II.3.1.3 Interface graphique ...................................................................................................................... 36<br />
II.4 DETERMINATION DU VOLUME DE TRAVAIL .............................................................................. 39<br />
II.5 INFLUENCE DES ERREURS SUR LE POSITIONNEMENT DU ROBOT ..................................... 42<br />
II.6 LES MESURES............................................................................................................................................ 45<br />
II.6.1 LES MESURES INTERNES .......................................................................................................................... 46<br />
II.6.2 LES MESURES EXTERNES.......................................................................................................................... 46
II.7 LA SIMULATION...................................................................................................................................... 46<br />
II.8 EVALUATION DES METHODES D'ETALONNAGE ....................................................................... 49<br />
Chapitre III : APERÇU SUR L' ÉTALONNAGE GÉOMÉTRIQUE DES ROBOTS SÉRIE<br />
III.1 INTRODUCTION .................................................................................................................................... 51<br />
III.2 MODELE GEOMETRIQUE DES ROBOTS SERIE............................................................................ 52<br />
III.3 PRENCIPES GENERAUX POUR L'ETALONNAGE......................................................................... 52<br />
III.3.1 ECRITURE DU MODELE D'ETALONNAGE................................................................................................ 52<br />
III.4 DESCRIPTION DES METHODES D'ETALONNAGE ..................................................................... 53<br />
III.4.1 METHODE D'ETALONNAGE CLASSIQUE ................................................................................................ 53<br />
III.4.2 ETALONNAGE AVEC MESURE DE LA SITUATION RELATIVE................................................................... 54<br />
III.4.3 ETALONNAGE AVEC MESURE DE DISTANCES ........................................................................................ 56<br />
III.4.4 ETALONNAGE AVEC LIAISON REPERE OU LIAISON PONCTUELLE ......................................................... 56<br />
III.4.5 ETALONNAGE AVEC LIAISON POINT-PLAN........................................................................................... 58<br />
IV.4.5.1 Etalonnage en utilisant l'équation du plan........................................................................... 58<br />
IV.4.5.2 Etalonnage en utilisant la norme du plan............................................................................. 59<br />
III.5 CONCLUSION.......................................................................................................................................... 60<br />
Chapitre IV : ÉTALONNAGE GÉOMÉTRIQUE DES ROBOTS PARALLÈLES<br />
( LES MÉTHODES DE BASE)<br />
IV.1 INTRODUCTION .................................................................................................................................... 61<br />
IV.2 PRINCIPE................................................................................................................................................... 62<br />
IV.2.1 METHODE DIRECTE ............................................................................................................................... 62<br />
IV.2.2 METHODE INVERSE ............................................................................................................................... 63<br />
IV.3 LES SYSTEMES D'EQUATIONS A RESOUDRE .............................................................................. 64<br />
IV.3.1 UTILISATION DU MGD ......................................................................................................................... 64<br />
IV.3.2 UTILISATION DU MGI ........................................................................................................................... 65<br />
IV.4 RESOLUTION........................................................................................................................................... 66<br />
IV.4.1 LES SYSTEMES ........................................................................................................................................ 67<br />
IV.4.2 LE CALCUL DES JACOBIENNES............................................................................................................... 68<br />
IV.4.2.1 Jacobienne de la méthode directe ............................................................................................. 68<br />
IV.4.2.2 Jacobienne de la méthode inverse............................................................................................. 69<br />
IV.4.3 LA SIMULATION..................................................................................................................................... 70<br />
IV.4.3.1 Principe......................................................................................................................................... 70<br />
IV.4.3.2 Types d'algorithmes <strong>des</strong> moindres carrés non linéaires, non contraintes .......................... 71<br />
IV.4.4 LES RESULTATS ...................................................................................................................................... 72<br />
IV.4.4.1 Méthode Directe.......................................................................................................................... 72<br />
IV.4.4.1.a Sans bruit de mesure........................................................................................................... 72<br />
IV.4.4.1.b Avec bruit de mesure.......................................................................................................... 72<br />
IV.4.4.2 Méthode Inverse ......................................................................................................................... 77<br />
IV.4.4.1.a Sans bruit de mesure........................................................................................................... 77<br />
IV.4.4.1.b Avec bruit de mesure.......................................................................................................... 77<br />
IV.5 AMELIORATION DE LA ROBUSTESSE DES ALGORITHMES .................................................. 83<br />
IV.5.1 LE NOMBRE DE MESURES....................................................................................................................... 83<br />
IV.5.3 CHOIX DES CONFIGURATIONS DE MESURE............................................................................................ 85<br />
IV.5 CONCLUSION.......................................................................................................................................... 85<br />
CHAPITRE V : ÉTALONNAGE GÉOMÉTRIQUE DES ROBOTS PARALLÈLES (MÉTHODE<br />
AUTONOME)<br />
V.1 INTRODUCTION...................................................................................................................................... 87<br />
V.2 PRINCIPE DE LA METHODE D'AUTO-ETALONNAGE AVEC CONTRAINTES..................... 89<br />
V.3 PARAMETRAGE DE LA CHAINE I ...................................................................................................... 90<br />
V.4 CALCUL DES ANGLES DE LA CHAINE I........................................................................................... 92<br />
V.5 ECRITURE DES EQUATIONS DE CONTRAINTES.......................................................................... 93<br />
X
V.6 RESULTATS DE LA SIMULATION ...................................................................................................... 95<br />
V.6.1 ETALONNAGE SANS BRUITS DE MESURE................................................................................................. 95<br />
V.6.2 ETALONNAGE AVEC BRUITS DE MESURE ................................................................................................ 95<br />
V.7 COMMENTAIRE SUR LA METHODE................................................................................................. 95<br />
V.8 CONCLUSION ........................................................................................................................................... 97<br />
CONCLUSION GENERALE ET PERSPECTIVES ...................................................................................... 98<br />
ANNEXES ......................................................................................................................................................... 101<br />
BIBLIOGRAPHIE............................................................................................................................................ 112<br />
XI
___________________________________________________________________________<br />
INTRODUCTION
Ecole Militaire Polytechnique INRTODUCTION GENERALE<br />
INTRODUCTION GENERALE<br />
L’utilisation croissante de la robotique dans les domaines de l’industrie, de la<br />
médecine et militaire doit satisfaire une exigence de précision de plus en plus forte.<br />
Pour répondre <strong>à</strong> cette demande, il est nécessaire de connaître avec exactitude le<br />
modèle <strong>géométrique</strong> <strong>des</strong> structures mécaniques sérielles ou parallèles employées.<br />
Quels que soient les modèles employés pour représenter la géométrie <strong>des</strong> <strong>robots</strong>,<br />
leur précision dépend de l’exactitude <strong>des</strong> paramètres implantés dans les calculateurs.<br />
Bien que la conception et <strong>à</strong> la réalisation <strong>des</strong> <strong>robots</strong> se font avec attention, les<br />
paramètres <strong>géométrique</strong>s nominaux fournis par les constructeurs sont entachés<br />
d’erreurs. Ces erreurs peuvent en particulier être attribuées <strong>à</strong> <strong>des</strong> défauts d’usinage<br />
ou d’assemblage, au transport ou <strong>à</strong> l’usure tout au long de la durée de vie du robot.<br />
Le but de l’étalonnage <strong>géométrique</strong> est de déterminer les valeurs réelles <strong>des</strong><br />
paramètres <strong>géométrique</strong>s <strong>des</strong> <strong>robots</strong>.<br />
La procédure classique d’étalonnage consiste <strong>à</strong> mesurer la situation de l’organe<br />
terminal du robot (effecteur) <strong>à</strong> l’aide d’un capteur externe. Dans le cas <strong>des</strong> <strong>robots</strong><br />
série, les paramètres <strong>géométrique</strong>s sont alors déterminés par minimisation de la<br />
norme de l’écart entre les situations mesurées et celles prévues par le modèle<br />
<strong>géométrique</strong> direct (MGD). Pour les <strong>robots</strong> parallèles, on minimise la norme de<br />
l’écart entre les coordonnées articulaires mesurées et celles calculées <strong>à</strong> partir du<br />
modèle <strong>géométrique</strong> inverse (MGI) ou (MGD), le MGD de ces <strong>robots</strong> ne possède pas<br />
toujours de solution analytique et peut comporter <strong>des</strong> solutions multiples.<br />
Les métho<strong>des</strong> d’étalonnage autonome se passent <strong>des</strong> capteurs externes et sont<br />
basées sur la réalisation de contraintes mécaniques qui fournissent les équations<br />
1
Ecole Militaire Polytechnique INRTODUCTION GENERALE<br />
nécessaires <strong>à</strong> l’identification <strong>des</strong> paramètres <strong>géométrique</strong>s. Ces contraintes sont<br />
généralement appliquées <strong>à</strong> l’organe terminal ou <strong>à</strong> l’une <strong>des</strong> chaînes cinématiques <strong>des</strong><br />
<strong>robots</strong> parallèles.<br />
Le problème<br />
Pourquoi ?<br />
L’un <strong>des</strong> avantages <strong>des</strong> <strong>robots</strong> parallèles est leur précision. Dans leurs principales<br />
applications, on utilise donc cette caractéristique pour déplacer le plus précisément<br />
possible une lourde charge <strong>à</strong> la position et <strong>à</strong> l'orientation choisies. Par exemple, nous<br />
retrouvons ce mécanisme (voir figure 1):<br />
dans les applications industrielles : soulever les objets légers,<br />
comme machine-outil,<br />
en robotique médicale : opération chirurgicale,<br />
en robotique militaire : déclencheur de bombes.<br />
Mais la réalisation pratique d’un robot diffère de son modèle idéal, ceci en raison<br />
de différentes erreurs, comme les imprécisions dans la fabrication et l’assemblage du<br />
manipulateur. Cette différence aura une influence sur la précision <strong>des</strong> modèles<br />
<strong>géométrique</strong>s dans lesquels on utilise toujours le modèle théorique. Le problème est<br />
que ces modèles <strong>géométrique</strong>s sont au cœur de tous les algorithmes de commande<br />
<strong>des</strong> <strong>robots</strong>. Le but de l’étalonnage <strong>géométrique</strong> donc est d’améliorer la connaissance<br />
<strong>des</strong> paramètres <strong>géométrique</strong>s du manipulateur, afin d’améliorer sa commande et en<br />
particulier d’augmenter sa précision de positionnement.<br />
Comment ?<br />
L’étalonnage peut être vu comme la détermination <strong>des</strong> paramètres <strong>géométrique</strong><br />
du robot en fonction d’informations sur son état, obtenues <strong>à</strong> partir de capteurs<br />
proprioceptifs, c'est-<strong>à</strong>-dire placés sur le robot et, éventuellement de mesures externes.<br />
L’influence <strong>des</strong> forces, de la vitesse ou de l’accélération du robot sur les paramètres<br />
<strong>géométrique</strong>s ne sera pas étudiée dans ce travail.<br />
L’objectif est de rendre l’erreur de positionnement du manipulateur la plus petite<br />
possible. Nous devons donc être capables de la mesurer :<br />
2
Ecole Militaire Polytechnique INRTODUCTION GENERALE<br />
soit directement, en faisant appel, par exemple, <strong>à</strong> une machine <strong>à</strong> mesurer<br />
qui déterminera le positionnement « exact » du manipulateur, et que l’on<br />
comparera <strong>à</strong> un positionnement supposé. Nous appellerons ces métho<strong>des</strong><br />
étalonnage externe.<br />
soit indirectement, par exemple en imposant <strong>des</strong> contraintes <strong>géométrique</strong>s<br />
sur le manipulateur, et en vérifiant que les mesures proprioceptives sont<br />
cohérentes avec les contraintes. Nous appellerons ces métho<strong>des</strong><br />
étalonnage sous contraintes.<br />
(a) -Installation dans une boulangerie ;<br />
cadence 500 par minute [04]. (b)-Machine-outil[04].<br />
(d) -Robot LMS_Delta 740 de<br />
l’EMP<br />
3<br />
(c) -Disposition du robot Delta 1'700<br />
MSS (Microscope Support System) au<strong>des</strong>sus<br />
d’une table d’opération[04].<br />
Figure .1 Différentes applications du robot Delta
Ecole Militaire Polytechnique INRTODUCTION GENERALE<br />
Comme le montre Deblaise dans [12], il est possible de formaliser de manière<br />
générique les équations intervenant dans l’étalonnage. Nous chercherons plusieurs<br />
équations F i , appelées « équations de fermeture » ou « équations de contraintes »,<br />
qui lient les paramètres <strong>géométrique</strong>s (P) du robot <strong>à</strong> <strong>des</strong> mesures (M) pratiquées sur<br />
le robot telles que :<br />
F i<br />
( M , P)<br />
= 0<br />
Le problème est d’utiliser ces relations pour calculer les inconnues P en fonction<br />
<strong>des</strong> mesures M. Dans la plupart <strong>des</strong> cas, les équations de contraintes obtenues sont<br />
non-linéaires. En général, nous utiliserons <strong>des</strong> métho<strong>des</strong> d’optimisation non-linéaire<br />
pour résoudre ce problème. Mais nous verrons que l’on peut aussi utiliser <strong>des</strong><br />
métho<strong>des</strong> numériques comme la SVD. Chaque méthode possède ses avantages et ses<br />
inconvénients (robustesse aux erreurs de mesure, convergence, unicité <strong>des</strong> solutions<br />
etc.) qui seront discutées lors de leur présentation.<br />
Les objectifs<br />
L’objectif de ce travail est de proposer <strong>des</strong> métho<strong>des</strong> pour étalonner un type<br />
particulier de manipulateur parallèle qui est le robot Delta.<br />
Nous avons choisi de nous limiter <strong>à</strong> ce type de manipulateur pour plusieurs<br />
raisons :<br />
- Ce type de robot est étudié dans LMS (Laboratoire Mécanique <strong>des</strong><br />
Structures) depuis quelques années.<br />
- La plupart <strong>des</strong> métho<strong>des</strong> d’étalonnage exposées peuvent être facilement<br />
adaptées <strong>à</strong> d’autres types de manipulateurs parallèles.<br />
- Une adaptation <strong>des</strong> métho<strong>des</strong> traditionnelles d’étalonnage (en particulier<br />
celles utilisées pour les <strong>robots</strong> séries) au robot Delta pose, nous le verrons,<br />
de nombreux problèmes qui ont été relativement peu traités dans la<br />
littérature.<br />
Pour mener <strong>à</strong> terme notre travail on l’a subdivisé en plusieurs chapitres :<br />
4
Ecole Militaire Polytechnique INRTODUCTION GENERALE<br />
Dans le premier chapitre nous allons définir les différents types de <strong>robots</strong><br />
<strong>industriels</strong>, <strong>à</strong> savoir les <strong>robots</strong> séries et les <strong>robots</strong> parallèles, on<br />
s’intéressera particulièrement aux <strong>robots</strong> parallèles Delta.<br />
Le deuxième chapitre sera consacré <strong>à</strong> la présentation d’une modélisation<br />
du robot Delta qui définira l'ensemble <strong>des</strong> paramètres <strong>géométrique</strong>s <strong>à</strong><br />
identifier et <strong>à</strong> discuter, par la suite, on présentera <strong>des</strong> outils qui seront<br />
nécessaires aux procédures d'étalonnage (par exemples : les modèles<br />
<strong>géométrique</strong>s, influence <strong>des</strong> erreurs sur les paramètres <strong>géométrique</strong>s, les<br />
mesures, …).<br />
Le troisième chapitre aura pour objectif une présentation <strong>des</strong> différentes<br />
métho<strong>des</strong> d’étalonnage <strong>des</strong> <strong>robots</strong> série,<br />
Dans le quatrième chapitre et <strong>à</strong> partir <strong>des</strong> métho<strong>des</strong> d’étalonnage<br />
classiques <strong>des</strong> <strong>robots</strong> série, on développera <strong>des</strong> métho<strong>des</strong> de base pour<br />
l’étalonnage <strong>des</strong> <strong>robots</strong> Delta, tout en utilisant les modèles <strong>géométrique</strong>s<br />
(MGD, MGI). Les équations de contraintes obtenues et leurs résolutions<br />
(formelles ou numériques) seront analysées. Nous verrons comment<br />
utiliser certaines techniques d’optimisation pour rendre les résultats plus<br />
robustes par rapport aux erreurs de mesure,<br />
Dans le dernier chapitre, nous verrons comment, en ajoutant <strong>des</strong><br />
contraintes (différente de celles utilisées pour les <strong>robots</strong> série), obtenir<br />
d’autres types d’équations. Les systèmes obtenus seront plus simples :<br />
diminution du degré total <strong>des</strong> équations. On utilisant l’ensemble <strong>des</strong><br />
contraintes introduites sur la mobilité de certaines articulations passives.<br />
5
___________________________________________________________________________<br />
CHAPITRE I
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
Chapitre I<br />
I.1 INTRODUCTION<br />
Dans ce chapitre nous allons définir dans un premier temps les différents types<br />
de <strong>robots</strong> <strong>industriels</strong>, <strong>à</strong> savoir les <strong>robots</strong> série et les <strong>robots</strong> parallèles, les avantages et<br />
les inconvénients seront aussi exposés, puis on s’intéressera particulièrement aux<br />
<strong>robots</strong> parallèles dont on va présenter ses variétés. On terminera par une<br />
présentation de robot Delta.<br />
I.2 LES ROBOTS INDUSTRIELS<br />
Un robot manipulateur, quelle que soit la fonction qui lui est attribuée (transfert<br />
d’objet, soudage, assemblage), est un mécanisme capable de déplacer et de situer un<br />
objet appelé « organe terminal » ou « point outil » dans une partie de l’espace appeler<br />
« volume de travail ». Afin de différencier les <strong>robots</strong> que nous allons étudier <strong>des</strong><br />
manipulateurs simples dont les mouvements sont déterminés par <strong>des</strong> butées rigi<strong>des</strong>,<br />
nous parlerons de « robot industriel » dont la définition générale est donnée ci-<br />
<strong>des</strong>sous.<br />
GÉNÉRALITÉS<br />
« Un robot industriel est un manipulateur <strong>à</strong> plusieurs degrés de liberté contrôlé<br />
automatiquement, reprogrammable et multitâche qui peut être fixe ou mobile pour une<br />
application en automatisation industrielle » [17].<br />
7
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
Le robot industriel se compose d’une structure mécanique animée par <strong>des</strong><br />
actionneurs, <strong>à</strong> partir d’ordres élaborés par un calculateur (Figure I.1). Ces ordres<br />
dépendent <strong>des</strong> informations délivrées par les capteurs. L’utilisation de capteurs<br />
externes, capteurs « extéroceptifs », pour évaluer et mesurer l’interaction du robot<br />
avec l’environnement directement depuis son organe terminal devient une pratique<br />
de plus en plus courante dans les applications robotiques de haute précision.<br />
Capteurs<br />
internes<br />
Electro-mécanique,<br />
optique …<br />
Système de commande<br />
Structure<br />
mécanique<br />
Mécanique<br />
Environnement<br />
Capteurs extéroceptifs<br />
Optique, Vision …<br />
Système intelligent<br />
Stratégie, système expert …<br />
Nous pouvons déj<strong>à</strong> distinguer d’après la figure I.1, les deux types de<br />
coordonnées que l’on rencontre au niveau d’un robot. Il s’agit <strong>des</strong> coordonnées<br />
articulaires ou coordonnées généralisées qui décrivent la configuration du robot<br />
(position <strong>des</strong> articulations motrices) et <strong>des</strong> coordonnées opérationnelles ou<br />
coordonnées de la tâche, qui définissent la position et l’orientation de l’effecteur dans<br />
le repère de la tâche propre <strong>à</strong> l’homme. Les modèles <strong>géométrique</strong>s direct et inverse<br />
permettent de passer d’un système de coordonnées <strong>à</strong> l’autre.<br />
8<br />
Actionneurs<br />
Electro-mécanique,<br />
pneumatique …<br />
Figure I.1 : Structure générale d’un robot industriel.
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
L’architecture mécanique est la structure qui relie la base du robot <strong>à</strong> son<br />
effecteur. Elle est constituée de segments connectés entre eux par <strong>des</strong> articulations<br />
passives ou actives, selon qu’elles sont motorisées ou non.<br />
I.2.1 Les <strong>robots</strong> sériels<br />
Définition : La plupart <strong>des</strong> <strong>robots</strong> <strong>industriels</strong> construits <strong>à</strong> ce jour est de type<br />
sériel, c'est-<strong>à</strong>-dire que leur structure mobile est une chaîne ouverte formée d'une<br />
succession de segments reliés entre eux par <strong>des</strong> liaisons <strong>à</strong> un degré de liberté. Chaque<br />
articulation est commandée par un actionneur situé <strong>à</strong> l'endroit de l'articulation ou sur<br />
un <strong>des</strong> segments précédents [35]. (Figure I.2).<br />
Les <strong>robots</strong> séries possèdent l’avantage de disposer d’un grand volume de travail<br />
et d’être relativement simples sur le plan <strong>des</strong> calculs liés <strong>à</strong> leur commande. Leurs<br />
principaux inconvénients sont les suivants :<br />
Inertie élevée <strong>à</strong> cause de la répartition <strong>des</strong> masses sur toute la chaîne<br />
cinématique (actionneurs, organes de transmission),<br />
Manque de rigidité par la mise en série d’éléments élastiques, fatigue et usure<br />
<strong>des</strong> liaisons de puissance assurant l’alimentation <strong>des</strong> actionneurs (câbles,<br />
tuyaux flexibles),<br />
Figure.I.2 : Le robot IRB 7600-150 (ABB, photo et<br />
graphe d’agencement).<br />
Fatigue et usure <strong>des</strong> liaisons assurant la circulation <strong>des</strong> informations entre les<br />
capteurs et la commande, ce point est très important lorsque il s’agit de sûreté<br />
9<br />
Bâti<br />
Organe<br />
terminal
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
de fonctionnement, puisqu’une erreur de transmission peut avoir <strong>des</strong><br />
conséquences néfastes sur les mouvements du robot [35].<br />
I.2.2 Les <strong>robots</strong> parallèles<br />
Pour certaines applications industrielles telles que l’usinage grande vitesse<br />
(UGV) ou la manutention rapide, les manipulateurs <strong>à</strong> cinématique sérielle ne<br />
semblent plus être les mieux adaptés. En effet, ce type d’architecture implique que<br />
chaque axe motorisé supporte le suivant. Les masses en mouvement sont donc<br />
élevées, ce qui pénalise les performances dynamiques.<br />
C’est pourquoi, les manipulateurs <strong>à</strong> cinématique parallèle sont aujourd’hui de<br />
plus en plus utilisés. Leurs performances dynamiques élevées ainsi que leurs<br />
capacités de charge importantes sont avantageusement mises <strong>à</strong> profit dans le monde<br />
industriel [12], ce qui fait <strong>des</strong> <strong>robots</strong> parallèles <strong>des</strong> <strong>robots</strong> <strong>industriels</strong> par excellence.<br />
Définition : Un manipulateur parallèle est un mécanisme en chaîne cinématique<br />
fermée, dont l’organe terminal est relié <strong>à</strong> la base par plusieurs chaînes cinématiques<br />
indépendantes [23], par exemple la figure (I.3).<br />
Les <strong>robots</strong> parallèles seront présentés comme étant une solution aux limitations<br />
<strong>des</strong> <strong>robots</strong> sériels.<br />
Dans ce but, nous allons préciser les avantages <strong>des</strong> <strong>robots</strong> parallèles mais aussi<br />
présenter leurs limites et inconvénients.<br />
Remarque : l’explication <strong>des</strong> paramètres du graphe d’agencement sont données<br />
dans ce qui suit.<br />
Figure I.3 : Le robot Hexamove-System, photo et<br />
graphe d’agencement.<br />
10<br />
Bâti<br />
Organe terminal
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
I.2.2.1 Avantages<br />
La mise en parallèle de plusieurs chaînes cinématiques entraînées chacune par<br />
un actionneur conduit généralement aux avantages suivants [35] :<br />
Capacité de charge élevée,<br />
Possibilité de mouvements <strong>à</strong> haute dynamique (accélérations élevées),<br />
Rigidité mécanique élevée,<br />
Faible masse mobile,<br />
Fréquence propre élevée, donc peu d'erreur de répétabilité due <strong>à</strong> une<br />
oscillation incontrôlée de la structure mobile,<br />
Possibilité de positionner les actionneurs directement sur la base fixe ou très<br />
proche de celle-ci; cette particularité a les conséquences positives suivantes :<br />
o grand choix de moteurs et de réducteurs par le fait que leur masse joue<br />
peu de rôle dans l'inertie du manipulateur,<br />
o simplification importante <strong>des</strong> problèmes de liaisons entre les moteurs,<br />
les capteurs et le contrôleur (câblage plus simple et plus fiable),<br />
o facilité de refroidissement <strong>des</strong> actionneurs, donc diminution <strong>des</strong><br />
problèmes de précision dûs aux dilatations et puissance potentielle<br />
élevée,<br />
o facilité d'isoler les moteurs de l'espace de travail pour <strong>des</strong> activités en<br />
atmosphère propre ou avec risque de déflagration ou encore pour les<br />
applications nécessitant <strong>des</strong> lavages <strong>à</strong> grande eau,<br />
Facilité d'intégration de capteurs,<br />
Construction mécanique modulaire, simplicité de fabrication et possibilité de<br />
série par la présence de plusieurs composants identiques sur un robot,<br />
Effet <strong>des</strong> tolérances de fabrication sur la précision limité.<br />
Cette liste d’avantages n’est pas forcément respectée par tous les prototypes de<br />
<strong>robots</strong> parallèles. En particulier, les premières machines-outils connaissaient <strong>des</strong><br />
problèmes de précision et de rigidité.<br />
11
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
I.2.2.2 Inconvénients<br />
Par rapport aux <strong>robots</strong> sériels, les inconvénients <strong>des</strong> <strong>robots</strong> parallèles peuvent<br />
être résumés de la façon suivante :<br />
Volume de travail limité en regard du volume total du mécanisme. Pour<br />
palier <strong>à</strong> ce problème, une solution consiste <strong>à</strong> utiliser <strong>des</strong> actionneurs linéaires<br />
orientés selon une même direction. Si l’on augmente la course <strong>des</strong> moteurs, le<br />
volume de travail s’allonge en conséquence. Le rapport volume de travail sur<br />
volume total de la machine augmente alors. Une autre approche consiste <strong>à</strong><br />
utiliser <strong>des</strong> actionneurs rotatifs. En les agençant de manière <strong>à</strong> ce qu’ils<br />
balayent la plus grande plage commune de l’espace, on obtient un volume de<br />
travail important,<br />
Modèles <strong>géométrique</strong>s directs (MGD) parfois difficiles <strong>à</strong> déterminer. La<br />
méthode de résolution itérative de Newton et l’approche par intervalles [24]<br />
(qui garantit l’existence de solutions) constituent <strong>des</strong> éléments de réponse <strong>à</strong><br />
cette difficulté. L’ensemble <strong>des</strong> nouveaux <strong>robots</strong> parallèles présentés dans ce<br />
manuscrit a pour particularité de posséder <strong>des</strong> MGD algébriques,<br />
Fort couplage entre le mouvement <strong>des</strong> différentes chaînes cinématiques. En<br />
conséquence, une trajectoire simple demande souvent une action<br />
parfaitement coordonnée de l’ensemble <strong>des</strong> moteurs. Si au temps de Pollard<br />
[47], les moyens électroniques et informatiques ne permettaient pas de<br />
commander ce type de robot, de nos jours l’asservissement <strong>des</strong> <strong>robots</strong><br />
parallèles est réalisé sans problème majeur du point de vue temps de calcul. Il<br />
faut noter que certains problèmes demeurent malgré tout ; la génération de<br />
trajectoire pour les machines-outils d’architecture parallèle en est un,<br />
Couplage fortement variable entre les différentes chaînes cinématiques ; cette<br />
particularité complique souvent le réglage ; le surdimensionnement <strong>des</strong><br />
actionneurs est une solution pour contourner cette difficulté,<br />
Présence de singularités qui conduisent <strong>à</strong> une perte de contrôle de la structure<br />
mobile, voire <strong>à</strong> une détérioration de la mécanique. C’est le point le plus<br />
critique lors de la conception d’une machine <strong>à</strong> architecture parallèle. Ce<br />
manuscrit propose <strong>des</strong> pistes pour limiter les problèmes de singularités.<br />
12
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
I.2.2.3 Deux générations de <strong>robots</strong> parallèles<br />
Il existe de nombreux historiques concernant les <strong>robots</strong> parallèles tels ceux de<br />
Bonev [27] ou Merlet [25] qui précisent leurs véritables origines. Nous souhaitons<br />
seulement insister sur l’existence de deux générations essentielles de robot parallèle :<br />
La première génération incarnée par les plates-formes de Gough [41] et<br />
Stewart [15]. On parle aujourd’hui de <strong>robots</strong> hexapo<strong>des</strong> [19] : 6 vérins relient<br />
le bâti <strong>à</strong> une plate-forme mobile (Figure I.3), rendant possible l’exécution de<br />
mouvements complexes par la mise en parallèle <strong>des</strong> chaînes cinématiques,<br />
La deuxième génération incarnée par la structure Delta de Clavel [36] : les<br />
<strong>robots</strong> de cette famille sont capables de performances exceptionnelles<br />
(vitesses jusqu’<strong>à</strong> 10 m/s et accélération jusqu’<strong>à</strong> 20 G). On parle dès lors de<br />
<strong>robots</strong> parallèles légers avec pour principales caractéristiques :<br />
o <strong>des</strong> actionneurs fixes sur le bâti,<br />
o <strong>des</strong> composants mobiles légers (Figure I.4).<br />
Remarque : Les <strong>robots</strong> parallèles du LIRMM, présentés dans ce manuscrit,<br />
auront cette particularité d’être de type parallèle léger.<br />
Figure I.4 : Le robot FlexPicker (ABB), photo et graphe<br />
d’agencement.<br />
I.3 PRECISION ABSOLUE, REPETABILITE ET RESOLUTION<br />
13<br />
Bâti<br />
Organe terminal
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
La précision d’un robot est définie par la déviation entre une position<br />
commandée et la position atteinte de l’effecteur (position et orientation). Cette<br />
déviation est définie dans un repère de référence et est quantifiée par la précision<br />
absolue et la répétabilité [31].<br />
La répétabilité nommée également précision relative, est la capacité d’un robot <strong>à</strong><br />
retourner <strong>à</strong> une position précédente. Elle est définie par la dispersion sur la position<br />
de l’organe terminal visée « n » fois. Elle est influencée essentiellement par les jeux et<br />
le frottement entre les différents composants mécaniques du robot, le bruit électrique,<br />
la résolution <strong>des</strong> encodeurs, et d’autres erreurs de type stochastique.<br />
La précision absolue correspond <strong>à</strong> la tolérance <strong>à</strong> l’intérieur de laquelle l’effecteur<br />
peut être placé par rapport <strong>à</strong> la position désirée. Elle est principalement limitée par<br />
<strong>des</strong> facteurs tels que les perturbations de l’environnement de travail, la différence<br />
entre la structure réelle et le modèle <strong>géométrique</strong> utilisé par le contrôleur, l’effet <strong>des</strong><br />
forces de frottement, les jeux dans les articulations, les déflexions <strong>des</strong> articulations et<br />
<strong>des</strong> segments de la structure, la boucle de réglage et l’incertitude entre le repère de<br />
référence et celui de l’effecteur.<br />
La résolution d’un robot représente le plus petit incrément de déplacement qui<br />
peut être exécuté. Elle est déterminée par le type d’actionneur et les capteurs de<br />
position. Cependant, la résolution effective par rapport <strong>à</strong> l’organe terminal peut être<br />
influencée par l’environnement de travail, le frottement, les jeux et l’élasticité dans la<br />
structure du robot.<br />
14
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
Résolution Position<br />
atteinte<br />
Position<br />
précédente<br />
La figure I.5 montre la relation entre la position commandée, la position atteinte,<br />
la précision, la répétabilité et la résolution. Nous venons de voir que les sources<br />
d’imprécision relatives ou absolues d’un robot sont nombreuses, par soucis de clarté<br />
pour la suite, nous les répartissons ci-<strong>des</strong>sous en 4 types [17].<br />
Type 1 : erreurs de nature <strong>géométrique</strong> qui proviennent de la structure<br />
mécanique du robot, telles que les segments et les articulations :<br />
tolérances d’usinage, assemblage, référence,<br />
Type 2 : erreurs issues de non-linéarités, telles que les jeux, le frottement,<br />
l’hystérie et les erreurs dues aux déflexions élastiques dans la structure.<br />
Ces déflexions sont causées par l’élasticité <strong>des</strong> segments et la compliance<br />
<strong>des</strong> articulations sous l’effet du poids du robot, <strong>des</strong> efforts extérieurs ou<br />
<strong>des</strong> forces d’inertie,<br />
Type 3 : erreurs dans la commande du robot issues de la résolution<br />
limitée <strong>des</strong> encodeurs, de la capacité limitée <strong>des</strong> calculateurs, du calcul<br />
de la cinématique inverse et du suivi de trajectoire (erreurs dynamiques),<br />
Type 4 : erreurs générées par l’environnement telles que les variations de<br />
température, l’humidité, les vibrations, les bruits électriques et erreurs de<br />
type stochastique.<br />
Position<br />
commandée<br />
15<br />
-Répétabilité<br />
-Précision<br />
absolue<br />
Figure I.5 : Précision absolue, résolution et répétabilité.
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
I.4 LE ROBOT PARALLELE DELTA<br />
Le robot Delta est né d'un besoin industriel. Les performances visées (cadence de<br />
travail élevée, grande précision, puissance consommée faible) excluaient l'utilisation<br />
de <strong>robots</strong> du marché. Il a été développé début <strong>des</strong> années 80 <strong>à</strong> l'École Polytechnique<br />
Fédérale de Lausanne (EPFL) par Clavel. Le robot Delta (Figure I.6) qui a une<br />
structure pleinement légère, est constitué d'une base fixe et d'une plate-forme mobile<br />
appelée aussi nacelle. Elles sont liées par trois chaînes cinématiques identiques<br />
constituées d'un bras et de deux barres parallèles formant un parallélogramme.<br />
Chaque bras est entraîné par un moteur-réducteur, solidaire de la base. La nacelle<br />
reste toujours parallèle <strong>à</strong> la base, les mouvements de translation de cette dernière<br />
résultent du mouvement combiné <strong>des</strong> trois actionneurs.<br />
Le préhenseur est actionné par un moteur réducteur fixé directement sur la<br />
nacelle (Figure I.6.a), ou par l'intermédiaire d'un bras télescopique couplé <strong>à</strong> un<br />
moteur solidaire de la base (4 ème degré de liberté) (Figure I.6.b).<br />
I.4.1 Convention et représentation<br />
I.6.a I.6.b<br />
Figure I.6 : Le Robot Delta<br />
Il existe plusieurs représentations afin de rendre un mécanisme plus lisible,<br />
chacune d'elles permet une lisibilité accrue de certains paramètres, mais<br />
16
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
s'accompagne d'une perte d'informations sur les autres. Parmi les types de<br />
représentations on peut citer :<br />
I.4.1.1 La photographie (vue en perspective)<br />
Dans ce type de représentation, les articulations composant les chaînes<br />
cinématiques ne sont pas facilement visibles et identifiables (Figure I.7). On peut voir<br />
l'aspect général de la machine, mais pas de manière précise la disposition <strong>des</strong><br />
articulations. Ce type de représentation n'est donc pas suffisant.<br />
Un modèle équivalent de ce robot, nommé LMS_DELTA, a été réalisé au niveau<br />
de notre laboratoire [40]. L’établissement <strong>des</strong> modèles relatifs <strong>à</strong> ce robot est<br />
nécessaire pour simuler ses comportements <strong>géométrique</strong>s et cinématiques, ainsi que<br />
pour l’exploitation ou l’implémentation de la commande.<br />
I.4.1.2 Le Schéma cinématique<br />
Ces schémas (Tableau I.1), très pratiques pour représenter l'agencement <strong>des</strong><br />
différentes liaisons composant un mécanisme, sont de lecture aisée pour les<br />
mécanismes plans et les mécanismes spatiaux simples, mais deviennent vite illisibles<br />
pour les mécanismes spatiaux complexes.<br />
Figure I.7 : Photographie du robot Delta<br />
17
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
Tableau I.1 : Représentation normalisée de quelques liaisons.<br />
I.4.1.3 Le <strong>des</strong>sin d’ensemble.<br />
Figure I.8 : Schéma cinématique du robot Delta.<br />
Le <strong>des</strong>sin d’ensemble est utilisé en mécanique. Il sert <strong>à</strong> définir un mécanisme, son<br />
assemblage et son fonctionnement. Plusieurs vues extérieures, coupes et sections sont<br />
rassemblées sur un document. Ce type de représentation est particulièrement bien<br />
18
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
adapté pour les mécanismes plans, mécanismes qui sont couramment utilisés en<br />
mécanique. Par contre, l’utilisation de <strong>des</strong>sins d’ensemble devient rédhibitoire pour<br />
les mécanismes spatiaux complexes tels que les <strong>robots</strong> parallèles.<br />
I.4.1.4 L e graphe d’agencement.<br />
Les conventions <strong>des</strong> graphes d’agencements sont présentées sur le tableau I.2.<br />
Nom de la liaison<br />
Rotoïde (pivot)<br />
Prismatique (glissière)<br />
Universelle (cardan)<br />
Sphérique (rotule)<br />
19<br />
Représentation<br />
Liaison passive Liaison motorisée<br />
Avec ce type de représentation (Figure I.9), les informations concernant<br />
l’agencement <strong>géométrique</strong> <strong>des</strong> liaisons sont perdues. Par contre la comparaison <strong>des</strong><br />
familles de mécanismes parallèles ainsi que le décompte <strong>des</strong> degrés de liberté est<br />
facilités <strong>à</strong> l’aide de la formule de Grübler (I.1).<br />
R<br />
P<br />
U<br />
S<br />
Tableau I.2 : Conventions <strong>des</strong> graphes d’agencement.<br />
Base<br />
R<br />
R<br />
R<br />
R<br />
P<br />
S S<br />
S S<br />
S S<br />
S S<br />
S S<br />
S S<br />
Figure I.9 : Robot Delta, image CAO et graphe d’agencement.<br />
Nacelle
Ecole Militaire Polytechnique Chapitre I : Généralités<br />
Par exemple, sur la figure I.9, nous constatons que le robot se décompose en trois<br />
chaînes possédant les mêmes articulations, disposées en parallèle entre la base et la<br />
nacelle. Par contre, nous ne pouvons pas affirmer que ces trois chaînes sont<br />
identiques du point de vue de leur géométrie. Le nombre de degrés de liberté de ce<br />
mécanisme se calcule en utilisant la formule de Grübler (I.1) qui donne la mobilité<br />
d’un mécanisme dans le cas général, en dehors <strong>des</strong> positions et <strong>des</strong> agencements<br />
singuliers.<br />
m =<br />
6N<br />
P<br />
−<br />
6N<br />
l<br />
Nl<br />
+ ∑ ddl<br />
i=<br />
1<br />
i<br />
− m<br />
int<br />
20<br />
(I.1)<br />
où m est le nombre de degrés de liberté du mécanisme (en dehors <strong>des</strong><br />
configurations singulières), Np le nombre de soli<strong>des</strong> indépendants (bâti exclu), Nl le<br />
nombre de liaisons entre ces soli<strong>des</strong>, ddli le nombre de degrés de liberté de la liaison<br />
numéro i et mint est le nombre de mobilités internes.<br />
Nl<br />
Pour le robot Delta de la figure I.9, nous avons N 10 , N = 15,<br />
P<br />
= l<br />
∑ ddl = 39,<br />
m = 6 car chacune <strong>des</strong> barres <strong>à</strong> la possibilité de tourner sur elle-même<br />
i=<br />
1<br />
i<br />
int<br />
(axe passant par le centre <strong>des</strong> deux liaisons rotule) sans que la position de la nacelle<br />
ne change. Finalement, nous obtenons m = 6 ⋅10<br />
− 6 ⋅15<br />
+ 39 − 6 = 3.<br />
Le mécanisme que<br />
nous avons représenté dans le graphe d’agencement de la figure I.9 possède donc<br />
trois degré de liberté utile. Par contre, ce type de calcul ne nous permet pas de<br />
connaître leur nature.<br />
I.5 CONCLUSION<br />
Dans ce chapitre on a présenté les différents types de <strong>robots</strong> <strong>industriels</strong> : les<br />
<strong>robots</strong> série et les <strong>robots</strong> parallèles ainsi que leur avantages et inconvénients, puis on<br />
s’est intéressés aux <strong>robots</strong> parallèles vu qu’ils sont plus favorable que les <strong>robots</strong> série<br />
dans les applications de précision, on a donc présente leurs variétés. Par la suite on<br />
s’est intéressé <strong>à</strong> l’étude du robot Delta.<br />
Dans le chapitre suivant, on présentera les différents outils de l’étalonnage<br />
<strong>géométrique</strong> du robot Delta.
___________________________________________________________________________<br />
CHAPITRE II
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Chapitre II<br />
MODELISATION ET OUTILS DE L’ÉTALONNAGE<br />
II.1 INTRODUCTION<br />
Dans ce chapitre nous allons présenter une modélisation du robot Delta qui<br />
définira l'ensemble <strong>des</strong> paramètres <strong>géométrique</strong>s <strong>à</strong> identifier et discutée ; par la suite,<br />
on présentera <strong>des</strong> outils qui seront nécessaires aux procédures d'étalonnage<br />
(exemples : les modèles <strong>géométrique</strong>s, influence <strong>des</strong> erreurs sur les paramètres<br />
<strong>géométrique</strong>s, les mesures, etc.).<br />
II.2 MODELISATION DU ROBOT<br />
II.2.1 Le type d’erreur<br />
Dans l’introduction générale nous avons supposé que la modélisation théorique<br />
était différente de la modélisation réelle du robot. Ceci est dû <strong>à</strong> deux types d’erreurs.<br />
II.2.1.1 Les erreurs d’origine <strong>géométrique</strong><br />
On peut distinguer deux origines <strong>à</strong> ce type d’erreur :<br />
Les tolérances de fabrication et d’assemblage du robot,<br />
Une mauvaise connaissance <strong>des</strong> biais <strong>des</strong> valeurs articulaires.<br />
22
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
L’objectif de notre travail sera d’essayer de compenser uniquement ces deux<br />
types d’erreur.<br />
Mais le manipulateur n’est pas seul, il fait partie en général d’un ensemble<br />
robotisé. Afin de réaliser une tâche, il nous faudra donc mettre en correspondance le<br />
repère de base et le repère lié <strong>à</strong> l’objet (manipulé, usiné etc.), mais aussi le repère du<br />
mobile et le repère lié <strong>à</strong> l’outil. Ce placement du robot <strong>à</strong> l’intérieur d’une cellule<br />
robotisée (voir [33]) devra être effectué <strong>à</strong> chaque changement d’outil ou d’objet.<br />
L’indexation du robot peut se faire d’une manière indépendante de l’étalonnage<br />
intrinsèque du robot parallèle et ne sera donc pas traité dans ce document.<br />
II.2.1.2 Les erreurs d’origine non-<strong>géométrique</strong><br />
Plusieurs types d’erreur non-<strong>géométrique</strong>s peuvent détériorer la précision du<br />
manipulateur parallèle :<br />
Les flexions, torsions, compressions, qui s’exercent sur les segments du robot<br />
en fonction de la charge manipulée,<br />
L’influence de la variation de température sur les matériaux composant le<br />
manipulateur,.<br />
Le jeu mécanique dans les articulations. Cette erreur est difficilement<br />
modélisable et elle est dépendante de la qualité <strong>des</strong> articulations.<br />
Les travaux déj<strong>à</strong> effectués sur les <strong>robots</strong> [50, 02, 44] montrent que la majeure<br />
partie <strong>des</strong> erreurs sont d’origine <strong>géométrique</strong>.<br />
Pour les <strong>robots</strong> parallèles, il existe peu de référence sur l’influence <strong>des</strong> erreurs<br />
d’origine non-<strong>géométrique</strong> sont difficilement modélisables et ne seront pas prises en<br />
compte dans ce document : l’étalonnage sera donc strictement <strong>géométrique</strong>.<br />
II.2.2 La modélisation du robot<br />
Comme nous l’avons vu précédemment, nous nous intéressons <strong>à</strong> un robot<br />
parallèle de type Delta.<br />
La modélisation complète du robot peut poser un certain nombre de problèmes.<br />
En effet, certains paramètres, soit sont mieux estimés que d’autres, soit ont une<br />
23
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
influence négligeable sur l’erreur de positionnement du mobile. Or, le nombre<br />
minimal de mesures nécessaires pour réussir un étalonnage sera fonction du nombre<br />
d’inconnues <strong>à</strong> déterminer. De plus, la convergence <strong>des</strong> algorithmes d’optimisation<br />
que nous utiliserons pour calculer les paramètres <strong>géométrique</strong>s, peut être<br />
problématique si on considère un trop grand nombre de paramètres. Il faudra donc<br />
faire un choix sur la nature <strong>des</strong> inconnues <strong>à</strong> prendre en compte, ceci en fonction de<br />
leur influence sur l’erreur de positionnement. Il faut ensuite définir le nombre de<br />
paramètres nécessaires pour modéliser <strong>géométrique</strong>ment le problème. Il doit être<br />
suffisant, mais il peut être redondant, par exemple pour simplifier la résolution. Nous<br />
préférerons que le paramétrage soit minimal, ceci afin de diminuer le plus possible le<br />
nombre d’inconnues considérées. Les paramètres sont alors indépendants (voir [46]).<br />
Cette indépendance peut-être vérifiée en considérant le rang de la jacobienne <strong>des</strong><br />
paramètres :<br />
Si son rang est maximal, chaque paramètre est indentifiable<br />
indépendamment.<br />
Sinon, il existe une relation qui lie certains paramètres. Dans ce cas il sera<br />
nécessaire de fixer arbitrairement l’un d’eux (ou plusieurs suivant la chute<br />
du rang de la matrice) pour identifier les autres ou de déterminer une<br />
relation qui les lient. Physiquement, cela signifie que certains paramètres<br />
sont redondants pour modéliser le problème.<br />
Vischer [32] a introduit une règle pour calculer le nombre minimal de paramètres<br />
nécessaires <strong>à</strong> la modélisation du robot.<br />
où<br />
C = 3R + P + SS +E +6L + 6(F – 1)<br />
− C est le nombre minimal de paramètres <strong>géométrique</strong>s,<br />
− R, le nombre de liaisons rotoï<strong>des</strong> (1 degré de liberté),<br />
− P, le nombre de liaisons prismatiques (1 degré de liberté),<br />
− SS, le nombre de paires de rotules,<br />
− E, le nombre de capteurs articulaires, c’est-<strong>à</strong>-dire le nombre de liaisons<br />
instrumentées,<br />
24
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
− L, le nombre de boucles fermées constituées de l’ensemble <strong>des</strong> chaînes<br />
cinématiques fermées que l’on peut considérer sur le manipulateur,<br />
− et F, le nombre de repères arbitrairement positionnés sur le manipulateur,<br />
Cette règle, appliquée sur le robot Delta, donne pour différents types de<br />
modélisations <strong>des</strong> paramètres, le tableau II.1 :<br />
<strong>robots</strong><br />
articulation -<br />
chaîne - trains<br />
R P SS E L F C<br />
Delta-Cardan 3[5R] 3*5 0 0 3 2 2 66<br />
Linéaire -Delta 3[P(2S/2S)] 0 3*1 3*2 3 5 2 48<br />
Linéaire -Delta 3[P(5R/5R)] 3*10 3*1 0 3 5 2 132<br />
Delta 3[R(2S/2S)] 3*1 0 3*2 3 5 2 54<br />
Delta 3[R(5S/5R)] 3*11 0 0 3 5 2 138<br />
Tableau II.1 : Nombre minimal de paramètres nécessaires <strong>à</strong> la modélisation du<br />
robot Delta.<br />
Remarque : En général, nous définissons deux repères arbitraires (F=2) : le repère<br />
de référence (ou repère de base (O, x, y, z)) et le repère lié <strong>à</strong> l’organe terminal (ou plus<br />
généralement lié au mobile (C, xm, ym, zm)).<br />
Dans les paragraphes suivants, nous allons détailler les paramètres <strong>géométrique</strong>s<br />
du robot suivant la modélisation choisie pour ses chaînes.<br />
II.2.2.1 Paramétrage du robot Delta<br />
Remarque : dans la figure II.2 on a imaginé que la nacelle attachée <strong>à</strong> la base, et<br />
pour la convenance, les repères {0}, {1} et {2} sont représentés dans <strong>des</strong> positions de<br />
translation. En faite, elles sont reliées par <strong>des</strong> rotations pures au repaire {B}.<br />
25
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Terminal attaché<br />
<strong>à</strong> la base<br />
{ B }<br />
z B<br />
b 0 0<br />
i<br />
z p<br />
+ Di<br />
Base<br />
y p<br />
{ P }<br />
y B<br />
B x<br />
Figure II.2 : Le paramétrage d'une chaîne du robot delta avec <strong>des</strong> déviations <strong>géométrique</strong>s.<br />
B i<br />
26<br />
O i<br />
0<br />
d<br />
Axe de<br />
Moteur<br />
i<br />
x<br />
p<br />
Lb i<br />
α i<br />
Lb i<br />
C i,<br />
2<br />
C i<br />
C i,<br />
1<br />
Mobile<br />
Figure II.1 : Le paramétrage du robot delta sans les déviations <strong>géométrique</strong>s.
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Les points, les lignes et les repaires sont définis <strong>à</strong> partir de la figure II.1 et II.2<br />
comme suit:<br />
Bi,1,2 : les points centraux <strong>des</strong> articulations sphérique fixées a la nacelle,<br />
en d’autres termes, les articulations sphérique distaux.<br />
Ci,1,2 : les points centraux <strong>des</strong> articulations sphériques fixées aux bras,<br />
on les appelle aussi les articulations sphériques proximales.<br />
l d , l p : les sections reliant les points Bi,1 <strong>à</strong> Bi,2 et Ci,1 <strong>à</strong> Ci,2 ,<br />
respectivement.<br />
Bi , Ci : les points centraux <strong>des</strong> sections l d , l p ,respectivement.<br />
Oi : la projection du point Ci sur l’axe du moteur.<br />
Oi1,2 : <strong>des</strong> points appartenant a l'axe du moteur situé <strong>à</strong> ± l d de Oi .<br />
{B} : le repère {B} est arbitrairement fixé <strong>à</strong> la base.<br />
{P} : le repère {P} est arbitrairement fixé <strong>à</strong> la nacelle.<br />
{0} : l’axe z du repère <strong>des</strong> articulations sphériques distales {0} est<br />
parallèle <strong>à</strong> l p.<br />
{1} : l’axe z du repère {1} est parallèle <strong>à</strong> l'axe du moteur.<br />
{2} : le repère {2} obtenu du repère {1} tordu par une angle du moteur.<br />
Les vecteurs et les matrices de rotation contenant les six coordonnées<br />
universelles utilisées dans la modélisation.<br />
B<br />
La matrice de rotation décrivant<br />
P R = Rot 3(<br />
z,<br />
γ)<br />
. Rot 3(<br />
y,<br />
β)<br />
.. Rot 3(<br />
x,<br />
α )<br />
l'orientation du repère {P}<br />
relativement au repère {B}<br />
B<br />
{ x , y , z }<br />
P<br />
{P} relativement au repère {B} avec les<br />
trois coordonnées cartésiennes.<br />
Matrice de rotation contenant les trois coordonnées articulaires.<br />
1<br />
Q 2 i = Rot 3 ( z , θ i )<br />
La matrice de rotation contenant<br />
l'angle θ i du moteur.<br />
Grandeurs scalaires, vecteurs et matrices de rotation contenant les 54<br />
paramètres <strong>géométrique</strong>s:<br />
B P<br />
0 T i = 0 T i = Rot ( z , θ i ) . Rot ( x , α )<br />
Une matrice de rotation décrivant le<br />
repère {0} relativement aux repères<br />
{B} et {P} respectivement.<br />
0<br />
1<br />
= T Le vecteur décrit l'origine du repère<br />
( x , ∆ β ) .. Rot ( y ∆ )<br />
∆ T = Rot<br />
, γ<br />
{ } T<br />
D , D , D<br />
i<br />
i<br />
27<br />
Une matrice de rotation décrivant le<br />
repère {1} relativement au repère {0}.<br />
0<br />
D i = Un vecteur se dirige du point Bi de la<br />
xi yi zi<br />
{ } T<br />
La , La , La<br />
2<br />
La i =<br />
xi yi<br />
avec : Laxi = Lai cos( i<br />
o<br />
α )<br />
zi<br />
nacelle attaché a la base vers le point<br />
Oi sur l'axe de moteur.<br />
Un vecteur se dirige du point Oi vers<br />
le point Ci, comprenant le codeur<br />
offset et la longueur du bras Lai.
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
o α )<br />
Laxi = Lai sin( i<br />
{ } T<br />
0<br />
b i = b , b , b<br />
Un vecteur se dirige de l'origine <strong>des</strong><br />
xi yi zi<br />
0<br />
2<br />
{ }<br />
repères {B} et {P} respectivement, au<br />
point Bi.<br />
T<br />
d i = d xi , d , d yi zi<br />
Un vecteur sa composante z est la<br />
moitié de l = B − B )<br />
∆<br />
{ } T<br />
∆ C , ∆ C , C<br />
C i =<br />
∆<br />
xi yi<br />
zi<br />
28<br />
d ( i,<br />
1 i,<br />
2<br />
Un vecteur d’erreur défini comme<br />
différence du vecteur :<br />
OC i 1 = C − O )<br />
, ( i,<br />
1 i,<br />
1<br />
et le vecteur OC i ( = Ci<br />
− Oi<br />
)<br />
Lb La longueur moyenne <strong>des</strong> avant-bras.<br />
i<br />
∆ Lbi<br />
La moitié de la différence <strong>des</strong><br />
longueurs <strong>des</strong> avant-bras<br />
Tableau II.2 : Le paramétrage <strong>des</strong> trois chaînes articulaires R(2S/2S) du robot.<br />
II.2.2.2 Modèle 54<br />
Vischer [32] suppose que les avant-bras comme les caractéristiques <strong>des</strong><br />
articulations paires, la distance entre deux points appartenant <strong>à</strong> une articulation<br />
paire peut varier pendant le mouvement de cette dernière, ceci mène <strong>à</strong> un ensemble<br />
de six équations de fermeture qui ont <strong>des</strong> variables articulaires passives<br />
dépendantes.<br />
Pour la fermeture d’une chaîne cinématique articulaire, on utilise la norme<br />
euclidienne du vecteur entre l’articulation sphérique proximal et distal, et qui est<br />
égale <strong>à</strong> la longueur de l'avant-bras correspondant.<br />
Les deux équations de fermeture pour une chaîne cinématique principale i peut<br />
être écrites comme suit :<br />
( ) ( ) ( ) 2<br />
T<br />
Bi,<br />
1,<br />
2 − Ci,<br />
1,<br />
2 . Bi,<br />
1,<br />
2 − Ci,<br />
1,<br />
2 = Lb ± ∆Lb<br />
avec<br />
B<br />
B<br />
0 0 ( b i d )<br />
Bi , 1,<br />
2 = P + PR<br />
. 0T<br />
. ± i<br />
P<br />
i<br />
i<br />
2 2 ⎞<br />
( ) ⎞<br />
La i±<br />
∆C<br />
⎟ ⎟<br />
⎠ ⎠<br />
B<br />
1<br />
⎛ 0 0 0 ⎛ 1<br />
C i,<br />
1,<br />
2 = 0T<br />
i . ⎜ bi+<br />
D i+<br />
∆T<br />
i.<br />
⎜ ± d i+<br />
2Q<br />
i.<br />
1<br />
i<br />
⎝<br />
⎝<br />
i=1…3 (II.1)
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
pour la simplicité l’équation II.1 sera écrite comme :<br />
( ) ( ) ( ) 2<br />
T<br />
B i C i . B i + C i = Lb + ∆Lb<br />
+ i = 1…3 (II.2)<br />
( ) ( ) ( ) 2<br />
T<br />
Bi<br />
C i . B i − C i = Lb − ∆Lb<br />
avec :<br />
CB<br />
i<br />
i<br />
i<br />
i<br />
− i = 1…3 (II.3)<br />
( B i1+<br />
B i2<br />
) −(<br />
C i1+<br />
C i2<br />
)<br />
( B i1−<br />
B i2<br />
) −(<br />
C i1−<br />
C i2<br />
)<br />
= et ∆ i =<br />
2<br />
i<br />
29<br />
d<br />
Par l'addition et la soustraction <strong>des</strong> équations II.2 et II.3, on obtient le modèle<br />
54, qui est bien adapté au robot delta :<br />
G1:<br />
II.2.2.3 Modèle 24 :<br />
2<br />
i=1..3 (II.4)<br />
Pour établir le modèle 24, on simplifie le modèle 54 en supposant que la nacelle<br />
reste parfaitement parallèle <strong>à</strong> la base. En d'autres termes, le parallélogramme spatial<br />
reste parfait. C'est la même prétention sur laquelle les modèles nominaux de Clavel<br />
[37] sont basés.<br />
T<br />
T<br />
2<br />
CB i . CB i + ∆d<br />
i . ∆d<br />
i = Lb + ∆ i<br />
G2: CB i . ∆ d i = Lb * ∆Lb<br />
i i<br />
avec :<br />
On peut donc dire que le modèle 24 est un modèle nominal prolongé. Pour l’état<br />
complet (paragraphe II.2.1), trois codeurs d’offsets θ Oi et trois angles d'inclinaison<br />
<strong>des</strong> moteurs α doivent être ajoutés (tableau II.2). Les codeurs offset ont une<br />
i<br />
influence importante sur l'exactitude résultante, comme on le verre dans la phase<br />
d'identification en chapitre IV. Donc par conséquent, on obtient un modèle<br />
complet <strong>à</strong> 24 paramètres.<br />
T<br />
Lb<br />
2<br />
i<br />
−T<br />
i.<br />
( b i + D i + T i.<br />
Q i.<br />
La i )<br />
. ( di+<br />
Qi.<br />
Ci)<br />
CB i = P + R.<br />
T i.<br />
b i<br />
∆<br />
∆<br />
di= R.<br />
T.<br />
di−Ti.<br />
∆T<br />
∆
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Aucun modèle nominal prolongé ne permet <strong>des</strong> erreurs dans le parallélogramme<br />
spatial, ainsi que la nacelle reste toujours parallèle <strong>à</strong> la base.<br />
R= I<br />
(II.5)<br />
où : I est la matrice d’identité (3x3).<br />
Le nombre de coordonnées universelles est réduit de six aux trois coordonnées<br />
cartésiennes qui décrient le repère {P}. cette simplification est valide, si et seulement<br />
si, les trois lignes données par l'axe du moteur, la canalisation de raccordement <strong>des</strong><br />
articulations sphériques proximaux et la canalisation de raccordement <strong>des</strong><br />
articulations sphériques distaux restent parfaitement parallèles. Pour cela 18<br />
paramètres seront fixés <strong>à</strong> leurs valeurs nominales.<br />
∆ T i = I , ∆ C i= I , ∆ Lb = I Ensemble de paramètres P1 i = 1..3 (II.6)<br />
i<br />
La substitution de l’équation (II.5) et de l'équation (II.6) dans les équations (II.4),<br />
prouve que b i et aussi bien que d i sont <strong>des</strong> vecteurs contenant encore un ensemble<br />
de 12 paramètres disparaissent.<br />
b i , d i disparaissent Ensemble de paramètre P2 i = l…3 (II.7)<br />
Géométriquement, ceci correspond <strong>à</strong> la réduction de la nacelle <strong>à</strong> un seul point et<br />
la dégénération de la chaîne cinématique articulaire [R(2S/2S) ] <strong>à</strong> une chaîne<br />
cinématique de R2S (figure II.2).<br />
Une autre conséquence de l'équation II.7 est la dégénération du deuxième<br />
ensemble d'équations G2 donné dans II.4 <strong>à</strong> l'identité 0 = 0, tandis que le premier<br />
ensemble G1 mène au modèle 24 :<br />
T<br />
CB i . CB i=<br />
avec :<br />
Lb<br />
2<br />
i<br />
CB i=<br />
P−T<br />
+<br />
i.<br />
( D i Q i.<br />
La i)<br />
i = 1..3 (II.8)<br />
Ce modèle peut être appliqué au robot delta en supposant que la nacelle reste<br />
toujours parfaitement parallèle <strong>à</strong> la base.<br />
30
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Figure II.3 : Interprétation <strong>géométrique</strong> de Modèle 24 comme structure spatiale 3(R2S).<br />
II.2.2.4 Modèle nominal :<br />
Pour convertir le model 24 en modèle nominal proposé par Clavel [37], la<br />
partie du tableau II.2 contenant les paramètres <strong>géométrique</strong>s sera écrite comme :<br />
( z , θ ) . Rot ( x , π )<br />
T i<br />
i<br />
D i =<br />
i<br />
R=Rb-Ra la différence entre le rayon de la<br />
= Rot<br />
Pour un robot symétrique Delta:<br />
2<br />
θ = 2 * (i-3) * π /2 avec i= 1…3<br />
{ } T<br />
R , 0 , 0<br />
{ }<br />
base et la nacelle.<br />
T<br />
La i = La , 0 , 0<br />
longueur unique de bras sans aucune<br />
excentration du codeur offset<br />
Lbi = Lb longueur unique <strong>des</strong> avant-bras.<br />
Tableau II.3 : les paramètres du modèle nominal dérivé du tableau II.2<br />
31
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
II.3 LES MODELES GEOMETRIQUES<br />
Pour les <strong>robots</strong>, il existe deux modèles <strong>géométrique</strong>s:<br />
Le modèle <strong>géométrique</strong> direct (ou MGD) qui permet, <strong>à</strong> partir de l'état <strong>des</strong><br />
actionneurs, de déduire la position et l'orientation de l'organe terminal,<br />
Le modèle <strong>géométrique</strong> inverse (ou MGI) qui permet, <strong>à</strong> partir de la<br />
position et de l'orientation de l'organe terminal, de déduire l'état <strong>des</strong><br />
actionneurs.<br />
Ces modèles serviront d'équations de base pour les équations de contraintes<br />
nécessaires pour <strong>l'étalonnage</strong>. Nous allons donc détailler ces modèles <strong>géométrique</strong>s<br />
pour le robot Delta.<br />
II.3.1 Les Modèles Géométriques du robot Delta<br />
MGD<br />
Paramètres<br />
Géométriques<br />
du Robot<br />
MGI<br />
II.3.1.1 Le Modèle Géométrique Direct (MGD)<br />
Pour la modélisation <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> <strong>à</strong> structures fermées, une méthode<br />
(parmi plusieurs [37]) proposée par Khalil et Dombre [42] consisterait <strong>à</strong> ouvrir les<br />
boucles cinématiques au niveau de la nacelle puis <strong>à</strong> étudier chaque chaîne<br />
séparément en fonction <strong>des</strong> contraintes imposées par les autres chaînes (contraintes<br />
de fermeture <strong>des</strong> boucles). Mais le fait que la nacelle n’effectue que <strong>des</strong> mouvements<br />
de translation permet une formulation plus simple <strong>des</strong> modèles <strong>géométrique</strong>s [37].<br />
La simplification de représentation décrite par la figure II.5 est considérée.<br />
αi<br />
P (Position)<br />
Figure II.4 : Modèle <strong>géométrique</strong> de robot Delta<br />
32
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
avec :<br />
Figure II.5 : Chaîne cinématique équivalente en<br />
considérant que la nacelle est réduite <strong>à</strong> un point.<br />
Ra : distance entre le centre de la base fixe et l’axe de rotation du bras ;<br />
Rb : distance entre le centre P de la nacelle et le côté du parallélogramme solidaire<br />
de la nacelle ;<br />
La : longueur du bras ;<br />
Lb : longueur d’une barre parallèle ;<br />
R : différence entre les longueurs Ra et Rb ; cette distance définit la position du<br />
point Ai ; cette dernière est obtenue par une translation d’amplitude Rb de la<br />
I ème chaîne cinématique qui amène le point Bi au centre de la nacelle, le point<br />
Oi en Ai et le point Ci en Ci’ ; l’axe de rotation du bras ainsi translaté est<br />
nommé ai.<br />
Les angles caractéristiques de cette structure sont [37] :<br />
αi : angle entre le i ème bras et le plan de la base fixe. Par convention, l’angle αi est<br />
positif lorsque le bras est situé du côté de la nacelle ;<br />
βi : angle entre le plan du i ème parallélogramme et le plan horizontal, mesuré dans<br />
un plan vertical πi contenant le bras i ;<br />
γi : angle entre le plan vertical πi et une <strong>des</strong> barres du parallélogramme i ;<br />
33
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
θi : angle entre le plan πi et le plan Oxz.<br />
Les trois orientations de l’effecteur de ce robot sont constantes, sur le plan<br />
cinématique, une simplification de la géométrie peut donc être effectuée ; une chaîne<br />
cinématique est représentée <strong>à</strong> la figure II.5 [37]. Cette simplification est obtenue par<br />
une translation de l’ensemble bras-barres parallèles de telle sorte que les points Oi et<br />
Ai soient confondus, même chose pour les points Bi et P.<br />
Clavel [37] propose une méthode également basée sur la simplification<br />
précédemment présentée. Cette méthode, basée sur les relations de la géométrie<br />
analytique, consiste <strong>à</strong> exprimer les intersections d’une sphère avec 3 cercles.<br />
Nous nous référons <strong>à</strong> La figure II.5; le point P peut être considéré comme le<br />
centre d’une sphère de rayon Lb, les points Ai sont les centres de cercles de rayon La<br />
appartenant au plan πi et les points Ci’ sont donnés par les intersections <strong>des</strong> trois<br />
cercles de rayon La avec la sphère de rayon Lb centrée en P.<br />
Les projections dans le repère de la base donne les coordonnées du point Ci :<br />
[ ( R La cosα ) cosθ<br />
, ( R + La cosα<br />
) sinθ<br />
, −La<br />
sinα<br />
]<br />
+ (II.9)<br />
i<br />
i<br />
L’équation de la sphère de centre P (x, y, z) et de rayon Lb est :<br />
2<br />
2<br />
2 2<br />
( X x)<br />
+ ( Y − y)<br />
+ ( Z − z)<br />
= Lb<br />
i<br />
34<br />
i<br />
− (II.10)<br />
Pour les points Ci appartenant <strong>à</strong> la sphère, remplaçons les coordonnées de (II.9)<br />
dans l’équation (II.10) :<br />
2<br />
2<br />
2 2<br />
( ( + La cos ) cosθ<br />
− x)<br />
+ ( ( R + La cosα<br />
) sinθ<br />
− y)<br />
+ ( − La sinα<br />
− z)<br />
= Lb<br />
R i i<br />
i<br />
i<br />
D’où :<br />
x<br />
2<br />
− 2 x<br />
α (II.11)<br />
2<br />
( R + La cosα<br />
) cosθ<br />
+ y − 2 y ( R + La cosα<br />
)<br />
i<br />
i<br />
=<br />
Lb<br />
2<br />
i<br />
− La<br />
i<br />
sinθ<br />
+ z<br />
2<br />
− R<br />
2<br />
2<br />
+ 2 z La sinα<br />
− 2 R La cosα<br />
i<br />
i<br />
(II.12)<br />
Les trois équations (II.12) peuvent être résolues selon x, y, z pour obtenir le<br />
modèle <strong>géométrique</strong> direct et selon α i pour le modèle inverse.<br />
Pour simplifier l’écriture du MGD, nous introduisons les entités suivantes :
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
35<br />
(II.13)<br />
alors :<br />
2<br />
4<br />
2<br />
5<br />
H<br />
H<br />
H<br />
H<br />
z<br />
x +<br />
= (II.14)<br />
2<br />
3<br />
2<br />
1<br />
H<br />
H<br />
H<br />
H<br />
z<br />
y +<br />
= (II.15)<br />
Remplaçons les expressions de x et y dans l’équation (II.15) pour i=1 :<br />
L<br />
N<br />
L<br />
M<br />
M<br />
z<br />
2<br />
4<br />
2 −<br />
±<br />
−<br />
= (II.16)<br />
avec :<br />
(II.17)<br />
1<br />
2<br />
1<br />
3<br />
1<br />
4<br />
2<br />
2<br />
2<br />
3<br />
2<br />
4<br />
1<br />
2<br />
1<br />
1<br />
1<br />
5<br />
2<br />
2<br />
3<br />
1<br />
4<br />
5<br />
2<br />
2<br />
2<br />
1<br />
2<br />
5<br />
2<br />
1<br />
D<br />
H<br />
F<br />
H<br />
E<br />
H<br />
H<br />
H<br />
H<br />
N<br />
G<br />
H<br />
F<br />
H<br />
E<br />
H<br />
H<br />
H<br />
H<br />
H<br />
H<br />
M<br />
H<br />
H<br />
H<br />
L<br />
+<br />
+<br />
−<br />
+<br />
=<br />
−<br />
+<br />
−<br />
+<br />
=<br />
+<br />
+<br />
=<br />
( )<br />
( )<br />
2<br />
3<br />
1<br />
3<br />
3<br />
2<br />
1<br />
2<br />
3<br />
1<br />
2<br />
1<br />
5<br />
2<br />
3<br />
1<br />
3<br />
3<br />
2<br />
1<br />
2<br />
3<br />
1<br />
2<br />
1<br />
4<br />
2<br />
3<br />
1<br />
3<br />
3<br />
2<br />
1<br />
2<br />
3<br />
1<br />
2<br />
1<br />
3<br />
2<br />
3<br />
1<br />
3<br />
3<br />
2<br />
1<br />
2<br />
3<br />
1<br />
2<br />
1<br />
2<br />
2<br />
3<br />
1<br />
3<br />
3<br />
2<br />
1<br />
2<br />
3<br />
1<br />
2<br />
1<br />
1<br />
2<br />
2<br />
2<br />
sin<br />
2<br />
sin<br />
cos<br />
2<br />
cos<br />
cos<br />
2<br />
cos<br />
2<br />
G<br />
F<br />
G<br />
F<br />
G<br />
F<br />
G<br />
F<br />
G<br />
F<br />
G<br />
F<br />
H<br />
D<br />
F<br />
D<br />
F<br />
D<br />
F<br />
D<br />
F<br />
D<br />
F<br />
D<br />
F<br />
H<br />
D<br />
E<br />
D<br />
E<br />
D<br />
E<br />
D<br />
E<br />
D<br />
E<br />
D<br />
E<br />
H<br />
F<br />
E<br />
F<br />
E<br />
F<br />
E<br />
F<br />
E<br />
F<br />
E<br />
F<br />
E<br />
H<br />
G<br />
E<br />
G<br />
E<br />
G<br />
E<br />
G<br />
E<br />
G<br />
E<br />
G<br />
E<br />
H<br />
La<br />
G<br />
tg<br />
E<br />
La<br />
R<br />
F<br />
La<br />
R<br />
E<br />
La<br />
R<br />
R<br />
La<br />
Lb<br />
D<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
+<br />
−<br />
−<br />
+<br />
+<br />
−<br />
=<br />
−<br />
+<br />
+<br />
−<br />
−<br />
=<br />
+<br />
−<br />
−<br />
+<br />
+<br />
−<br />
=<br />
+<br />
−<br />
−<br />
+<br />
+<br />
−<br />
=<br />
−<br />
+<br />
+<br />
−<br />
−<br />
=<br />
−<br />
=<br />
=<br />
+<br />
=<br />
+<br />
=<br />
+<br />
+<br />
+<br />
−<br />
=<br />
α<br />
θ<br />
θ<br />
α<br />
θ<br />
α<br />
α
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
II.3.1.2 Le Modèle Géométrique Inverse (MGI)<br />
Le modèle <strong>géométrique</strong> inverse vise le calcul <strong>des</strong> coordonnées articulaires αi<br />
correspondant <strong>à</strong> une situation donnée (x, y, z) de l’organe terminal. Il faut donc<br />
résoudre les équations (II.12) selon les variables articulaires motorisées, la résolution<br />
donne l’expression suivante [37] [16].<br />
avec :<br />
⎛<br />
⎜ − 2z<br />
±<br />
⎜<br />
i ⎝<br />
tg =<br />
2<br />
α<br />
4<br />
2 2 ( z + R )<br />
Qi = 2 x cosθ<br />
i + 2 y sinθ<br />
i<br />
1<br />
S =<br />
La<br />
2 2 2 2 2 2<br />
( − x − y − z + Lb − La − R )<br />
II.3.1.2 Interface graphique<br />
⎛ 2<br />
⎞<br />
2 2 R ⎞ ⎛ ⎛ R S ⎞ ⎞<br />
− S + Q ⎜ ⎟ ⎜ ⎟ ⎟<br />
⎟<br />
i 1 − + Q − 2<br />
⎜ ⎟<br />
⎜ − 4<br />
2 i<br />
R<br />
⎝ ⎝ ⎠ ⎠<br />
⎟<br />
⎝ La ⎠<br />
La<br />
⎠<br />
⎛<br />
⎛ R ⎞⎞<br />
⎜ − 2R<br />
− S − Qi<br />
⎜ − 1⎟⎟<br />
⎝<br />
⎝ La ⎠⎠<br />
36<br />
(II.18)<br />
(II.19)<br />
Dans le chapitre IV on a choisis les points de simulation pour les métho<strong>des</strong><br />
d’étalonnage d’une manière complètement aléatoire, pour vérifier si on est toujours<br />
dans l’espace de travail, on a mis en place une interface (Interface Graphique<br />
Programmée par MatLab) de simulation qui nous permet de visualiser le déplacement<br />
du robot dans l’espace en fonction <strong>des</strong> variables opérationnelles et articulaires.
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Zone pour commander<br />
les mouvements du<br />
robot dans l’espace<br />
opérationnel.<br />
Zone pour commander<br />
les mouvements du<br />
robot dans l’espace<br />
articulaire.<br />
Zone pour l’affichage<br />
<strong>des</strong> valeurs x, y et z dans<br />
l’espace opérationnel.<br />
Zone pour l’affichage<br />
<strong>des</strong> valeurs αi dans<br />
l’espace articulaire.<br />
Figure II.6 : L’interface utilisée pour simuler de la position de robot Delta par le MGD et MGI.<br />
II.4 DETERMINATION DU VOLUME DE TRAVAIL<br />
L’objectif de la détermination de l’espace de travail du robot est de déterminer<br />
les points accessibles par l’effecteur du robot et d’éviter les configurations singulières<br />
lors de l’exécution <strong>des</strong> tâches. Cet espace est la zone que le point P, centre de la<br />
nacelle, peut atteindre ; le montage d’un outil, ou d’un dispositif, provoquera le<br />
37<br />
Zone pour l’affichage<br />
<strong>des</strong> mouvements du<br />
robot Delta 740.<br />
Quitter le programme.
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
décalage du point vers le point fonctionnel de cet outil et <strong>des</strong> translations<br />
correspondantes de l’espace de travail.<br />
Il faut donc intégrer un module de calcul qui délimite l’espace de travail pour le<br />
robot LMS_DELTA, pour le cas de ce manipulateur les restrictions doivent être<br />
imposées sur les liaisons actives et passives. Les deux contraintes qui limitent le<br />
déplacement de la nacelle <strong>à</strong> une portion de l’espace de travail sont [37]. Les angles<br />
α i , β i et γ i sont indiqués dans la figure II.5.<br />
Limite 1 :<br />
( α + β ) min ≤ α + β i ≤ ( α + β ) max<br />
i (II.20)<br />
Pour les deux raisons suivantes [37]:<br />
• Eviter les interférences entre le bras et les barres parallèles ainsi qu’entre les<br />
barres parallèles et les moteurs de bras lorsque α i + β est petit,<br />
• Eviter les ambiguïtés de transformation de coordonnées qui se produisent lorsque<br />
l’angle α i + β i devient supérieur a 180°, ceci donne deux ensembles de consignes<br />
articulaires pour un seul point de l’espace opérationnel.<br />
Limite 2 : − γ max ≤ γ i ≤ γ max<br />
(II.21)<br />
Les contraintes de construction <strong>des</strong> articulations aux deux extrémités <strong>des</strong> barres<br />
parallèles limitent cet angle.<br />
Pour le cas du robot LMS_DELTA, les longueurs caractéristiques ainsi que les<br />
valeur <strong>des</strong> angles limites sont donnés par le tableau (Tableau II.1).<br />
y<br />
x<br />
θ i<br />
βi<br />
Figure II.7 : Longueurs paramétriques et angles caractéristiques du robot<br />
DELTA.<br />
38<br />
α i<br />
γi
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Les expressions <strong>des</strong> angles β i et γ i sont trouvées <strong>à</strong> partir du calcul du modèle<br />
<strong>géométrique</strong> inverse MGI de la chaîne directe [03].<br />
Considérons la chaîne cinématique de la figure II.8. Elle est constituée par les<br />
liaisons 3, 4, 7 et 8 qui forment un parallélogramme, ceci implique les égalités<br />
q 3 = q7<br />
et 4 q8<br />
q = .<br />
Figure II.8 : Description d’une seule chaîne<br />
La chaîne ouverte simplifiée est donnée par la figure II.9.<br />
Figure II.9 : Description de la chaîne simplifiée<br />
39
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Le MGI de la structure simplifiée permet d’exprimer les variables articulaires en<br />
fonction de la position du point fonctionnel (centre de la nacelle).<br />
On <strong>à</strong> :<br />
q1<br />
= −α<br />
i<br />
q2<br />
= π − β i<br />
q3<br />
= γ i<br />
q4<br />
= q3<br />
q5<br />
= π − ( q1<br />
+ q2<br />
)<br />
θ = ; θ = 120°<br />
; θ = 240°<br />
1<br />
0 2<br />
3<br />
(b) (c)<br />
Figure II.10 : Une approximation du volume de travail du robot Delta [37] :<br />
(a) volume de travail du robot en 3D ;<br />
(b) volume de travail du robot en 3D vue du haut;<br />
(c) Vue de profil du robot avec son volume de travail.<br />
40<br />
(II.22)
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Les angles qui expriment les deux limites précédemment motionnées sont donnés<br />
par les relations suivantes [03] :<br />
For i=1 To 3 Do<br />
⎛ x sinθ<br />
i − y cosθ<br />
i ⎞<br />
γ i = arcsin ⎜<br />
⎟<br />
(II.23)<br />
⎝ LB ⎠<br />
⎡ z + LA sinα<br />
⎤<br />
i cosθ<br />
i<br />
β i = −arctg<br />
⎢<br />
⎥<br />
⎣ R + LA cosθ<br />
i cosα<br />
i + LB sinγ<br />
i sinθ<br />
i − x⎦<br />
41<br />
(II.24)<br />
Ces deux relations sont en fonction de la position du centre de la nacelle<br />
( x y , z)<br />
(x, y, z)<br />
Consigne exprimée dans<br />
l’espace Opérationnel<br />
(x, y, z)<br />
Modèle Géométrique<br />
Inverse (MGI)<br />
Commande <strong>à</strong> exécuter<br />
(x, y, z ; α1, α2, α3)<br />
(α1, α2, α3)<br />
Consigne exprimée dans<br />
l’espace Articulaire<br />
(α1, α2, α3)<br />
Modèle Géométrique<br />
Direct (MGD)<br />
( ( x ∗ sinθ<br />
i − y ∗ cosθi<br />
) / LB)<br />
;<br />
( z + LA ∗sinα<br />
∗cosθ<br />
) / ( R + LA ∗cosθ<br />
∗ cosα<br />
+ LB ∗ sinγ<br />
∗sinθ<br />
− x)<br />
γ i : = Arcsin<br />
β : = −Arctg<br />
[ ];<br />
i<br />
− i<br />
≤ α i i Than<br />
workspace :=1 ; // point atteignable par la nacelle<br />
Else<br />
workspace :=0 ; // point hors de l’espace de travail<br />
End if<br />
End For<br />
IF ( 50 ≤ γ ≤ 50)<br />
OR 25 ( + β ) ≤145<br />
i<br />
i<br />
, et de la variable motorisée α i , ce qui implique l’appel aux deux modèles<br />
<strong>géométrique</strong>s direct et inverse <strong>à</strong> chaque exécution d’une commande.<br />
L’organigramme de la figure II.11 est le module que nous avons implémenté dans<br />
nos applications pour tester l’appartenance du point P (centre de la nacelle) au<br />
volume de travail. La valeur de la variable boolienne (workspace) qui nous informe<br />
i<br />
i<br />
i<br />
i
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
sur l’état de la future position (dans ou hors le volume de travail). Une<br />
approximation de ce volume est représentée par la figure II.10 [36].<br />
Pour le cas du robot LMS_DELTA, les langueurs caractéristiques ainsi que les<br />
valeurs <strong>des</strong> angles limites sont donnés par le tableau (Tab. II.4).<br />
Paramètre Ra Rb La Lb (αi + βi)min (αi + βi)max (γi)max<br />
valeur 194 mm 30 mm 260 mm 480 mm ≅ 50° ≅ 145° ≅ 25°<br />
II.5 INFLUENCE DES ERREURS SUR LE POSITIONNEMENT DU ROBOT<br />
Comme on l’a déj<strong>à</strong> cité, <strong>l'étalonnage</strong> a pour objectif l'amélioration de la précision<br />
de positionnement du robot tout en diminuant les erreurs sur les paramètres<br />
<strong>géométrique</strong>s. Dans ce qui suit, nous cherchons <strong>à</strong> déterminer l'influence de ces<br />
erreurs sur le positionnement de l’organe terminal.<br />
Les modèles <strong>géométrique</strong>s sont déduits <strong>des</strong> trois équations de fermeture de<br />
boucles suivantes :<br />
i<br />
i<br />
2<br />
2<br />
b<br />
B C = L [25]. Donc il y <strong>à</strong> 3 équations du MGI, F = 0 , i = 1...<br />
3<br />
i<br />
étaient fonction du positionnement χ et <strong>des</strong> paramètres <strong>géométrique</strong>s du robot P .<br />
avec<br />
Nous différencions cette équation pour obtenir :<br />
1..<br />
3<br />
∂Fmgi<br />
J χ = et J<br />
∂χ<br />
Nous notons :<br />
P<br />
1..<br />
3<br />
∂Fmgi<br />
= .<br />
∂P<br />
χ ∆χ + J ∆P<br />
= 0<br />
(II.21)<br />
J P<br />
• J X la jacobienne <strong>des</strong> positionnements ( 3×<br />
3)<br />
avec<br />
positionnement dimension ( 3×<br />
1)<br />
.<br />
42<br />
mgi<br />
T<br />
∆ X = [∆P]<br />
l’erreur de<br />
• J P la jacobienne <strong>des</strong> paramètres ( 3×<br />
24)<br />
avec ∆ P l’erreur sur les paramètres<br />
de dimension ( 24×<br />
1)<br />
.<br />
Nous obtenons l’erreur de positionnement en fonction de l’erreur sur les<br />
paramètres :<br />
Tableau II.4 : Longueurs caractéristiques et Angles limites du robot LMS_DELTA
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
⎛ ∆Dx1<br />
⎞<br />
⎜ ⎟<br />
⎜ ∆Dy1<br />
⎟<br />
⎜ ∆D<br />
⎟<br />
z1<br />
⎜ ⎟<br />
−1<br />
∆χ<br />
3 × 1 = − J χ 3×<br />
3 J P 3×<br />
24 ⎜ ... ⎟<br />
(II.22)<br />
⎜ ⎟<br />
⎜<br />
∆Lax3<br />
⎟<br />
⎜∆La<br />
⎟ y3<br />
⎜ ⎟<br />
⎝ ∆Lb3<br />
⎠<br />
Nous calculons la norme de l’erreur sur la position erreur globale et ∆ x , ∆y<br />
, ∆z<br />
en fonction de la position de l’organe terminal (x et y sont données en abscisse et en<br />
ordonnée), les couches représentent la variation <strong>des</strong> erreurs suivant la position en z<br />
(autour de l’axe de l’espace de travail, z=-300, -400, -500 et z=-600).<br />
43<br />
24×<br />
1<br />
avec ( ) ( ) ( ) 2<br />
2<br />
2<br />
erreur globale ∆x<br />
+ ∆y<br />
+ ∆z<br />
(x, y, z)<br />
Ensembles <strong>des</strong> points dans<br />
l’espace de travail<br />
Paramètres nominauxζ n<br />
Paramètres réels ζ r<br />
(Paramètres nominaux+erreurs)<br />
= ,<br />
Modèle Géométrique<br />
Direct (MGD)<br />
(x’, y’, z’)<br />
Consignes exprimées dans<br />
l’espace Opérationnel<br />
Les Erreurs sur les<br />
positions (∆x,∆y,∆z)<br />
Modèle Géométrique<br />
Inverse (MGI)<br />
(α1, α2, α3)<br />
Consignes exprimées<br />
dans l’espace Articulaire<br />
Figure II.12 : Organigramme de calcul <strong>des</strong> erreurs de position <strong>à</strong> partir <strong>des</strong> paramètres réelles.
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
Figure II.13 : Erreur de positionnement du robot Delta en fonction de la position<br />
de l’organe terminal dans le plan (z = -400) pour une erreur sur le paramètre<br />
<strong>géométrique</strong> La≈ 1 [mm], Lb≈ 1 [mm].<br />
Figure II.14 : Erreur de positionnement du robot Delta en fonction de la position<br />
de l’organe terminal dans les plans (z = -300, -400, -500 et -600 [mm]) pour une<br />
erreur sur le paramètre <strong>géométrique</strong> (La ≈ 1 [mm]).<br />
44
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
On choisit un plan pour z=-400 pour une erreur sur le paramètre <strong>géométrique</strong><br />
(La≈ 1 [mm], Lb≈ 1 [mm].), ce choix étant complètement aléatoire, les résultats sont<br />
représentés sur la figure II.13, cette dernière nous montre que l’erreur de<br />
positionnement suivant l’axes x, y ou z de l’erreur globale. Puis, on choisit plusieurs<br />
plans et on calcule l’erreur globale de positionnement pour chacun d’eux (z = -300, -<br />
400, -500 et -600 [mm]) les résultats sont représentés sur la figure II.14.<br />
Au vu <strong>des</strong> résultats, trois remarques sont importantes :<br />
Les erreurs ne sont pas amplifiées de la même façon dans tout l’espace de<br />
travail : la sensibilité de l’erreur sur la position par rapport aux erreurs sur les<br />
paramètres est influencée par le positionnement du manipulateur.<br />
L’accumulation <strong>des</strong> erreurs n’est pas très importante. si nous ajoutons <strong>des</strong><br />
erreurs sur une partie ou sur l’ensemble <strong>des</strong> paramètres, l’erreur de<br />
positionnement reste approximativement du même ordre de grandeur.<br />
Les erreurs suivant les trois axes de l’espace ne sont pas nécessairement<br />
identique : même si l’erreur globale de positionnement est maximal cela ne<br />
signifie pas que l’erreur est maximal pour les trois axes.<br />
Remarque : L’influence <strong>des</strong> erreurs <strong>des</strong> paramètres <strong>géométrique</strong>s sur le<br />
positionnement du mobile est fortement liée <strong>à</strong> la définition de la géométrie du<br />
robot.<br />
II.6 LES MESURES<br />
Les paramètres du robot sont les inconnues que nous souhaitons déterminer.<br />
Pour cela nous avons besoin d’informations, ou de données, qui seront<br />
principalement fournies par les mesures. Nous distinguons deux types de mesures<br />
pratiquées sur le manipulateur :<br />
Les mesures internes (ou proprioceptives) : pour le manipulateur que nous<br />
étudions, elles sont constituées <strong>des</strong> mesures <strong>des</strong> articulations motorisées.<br />
Les mesures externes : ces informations sont fournies par une machine <strong>à</strong><br />
mesurer, c’est-<strong>à</strong>-dire un appareil extérieur au robot. Ces mesures ne<br />
serviront qu’<strong>à</strong> l’étalonnage du manipulateur. Pour notre problème, elles<br />
seront constituées d’informations indiquant la position du plateau mobile<br />
45
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
ou d’une partie de ces informations, dans un repère associé <strong>à</strong> cette<br />
machinerie.<br />
Afin de connaître les précisions <strong>des</strong> mesures nécessaires <strong>à</strong> l’élaboration d’une<br />
simulation aussi proche que possible de la réalité, nous nous intéressons (sans entrer<br />
dans les détails) aux différents types de capteurs de position et d’instruments de<br />
mesure disponibles sur le marché. La qualité de l’étalonnage sera directement<br />
dépendante de la précision de ces capteurs. La simulation nous permettra de<br />
connaître la précision obtenue sur les paramètres en fonction de l’amplitude de<br />
l’erreur sur les mesures.<br />
II.6.1 Les Mesures internes<br />
Nous exploitons les capteurs angulaires internes au robot. On utilise<br />
généralement <strong>des</strong> capteurs incrémentaux (très utilisée en robotique) nous offrent une<br />
précision jusqu’<strong>à</strong> ≈ 0 . 001°<br />
.<br />
II.6.2 Les Mesures externes<br />
Pour mesurer la position, nous avons plusieurs moyens <strong>à</strong> notre disposition.<br />
Principalement, l’utilisation <strong>des</strong> capteurs LVDTs [42], de théodolites, de lasers [38]<br />
(triangulation d’un point) ou d’une caméra CCD [03]. Ces machines sont en général<br />
assez chères et leur précision de mesure inversement proportionnelle (voir<br />
quadratique!) <strong>à</strong> leur coût. Des machines <strong>à</strong> contacts peuvent être utilisées même si<br />
elles posent <strong>des</strong> problèmes de force appliquée <strong>à</strong> l’organe terminal (l’étalonnage se<br />
faisant en statique). Le faible volume de l’espace de travail de ces machines, leur coût<br />
élevé ont incité les recherches <strong>à</strong> s’orienter vers <strong>des</strong> systèmes d’étalonnage où le<br />
positionnement du mobile est comparé <strong>à</strong> un objet de référence. Les précisions prises<br />
en compte pour la simulation seront variables et elles seront approximativement<br />
comprises entre le centième et le millième de millimètres.<br />
II.7 LA SIMULATION<br />
Afin de tester et de comparer les différentes métho<strong>des</strong> d’étalonnage, nous<br />
procéderons <strong>à</strong> leurs simulations par ordinateur. Ceci permet se comparer les résultats<br />
obtenus avec les solutions réelles recherchées. Cette comparaison nous permettra<br />
46
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
d’identifier les problèmes lies aux métho<strong>des</strong> et de mieux comprendre le<br />
comportement <strong>des</strong> algorithmes lors <strong>des</strong> expérimentations. La simulation se fait en<br />
deux étapes.<br />
Tout d’abord, il nous faut construire un ensemble de mesures. Pour cela, nous<br />
définissons la géométrie d’un robot (dont nous souhaitons simuler l’étalonnage) qui<br />
correspond <strong>à</strong> l’ensemble <strong>des</strong> paramètres Pr associe <strong>à</strong> une modélisation. P r sera<br />
considère comme les paramètres réels du robot, le résultat de l’étalonnage devra<br />
donc être plus proche possible de ces paramètres (voir II.8). A partir de ces<br />
informations et de consignes <strong>des</strong> positionnements aléatoires nous calculons grâce au<br />
MGI, les angles <strong>des</strong> articulations motorisées. Les consignes peuvent tout aussi bien<br />
porter sur les articulations motorisées. Ceci implique l’utilisation du MGD afin de<br />
calculer les positionnements simulés du robot. Dans le cas de métho<strong>des</strong> imposant <strong>des</strong><br />
contraintes (voir chapitre V) sur le robot, les consignes ne seront évidemment pas<br />
choisies aléatoirement mais vérifiant les contraintes désirées.<br />
Les positions obtenues seront considérées comme <strong>des</strong> mesures provenant<br />
d’informations fournies par une machine <strong>à</strong> mesures. Afin de simuler les bruits de<br />
mesure, nous ajouterons uns erreur sur la simulation <strong>des</strong> mesures. Ces erreurs seront<br />
centrées et de distribution gaussienne ou uniforme. L’amplitude de ces erreurs<br />
(mesure bruitée = mesure réelle simulée +/- erreur) pourra varier afin de simuler les<br />
différents types de capteurs et pour montrer la sensibilité <strong>des</strong> métho<strong>des</strong> aux erreurs<br />
de mesure.<br />
Nous pouvons maintenant simuler l’étalonnage lui-même. Dans le cas où on<br />
utilise un algorithme d’optimisation nécessitant une estimée initiale <strong>des</strong> paramètres.<br />
Nous ajoutons une erreur uniformément distribuée aux paramètres considères<br />
comme réels r P afin de simuler les paramètres nominaux P n (c’est-<strong>à</strong>-dire<br />
correspondant <strong>à</strong> la géométrie du robot fournie par le constructeur, ou le paramétrage<br />
dit théorique du manipulateur). A partir de ces données, les métho<strong>des</strong> d’étalonnages<br />
explicitées ultérieurement permettent de déterminer ou d’améliorer les paramètres<br />
pour donner P c (paramètres obtenus par l’étalonnage).<br />
L’utilisation de cette approche possède plusieurs avantages. Tout d’abord, nous<br />
simulons la méthode sans erreurs de mesure, ce qui permet de valider la<br />
47
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
modélisation du robot en vérifiant que son paramétrage est minimal (vérification du<br />
rang de la jacobienne <strong>des</strong> paramètres). Puis, en comparant P r , Pn<br />
, Pc<br />
, nous pouvons<br />
" évaluer " la méthode d’étalonnage (voir le paragraphe II.8). Pour simuler les<br />
différentes métho<strong>des</strong>, nous avons utilisé principalement deux outils logiciels : MatLab<br />
pour le calcul numérique et son module optimization toolkit et Maple pour une<br />
manipulation formelle <strong>des</strong> équations (calcul de la jacobienne, simplification <strong>des</strong><br />
équations, etc.).<br />
Figure II.15 : Simulation de l’étalonnage<br />
Dans la plupart <strong>des</strong> métho<strong>des</strong> que nous présenterons, il sera nécessaire de<br />
résoudre un système sur-contraint d’équations non-linéaires. Mais, quel algorithme<br />
d’optimisation utiliser ? Dans ce travail nous utiliserons, principalement, un<br />
algorithme de résolution non-linéaire aux moindre-carrés : la méthode de Levenberg-<br />
Marquardt. Ce choix a été effectué pour plusieurs raisons (voir Annexe B) :<br />
Cette méthode semble un bon compromis entre la méthode du gradient qui<br />
possède un large rayon de convergence, et la méthode de Gauss-Newton qui<br />
converge rapidement lorsqu’on se rapproche du minimum.<br />
48
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
C’est la méthode conseillée par MatLab, le logiciel que nous avons utilisé pour<br />
simuler l’étalonnage.<br />
Toujours dans un esprit de comparaison <strong>des</strong> différentes métho<strong>des</strong> d’étalonnage,<br />
nous utiliserons les mêmes configurations de mesure pour l’évaluation <strong>des</strong> métho<strong>des</strong><br />
de base, elles seront bruitées afin se simuler les erreurs de mesure et qui serviront de<br />
données de base pour les différentes métho<strong>des</strong>.<br />
II.8 EVALUATION DES METHODES D’ETALONNAGE<br />
Nous présenterons dans ce qui suit plusieurs métho<strong>des</strong> d’étalonnage. Celles-ci<br />
seront évaluées suivant plusieurs critères :<br />
1. leur capacité <strong>à</strong> améliorer la connaissance <strong>des</strong> paramètres <strong>géométrique</strong>s du<br />
robot,<br />
2. leur robustesse aux erreurs de mesure,<br />
3. la simplicité pratique de leur mise en œuvre,<br />
4. le nombre de mesures <strong>à</strong> effectuer, qui devra être idéalement minimal,<br />
5. le temps d’exécution, qui devra être idéalement minimal,<br />
6. la simplicité d’implantation.<br />
Nous attacherons une attention toute particulière aux deux premiers critères. Le<br />
premier critère n’est autre que le but de l’étalonnage et le second, le principal<br />
problème auquel nous sommes confrontés. Les autres critères, sans les négliger, sont<br />
liés <strong>à</strong> la facilite de mise en place de la procédure d’étalonnage. Elle ne devrait être<br />
que ponctuelle (<strong>à</strong> la livraison du robot, ou quand le robot montre <strong>des</strong> signes<br />
d’imprécision). L’absence de principe de base de l’étalonnage <strong>des</strong> <strong>robots</strong> parallèles<br />
nous permet d’y attacher moins d’importance.<br />
Dans le cadre d’une utilisation d’une méthode d’optimisation, l’évaluation du<br />
critère C en la solution P c n’est pas suffisante pour juger de la validité de<br />
l’étalonnage. En effet, en présence <strong>des</strong> erreurs de mesure, ( P ) ≠ 0<br />
49<br />
C . Si C ( P ) > C(<br />
P )<br />
nous pouvons seulement conclure que l’algorithme converge. Mais il se peut très<br />
bien que Pr − Pc<br />
> Pr<br />
− Pn<br />
, dans ce cas l’algorithme converge vers un minimum local<br />
(ou global) qui rend les paramètres P c plus éloignés de la solution P r que l’on<br />
r<br />
n<br />
c
École Militaire Polytechnique Chapitre II : Modélisation et Outils de l’Étalonnage<br />
souhaite atteindre d’être l’estimer initiale P n : l’étalonnage détériore, en fait, le<br />
système plutôt qu’elle ne l’améliore. Pour mettre en évidence ce phénomène, nous<br />
définissons un gain d’étalonnage G tel que :<br />
G<br />
P − P − P − P<br />
r n r c<br />
= 100 ×<br />
(II.23)<br />
Pr<br />
− Pn<br />
Avec cet index, nous pouvons définir plusieurs cas de figure :<br />
• Un gain négatif signifie que les paramètres sont, après étalonnage, plus<br />
éloignés de la réalité que les paramètres fournis par le constructeur.<br />
• Un gain nul signifie que les paramètres après étalonnage sont égaux aux<br />
paramètres fournis par le constructeur.<br />
• Un gain <strong>à</strong> cent pour cent donne un étalonnage parfait.<br />
Ce gain sera détaillé pour chaque paramètre du robot G P . i<br />
Dans le chapitre suivant, on présente un aperçu sur l’étalonnage <strong>géométrique</strong> du<br />
robot série pour pouvoir plus tard adapter ses métho<strong>des</strong> d’étalonnage aux <strong>robots</strong><br />
parallèles.<br />
a r<br />
r a r a<br />
a c<br />
G > 0<br />
G = 0<br />
G < 0<br />
a<br />
a n<br />
n ac<br />
Convergence de l’algorithme<br />
a<br />
50<br />
a = a n<br />
Distance ar − an<br />
Distance ar − ac<br />
Figure II.16 : Trois cas de figure où la méthode d’optimisation converge en présence de bruit<br />
de mesure : l’étalonnage améliore (gain positif) la connaissance <strong>des</strong> paramètre <strong>géométrique</strong>s,<br />
la détériore (gain négatif) ou n’a pas d’influence (gain nul).<br />
a<br />
a c
___________________________________________________________________________<br />
CHAPITRE III
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
III.1<br />
Chapitre III<br />
APERÇU SUR L’ÉTALONNAGE GÉOMÉTRIQUE DES<br />
III.1 INTRODUCTION<br />
Les <strong>robots</strong> série sont largement représentés dans l’industrie pour <strong>des</strong> tâches<br />
répétitives une bonne précision (opérations d’assemblage ou de soudage de pièces<br />
par exemple). Le plus souvent, les trajectoires suivies par l’outil du robot sont<br />
générées par apprentissage. Un opérateur définit sur site les différents points de<br />
passage de la trajectoire <strong>à</strong> suivre pour effectuer la tâche demandée. Cet apprentissage<br />
est relativement coûteux en temps et peut réclamer l’immobilisation du robot<br />
pendant quelques heures. Lors d’un incident survenant sur le robot (panne, choc<br />
avec un obstacle imprévu) ; le modèle <strong>géométrique</strong> de ce dernier peut être affecté<br />
(robot différent ou modification d’un zéro articulaire) et il est alors nécessaire de<br />
recommencer l’apprentissage.<br />
ROBOTS SÉRIE<br />
Certains outils de conception assistée par ordinateur (CAO) permettent d’éviter<br />
cette phase d’apprentissage. Grâce <strong>à</strong> ces outils, il est possible d’effectuer les calculs<br />
nécessaires <strong>à</strong> la génération de trajectoires hors ligne, puis de transférer les données<br />
obtenues dans l’armoire de commande du robot.<br />
Dans les deux cas cités ci-<strong>des</strong>sus, la difficulté se situe au niveau de la<br />
connaissance du modèle <strong>géométrique</strong> du robot. Les techniques d’étalonnage<br />
51
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
<strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> consistent <strong>à</strong> déterminer avec exactitude les paramètres<br />
<strong>géométrique</strong>s (longueurs, angles et décalages articulaires) qui interviennent dans le<br />
calcul de leur modèle <strong>géométrique</strong>. Les imprécisions sur ces paramètres sont en effet<br />
néfastes <strong>à</strong> la précision et posent un problème particulièrement sensible pour<br />
l’interchangeabilité <strong>des</strong> <strong>robots</strong> ou pour la programmation hors ligne par <strong>des</strong> outils de<br />
CAO.<br />
De nombreuses métho<strong>des</strong> ont été proposées d’une manière générale pour<br />
l’identification <strong>des</strong> paramètres <strong>géométrique</strong>s <strong>des</strong> <strong>robots</strong> série. On peut classer ces<br />
métho<strong>des</strong> en deux catégories principales : d’un côté les métho<strong>des</strong> en boucle ouverte<br />
et de l’autre les métho<strong>des</strong> en boucle fermée. Les métho<strong>des</strong> d’étalonnage en boucle<br />
ouverte sont basées sur la mesure <strong>à</strong> l’aide de capteurs externes de certaines<br />
coordonnées de l’effecteur pour un nombre suffisant de configurations du robot.<br />
Pour les métho<strong>des</strong> d’étalonnage en boucle fermée (appelées aussi métho<strong>des</strong><br />
autonomes), un ou plusieurs degrés de liberté (DDL) de l’organe terminal sont<br />
contraints par un contact ou par le biais d’une liaison.<br />
Notre but est de présenter les différentes métho<strong>des</strong> d’étalonnage <strong>des</strong> <strong>robots</strong> série<br />
et par conséquent une modélisation de ces <strong>robots</strong> sera établie.<br />
III.2 MODELE GEOMETRIQUE DES ROBOTS SERIE<br />
La situation (position et orientation) de l’organe terminal (également appelé<br />
effecteur ou outil) d’un robot par rapport <strong>à</strong> un repère fixe peut être calculée en<br />
fonction de ses paramètres <strong>géométrique</strong>s. Ces paramètres définissent la situation <strong>des</strong><br />
corps du robot les uns par rapport aux autres. Le modèle <strong>géométrique</strong> direct (MGD)<br />
d’un robot consiste <strong>à</strong> calculer la situation de l’effecteur du robot en fonction <strong>des</strong><br />
coordonnées articulaires, tandis que le modèle <strong>géométrique</strong> inverse (MGI) permet de<br />
déterminer la valeur <strong>des</strong> coordonnées articulaires en connaissant la situation de<br />
l’effecteur.<br />
III.3 PRINCIPES GENERAUX POUR L’ETALONNAGE<br />
III.3.1 Écriture du modèle d’étalonnage<br />
52
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
Les métho<strong>des</strong> d’étalonnage que nous exposons de comparer diffèrent par les<br />
variables utilisées ainsi que par les outils de mesure qui permettent de les obtenir, en<br />
reprenant l’approche proposée dans [05] on peut unifier la formulation <strong>des</strong> équations<br />
nécessaires <strong>à</strong> l’étalonnage sous la forme générale suivante :<br />
( q,<br />
x,<br />
)<br />
0 = f η<br />
(III.1)<br />
r<br />
où x représente les variables externes de l’effecteur (coordonnées de la situation<br />
par exemple),<br />
q est le vecteur ( n × 1)<br />
<strong>des</strong> variables articulaires,<br />
et r<br />
η est le vecteur ( × 1)<br />
np <strong>des</strong> paramètres <strong>géométrique</strong>s réels,<br />
Chaque méthode peut être classifiée par un indice d’étalonnage donnant le<br />
nombre d’équations de la fonction f [05].<br />
On peut linéariser le modèle (III.1) pour obtenir l’équation différentielle<br />
suivante :<br />
( q,<br />
x,<br />
η ) = Φ(<br />
q,<br />
η)<br />
∆η<br />
+ ρ<br />
∆ y .<br />
(III.2)<br />
avec ∆η = η r −η<br />
définissant le vecteur <strong>des</strong> erreurs sur les paramètres<br />
<strong>géométrique</strong>s, η le vecteur <strong>des</strong> valeurs nominales <strong>des</strong> paramètres <strong>géométrique</strong>s,<br />
∆y l’erreur de sortie entre le modèle et le robot,<br />
ρ est le vecteur <strong>des</strong> erreurs observées dues aux erreurs de modélisation,<br />
et Φ est la matrice jacobienne, dérivée de la fonction f par rapport aux<br />
⎛ ∂f<br />
⎞<br />
paramètres <strong>géométrique</strong>sη⎜ Φ = ⎟ .<br />
⎝ ∂η<br />
⎠<br />
III.4 DESCRIPTION DES METHODES D’ETALONNAGE<br />
III.4.1 Méthode d’étalonnage classique<br />
La méthode d’étalonnage classique consiste <strong>à</strong> mesurer la situation (position et<br />
orientation) de l’effecteur par rapport <strong>à</strong> un repère fixe de référence. On doit donc<br />
disposer d’un capteur externe [02], [13] et [22].<br />
L’équation non linéaire de l’étalonnage est alors de la forme :<br />
53
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
−1<br />
( q ) T ( x)<br />
= 0<br />
−1<br />
T + 1 , r − n+<br />
1<br />
n η (III.3)<br />
Cette équation est fonction de 12 éléments non nuls (termes <strong>des</strong> matrices de<br />
passage), mais ne possède que 6 degrés de liberté, elle peut donc s’exprimer en<br />
fonction de 6 éléments indépendants :<br />
avec X p<br />
⎧∆X<br />
p ⎫<br />
∆X<br />
= ⎨ ⎬ = 0<br />
(III.4)<br />
⎩∆X<br />
r ⎭<br />
∆ le vecteur de dimension ( 1)<br />
−1<br />
O n+<br />
1 (égale <strong>à</strong> la différence entre les vecteurs n+<br />
1<br />
3× de l’erreur de positionnement du point<br />
54<br />
P de position réelle et modélisée),<br />
et avec r X ∆ le vecteur ( ) 1 3× de l’erreur en orientation du repère R n+<br />
1,<br />
égal <strong>à</strong> :<br />
∆ X r = uθ<br />
(III.5)<br />
où u et θ sont obtenus par résolution de l’équation suivante :<br />
avec ( u,<br />
θ )<br />
−1<br />
( x)<br />
rot(<br />
u θ ) . A ( q,<br />
η)<br />
−1<br />
An + 1 , n+<br />
1<br />
= (III.6)<br />
rot la matrice (3×3) d’orientation d’un angle θ autour de u .<br />
Le modèle différentiel linéaire définissant le décalage mesuré au niveau de<br />
l’effecteur du fait <strong>des</strong> erreurs sur les paramètres <strong>géométrique</strong>s est écrit de la manière<br />
suivante [46] et [45]:<br />
∆X<br />
⎧d<br />
⎨<br />
⎩δ<br />
n<br />
⎫<br />
⎬<br />
⎭<br />
n+<br />
1<br />
( q,<br />
x,<br />
η) = = Ψ(<br />
q,<br />
η)<br />
. ∆η<br />
+ 1<br />
(III.7)<br />
L’indice d’étalonnage de cette méthode est méthode <strong>à</strong> 6. Dans le cas où seule la<br />
position de l’organe terminal est mesurée, on n’utilise que les 3 premières lignes <strong>des</strong><br />
équations (III.7) et l’indice d’étalonnage vaut alors 3.<br />
III.4.2 Étalonnage avec mesure de la situation relative<br />
Dans cette méthode, on utilise un capteur fournissant la situation relative de<br />
l’effecteur entre deux configurations a<br />
q et<br />
b<br />
q . Ce type de capteur est utilisé pour<br />
a<br />
calculer la répétabilité du robot [31]. Soit F b la matrice de passage correspondant <strong>à</strong><br />
cette mesure, on a alors :
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
−1<br />
a −1<br />
−1<br />
b a<br />
[ ( q η ) ] . [ T ( q , η ) ] = F ( x)<br />
Tn + 1 , r<br />
n+<br />
1 r b<br />
L’équation non linéaire utilisée pour l’étalonnage est donnée par :<br />
où η = η + ∆η<br />
r<br />
b −1<br />
a a<br />
( q ) T ( q , η ) . F ( x)<br />
= 0<br />
−1<br />
Tn+ 1 , r − n+<br />
1 r b<br />
55<br />
(III.8)<br />
η (III.9)<br />
Cette équation contient 12 éléments non nuls, mais peut être écrite en fonction de<br />
6 éléments, de la même manière que pour l’équation (III.4).<br />
ordre :<br />
Pour le modèle linéaire on obtient en utilisant un développement au premier<br />
[ b<br />
a a<br />
a b a<br />
( q , η) − Ψ2(<br />
q , η,<br />
Fb<br />
) ] . ∆η<br />
= ∆X<br />
( q , q , η,<br />
Fb<br />
)<br />
Les colonnes de<br />
b ( q , η)<br />
a a<br />
2.1.6, tandis que Ψ 2( q , η,<br />
F ) est calculé <strong>à</strong> partir de l’expression de<br />
a ( q , η)<br />
Ψ (III.10)<br />
Ψ sont obtenues comme cela est décrit dans la section<br />
b<br />
−1<br />
a<br />
avoir remplacé la matrice de passage ( q , η).<br />
a a ( q , η)<br />
Fb<br />
T .<br />
−1<br />
n+<br />
1<br />
T n+<br />
1<br />
Ψ après<br />
par la transformation<br />
. On intègre en fait la transformation mesurée au modèle du robot<br />
pour la configuration a<br />
q . On pose alors :<br />
Les colonnes de<br />
b ( q , η)<br />
a a<br />
2.1.6, tandis que Ψ 2( q , η,<br />
F ) est calculé <strong>à</strong> partir de l’expression de<br />
a ( q , η)<br />
Ψ sont obtenues comme cela est décrit dans la section<br />
b<br />
−1<br />
a<br />
avoir remplacé la matrice de passage ( q , η).<br />
a a ( q , η)<br />
Fb<br />
T .<br />
−1<br />
n+<br />
1<br />
T n+<br />
1<br />
Ψ après<br />
par la transformation<br />
. On intègre en fait la transformation mesurée au modèle du robot<br />
pour la configuration a<br />
q , on pose alors :<br />
D<br />
P ⎤<br />
−1<br />
−1<br />
−1<br />
−1<br />
−1<br />
a a<br />
b b<br />
i,<br />
b = Pb<br />
− Pi<br />
avec Tn+ 1(<br />
q , η ) . Fb<br />
= ⎢ ⎥<br />
⎣ 0 1 ⎦<br />
On remplace alors les vecteurs D i,<br />
n+<br />
1 par D i,<br />
b dans les expressions (III.14), (III.15)<br />
et (III.17).<br />
Le membre de droite de l’équation (III.10) est égal <strong>à</strong> l’erreur différentielle en<br />
−1<br />
b<br />
−1<br />
a a<br />
position et en orientation mesurée entre les termes T n+<br />
1(<br />
q , η).<br />
et T n+<br />
1(<br />
q , η)<br />
. Fb<br />
.<br />
⎡<br />
A
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
Chaque mesure relative entre deux configurations permet d’écrire 6 équations,<br />
l’indice d’étalonnage de la méthode est donc égal <strong>à</strong> 6.<br />
III.4.3 Étalonnage avec mesure de distances<br />
Cette méthode d’étalonnage est réalisation dans le cas où l’on peut mesurer la<br />
distance parcourue par l’organe terminal du robot entre deux configurations<br />
et<br />
b<br />
q .<br />
Notons par Dr la distance mesurée entre les positions de l’effecteur d’un robot<br />
pour deux configurations<br />
suivante :<br />
a<br />
q et<br />
b<br />
q , on peut alors écrire l’équation non linéaire<br />
b<br />
a 2<br />
b<br />
a 2<br />
[ Px(<br />
q , η r ) − Px(<br />
q , ηr<br />
) ] + [ Py(<br />
q , η r ) − Py(<br />
q , η r ) ]<br />
b<br />
a 2 2<br />
+ [ Pz(<br />
q , η ) − Pz(<br />
q , η ) ] = Dr<br />
56<br />
r<br />
r<br />
a<br />
q<br />
(III.11)<br />
avec Px, Py et Pz les coordonnées cartésiennes du repère terminal dans le repère<br />
−1<br />
de référence, éléments du vecteur P n+<br />
1 .<br />
et<br />
Le modèle différentiel développé au premier ordre est :<br />
b<br />
a<br />
b<br />
a<br />
{ 2.<br />
[ Px(<br />
q , η)<br />
− Px(<br />
q , η)<br />
] . [ Ψx(<br />
q , η)<br />
− Ψx(<br />
q , η)<br />
]<br />
b<br />
a<br />
b<br />
a<br />
+ 2.<br />
[ Py(<br />
q , η)<br />
− Py(<br />
q , η)<br />
] . [ Ψy(<br />
q , η)<br />
− Ψy(<br />
q , η)<br />
]<br />
b<br />
a<br />
b<br />
a<br />
+ 2.<br />
[ Pz(<br />
q , η)<br />
− Pz(<br />
q , η)<br />
] . Ψz(<br />
q , η)<br />
− Ψz(<br />
q , η)<br />
2 2<br />
[ ]} . ∆η<br />
= Dr − D<br />
où D est la distance évaluée au niveau de l’effecteur entre les configurations<br />
b<br />
q en utilisant le MGD avec les paramètres <strong>géométrique</strong>s nominaux ;<br />
(III.12)<br />
et Ψ x, Ψy<br />
et Ψz sont respectivement les lignes 1, 2 et 3 de la matrice jacobienne<br />
généralisée définie dans l’équation (III.13).<br />
L’indice d’étalonnage de cette méthode est égal <strong>à</strong> 1.<br />
III.4.4 Étalonnage avec liaison repère ou liaison ponctuelle<br />
Le principal inconvénient <strong>des</strong> métho<strong>des</strong> précédentes provient de la nécessité de<br />
trouver <strong>des</strong> capteurs externes précis, dont la mise place soit rapide et tout ceci <strong>à</strong> coût<br />
raisonnable. Pour la grande majorité <strong>des</strong> <strong>robots</strong>, il existe plusieurs configurations<br />
permettant d’atteindre une situation (ou une position) identique. On peut alors<br />
a<br />
q
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
utiliser la méthode avec liaison repère (ou celle avec liaison ponctuelle) pour<br />
identifier les paramètres <strong>géométrique</strong>s du robot [06], [45] et [20].<br />
Soit<br />
a<br />
q et<br />
b<br />
q deux configurations différentes pour lesquelles la situation de<br />
l’effecteur est identique, l’équation non linéaire d’étalonnage est alors :<br />
−1<br />
n+<br />
1<br />
b −1<br />
a<br />
( q ) T ( q , ) = 0<br />
T η η<br />
(III.13)<br />
, r − n+<br />
1<br />
r<br />
Cette équation contient 12 éléments non nuls, mais peut être écrite en fonction de<br />
6 éléments, de la même manière que pour l’équation (III.4).<br />
Le modèle différentiel développé au premier ordre donne :<br />
b<br />
b<br />
a b<br />
{ ( q , η ) , Ψ(<br />
q , η)<br />
} . ∆η<br />
= ∆X<br />
( q , q , η)<br />
Ψ (III.14)<br />
où Ψ est la matrice jacobienne du repère R n+<br />
1 par rapport aux erreurs sur les<br />
paramètres <strong>géométrique</strong>s définie dans l’équation (III.13),<br />
et ∆ X est le vecteur représentant l’erreur de position et d’orientation entre les<br />
−1<br />
a<br />
−1<br />
b<br />
situations de l’effecteur ( q , η)<br />
et ( q , η)<br />
T n+<br />
1<br />
T n+<br />
1<br />
Le calcul <strong>des</strong> paramètres identifiables est réalisé comme c’est décrit en annexe A,<br />
en étudiant la décomposition QR d’une matrice d’observation W calculée <strong>à</strong> partir de<br />
l’équation (III.14). Cette matrice est générée pour un nombre suffisant de couples<br />
a b ( q )<br />
q , de configurations aléatoires pour lesquels la situation de l’effecteur est la<br />
même. De tels couples sont obtenus en partant d’une configuration aléatoire<br />
−1<br />
a<br />
laquelle on calcule la situation de l’organe terminal ( q , η)<br />
ce qu’une solution<br />
57<br />
.<br />
T n+<br />
1<br />
b<br />
q soit différente de la configuration initiale<br />
a<br />
q pour<br />
. On cherche ensuite <strong>à</strong><br />
De manière analogue, il est possible d’étalonner le robot en considérant <strong>des</strong><br />
liaisons ponctuelles. Dans ce cas, seule la position de l’effecteur est identique pour<br />
a b<br />
chaque couple ( q )<br />
a<br />
q .<br />
q , de configurations. On a alors comme équation pour<br />
P q η q η = et seules les trois premières lignes de<br />
, r − Pn<br />
+ 1<br />
−1<br />
b −1<br />
a<br />
l’étalonnage ( ) ( , ) 0<br />
n+<br />
1<br />
l’équation (III.14) sont utilisées.<br />
r<br />
L’indice d’étalonnage de la méthode avec liaison repère est 6, il est réduit <strong>à</strong> 3<br />
pour la méthode avec liaison ponctuelle.
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
III.4.5 Étalonnage avec liaison point-plan<br />
Dans le cas <strong>des</strong> métho<strong>des</strong> avec liaison point-plan, l’étalonnage est effectué en<br />
utilisant les coordonnées articulaires d’un jeu de configurations pour lesquelles<br />
l’effecteur est en contact avec le même plan. Plusieurs métho<strong>des</strong> basées sur cette<br />
technique ont été proposées, nous distinguerons deux métho<strong>des</strong> pour notre étude.<br />
Ces métho<strong>des</strong> présentent l’avantage d’être facile <strong>à</strong> mettre en œuvre : on peut<br />
contrôler le contact entre l’effecteur et le plan <strong>à</strong> l’aide d’un palpeur, ou bien ajouter<br />
un télémètre qu’on modélise alors par une articulation prismatique supplémentaire.<br />
Cette méthode se subdivise en deux métho<strong>des</strong>, la première consiste en<br />
étalonnage en utilisant l’équation du plan et la seconde en utilisant la norme au plan.<br />
III.4.5.1 Étalonnage en utilisant l’équation du plan<br />
Pour cette méthode, la matrice d’observation est construite en écrivant l’équation<br />
du plan qui se trouve en contact avec la pointe de l’effecteur de robot [28] et [49]. Si<br />
ce plan ne passe pas par l’origine du repère de référence, l’équation générale de<br />
l’étalonnage vérifiée par le repère terminal du robot peut s’écrire :<br />
( q,<br />
) b.<br />
Py(<br />
q,<br />
η ) + c.<br />
Pz(<br />
q,<br />
) + 1 0<br />
a. Px η r + r η r =<br />
(III.15)<br />
avec a, b et c les coefficients du plan après normalisation,<br />
et Px, Py et Pz les coordonnées cartésiennes du repère terminal dans le repère<br />
−1<br />
de référence, éléments du vecteur P n+<br />
1 .<br />
Si on néglige les termes du deuxième ordre et si on considère que les coefficients<br />
du plan et les paramètres <strong>géométrique</strong>s sont entachés d’erreurs, l’équation<br />
différentielle du modèle est alors :<br />
{ Px(<br />
q,<br />
η)<br />
Py(<br />
q,<br />
η)<br />
Pz(<br />
q,<br />
η)<br />
a.<br />
Ψx(<br />
q,<br />
η)<br />
+ b.<br />
Ψy(<br />
q,<br />
η)<br />
+ c.<br />
Ψz(<br />
q,<br />
η)<br />
}<br />
= −<br />
{ Px(<br />
q,<br />
η)<br />
Py(<br />
q,<br />
η)<br />
Pz(<br />
q,<br />
η)<br />
} ⎨b⎬<br />
⎪⎭<br />
58<br />
⎧a⎫<br />
⎪ ⎪<br />
⎪<br />
⎩c<br />
⎧∆a<br />
⎫<br />
⎪ ⎪<br />
⎪∆b<br />
⎪<br />
⎨ ⎬ + 1<br />
⎪∆c<br />
⎪<br />
⎪<br />
⎩∆η⎪<br />
⎭<br />
(III.16)
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
où Ψ x, Ψy<br />
et Ψ z sont respectivement les première, deuxième et troisième<br />
colonnes de la matrice jacobienne définie dans l’équation (III.13).<br />
Les valeurs initiales <strong>des</strong> coefficients a, b et c sont calculées en considérant<br />
l’équation du plan le plus proche <strong>des</strong> points atteints par l’effecteur pour l’ensemble<br />
<strong>des</strong> configurations. Dans le cas où les coefficients du plan sont connus, et si on<br />
considère leur valeur comme étant exacte, ils ne sont alors pas identifiés et les<br />
colonnes correspondantes de l’équation (III.16) sont éliminées :<br />
⎧a⎫<br />
⎪ ⎪<br />
. (III.17)<br />
⎪<br />
⎩c<br />
{ a Ψx(<br />
q, η ) + b.<br />
Ψy(<br />
q, η)<br />
+ c.<br />
Ψz(<br />
q, η)<br />
} . ∆η<br />
+ 1 = −{<br />
Px(<br />
q,<br />
η)<br />
Py(<br />
q,<br />
η)<br />
Pz(<br />
q,<br />
η)<br />
} ⎨b⎬<br />
⎪⎭<br />
L’indice d’étalonnage pour cette méthode vaut 1.<br />
III.4.5.2 Étalonnage en utilisant la normale au plan<br />
On utilise pour cette méthode le fait que le produit scalaire <strong>des</strong> coordonnées du<br />
vecteur normal au plan de contact et de n’importe lequel <strong>des</strong> vecteurs joignant deux<br />
points (i et j) du plan est nul [49] et [33]. Le principal avantage de cette méthode<br />
réside dans la facilité <strong>à</strong> obtenir les coordonnées du vecteur normal au plan en<br />
utilisant un inclinomètre.<br />
Si considère deux configurations<br />
i<br />
q et<br />
59<br />
j<br />
q pour lesquelles l’extrémité de<br />
l’effecteur se trouve en contact avec le plan les coefficients sont a, b et c . Le<br />
vecteur u de coordonnées { a b c}<br />
est alors normal au plan, de contact. En<br />
effectuant le produit scalaire entre u et le vecteur joignant la pointe de l’effecteur<br />
entre les configurations<br />
linéaire :<br />
{ a b c}<br />
i<br />
q et<br />
j<br />
i<br />
( q , η r ) − Px(<br />
q , η r )<br />
j<br />
i<br />
( q , η r ) − Py(<br />
q , η r )<br />
j<br />
i<br />
( q , η ) − Pz(<br />
q , η )<br />
⎧Px<br />
⎫<br />
⎪<br />
⎪<br />
. ⎨Py<br />
⎬ = 0<br />
⎪<br />
⎪<br />
⎩Pz<br />
r<br />
r ⎭<br />
j<br />
q , on obtient comme équation du modèle non<br />
(III.18)<br />
En considérant que les coordonnées de la normale au plan sont connues, si les<br />
paramètres <strong>géométrique</strong>s nominaux η sont différents <strong>des</strong> paramètres réels η r on a :
École Militaire Polytechnique Chapitre III : Aperçu sur l’Étalonnage Géométrique <strong>des</strong> Robots Série<br />
{ [ ( ) ( ) ] [ ( ) ( ) ] [ ( ) ( ) ] }<br />
( ) ( )<br />
{ } ( ) ( )<br />
( ) ( ) ⎪ j<br />
i<br />
j<br />
i<br />
j<br />
i<br />
a.<br />
Ψx<br />
q , η − Ψx<br />
q , η + b.<br />
Ψy<br />
q , η − Ψy<br />
q , η + c.<br />
Ψz<br />
q , η − Ψz<br />
q , η .<br />
j<br />
i<br />
⎧Px<br />
q , η − Px q , η ⎫<br />
⎪ j<br />
i ⎪<br />
= − a b c . ⎨Py<br />
q , η − Py q , η ⎬<br />
⎪ j<br />
i<br />
⎩Pz<br />
q , η − Pz q , η ⎭<br />
L’indice d’étalonnage de cette méthode est égal <strong>à</strong> 1.<br />
III.5 CONCLUSION<br />
60<br />
∆η<br />
(III.19)<br />
Ce chapitre permet de faire le point sur les métho<strong>des</strong> d’étalonnage <strong>géométrique</strong>s<br />
<strong>des</strong> <strong>robots</strong> série.<br />
Notre but est de donner une présentation détaillée <strong>des</strong> métho<strong>des</strong> d’étalonnage<br />
cité ci-<strong>des</strong>sus.<br />
Dans le chapitre suivant, <strong>à</strong> partir <strong>des</strong> métho<strong>des</strong> d’étalonnage classiques <strong>des</strong><br />
<strong>robots</strong> série, on développera <strong>des</strong> métho<strong>des</strong> de base pour l’étalonnage <strong>des</strong> <strong>robots</strong><br />
Delta, tout en utilisant les modèles <strong>géométrique</strong>s (MGD, MGI). Les équations de<br />
contraintes obtenues et leurs résolutions (formelles ou numériques) seront analysées.<br />
Nous verrons comment utiliser certaines techniques d’optimisation pour rendre les<br />
résultats plus robustes par rapport aux erreurs de mesure.
___________________________________________________________________________<br />
CHAPITRE IV
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Chapitre IV<br />
ÉTALONNAGE GÉOMÉTRIQUE DES ROBOTS PARALLÈLES<br />
IV.1 INTRODUCTION<br />
Le nombre de publications concernant l’étalonnage <strong>des</strong> <strong>robots</strong> parallèles est assez<br />
faible comparé aux <strong>robots</strong> série. Nous pouvons penser que les deux domaines sont<br />
connexes, alors qu’il est difficile d’appliquer les métho<strong>des</strong> d’étalonnage <strong>des</strong><br />
manipulateurs séries aux manipulateurs parallèles. La structure en boucle fermée, le fait<br />
que les articulations du robot parallèle ne sont pas toutes instrumentées, la difficulté<br />
d’obtenir un MGD formel, nous obligeons <strong>à</strong> une adaptation <strong>des</strong> métho<strong>des</strong> d’étalonnage<br />
<strong>des</strong> <strong>robots</strong> séries. Mais les principes restent les mêmes : soit comparer un<br />
positionnement du manipulateur avec un étalon de mesure, soit ajouter <strong>des</strong> contraintes<br />
<strong>géométrique</strong>s pour rendre redondantes les informations disponibles sur l’état interne<br />
du manipulateur. Les métho<strong>des</strong> de résolution (l’optimisation dans la plupart <strong>des</strong> cas) et<br />
les problèmes (robustesse aux erreurs de mesure, choix <strong>des</strong> configurations de mesure)<br />
seront eux aussi les mêmes.<br />
(LES MÉTHODES DE BASE)<br />
61
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Ce chapitre fera l’objet de l’étude <strong>des</strong> métho<strong>des</strong> de base (classiques) de l’étalonnage<br />
de robot parallèle Delta. On suppose que le positionnement exact de robot manipulateur<br />
est connu (noté par l’exposant r) pour un ensemble de configurations du robot k = 1…Nc ;<br />
c'est-<strong>à</strong>-dire la position<br />
P : χ . De plus, les angles exacts α de chaque articulation i<br />
r<br />
k<br />
r<br />
k<br />
r r r r<br />
associées au positionnement k sont connus, nous posons [ α , α , α ]<br />
62<br />
r<br />
i, K<br />
α = .<br />
k 1 , k 2,<br />
k 3,<br />
k<br />
Notre but sera de déterminer <strong>à</strong> partir de ces informations, l’ensemble <strong>des</strong><br />
paramètres <strong>géométrique</strong>s P du robot. Celui-ci peut être décomposé en 3 sous-ensembles,<br />
correspondant aux paramètres <strong>géométrique</strong>s Pi de chaque chaîne i.<br />
Nous verrons, dans la suite du chapitre, qu’il est possible d’utiliser principalement<br />
deux métho<strong>des</strong> : la première, directement adaptée de l’étalonnage <strong>des</strong> <strong>robots</strong> série,<br />
utilise le MGD <strong>des</strong> robot parallèles ; la seconde le MGI. Afin de comparer les métho<strong>des</strong>,<br />
celles-ci seront développées en parallèle, puis simulées. Nous verrons comment ces<br />
métho<strong>des</strong> se comportent lorsque nous introduisons un bruit de mesure sur les<br />
positionnements exacts (et sur les angles exactes <strong>des</strong> articulations motorisées associés)<br />
afin de simuler <strong>des</strong> mesures réelles pratiquées sur le manipulateur. Les mesures seront<br />
notées en exposant par m :<br />
m m m m<br />
P pour la position, et nous posons α = [ α , α , α ]<br />
m<br />
k<br />
ensemble <strong>des</strong> angles <strong>des</strong> actionneurs, pour une configuration de mesure k.<br />
k 1 , k 2,<br />
k 3,<br />
k<br />
Plusieurs types de métho<strong>des</strong> de résolution seront introduites, simulées et discutées.<br />
De plus, nous verrons comment certains outils (principalement d’optimisation<br />
numérique) pourront être utilisés afin de rendre les métho<strong>des</strong> plus robustes par rapport<br />
aux erreurs de mesure.<br />
IV.2 PRINCIPE<br />
IV.2.1 Méthode Directe<br />
L’objectif de l’étalonnage étant de diminuer l’erreur de positionnements du robot,<br />
cette dernière est causée principalement par une mauvaise connaissance <strong>des</strong> paramètres<br />
<strong>géométrique</strong>s du manipulateur. La question qui se pose est comment pouvons nous<br />
définir cette erreur ?
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Une commande sur les actionneurs va permettre au robot de se positionner dans<br />
une configuration X. La position peut être calculée par le MGD <strong>des</strong> <strong>robots</strong> parallèles.<br />
Nous pouvons donc obtenir X mgd =Fmgd(P,ρ), en fonction de la connaissance <strong>des</strong> valeurs<br />
<strong>des</strong> actionneurs ρ et <strong>des</strong> paramètres <strong>géométrique</strong>s du manipulateur P .<br />
Si nous obtenons le positionnement réel (ou de référence) du manipulateur X r , nous<br />
pouvons le comparer avec celui obtenu par le MGD et ainsi déterminer l’erreur de<br />
positionnement du manipulateur en fonction <strong>des</strong> paramètres <strong>géométrique</strong>s (les<br />
inconnues <strong>à</strong> déterminer).<br />
Erreur de positionnement = X r - X mgd(P, ρ r)<br />
Notre but est d’agir sur les paramètres <strong>géométrique</strong>s afin de rendre l’erreur de<br />
positionnement la plus petite possible.<br />
Besnard [39], Daney [10], Yu [09], Baguenar [48] et Renaud [29] ont appliqués cette<br />
méthode pour <strong>des</strong> plates-formes de Gough.<br />
IV.2.2 Méthode Inverse<br />
L’erreur de positionnement sera quantifiée indirectement <strong>à</strong> travers l’erreur sur les<br />
valeurs articulaires, au lieu de l’évaluer directement.<br />
Pour un positionnement de référence connu du manipulateur X r , nous pouvons<br />
calculer par le MGI les coordonnées articulaires en fonction <strong>des</strong> paramètres<br />
<strong>géométrique</strong>s Pi mgi<br />
r<br />
du robot. Nous obtenons ρ = ( Ρ , ) . L’idée est de comparer cette<br />
i Fmgi i χ<br />
information avec les valeurs réelles <strong>des</strong> coordonnées articulaires ρ r . Pour le robot Delta,<br />
nous obtiendrons :<br />
r mgi r<br />
Erreur sur articulation motorisée d’un chaîne = ρ − ρ ( Ρ , χ )<br />
(IV.1)<br />
Le but sera, pour chaque chaîne i, d’agir sur les paramètres <strong>géométrique</strong>s afin de<br />
rendre cette erreur la plus petite possible.<br />
Nous pouvons déj<strong>à</strong> voir le principal avantage de cette méthode. L’erreur fournie<br />
pour une chaîne est indépendante <strong>des</strong> erreurs sur les autres chaînes du robot.<br />
63<br />
i<br />
i<br />
i
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
L’étalonnage peut donc être décomposé en l’identification successive <strong>des</strong> paramètres P i<br />
de chaque chaîne. Nous divisons donc le nombre d’inconnues <strong>à</strong> déterminer par le<br />
nombre de chaîne du manipulateur (3 chaînes pour le robot Delta). Nous verrons que,<br />
grâce <strong>à</strong> cette subdivision du problème, sa résolution en est facilitée.<br />
Besnard [39], Yu [09], Daney [10] ont appliqué cette méthode pour <strong>des</strong> plates-formes<br />
de Gough.<br />
IV.3 LES SYSTEMES D’EQUATIONS A RESOUDRE<br />
IV.3.1 Utilisation du MGD<br />
L‘erreur de positionnement mgd<br />
ε k , pour une configuration k du manipulateur, nous<br />
donne un ensemble d’équations de contraintes :<br />
mgd<br />
r mgd r<br />
ε ( Ρ ) = χ − χ ( Ρ,<br />
α )<br />
k<br />
k<br />
Ces erreurs sont nulles pour les paramètres exacts r<br />
Ρ du manipulateur. Le<br />
problème de l’étalonnage revient alors <strong>à</strong> déterminer<br />
64<br />
k<br />
r<br />
Ρ tel que :<br />
mgd r r mgd r r<br />
ε ( Ρ ) = χ − χ ( Ρ , α ) = 0<br />
(IV.2)<br />
k<br />
k<br />
Pour résoudre un tel problème il faut que le nombre d’équations algébriquement<br />
indépendantes soit égal au nombre d’inconnues. Suivant la nature <strong>des</strong> grandeurs de<br />
référence, l’erreur mgd<br />
ε k nous fournit Nm équations. Dans le cas d’une instrumentation<br />
nous donnons la position (3 paramètres) de la plate-forme mobile, le vecteur<br />
k<br />
r<br />
χ k nous<br />
fournira 3 informations indépendantes, donc Nm =3. Si nous plaçons le manipulateur<br />
dans Nc configurations de référence, nous obtenons Nc relations de type (l’équation IV.2)<br />
soit Nm x Nc équations. Le nombre Np de paramètres <strong>géométrique</strong>s <strong>à</strong> identifier est<br />
mgd<br />
dépendant de la modélisation choisie du robot. Pour déterminer P, tel que ε ( P)<br />
= 0,<br />
avec k = 1,<br />
..., N c , il faut que :<br />
N ×<br />
N ≥ N<br />
c<br />
m<br />
p<br />
k
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Le nombre de paramètres P (inconnues <strong>à</strong> déterminer) de ce modèle est égal<br />
<strong>à</strong> = 24<br />
N , soit chaque chaîne 8 paramètres P [ Dx , Dy , Dz , θ , α , Lax , Lay , Lb ]<br />
p<br />
i=1,...,3.<br />
65<br />
i<br />
= pour<br />
Nous obtenons par une instrumentation, la position (3 informations) du plateau<br />
mobile pour chaque configuration de mesure : N = 3 . Le nombre minimal de<br />
configuration de positionnements mesurés du manipulateur sera donc égal <strong>à</strong> 24/3=8. Le<br />
problème sera donc de trouver P c , ensemble <strong>des</strong> paramètres obtenus par l’étalonnage,<br />
tel que :<br />
⎧ ε1<br />
⎪<br />
⎪ M<br />
⎪<br />
⎨ ε k<br />
⎪ M<br />
⎪<br />
mgd<br />
⎪⎩<br />
ε Nc<br />
mgd<br />
mgd<br />
c r mgd c r<br />
( P ) = χ − χ ( P α )<br />
1<br />
M<br />
, 1<br />
c r mgd c r<br />
( P ) = χ − χ ( P , α )<br />
k<br />
M<br />
c r mgd c r<br />
( P ) = χ − χ ( P , α )<br />
Nc<br />
k<br />
Nc<br />
= 0<br />
M<br />
= 0<br />
M<br />
i<br />
= 0<br />
m<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
(IV.3)<br />
Avec c N k ..., , 1 = , l’indice de la configuration du robot. Les informations seront<br />
constituées, pour k = 1,<br />
..., N c , de positionnements de référence connus du robot<br />
r<br />
l’ensemble <strong>des</strong> angles α k <strong>des</strong> articulations mobiles.<br />
IV.3.2 Utilisation du MGI<br />
r<br />
χ k et de<br />
Pour simplifier l’écriture <strong>des</strong> équations du MGI, on utilise la différence du carré <strong>des</strong><br />
longueurs au lieu d’utiliser l’erreur sur les angles <strong>des</strong> articulations mobiles telle qu’elle<br />
est introduite dans l’équation (IV.1).<br />
Nous cherchons <strong>à</strong> modéliser le robot par le Modèle 24. L’ensemble <strong>des</strong> paramètres<br />
<strong>géométrique</strong>s de chaîne i <strong>à</strong> identifier sera :<br />
i<br />
[ Dx , Dy , Dz , θ , α , Lax , Lay Lb ]<br />
P =<br />
,<br />
i<br />
i<br />
Pour un positionnement k connu exactement du manipulateur<br />
d’articulation mobile i <strong>à</strong> étalonner, l’équation du MGI, nous donne :<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
r<br />
χ k et pour l’angle<br />
T<br />
r r<br />
r r<br />
2<br />
i,<br />
χ k , i,<br />
k ) = CBi<br />
, k CBi<br />
, k Lb<br />
(IV.4)<br />
i,<br />
k<br />
Fmgi ( Ρ α<br />
− i
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
L’équation (IV.4) doit s’annuler pour les paramètres exacts du manipulateur P . Elle<br />
r<br />
sera utiliser comme équation de contrainte. Nous aurons donc, pour P P = :<br />
mgi r r r i,<br />
k r r r<br />
ε Ρ , χ , α ) = ( Ρ , χ , ) = 0<br />
(IV.5)<br />
i, k ( i k i,<br />
k Fmgi i k α i,<br />
k<br />
Afin d’obtenir un ensemble fini de solutions, il nous faut autant d’équations<br />
algébriquement indépendantes que d’inconnues considérées. Or, l’équation (IV.5) nous<br />
fournit une seule (Nm = 1) équation pour chaque chaîne i. pour une configuration k =<br />
1,…,Nc, soit Nc équations de contraintes pour Nc positionnements de référence. Afin<br />
d’identifier l’ensemble <strong>des</strong> Np paramètres <strong>géométrique</strong>s Pi pour chaque chaîne i, il<br />
faudra c p N N ≥ . Ainsi, pour le Modèle 24, nous avons Np = 8 inconnues par chaîne <strong>à</strong><br />
identifier. Il nous faudra donc N ≥ 8 configurations de référence. Étant donnée que les<br />
c<br />
équations de contraintes sont définies indépendamment pour chaque chaîne, nous<br />
pouvons utiliser les mêmes données pour étalonner l’ensemble P i <strong>des</strong> autres<br />
paramètres du robot. Pour déterminer les 24 paramètres <strong>géométrique</strong>s, il nous faudra<br />
donc au minimum 8 configurations de mesure. Notre problème sera donc de déterminer<br />
c<br />
P i tel que :<br />
IV.4 RESOLUTION<br />
⎧<br />
⎪<br />
⎪<br />
⎨<br />
⎪<br />
⎪<br />
⎪⎩<br />
ε<br />
ε<br />
ε<br />
mgi<br />
i;<br />
1<br />
mgi<br />
i;<br />
k<br />
mgi<br />
i;<br />
Nc<br />
c r r<br />
( Ρ , χ , α )<br />
i<br />
1<br />
i,<br />
1<br />
c r r<br />
( Ρ , χ , α<br />
i<br />
i,<br />
k<br />
)<br />
c r r<br />
( Ρ , χ , α<br />
i<br />
M<br />
M<br />
k<br />
Nc<br />
i,<br />
Nc<br />
66<br />
= 0<br />
M<br />
= 0<br />
M<br />
) = 0<br />
i<br />
i<br />
r<br />
i<br />
(IV.6)<br />
Le principal problème de l’étalonnage est que nous ne connaissons pas le<br />
r<br />
r<br />
positionnement χ k et les angles <strong>des</strong> articulations motorisées associées α k exactement.<br />
Les valeurs obtenues <strong>à</strong> l’aide d’appareils de mesure ne sont qu’approximatives. On peut<br />
donc poser :<br />
χ =<br />
χ + ε<br />
r<br />
k<br />
m<br />
k<br />
pos
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
où<br />
m<br />
χ k est le positionnement mesuré de la configuration k et ε pos l’erreur sur la position<br />
générée par le bruit de mesure, et<br />
α = α + ε<br />
r<br />
k<br />
m<br />
k<br />
m<br />
où α k est l’angle mesuré de l’articulation motorisée i de la configuration k et ε R l’erreur<br />
sur l’angle de l’articulation motorisée i induite par le bruit de mesure.<br />
67<br />
R<br />
Les bruits sur les mesures et de précision numérique <strong>des</strong> machines ne nous permet<br />
pas d’annuler exactement les erreurs mgd<br />
k<br />
ε ou mgi<br />
ε . Nous allons donc chercher <strong>à</strong> les<br />
réduire le plus possible en minimisant le carré de la norme de ces erreurs. Ceci revient <strong>à</strong><br />
définir un critère c quadratique tel que ε ε<br />
T<br />
c = et chercher <strong>à</strong> le minimiser. Pour cela,<br />
nous utiliserons une méthode d’optimisation aux moindres carrés non-linéaire qui est<br />
généralement utilisée pour ces problèmes multidimensionnels [18].<br />
IV.4.1 Les systèmes<br />
Nous souhaitons déterminer<br />
• Pour la méthode directe :<br />
Minimum<br />
c<br />
P=<br />
P<br />
i, k<br />
r<br />
P = P afin d’avoir :<br />
Nc<br />
∑<br />
k = 1<br />
ε<br />
mgd<br />
k<br />
⎛<br />
⎜ m m<br />
, ,<br />
⎜ k k 14243 ⎝ mesures k<br />
α χ<br />
• Pour la méthode inverse, pour chaque chaîne i :<br />
}<br />
P<br />
inconnues<br />
}<br />
∑ , , , ,<br />
=<br />
= 1<br />
⎟ ⎟⎟<br />
N ⎛<br />
inconnues⎞<br />
c<br />
mgi⎜<br />
m m<br />
Minimum c<br />
i k<br />
⎜ k i k Pi<br />
Pi<br />
Pi<br />
14243 k<br />
⎝ mesures k ⎠<br />
α χ ε<br />
Le bruit de mesure modifie les coefficients <strong>des</strong> équations de contraintes : les<br />
systèmes n’ont donc pas de racine exacte. Une méthode d’optimisation nous permet de<br />
chercher une solution qui minimise le critère ε ε<br />
T<br />
c = en P est décrit donc mieux le<br />
problème de l’étalonnage. De plus, ce type de méthode nous permet de prendre en<br />
⎟ ⎟<br />
⎞<br />
⎠<br />
2<br />
2
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
compte la redondance d’information fournie par la multiplication <strong>des</strong> configurations de<br />
mesure.<br />
IV.4.2 Le calcul <strong>des</strong> jacobiennes<br />
Pour notre méthode d’optimisation, on utilise la jacobienne <strong>des</strong> paramètres (c’est la<br />
matrice <strong>des</strong> dérivées <strong>des</strong> équations de contraintes mgd<br />
k<br />
paramètres ( P )) pour minimiser le critère.<br />
IV.4.2.1 Jacobienne de la méthode directe<br />
68<br />
ε ou mgi<br />
ε par rapport aux<br />
La détermination de la jacobienne <strong>des</strong> paramètres mgd<br />
J , revient <strong>à</strong> calculer la dérivée<br />
du positionnement fournie par le MGD, par rapport aux paramètres P . Elle peut être<br />
obtenue de la façon suivante. Les équations implicites du MGI nous fournissent pour<br />
k,<br />
i<br />
chaque chaîne i et pour chaque configuration de mesure k, l’équation F = 0 .<br />
En différenciant l’équation du MGI de la chaîne i par rapport aux paramètres<br />
<strong>géométrique</strong>s P i [ Dxi,<br />
Dyi,<br />
Dzi<br />
, θi<br />
, αi<br />
, Laxi<br />
, Layi<br />
, Lbi<br />
]<br />
du manipulateur = [ x y z ]<br />
= et par rapport au positionnement<br />
χ , nous obtenons pour les chaînes i = 1...<br />
3 :<br />
k<br />
k<br />
k<br />
∂F<br />
k,<br />
i<br />
mgi<br />
∂P<br />
i<br />
k<br />
k , i<br />
∂Fmgi<br />
∆Pi<br />
+ ∆χ<br />
k = 0<br />
∂χ<br />
Sous une forme matriciel ce système devient :<br />
avec<br />
k<br />
k P<br />
k , 1<br />
k , 1<br />
⎛ ∂F<br />
⎞ ⎛ ∂F<br />
⎞<br />
mgi<br />
mgi<br />
⎜ 0 0 ⎟ ⎜ ⎟<br />
⎜ ∂P<br />
⎟ ⎜ ∂χ<br />
k ⎟<br />
k , 2<br />
⎜ k , 2<br />
⎜ ∂F<br />
⎟<br />
⎟<br />
mgi<br />
∂Fmgi<br />
⎜ 0<br />
0 ⎟ ∆P<br />
+ ⎜ ⎟ ∆χ<br />
k = 0<br />
⎜ ∂P<br />
⎟ ⎜ ∂χ<br />
k ⎟<br />
k,<br />
3<br />
⎜ , 3<br />
⎜<br />
∂F<br />
k<br />
⎟ ∂ ⎟<br />
mgi F<br />
⎜<br />
0 0<br />
mgi<br />
⎟ ⎜ ⎟<br />
⎝<br />
∂P<br />
⎠ ⎜ ⎟<br />
⎝ ∂χ<br />
1444<br />
4 244443<br />
k<br />
14243<br />
⎠<br />
k<br />
J P<br />
( ) T<br />
T T T<br />
∆P<br />
, ∆P<br />
, ∆P<br />
P = 1 2 3<br />
k<br />
J χ<br />
i, k<br />
mgi<br />
(IV.7)<br />
(IV.8)<br />
∆ (IV.9)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
T<br />
et ∆ P = ( ∆Dx<br />
, ∆Dy<br />
, ∆Dz<br />
, ∆θ<br />
, ∆α<br />
, ∆Lax<br />
, ∆Lay<br />
, ∆Lb<br />
)<br />
ou encore<br />
Si<br />
donc :<br />
avec<br />
i<br />
i<br />
i<br />
i<br />
i<br />
k<br />
k<br />
3 × 3 k 3×<br />
1 P 3×<br />
24 24×<br />
1<br />
k<br />
J χ est inversible, nous obtenons :<br />
J<br />
mgd k −1<br />
k<br />
k , P = −J<br />
χ J P<br />
La jacobienne mgd<br />
P<br />
i<br />
69<br />
i<br />
i<br />
J χ ∆χ = −J<br />
∆P<br />
(IV.10)<br />
∆ k k,<br />
P<br />
i<br />
J P<br />
mgd<br />
χ = ∆<br />
(IV.11)<br />
J donnée pour l’ensemble <strong>des</strong> erreurs mgd<br />
ε k avec c N k .. 1 = sera<br />
J<br />
mgd<br />
P<br />
⎛ J<br />
⎜<br />
⎜ M<br />
=<br />
⎜<br />
⎜<br />
J<br />
⎜ M<br />
⎜<br />
⎝ J<br />
mgd<br />
1,<br />
P<br />
mgd<br />
1,<br />
P<br />
mgd<br />
1,<br />
P<br />
⎞ ⎛<br />
⎜ − J<br />
⎟<br />
⎟ ⎜ M<br />
⎟ ⎜<br />
⎟<br />
= ⎜ − J<br />
⎟ ⎜ M<br />
⎟ ⎜<br />
⎠ ⎝−<br />
J<br />
1 −1<br />
χ<br />
k −1<br />
χ<br />
N −1<br />
c<br />
χ<br />
IV.4.2.2 Jacobienne de la méthode inverse<br />
J<br />
J<br />
J<br />
1<br />
P<br />
k<br />
P<br />
Nc<br />
P<br />
⎞<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎠<br />
3×<br />
Nc×<br />
24<br />
(IV.12)<br />
Pour la méthode inverse, La jacobienne <strong>des</strong> paramètres plus simple <strong>à</strong> calculer que<br />
pour la méthode directe. L’étalonnage de chaque chaîne étant indépendant, nous<br />
calculons la jacobienne <strong>des</strong> paramètres mgi<br />
J , de la chaîne i pour une configuration k en<br />
dérivant l’erreur mgi<br />
ε i, k (une seule équation) par rapport aux paramètres P i .<br />
∂ε<br />
k Pi<br />
mgi<br />
mgi i,<br />
k<br />
J k , P = i ∂Pi<br />
(IV.13)<br />
Pour le Modèle 24, nous obtenons la ligne correspondant <strong>à</strong> la dérivée de chaque<br />
erreur k = 1,…, Nc pour le chaîne i :<br />
mgi<br />
J k , Pi<br />
mgi ⎛ ∂ε<br />
i,<br />
k<br />
= ⎜<br />
⎝ ∂Dxi<br />
∂ε<br />
i,<br />
k<br />
∂Dy<br />
mgi<br />
i<br />
∂ε<br />
i,<br />
k<br />
∂Dz<br />
mgi<br />
i<br />
∂ε<br />
i,<br />
k<br />
∂θ<br />
mgi<br />
i<br />
mgi<br />
∂ε<br />
i,<br />
k<br />
∂α<br />
i<br />
mgi<br />
∂ε<br />
i,<br />
k<br />
∂Lax<br />
i<br />
mgi<br />
∂ε<br />
i,<br />
k<br />
∂Lay<br />
i<br />
∂ε<br />
i,<br />
k<br />
∂Lb<br />
mgi<br />
i<br />
⎞<br />
⎟<br />
⎠<br />
(IV.14)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
avec ( ) T<br />
P = Dx , Dy , Dz , θ , α , Lax , Lay , Lb<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
i<br />
La jacobienne correspondant <strong>à</strong> la dérivée de l’ensemble <strong>des</strong> N c erreurs mgi<br />
ε i, k de la<br />
chaîne i par les paramètres P i sera exprimée par :<br />
J<br />
mgi<br />
k , Pi<br />
⎛ ∂ε<br />
⎜<br />
⎜ ∂Dxi<br />
⎜ M<br />
⎜ ∂ε<br />
= ⎜<br />
⎜ ∂Dxi<br />
⎜ M<br />
⎜ ∂ε<br />
⎜<br />
⎝ ∂Dxi<br />
mgi<br />
i,<br />
1<br />
mgi<br />
i,<br />
k<br />
mgi<br />
i,<br />
Nc<br />
IV.4.3 La simulation<br />
IV.4.3.1 Principe<br />
∂ε<br />
∂Dy<br />
M<br />
∂ε<br />
∂Dy<br />
M<br />
∂ε<br />
∂Dy<br />
mgi<br />
i,<br />
1<br />
i<br />
mgi<br />
i,<br />
k<br />
i<br />
mgi<br />
i,<br />
Nc<br />
i<br />
∂ε<br />
∂Dz<br />
M<br />
∂ε<br />
∂Dz<br />
M<br />
∂ε<br />
∂Dz<br />
mgi<br />
i,<br />
1<br />
i<br />
mgi<br />
i,<br />
k<br />
i<br />
mgi<br />
i,<br />
Nc<br />
i<br />
∂ε<br />
∂θ<br />
i<br />
M<br />
∂ε<br />
∂θ<br />
i<br />
M<br />
∂ε<br />
∂θ<br />
mgi<br />
i,<br />
1<br />
mgi<br />
i,<br />
k<br />
mgi<br />
i,<br />
Nc<br />
i<br />
∂ε<br />
∂α<br />
i<br />
M<br />
∂ε<br />
∂α<br />
i<br />
M<br />
∂ε<br />
∂α<br />
70<br />
mgi<br />
i,<br />
1<br />
mgi<br />
i,<br />
k<br />
mgi<br />
i,<br />
Nc<br />
i<br />
∂ε<br />
∂Lax<br />
M<br />
∂ε<br />
∂Lax<br />
M<br />
∂ε<br />
∂Lax<br />
mgi<br />
i,<br />
1<br />
i<br />
mgi<br />
i,<br />
k<br />
i<br />
mgi<br />
i,<br />
Nc<br />
i<br />
∂ε<br />
∂Lay<br />
M<br />
∂ε<br />
∂Lay<br />
M<br />
∂ε<br />
∂Lay<br />
mgi<br />
i,<br />
1<br />
i<br />
mgi<br />
i,<br />
k<br />
i<br />
mgi<br />
i,<br />
Nc<br />
i<br />
mgi<br />
∂ε<br />
⎞ i,<br />
1 ⎟<br />
∂Lbi<br />
⎟<br />
M ⎟<br />
mgi<br />
∂ε<br />
⎟<br />
i,<br />
k<br />
⎟<br />
∂Lbi<br />
⎟<br />
M ⎟<br />
mgi<br />
∂ε<br />
⎟<br />
i,<br />
Nc<br />
⎟<br />
∂Lbi<br />
⎠<br />
Nc<br />
× 8<br />
(IV.15)<br />
Les simulations sont effectuées selon la méthode énoncée <strong>à</strong> le paragraphe (II.7) afin<br />
d’étalonner le robot Delta.<br />
Nous pratiquons plusieurs simulations en faisant varier un certain nombre de<br />
paramètres afin de tester l’efficacité <strong>des</strong> métho<strong>des</strong> de base. Les graphiques sont<br />
automatiquement générés pour chaque simulation de l’étalonnage.<br />
Dans un esprit de comparaison, nous utiliserons les mêmes configurations de<br />
mesure pour toutes les simulations <strong>des</strong> deux métho<strong>des</strong> de base. Ces configurations sont<br />
générées aléatoirement, <strong>à</strong> l'intérieur de l'espace de travail du manipulateur. Les<br />
jacobiennes inverses cinématiques associées <strong>à</strong> ces positionnements sont testées afin de<br />
vérifier qu’elles ne comportent aucune singularité et les équations obtenues sont<br />
génériquement indépendantes (voir le paragraphe IV.5.3). À ces configurations, nous<br />
ajoutons une erreur de mesure uniformément distribuée d'amplitude ε Pos (C’est-<strong>à</strong>-dire<br />
que la position bruitée est donnée par une valeur aléatoire choisie dans un intervalle<br />
centré en la position réelle simulée et de largeur 2 × ε Position ) sur les positions, Le nombre<br />
de configurations de mesure Nc, peut varier de 8 (minimum requis + 1) <strong>à</strong> 100. Ces
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
algorithmes nécessitent une estimée initiale <strong>des</strong> paramètres : nous simulons <strong>des</strong> valeurs<br />
nominales (théoriquement fournies par le constructeur) en ajoutant une erreur<br />
régulièrement distribuée d'amplitude ε p sur les paramètres <strong>géométrique</strong>s.<br />
Chaque graphique présentera les indications d'amplitude d'erreur citées au-<strong>des</strong>sus.<br />
Nous ajouterons le nombre de mesures, le temps d'exécution en seconde (utilisation<br />
logicielle MatLab sur une machine PC Hp workstation xw6000 Intel® Xeon CPU 3.06<br />
GHz, 1.00 Go de RAM) et le type d'algorithme d'optimisation aux moindres carrés non<br />
linéaires.<br />
Les résultats fournis par les graphiques sont de 2 types :<br />
• Le premier graphique indique l'erreur après étalonnage, c'est <strong>à</strong> dire la norme de<br />
l'erreur entre les valeurs réelles <strong>des</strong> paramètres et celles déterminées par<br />
étalonnage. Nous aurons donc 24 indications pour les 24 paramètres<br />
<strong>géométrique</strong>s du robot.<br />
• Le deuxième graphique fournit le gain d'étalonnage <strong>des</strong> 24 paramètres<br />
<strong>géométrique</strong>s du robot.<br />
IV.4.3.2 Types d'algorithmes <strong>des</strong> moindres carrés non-linéaires, non contraints<br />
La recherche en optimisation a donné lieu <strong>à</strong> beaucoup de travaux, et de nombreuses<br />
métho<strong>des</strong> ont été développées. Dans ce qui suit on va donner une idée sur les<br />
algorithmes d'optimisation utilisés dans ce document.<br />
Une brève <strong>des</strong>cription <strong>des</strong> métho<strong>des</strong> d'optimisation d'un critère quadratique est<br />
donnée dans l’Annexe B. Nous retiendrons deux métho<strong>des</strong> :<br />
• La méthode de Levenberg-Marquardt (LM) lorsque nous ne savons pas si les<br />
paramètres initiaux ont été bien estimés (c'est <strong>à</strong> dire, lorsque le critère est grand).<br />
• La méthode de Gauss-Newton, lorsque nous savons que les estimées initiales<br />
sont proches de la solution (le critère <strong>à</strong> minimiser est petit).<br />
Pour cela, nous utilisons un algorithme de résolution intégré au logiciel MatLab sous<br />
l’appellation la fonction « leastsq » (voir Annexe C) dans la version 5.2 et « lsqnonlin »<br />
71
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
dans la version 5.3 afin de minimiser au sens <strong>des</strong> moindres carrés l'ensemble <strong>des</strong> erreurs<br />
ε ou mgi<br />
ε [16, 34, 44]. Par défaut, l'algorithme implanté est la méthode de Levenberg-<br />
mgd<br />
k<br />
k , i<br />
Marquardt. Une option permet d'utiliser une méthode de Gauss-Newton avec inversion<br />
de la jacobienne <strong>des</strong> paramètres par décomposition QR.<br />
Remarque : les deux fonctions de MatLab sont intégrées dans les nouvelles versions.<br />
IV.4.4 Les résultats<br />
IV.4.4.1 Méthode directe<br />
IV.4.4.1.a Sans bruit de mesure<br />
Tout d'abord, nous simulons la méthode sans bruit de mesure, pour <strong>des</strong> erreurs sur<br />
les estimées initiales <strong>des</strong> paramètres de l'ordre du millimètre. Les résultats obtenus pour<br />
8 configurations de mesure sont présentés en figure IV.1. Nous obtenons <strong>des</strong> gains<br />
d'étalonnage proches de 100%, c'est-<strong>à</strong>-dire que nous avons amélioré grandement<br />
l'estimation <strong>des</strong> paramètres, jusqu'<strong>à</strong> converger vers la solution exacte. Les erreurs<br />
obtenues (norme de la différence entre les paramètres estimés par <strong>l'étalonnage</strong> et les<br />
paramètres réels du robot) sont négligeables.<br />
Pour une erreur sur les estimées initiales plus petite (de l'ordre du centième de<br />
millimètre), les résultats sont présentés dans la figure IV.2.<br />
Pour <strong>des</strong> erreurs sur les estimées initiales de l'ordre du centimètre, la méthode<br />
directe ne converge pas, la solution obtenue ne pas significative. Ceci se traduit par une<br />
grande instabilité numérique de cette méthode d’étalonnage.<br />
IV.4.4.1.a Avec bruit de mesure<br />
Tout d’abord, On va ajouter un bruit de mesure de l'ordre du micron sur la mesure<br />
de la position de l’organe terminal et sur les mesures <strong>des</strong> longueurs et de l'ordre du<br />
centième de degré sur la mesure <strong>des</strong> angles <strong>des</strong> articulations. Nous procédons <strong>à</strong> une<br />
simulation d'étalonnage pour 8 configurations de mesure.<br />
72
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Pour une erreur de l’ordre du dixième de millimètre on obtient un gain négatif, ce<br />
qui veut dire que nous ne peut pas améliorer la connaissance <strong>des</strong> paramètres<br />
<strong>géométrique</strong>s du robot (voir figure IV.3).<br />
Nous pourrons améliorer les résultats en augmentons le nombre de configurations<br />
de mesure. En procédant au même type de simulation mais avec 20, 40 et 60<br />
configurations de mesures (respectivement les figures IV.4, IV.5, IV.6). Nous obtenons<br />
alors de meilleurs résultats.<br />
Pour <strong>des</strong> erreurs de mesure supérieures (voir figure IV.7), la méthode directe nous<br />
fournit <strong>des</strong> résultats peu satisfaisants (gain d'étalonnage négatif).<br />
Conclusion le problème majeur de la méthode directe est que pour un nombre<br />
de paramètres <strong>à</strong> déterminer, 24 dans notre exemple, les algorithmes d’optimisations<br />
ne converge pas ou difficilement. Nous pouvons dire donc que cette méthode est<br />
peu fiable et lente.<br />
73
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
(a)<br />
Temps = 0.9110 s<br />
Algorithme : Levenberg-Marquardt<br />
Figure IV.1 : Résultats méthode Directe, sans bruit de mesures, Nc=8, p=1 mm,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
(a)<br />
Temps = 1.3950 s<br />
Algorithme : Levenberg-Marquardt<br />
Figure IV.2 : Résultats méthode directe, avec bruit de mesures, Nc=8, p=0.1 mm,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
74<br />
(b)<br />
(b)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Erreur [mm, rad]<br />
0.45<br />
Erreur [mm, rad]<br />
0.4<br />
0.35<br />
0.3<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
0<br />
0.35<br />
0.3<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
Figure IV.3 : Résultats méthode directe, avec bruit de mesures, Nc=8, p= 0.1 mm,<br />
pos= L= 0.001 mm, R= 0.001°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
0<br />
(a)<br />
Temps = 2.9450 s<br />
Algorithme : Levenberg-Marquardt<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 4.2560 s<br />
Algorithme : Levenberg-Marquardt<br />
Gain d'étalonnage [%]<br />
Gain d'étalonnage [%]<br />
Figure IV.4 : Résultats méthode directe, avec bruit de mesures, Nc=20, p= 0.1 mm,<br />
pos= L= 0.001 mm, R= 0.001°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
75<br />
100<br />
50<br />
0<br />
-50<br />
-100<br />
-150<br />
-200<br />
-250<br />
-300<br />
-350<br />
100<br />
50<br />
0<br />
-50<br />
-100<br />
-150<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(b)<br />
-200<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres<br />
(b)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Erreur [mm, rad]<br />
Eruer [mm, rad]<br />
0.18<br />
0.16<br />
0.14<br />
0.12<br />
0.1<br />
0.08<br />
0.06<br />
0.04<br />
0.02<br />
0<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
0<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 5.2470 s<br />
Algorithme : Levenberg-Marquardt<br />
Figure IV.5 : Résultats méthode directe, avec bruit de mesures, Nc=40, p= 0.1 mm,<br />
pos=L=0.001 mm, R=0.001°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps =10.9450 s<br />
Algorithme : Levenberg-Marquardt<br />
Gain d'étalonnage [%]<br />
76<br />
Gain d'étalonnage [%]<br />
100<br />
50<br />
0<br />
-50<br />
-100<br />
-150<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres<br />
Figure IV.6 : Résultats méthode directe, avec bruit de mesures, Nc=60, p= 0.1 mm,<br />
pos=L=0.001 mm, R=0.001°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0<br />
-20<br />
-40<br />
-60<br />
(b)<br />
(b)<br />
-80<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Erreur [mm, rad]<br />
1.5<br />
1<br />
0.5<br />
0<br />
IV.4.4.2 Méthode inverse<br />
IV.4.4.2.a Sans bruit de mesure<br />
La méthode simulée sans erreur de mesure nous permet de déterminer<br />
exactement les paramètres <strong>géométrique</strong>s du robot (Nc> 7 pour le Modèle 24). La figure<br />
IV.8 nous montre que le rayon de convergence (l'influence de l'erreur sur les estimées<br />
initiales) est bien supérieur <strong>à</strong> celui <strong>des</strong> métho<strong>des</strong> directes. En effet, pour <strong>des</strong> erreurs sur<br />
les estimées initiales de l'ordre du centimètre, nous observons une convergence de la<br />
méthode inverse.<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 30.8770 s<br />
Algorithme : Levenberg-Marquardt<br />
Figure IV.7 : Résultats méthode directe, avec bruit de mesures, Nc=60, p=0.1 mm,<br />
pos=L=0.01 mm, R=0.01°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
IV.4.4.2.b Avec bruit de mesure<br />
Gain d'étalonnage [%]<br />
-1400<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres<br />
Pour <strong>des</strong> erreurs de mesure assez faibles (Pos= 0.001 mm, R= 0.001°, L= 0.001 mm)<br />
et pour <strong>des</strong> erreurs sur les estimées assez gran<strong>des</strong> (de l'ordre du centimètre), la figure<br />
IV.9 nous montre que les paramètres ont été grandement améliorés (gain proche de<br />
100%) et que les erreurs sur les paramètres sont de l'ordre du dixième de millimètre.<br />
Pour <strong>des</strong> paramètres mieux estimés (figure IV.9), les erreurs sont approximativement les<br />
77<br />
200<br />
0<br />
-200<br />
-400<br />
-600<br />
-800<br />
-1000<br />
-1200<br />
(b)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
mêmes et donc les gains sont bien entendu moins bons (~ 80%). Les résultats obtenus<br />
avec une méthode de Levenberg-Marquardt dans la figure IV.10, ou pour une méthode<br />
de Gauss-Newton, figure IV.11 sont similaires.<br />
Pour <strong>des</strong> erreurs de mesure de l’ordre de centième de millimètre (Pos= 0.01 mm, R=<br />
0.01°, L= 0.01 mm), et une erreur sur estimée de 1 mm, les résultats nous montrent<br />
(figure IV.12) que 8 configurations ne suffisent plus pour améliorer la connaissance <strong>des</strong><br />
paramètres <strong>géométrique</strong>s (gains d'étalonnage négatifs). Il sera donc nécessaire<br />
d'augmenter les nombres de configurations de mesure (figures IV.13, IV.14, IV.15) afin<br />
d'obtenir <strong>des</strong> résultats satisfaisants.<br />
Conclusion La méthode inverse est, comparée <strong>à</strong> la méthode directe, plus robuste<br />
par rapport aux erreurs de mesure, plus rapide, et possède un rayon de convergence<br />
supérieur.<br />
Ceci est dû principalement <strong>à</strong> deux raisons :<br />
• Le faible nombre de paramètres considérés successivement : 8 au lieu de 24 pour<br />
la méthode directe.<br />
Nous choisirons donc cette solution comme méthode <strong>à</strong> utiliser pour étalonner le<br />
robot parallèle.<br />
78
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Errseur [mm, rad]<br />
0.7<br />
0.6<br />
0.5<br />
0.4<br />
0.3<br />
0.2<br />
0.1<br />
0<br />
(a)<br />
Temps = 3.3850 s<br />
Algorithme : Levenberg-Marquardt<br />
Figure IV.8 : Résultats méthode inverse, sans bruit de mesures, Nc= 8, p= 10 mm,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 2.8770 s<br />
Algorithme : Levenberg-Marquardt<br />
Gain d'étalonnage [%]<br />
Figure IV.9 : Résultats méthode inverse, avec bruit de mesures, Nc=8, p=10 mm,<br />
pos=L=0.001 mm, R=0.001°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
79<br />
100<br />
99<br />
98<br />
97<br />
96<br />
95<br />
94<br />
93<br />
92<br />
91<br />
(b)<br />
90<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres<br />
(b)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Erreur [mm, rad]<br />
Erreur [mm, rad]<br />
0.45<br />
0.45<br />
0.4<br />
0.35<br />
0.3<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
0.4<br />
0.35<br />
0.3<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
0<br />
0<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 2.9060 s<br />
Algorithme : Levenberg-Marquardt<br />
Figure IV.10 : Résultats méthode inverse, avec bruit de mesures, Nc=8, p=1 mm,<br />
pos=L=0.001 mm, R=0.001°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 1.3160 s<br />
Algorithme : Gauss Newton + SVD<br />
Gaind'étalonnage [%]<br />
Gaind'étalonnage [%]<br />
80<br />
100<br />
90<br />
80<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres<br />
Figure IV.11 : Résultats méthode inverse, avec bruit de mesures, Nc=8, p=1 mm,<br />
pos=L=0.001 mm, R=0.001°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
100<br />
90<br />
80<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
(b)<br />
0<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres<br />
(b)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Erreur [mm, rad]<br />
Erreur [mm, rad]<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
0<br />
1.4<br />
1.2<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 2.5780 s<br />
Algorithme : Levenberg-Marquardt<br />
Gain d'étalonnage [%]<br />
Figure IV.12 : Résultats méthode inverse, avec bruit de mesures, Nc=8, p=1 mm,<br />
pos=L=0.01 mm, R=0.01°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 5.7810 s<br />
Algorithme : Levenberg-Marquardt<br />
Gain d'étalonnage [%]<br />
100<br />
50<br />
0<br />
-50<br />
-100<br />
-150<br />
-200<br />
81<br />
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24<br />
Paramètres<br />
Figure IV.13 : Résultats méthode inverse, avec bruit de mesures, Nc=20, p=1 mm,<br />
pos=L=0.01 mm, R=0.01°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0<br />
-20<br />
(b)<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(b)
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Erreur [mm, rad]<br />
Erreur [mm, rad]<br />
0.45<br />
0.4<br />
0.35<br />
0.3<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
0.4<br />
0.35<br />
0.3<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
0<br />
0<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 8.8770 s<br />
Algorithme : Levenberg-Marquardt<br />
Gain d'étalonnage [mm, rad]<br />
Figure IV.14 : Résultats méthode inverse, avec bruit de mesures, Nc=40, p=1 mm,<br />
pos=L=0.01 mm, R=0.01°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
1 2 3 4 5 6 7 8 9 101112 13 1415161718192021222324<br />
Paramètres<br />
(a)<br />
Temps = 11.9070 s<br />
Algorithme : Levenberg-Marquardt<br />
Gain d'étalonnage [%]<br />
82<br />
100<br />
90<br />
80<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres<br />
Figure IV.15 : Résultats méthode inverse, avec bruit de mesures, Nc=60, p=1 mm,<br />
pos=L=0.01 mm, R=0.01°,<br />
(a) Norme d’erreur sur les paramètres,<br />
(b) Gain de l’étalonnage sur les paramètres.<br />
100<br />
90<br />
80<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
(b)<br />
(b)<br />
0<br />
1 2 3 4 5 6 7 8 9 101112131415161718192021222324<br />
Paramètres
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
IV.5 AMELIORATION DE LA ROBUSTESSE DES ALGORITHMES<br />
Pour rendre nos résultats plus robuste par rapport aux erreurs de mesure, nous<br />
avons agis sur plusieurs paramètres et /ou adapter les métho<strong>des</strong>.<br />
IV.5.1 Le nombre de mesures<br />
Le premier critère sur lequel nous pouvons agir est le nombre de configurations de<br />
mesure nécessaires <strong>à</strong> <strong>l'étalonnage</strong>. D'une façon générale, nous utilisons au moins une<br />
équation de plus que le minimum nécessaire (soit une de plus que le nombre de<br />
paramètres <strong>à</strong> identifier), ceci pour supprimer la redondance de solutions.<br />
L’augmentation du nombre de mesures fait diminuer l'erreur sur les paramètres<br />
[11]. Mais ce nombre est limité par les contraintes de la mise en place opératoire du<br />
processus de prise de mesures externes. Il est donc essentiel de déterminer un nombre<br />
optimal.<br />
Afin de bien comprendre cette influence, nous faisons varier <strong>l'étalonnage</strong> du robot<br />
par les deux métho<strong>des</strong> classiques (de base). Pour un nombre de configurations de<br />
mesure allant de 8 <strong>à</strong> 100, nous obtenons les figures IV.16 et IV.7.<br />
A partir <strong>des</strong> résultats obtenus, on voit bien que l’erreur sur les paramètres varie<br />
assez peu au-del<strong>à</strong> de 50 configurations de mesure (pour la méthode inverse). Il n’est<br />
donc pas nécessaire de considérer plus de configurations de mesure.<br />
83
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
Amplitude de l’erreur sur les estimées initiales = 1 mm pour les longueurs<br />
et 1° pour les angles.<br />
Amplitude de bruit de mesures, position =0.001 mm.<br />
Figure IV.16 - Influence du nombre de configuration de mesure sur les résultats de la méthode<br />
inverse en présence d’erreur sur les paramètre εLax= εLay= εDx= εDy= εDz= εLb=1 mm, εα= εγ= εβ=1° et<br />
sur les mesures εPos= 0.001mm.<br />
Amplitude de l’erreur sur les estimées initiales = 10 mm pour les longueurs<br />
Amplitude de bruit de mesures, position =0.01 mm.<br />
Figure IV.17 - Influence du nombre de configuration de mesure sur les résultats de la méthode<br />
inverse en présence d’erreur sur les paramètre εLax= εLay= εDx= εDy= εDz= εLb=10 mm,et sur les<br />
mesures εPos= 0.01mm.<br />
84
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
IV.5.2 Choix <strong>des</strong> configurations de mesure<br />
Le choix <strong>des</strong> configurations de mesure est un problème très important pour<br />
l’étalonnage <strong>des</strong> <strong>robots</strong>, dans notre étude on a pris en compte de bon choix <strong>des</strong><br />
configuration de mesure afin d’avoir de meilleur résultats.<br />
Nous rappelons que notre problème est déterminer P tel que C Soit minimum<br />
T<br />
avec C ε ( P)<br />
ε ( P)<br />
= . Les métho<strong>des</strong> d’optimisation utilisent principalement la jacobienne<br />
∂<br />
<strong>des</strong> paramètres J p =<br />
∂P<br />
ε afin de déterminer une direction de convergence vers un<br />
minimum (voir annexe B). De plus, elle donne la sensibilité <strong>des</strong> équations de contraintes<br />
aux variations de paramètres.<br />
∂ε<br />
∆ F = . ∆P<br />
∂P<br />
85<br />
(IV.16)<br />
Son étude (voir les paragraphes IV.4.2 et IV.4.3) peut permettre de quantifier la<br />
qualité de l’étalonnage. En effet, en étudiant cette matrice, nous pouvons vérifier que le<br />
système obtenu est observable (et non singulier), mais aussi améliorer la convergence ou<br />
minimiser la sensibilité <strong>des</strong> métho<strong>des</strong> aux erreurs de mesure.<br />
Pour commencer, nous devons nous assurer que le système considéré est observable<br />
(voir [46, 21, 11]). Pour cela, il faut que le rang de la jacobienne soit au moins égal au<br />
nombre de paramètres considérés. Le paramétrage choisi du robot ne doit pas être<br />
redondant, c'est-<strong>à</strong>-dire que les paramètres doivent être linéairement indépendants. Nous<br />
dirons que le paramétrage est alors minimal.<br />
IV.6 CONCLUSION<br />
Ce chapitre nous avons adapté <strong>des</strong> métho<strong>des</strong> classiques utilisées pour les <strong>robots</strong><br />
séries. La simulation nous a permis de mettre en évidence l’intérêt de la méthode<br />
inverse comparée <strong>à</strong> la méthode directe. La subdivision de l’étalonnage en une<br />
identification <strong>des</strong> paramètres chaîne par chaîne et la forme formelle <strong>des</strong> équations de<br />
contraintes en font une méthode rapide et robuste.
Ecole Militaire Polytechnique Chapitre IV : étalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles<br />
(Les Métho<strong>des</strong> de base)<br />
D’une façon générale, la simulation montre un problème commun <strong>à</strong> toutes les<br />
métho<strong>des</strong> numériques d’étalonnage : si nous mettons de côté les problèmes de<br />
convergence <strong>des</strong> métho<strong>des</strong> d’optimisation, elles fournissent une solution qui minimise<br />
le critère mais qui n’est pas la solution recherchée. Ceci est dû au bruit de mesure qui<br />
modifie les équations de contraintes. Pour la solution obtenue, nous pouvons associer<br />
une erreur fonction du bruit de mesure, <strong>des</strong> types de méthode et de contraintes utilisée,<br />
du nombre et de la qualité <strong>des</strong> configurations de mesure. Si cette erreur est du même<br />
ordre de grandeur que l’estimée initiale <strong>des</strong> procédures d’optimisation, nous ne<br />
pouvons garantir la qualité de l’étalonnage. Nous avons vu comment agir sur un certain<br />
nombre de paramètres pour prendre en compte ce problème et améliorer la précision<br />
<strong>des</strong> résultats.<br />
Nous pouvons :<br />
1. soit augmenter le nombre de configurations de mesure, mais nous en avons<br />
vu les limites : Les résultats ne s’améliorent plus au del<strong>à</strong> de 50<br />
positionnements considérés.<br />
2. soit prendre en compte la distribution du bruit sur les mesures. Il sera ici<br />
nécessaire d’en avoir un <strong>à</strong> priori.<br />
3. soit choisir les configurations de mesure. La solution que nous avons<br />
proposée semble offrir <strong>des</strong> perspectives très intéressantes : l<strong>à</strong> encore, <strong>des</strong><br />
améliorations de cette méthode sont possibles.<br />
Par la suite, nous verrons comment ajouter <strong>des</strong> contraintes pour l’étalonnage autonome, une<br />
adaptation de la méthode inverse sera présentée.<br />
86
___________________________________________________________________________<br />
CHAPITRE V
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
Chapitre V<br />
AUTO-ÉTALONNAGE AVEC CONTRAINTES<br />
V.1 INTRODUCTION<br />
Les mesures internes ou externes pratiquées sur le robot doivent nous fournir<br />
l’information nécessaire <strong>à</strong> l’étalonnage du robot. Ces mesures étant bruitées, il peut<br />
devenir difficile d’améliorer les paramètres <strong>géométrique</strong>s. Une solution utilisée pour<br />
pallier <strong>à</strong> ce problème est de multiplier le nombre de mesures. Ce qui revient <strong>à</strong> ajouter<br />
<strong>des</strong> équations de contraintes. Mais, nous avons vu (section IV.5.1) les limites de cette<br />
solution. Une alternative est de chercher <strong>à</strong> obtenir d’autres types d’information sur<br />
l’état du manipulateur. Pour ce faire, nous avons deux possibilités, soit ajouter <strong>des</strong><br />
capteurs proprioceptifs, soit imposer <strong>des</strong> contraintes <strong>géométrique</strong>s physiques pour<br />
bloquer certaines articulations passives. Cette dernière solution nous permet de créer<br />
de nouvelles équations de contraintes qui devront s’annuler pour le modèle exact du<br />
manipulateur. Cette méthode ne nécessite pas l’ajout <strong>des</strong> capteurs, le robot se sert de<br />
ses propres capteurs.<br />
MÉCANIQUES<br />
Ceci a déj<strong>à</strong> été étudié pour les <strong>robots</strong> séries [28] où le principe est d’imposer <strong>à</strong><br />
l’organe terminal du manipulateur <strong>des</strong> contraintes qui peuvent être de plusieurs<br />
types (exemples : toucher un point connu (3 contraintes), tourner autour d’un axe<br />
(une contrainte)…), et on a vu au chapitre III qu’il est possible d’étalonner de<br />
manière autonome les <strong>robots</strong> série <strong>à</strong> partir de contraintes sur l’effecteur (métho<strong>des</strong><br />
87
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
avec liaison repère, liaison ponctuelle ou liaison point-plan). Dans ce cas, la<br />
contraintes est comparable <strong>à</strong> une articulation qui transforme le manipulateur série en<br />
une chaîne fermée. Suivant ces contraintes, nous pouvons obtenir plusieurs<br />
équations de fermeture [14]. Pour une liaison repère-repère, nous pouvons exploiter<br />
la multiplicité <strong>des</strong> solutions du MGI pour placer le robot dans différentes<br />
configurations [45]. Expérimentalement, nous avons plusieurs possibilités de créer<br />
cette liaison, par exemple <strong>à</strong> travers un objet de référence. Ces contraintes se<br />
substituent alors aux mesures de positionnement de l’organe terminal.<br />
Ce type de contraintes peut naturellement être appliqué aux <strong>robots</strong> parallèles [26,<br />
01], par exemple en fixant la position ou l’orientation (ou seulement une partie) de<br />
l’organe terminal. En comparant la partie contrainte du positionnement entre deux<br />
configurations de mesure nous pouvons obtenir <strong>des</strong> équations fonction <strong>des</strong><br />
paramètres <strong>géométrique</strong>s. Mais pour les <strong>robots</strong> parallèles, ces informations sont<br />
obtenues <strong>à</strong> travers le MGD numérique qui peut poser <strong>des</strong> problèmes de convergence<br />
en présence de bruit de mesure et d’une mauvaise estimation <strong>des</strong> paramètres. L<strong>à</strong><br />
encore, nous pouvons avoir une démarche inverse <strong>à</strong> ce qui est fait pour les <strong>robots</strong><br />
séries, soit en s’efforçant d’utiliser le MGI, soit en contraignant directement les<br />
articulations du robot.<br />
Besnard et Khalil [39] introduisent la contrainte sur la direction d’un segment de<br />
la plate-forme de Gough. Pour cela, ils fixent mécaniquement deux angles du cardan<br />
d’une jambe du robot. Leur valeur devant rester constante, ils vont chercher les<br />
paramètres <strong>géométrique</strong>s qui minimisent leurs différences obtenues pour deux<br />
configurations de mesure. Comme les autres [16, 46, 21] chercher <strong>à</strong> se passer <strong>des</strong><br />
mesures externes, ces positionnements seront calculés grâce <strong>à</strong> un MGD généralisé. La<br />
direction du segment est alors déduite de ces informations. Maurine [30] adapte la<br />
méthode au robot Hexa.<br />
Daney [07] montre que les contraintes sur les segments peuvent servir <strong>à</strong> auto-<br />
étalonnage de la plate-forme de Gough, c'est-<strong>à</strong>-dire qu’il se sert uniquement <strong>des</strong><br />
mesures <strong>des</strong> longueurs <strong>des</strong> segments pour identifier les coordonnées <strong>des</strong> points<br />
d’attache <strong>des</strong> segments avec la plate-forme.<br />
88
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
V.2 PRINCIPE DE LA METHODE D’AUTO-ETALONNAGE AVEC CONTRAINTES<br />
La méthode que nous proposons est de limiter les degrés de liberté de l’organe<br />
terminal du robot pour débrayer certaines articulations motorisées et peuvent être<br />
utilisées pour l’auto-étalonnage. Nous étudierons par la suite l’influence de bruits de<br />
mesures sur cette méthode.<br />
Pour cela, nous allons introduire un nouveau type de contrainte pour le robot<br />
Delta, c'est-<strong>à</strong>-dire <strong>à</strong> l’aide d’un système mécanique, fixer en même temps deux<br />
articulations passives d’une chaîne (Figure V.1), ceci dans deux buts :<br />
premièrement, pour rendre les résultats de l’étalonnage moins sensibles au<br />
bruit de mesure. Pour cela, les contraintes nous permettront de simplifier la<br />
structure <strong>des</strong> équations [08].<br />
deuxièment, pour simplifier la mise en œuvre de l’étalonnage, en remplaçant<br />
l’information fournie par les mesures externes par celle obtenue <strong>à</strong> travers les<br />
contraintes.<br />
Mécanisme de Blocage<br />
Figure V.1 : Représentation de mécanisme de Blocage<br />
Remarque : les points de position d’organe terminale <strong>des</strong> différentes<br />
configurations de cette méthode décrit un arc de cercle.<br />
89
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
V.3 PARAMETRAGE DE LA CHAINE i<br />
Le robot Delta (Figure II.2) consistait <strong>à</strong> ouvrir les boucles cinématiques au niveau<br />
de la nacelle et <strong>à</strong> étudier chaque chaîne cinématique séparément en fonction <strong>des</strong><br />
contraintes imposées par les autres chaînes. L’idée de bloc de ce paramétrage est<br />
d’exploiter le fait que ce robot est constitué de trois chaînes cinématiques identiques<br />
disposées en un angle de 120°, il suffit donc d’ouvrir les boucles cinématiques au<br />
niveau de la nacelle, ensuite paramétrer séparément ces chaînes en tenant compte <strong>des</strong><br />
contraintes imposées par les autres chaînes (condition de fermeture du mécanisme)<br />
(Figure II.4).<br />
Le paramétrage de Khalil-Kleinfinger [43] (tab. V.1) appliqué au robot Delta.<br />
Permet l’évaluation <strong>des</strong> matrices élémentaires qui permettent de déterminer les<br />
expressions <strong>des</strong> variables articulaires q i après avoir appliqué les contraintes de<br />
fermeture <strong>des</strong> chaînes cinématiques.<br />
q1i, qna : Variables articulaires actives (motorisées).<br />
q2i, q3i , q4i , q5i , q6i , q7i : Variables articulaires passives (non motorisées).<br />
θ i : angle entre le ième bras et le plan de la base fixe, c’est-<strong>à</strong>-dire entre x0 et x0i autour<br />
de l’axe z0, sa valeur est égale <strong>à</strong><br />
( i 1)<br />
2π −<br />
3<br />
90<br />
; i=1, 2, 3.<br />
J (j) µj γi bj j dj qj rj<br />
1 0 1 0 0 π / 2<br />
− Ra q1 0<br />
2 1 0 0 2d 0 La q2 d<br />
3 2 0 0 0 π / 2 0 q3 0<br />
4 3 0 0 0 0 Lb q4 0<br />
5 4 0 0 0 π / 2<br />
6 2 0 0 0 π / 2<br />
− 0 q5 0<br />
− 0 q6 d<br />
7 6 0 0 0 0 Lb q7 0<br />
nacelle 5 1 0 0 π / 2 Rb qna 0<br />
Tableau V.1 : Paramétrage Khalil-kleinfinger pour une chaîne cinématique i du robot Delta<br />
Les matrices élémentaires pour décrire une chaîne cinématique i sont :
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
T<br />
⎡Cθi − S<br />
⎢<br />
= ⎢<br />
Sθi<br />
C<br />
⎢ 0 0<br />
⎢<br />
⎣ 0 0<br />
θi<br />
0 θi<br />
0i<br />
2i<br />
5i<br />
T<br />
T<br />
3i<br />
na<br />
avec :<br />
⎡ C3<br />
⎢<br />
⎢<br />
0<br />
=<br />
⎢−<br />
S<br />
⎢<br />
⎣ 0<br />
i<br />
3i<br />
⎡ C<br />
⎢<br />
⎢<br />
0<br />
=<br />
⎢−<br />
S<br />
⎢<br />
⎣ 0<br />
na<br />
na<br />
− S<br />
0<br />
− C<br />
0<br />
3i<br />
3i<br />
− S<br />
0<br />
− C<br />
0<br />
0<br />
0<br />
1<br />
0<br />
na<br />
na<br />
0⎤<br />
0<br />
⎥<br />
⎥<br />
0⎥<br />
⎥<br />
1⎦<br />
0<br />
1<br />
0<br />
0<br />
0⎤<br />
0<br />
⎥<br />
⎥<br />
0⎥<br />
⎥<br />
1⎦<br />
T<br />
0i<br />
1i<br />
Rb<br />
⎤<br />
0<br />
⎥<br />
⎥<br />
0 ⎥<br />
⎥<br />
1 ⎦<br />
= ( q ) ; S = sin(<br />
q )<br />
C cos<br />
na<br />
na<br />
na<br />
0<br />
1<br />
0<br />
0<br />
na<br />
= ( q ) ; S sin(<br />
q )<br />
C cos<br />
ki<br />
ki<br />
ki<br />
T<br />
⎡ C1i<br />
⎢<br />
⎢<br />
0<br />
=<br />
⎢−<br />
S<br />
⎢<br />
⎣ 0<br />
1i<br />
− S<br />
0<br />
− C<br />
0<br />
⎡C4i − S<br />
⎢<br />
= ⎢<br />
S 4i<br />
C4<br />
⎢ 0 0<br />
⎢<br />
⎣ 0 0<br />
1i<br />
1i<br />
4i<br />
3i i<br />
4i<br />
91<br />
0<br />
1<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
Ra<br />
⎤<br />
0<br />
⎥<br />
⎥<br />
0 ⎥<br />
⎥<br />
1 ⎦<br />
Lb<br />
⎤<br />
0<br />
⎥<br />
⎥<br />
0 ⎥<br />
⎥<br />
1 ⎦<br />
= pour k=1, 2, …, 5 et i=1, 2, 3.<br />
ki<br />
Dans notre étude l’angle q na et la longueur d sont nuls.<br />
4i<br />
T<br />
⎡C2i − S<br />
⎢<br />
= ⎢<br />
S 2i<br />
C2<br />
⎢ 0 0<br />
⎢<br />
⎣ 0 0<br />
2i<br />
1i i<br />
2i<br />
T<br />
5i<br />
⎡ C5<br />
⎢<br />
⎢<br />
0<br />
=<br />
⎢−<br />
S<br />
⎢<br />
⎣ 0<br />
i<br />
5i<br />
− S<br />
0<br />
− C<br />
Figure V.2 : Utilisation de la méthode Khalil pour la <strong>des</strong>cription de la chaîne cinématique i.<br />
0<br />
5i<br />
5i<br />
0<br />
0<br />
1<br />
0<br />
0<br />
−1<br />
0<br />
0<br />
La<br />
⎤<br />
0<br />
⎥<br />
⎥<br />
0 ⎥<br />
⎥<br />
1 ⎦<br />
0⎤<br />
d<br />
⎥<br />
⎥<br />
0⎥<br />
⎥<br />
1⎦
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
Figure V.3 : Utilisation de la méthode Khalil pour la <strong>des</strong>cription de la chaîne i simplifiée.<br />
V.4 CALCUL DES ANGLES DE LA CHAINE i<br />
Indépendamment de la décomposition sous forme de structure sérielle<br />
représentée sur la figure V.3, cette structure est une simplification de la chaîne<br />
ouverte du robot Delta (voir la figure V.2).<br />
Le MGI de la structure simplifiée permet d’exprimer les variables articulaires en<br />
fonction de la position du point fonctionnel (centre de la nacelle).<br />
On <strong>à</strong> :<br />
q<br />
q<br />
q<br />
q<br />
q<br />
1<br />
2<br />
3<br />
4<br />
5<br />
= γ<br />
θ =<br />
1<br />
= −α<br />
= π − β<br />
i<br />
= q<br />
3<br />
i<br />
= π −<br />
i<br />
( q + q )<br />
1<br />
0 2<br />
3<br />
2<br />
; θ = 120°<br />
; θ = 240°<br />
92<br />
(V.1)
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
Les angles qui expriment les deux limites précédemment mentionnées sont<br />
donnés par les relations suivantes [03] :<br />
⎛x sinθ<br />
i −y<br />
cosθ<br />
i ⎞<br />
γi<br />
= arcsin ⎜<br />
⎟<br />
⎝ LB ⎠<br />
et<br />
⎡ z + La sinα<br />
i cosθ<br />
i ⎤<br />
β i = −arctg<br />
⎢<br />
⎥<br />
⎣ R + La cosθ<br />
i cosα<br />
i + Lb sin γ i sinθ<br />
i − x⎦<br />
V.5 ÉCRITURE DES EQUATIONS DE CONTRAINTES<br />
Blocage <strong>des</strong> liaisons<br />
Ci<br />
Figure V.4 : Blocage <strong>des</strong> articulations passives β i et γ i<br />
93<br />
(V.2)<br />
Lorsque les articulations β i et γ i du robot sont bloqués, la plate-forme conserve<br />
2 degrés de liberté (DDL) par rapport <strong>à</strong> la base (Figure V.4). Par conséquent, la plate-<br />
forme peut être positionnée dans un nombre infini de configurations avec les valeurs<br />
arbitraires de l’articulation motorisée (chaîne de blocage). Les deux autres<br />
articulations angulaires sont alors débrayées (leurs moteurs ne sont pas alimentés).<br />
On calcule le MGD du robot en fonction du vecteur η <strong>des</strong> paramètres <strong>géométrique</strong>s<br />
Oi<br />
Bi<br />
bloquées
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
nominaux et du vecteur α <strong>des</strong> positions articulations <strong>des</strong> trois articulaires<br />
motorisées. Les angles correspondant du cardan i sont calculés en utilisant la<br />
j<br />
méthode décrite en V.4 en fonction du vecteur α et de la situation X obtenue par<br />
MGD et <strong>des</strong> paramètres <strong>géométrique</strong>s nominaux η :<br />
j ( α , η)<br />
X = f<br />
(V.3)<br />
y<br />
j<br />
ci j ⎧β<br />
⎫ i<br />
j<br />
= ⎨ = g(<br />
α , X , η)<br />
j ⎬<br />
(V.4)<br />
⎩γ<br />
i ⎭<br />
où l’indice c i indique que le cardan i est bloqué, et<br />
j<br />
α est le vecteur <strong>des</strong><br />
positions articulaires motorisées dans la configuration j.<br />
Les angles du cardan c i doivent avoir la même valeur pour toutes les<br />
configurations :<br />
− = 0<br />
k j<br />
y y<br />
( j ≠ k)<br />
(V.5)<br />
ci ci<br />
Le vecteur η r <strong>des</strong> paramètres <strong>géométrique</strong>s réels du robot identifié en<br />
minimisant le critère C C suivant :<br />
i<br />
C<br />
C<br />
i<br />
1 2 ⎧ y ⎫<br />
c − y i ci<br />
⎪ ⎪<br />
⎪ M ⎪<br />
⎪ 1 m<br />
y ⎪<br />
c − y i ci<br />
= ⎨ 2 3 ⎬<br />
⎪ yc<br />
− y i ci<br />
⎪<br />
⎪ M ⎪<br />
⎪ m−1<br />
m ⎪<br />
⎪⎩<br />
yc<br />
− yc<br />
⎪<br />
i<br />
i ⎭<br />
où m est le nombre total de configurations.<br />
Le vecteur Ci<br />
C est de dimension ( . ( m −1)<br />
× 1)<br />
combinaisons de l’ensemble <strong>des</strong> configurations.<br />
94<br />
(V.6)<br />
m , et se compose de la totalité <strong>des</strong><br />
Le problème d’optimisation est résolu par l’algorithme de Levenberg-Marquardt.
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
V.6 RESULTATS DE LA SIMULATION<br />
La méthode d’étalonnage est testée par simulation sur le robot parallèle dont les<br />
paramètres nominaux ont été donnés dans le tableau II.4. Nous ajoutons une erreur<br />
de mesure uniformément distribuée d'amplitude ε Pos sur les positions, Le nombre de<br />
configuration de mesure Nc est de 8. Ces algorithmes nécessitent une estimée initiale<br />
<strong>des</strong> paramètres : nous simulons <strong>des</strong> valeurs nominales en ajoutant une erreur<br />
régulièrement distribuée d'amplitude ε = 1 mm sur les paramètres <strong>géométrique</strong>s de<br />
longueurs.<br />
V.6.1 Étalonnage sans bruits de mesure<br />
p<br />
Si on considère que les mesures <strong>des</strong> coordonnées articulaires du robot sont<br />
parfaites, on peut étalonner le robot en utilisant 8 configurations de mesure. Les<br />
valeurs réelles <strong>des</strong> paramètres sont identifiées avec une précision de 10 -4 mètre en 1<br />
seconde environ (Figure V.5).<br />
V.6.2 Étalonnage avec <strong>des</strong> bruits de mesure<br />
Pour simuler <strong>des</strong> conditions réelles d’étalonnage, on ajoute un bruit<br />
uniformément réparti avec une amplitude de 10 -6 mètre sur les paramètres de<br />
longueurs et sur les coordonnées de position de l’organe terminal ainsi qu’une<br />
erreur de 10 -3 degrés sur les articulations angulaires, ce qui est plus important que les<br />
erreurs que l’on trouve sur les règles de mesure du commerce. Les valeurs réelles <strong>des</strong><br />
paramètres sont identifiées avec une précision de 10 -3 mètre en 3 secon<strong>des</strong> environ<br />
(Figure V.6).<br />
V.7 COMMENTAIRE SUR LA METHODE<br />
Les simulations réalisées sur cette méthode d’étalonnage démontrent sa capacité<br />
<strong>à</strong> identifier <strong>des</strong> erreurs très importantes sur les paramètres <strong>géométrique</strong>s d’un robot<br />
parallèle. L’intérêt principal de cette méthode réside dans le fait qu’aucun capteur de<br />
mesure n’est nécessaire. Par conséquent, on peut appliquer cette méthode <strong>à</strong><br />
n’importe quel type de robot parallèle.<br />
95
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
On doit cependant noter que les blocages mécaniques <strong>à</strong> effectuer ne sont pas<br />
forcément pratiques <strong>à</strong> mettre en œuvre. Tout d’abord, l’encombrement dû <strong>à</strong><br />
l’instrumentation et <strong>à</strong> la motorisation <strong>des</strong> articulations peut rendre difficile le choix<br />
d’un système de blocage efficace.<br />
Temps de calcul égal <strong>à</strong> 0.7030 s<br />
Temps de calcul égal <strong>à</strong> 2.724 s<br />
(a) (b)<br />
Figure V.5 Résultats de la méthode auto-étalonnage. Nc=8, p=1 mm<br />
(a) Gain de l’étalonnage sur les paramètres,<br />
(b) Erreur sur les paramètres.<br />
(a) (b)<br />
Figure V.6 Résultats de la méthode auto-étalonnage. Nc=8, p=1 mm.<br />
pos=L=0.001 mm, R=0.001°,<br />
(a) Gain de l’étalonnage sur les paramètres,<br />
(b) Erreur sur les paramètres.<br />
96
École Militaire Polytechnique Chapitre V : Auto-étalonnage avec Contraintes Mécaniques<br />
V.8 CONCLUSION<br />
Ce chapitre traite de méthode d’étalonnage autonome de robot Delta : sans<br />
l’ajout de capteurs externe ni <strong>des</strong> capteurs interne. Une méthode d’étalonnage<br />
originale a été proposée.<br />
Cette méthode d’étalonnage avec blocages articulaires permet d’identifier tous<br />
les paramètres définissant le modèle <strong>géométrique</strong> d’un robot parallèle dans la<br />
mesure où on peut respecter deux conditions suivantes : on doit pouvoir débrayer<br />
certaines articulations motorisées de manière <strong>à</strong> pouvoir les considérer comme <strong>des</strong><br />
articulations passives, et il faut avoir la possibilité de bloquer mécaniquement les<br />
valeurs <strong>des</strong> articulations passives.<br />
97
___________________________________________________________________________<br />
CONCLUSION
Ecole Militaire Polytechnique CONCLUSION GENERALE ET PERSPECTIVES<br />
CONCLUSION GENERALE ET PERSPECTIVES<br />
BILAN<br />
Dans ce travail, plusieurs métho<strong>des</strong> d’étalonnage adaptées aux <strong>robots</strong> parallèles<br />
et plus particulièrement au robot Delta sont décrits. Afin de comparer leurs capacités<br />
<strong>à</strong> améliorer la connaissance <strong>des</strong> paramètres <strong>géométrique</strong>s du robot en présence d’un<br />
bruit sur les mesures, nous avons procédé <strong>à</strong> leurs simulations par ordinateur. Les<br />
métho<strong>des</strong> diffèrent en raison de plusieurs facteurs :<br />
− par le type de mesure mis <strong>à</strong> notre disposition,<br />
o soit <strong>des</strong> mesures externes : mesures de position du mobile fournies<br />
par une machine <strong>à</strong> mesurer,<br />
o soit <strong>des</strong> mesures internes : mesures fournies par les capteurs associés<br />
aux actionneurs,<br />
− par les contraintes imposées sur les articulations passives du robot.<br />
Selon le système obtenu, il faut choisir une méthode appropriée de résolution<br />
(optimisation, méthode algébrique, linéaire…). De plus, nous pouvons améliorer la<br />
qualité <strong>des</strong> résultats :<br />
− soit en multipliant les mesures (ce qui pose le problème de déterminer le<br />
nombre optimal de mesures au-del<strong>à</strong> duquel un ajout n’améliore plus<br />
significativement le résultat),<br />
− soit en choisissant les configurations de mesures (la robustesse de<br />
l’étalonnage étant en effet très dépendante de ce paramètre),<br />
− soit en considérant la distribution (si elle est connue) <strong>des</strong> erreurs sur un<br />
certain nombre de mesures.<br />
98
Ecole Militaire Polytechnique CONCLUSION GENERALE ET PERSPECTIVES<br />
Afin d’illustrer l’ensemble <strong>des</strong> techniques d’étalonnage, nous avons proposé un<br />
certain nombre de métho<strong>des</strong>.<br />
Dans le chapitre IV, nous avons simulé deux métho<strong>des</strong> classiques utilisées pour<br />
identifier les paramètres <strong>géométrique</strong>s <strong>des</strong> <strong>robots</strong> manipulateurs. La première est<br />
directement dérivée de l’étalonnage <strong>des</strong> <strong>robots</strong> séries. Cette méthode directe consiste <strong>à</strong><br />
minimiser la différence entre <strong>des</strong> mesures de position du robot et l’information<br />
fournie par le MGD, fonction <strong>des</strong> inconnues et <strong>des</strong> mesures internes. Nous avons vu<br />
que le grand nombre de paramètres considérés pose <strong>des</strong> problèmes de convergence<br />
<strong>des</strong> algorithmes d’optimisations. La seconde méthode, nommée méthode inverse,<br />
consiste <strong>à</strong> minimiser la différence entre les mesures <strong>des</strong> variables articulaires fournies<br />
par le MGI, fonction <strong>des</strong> inconnues et <strong>des</strong> mesures <strong>des</strong> coordonnées généralisées.<br />
Cette méthode permet d’obtenir un système implicite d’équations de contrainte et<br />
permet de subdiviser le problème puisqu’elle permet l’identification indépendante<br />
<strong>des</strong> paramètres de chaque chaîne. Ces avantages en font une méthode<br />
intrinsèquement plus stable et plus rapide que la méthode directe.<br />
Mais nous avons vu aussi que plus l’amplitude du bruit de mesure était grande et<br />
plus l’estimation <strong>des</strong> paramètres était proche de la réalité, moins nous pouvions être<br />
assurés de l’amélioration de la connaissance <strong>des</strong> paramètres après étalonnage. Pour<br />
pallier ce problème, nous pouvons augmenter le nombre de mesures, mais nous<br />
avons montré les limites de cette solution. Nous avons alors montré qu’en<br />
choisissant, <strong>à</strong> l’intérieur de l’espace de travail, les critères d’observabilité de la<br />
jacobienne de système considéré, nous pouvions améliorer très nettement les<br />
résultats.<br />
Dans le chapitre 5, nous avons simulé une méthode autonome, consacrée <strong>à</strong> l’ajout<br />
de contraintes sur la chaîne du robot (fixer les articulations passives). Nous avons<br />
montré que ces informations, alliées aux mesures externes, permettent d’obtenir <strong>des</strong><br />
bons résultats.<br />
Cet ajout de contraintes a, de plus, l’avantage de permettre de se passer <strong>des</strong> mesures<br />
externes. En fixant deux articulations passives du robot, on limite les degrés de<br />
liberté du mobile <strong>à</strong> une rotation d’un axe, axe de rotation de l’articulation motorisée<br />
de chaîne utilisé pour le blocage. Les informations fournies par les autres<br />
99
Ecole Militaire Polytechnique CONCLUSION GENERALE ET PERSPECTIVES<br />
articulations débrayées servent alors <strong>à</strong> étalonner le robot : <strong>des</strong> résultats en présence<br />
de bruit de mesures ont été présentés.<br />
PERSPECTIVES<br />
En ce qui concerne les perspectives de cette étude, nous pouvons dégager un<br />
certain nombre de points qu’il nous paraîtrait intéressant d’étudier :<br />
− l’étude de métho<strong>des</strong> de résolution autres que l’optimisation.<br />
− une étude <strong>des</strong> métho<strong>des</strong> avec capteurs redondants en fonction du nombre<br />
et de la localisation de capteurs,<br />
− une adaptation, <strong>à</strong> l’ensemble <strong>des</strong> métho<strong>des</strong>, <strong>des</strong> outils de prise en compte<br />
de la distribution <strong>des</strong> erreurs de mesures, et <strong>des</strong> algorithmes de recherche<br />
<strong>des</strong> positionnements du robot qui optimise l’étalonnage.<br />
− une adaptation <strong>des</strong> métho<strong>des</strong> aux systèmes <strong>des</strong> mesures effectivement<br />
utilisés pour l’étalonnage,<br />
− et bien évidemment, une validation expérimentale<br />
- de la modélisation choisie et <strong>des</strong> hypothèses faites,<br />
- <strong>des</strong> métho<strong>des</strong> présentées dans ce document.<br />
100
___________________________________________________________________________<br />
ANNEXES
Paramètres <strong>des</strong> chaînes du robot LMS-Delta 740,<br />
Les Fonction du MGI<br />
Et les Paramètres du Jacobienne<br />
La = 260 mm<br />
Lb = 480 mm<br />
Ra = 194 mm<br />
Rb = 30 mm<br />
Le = 35 mm<br />
R=Ra-Rb=164 mm<br />
γmax = 40 °<br />
βmax = 35 °<br />
Figure A.1 Géométrie du robot LMD-DELTA 740<br />
101<br />
ANNEXE A
Les fonctions du MGI :<br />
Fmgi 1<br />
Fmgi 2<br />
2<br />
:= − 1. Lb + 2. X sin( θ ) Dy + 2. Z sin( α ) lax + 2. lay Dy 1<br />
1 1 1 1 1 1<br />
− 2. X cos( θ ) cos( α ) lax − 2. Y cos( θ ) Dy − 2. Y cos( θ ) lay 1 1 1 1 1 1 1<br />
2<br />
2. X cos( θ ) Dx 2. X sin( θ ) lay Dz X 1 1 1 1 1<br />
2 Y 2 Z 2<br />
− + + + + + − 2. ZDz1 − 2. Y sin( θ ) cos( α ) lax + Dy 1 1 1 1 + lay1 + lax1 + Dx1 −<br />
+ 2. cos( α ) lax Dx − 2. sin( α ) lax Dz 1 1 1 1 1 1<br />
2<br />
Dz2 2<br />
2<br />
102<br />
2<br />
2<br />
2. Y sin( θ ) Dx 1 1<br />
:= − 2. ZDz − 2. Y cos( θ ) Dy − 2. Y sin( θ ) Dx − 2. Y cos( θ ) lay 2 2 2 2 2 2 2<br />
+ 2. X sin( θ ) Dy − 2. X cos( θ ) Dx + 2. X sin( θ ) lay − 2. sin( α ) lax Dz 2 2 2 2 2 2 2 2 2<br />
2<br />
2. Z sin( α ) lax 2. lay Dy 1. Lb 2. X cos( θ ) cos( α ) lax X 2 2 2 2 2<br />
2 2 2 2 Y 2 Z 2<br />
+ + − − + + +<br />
− 2. Y sin( θ ) cos( α ) lax + lay + Dy + lax + Dx +<br />
2 2 2 2 2 2 2<br />
2<br />
2<br />
2<br />
2<br />
2<br />
2<br />
2. cos( α ) lax Dx 2 2 2<br />
Fmgi := − 2. Y cos( θ ) Dy − 2. ZDz + Dz 3 3 3 3 3 − 1. Lb3 − 2. Y sin( θ ) cos( α ) lax 3 3 3<br />
2. X cos( θ ) cos( α ) lax 2. X sin( θ ) lay X 3 3 3 3 3 2 Y 2 Z 2 2 2<br />
− + + + + + Dy + lax +<br />
3 3<br />
2<br />
Dx3 + + 2. cos( α ) lax Dx − 2. sin( α ) lax Dz + 2. Z sin( α ) lax 3 3 3 3 3 3 3 3<br />
− 2. Y sin( θ ) Dx − 2. Y cos( θ ) lay + 2. X sin( θ ) Dy − 2. X cos( θ ) Dx 3 3 3 3 3 3 3 3<br />
+ 2. lay Dy 3 3<br />
2<br />
lay3 Les paramètres du Jacobienne :<br />
dx := 2. X + 2. sin( θ ) lay − 2. cos( θ ) Dx + 2. sin( θ ) Dy − 2. cos( θ ) cos( α ) lax 1 1 1 1 1 1 1 1 1 1<br />
dy := − 2. cos( θ ) lay + 2. Y − 2. sin( θ ) Dx − 2. cos( θ ) Dy − 2. sin( θ ) cos( α ) lax 1 1 1 1 1 1 1 1 1 1<br />
dz := 2. sin( α ) lax − 2. Dz + 2. Z<br />
1 1 1 1<br />
dDx := − 2. X cos( θ ) − 2. Y sin( θ ) + 2. cos( α ) lax + 2. Dx 1 1 1 1 1 1<br />
dDy := 2. X sin( θ ) − 2. Y cos( θ ) + 2. lay + 2. Dy 1 1 1 1 1<br />
dDz := − 2. sin( α ) lax − 2. Z + 2. Dz 1 1 1 1<br />
dtheta := 2. Y sin( θ ) lay + 2. X cos( θ ) lay + 2. X sin( θ ) Dx + 2. X cos( θ ) Dy 1 1 1 1 1 1 1 1 1<br />
− 2. Y cos( θ ) Dx + 2. Y sin( θ ) Dy + 2. X sin( θ ) cos( α ) lax 1 1 1 1 1 1 1<br />
− 2. Y cos( θ ) cos( α ) lax 1 1 1<br />
dalpha 1<br />
:= 2. lax ( 1<br />
Z cos( α ) − 1. cos( α ) Dz − 1. sin( α ) Dx + X cos( θ ) sin( α ) + Y sin( θ ) sin( α )<br />
1 1 1 1 1 1 1 1 1<br />
)<br />
dLax := 2. Z sin( α ) − 2. sin( α ) Dz + 2. cos( α ) Dx − 2. X cos( θ ) cos( α ) + 2. lax 1 1 1 1 1 1 1 1<br />
1<br />
− 2. Y sin( θ ) cos( α )<br />
1 1<br />
dLay := 2. X sin( θ ) − 2. Y cos( θ ) + 2. lay + 2. Dy 1 1 1 1 1
dLb 1<br />
:= −2. Lb1 dx := 2. X − 2. cos( θ ) Dx − 2. cos( θ ) cos( α ) lax + 2. sin( θ ) lay + 2. sin( θ ) Dy 2 2 2 2 2 2 2 2 2 2<br />
dy := 2. Y − 2. sin( θ ) cos( α ) lax − 2. cos( θ ) lay − 2. sin( θ ) Dx − 2. cos( θ ) Dy 2 2 2 2 2 2 2 2 2 2<br />
dz := 2. Z − 2. Dz + 2. sin( α ) lax 2 2 2 2<br />
dDx := − 2. X cos( θ ) + 2. Dx − 2. Y sin( θ ) + 2. cos( α ) lax 2 2 2 2 2 2<br />
dDy := 2. lay + 2. Dy + 2. X sin( θ ) − 2. Y cos( θ )<br />
2 2 2 2 2<br />
dDz := − 2. Z + 2. Dz − 2. sin( α ) lax 2 2 2 2<br />
dtheta := 2. X sin( θ ) Dx + 2. X sin( θ ) cos( α ) lax − 2. Y cos( θ ) cos( α ) lax 2 2 2 2 2 2 2 2 2<br />
+ 2. X cos( θ ) lay + 2. X cos( θ ) Dy + 2. Y sin( θ ) lay − 2. Y cos( θ ) Dx 2 2 2 2 2 2 2 2<br />
+ 2. Y sin( θ ) Dy 2 2<br />
dalpha := −2.<br />
lax ( − 1. X cos( θ ) sin( α ) − 1. Y sin( θ ) sin( α ) − 1. Z cos( α )<br />
2 2 2 2 2 2 2<br />
+ cos( α ) Dz + sin( α ) Dx )<br />
2 2 2 2<br />
dLax := 2. lax − 2. X cos( θ ) cos( α ) − 2. Y sin( θ ) cos( α ) + 2. Z sin( α )<br />
2 2 2 2 2 2 2<br />
− 2. sin( α ) Dz + 2. cos( α ) Dx 2 2 2 2<br />
dLay := 2. lay + 2. Dy + 2. X sin( θ ) − 2. Y cos( θ )<br />
2 2 2 2 2<br />
dLb 2<br />
:= −2. Lb2 dx := 2. X − 2. cos( θ ) cos( α ) lax + 2. sin( θ ) Dy + 2. sin( θ ) lay − 2. cos( θ ) Dx 3 3 3 3 3 3 3 3 3 3<br />
dy := 2. Y − 2. sin( θ ) cos( α ) lax − 2. cos( θ ) lay − 2. sin( θ ) Dx − 2. cos( θ ) Dy 3 3 3 3 3 3 3 3 3 3<br />
dz := 2. Z − 2. Dz + 2. sin( α ) lax 3 3 3 3<br />
dDx := 2. cos( α ) lax − 2. Y sin( θ ) − 2. X cos( θ ) + 2. Dx 3 3 3 3 3<br />
3<br />
dDy := 2. lay + 2. X sin( θ ) − 2. Y cos( θ ) + 2. Dy 3 3 3 3<br />
3<br />
dDz := − 2. Z − 2. sin( α ) lax + 2. Dz 3 3 3 3<br />
dtheta := − 2. Y cos( θ ) cos( α ) lax + 2. X sin( θ ) cos( α ) lax + 2. X cos( θ ) Dy 3 3 3 3 3 3 3 3 3<br />
+ 2. Y sin( θ ) lay − 2. Y cos( θ ) Dx + 2. Y sin( θ ) Dy + 2. X cos( θ ) lay 3 3 3 3 3 3 3 3<br />
+ 2. X sin( θ ) Dx 3 3<br />
dalpha := 2. lax ( − 1. sin( α ) Dx + Y sin( θ ) sin( α ) − 1. cos( α ) Dz 3 3 3 3 3 3 3 3<br />
+ X cos( θ ) sin( α ) + Z cos( α ) )<br />
3 3 3<br />
dLax := 2. cos( α ) Dx − 2. Y sin( θ ) cos( α ) − 2. sin( α ) Dz − 2. X cos( θ ) cos( α )<br />
3 3 3 3 3 3 3 3 3<br />
+ 2. Z sin( α ) + 2. lax 3<br />
3<br />
dLay := 2. lay + 2. X sin( θ ) − 2. Y cos( θ ) + 2. Dy 3 3 3 3<br />
3<br />
dLb 3<br />
:= −2. Lb3 103
Estimation aux moindres carrés non-linéaires<br />
104<br />
ANNEXE B<br />
Afin de déterminer le minimum d’une fonction, nous pouvons utiliser plusieurs<br />
métho<strong>des</strong> itératives basées sur une approximation locale <strong>des</strong> équations non-linéaires<br />
par leurs développements limités au premier ordre.<br />
Soit ( ) ( ( ) ( ) ( ) ) T<br />
p F p , F p , L,<br />
F p<br />
F 1 1<br />
1<br />
= , un vecteur représentant un ensemble de m<br />
équation non-linéaires en p, vecteur <strong>des</strong> inconnues de dimension n × 1, avec m ≥ n.<br />
Nous cherchons <strong>à</strong> estimer au moindre carré non-linéaire, le minimum du critère<br />
1<br />
1<br />
C p = F p F p = ∑ F<br />
i=<br />
1 i p tel que :<br />
2<br />
2<br />
quadratique ( ) ( ) ( ) ( ) 2<br />
T<br />
m<br />
avec p la vecteur de p en la solution.<br />
avec<br />
1<br />
Minimum F<br />
p= p 2<br />
T ( p)<br />
F(<br />
p)<br />
Nous notons J ( p)<br />
la jacobienne de F ( p)<br />
en p :<br />
J<br />
( p)<br />
⎛ ∂F1<br />
⎜<br />
⎜ ∂p<br />
= ⎜ M<br />
⎜ ∂Fm<br />
⎜<br />
∂p<br />
⎝<br />
( p)<br />
∂F<br />
( p)<br />
1<br />
L<br />
L<br />
L<br />
∂p<br />
M<br />
( ) ( )<br />
⎟ ⎟⎟⎟⎟<br />
p ∂F<br />
p<br />
1<br />
1<br />
m<br />
∂p<br />
Dérivons le critère C par rapport aux inconnues p :<br />
∂<br />
∂p<br />
⎛ 1<br />
∑<br />
( p)<br />
⎞<br />
m 2<br />
∂⎜<br />
F<br />
i i ⎟<br />
= 1<br />
m<br />
T<br />
C( p)<br />
⎝ 2<br />
∂Fi<br />
( p)<br />
T<br />
=<br />
⎠<br />
= ∑ Fi<br />
∂p<br />
i=<br />
1 ∂p<br />
( p)<br />
⎡∂Fi<br />
( p)<br />
∂Fi<br />
( p)<br />
∂Fi<br />
( p)<br />
⎤<br />
= , , L , ⎥⎦<br />
∂Fi<br />
∂p<br />
⎢<br />
⎣ ∂p1<br />
∂p2<br />
Son dérivé second nous donnera :<br />
2<br />
∂ C<br />
∂p∂p<br />
T<br />
⎛<br />
∂⎜<br />
⎜<br />
=<br />
⎝<br />
∑<br />
( p)<br />
∂Fi<br />
∂p<br />
∂p<br />
T<br />
∂F<br />
i<br />
( p)<br />
⎞<br />
⎟<br />
⎠<br />
∂p<br />
n<br />
n<br />
n<br />
⎞<br />
⎠<br />
( p)<br />
= J ( p)<br />
F(<br />
p)<br />
(B.1)<br />
(B.2)<br />
(B.3)
( p)<br />
T ⎛ ∂F<br />
⎞ i<br />
∂⎜<br />
⎟<br />
⎜<br />
m p ⎟<br />
⎝ ∂<br />
=<br />
⎠<br />
Fi<br />
( p)<br />
+<br />
i 1<br />
∑i<br />
∂p<br />
m<br />
∑ = = 1<br />
m<br />
= ∑ i=1<br />
= H<br />
⎛ ∂Fi<br />
⎜ 2<br />
⎜ ∂p1<br />
⎜ ∂Fi<br />
⎜<br />
⎜<br />
∂p2∂p<br />
⎜ M<br />
⎜ ∂Fi<br />
⎜<br />
⎝ ∂pn∂p<br />
∂Fi<br />
∂p<br />
( p)<br />
∂F<br />
( p)<br />
∂F<br />
( p)<br />
i<br />
∂p<br />
∂p<br />
( p)<br />
∂F<br />
( p)<br />
∂F<br />
( p)<br />
1<br />
i<br />
∂p<br />
M<br />
( p)<br />
∂F<br />
( p)<br />
∂F<br />
( p)<br />
1<br />
1<br />
i<br />
∂p<br />
∂p<br />
n<br />
2<br />
2<br />
T<br />
T<br />
( p)<br />
F(<br />
p)<br />
+ J ( p)<br />
J ( p)<br />
2<br />
2<br />
L<br />
L<br />
L<br />
L<br />
T ( p)<br />
∂F<br />
( p)<br />
T<br />
i ⎞<br />
⎟<br />
∂p1∂p<br />
n ⎟<br />
i ⎟<br />
∂p<br />
p<br />
⎟<br />
2∂<br />
n ⎟<br />
M ⎟<br />
i ⎟<br />
2<br />
∂p<br />
⎟<br />
n ⎠<br />
i<br />
∂p<br />
F<br />
i<br />
T ( p)<br />
+ J ( p)<br />
J ( p)<br />
avec H ( p)<br />
tenseur représentant le hessien de F ( p)<br />
.<br />
105<br />
(B.4)<br />
Le principe <strong>des</strong> algorithmes d’optimisation présentés ici, est basé sur une détermination<br />
itérative de p, Partant de<br />
k<br />
p , l’estimée de p <strong>à</strong> l’itération k associée <strong>à</strong> la valeur de<br />
k<br />
critère C ( p ) , l’algorithme cherche<br />
k + 1<br />
k +1<br />
k<br />
p tel que C ( p ) < C(<br />
p ) . Afin de déterminer<br />
k + 1<br />
p ,<br />
nous nous servons du développement en série limitée du critère <strong>à</strong> minimiser qui nous<br />
k +1 k<br />
permettra de déterminer le pas de l’algorithme ∆ p tel que p = p + ∆p<br />
,<br />
Développement en série limitée du critère C<br />
Nous développons le critère C au premier ordre puis au deuxième. Nous obtenons<br />
Au premier ordre :<br />
C<br />
k + 1 ( p ) =<br />
k<br />
C(<br />
p + ∆p)<br />
=<br />
T<br />
k ⎛ ∂C<br />
( ) ( p)<br />
⎞<br />
C p + ⎜ ⎟ ∆p<br />
+ o ∆p<br />
2<br />
⎝<br />
∂p<br />
⎠<br />
k<br />
p=<br />
p<br />
En utilisant l’équation B.3, nous obtenons :<br />
C<br />
T<br />
2<br />
( ) ∆p<br />
+ o ∆p<br />
k + 1<br />
k<br />
k T k<br />
( p ) = C(<br />
p ) + J ( p ) F(<br />
p )<br />
Au deuxième ordre :<br />
C<br />
k + 1 ( p ) =<br />
k<br />
C(<br />
p + ∆p)<br />
=<br />
T<br />
k ⎛ ∂C<br />
( ) ( p)<br />
⎞<br />
C p + ⎜ ⎟<br />
2<br />
1 T ⎛ ∂ C(<br />
p)<br />
⎞<br />
∆p<br />
+ ∆p<br />
⎜ ⎟ + o ∆p<br />
2<br />
⎝<br />
∂p<br />
⎠<br />
k<br />
p=<br />
p<br />
En utilisation l’équation B.4, nous obtenons :<br />
2<br />
⎜<br />
⎝<br />
∂p∂p<br />
⎟<br />
⎠<br />
k<br />
p=<br />
p<br />
(B.5)<br />
(B.6)<br />
(B.7)
C<br />
( )<br />
( )<br />
k + 1 ( p ) =<br />
T<br />
k<br />
k T k<br />
C(<br />
p ) + J ( p ) F(<br />
p ) ∆p<br />
1 T<br />
+ ∆p<br />
k T k<br />
k T k<br />
H ( p ) F(<br />
p ) + J ( p ) J ( p )<br />
2<br />
+ o ∆p<br />
2<br />
Méthode de gradient la méthode de base est la méthode de gradient introduite par<br />
Fermat au début XVII siècle. Elle est basée sur l’approximation du système par son<br />
développement limité au premier ordre (équation B.6).<br />
Pour ∆ p suffisamment petit, la variation ∆C du critère résultant de l’itération k de<br />
l’algorithme vérifie :<br />
∆C<br />
= C<br />
T<br />
( ) ∆p<br />
k +1<br />
k<br />
k T k<br />
( p ) − C(<br />
p ) ≈ J ( p ) F(<br />
p )<br />
Nous souhaitons minimiserC donc minimiser ∆ C , pour cela il nous suffit de choisir<br />
k T k<br />
∆p colinéaire <strong>à</strong> l’opposé du gradient J ( p ) F(<br />
p ) , soit :<br />
k T k ( p ) F(<br />
p )<br />
1<br />
∆ p = − J<br />
, avec λ > 0<br />
λ<br />
Nous obtenons l’algorithme du gradient :<br />
Remarque :<br />
p<br />
k + 1<br />
=<br />
p<br />
k<br />
1<br />
− J<br />
λ<br />
106<br />
k T k ( p ) F(<br />
p )<br />
T<br />
∆p<br />
(B.9)<br />
• La détermination de λ peut prêter <strong>à</strong> discussion et nous préférons inviter le<br />
lecteur <strong>à</strong> se reporter aux documents plus spécialisés. A titre indicatif, si λ est<br />
petit, la convergence devient très lente, dans le cas contraire l’approximation<br />
au premier ordre n’est plus valable, ce qui peut entraîner la divergence de<br />
l’algorithme. En fait, nous préférerons adapter λ <strong>à</strong> chaque itération k .<br />
k + 1 k 1 k T k<br />
L’algorithme devient p = p − J ( p ) F(<br />
p )<br />
λ<br />
k<br />
• Cette méthode revient <strong>à</strong> déterminer la plus grande pente et <strong>à</strong> essayer de<br />
converger dans le sens opposé. Ceci pose de nombreux problèmes de<br />
convergence lorsqu’on se rapproche du minimal. Cette méthode est très<br />
fortement déconseillée. Mais elle sert de base aux métho<strong>des</strong> d’optimisations<br />
itératives.<br />
.
• Elle possède plusieurs avantages qui seront utilisés pour d’autres métho<strong>des</strong><br />
(ex : Levenberg-Marquardt). Elle est robuste et rend possible un grand rayon<br />
de convergence.<br />
Méthode de Newton La méthode est basée sur l’approximation du système par son<br />
développement limité au deuxième ordre (équation B.8).<br />
k +1<br />
k<br />
Nous cherchons la décroissance ∆C<br />
= C(<br />
p ) − C(<br />
p )<br />
107<br />
la plus grande possible fonction<br />
de ∆ p , nous devrons donc minimiser ∆C en ∆ p . Ceci est donné par la condition :<br />
Soit,<br />
∆ p = −<br />
∂∆C<br />
= 0<br />
∂∆p<br />
En utilisant l’équation B.8 afin d’approximer ∆ C , nous obtenons :<br />
∂∆C<br />
= 0 ≈<br />
∂∆p<br />
k T k<br />
k T k<br />
k T k<br />
[ H ( p ) F(<br />
p ) + J ( p ) J ( p ) ] ∆p<br />
+ J ( p ) F(<br />
p )<br />
T<br />
T −1<br />
k k<br />
k k<br />
k T k<br />
[ H ( p ) F(<br />
p ) + J ( p ) J ( p ) ] J ( p ) F(<br />
p )<br />
L’algorithme de Newton devient :<br />
p<br />
Remarques :<br />
T<br />
T −1<br />
k k<br />
k k<br />
k T k<br />
[ H ( p ) F(<br />
p ) + J ( p ) J ( p ) ] J ( p ) F(<br />
p )<br />
k + 1 k<br />
= p −<br />
(B.10)<br />
k T k<br />
k T k<br />
• Il est nécessaire d’avoir ( p ) F(<br />
p ) J ( p ) J ( p )<br />
H + inversible, donc non<br />
singulière et définie positive (afin de converger vers un minimum).<br />
• Les calculs sont beaucoup plus lourds que pour la méthode de gradient.<br />
• Le domaine de convergence est beaucoup plus réduit que pour la méthode de<br />
gradient. Bien ne garantit que le pas ∆ p valide l’approximation au second<br />
ordre.<br />
• L’intérêt de cette méthode est un très bon comportement proche de la solution.<br />
La convergence sera rapide (quadratique). Inversement, la méthode risque de<br />
ne pas converger lorsque l’estimée initiale est “ loin “ de la solution.<br />
k T k<br />
k T k<br />
• Il est déconseillé d’inverser la matrice ( p ) F(<br />
p ) J ( p ) J ( p )<br />
H + , il est<br />
préférable de résoudre par décomposition (ex : LU, QR…) le système linéaire :<br />
k T k<br />
k T k<br />
k T k<br />
[ H ( p ) F(<br />
p ) +<br />
J ( p ) J ( p ) ] ∆p<br />
= −J<br />
( p ) F(<br />
p )
Méthode de Gauss-Newton La méthode utilise les mêmes principes que la<br />
méthode de Newton, mais néglige le terme<br />
k T k ( p ) F(<br />
p )<br />
fonction de<br />
k ( p )<br />
H dans l’équation B.10. Ce terme est<br />
H (assimilé <strong>à</strong> une fonction de sensibilité du deuxième ordre). Il est difficile <strong>à</strong><br />
obtenir (par différence finie ou par résolution d’équations différentielles) et apporte peu<br />
d’informations.<br />
Une autre façon de définir la méthode de Gauss-Newton est d’approximer les équations<br />
k ( p )<br />
F par leur développement limité au premier ordre :<br />
F<br />
k<br />
k<br />
( p)<br />
≈ F(<br />
p ) + J ( p ) ∆p<br />
∆ p =<br />
k<br />
Le critère ( p )<br />
k ( p )<br />
C devient :<br />
C<br />
k 1 k T k<br />
k T k<br />
T k T k<br />
( p ) F(<br />
p ) F(<br />
p ) + J ( p ) F(<br />
p ) ∆p<br />
+ ∆p<br />
J ( p ) J ( p ) ∆p<br />
= 2<br />
∂C(<br />
p ) C est minimum pour = 0<br />
∂∆p<br />
k<br />
, soit :<br />
T −1<br />
k k<br />
k T k<br />
( J ( p ) J ( p ) J ( p ) F(<br />
p )<br />
( )<br />
Nous obtenons l’algorithme de Gauss-Newton :<br />
p<br />
T −1<br />
k k<br />
k T k<br />
( J ( p ) J ( p ) J ( p ) F(<br />
p )<br />
108<br />
( )<br />
k + 1 k<br />
= p −<br />
(B.11)<br />
L’intérêt de cette méthode est dû au fait que le terme <strong>à</strong> inverser, donnant la direction de<br />
k T k<br />
l’algorithme, ( p ) J ( p )<br />
J est toujours défini positif. Ce qui permet d’assurer la convergence<br />
vers un minimum (point stationnaire dans le cas de la méthode de Newton).<br />
k T k<br />
Nous pouvons remarquer que le terme J ( p ) J ( p )<br />
minimise le critère linéaire ( ) ( ) 2<br />
k<br />
k<br />
J p p = −F<br />
p<br />
utilisant une décomposition SVD.<br />
Décomposons J par SVD, nous obtenons :<br />
−1<br />
k T k<br />
( ) ( J ( p ) F(<br />
p )<br />
de équation B.11<br />
∆ , nous préférerons résoudre ce problème en<br />
T<br />
J = Udiag(<br />
si<br />
) V<br />
avec s i les valeur singulières de J, U etVmatrice unitaires.<br />
k<br />
k<br />
Résoudre le problème J ( p ) p = −F<br />
( p )<br />
∆ en ∆ p , nous donnera :
⎡ ⎛ 1 ⎞<br />
∆p<br />
= −⎢V<br />
diag ⎜ U<br />
⎣ s ⎟<br />
⎝ i ⎠<br />
109<br />
T<br />
⎤<br />
⎥F<br />
⎦<br />
(B.12)<br />
La détermination <strong>des</strong> valeurs singulières de J nous permet de calculer le<br />
conditionnement de la jacobienne (la plus grande valeur singulière divisée par la plus petit). Si<br />
la jacobienne J est proche d’une singularité (due <strong>à</strong> la mauvaise paramètrisation du robot ou<br />
au choix <strong>des</strong> configurations de mesures), ou simplement mal conditionnée, nous<br />
remplacerons, dans l’équation B.12, l’inverse <strong>des</strong> valeurs singulières s i telle que<br />
smas i<br />
/ s > Crit par zéro (Crit sera choisi en fonction de la précision numérique<br />
6<br />
utilisée ( 10 )<br />
que :<br />
≈ ).<br />
Méthode de Levenberg-Marquardt La méthode consiste <strong>à</strong> déterminer ∆ p , tel<br />
k T k<br />
T<br />
( ( p ) F(<br />
p ) = J ( p)<br />
J ( p)<br />
[ + I ] ∆p<br />
− λ (B.13)<br />
J k<br />
Cette méthode cherche <strong>à</strong> allier les performances <strong>des</strong> métho<strong>des</strong> du gradient et de Gauss-<br />
Newton (si le terme J J<br />
T<br />
T T<br />
de l’équation B.13 est remplacé par le terme J J + H F ). Si le<br />
terme λk I de l’équation B.13 est négligeable par rapport au terme J J<br />
T<br />
, la méthode sera<br />
semblable <strong>à</strong> une méthode de Gauss-Newton. Elle aura donc une bonne performance proche de<br />
la solution. Sinon, la méthode ressemble <strong>à</strong> la méthode du gradient. Elle sera donc robuste et<br />
possèdera un grande rayon de convergence. La méthode consiste <strong>à</strong> faire décroître λ k <strong>à</strong> chaque<br />
itération afin d’utiliser au mieux les performances de ces différentes métho<strong>des</strong><br />
d’optimisations.<br />
[ λ I ]<br />
T<br />
L<strong>à</strong> encore, nous n’inverserons pas la matrice ( p)<br />
J ( p)<br />
résolution du système B.13.<br />
J k<br />
+ , mais nous utiliserons une
Principe<br />
Fonction d’optimisation leastsq<br />
110<br />
ANNEXE C<br />
La fonction leastsq de MatLab est une fonction d’optimisation non linéaire <strong>des</strong><br />
moindres carrés se basant sur la méthode de Levenberg-Marquardt.<br />
A partir d’une fonction F ( x)<br />
donnée sous la forme d’un vecteur de longueur m,<br />
le critère C <strong>à</strong> minimiser par la fonction est défini de la manière suivante :<br />
C<br />
=∑ i i =<br />
= 1<br />
m 2<br />
T<br />
( x)<br />
F ( x)<br />
F(<br />
x)<br />
F(<br />
x)<br />
(C.1)<br />
Afin de minimiser le critère C, la fonction leastsq définit une matrice jacobienne J<br />
et, par son intermédiaire, une direction de convergence du vecteur x .<br />
Direction de convergence<br />
Définition<br />
La direction de convergence d k de x est définie, <strong>à</strong> l’étape k de l’optimisation, <strong>à</strong><br />
partir de l’équation :<br />
avec :<br />
T<br />
T<br />
( J ( x ) J ( x ) I ) d = −J<br />
( x ) F(<br />
x )<br />
J ( x)<br />
matrice jacobienne de F ( x)<br />
λk scalaire positif<br />
A l’étape k+1 nous aurons :<br />
x = x + d<br />
k +1<br />
k<br />
k<br />
k<br />
k<br />
+ λ (C.2)<br />
k<br />
k<br />
Le scalaire λk sert alors <strong>à</strong> contrôler la direction et la norme de d k . Lorsque<br />
λk tend vers l’infini, k<br />
λk suffisamment grand :<br />
Définition de λ k<br />
Le choix de k<br />
k<br />
k<br />
d tend vers un vecteur nul. Cela veut dire que pour un<br />
( x ) C(<br />
x )<br />
C <<br />
k +1 k<br />
(C.3)<br />
C :<br />
λ se fera en définissant un critère linéarisé estimé ( )<br />
T<br />
( x ) J ( x ) d + F(<br />
x )<br />
k − 1 k −1<br />
−1<br />
p xk<br />
C p k = k<br />
(C.4)
Une estimation du critère minimum ( xk<br />
∗)<br />
cubique entre ( x )<br />
réduit, sinon il est augmenté.<br />
111<br />
C sera obtenu par interpolation<br />
C k −1<br />
et C p ( xk<br />
) . Si C p ( xk<br />
) est plus grand que C ( xk<br />
∗)<br />
alors λk est<br />
Une fois le scalaire λk obtenu, la direction d k est définie. La procédure se<br />
déroule ensuite de manière itérative en assurant. A chaque étape :<br />
Conclusion<br />
( x ) C(<br />
x )<br />
C +1 <<br />
(C.5)<br />
k<br />
k<br />
Afin de minimiser le critère C, la fonction leastsq <strong>à</strong> de petites variations sur<br />
chaque élément du vecteur x de façon <strong>à</strong> définir la matrice jacobienne J. Une itération<br />
étant comptabilisée pour chaque calcul du critère, chaque petite variation correspond<br />
<strong>à</strong> une itération de la fonction. Les étapes de la méthode de Levenberg-Marquardt<br />
correspondent <strong>à</strong> <strong>des</strong> itérations que nous appellerons majeures, c’est-<strong>à</strong>-dire quand<br />
tous les paramètres de x sont modifiés après le choix de la direction de convergence.
___________________________________________________________________________<br />
BIBLIOGRAPHIE
BIBLIOGRAPHIES<br />
112<br />
BIBLIOGRAPHIE<br />
[01] A. Rauf et J. Ryu, “Fully Autonomous Calibration of Parallel Manipulators by<br />
Imposing Position Contraint”, Proceedings of the 2001 IEEE Int. Conf. on Robotics and<br />
Automation, , Seoul, Korea, pages 2389 <strong>à</strong> 2394, 21-26 Mai 2001.<br />
[02] A.Y. Elatta, Li Pei Gen, Fan Liang Zhi, Yu Daoyuan et Luo Fei, “An Overview of<br />
Robot Calibration”, dans Information Technology Journal, Asian, 3(1): pages 74 <strong>à</strong><br />
78, 2004.<br />
[03] B. Bounab, T. Chettibi, A. Yousnadj et A Zaatri, “Application <strong>des</strong> techniques de la<br />
télérobotique <strong>à</strong> la commande du robot parallèle Delta 740”, dans 04 éme Journée de la<br />
Mécanique, Ecole Militaire Polytechnique (EMP), 2004.<br />
[04] http://www.parallemic.org/<br />
[05] C.W. Wampler, J.M. Hollerbach et T.Arai, “An implicit loop method for kinematic<br />
calibration and its application to closed-chain mechanisms”, IEEE Transaction on<br />
Robotics and Automation, Vol.11, no.5, pages 710 <strong>à</strong> 724, 1995.<br />
[06] D. Bennet et J. Hollerbach, “Autonomous calibration of single-loop closed kinematic<br />
chains formed by manipulators with passive endpoint constraints”, dans Proceedings<br />
of the 1991 IEEE International Conference on Robotics and Automation, Sacramento,<br />
Californie, pages 597 <strong>à</strong> 606, 1991.<br />
[07] D. Daney, “Self calibration of Gough platforme using leg mobility constraints”, dans<br />
10 th World Congress on the Theory of Machines and Mechanisms, Oulu, pages 104 <strong>à</strong><br />
109, 20-24 Juin 1999.<br />
[08] D. Daney, “Mobility constraints on the legs of a parallel robot to improve the<br />
kinematic calibration”, dans New machine concepts for handling and manufacturing<br />
devices on the basis of parallel structures, Braunschweing, 10-11 Novembre 1998.<br />
[09] D. Daney, L.Z. Emiris, T. Papegay, E. Tsigaridas et J-P. Merlet, “Calibration of<br />
parallel <strong>robots</strong>: on the Elimination of Pose-Dependent Parameters”, Pross. Of<br />
EuCoMeS, European Conference on Mechanism Science, Obergurgl, Austria, 21-26<br />
Février 2006.<br />
[10] D. Daney, “Etalonnage <strong>géométrique</strong> <strong>des</strong> <strong>robots</strong> parallèles”, thèse Doctorat, Ecole<br />
Supérieure <strong>des</strong> Sciences Informatiques, Université de Nice & Sophia-Antipolis,<br />
2000.<br />
[11] D. Daney. “Optimal Measurement Configurations for Gough Platform Calibration”.<br />
Dans IEEE International Conference on Robotics and Automation (ICRA),<br />
Washington, pages 147 <strong>à</strong> 152, 15 Mai 2002.<br />
[12] D. Deblaise et P. Maurine, "Un nouvel étalon pour l’étalonnage <strong>géométrique</strong> <strong>des</strong>
obots parallèles ", 17 ème Congrès Français de Mécanique, Troyes, France, Septembre<br />
2005.<br />
[13] D.E. Whitney, C.A. Lozinski et J.M. Rourke, “Industrial robot forward calibration<br />
method and results”, Journal of Dynamic Systems, Measurement and Control,<br />
Vol.108, 1986.<br />
[14] D.J. Bennett, et J.M. Hollerbach, “Autonomous Calibration of Single-Loop Closed<br />
Kinematic Chains Formed By Manipulators with Passive Endpoint Constraints”,<br />
IEEE Transaction on Robotics and Automation, Vol.7, no.5, pages 597 <strong>à</strong> 606,<br />
Octobre 1991.<br />
[15] D. Stewart, “A platform with 6 degrees of freedom”, dans Proc. of Auto Div. Inst.<br />
Mech. Engineers, Part 1-15, pages 371 <strong>à</strong> 386, 1965.<br />
[16] D. Yu, D. Cong et J. Weihal, “Parallel Robots Pose Accuracy Compensation Using<br />
Artificial Neural Networks”, dans Proceedings of the Fourth International Conference<br />
on Machine Learning and Cybernetics, Guangzhou, pages 3194 <strong>à</strong> 3198, Août 2005.<br />
[17] E. Pernette, “robot de haute précision <strong>à</strong> 6 degrés-de-liberté pour l’assemblage <strong>des</strong><br />
microsystèmes”. Thèse Doctorat, EPFL (N°1909), 1998.<br />
[18] G. Alici et B. Shirinzadeh, “A systematic technique to estimate positioning errors for<br />
robot accuracy improvement using laser interferometry based sensing”, dans<br />
Mechanism and Machine Theory, Elsevier Science, Vol. 40, pages 879 <strong>à</strong> 906, 2005.<br />
[19] H.K. Tönshoff, “A systematic comparison of parallel kinematics”, Keynote in Proc. of<br />
First European-American Forum on Parallel Kinematic Machines, Milan, 1998.<br />
[20] H. Nakamura, T. Itaya, K. Yamamoto et T. Koyama, “Robot autonomous error<br />
calibration method for off line programming system”, dans Proceedings of the 1995<br />
IEEE International Conference on Robotics and Automation, Nagoya, Japon, pages<br />
1775 <strong>à</strong> 1783, 1995.<br />
[21] H. Zuang, K Wang et Z.S. Roth, “Optimal selection of measurement configuration<br />
for robot calibration using simulated annealing”. In ICRA, pages 393 <strong>à</strong> 398, 1994.<br />
[22] J.M. Hollerbach et C.W. Wampler, “The calibration index and taxonomy of<br />
kinematic calibration methods”, International Journal on Robotics Research, Vol.14,<br />
pages 573 <strong>à</strong> 591, 1996.<br />
[23] J.P. Merlet et F. Pierrot, “Modélisation <strong>des</strong> <strong>robots</strong> parallèles”, Analyse et modélisation<br />
<strong>des</strong> <strong>robots</strong> manipulateurs, Lavoisier, ISBN 2-7462-0300-6, pages 93 <strong>à</strong> 144, 2001.<br />
[24] J.P. Merlet, “A parser for the interval evaluation of analytical functions and its<br />
applications to engineering problems”, in J. of Symbolic Computation, Vol. 31, pages<br />
475 <strong>à</strong> 486, 2001.<br />
[25] J.P. Merlet, “Les <strong>robots</strong> parallèles”, Hermès, 1997.<br />
[26] J. Ryu, et A. Rauf, “A New Method for Fully Autonomous Calibration of Parallel<br />
Manipulators Using Constraint Link”, dans 2001 IEEE/ASME International<br />
Conference on Advenced Intelligent Mechatronics Proceedings, Como, Italy, pages<br />
1174 <strong>à</strong> 1180, 8-12 juin 2001.<br />
[27] I. Bonev, “The True Origins of Parallel Robots”, dans www.parallemic.org, 2003.<br />
[28] M. Ikits et J.M. Hollerbach, “Kinematic calibration using a plane constraint”, dans<br />
Proceedings of the 1997 IEEE International Conference on Robotics and Automation,<br />
Albuquerque, Nouveau Mexique, pages 3191 <strong>à</strong> 3196, 1997.<br />
[29] P. Renaud, N. Andreff et G. Gogu, “On Vision-based Kinematic Calibration of a<br />
Stewart-Gough Platform”, Pross. Of the 11 th World Congress in Mechanism and<br />
113
Machine Science, Tianjin, China, 18-21 Août 2003.<br />
[30] P. Maurine, K. Abe et M. Uchiyama, “Towards More Accurate Parallel Robots”,<br />
Proc. IMEKO-XV,15 th World Congress of Int. Measurement Confederation, Vol. X.,<br />
Osaka, pages 73 <strong>à</strong> 80, Juin 1999.<br />
[31] P.S. Shiakolas, K.L. Conrad et T.C. Yih, “On the Accuracy, Repeatability, and<br />
Degree of Influence of Kinematics Parameters for Industrial Robots”, dans<br />
International Journal of Modelling and Simulation, Vol. 22, pages 1 <strong>à</strong> 10, 2002.<br />
[32] P. Vischer, “Improve the accuracy of parallel robot”, Thèse de doctorat, Ecole<br />
polytechnique fédérale de Lausanne, Lausanne, 1996.<br />
[33] P. Maurine, “Développement de mise en œuvre de méthodologies d’étalonnage de<br />
<strong>robots</strong> manipulateurs <strong>industriels</strong>”, Thèse Doctorat, Université Montpellier II,<br />
Montpellier, 20 Décembre 1996.<br />
[34] R.L. Moses, D. Krishnamurthy et R. Patterson, “An auto-calibration method for<br />
unattended ground sensors”, dans IEEE, pages 2941 <strong>à</strong> 2944, 2002.<br />
[35] R. Clavel, “Robots parallèles”. Techniques de l’Ingénieur, Art. 7710, Vol. S.,<br />
Juillet 1994.<br />
[36] R. Clavel, “A Fast Robot with Parallel Geometry”, dans 18 th Int. Symp. On<br />
Industrial Robot, Lausanne, Switzerland, pages 91 <strong>à</strong> 100, 26-28 Avril 1988.<br />
[37] R. Clavel, “Conception d’un robot parallèle rapide <strong>à</strong> 4 degrés de liberté”, Thèse<br />
Doctorat N°925, Ecole Polytechnique fédérale de Lausanne (EPFL), 1991.<br />
[38] S. Lei, L. Jingtai, S. Weiwei, W. Shuihua et H. Wingbo, “Geometry-Based Robot<br />
Calibration Méthod”, dans Proceedings of the 2004 IEEE Internationnal Conference<br />
on Robotics & Automation, New Orleans, Avril 2004.<br />
[39] S. Besnard et W. Khalil, “Identifiable Parameters for Parallel Robots Kinematic<br />
Calibration”, Proceedings of the 2001 IEEE Int. Conf. on Robotics and Automation, ,<br />
Seoul, Korea, pages 2859 <strong>à</strong> 2866, 21-26 Mai 2001.<br />
[40] T. Saïdouni, “<strong>Contribution</strong> <strong>à</strong> l’étude <strong>des</strong> <strong>robots</strong> parallèles: Réalisation d’un robot<br />
parallèle rapide de type Delta”, Mémoire Magistère, EMP, 2000.<br />
[41] V.E. Gough, “<strong>Contribution</strong> to discussion of papers on research in automobile stability,<br />
control and tire performance”, dans Proc. of Auto Div. Inst. Mech. Eng., 1956-1957.<br />
[42] W. Khalil, et E. Dombre, “Modélisation et commande <strong>des</strong> <strong>robots</strong>”, Éditions Hermes,<br />
Paris, 1999.<br />
[43] W. Khalil et J.F. Kleinfinger, “A new geometric notation for open and closed-loop<br />
<strong>robots</strong>“, IEEE Int. Conf. On Robotics and Automation, San Francisco, US, Vol.2,<br />
pages 1174 <strong>à</strong> 1180, 1986.<br />
[44] W. Khalil et S. Besnard, “Self calibration of Stewart-Gough parallel <strong>robots</strong> without<br />
extra sensors”, IEEE Trans. on Robotics and Automation, Vol. 15, no. 6, pages 1116<br />
<strong>à</strong> 1121, 1999.<br />
[45] W. Khalil, G. Garcia et J.F. Delagarde, “Calibration of the geometric parameters of<br />
<strong>robots</strong> without external sensors ”, dans Proceedings of the 1995 IEEE International<br />
Conference on Robotics and Automation, Nagoya, Japon, pages 3039 <strong>à</strong> 3044, 1995.<br />
[46] W. Khalil, M. Gautier et Enguehard, “Identifiable parameters and optimum<br />
configurations for <strong>robots</strong> calibrations”, Robotica, Vol.9, pages 63 <strong>à</strong> 70, 1991.<br />
[47] W. L. V. Pollard, “Position controlling apparatus”, USA Pattern (1942), Avril 1938.<br />
[48] X. Baguenard, “Propagation de contraintes sur les intervalles Application <strong>à</strong><br />
l’étalonnage <strong>des</strong> <strong>robots</strong>”, Thèse Doctorat (N°736), université d’Angers, 2005.<br />
114
[49] X.L. Zhong et J.M. Lewis, “A new method for autonomous robot calibration”, dans<br />
Proceedings of the 1995 IEEE International Conference on Robotics and Automation,<br />
Nagoya, Japon, pages 1790 <strong>à</strong> 1795, 1995.<br />
[50] M. Abderrahim et A.R. Whittaker, “Kinematic model identification of industrial<br />
manipulators”, Robotics and Integrated Manufacturing, Vol.16, pages 1 <strong>à</strong> 8, 2000.<br />
BIBLIOGRAPHIE PERSONNELLE<br />
T. Bentaleb, K. Zennadi, et M. A. Belouchrani, “ Etalonnage Géométrique du Robot<br />
Parallèle "Delta" – Métho<strong>des</strong> et Applications”, dans Conférence sur les Sciences de la<br />
Mécanique, Oum El Bouaghi, Algérie, 19-21 Novembre 2006.<br />
115
Résumé<br />
Ce travail traite les problèmes généraux de calibrage <strong>des</strong> <strong>robots</strong> <strong>industriels</strong> et<br />
particulièrement celui <strong>des</strong> structures parallèles. L'amélioration de la précision <strong>des</strong> <strong>robots</strong><br />
parallèles peut être obtenue en déterminant les paramètres <strong>géométrique</strong>s décrivant au mieux<br />
le comportement du mécanisme. Cette identification <strong>géométrique</strong> est envisagée dans ce<br />
document Un cas <strong>des</strong> <strong>robots</strong> parallèles est considéré : le robot Delta <strong>à</strong> 3 ddl de translation.<br />
Les modèles de calibration de ce robot sont présentés. Les métho<strong>des</strong> considérées, sont : la<br />
calibration directe, inverse et auto-calibration avec contraintes.<br />
Les nombres de paramètres <strong>géométrique</strong>s, que mettent en œuvre le modèle de cette<br />
structure étant important (24 pour le robot Delta), une simulation préalable a été menée pour<br />
identifier ceux dont les erreurs influent le plus sur l’erreur en position, ce sont eux qui sont<br />
retenus dans le processus de calibration.<br />
Mots Clés : Calibration, Robot industriel, Identification, Optimisation, Robot Delta.<br />
Summary<br />
Toufik BENTALEB, né le 01 Janvier 1980 <strong>à</strong> Ouled-Djellal<br />
W de Biskra. Titulaire d’un baccalauréat série Sciences<br />
Exacts et d’un diplôme d’ingénieur d’état en Génie<br />
Mécanique, option Construction Mécanique de<br />
l’Université de Biskra.<br />
Inscrit <strong>à</strong> l’EMP en novembre 2004.<br />
This work falls under the general calibration problems of the industrials <strong>robots</strong> and<br />
more particularly that of the parallel structures. The improvement of the precision of the<br />
parallel <strong>robots</strong> can be obtained by determining the kinematics parameters <strong>des</strong>cribing the<br />
behaviour of the mechanism as well as possible. The Delta robot with 3 dof of translation is<br />
considered. The calibration model of this robot is presented. The different methods of<br />
calibration of the parallel structures are clarified and applied. The methods considered are:<br />
direct, inverse, self-calibration with constraints.<br />
The numbers of geometrical parameters applied to this model are much considerable (24<br />
for the Delta robot). A preliminary simulation was implemented to identify those where the<br />
errors have more impact on the position error, they are those retained in the calibration<br />
process.<br />
Key words: Calibration, industrial robot, Identification, Optimisation, Robot Delta.<br />
ﺺـــﺨﻠﻣ<br />
ﻦﻴﻌﺑ ﺎﻧﺬﺧﺁ ﺪﻘﻟ . ﺔﻳزاﻮﺘﻤﻟا تﺎﺗﻮﺑ ﺮﻟﺎﺑ ﺔﻘﻠﻌﺘﻤﻟا اﺪﻳﺪﺤﺗ و تﺎﺗﻮﺑﺮﻟا ةﺮﻳﺎﻌﻤﺑ ﻢﺘﻬﺗ ﻲﺘﻟا تﺎﺳارﺪﻟا ﻦﻤﺿ جرﺪﻨﻳ ﻞﻤﻌﻟا اﺬه<br />
ﺎﻨﻧأ ﺎﻤآ . تﻮﺑﺮﻟا اﺬه<br />
ةﺮﻴﻌﻤﻟ ﺎﺟذﻮﻤﻧ ﺎﻨﻣﺪﻗ ﺪﻘﻟ . ﺔﻳﺮﺣ ﻦﻣ تﺎﺟرد ثﻼﺛ وذ ﺎﺘﻟد تﻮﺑﺮﻟا : تﺎﺗﻮﺑﺮﻟا ﻩﺬه ﻦﻣ عﻮﻧ رﺎﺒﺘﻋﻻا<br />
. تاﺪﻬﺟﺈﺑ ﺔﻴﺗاذ ةﺮﻳﺎﻌﻣ و ﺔﻴﺴﻜﻋ ،ةﺮﺷﺎﺒﻣ ةﺮﻳﺎﻌﻣ : ﻲﻟاﻮﺘﻟا ﻰﻠﻋ ﻲه و ﻻأ ،تﻮﺑﺮﻟا اﺬه<br />
ةﺮﻳﺎﻌﻤﻟ قﺮﻄﻟا ﻒﻠﺘﺨﻣ ﺎﻨﺿﺮﻋ<br />
ﻲﺘﻟا ﺮﻴﻳﺎﻌﻤﻟﺎﺑ ﻒﻳﺮﻌﺘﻠﻟ ﺖﻠﻤﻌﺘﺳا<br />
ﺔﻘﺒﺴﻣ ةﺎآﺎﺤﻣ .( ﺎﺘﻟاد تﻮﺑﺮﻠﻟ 24)<br />
ﺮﻴﻳﺎﻌﻤﻟا ﻦﻣ ﺮﺒﺘﻌﻣ دﺪﻋ ﻰﻠﻋ جذﻮﻤﻨﻟا يﻮﺘﺤﻳ<br />
. ةﺮﻳﺎﻌﻤﻟا ﺔﻴﻠﻤﻋ ﻲﻓ رﺎﺒﺘﻋﻻا ﻦﻴﻌﺑ ﺬﺧﺆﺗ ﻲﺘﻟا ﻲه ﻞﻣاﻮﻌﻟا ﻩﺬه و ،ﻲﺋﺎﻬﻨﻟا ﻮﻀﻌﻟا ﺔﻴﻌﺿو ﻰﻠﻋ اﺮﻴﺜآ ﺮﺛﺆﺗ ﺎهؤﺎﻄﺧأ<br />
،ﺎﺘﻟاد تﻮﺑر،ﺔﻴﻄﺨﻟا<br />
ﺮﻴﻏ ﺔﻤﻈﻧﻷا ،ﻒﻳﺮﻌﺘﻟا ،ﻲﻋﺎﻨﺼﻟا<br />
تﻮﺑﺮﻟا ،ةﺮﻳﺎﻌﻣ<br />
: ﺔﻴﺤﺎﺘﻔـﻤ ﺕﺎﻤﻠﻜ