introduction à la commande des robots humanoïdes - springer978-2-287-87716-2/1 · tive, mauvaise...

18

Click here to load reader

Upload: leduong

Post on 07-Feb-2018

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Introductionà la commande

des robots humanoïdes

De la modélisationà la génération du mouvement

Page 2: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

SpringerParisBerlinHeidelbergNew YorkHong KongLondresMilanTokyo

Page 3: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Introductionà la commandedes robots humanoïdesDe la modélisationà la génération du mouvement

Shuuji KajitaHirohisa HirukawaKensuke HaradaKazuhito Yokoi

Traduit et adapté du japonais

par Sophie Sakka

Page 4: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

ISBN : 978-2-287-87715-5 Springer Paris Berlin Heidelberg New York

Titre original :Humanoid Robot© 2005 Shuuji KajitaPublié par Ohmsha, Ltd3-1 Kanda Nishikicho, ChiyodakuTokyo, Japon

© Springer-Verlag France 2009, pour la version françaiseImprimé en FranceSpringer-Verlag France est membre du groupe Springer Science + Business Media

Cet ouvrage est soumis au copyright. Tous droits réservés, notamment la reproduction et la représentation, la tra-duction, la réimpression, l’exposé, la reproduction des illustrations et des tableaux, la transmission par voie d’enre-gistrement sonore ou visuel, la reproduction par microfilm ou tout autre moyen ainsi que la conservation desbanques données. La loi française sur le copyright du 9 septembre 1965 dans la version en vigueur n’autorise unereproduction intégrale ou partielle que dans certains cas, et en principe moyennant les paiements des droits. Toutereprésentation, reproduction, contrefaçon ou conservation dans une banque de données par quelque procédé que cesoit est sanctionnée par la loi pénale sur le copyright.L’utilisation dans cet ouvrage de désignations, dénominations commerciales, marques de fabrique, etc., même sansspécification ne signifie pas que ces termes soient libres de la législation sur les marques de fabrique et la protec-tion des marques et qu’ils puissent être utilisés par chacun.La maison d’édition décline toute responsabilité quant à l’exactitude des indications de dosage et des modes d’em-plois. Dans chaque cas il incombe à l’usager de vérifier les informations données par comparaison à la littératureexistante.

Maquette de couverture : Jean-François MONTMARCHÉIllustration de couverture : Le robot humanoïde HRP-2

Ouvrage traduit et adapté par

Sophie SakkaLaboratoire de mécanique des solidesSP2 MI, Téléport 2, BP 30179Boulevard Marie et Pierre Curie86962 Chasseneuil Cedex

Page 5: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Préface

Nourris de science-fiction, de l’espoir d’un monde meilleur et d’un futurimprobable, les acteurs de la robotique humanoïde ont des motivations quisemblent sorties tout droit d’un rêve. Quel défi de se mesurer à l’un des systèmesbiologiques les plus complexes que nous connaissons : l’être humain ! Marchercomme lui, sentir et s’exprimer comme lui... autant de challenges scientifiqueset technologiques qui commencent à voir le jour.

Mais pourquoi vouloir copier l’Homme ? Les programmes télévisés suggèrenten permanence que les robots ne seraient bons qu’à faire la guerre, et il existetellement de films pessimistes sur le devenir de « l’Homme face à la Machine »que nous devrions avoir perdu depuis longtemps l’envie de conduire un telprogramme jusqu’à son terme. En 1921, même le créateur du mot robot, KarelČapek, mettait en scène dans un de ses textes la fin de l’humanité au profit desrobots humanoïdes1 ! Mais pourquoi ceux-ci ne pourraient-ils pas aussi réalisernos besoins ? Des besoins chargés d’espoirs comme, par exemple, réparer nosfonctions biologiques défaillantes par des mécanismes efficaces. Y a-t-il plusbeau cadeau que des jambes pour une personne amputée ? Qu’un moyen decommuniquer avec des proches pour une personne consciente mais immobilisée ?Parmi les aspects positifs de l’existence de tels « robotismes », on pourrait aussiciter leur utilisation pour la réalisation de travaux dangereux : manipulationde produits nocifs, évolution dans un environnement agressif, etc. Augmenterle confort humain, sa sécurité et son autonomie : telles sont les possibilitésqu’ouvre la robotique humanoïde et tels sont ses objectifs.

En raison de sa culture, le Japon est sans doute le pays le plus adapté à laréalisation de robots humanoïdes. Le robot y est considéré comme une « ma-chine pour distraire l’homme » : c’est un jouet à part entière qui a sa placedans la société2. À l’inverse, nos cultures nous renvoient une image très néga-tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3.Ce livre expose ce qui a été fait dans le domaine de la robotique humanoïdeau Japon depuis les années 1970, et en résume les résultats positifs. Un robothumanoïde est un robot inspiré de l’homme. Il pourrait donc n’être qu’un œilartificiel qui s’inspire du système de vision humain. Mais les robots humanoïdesauxquels nous nous intéressons dans ce livre ont une forme qui s’inspire de celledu corps humain, et leurs mouvements rappellerons ceux des humains.

La première étape de réalisation d’un humanoïde est la mise en place d’unmécanisme de forme humaine, mécanisme équipé de capteurs, de moteurs etde capacités informatiques qu’il faut ensuite animer dans un esprit d’imitation.Ensuite, pour que le robot évolue au quotidien, il faut générer un mécanismepour le mouvement de la marche, qui est le déplacement de base. Réaliser un

1Voir sa pièce de théâtre R.U.R. (Rossum’s Universal Robots), où apparaît pour la pre-mière fois le mot « robot », du tchèque robota : travailler

2Voir par exemple, l’article d’Yves Eudes, « Mon ami robot », paru dans Le Monde, le 2août 2005.

3Philippe Breton, dans son livre À l’image de l’Homme, Paris, Seuil, 1996, propose uneexcellent synthèse sur les créatures artificielles à travers les arts écrits et visuels.

Page 6: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

vi Introduction à la commande des robots humanoïdes

mouvement apparemment aussi simple s’avère en fait d’une complexité extrême,et un éclaircissement conceptuel est ici nécessaire pour bien comprendre dequoi nous voulons parler : lorsque nous disons « marcher », nous entendons« avancer par appuis successifs des pieds sur le sol, sur un sol irrégulier et peut-être en pente, comportant des obstacles et des inconnues, tout en conservantnotre équilibre vertical ». Or, le robot brut que vous récupérez est semblableà une casserole articulée. Vous aurez beau transmettre cette définition à votre

« comprend » pas. Il faut donc traduire cette définition en un langage qui soit« compris » par le robot, et qui lui permette de bouger comme nous le désirons.L’objectif de ce livre est d’offrir au lecteur les clés du langage du mouvementhumanoïde. Il offre une grammaire et un vocabulaire, ponctués d’exemples etd’exercices pour en faciliter l’accès. Il prend pour principal exemple le robotHRP-2, « le premier robot de taille humaine capable de tomber... et de serelever » et sur lequel ont travaillé les auteurs de ce livre4. Mais il proposeaussi une approche générale claire qui permettra à tout curieux de l’univershumanoïde de générer les mouvements de son propre robot.

Le passage entre la théorie et la pratique n’est pas toujours évident, sur-tout pour des structures aussi complexes que les robots humanoïdes. Outreles connaissances mathématiques indispensables à la représentation du mouve-ment humanoïde, cet ouvrage offre l’ensemble des algorithmes et des codes deprogrammation sous Matlab qui permettront une visualisation concrète et unemeilleure compréhension des concepts abordés. Ainsi, même s’il semble difficileau premier abord, sa lecture pas à pas est d’un confort tout à fait appréciable.

Sophie SAKKAAvril 2008

4Un exemplaire du HRP-2 a été acquis par le CNRS en 2005 dans le cadre d’une collabo-ration franco-japonaise. Il est actuellement dans les locaux du LAAS (Laboratoire d’Archi-tecture et d’Analyse des Systèmes) à Toulouse.

casserole –aussi articulée et élaborée soit-elle–, elle ne marchera pas si elle ne la

Page 7: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Le mot des auteurs

Les robots humanoïdes que nous pouvons voir à la télévision et dans lesexpositions peuvent marcher et réaliser des danses spectaculaires comme s’ilsétaient dotés d’une âme. Beaucoup de gens s’interrogent : « Incroyable ! Maiscomment fait-on cela ? » Le premier objectif de ce livre est de répondre à cettequestion. Nous y présentons les théories et les technologies actuelles, notam-ment celles utilisées pour commander notre robot humanoïde HRP-2. Des ap-proches semblables ont été mises en place pour d’autres robots célèbres, commeASIMO de Honda et QRIO de Sony.

Si vous ne faites que survoler ce livre, il peut sembler difficile d’approche carrempli d’équations. Nous savons que ce critère est rédhibitoire pour beaucoupde lecteurs allergiques aux mathématiques... Pour adoucir cette impression etpermettre de visualiser les phénomènes décrits par les équations, nous avonsinséré autant d’illustrations que possible. Mais la base mathématique proposéedoit être perçue comme une composition musicale indispensable pour générerdes comportements capables d’impressionner l’auditeur lambda. Si vous êtesintrigué par les robots humanoïdes, ce livre vous permettra de soulever le voilede connaissances technologiques et scientifiques maintenant communément uti-lisées dans notre société moderne.

Le premier chapitre a été écrit par Hirohisa Hirukawa, directeur du Groupede recherche en robotique humanoïde5 de l’Institut de recherche sur les systèmesintelligents6 de l’AIST7. Le chapitre 3 a été écrit par Kensuke Harada et ShuujiKajita, chercheurs du HRG. Le chapitre 5 a été écrit par Kazuhito Yokoi,directeur du Groupe de recherche contrôle des comportements autonomes del’ISRI. Les chapitres 2, 4 et 6 ont été écrits par Shuuji Kajita.

Nous n’aurions pas pu publier ce livre sans l’aide de beaucoup d’autres per-sonnes. Nous remercions tout d’abord Tadahiro Kawada, Takakatsu Isozumi etles autres ingénieurs de Kawada Industries, Inc., qui ont réalisé la conceptionmécanique et construit d’extraordinaires mécanismes dont le HRP-2. Nous dé-sirons aussi remercier Token Okano et Yuichiro Kawasumi de General Robotix,Inc. (GRX), qui nous ont apporté une aide quotidienne à la maintenance denotre robot. Nous remercions enfin Kenji Kaneko, Fumio Kanehiro, KiyoshiFujiwara, Hajime Saito et Mitsuharu Morisawa du HRG d’avoir mis à notredisposition les résultats de leurs travaux.

Le contenu de ce livre se nourrit des recherches menées par tous les membresdu HRG, dont ces derniers cités. Ils ont fourni un grand nombre de conseilsqui nous ont servi pour établir l’ébauche de ce document. Haruhisa Kurokawa,directeur du Groupe de recherche conception des systèmes distribués de l’ISRI,nous a offert de nombreux conseils pour la finalisation cette ébauche. TakashiNagasaki, étudiant de l’université de Tsukuba, a corrigé de nombreuses erreurs.Les auteurs doivent la valeur de ce livre à la participation de toutes ces per-

5Humanoid Robotics research Group, HRG.6Intelligent Systems Research Institute, ISRI.7National Institute of Advanced Industrial Science and Technology, Japon.

Page 8: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

viii Introduction à la commande des robots humanoïdes

sonnes. Il va de soi que nous sommes totalement responsables de toute erreurrésiduelle.

Finalement, nous désirons remercier Shigeoki Hirai, actuel directeur de larecherche de l’ISRI, et Kazuo Tanie, son prédécesseur. Nous n’aurions pas pumener cet ouvrage à son terme sans leur direction efficace.

Pour les auteurs, Shuuji KAJITADécembre 2004

Page 9: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Sommaire

Préface v

Le mot des auteurs vii

Table des illustrations xiii

Liste des tableaux xix

1 Introduction 1

2 Cinématique 152.1 Transformation des coordonnées . . . . . . . . . . . . . . . . . 15

2.1.1 Référentiel du monde . . . . . . . . . . . . . . . . . . . 152.1.2 Coordonnées locales et transformations homogènes . . . 162.1.3 Transformation d’un repère local à un autre . . . . . . . 192.1.4 Transformations le long d’une chaîne cinématique . . . . 21

2.2 Caractéristiques d’une rotation . . . . . . . . . . . . . . . . . . 212.2.1 Notations de roulis, tangage et lacet . . . . . . . . . . . 222.2.2 Signification des matrices de rotation . . . . . . . . . . . 232.2.3 Inversion d’une matrice de rotation . . . . . . . . . . . . 242.2.4 Vecteur vitesse angulaire . . . . . . . . . . . . . . . . . . 242.2.5 Matrice et vecteur vitesse de rotation . . . . . . . . . . 282.2.6 Intégration du vecteur vitesse de rotation . . . . . . . . 302.2.7 Matrices logarithmiques . . . . . . . . . . . . . . . . . . 31

2.3 Vitesses dans l’espace . . . . . . . . . . . . . . . . . . . . . . . 322.3.1 Vitesse linéaire et angulaire d’un corps isolé . . . . . . . 322.3.2 Vitesses de translation et de rotation de deux corps . . 33

2.4 Structure et programmation . . . . . . . . . . . . . . . . . . . 352.4.1 Représentation structurelle . . . . . . . . . . . . . . . . 352.4.2 Programmation par récursion . . . . . . . . . . . . . . . 37

2.5 Cinématique d’un robot humanoïde . . . . . . . . . . . . . . . 402.5.1 Création du modèle . . . . . . . . . . . . . . . . . . . . 402.5.2 Cinématique directe . . . . . . . . . . . . . . . . . . . . 422.5.3 Cinématique inverse . . . . . . . . . . . . . . . . . . . . 45

Page 10: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

x Introduction à la commande des robots humanoïdes

2.5.4 Solution numérique . . . . . . . . . . . . . . . . . . . . . 482.5.5 Jacobienne des vitesses . . . . . . . . . . . . . . . . . . 522.5.6 Calcul des vitesses . . . . . . . . . . . . . . . . . . . . . 552.5.7 Singularités . . . . . . . . . . . . . . . . . . . . . . . . . 562.5.8 Annexes : fonctions supplémentaires . . . . . . . . . . . 58

3 Dynamique et ZMP 593.1 ZMP et forces de contact au sol . . . . . . . . . . . . . . . . . 59

3.1.1 Présentation générale du ZMP . . . . . . . . . . . . . . 593.1.2 Analyse en deux dimensions . . . . . . . . . . . . . . . . 613.1.3 Analyse en trois dimensions . . . . . . . . . . . . . . . . 64

3.2 Mesure du ZMP . . . . . . . . . . . . . . . . . . . . . . . . . . 673.2.1 Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . 683.2.2 ZMP pour chaque pied . . . . . . . . . . . . . . . . . . . 693.2.3 Calcul de la position du ZMP lorsque les deux pieds sont

en contact avec le sol . . . . . . . . . . . . . . . . . . . . 733.3 Dynamique d’un robot humanoïde . . . . . . . . . . . . . . . . 74

3.3.1 Mouvements du robot et forces de réaction . . . . . . . 743.3.2 Grandeurs cinétiques . . . . . . . . . . . . . . . . . . . . 763.3.3 Moment cinétique . . . . . . . . . . . . . . . . . . . . . 783.3.4 Moment cinétique et tenseur d’inertie d’un corps rigide 803.3.5 Position du centre de masse du robot . . . . . . . . . . 833.3.6 Quantité de mouvement du robot . . . . . . . . . . . . . 833.3.7 Moment cinétique du robot . . . . . . . . . . . . . . . . 84

3.4 Calcul du ZMP basé sur les mouvements du robot . . . . . . . 853.4.1 Dérivation du ZMP . . . . . . . . . . . . . . . . . . . . 863.4.2 Méthode approchée de calcul de la position du ZMP . . 87

3.5 Quelques remarques concernant le ZMP . . . . . . . . . . . . . 893.5.1 Deux explications . . . . . . . . . . . . . . . . . . . . . . 893.5.2 Sur l’existence du ZMP en dehors du polygone de sus-

tentation . . . . . . . . . . . . . . . . . . . . . . . . . . 903.5.3 Limites du ZMP . . . . . . . . . . . . . . . . . . . . . . 92

3.6 Annexe : ensemble et enveloppe convexes . . . . . . . . . . . . 93

4 Marche bipède 954.1 Comment réaliser une marche bipède ? . . . . . . . . . . . . . . 964.2 Génération d’une marche en deux dimensions . . . . . . . . . . 97

4.2.1 Le pendule inversé en deux dimensions . . . . . . . . . . 974.2.2 Comportement du pendule inversé linéaire (LIP) . . . . 1004.2.3 Énergie orbitale . . . . . . . . . . . . . . . . . . . . . . . 1024.2.4 Changement de la jambe de support . . . . . . . . . . . 1044.2.5 Planification d’une allure de marche élémentaire . . . . 1054.2.6 Extension à la marche sur sol non horizontal . . . . . . 107

4.3 Génération d’une marche en trois dimensions . . . . . . . . . . 1094.3.1 LIP-3D . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

Page 11: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Sommaire xi

4.3.2 Caractéristiques du LIP-3D . . . . . . . . . . . . . . . . 1124.3.3 Génération des trajectoires de marche . . . . . . . . . . 1174.3.4 Introduction de la phase de double support . . . . . . . 1244.3.5 Du pendule linéaire inversé au modèle multicorps . . . . 1254.3.6 Exemple d’implémentation . . . . . . . . . . . . . . . . 126

4.4 Génération d’une marche basée sur le ZMP . . . . . . . . . . . 1274.4.1 Modèle du chariot sur la table . . . . . . . . . . . . . . 1274.4.2 Génération d’un modèle de marche hors-ligne . . . . . . 1294.4.3 Génération de modèle de marche en-ligne . . . . . . . . 1334.4.4 Filtres dynamiques utilisant le précontrôle . . . . . . . . 138

4.5 Stabilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1414.5.1 Principes de stabilisation de la commande . . . . . . . . 1414.5.2 Stabilisation du robot humanoïde Honda . . . . . . . . 145

4.6 Les pionniers de la technologie en marche dynamique . . . . . 1474.7 Autres méthodes pour la commande bipède . . . . . . . . . . . 149

4.7.1 Marche dynamique passive . . . . . . . . . . . . . . . . 1494.7.2 Oscillateurs non linéaires et CPG . . . . . . . . . . . . . 1494.7.3 Les méthodes d’apprentissage et évolutionnaires . . . . 150

5 Mouvements de l’ensemble du corps 1515.1 Méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1515.2 Génération brute des mouvements . . . . . . . . . . . . . . . . 154

5.2.1 Capture des mouvements humains . . . . . . . . . . . . 1555.2.2 Graphical User Interface (GUI) . . . . . . . . . . . . . . 1565.2.3 Méthodes rapides de recherche multidimensionnelle . . . 157

5.3 Mouvements dynamiquement stables . . . . . . . . . . . . . . . 1575.3.1 Filtre dynamique . . . . . . . . . . . . . . . . . . . . . . 1585.3.2 Auto-équilibreur . . . . . . . . . . . . . . . . . . . . . . 1595.3.3 Compilation restreinte des mouvements du tronc . . . . 160

5.4 Téléopération des robots humanoïdes . . . . . . . . . . . . . . 1615.4.1 Télégénération des mouvements . . . . . . . . . . . . . . 1625.4.2 Contrôle décomposé du torseur cinétique . . . . . . . . . 1645.4.3 Expérimentations avec le robot humanoïde HRP-2 . . . 167

5.5 Chute du robot : réduction des chocs . . . . . . . . . . . . . . 1705.6 Faire se lever un robot humanoïde . . . . . . . . . . . . . . . . 171

6 Simulation dynamique 1776.1 Dynamique des corps rigides en rotation . . . . . . . . . . . . . 178

6.1.1 Équations du mouvement d’Euler . . . . . . . . . . . . . 1786.1.2 Simulation de la rotation des corps rigides . . . . . . . . 179

6.2 Vitesse spatiale . . . . . . . . . . . . . . . . . . . . . . . . . . . 1806.2.1 Vitesse d’un corps rigide . . . . . . . . . . . . . . . . . . 1806.2.2 Intégration de la vitesse spatiale . . . . . . . . . . . . . 182

6.3 Dynamique des corps rigides . . . . . . . . . . . . . . . . . . . 1836.3.1 Équations de Newton-Euler . . . . . . . . . . . . . . . . 183

Page 12: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

xii Introduction à la commande des robots humanoïdes

6.3.2 Représentation par la vitesse spatiale . . . . . . . . . . . 1846.3.3 Représentation spatiale . . . . . . . . . . . . . . . . . . 1866.3.4 Simulation d’une toupie . . . . . . . . . . . . . . . . . . 187

6.4 Dynamique d’un système articulé . . . . . . . . . . . . . . . . 1896.4.1 Cinématique directe avec accélération . . . . . . . . . . 1896.4.2 Dynamique inverse d’un système articulé . . . . . . . . 1916.4.3 Dynamique directe d’un système articulé . . . . . . . . 1946.4.4 Méthode de Featherstone . . . . . . . . . . . . . . . . . 197

6.5 Histoire des calculs de dynamique directe . . . . . . . . . . . . 1996.6 Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

6.6.1 Manipulation des forces et des moments . . . . . . . . . 2006.6.2 Sous-programmes . . . . . . . . . . . . . . . . . . . . . . 201

Bibliographie 205

Index 213

Page 13: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Table des illustrations

1.1 Les robots humanoïdes de l’université de Waseda. . . . . . . . . 31.2 Les robots humanoïdes de Honda. . . . . . . . . . . . . . . . . 31.3 Exemple de cinématique inverse pour un robot bipède. . . . . . 51.4 Centre de masse, ZMP et polygone de sustentation. . . . . . . . 61.5 Concept du pendule inversé en trois dimensions. . . . . . . . . 71.6 Mouvements des pieds du HRP-2 marchant sur sol irrégulier. . 81.7 Le robot humanoïde HRP-2P en train de se lever. . . . . . . . 81.8 Mouvement d’un corps rigide dans l’espace sans gravité. . . . . 101.9 Descente d’escaliers par HRP-1. . . . . . . . . . . . . . . . . . . 111.10 HRP-1S conduisant une pelleteuse par téléopération. . . . . . . 11

2.1 Définition des segments et coordonnées locales du robot HRP-2. 162.2 Définition du référentiel du monde pour HRP-2. . . . . . . . . . 172.3 Référentiel du monde et système de coordonnées local. . . . . . 182.4 Repère local du bras Σa et repère local de l’avant-bras Σb. . . . 202.5 Roulis, tangage et lacet autour des axes x, y et z. . . . . . . . . 222.6 Deux manières d’interpréter les matrices de rotation. . . . . . . 232.7 Cylindre animé d’une vitesse de rotation autour de son axe. . . 252.8 Définition du produit vectoriel. . . . . . . . . . . . . . . . . . . 262.9 Champ des vitesses sur la surface d’un ballon de rugby. . . . . 272.10 Rotation des vecteurs vitesses par une matrice de rotation. . . 282.11 Position et orientation d’un corps dans l’espace. . . . . . . . . . 322.12 Transformation de coordonnées et vecteur vitesse de rotation. . 342.13 Somme des vecteurs vitesses de rotation. . . . . . . . . . . . . . 362.14 Décomposition d’un humanoïde en segments. . . . . . . . . . . 372.15 Représentation arborescente des connections, méthode 1. . . . . 372.16 Représentation arborescente des connections, méthode 2. . . . . 382.17 PrintLinkName.m . . . . . . . . . . . . . . . . . . . . . . . . . 392.18 TotalMass.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402.19 Structure d’un robot bipède à 12 ddl. . . . . . . . . . . . . . . 412.20 Définitions des vecteurs aj , bj et pj . . . . . . . . . . . . . . . . 422.21 Position et orientation d’un segment. . . . . . . . . . . . . . . . 442.22 Position relative de deux segments. . . . . . . . . . . . . . . . . 44

Page 14: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

xiv Introduction à la commande des robots humanoïdes

2.23 ForwardKinematics.m . . . . . . . . . . . . . . . . . . . . . . . 452.24 Configurations aléatoires calculées par ForwardKimematics. . . 462.25 Calcul de la cinématique inverse des jambes. . . . . . . . . . . . 472.26 IK_leg.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492.27 Approche numérique de résolution de l’inverse cinématique. . . 502.28 InverseKinematics.m . . . . . . . . . . . . . . . . . . . . . . . 522.29 Exemple de code utilisant InverseKinematics. . . . . . . . . . 532.30 Calcul de la Jacobienne des vitesses. . . . . . . . . . . . . . . . 542.31 CalcJacobian.m . . . . . . . . . . . . . . . . . . . . . . . . . . 542.32 ForwardVelocity.m . . . . . . . . . . . . . . . . . . . . . . . . 552.33 Exemples de configurations singulières. . . . . . . . . . . . . . . 572.34 FindRoute.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582.35 CalcVWerr.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

3.1 Définition du Zero Moment Point (ZMP). . . . . . . . . . . . . 603.2 Polygone de sustentation. . . . . . . . . . . . . . . . . . . . . . 613.3 CoM, ZMP et polygone de sustentation. . . . . . . . . . . . . . 613.4 Forces de réaction au sol pour le modèle 2D. . . . . . . . . . . . 623.5 Forces de réaction du sol : force et moment équivalents. . . . . 623.6 ZMP et distribution de forces de pression sous le pied. . . . . . 633.7 Forces de réaction en trois dimensions. . . . . . . . . . . . . . . 643.8 Force et moment équivalents à une distribution de forces. . . . 663.9 Représentation des forces distribuées. . . . . . . . . . . . . . . . 663.10 Variables de position et de sortie des capteurs d’efforts. . . . . 683.11 Pied du HRP-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . 693.12 Capteurs d’efforts 6 axes. . . . . . . . . . . . . . . . . . . . . . 703.13 Calcul du ZMP avec un capteur d’efforts 6 axes. . . . . . . . . 703.14 Le robot humanoïde H5 et son capteur d’efforts. . . . . . . . . 713.15 Calcul du ZMP grâce à plusieurs capteurs de forces 1 axe. . . . 723.16 Le robot humanoïde morph3 et son pied. . . . . . . . . . . . . . 723.17 Calcul de la position du ZMP lorsque les deux pieds sont en

contact avec le sol. . . . . . . . . . . . . . . . . . . . . . . . . . 733.18 Relation entre résultante et moment cinétiques : L = p × P. . . 783.19 Vecteur vitesse de rotation ω et moment cinétique L d’un corps

rigide dans une position de référence. . . . . . . . . . . . . . . . 823.20 calcMC.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843.21 calcCoM.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843.22 calcP.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853.23 calcL.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853.24 calcZMP.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873.25 Représentation simplifiée d’un système multicorps. . . . . . . . 873.26 Relation entre les déplacements du robot et la position du ZMP. 893.27 Le ZMP peut-il exister en dehors du polygone de sustentation ? 903.28 Le robot tourne autour de son talon quand une forte accélération

horizontale est produite. . . . . . . . . . . . . . . . . . . . . . . 91

Page 15: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Table des illustrations xv

3.29 Définition de l’ensemble convexe. . . . . . . . . . . . . . . . . . 943.30 Définition de l’enveloppe convexe. . . . . . . . . . . . . . . . . . 94

4.1 Les commandes abordées dans ce livre : modèle et stabilisation. 964.2 Pendule inversé en deux dimensions. . . . . . . . . . . . . . . . 984.3 Chute du pendule inversé en fonction de la force impulsive f . . 994.4 Conservation de l’horizontalité des déplacements du CoM. . . . 1004.5 LIP utilisant différentes conditions initiales. . . . . . . . . . . . 1014.6 LIP et potentiel imaginaire. . . . . . . . . . . . . . . . . . . . . 1034.7 Contrôle de la vitesse de marche à longueur de pas fixe. . . . . 1044.8 État du système au moment du changement de support. . . . . 1054.9 Le pas nécessite deux changements de jambe de support. . . . . 1064.10 Prévision des mouvements du centre de masse. . . . . . . . . . 1074.11 Contrôle du CoM pour se déplacer selon la droite de contrainte. 1084.12 Vecteur force de propulsion et déplacement pendulaire selon une

droite de contrainte. . . . . . . . . . . . . . . . . . . . . . . . . 1094.13 Les mouvements horizontaux d’un LIP ne dépendent pas de la

pente de la droite de contrainte. . . . . . . . . . . . . . . . . . . 1104.14 Montée d’escaliers basée sur un LIP. . . . . . . . . . . . . . . . 1114.15 Le robot bipède Meltran II. . . . . . . . . . . . . . . . . . . . . 1124.16 Modélisation d’un robot en marche par un LIP-3D. . . . . . . . 1134.17 LIP-3D : déplacement du CoM selon le plan de contrainte. . . . 1144.18 Déplacements du LIP-3D. . . . . . . . . . . . . . . . . . . . . . 1154.19 Projection sur le plan horizontal d’une trajectoire LIPM 3D. . 1164.20 Modèle de marche sur sol plat utilisant la méthode du LIP-3D. 1174.21 Primitive de marche : un modèle 3D élémentaire. . . . . . . . . 1184.22 Points de référence de placement des pieds. . . . . . . . . . . . 1194.23 Modification de la vitesse de marche. . . . . . . . . . . . . . . . 1204.24 Représentation d’un LIP dans le repère de référence. . . . . . . 1204.25 Algorithme de génération d’un modèle de marche. . . . . . . . 1214.26 Modèle de marche généré par l’algorithme. . . . . . . . . . . . . 1224.27 Exemple de marche diagonale. . . . . . . . . . . . . . . . . . . . 1234.28 Placement de pied avec changement de direction de marche. . . 1244.29 Marche selon un arc de cercle. . . . . . . . . . . . . . . . . . . . 1254.30 Amélioration du modèle de changement de support. . . . . . . 1264.31 Trajectoire de marche incluant une phase de double support. . 1274.32 Comparaison de trajectoires du ZMP : LIP-3D et dynamique

multicorps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1284.33 Le robot bipède HRP-2L. . . . . . . . . . . . . . . . . . . . . . 1294.34 Génération du modèle de marche en temps réel. . . . . . . . . . 1304.35 Modèle du chariot sur une table. . . . . . . . . . . . . . . . . . 1314.36 Comparaison de deux modèles basés sur les relations entre la

position du ZMP et la trajectoire du CoM. . . . . . . . . . . . 1324.37 Servocontrôleur pour suivre la trajectoire cible du ZMP. . . . . 1334.38 Effets entrées-sorties. . . . . . . . . . . . . . . . . . . . . . . . . 134

Page 16: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

xvi Introduction à la commande des robots humanoïdes

4.39 Génération du modèle de marche par précontrôle. . . . . . . . . 1364.40 Trajectoire du CoM obtenue par précontrôle. . . . . . . . . . . 1374.41 Précontrôle de gain f . . . . . . . . . . . . . . . . . . . . . . . . 1384.42 Simulation de marche sur des escaliers en spirale. . . . . . . . . 1384.43 Structure d’un filtre dynamique basé sur le précontrôle. . . . . 1394.44 Modèle de marche obtenu grâce à un filtre dynamique. . . . . . 1404.45 Effets du filtre dynamique sur la position du ZMP. . . . . . . . 1404.46 Les pieds du robot HRP-2 marchant sur un sol irrégulier. . . . 1414.47 Un modèle chariot-table avec rotation libre. . . . . . . . . . . . 1444.48 Le robot humanoïde P2 (1996). . . . . . . . . . . . . . . . . . . 1464.49 Le système de commande de la marche du Honda P2. . . . . . 1464.50 Les robots bipèdes qui marchaient dynamiquement avant 1986. 148

5.1 Tâche simple réalisée par HRP-2. . . . . . . . . . . . . . . . . . 1525.2 Décomposition temporelle des trajectoires des principales arti-

culations du HRP-2. . . . . . . . . . . . . . . . . . . . . . . . . 1535.3 Un boîtier de commande et son utilisation. . . . . . . . . . . . 1545.4 Organigramme de la génération des mouvements de l’ensemble

du corps pour un robot humanoïde. . . . . . . . . . . . . . . . 1545.5 Données issues d’une capture de mouvements. . . . . . . . . . . 1555.6 Concept de base de l’interface pin/drag. . . . . . . . . . . . . . 1565.7 Mouvements générés par l’interface pin/drag. . . . . . . . . . . 1565.8 Mouvement de saisie généré par une méthode de recherche RRT. 1575.9 Concept du filtre dynamique. . . . . . . . . . . . . . . . . . . . 1585.10 Conversion basée sur le filtre dynamique. . . . . . . . . . . . . 1595.11 Conversion utilisant l’auto-équilibreur. . . . . . . . . . . . . . . 1595.12 Algorithme de compensation des mouvements. . . . . . . . . . 1615.13 Le robot humanoïde WABIAN. . . . . . . . . . . . . . . . . . . 1625.14 Concentrer l’attention sur les parties du corps importantes pour

la réalisation de la tâche en cours. . . . . . . . . . . . . . . . . 1635.15 Affectation des boutons d’un joystick pour la télé-opération. . . 1645.16 Modèle du robot humanoïde. . . . . . . . . . . . . . . . . . . . 1655.17 Système de télé-opération. . . . . . . . . . . . . . . . . . . . . . 1685.18 Une expérience de télé-opération. . . . . . . . . . . . . . . . . . 1695.19 Équilibre, hauteur du CoM et polygone de sustentation. . . . . 1705.20 Le robot humanoïde HRP-2P. . . . . . . . . . . . . . . . . . . . 1715.21 Définition de l’angle de chute θ. . . . . . . . . . . . . . . . . . . 1725.22 Tomber et se relever. . . . . . . . . . . . . . . . . . . . . . . . . 1735.23 Organigramme d’états du mouvement permettant de se lever à

partir de la position allongée sur le dos ou sur le ventre. . . . . 1745.24 HRP-2 se lève à partir d’une position allongée sur le ventre. . . 1745.25 HRP-2 se lève à partir d’une position allongée sur le dos. . . . 1745.26 HRP-2 s’allonge sur le ventre. . . . . . . . . . . . . . . . . . . . 1755.27 HRP-2 s’allonge sur le dos. . . . . . . . . . . . . . . . . . . . . 175

Page 17: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Table des illustrations xvii

6.1 Expérience de chute du HRP-2P. . . . . . . . . . . . . . . . . . 1776.2 Rotation libre d’un corps rigide hors gravité. . . . . . . . . . . 1796.3 Vitesse angulaire et moment cinétique d’un corps en rotation. . 1796.4 EulerDynamics.m . . . . . . . . . . . . . . . . . . . . . . . . . 1806.5 Code de simulation pour la rotation libre d’un corps rigide. . . 1816.6 Définition de la vitesse spatiale. . . . . . . . . . . . . . . . . . . 1826.7 SE3exp.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1846.8 Mouvements d’un corps rigide à vitesse spatiale constante. . . . 1856.9 Simulation de la dynamique d’un corps rigide hors gravité. . . . 1866.10 Vitesse spatiale vo et quantité de mouvement P d’un mouvement

hors gravité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1876.11 SE3dynamics.m . . . . . . . . . . . . . . . . . . . . . . . . . . . 1886.12 TopForce.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1886.13 Simulation d’une toupie tombant sur le sol avec la vitesse de

rotation initiale de 50 rad/s. . . . . . . . . . . . . . . . . . . . . 1896.14 Code Matlab pour simuler une toupie. . . . . . . . . . . . . . . 1906.15 Propagation de la vitesse spatiale. . . . . . . . . . . . . . . . . 1916.16 ForwardAllKinematics.m . . . . . . . . . . . . . . . . . . . . . 1926.17 Forces et moments agissant sur le j-ième corps. . . . . . . . . . 1936.18 InverseDynamics.m . . . . . . . . . . . . . . . . . . . . . . . . 1946.19 Effets des couples articulaires nuls. . . . . . . . . . . . . . . . . 1956.20 Dynamique directe calculée par la méthode du vecteur unitaire. 1966.21 Deux corps dans l’espace. . . . . . . . . . . . . . . . . . . . . . 1976.22 Inertie des corps articulés. . . . . . . . . . . . . . . . . . . . . . 1986.23 Représentation d’une force et d’un moment vue dans le référen-

tiel du monde. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2006.24 Petit quiz sur la force et le moment. . . . . . . . . . . . . . . . 2016.25 ShowObject.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2016.26 MakeRigidBody.m . . . . . . . . . . . . . . . . . . . . . . . . . 2026.27 MakeTop.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2026.28 MakeZcylinder.m . . . . . . . . . . . . . . . . . . . . . . . . . 2026.29 InvDyn.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2036.30 Réponse au petit quiz. . . . . . . . . . . . . . . . . . . . . . . . 203

Page 18: Introduction à la commande des robots humanoïdes - Springer978-2-287-87716-2/1 · tive, mauvaise par essence, de ces machines et rendent tabou leur réalisation3. ... vi Introduction

Liste des tableaux

2.1 Paramètres des segments. . . . . . . . . . . . . . . . . . . . . . 43