173
NS 287 Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat NOTE SCIENTIFIQUE ET TECHNIQUE

Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

NS 287

Commande dynamique d’humains virtuels : équilibre robuste

et gestion des tâchesThèse de Doctorat

NOTE SCIENTIFIQUE ET TECHNIQUE

Page 2: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Commande dynamique d’humains virtuels : équilibre robuste

et gestion des tâchesThèse de Doctorat

Cyrille COLLETTE

NS 287février 2010

Institut national de recherche et de sécurité pour la prévention des accidents du travail et des maladies professionnellesSiège social : 30, rue Olivier-Noyer 75680 Paris cedex 14 • Tél. 01 40 44 30 00 • Fax 01 40 44 30 99

Centre de Lorraine : 1, rue du Morvan CS 60027 54519 Vandœuvre-les-Nancy cedex • Tél. 03 83 50 20 00 • Fax 03 83 50 20 97

Page 3: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Thèse de doctorat

de

l’Université paris vi

Spécialité : mécanique - robotique

Commande dynamique d’humains virtuels :

équilibre robuste et gestion de tâches

Proposée par : Cyrille Collette

Pour obtenir le titre de docteur de l’Université paris vi

Soutenance prévue le . . . . . . 2009 devant le jury proposé :

Jean-Paul Laumond Directeur de recherche au laas-cnrs Rapporteur

Franck Multon Maître de conférence à l’université de Rennes 2 Rapporteur

Xuguang Wang Directeur de recherche lbmc, inrets Examinateur

Philippe Bidaud Professeur à l’université Paris 6, isir Paris Examinateur

Alain Micaelli Directeur de recherche, cea/list Fontenay-aux-Roses Directeur de Thèse

Pierre Lemerle Responsable du laboratoire msmp, inrs Vandœuvre Encadrant

Directeur de thèse Alain Micaelli

Encadrant industriel Pierre Lemerle

Page 4: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 5: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Résumé

“Commande dynamique d’humains virtuels : équilibre robuste et gestion de tâches”

Les simulateurs physiques ne disposent pas d’outils efficaces d’animation permettant à unhumain virtuel de s’équilibrer et de réaliser des tâches, en interagissant avec son environnement.On propose une commande dynamique d’humains virtuels qui offre un cadre unifié où toutesles contraintes sont traitées simultanément : forces unilatérales de contact avec frottement, ef-forts bilatéraux de préhension et couples de commande. Afin d’assurer l’équilibre de l’humainvirtuel dans une configuration de contact et de préhension non-coplanaires, les consignes de cettecommande telle que la position du centre de masse sont déterminées statiquement. Ce dernierest stable et robuste à des perturbations. Pour augmenter l’autonomie de l’humain virtuel etenrichir ses comportements, un objectif se décompose en un ensemble d’actions élémentaires,se traduisant en critères et contraintes pour la loi de commande. D’autre part, les résultats desimulation sont validés à l’aide de campagnes d’essais réalisées sur des sujets humains. Enfin, lacommande est appliquée au cas du renversement dynamique latéral de chariot de manutentiondans le but d’obtenir un comportement prédictif de cariste.

Mots Clés : Réalité Virtuelle, Mouvements d’Humains Virtuels autonomes, Contrôle d’équi-libre dynamique, Posture robuste, Multi-contacts non coplanaires, Commande de la préhension,Contacts avec frottements secs.

3

Page 6: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 7: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Abstract

“Virtual humans dynamic control : robust balance and task management”

Physical simulators do not possess animation tools efficient enough to let a virtual humankeep its balance and realize tasks while interacting in a very general way with its environment.We propose a dynamical controller of virtual humans which offers a unified framework where allthe constraints are treated simultaneously : unilateral forces of contact with friction, bilateralgrasping efforts and motor joint torques. In order to assure the virtual human’s balance in a non-coplanar contact and grasp situation, the controller’s commands such as position of center of massare determined statically. Our virtual human is stable and robust to disturbance. To increase itsautonomy and richness of behaviour, each goal is divided into a sequence of elementary actions,translated into criteria and constraints for the control. In addition, the results of the simulationwere validated thanks to a trial campaign realized on human subjects. Eventually, this controlis applied to the case of a powered industrial truck in lateral fall, so as to obtain a predictivemodel of the forklift operator’s behaviour.

Keywords : Virtual reality, Virtual Human motion, Dynamic balance control, Robust pos-ture, Multiple non-coplanar contacts, Grasp control, Frictional contacts.

5

Page 8: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 9: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Table des matières

1 Introduction 9

1.1 Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.2 Problématiques scientifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.3 Présentation du plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2 Description du modèle 15

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.2 Modélisation de l’Humain Virtuel . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.3 Modèle dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.4 Modèles d’interaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3 Définir et quantifier l’équilibre 27

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.2 Centre de Masse de consigne non robuste . . . . . . . . . . . . . . . . . . . . . . 313.3 Commande de posture robuste . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.4 Prise en compte de la posture de l’hv . . . . . . . . . . . . . . . . . . . . . . . . 413.5 Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4 Assurer l’équilibre 47

4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494.2 L’algorithme de commande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504.3 Mise en œuvre algorithmique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614.4 Justifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644.5 Résultats et discussions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

5 Gestion de tâches 77

5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795.2 Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805.3 Gestion des priorités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885.4 Tâches de manutention . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

6 Validations 99

6.1 Matériels et méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016.2 Résultats et discussions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1066.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

7

Page 10: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7 Cariste 121

7.1 Problématique du cariste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1237.2 Commande du cariste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1277.3 Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

8 Conclusion et perspectives 145

8.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1458.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

Annexes 153

A Définition des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155B Formalisme mathématique et rappels de mécanique du solide . . . . . . . . . . . 159C Simulation physique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165D Paramétrage de l’hv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169E Liste de publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171

8

Page 11: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 1

Introduction

1.1 Contexte

Le domaine de la simulation connaît une forte croissance. On le retrouve notamment dansdes activités de conception (CAO), de formation, de loisir (jeux vidéos) (figure 1.1). Le dévelop-pement des technologies informatiques permet d’accroître la complexité des simulations. Ellesoffrent une grande souplesse d’utilisation, à moindre coût.

On s’intéresse à la simulation physique. L’objectif est de représenter en virtuel des environ-nements réels complexes. Les objets qui composent la scène sont soumis à la dynamique dessystèmes contraints. Ils interagissent entre eux. Plusieurs simulateurs sont disponibles. On citeraOpen Dynamics Engine, Havok, Newton Game Dynamics, Bullet. Le champ d’application de cessimulateurs est très vaste. Par exemple, la réalité virtuelle utilise des simulateurs physiques pourdes problématiques de prototypage virtuel, de dimensionnement de systèmes de sécurité.

Certains simulateurs proposent quelques outils d’animation d’Humain Virtuel (hv). Ils sontlimités et fastidieux à utiliser. L’hv est le plus souvent décrit comme un système poly-articulérigide. On attend d’un hv qu’il agisse dans un environnement virtuel comme un humain dans lemonde réel. On s’immergera d’autant plus à la simulation si le comportement de l’hv apparaîtréaliste. Mais le réalisme graphique d’un comportement n’est pas le seul critère. Le réalismephysique d’un mouvement est la priorité.

Un point fondamental est l’interaction de l’hv avec son environnement. Ainsi, soumis àune perturbation, l’hv doit avoir un comportement réactif pour retrouver son équilibre. Outrela gestion d’équilibre, on s’intéresse à la simulation d’activités physiques. L’hv interagit avecl’environnement, déplace des objets, réalise des tâches. Afin de traiter un large éventail de si-mulations, l’hv devra faire face à des situations imprévues. La description par l’utilisateur descomportements de l’hv doit être la plus simple et efficace possible. Ainsi, une grande importanceest accordée à l’autonomie de l’hv.

La génération de comportements d’hv autonomes, si elle offre beaucoup de liberté et de sou-plesse dans la mise en œuvre, présente également des difficultés d’ordre scientifique et technique.

9

Page 12: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

(a) Modélisation d’une suspension avec ca-tiar.

(b) Simulateur de conduite de chariot de manutention.

(c) Simulation interactive de prototypage virtueldédiée à l’industrie automobile.

(d) Jeu vidéo Grand Theft Auto 4r développé parRockstarr Games.

Figure 1.1 – Exemples d’utilisation de la simulation.

10

Page 13: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

1.2 Problématiques scientifiques

Les objectifs de cette thèse sont de prototyper des lois de commande permettant d’animer unhv. Deux applications sont abordées : l’équilibre robuste et la gestion de tâches de l’hv. Bien queprésentées distinctement, il y a des connexions fortes entre ces deux problématiques, du point devue de la méthode de commande, que l’on étudiera par la suite.

On cherche à développer des outils facilement paramétrables pour commander un hv et àobtenir un comportement naturel en jouant sur peu de paramètres.

1.2.1 Équilibre robuste

L’hv est soumis à une perturbation qui peut être de différentes natures. D’une part, un effortde perturbation est directement appliqué à l’hv. D’autre part, il peut s’agir aussi d’un mouvementde l’environnement avec lequel l’hv est en interaction. Une fois perturbé, l’hv doit retrouver sonéquilibre. On cherche à déterminer et à évaluer la qualité de la position d’équilibre à atteindre.De plus, le retour à l’équilibre nécessite le développement d’une méthode de commande.

1.2.1.1 Définir et quantifier l’équilibre

On cherche à définir et à quantifier l’équilibre de l’hv dans un environnement complexe. Ons’intéresse notamment aux configurations de contacts et de prises non coplanaires. On veut dé-terminer automatiquement et pour toutes les configurations de contacts et de prises, la meilleureposition d’équilibre. Cette consigne se traduit à la fois en termes de configuration–posture à adop-ter mais aussi en termes d’efforts d’interaction avec l’environnement. Ainsi, l’hv se cramponnele plus efficacement sur son environnement. L’algorithme que nous proposons fournit égalementun indice de robustesse.

D’autre part, on cherche à quantifier l’équilibre de l’hv. Ceci permet de définir l’état dusystème à chaque instant.

La définition et la quantification de l’équilibre nécessitent de prendre en considération lescontraintes liées au système étudié, à savoir les limites articulaires et d’actionnement, les limitesdes efforts que l’hv peut appliquer sur une prise saisie ainsi que le non-glissement des contacts.

C’est un problème très complexe qui reste ouvert, et pour lequel on a fait des hypothèsessimplificatrices.

1.2.1.2 Assurer l’équilibre

L’objectif est d’atteindre la meilleure position d’équilibre définie précédemment. Pour y par-venir, on choisit de réaliser une commande en couple.

Suite à une perturbation, deux méthodes complémentaires permettent d’assurer l’équilibrede l’hv :

– réflexe “simple” : l’objectif est de mettre en œuvre un comportement autonome permet-tant de retrouver l’équilibre en conservant l’état de ses interactions avec l’environnement ;

– réflexe “évolué” : l’objectif est de retrouver l’équilibre en changeant l’état de ses in-teractions avec l’environnement. On pourra enchaîner les comportements avec prises dedécisions. Par exemple, l’hv peut reprendre son équilibre en s’appuyant sur un mur.

11

Page 14: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

1.2.2 Réalisation de tâches

La simulation d’activités physiques nécessite la mise en œuvre de comportements combinantgestion d’équilibre et réalisation de tâches. C’est le cas par exemple lorsque l’on entreprend depeindre un mur. L’hv doit tout d’abord atteindre et saisir le pinceau puis réaliser le mouvementde peindre. Parfois, la zone du mur à peindre est difficilement atteignable. Il peut alors s’aiderde prises avec sa main libre pour atteindre la zone tout en conservant son équilibre. Pour réaliserla tâche de peindre, on doit générer un ensemble de comportements. Parfois, ces comportementssont incompatibles. Dans cet exemple, il s’agit d’atteindre la zone à peindre avec une main et laprise avec la main libre. Et pour cela, on préfère généralement réaliser en priorité la tâche quigarantira l’équilibre, c’est à dire atteindre la prise. Il faut donc mettre en œuvre une gestion despriorités entre ces comportements.

L’objectif est de générer des comportements de réalisation de tâches de la façon la plus simpleet la plus souple possible. Une grande importance est donnée à l’autonomie du système. La dif-ficulté est de trouver les bonnes heuristiques permettant d’obtenir le comportement global désiré.

La gestion des critères multi-objectifs est un point important dans la gestion des tâches. Parmiun ensemble d’actions à réaliser, la priorité d’exécution est accordée en fonction de l’importancede la tâche. On doit gérer les priorités entre des objectifs disjoints en exploitant au mieux lesressources du système.

1.3 Présentation du plan

On présente dans le chapitre 2 une introduction aux modèles, notations et formulations.

Les chapitres 3, 4 et 5 sont consacrés à la commande de l’hv.

Le chapitre 3 traite de la définition et de la quantification de l’équilibre. Afin d’assurer l’équi-libre de l’hv dans une configuration complexe de contacts et de prises, le Centre de Masse (CdM)est déterminé statiquement. La position du CdM stable, robuste à des perturbations est déter-minée. Un critère de marge de stabilité permettant de quantifier l’équilibre est présenté.

Dans le chapitre 4, on s’intéresse à assurer l’équilibre de l’hv. On aborde la formulation dela commande de l’hv permettant de calculer les couples d’actionnement. Les hypothèses pour lacommande sont justifiées. Enfin, des résultats de simulations sont présentés.

Le chapitre 5 traitera de la gestion de tâches. On traitera notamment les aspects programma-tion de tâches. L’objectif est de faire le lien entre un objectif global (ex : peindre) et sa traductionen termes de lois de commandes. Ainsi, on peut augmenter l’autonomie de l’hv et enrichir sescomportements. D’autre part, on propose une méthode numérique pour gérer les priorités entreles tâches (souvent conflictuelles). On présentera le cas d’application de l’hv manutentionnaire.

Le chapitre 6 présente la confrontation entre la simulation et l’expérimentation. On détaillela campagne d’essais de validation réalisée sur des sujets humains à l’inrs. L’objectif est de com-parer en termes d’efforts et de déplacements du CdM, l’expérimentation sur sujet et la simulation.

Le chapitre 7 présente les premiers résultats de l’application de la loi de commande à la pro-blématique du cariste. On traite des cas de renversement de chariot de plus en plus complexes.

12

Page 15: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

On s’appuie sur des cas simples pour interpréter l’influence de certains paramètres de la simula-tion. Enfin, le comportement du cariste est enrichi par différentes stratégies de retenues.

Le chapitre 8 revient sur les principales contributions scientifiques et les perspectives d’amé-lioration et d’application de la commande dynamique d’hv.

13

Page 16: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 17: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 2

Description du modèle

Ce chapitre présente la modélisation du problème. On décrit les hypothèses de travail et lefonctionnement global d’une simulation. L’hv est animé comme un robot.

Les grandeurs physiques prises en compte pour modéliser un hv sous la forme d’un robot sontdétaillées par la suite.

Ce robot évolue dans un environnement virtuel dont les lois ainsi que leurs formalismes sontprésentés.

Enfin, l’interaction entre l’hv et son environnement dans une simulation s’effectue par l’in-termédiaire de contacts et d’efforts de préhension. On détaille les modèles d’interaction.

15

Page 18: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 2. DESCRIPTION DU MODÈLE

Sommaire2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.2 Modélisation de l’Humain Virtuel . . . . . . . . . . . . . . . . . . . . 17

2.2.1 Chaînes poly-articulées : robots, branches, corps . . . . . . . . . . . . . 172.2.2 Degrés de liberté . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.2.3 Paramétrage de l’hv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.3 Modèle dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.4 Modèles d’interaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.4.1 Liaison unilatérale : contact ponctuel avec frottement . . . . . . . . . . 212.4.1.1 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.4.1.2 Commande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.4.2 Liaison bilatérale : torseur d’effort résultant d’un actionnement de pré-hension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

16

Page 19: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

2.1. INTRODUCTION

2.1 Introduction

Modèle rigide : l’hv est considéré comme un robot que l’on anime. C’est un système rigidepoly-articulé fortement redondant (§ 2.2). Il possède un grand nombre de degrés de liberté (32ddl). La base du robot est libre : aucune partie n’est encastrée.

Chaque segment corporel est considéré comme rigide. L’interaction rigide sur rigide est à lafois suffisante et plus simple à modéliser en termes de loi de commande (§ 2.4).

Actionnement articulaire : chaque articulation est modélisée de manière parfaite et peutêtre actionnée. La commande articulaire est la plus répandue. Par rapport à une modélisationmusculaire, elle est plus simple et permet d’obtenir plus de résultats. L’expérience montre qu’unecommande articulaire donne de bons résultats, proches de ceux obtenus par la prise en comptedes muscles. Les modèles neuro-physiologiques ne sont pas considérés. L’actionneur est consi-déré parfait, et s’applique directement sur l’articulation puisqu’on s’intéresse uniquement à lasimulation d’hv et non à l’actionnement d’un humanoïde.

2.2 Modélisation de l’Humain Virtuel

2.2.1 Chaînes poly-articulées : robots, branches, corps

Un robot est une chaîne poly-articulée constituée de branches, elles-mêmes constituées decorps solides (figure 2.1(a)). Le premier corps d’une branche peut être lié rigidement à un corpsd’une autre branche. Pour un robot (tel que l’hv), le corps racine est le premier corps de lapremière branche. La configuration complète du système est définie par la donnée de la position ducorps racine (position et orientation) et des coordonnées articulaires des branches (figure 2.1(a)).

(a) Le robot “hv” est constitué de sixbranches : tronc, tête, bras et jambes. Le tho-rax est le corps racine. Toutes les branches segreffent sur la branche tronc (carrés).

(b) La position du corps racine Hracine estexprimée par rapport au repère de la scèneHscène. L’orientation de chaque liaison qi

permet de définir la posture de l’hv.

Figure 2.1 – L’hv est modélisé comme un système poly-articulé.

17

Page 20: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 2. DESCRIPTION DU MODÈLE

2.2.2 Degrés de liberté

Dans le simulateur utilisé, deux corps ne peuvent être reliés entre eux par une liaison pivot,glissière ou hélicoïdale. Pour réaliser une liaison rotule, on crée une chaîne de trois “corps”, quiconstituent trois pivots centrés successifs. L’hv est composé uniquement de liaisons pivots. Laréalité biomécanique des articulations (épaule, genou, etc) est simplifiée. Ainsi, on représentel’articulation de l’épaule comme une rotule.

cou 3 ddlthorax - abdomen 3 ddlépaule 3 ddlcoude 2 ddlpoignet 2 ddlhanche 3 ddlgenou 1 ddlcheville 2 ddl

= 32 ddl

2.2.3 Paramétrage de l’hv

L’hv est paramétrable en fonction de la taille et de la masse. Plusieurs articles ont servi deréférences :

– masses des segments corporels (annexe D : D. Miller et al. [MM75]) ;– géométries et calculs des inerties des segments corporels (annexe D : E.P. Hanavan

[Han64]) ;– dimensions des segments corporels :

• rayons : D. Miller et al. [MM75] ;

• longueurs : W.T. Dempster et al. [DG67].

– limites articulaires (annexe D.2 : J.M. Chevalier [Che98]) ;

2.3 Modèle dynamique

Le modèle dynamique inverse d’un robot s’écrit :�� ��M (q) (T −G) +N (q, q) T = L τ + Ct (q) W (2.1)

Voici le détail des notations :

− T : vecteur vitesse en coordonnées généralisées du robot. dim(T ) = (6 + nddl, 1)

T =

Vracine

q1...

qnddl

(2.2)

avec :

• Vracine =

[

vracineωracine

]

: torseur cinématique absolu du corps racine de l’arborescence

exprimé dans le repère de base de ce corps (formulation “corps” – voir [MLS94]) ;

18

Page 21: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

2.3. MODÈLE DYNAMIQUE

• qk−1 : vitesse articulaire du corps k par rapport au corps k − 1.

− T : vecteur accélération en coordonnées généralisées du robot, dérivé de T. dim(T ) =(6 + nddl, 1)

T =

Vracine

q1...

qnddl

(2.3)

− τ : forces et couples articulaires. dim(τ) = (nddl, 1)

τ =

τ1...

τnddl

(2.4)

τ = τcommande + τbutée (2.5)

avec :

• τk−1 : forces ou couples articulaires appliqués par le corps k − 1 sur le corps k ;

• τcommande : forces et couples articulaires de commande (chapitre 4) ;

• τbutee : forces et couples articulaires dus aux butées articulaires qui limitent le mou-vement.

Note 1. Dans le cas présent, il n’y a que des couples articulaires car on ne modélise quedes liaisons pivots.

− W : torseurs d’efforts appliqués, sur chacun des corps qui constituent le robot, exprimésdans leurs repères de base respectifs (repère “corps”). dim(W ) = (6 + 6 nddl, 1)

W =

Wracine

W1...

Wnddl

(2.6)

W = Wcontact +Wliaison +Wperturbation (2.7)

avec :

• Wcontact : torseur d’effort lié aux contacts ;

• Wliaison : torseur d’effort lié aux liaisons viscoélastiques ;

• Wperturbation : torseur d’effort lié à des perturbations extérieures.

− C (q) : matrice de transformation entre l’espace des vitesses articulaires (“espace tangentexprimé par T ”) et l’espace des vitesses cartésiennes des corps (espace des torseurs ciné-matiques des corps, en formulation “corps” se3 (R) × . . . × se3 (R) = se3 (R)

ncorps). Cettejacobienne ne dépend que de la configuration articulaire du robot q. Son calcul est détaillédans l’annexe B.5. Le modèle cinématique direct d’un robot s’écrit :

Vracine

V1...

Vnddl

= C

Vracine

q1...

qnddl

(2.8)

19

Page 22: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 2. DESCRIPTION DU MODÈLE

− C (q, q) : la dérivée de la jacobienne C permet d’obtenir les accélérations des “corps” dansl’espace cartésien en fonction des accélérations articulaires. Cette jacobienne dépend de laconfiguration et de la vitesse articulaire du robot (q, q).

Vracine

V1...

Vnddl

= C (q) T + C (q, q) T (2.9)

− M (q) : matrice symétrique d’inertie en coordonnées généralisées. dim(M) = (6 + nddl, 6 +nddl)

M (q) = Ct (q) M C (q) (2.10)

avec :

• M : matrice d’inertie de tous les corps dans leur repère de base. dim(M) = (6 +6 nddl, 6 + 6 nddl).

M =

Mracine 06,6 . . . 06,6

06,6 M1. . .

......

. . . . . . 06,6

06,6 . . . 06,6 Mnddl

avec Mi =

[

mi I3 03,3

03,3 ℑi

]

(2.11)

avec :

• mi : masse du corps i ;

• ℑi : matrice d’inertie du corps i exprimée à son centre de masse et dans le repère debase.

− L : matrice permettant d’exprimer τ en coordonnées généralisées. dim(L) = (6+nddl, nddl)

L =

[

0(6,nddl)

Inddl

]

(2.12)

Note 2. Dans le cas d’un bras de robot, le corps racine est généralement fixé au sol. Dansle cas de l’hv, le corps racine n’est pas fixé. Il est libre et on ne peut pas limiter sonmouvement (τbutée) ni le commander (τcommande).

− N (q, q) : matrice associée aux effets de Coriolis et centrifuges.

− G : accélération de la pesanteur exprimée en coordonnées généralisées.

G =

00−g

03+nddl

(2.13)

Par la suite, le modèle dynamique d’un robot s’écrit :

M (T −G) +N T = L τ + Ct W (2.14)

20

Page 23: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

2.4. MODÈLES D’INTERACTION

2.4 Modèles d’interaction

2.4.1 Liaison unilatérale : contact ponctuel avec frottement

(a) Cône exact / linéarisé. (b) Contraintes de non-glissement.

Figure 2.2 – Cône de frottement linéarisé.

2.4.1.1 Simulation

Le simulateur utilise des contacts ponctuels avec frottement. La loi de Coulomb modélise lesforces de frottement qui s’opposent au glissement des surfaces en contact :

‖f tc‖ ≤ µ fn

c (2.15)

avec :

• fnc : force de contact normale ;

• f tc : force de contact tangentielle ;

• µ : coefficient de frottement sec.

Le contact est adhérent si la force de contact est à l’intérieur du cône de frottement. Si elleest sur le bord, il peut y avoir glissement. Cette inégalité est non linéaire.

2.4.1.2 Commande

Pour un calcul plus rapide de la commande, il peut être intéressant de simplifier ce modèle enfacettisant par exemple le cône de frottement. Soit fc =

[

fcx fcy fcz

]t, une force de contact.

Cette force est adhérente si elle est dans le cône de frottement discrétisé, c’est à dire la force decontact est dans le bon demi-espace formé par chacune des facettes (figure 2.2(b)).

Exemple de discrétisation du cône (na = 4, nombre de facettes). Le repère de contact apour origine le centre du cône. La normale au contact est suivant l’axe −→z . L’équation des plansde chaque facette, passant par l’origine, s’exprime très simplement. La distance de la force decontact à chaque plan s’écrit comme une combinaison linéaire des inconnues (fcx , fcy , fcz). Enfin,la condition d’appartenance de la force de contact au cône s’exprime comme un ensemble decontraintes inégalités sur ces distances :

21

Page 24: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 2. DESCRIPTION DU MODÈLE

+fcx − fcy + µ fcz = 0

+fcx + fcy + µ fcz = 0

−fcx + fcy + µ fcz = 0

−fcx − fcy + µ fcz = 0

donc

+1 −1 µ+1 +1 µ−1 +1 µ−1 −1 µ

fc ≥ 0 (2.16)

Lorsque la force de contact se situe en bordure du cône de frottement, il peut y avoir glisse-ment. Afin de garantir l’adhérence dans tous les cas, la loi de commande utilise un coefficient defrottement légèrement inférieur à celui de la simulation.

2.4.2 Liaison bilatérale : torseur d’effort résultant d’un actionnement de pré-hension

Afin que l’hv saisisse des prises ou des objets avec ses mains, un modèle de préhension estnécessaire. Dans un souci de simplification, la main n’est pas représentée sous la forme d’un sys-tème poly-articulé. On se contente de modéliser dans la simulation et la commande, un torseurd’effort résultant d’un actionnement de préhension. Il s’agit d’une liaison bilatérale.

(a) Cube inclus dans une sphère. (b) Force ou moment contraintdans un cube.

(c) Dodécaèdre inclus dans unesphère.

Figure 2.3 – Saturation de la force et/ou du moment de préhension.

La commande calcule explicitement les efforts résultant d’un actionnement de préhension.Avec une capacité d’actionnement limitée, l’hv ne peut appliquer que des efforts bornés. Idéale-ment, la saturation isotropique de l’effort de préhension est souhaitée. Mais c’est une contraintenon linéaire. Par simplification, on ne contraint que certaines directions de l’espace, ce qui re-vient à borner la force par un polytope, par exemple : un cube (figure 2.3(a)) ou un dodécaèdre(figure 2.3(c)) inclus dans la sphère. Ainsi, un ensemble de contraintes inégalités constituent lasaturation de la force et du moment de préhension. Par exemple, la saturation de l’effort depréhension Wp dans un cube (figure 2.3(b)) revient à définir la norme de |Wp| comme étant :

|Wp| ≤Wmaxp

|fx| ≤ fmaxx

|fy| ≤ fmaxy

|fz| ≤ fmaxz

|mx| ≤ mmaxx

|my| ≤ mmaxy

|mz| ≤ mmaxz

Wp =

fx

fy

fz

mx

my

mz

Wmaxp =

fmaxx

fmaxy

fmaxz

mmaxx

mmaxy

mmaxz

(2.17)

22

Page 25: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Introduction à la commande

Ce mini chapitre est une introduction aux chapitres 3, 4 et 5, consacrés à la commande de l’hv.

Les deux problématiques principales traitées sont :

A – Pour l’équilibre robuste, il s’agit de :

1 – Définir et quantifier l’équilibre : l’hv évolue dans un environnement complexe, avec desconfigurations de contacts et de prises non coplanaires. Définir la position d’équilibre d’un ro-bot tel qu’un hv dans n’importe quelle configuration est un problème complexe, c’est pourquoiplusieurs simplifications sont effectuées. Tout d’abord, la nature et la position des interactionsde l’hv avec l’environnement sont supposées connues. De plus, on se limite à déterminer unéquilibre statique. Enfin, seule la stabilité du CdM de l’hv est étudiée. On fait abstraction dela cinématique. Finalement, l’objectif est la détermination de la position du CdM équilibrée enstatique en fonction d’une configuration de contact et de prise connue. L’introduction des margesde stabilité permet de déterminer une position de CdM stable et robuste.

La formulation et les justifications de cette approche sont détaillées dans le chapitre 3.

2 – Assurer l’équilibre : l’objectif est de déterminer les actions motrices permettant à l’hvd’atteindre la position d’équilibre précédemment calculée. La figure 2.4 présente une version trèssimplifiée du problème à traiter.

Figure 2.4 – Première version de la boucle d’asservissement de la commande de l’hv.

Lorsqu’un humain est perturbé, il cherche à s’équilibrer au mieux. Ce retour à l’équilibren’est pas toujours aussi rapide que l’on souhaite et peut même s’avérer impossible. Il dépendnotamment de ses prises sur l’environnement, de sa posture au moment de la perturbation, durevêtement du sol. Autant de considérations prises en compte dans la commande sous forme decritères de priorités variables. Le choix de l’ordre des priorités est justifié. Tout d’abord, lors d’une

23

Page 26: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

reprise d’équilibre, il faut absolument garantir les interactions de l’hv avec l’environnement. Sescontacts ne doivent pas glisser ou être rompus, ce qui aggraverait sa perte d’équilibre. D’autrepart, tout système mécanique, même déséquilibré, doit vérifier les lois de la physique. Le bilandes efforts s’appliquant sur l’hv doit être respecté. La prise en compte de la dynamique estun point clé pour obtenir un réalisme physique de la gestion d’équilibre. Sous respect de cesdeux contraintes, l’hv tente d’atteindre du mieux possible sa position d’équilibre. Ces choix sontformalisés dans un problème d’optimisation sous contraintes :

– Contraintes :

• les interactions de l’hv doivent être maintenues ;

• le bilan des efforts s’appliquant sur l’hv doit être respecté.

– Optimisation : atteindre au mieux la position d’équilibre statique.

La formulation est détaillée dans le chapitre 4.

La commande, pour conserver l’équilibre, se décompose en deux grandes étapes successives(figure 2.5) :

– “Calcul CdM consigne”, robuste par rapport à l’état des contacts (chapitre 3) ;– “Calcul couples d’actionnement” pour atteindre ce CdM de consigne (chapitre 4).

Plus précisément, on calcule dans une première étape la position du CdM de consigne per-mettant à l’hv d’être équilibré en statique par rapport à la configuration des contacts et desprises. Dans cette étape, on ne tient pas compte de la configuration articulaire du robot, l’hvse réduisant à son CdM. Ces travaux ont été en partie traités dans la thèse d’Antoine Rennuit[Ren06]. Dans une deuxième étape, on asservit la position du CdM de l’hv vers le CdM deconsigne calculé précédemment en prenant en compte la posture de l’hv.

B – Gestions des tâches :

Aux deux chapitres précédents viennent s’ajouter un troisième et dernier chapitre concer-nant la commande. Le chapitre 5 traite de la gestion des tâches, qui s’intègre à la commandede l’équilibre de l’hv. Pour augmenter l’autonomie de l’hv et enrichir ses comportements, unobjectif global (exemple : peindre) est alors décomposé en un ensemble d’actions élémentairesse traduisant en critères et contraintes pour la loi de commande. La mise en œuvre de ces com-portements ainsi que les aspects programmation sont présentés. Enfin, une gestion des prioritésentre les tâches conflictuelles est proposée.

Un graphique global du fonctionnement de la commande est présenté figure 2.6.

Figure 2.5 – Schéma global des deux étapes de la commande.

24

Page 27: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Figure 2.6 – Schéma global de la commande.

25

Page 28: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 29: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3

Définir et quantifier l’équilibre

Il est difficile de définir et quantifier l’équilibre de l’humain virtuel dans une configurationde contact et de préhension non-coplanaire. Un hv debout sur un sol plat doit avoir son CdM

au centre du polygone de sustentation. Mais dans une configuration non-coplanaire, la localisa-tion du CdM stable n’est pas évidente.

Les objectifs de ce chapitre sont de déterminer automatiquement des consignes stables (locali-sation du CdM, efforts de précontraintes) permettant à l’hv d’éventuellement se “cramponner” àson environnement. Afin d’évaluer la stabilité d’une posture, en terme de robustesse à des effortsde perturbation appliqués sur le CdM, un critère de marge de stabilité est présenté. En s’appuyantsur des résultats liés jusqu’alors à la manipulation (X. Zhu et al. [ZDL01] [ZDW03]), cette nou-velle formulation considère non pas une direction de perturbation mais un ensemble convexe deperturbations.

27

Page 30: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

Sommaire3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.1.1 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.1.2 État de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.1.2.1 Définir l’équilibre . . . . . . . . . . . . . . . . . . . . . . . . . 293.1.2.2 Quantifier l’équilibre . . . . . . . . . . . . . . . . . . . . . . . . 30

3.1.3 Contributions et positionnement . . . . . . . . . . . . . . . . . . . . . . 303.1.4 Présentation du plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.2 Centre de Masse de consigne non robuste . . . . . . . . . . . . . . . . 31

3.2.1 Présentation du problème . . . . . . . . . . . . . . . . . . . . . . . . . . 313.2.2 Contraintes égalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.2.2.1 Statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323.2.2.2 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.2.3 Contraintes inégalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.2.3.1 Localisation du Centre de Masse . . . . . . . . . . . . . . . . . 333.2.3.2 Non-glissement des contacts . . . . . . . . . . . . . . . . . . . 343.2.3.3 Saturation des efforts de préhension . . . . . . . . . . . . . . . 343.2.3.4 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

3.2.4 Optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343.2.4.1 Centre de Masse désiré . . . . . . . . . . . . . . . . . . . . . . 343.2.4.2 Forces de contact désirées . . . . . . . . . . . . . . . . . . . . . 343.2.4.3 Efforts de préhension désirés . . . . . . . . . . . . . . . . . . . 353.2.4.4 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.2.5 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353.3 Commande de posture robuste . . . . . . . . . . . . . . . . . . . . . . 36

3.3.1 Présentation générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.3.2 Introduction d’une marge de stabilité dans l’équation de la statique . . 363.3.3 Introduction de marges de stabilité dans les contraintes inégalités . . . . 373.3.4 Amplitude de perturbation maximale : formulation LP . . . . . . . . . . 373.3.5 Équilibre à volume de perturbation donné : formulation QP . . . . . . . 383.3.6 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

3.4 Prise en compte de la posture de l’hv . . . . . . . . . . . . . . . . . . 41

3.4.1 Introduction de marges de stabilité dans l’équation de la statique . . . . 413.4.2 Introduction de marges de stabilité dans les contraintes inégalités . . . . 423.4.3 Amplitude de perturbation maximale : formulation LP . . . . . . . . . . 423.4.4 Efforts de contact et efforts internes pour des perturbations admissibles :

formulation QP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.5 Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . 44

28

Page 31: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.1. INTRODUCTION

3.1 Introduction

3.1.1 Problématique

Les objectifs de ce chapitre sont multiples. Tout d’abord, déterminer la meilleure posture del’hv en fonction d’une configuration de contacts avec frottement sec et de prises connue. Cetteposture idéale est une consigne pour la commande (chapitre 4). De plus, le calcul d’efforts deprécontrainte autorise l’hv à se cramponner à l’environnement. Ainsi, ces efforts permettent àl’hv de résister du mieux possible à un ensemble d’efforts de perturbation. Enfin, un critère destabilité évalue la pertinence d’une posture. L’adhérence des contacts ainsi que les limitationsd’actionnement de l’hv sont autant de contraintes à prendre en compte.

3.1.2 État de l’art

3.1.2.1 Définir l’équilibre

P. Bidaud et al. [BBM09] proposent une définition de l’équilibre de l’hv :

"L’équilibre se définit par opposition à la chute ("perte d’équilibre"), état qui intègreégalement l’intention du sujet dans son activité physique. [. . . ] un certain nombre demoyens utilisables pour observer une instabilité (glissement ou décollement) des appuisavec l’environnement physique qui conduirait à une perte de contrôle de l’état posturalpour des humains virtuels."

Dans le cas multi-contacts coplanaires, les caractérisations les plus simples de l’équilibre sontbasées sur l’appartenance d’un point d’intérêt particulier à une zone (à définir) de l’espace opéra-tionnel. Les critères permettent de définir l’équilibre d’un hv lorsque ses deux jambes s’appuientsur un sol plat. Un système poly-articulé peut rester en équilibre statique si et seulement si laprojection verticale de son Centre de Masse (CdM) est à l’intérieur du polygone de sustentationconvexe formé par les points de contacts (R.B. McGhee et al. [MF68]). D’autre part, M. Vu-kobratovic et al. [VS74] introduisent le Zero Moment Point (zmp). Dans le cas de la marchebipède, les efforts inertiels et de Coriolis sont pris en compte. Ce point est défini comme étantl’unique point du plan où le moment du torseur des effets inertiels et de gravité exercés sur lesystème est normal au plan.

Ces approches sont difficilement généralisables au cas multi-contacts non coplanaires.

T. Bretl et al. [BRL03] [BLR05] ont traité le problème des multi-contacts non coplanairesdans le cas d’un robot constitué de trois membres. Le robot marche sur un terrain dénivelé noncoplanaire, évitant la chute par la seule action de ses pieds. Le frottement sec est pris en compte.Il change ses appuis par des mouvements quasi-statiques. Pour planifier des mouvements sûrs, ilest nécessaire de tester ces contraintes d’adhérence pour chaque posture possible à chaque pasde déplacement. Il existe des solutions : chercher explicitement les forces de contact pour chaqueposture ou pré-calculer le polygone de support et vérifier que le CdM du robot lui appartient.Cette approche est la plus proche de la nôtre.

Yizhar Or et Elon Rimon [OR06] [OR04] caractérisent l’équilibre robuste dans un environne-ment 3D sous gravité avec 3 contacts non coplanaires. La zone d’évolution du centre de masse estun prisme vertical convexe. Cette méthode n’est pas généralisable à n-contacts non coplanaires.

H. Hirukawa et al. [HHH+06] proposent un critère de stabilité portant sur les contacts d’unrobot humanoïde. La méthode vérifie s’il existe des forces de contact des pieds admissibles pour

29

Page 32: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

des efforts appliqués au CdM du robot. Ce critère peut être utilisé pour déterminer la stabilitédes contacts du pied lorsque le robot marche sur un terrain accidenté et/ou quand ses mainssont en contact avec l’environnement, avec une friction suffisante. Le critère proposé peut sesubstituer au zmp. Cependant cette approche est difficilement généralisable.

K. Harada et al. [HKKH06] [HKF+07] travaillent sur l’équilibre dynamique d’un robothumanoïde durant les tâches de manipulation. Leur robot humanoïde pousse un objet mais leurformulation est difficilement généralisable.

3.1.2.2 Quantifier l’équilibre

La robustesse peut être caractérisée par la plus “petite” perturbation permettant de déstabi-liser l’hv.

On s’intéresse à quantifier l’équilibre en terme de stabilité vis-à-vis d’un ensemble de pertur-bations. On considère souvent un sous-espace de perturbations simple à manipuler comme leshypersphères. M. Teichmann [Tei96] montre que cette quantification dépend des coordonnéeschoisies pour exprimer les efforts s’appliquant sur l’objet saisi. Il propose une métrique invariantepour évaluer la qualité d’une prise.

X. Zhu et al. [ZDL01] [ZDW03] présentent une mesure de qualité pour une préhension àplusieurs doigts, qui mesure l’amplitude maximale pour un effort qui peut être compensé parla prise dans le cas le plus contraignant. Les directions de perturbations ne sont pas traitéessimultanément mais successivement, en résolvant autant de problèmes de programmation linéaireque de perturbation. Bien que cette méthode caractérise la robustesse réalisable, elle ne donnepas la commande permettant de résister à un polytope de perturbations.

3.1.3 Contributions et positionnement

En partant des travaux de X. Zhu et al. [ZDL01] [ZDW03], un calcul de stabilité adapté auxproblématiques de l’hv a été développé. Il a l’avantage de prendre en compte un polytope deperturbation. Ainsi, un ensemble de directions de perturbation est traité simultanément et nonchaque direction une à une. Plusieurs indicateurs de robustesse sont développés. Ils déterminentl’amplitude maximale du polytope compensable par des efforts admissibles.

Un premier indicateur considère les limitations sur la zone d’appartenance du CdM. Ladétermination de la localisation du CdM robuste et des efforts de précontrainte permettent àl’hv d’adopter la meilleur commande pour résister à un ensemble de perturbations. Mais cecalcul ne considère pas les limitations motrices. La saturation des couples articulaires nécessitela connaissance de la posture de l’hv, qui est dans ce cas une inconnue. Prendre en compte commeinconnue à la fois les couples de saturation et la posture de l’hv constitue un problème fortementnon linéaire. Un second indicateur de stabilité est alors présenté, considèrant les limitationsd’actionnement avec pour pré-requis la connaissance de la posture de l’hv.

3.1.4 Présentation du plan

Dans les § 3.2 et 3.3, l’hv est réduit à son CdM. Sa configuration n’intervient pas. Dans § 3.4,la configuration de l’hv est prise en compte et supposée connue.

Dans le § 3.2, la position du CdM de consigne de l’hv, notée xconsignecdm , est calculé. À partir

d’efforts de contact désirés et d’une configuration de contact et prise connue, la position du CdM

30

Page 33: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.2. CENTRE DE MASSE DE CONSIGNE NON ROBUSTE

Figure 3.1 – Entrées et sorties du calcul de CdM de consigne.

vérifie l’équilibre statique du système et l’adhérence des contacts. Cette méthode ne prend pasen compte les marges de stabilité. Donc le CdM de consigne est stable et admissible mais nonoptimisé pour être robuste à des perturbations extérieures. On optimise des critères plus relatifsà des forces de contact désirées.

3.2 Centre de Masse de consigne non robuste

3.2.1 Présentation du problème

L’hv est assimilé dans cette partie à un solide non articulé (CdM) soumis à l’accélération depesanteur et aux efforts de contact. La configuration interne de l’hv n’est pas prise en compte.À partir d’une répartition des efforts de contact désirée, l’objectif est de déterminer la positiondu CdM équilibré statiquement dans le cas de plusieurs contacts coplanaires ou non coplanaires.Ainsi, un solide est considéré équilibré si :

– l’équation de la statique est respectée ;– le CdM calculé est dans la zone désirée : la zone plausible de localisation du CdM est

restreinte ;– ses contacts sont non glissants ;– ses efforts de préhension sont bornés.

Les conditions d’équilibre précédemment énoncées doivent être respectées. Or, la répartitiondes efforts de contact désirée ne garantit pas forcément ces conditions d’équilibre et n’est parconséquence pas prioritaire. On formalise un problème d’optimisation sous contraintes de typeQP (figure 3.1).

31

Page 34: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

Les inconnues du système sont :– xconsigne

cdm/scène : position du CdM de consigneexprimée dans le repère de la scène ;

– fc : forces de contact ;– Wp : efforts de préhension.

Elles sont regroupées en un vecteur :

Y1 =

xconsignecdm/scène

fc

Wp

(3.1)

fc =

fc(1)...

fc(nc)

Wp =

Wp(1)...

Wp(np)

avec :

• fc(i) : force du contact i – dim(fc(i)) = 3 ;

• nc : nombre de contact pris en compte par la commande ;

• Wp(i) : effort de préhension i – dim(Wp(i)) = 6 ;

• np : nombre de torseur d’effort résultant d’un actionnement de préhension prise en comptepar la commande.

Dans le cas simple, lorsque l’hv est debout sur un sol plat, il applique le même effort surchaque pied. La répartition des forces de contact est alors homogène entre les différents contactspied gauche et pied droit. Ces efforts de contact désirés font partie du critère d’optimisation. Laméthode d’optimisation mise en œuvre requiert la non-singularité de Q vis-à-vis des inconnues,par conséquent l’optimisation est également appliquée sur la position du CdM désirée expriméedans le repère scène, notée xdes

cdm/scène. Grâce aux priorités relatives aux différents critères d’op-timisation, un fort poids est mis sur le critère des efforts de contact, ce qui revient finalement àcalculer la position d’équilibre du CdM pour une répartition homogène des forces de contact.

3.2.2 Contraintes égalités

Les contraintes égalités comprennent uniquement l’équation de la statique.

3.2.2.1 Statique

On écrit l’équation de la statique d’un système soumis à la pesanteur et à des forces decontact. Le bilan des efforts est effectué au centre du repère scène.

W scènemasse +W scène

contact +W scèneprehension = 0 (3.2)

avec :

• W scènemasse : efforts de gravité s’appliquant sur le solide hv ;

• W scènecontact : efforts de contact s’appliquant sur le solide hv ;

• W scèneprehension : efforts de préhension s’appliquant sur le solide hv.

Pour exprimer W scènemasse en fonction de xconsigne

cdm/scène, les notations présentées dans l’annexe B sontutiles :

32

Page 35: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.2. CENTRE DE MASSE DE CONSIGNE NON ROBUSTE

W scènemasse = Ad−t

scèneHcdm

[

m−→g03,1

]

=

[

I3 03,3[

xconsignecdm/scène

]

I3

]

[

m−→g03,1

]

=

0 0 00 0 00 0 00 −m g 0

m g 0 00 0 0

xconsignecdm/scène +

00

−m g000

= Excdmxconsignecdm/scène + P

(3.3)

De même, il existe deux matrices permettant d’exprimer respectivement W scènecontact en fonction

de fc et W scèneprehension en fonction de Wp :

{

W scènecontact = Efc

fc

W scèneprehension = EWp Wp

(3.4)

3.2.2.2 Synthèse

Finalement, l’équation 3.2 s’écrit :

�� ��A1 Y1 + b1 = 0 (3.5)

avec A1 =[

ExcdmEfc

EWp

]

et b1 = P

3.2.3 Contraintes inégalités

Les contraintes inégalités comprennent :– la restriction de la zone du CdM ;– le non-glissement des contacts ;– la saturation des efforts de préhension.

3.2.3.1 Localisation du Centre de Masse

Afin de ne pas chercher dans tout R3, la zone plausible de localisation du CdM est restreinte.

La position du CdM doit appartenir à un cube centré sur xdes/scènecdm , ce qui se traduit par l’inégalité

suivante :

xmincdm ≤ xconsigne

cdm/scène ≤ xmaxcdm avec

xmincdm = xdes

cdm/scène − δx[

1 1 1]t

xmaxcdm = xdes

cdm/scène + δx[

1 1 1]t

(3.6)

et δx : distance maximale de déplacement du CdM par rapport au xdescdm suivant une direction.

33

Page 36: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

3.2.3.2 Non-glissement des contacts

Dans le § 2.4.1.2, la condition d’appartenance d’une force de contact au cône de frottementlinéarisé s’exprime comme une contrainte inégalité Eci

fc(i) + dci≥ 0. La généralisation de cette

contrainte au cas n-contacts s’exprime ainsi :

Ec fc + dc ≥ 0 (3.7)

3.2.3.3 Saturation des efforts de préhension

Dans le § 2.4.2, la saturation de la force et du moment de préhension Wp dans les troisdirections de l’espace revient à définir les contraintes inégalités suivantes :

|Wp| ≤Wmaxp donc

{

Wp ≤ Wmaxp

−Wp ≤ Wmaxp

(3.8)

3.2.3.4 Synthèse

En regroupant en un système les contraintes inégalités portant sur la localisation du CdM(équation 3.6), le non-glissement des contacts (équation 3.7) et la saturation de l’effort de pré-hension (équation 3.8), on obtient : �� ��C1 Y1 + d1 ≥ 0 (3.9)

avec C1 =

+I3 0 0−I3 0 00 Ec 00 0 +I(6 np)

0 0 −I(6 np)

et d1 =

−xmincdm

+xmaxcdm

dc

+Wmaxp

+Wmaxp

3.2.4 Optimisation

L’optimisation doit satisfaire trois critères :– atteindre la position désirée du CdM exprimé dans le repère scène ;– atteindre les efforts de contact désirés ;– atteindre les efforts de préhension désirés.

3.2.4.1 Centre de Masse désiré

Dans la formulation du problème, la position du CdM doit être optimisée : xdescdm/scène. À ce

critère est associée une matrice de pondération qui s’écrit Qcdm = pcdm I3 avec pcdm un scalaire.En mettant un poids faible à ce critère par rapport aux autres critères, le problème se réduit àun système ayant en entrée des forces de contact désirées, et en sortie, une position de CdM deconsigne.

3.2.4.2 Forces de contact désirées

La répartition des forces de contact désirée intervient dans le vecteur fdesc . Pour une pos-

ture érigée, le poids de l’hv est distribué entre ses pieds gauche et droit. De même, si l’hvs’appuie sur un mur, les forces de contact de la main sont spécifiées dans ce vecteur fdes

c . La

34

Page 37: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.2. CENTRE DE MASSE DE CONSIGNE NON ROBUSTE

matrice Qfcpondère les forces de contact désirées entre elles et par rapport aux autres critères

de l’optimisation.

3.2.4.3 Efforts de préhension désirés

Les efforts de préhension désirés sont spécifiés dans le vecteur W desp . Dans certains cas, ces

efforts sont minimisés. Ainsi la position du CdM de consigne qui minimise les efforts de préhensionest déterminée. La matrice QWp pondère les efforts de préhension par rapport aux différentscritères.

3.2.4.4 Synthèse

L’optimisation quadratique des critères évoqués s’exprime ainsi :

�argmin

Y1

(

1

2‖Y1 − Y des

1 ‖2Q1

)

= argminY1

(

1

2Y t

1 Q1 Y1 − Y t1 Q1 Y des

1 +1

2Y des

1tQ1 Y des

1

)

= argminY1

(

1

2Y t

1 Q1 Y1 + Y t1 r1

) (3.10)

avec Y des1 =

xdescdm/scène

fdesc

W desp

et Q1 =

Qcdm 0 00 Qfc

00 0 QWp

et r1 = −Q1 Y des1

3.2.5 Exemple

xconsignecdm/scène xdes

cdm/scène

fc(1) ≃ fdesc (1)

fc(2) ≃ fdesc (2)

fc(3) ≃ fdesc (3)

xc(1)xc(2)

xc(3)

Figure 3.2 – Exemple de calcul de la position du CdM de consigne. L’axe z est vertical.

Afin d’illustrer la formulation précédente, on étudie l’exemple d’un système à trois contactscoplanaires. La position du CdM désirée est indiquée sur la figure 3.2. La répartition des efforts

35

Page 38: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

de contact désirés est la suivante : 12 du poids du système sur le contact 1, et 1

4 sur les contacts2 et 3.

fdesc =

fdesc (1)

fdesc (2)

fdesc (3)

avec

fdesc (1) =

[

0 0 m g2

]t

fdesc (2) =

[

0 0 m g4

]t

fdesc (3) =

[

0 0 m g4

]t

(3.11)

Il n’y a pas de torseur d’effort résultant d’un actionnement de préhension dans cet exemple.Ainsi, la matrice de pondération est constituée d’une pondération du CdM et d’une pondérationdes forces de contact :

Q1 =

[

Qcdm 00 Qfc

]

avec Qcdm = 1 I3 et Qfc= 1000 I9 (3.12)

Dans cette partie, le CdM de consigne calculé est stable et admissible mais non optimisépour être robuste à des perturbations extérieures. En partant de cette formulation, les margesde stabilité sont introduites dans la section suivante.

3.3 Commande de posture robuste

3.3.1 Présentation générale

À partir de la formulation du problème précédemment énoncé (§ 3.2), un critère de stabilitéet des efforts de précontraintes sont calculés. Les marges de stabilité sont introduites comme uneffort de perturbation ∆Wpert. qui est appliqué au CdM. Cet effort peut être décomposé en uneamplitude λ et une direction normalisée ∆wpert. : ∆Wpert. = λ ∆wpert.. Pour une direction deperturbation ∆wpert. choisie, on détermine :

– un critère de stabilité : dans le § 3.3.4, l’effort de perturbation admissible maximal estcalculé. Il s’agit de l’amplitude maximale de perturbation λmax pour ∆wpert. donnée, quipeut être compensé par une variation d’efforts de contact et de préhension. Ce problèmeest mis sous la forme d’une optimisation LP ;

– les efforts de précontraintes : dans le § 3.3.5, pour une perturbation admissible in-férieure à λmax, la localisation du CdM, les efforts de contact et de préhension de pré-contrainte sont déterminés. Le problème est mis sous la forme d’une optimisation QP.A. Rennuit [Ren06] a précédemment étudié en partie cette problématique.

3.3.2 Introduction d’une marge de stabilité dans l’équation de la statique

L’équation 3.2 de la statique peut s’écrire :

Excdmxconsignecdm/scène + Efc

fc + EWp Wp + P = 0 (3.13)

Une perturbation ∆Wpert. introduite dans l’équation 3.13 entraîne une variation d’efforts decontact et de préhension respectivement notée ∆fc et ∆Wp. Seules les perturbations compenséespar un ensemble réalisable d’efforts de contact et de préhension sans que le CdM se déplace(∆xconsigne

cdm/scène = 0) sont considérées.

E1 ∆Y1 +∆Wpert. = 0 (3.14)

avec E1 =[

EfcEWp

]

et ∆Y1 =[

∆fct ∆Wp

t]t. Pour les problématiques de l’hv, ce

système (équation 3.14) est généralement sous-contraint donc il y a une infinité de solution ∆Y1.

36

Page 39: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.3. COMMANDE DE POSTURE ROBUSTE

On choisit la solution du problème d’optimisation suivant :

argmin∆Y1

1

2‖∆Y1‖2S1

tel que E1 ∆Y1 +∆Wpert. = 0

∆Y1 minimise une énergie potentielle. S1 est une matrice symétrique définie positive telle queS−1

1 est homogène à une raideur. Elle peut être construite en utilisant une priorité entre lesdifférentes forces musculaires d’effecteur. Le détail de la construction de cette matrice est laisséen perspective. On résoud analytiquement ce problème en annulant le lagrangien.�� ��∆Y1 = −E∗1 ∆Wpert. avec E∗1 = S−1

1 Et1

(

E1 S−11 Et

1

)

−1(3.15)

avec E∗1 une inverse généralisée de E1. On définit aussi E∗fcles premières 3 nc lignes de E∗1 et

E∗Wples dernières 6 np lignes de E∗1 . L’équation 3.15 s’écrit alors :

{

∆fc = −E∗fc∆Wpert.

∆Wp = −E∗Wp∆Wpert.

(3.16)

Note 3. Attention, E∗fcet E∗Wp

ne sont pas les pseudo-inverses respectives de Efcet EWp .

3.3.3 Introduction de marges de stabilité dans les contraintes inégalités

Comme précédemment évoqué, l’introduction d’une perturbation ∆Wpert. dans l’équation dela statique entraîne une variation d’efforts de contact et de préhension respectivement notée ∆fc

et ∆Wp. Les contraintes inégalités doivent être respectées. Les forces de contact fc + ∆fc sontadhérentes et les efforts de préhension Wp +∆Wp sont bornés. En utilisant les changements devariable (3.16), les équations 3.7 et 3.8 s’écrivent dorénavant :

Ec

(

fc − E∗fc∆Wpert.

)

+ dc ≥ 0

+(

Wp − E∗Wp∆Wpert.

)

+Wmaxp ≥ 0

−(

Wp − E∗Wp∆Wpert.

)

+Wmaxp ≥ 0

(3.17)

Une originalité de cette approche est de considérer simultanément plusieurs perturbations :∆wpert. peut être un vecteur comme dans le § 3.3.1, mais aussi une matrice composée de plusieursdirections de perturbation, formant un polytope de perturbation dans l’espace des torseurs d’ef-fort. On peut choisir la forme de la perturbation, explorer certaines directions plutôt que d’autres,ou toutes les directions équitablement (∆wpert. = I6). Pour les contraintes inégalités, les pertur-bations les plus contraignantes, ligne par ligne, sont retenues. Le système 3.17 se réécrit :#

"

!

Ec fc + dc −max(

Ec E∗fc∆Wpert.,~0

)

≥ 0

+ Wp +Wmaxp −max

(

E∗Wp∆Wpert.,~0

)

≥ 0

− Wp +Wmaxp +min

(

E∗Wp∆Wpert.,~0

)

≥ 0

(3.18)

3.3.4 Amplitude de perturbation maximale : formulation LP

L’amplitude maximale de perturbation admissible est calculée en résolvant un problème d’op-timisation sous contrainte de type LP.

37

Page 40: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

Les inconnues du système sont :– λ : amplitude de perturbation ;– xconsigne

cdm/scène : position du CdM de consigneexprimé dans le repère scène ;

– fc : forces de contact ;– Wp : forces et couples de préhension.

On les regroupe sous la forme d’unvecteur :

Y2 =

λ

xconsignecdm/scène

fc

Wp

(3.19)

L’équation de la statique exprimée en fonction des inconnues du problème Y2 constitue lacontrainte égalité du système :

�� ��A2 Y2 + b2 = 0 avec

{

A2 =[

0 ExcdmEfc

EWp

]

b2 = P(3.20)

Aux contraintes inégalités énoncées (équation 3.18), on ajoute la contrainte sur la zone d’ap-partenance du CdM. L’ensemble des contraintes inégalité s’écrivent :

�� ��C2 Y2 + d2 ≥ 0 (3.21)

avec

C2 =

0 + I3 0 00 − I3 0 0

−max(

Ec E∗fc∆wpert.,~0

)

0 Ec 0

−max(

E∗Wp∆wpert.,~0

)

0 0 + I6 np

+min(

E∗Wp∆wpert.,~0

)

0 0 − I6 np

d2 =[

−xmincdm

txmaxcdm

t dct Wmax

pt Wmax

pt]t

L’objectif est de calculer l’amplitude de perturbation λ maximale à l’aide de l’optimisationsuivante :

�argmax

Y2

(F2 Y2) avec F2 =[

1 03+3 nc+6 np

]

(3.22)

Les équations (3.20), (3.21) et (3.22) constituent un problème de programmation linéaire.La solution λmax de ce problème est l’amplitude maximale admissible de perturbation pourl’ensemble de directions de perturbation choisies ∆wpert..

3.3.5 Équilibre à volume de perturbation donné : formulation QP

Dans ce paragraphe, l’amplitude de perturbation est connue et notée λ′ ∈ [ 0 , λmax ]. L’ob-jectif est de calculer la position du CdM robuste à l’ensemble de perturbation ∆wpert. et lesefforts d’interaction de précontrainte qui permettront à l’hv de se “cramponner” à l’environne-ment.

38

Page 41: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.3. COMMANDE DE POSTURE ROBUSTE

Les inconnues du système sont :– xconsigne

cdm/scène : position du CdM de consigneexprimé dans le repère scène ;

– fc : forces de contact ;– Wp : forces et couples de préhension.

On les regroupe sous la forme d’unvecteur :

Y3 =

xconsignecdm/scène

fc

Wp

(3.23)

�� ��A3 Y3 + b3 = 0 avec

{

A3 =[

ExcdmEfc

EWp

]

b3 = P(3.24)

�� ��C3 Y3 + d3 ≥ 0 avec C3 =

+ I3 0 0− I3 0 00 Ec 00 0 + I6 np

0 0 − I6 np

(3.25)

et d3 =

− xmincdm

+ xmaxcdm

+ dc − max(

Ec E∗fc∆wpert.,~0

)

λ′

+ Wmaxp − max

(

E∗Wp∆wpert.,~0

)

λ′

+ Wmaxp + min

(

E∗Wp∆wpert.,~0

)

λ′

Le problème énoncé est sous-contraint sauf si λ′ = λmax. Il y a beaucoup de solutions quirespectent ces contraintes. Ainsi, comme dans le § 3.2.4, les inconnues du système sont optimisées.La solution désirée est notée Y des

3 et la matrice Q3 est la pondération du système.

�argmin

Y3

12‖Y3 − Y des

3 ‖2Q3avec

Q3 = diag(Qxcdm, Qfc

, QWp)

Y des3 =

[

xdescdm

tfdes

ct

W desp

t]t (3.26)

Le problème de programmation quadratique à résoudre est donc constitué des équations(3.24), (3.25) et (3.26).

3.3.6 Exemples

Un cas d’étude illustre l’influence de différents paramètres du calcul de stabilité (figure 3.3).Il s’agit d’une configuration de contact simple : deux contacts ponctuels sur le sol et un contactponctuel sur le mur. Sur chaque figure, la position du CdM et les forces de contact déterminéessans marge de stabilité sont indiquées en transparence. Le poids du système est réparti de ma-nière homogène entre les deux contacts du sol. Le CdM se situe au milieu de ces deux contacts.À perturbations nulles, une force nulle est trouvée pour le contact sur le mur.

Afin de considérer les marges de stabilité, on introduit deux formes de perturbation : à dis-tribution isotropique et unilatérale. Tout d’abord, en réduisant le coefficient de frottement µ,l’amplitude de perturbation maximale diminue (figure 3.3(d)). De plus, lorsque l’effort de per-turbation admissible introduit baisse (figure 3.3(e)), on obtient une position de CdM et des forcesde contact plus réalisables. Par exemple, la force de contact appliquée sur le mur diminue et leCdM se rapproche de celui calculé sans prise en compte de la robustesse.

39

Page 42: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

(a) λ′= λmax sans

la contrainte xmincdm ≤

xcdm ≤ xmaxcdm

(b) λ′= λmax (c) λ′

= λmax

(d) λ′= λmax avec un

plus petit µ(e) λ′

=λmax

2(f) λ′

= λmax

Figure 3.3 – Influences des différents paramètres dans le calcul de la marge de stabilité.

(a) La posture de l’hvn’est pas robuste.

(b) La posture de l’hvest robuste.

Figure 3.4 – En atteignant une posture robuste, l’hv se cramponne sur ses prises. Il adopte uneconfiguration répondant le mieux à toutes les directions de perturbation.

40

Page 43: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.4. PRISE EN COMPTE DE LA POSTURE DE L’HV

Enfin, le système résiste à des efforts de perturbation plus importants sans la contrainte delocalisation du CdM (figure 3.3(a)). C’est une posture plus robuste. Mais la position du CdMsolution est très éloignée de la position obtenue sans prendre en compte les marges de stabilité,ce qui pose des problèmes d’atteinte de la consigne. En effet, les limites articulaires de l’hv ainsique la configuration des contacts et prises restreignent les mouvements. Il est difficile à priori desavoir si l’hv peut atteindre une position de CdM. Il est préférable de restreindre au préalablela localisation du CdM à une zone plausible.

Jusqu’à présent, le CdM est une inconnue du problème. On calcule la position du CdMla plus robuste à des perturbations. Néanmoins, ces calculs ne permettent pas de prendre encompte les limitations d’actionnement de l’hv. Par exemple, les efforts de précontraintes ne sontpas forcément applicable par l’hv. Afin de considérer la saturation des couples d’actionnement,la posture de l’hv est prise en compte et fixe afin de formuler un problème linéaire.

3.4 Prise en compte de la posture de l’hv

3.4.1 Introduction de marges de stabilité dans l’équation de la statique

Pour la position courante de l’hv, l’amplitude de la perturbation admissible est calculée enprenant en compte les contraintes sur les couples d’actionnement. Le CdM est connu et fixe ainsique toute la configuration de l’hv. En statique, l’équation de la dynamique se réduit à :

L τ + Ctc fc + Ct

p Wp + M G = 0 (3.27)

Une perturbation ∆Wpert. introduite dans l’équation 3.27 entraîne une variation des couplesarticulaires, d’efforts de contact et de préhension respectivement notée ∆τ , ∆fc et ∆Wp. Onconsidère le système rigide : il n’y a pas de variation de configuration mais uniquement d’efforts.

E2 ∆Y2 +∆Wpert. = 0 (3.28)

avec E2 =[

L Ctc Ct

p

]

et ∆Y2 =[

∆τ t ∆fct ∆Wp

t]t. Comme dans le § 3.3.2, ce système

(équation 3.28) est généralement sous-contraint donc il y a une infinité de solutions ∆Y2 . Onchoisit la solution suivante :�� ��∆Y2 = −E∗2 ∆Wpert. avec E∗2 = S−1

2 Et2

(

E2 S−12 Et

2

)

−1(3.29)

avec E∗2 une inverse généralisée de E2. On définit aussi E∗τ les nddl premières lignes de E∗2 , E∗fcles

3 nc lignes suivantes de E∗2 et E∗Wples 6 np dernières lignes de E∗2 . L’équation 3.29 s’écrit alors :

∆τ = −E∗τ ∆Wpert.

∆fc = −E∗fc∆Wpert.

∆Wp = −E∗Wp∆Wpert.

(3.30)

Note 4. Attention, E∗τ , E∗fcet E∗Wp

ne sont pas les pseudo-inverses de Eτ , Efcet EWp respecti-

vement.

L’effort de perturbation s’applique sur le CdM de l’hv et s’exprime ainsi :

∆Wpert. = M

[

λ∆wpert.

0nddl

]

(3.31)

41

Page 44: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

3.4.2 Introduction de marges de stabilité dans les contraintes inégalités

Comme dans le § 3.3.3, les contraintes inégalités doivent être respectées. Jusqu’à présent,il n’était pas possible de prendre en compte les limitations d’actionnement car la position duCdM faisait partie des inconnues du système. Le problème aurait été fortement non linéaire.Dans cette partie, la configuration de l’hv est figée et connue. Les limitations d’actionnementsont introduites sous la forme de contraintes inégalités. Les couples d’actionnement τ + ∆τsont bornés. De plus, les forces de contact fc +∆fc sont adhérentes et les efforts de préhensionWp +∆Wp sont bornés. En utilisant les changements de variable (équation 3.30), les contraintesinégalités s’écrivent :

+(τ − E∗τ ∆Wpert.)− τmin ≥ 0

− (τ − E∗τ ∆Wpert.) + τmax ≥ 0

Ec

(

fc − E∗fc∆Wpert.

)

+ dc ≥ 0

+(

Wp − E∗Wp∆Wpert.

)

+Wmaxp ≥ 0

−(

Wp − E∗Wp∆Wpert.

)

+Wmaxp ≥ 0

(3.32)

On considère simultanément plusieurs directions de perturbations (∆wpert.). Les contraintesinégalités sont réexprimées, en retenant ligne par ligne les perturbations les plus contraignantes.Le système 3.32 se réécrit :'

&

$

%

+ τ − τmin −max(

E∗τ ∆Wpert.,~0)

≥ 0

− τ + τmax +min(

E∗τ ∆Wpert.,~0)

≥ 0

Ec fc + dc −max(

Ec E∗fc∆Wpert.,~0

)

≥ 0

+ Wp +Wmaxp −max

(

E∗Wp∆Wpert.,~0

)

≥ 0

− Wp +Wmaxp +min

(

E∗Wp∆Wpert.,~0

)

≥ 0

(3.33)

3.4.3 Amplitude de perturbation maximale : formulation LP

L’amplitude maximale de perturbation admissible est calculée en résolvant un problème d’op-timisation sous contrainte de type LP.

Les inconnues du système sont :– λ : amplitude de perturbation ;– τ : couple articulaire d’actionnement ;– fc : forces de contact ;– Wp : forces et couples de préhension.

On les regroupe sous la forme d’un vecteur :

Y4 =

λτfc

Wp

(3.34)

L’équation de la statique exprimée en fonction des inconnues du problème Y4 constitue lacontrainte égalité du système :

�� ��A4 Y4 + b4 = 0 avec

{

A4 =[

0 L Ctc Ct

p

]

b4 = M G(3.35)

42

Page 45: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.4. PRISE EN COMPTE DE LA POSTURE DE L’HV

De même, l’équation 3.33 est exprimée en fonction de Y4 et constitue la contrainte inégalitédu système :

�� ��C4 Y4 + d4 ≥ 0 (3.36)

avec

C4 =

−max(

E∗τ ∆wpert.,~0)

+ Inddl0 0

+min(

E∗τ ∆wpert.,~0)

− Inddl0 0

−max(

Ec E∗fc∆wpert.,~0

)

0 Ec 0

−max(

E∗Wp∆wpert.,~0

)

0 0 + I6 np

+min(

E∗Wp∆wpert.,~0

)

0 0 − I6 np

d4 =[

τmaxt τmaxt dct Wmax

pt Wmax

pt]t

L’objectif est de calculer l’amplitude de perturbation λ maximale à l’aide de l’optimisationsuivante :

�argmax

Y4

(F4 Y4) avec F4 =[

1 0nddl+3 nc+6 np

]

(3.37)

Les équations (3.35), (3.36) et (3.37) constituent un problème de programmation linéaire.La solution λmax de ce problème est l’amplitude maximale admissible de perturbation pourl’ensemble de directions de perturbation choisies ∆wpert..

3.4.4 Efforts de contact et efforts internes pour des perturbations admis-sibles : formulation QP

Dans ce paragraphe, l’amplitude de perturbation est connue et notée λ′ ∈ [ 0 , λmax ]. L’ob-jectif est de calculer les efforts de contact et les efforts internes qui permettront à l’hv de seprécontraindre sur l’environnement.

Les inconnues du système sont :– τ : couple articulaire d’actionnement ;– fc : forces de contact ;– Wp : forces et couples de préhension.

On les regroupe sous la forme d’unvecteur :

Y5 =

τfc

Wp

(3.38)

�� ��A5 Y5 + b5 = 0 avec

{

A5 =[

L Ctc Ct

p

]

b5 = M G(3.39)

�� ��C5 Y5 + d5 ≥ 0 avec C5 =

+ Inddl0 0

− Inddl0 0

0 Ec 00 0 + I6 np

0 0 − I6 np

(3.40)

43

Page 46: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 3. DÉFINIR ET QUANTIFIER L’ÉQUILIBRE

et d5 =

+ τmax −max(

E∗τ ∆wpert.,~0)

λ′

+ τmax +min(

E∗τ ∆wpert.,~0)

λ′

+ dc − max(

Ec E∗fc∆wpert.,~0

)

λ′

+ Wmaxp − max

(

E∗Wp∆wpert.,~0

)

λ′

+ Wmaxp + min

(

E∗Wp∆wpert.,~0

)

λ′

Le problème énoncé est sous-contraint sauf si λ′ = λmax. Il y a beaucoup de solutions quirespectent ces contraintes. Ainsi, comme dans le § 3.2.4, les inconnues du système sont optimisées.La solution désirée est notée Y des

5 et la matrice Q5 est la pondération du système.

�argmin

Y5

12‖Y5 − Y des

5 ‖2Q5avec

Q5 = diag(Qτ , Qfc, QWp)

Y des5 =

[

τdest fdesc

tW des

pt]t (3.41)

Le problème à résoudre est donc constitué des équations (3.39), (3.40) et (3.41). C’est unproblème de programmation quadratique.

3.5 Conclusion et perspectives

Possibilités offertes par les Section / Sous-Section

différentes formulations 3.2 3.3.4 3.3.5 3.4.3 3.4.4

Type d’optimisation QP LP QP LP QP

hv réduit à CdM CdM CdM Posture a Posture b

Posture connue non non c non d oui oui

Permet de calculer xconsignecdm oui e non oui non non

Prise en compte de τmax non non non oui oui

Calculer λmax f non oui non oui non

Table 3.1 – Bilan du chapitre “Définir et quantifier l’équilibre”.

a. La posture est imposée.b. La posture est imposée.c. Le CdM peut être imposé mais on préférera le calcul du § 3.4.3.d. Le CdM peut être imposé mais on préférera le calcul du § 3.4.4.e. Ne prend pas en compte le calcul des marges de stabilité ce qui est fait au § 3.3.5f. Attention : les λmax ne sont pas comparables entre eux.

Dans ce chapitre, des méthodes sont proposées pour déterminer de manière automatique laposition du CdM de consigne, et évaluer la stabilité d’une posture pour n-contacts et prisesnon coplanaires. Le tableau 3.1 synthétise l’ensemble des formulations. On dresse maintenant lesavantages et limites de cette approche.

Il faut choisir pour une résolution simple entre :– posture fixe et traitement des limites de couples d’actionnement ;– position variable du CdM et pas de traitement des limites des couples d’actionnement.

44

Page 47: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

3.5. CONCLUSION ET PERSPECTIVES

Avantages de cette approche :– détermine automatiquement un CdM

robuste à partir de n’importe quelleconfiguration de contact et de prise(non coplanaire) ;

– fournir un critère de stabilité. Lorsquel’équilibre devient précaire, il fautchanger la configuration des contacts :stratégies de reprise d’équilibre com-plexes.

Limites de cette approche :– considère l’humain virtuel comme

un système rigide, ce qui n’est pasle cas ;

– le CdM calculé n’est pas forcémentatteignable ;

– compromis entre CdM de consigneet efforts de contact désirés.

Dans ce chapitre, les efforts de perturbations sont compensés par une variation admissible desefforts d’interaction, et non par un déplacement du CdM. Considérer le système comme infinimentrigide est une hypothèse très restrictive. La détermination de la raideur articulaire, à partir d’uneraideur sur le déplacement du CdM et d’une posture connues, est laissée en perspective. Ce calculpourra être effectué dans l’hypothèse d’un petit déplacement autour de la position d’équilibre.

45

Page 48: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 49: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4

Assurer l’équilibre

L’objectif de ce chapitre est de développer un modèle de mannequin actif autonome qui per-met de simuler la gestion de l’équilibre. Perturbé, l’hv cherche à atteindre une position

d’équilibre supposée connue dans ce chapitre (calculée dans le chapitre 3 automatiquement).

On présente ici une méthode pour déterminer la commande en couples. Lors d’une reprised’équilibre, un certain nombre de règles et d’actions, de priorités variables, sont à effectuer. Lacommande fait des choix quant à ces priorités. Un cadre unifié où toutes les contraintes et ob-jectifs sont traités simultanément est proposé.

La mise en œuvre pratique de l’algorithme et le choix des heuristiques sont détaillés. Puis, onjustifie la formulation du problème employée.

Enfin, les premiers résultats de simulations sont présentés. Tout d’abord, on introduit uneinteraction (contact ou prise) de l’hv avec l’environnement au cours de la simulation dans laloi de commande. Ainsi, les comportements de l’hv sont considérablement enrichis. Ensuite,perturbé, l’hv peut adopter un réflexe “simple”. Les perturbations importantes nécessitent la miseen œuvre de réflexes “évolués” tels que faire un pas de côté ou mettre les mains en avant pour seretenir sur un mur ou des prises.

47

Page 50: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

Sommaire4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

4.1.1 État de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494.1.2 Contribution et positionnement . . . . . . . . . . . . . . . . . . . . . . . 494.1.3 Hypothèses de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

4.2 L’algorithme de commande . . . . . . . . . . . . . . . . . . . . . . . . 50

4.2.1 Présentation du problème . . . . . . . . . . . . . . . . . . . . . . . . . . 504.2.2 Contraintes égalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

4.2.2.1 Dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514.2.2.2 Accélérations des contacts . . . . . . . . . . . . . . . . . . . . . 524.2.2.3 Accélération de préhension . . . . . . . . . . . . . . . . . . . . 524.2.2.4 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

4.2.3 Contraintes inégalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544.2.3.1 Saturation des couples articulaires . . . . . . . . . . . . . . . . 544.2.3.2 Gestion des butées articulaires . . . . . . . . . . . . . . . . . . 554.2.3.3 Non-glissement des contacts . . . . . . . . . . . . . . . . . . . 564.2.3.4 Saturation des efforts de préhension . . . . . . . . . . . . . . . 564.2.3.5 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

4.2.4 Critères à optimiser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574.2.4.1 Centre de Masse désiré . . . . . . . . . . . . . . . . . . . . . . 584.2.4.2 Posture désirée . . . . . . . . . . . . . . . . . . . . . . . . . . . 594.2.4.3 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

4.3 Mise en œuvre algorithmique . . . . . . . . . . . . . . . . . . . . . . . 61

4.3.1 Accélération des contacts . . . . . . . . . . . . . . . . . . . . . . . . . . 614.3.2 Critère à optimiser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.3.3 Réglage des priorités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.3.4 Réglage des gains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

4.4 Justifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

4.4.1 Unicité de l’accélération en coordonnées généralisées de l’hv . . . . . . . 644.4.2 Contraintes de complémentarité . . . . . . . . . . . . . . . . . . . . . . . 654.4.3 Influences du nombre de ddl . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.5 Résultats et discussions . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4.5.1 Introduction de nouvelles interactions dans le calcul de la commande . . 664.5.1.1 Appuyer sur le mur . . . . . . . . . . . . . . . . . . . . . . . . 664.5.1.2 Poser le second pied . . . . . . . . . . . . . . . . . . . . . . . . 664.5.1.3 Se lever . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

4.5.2 Réflexe “simple” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684.5.2.1 Perturbation sans préhension . . . . . . . . . . . . . . . . . . . 684.5.2.2 Perturbation avec préhension . . . . . . . . . . . . . . . . . . . 70

4.5.3 Réflexe “évolué” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704.5.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704.5.3.2 Appuyer avec les mains sur l’environnement . . . . . . . . . . 714.5.3.3 Saisir une prise . . . . . . . . . . . . . . . . . . . . . . . . . . . 724.5.3.4 Faire un pas de côté . . . . . . . . . . . . . . . . . . . . . . . . 73

4.5.4 Choix du réflexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

48

Page 51: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.1. INTRODUCTION

4.1 Introduction

4.1.1 État de l’art

La commande dynamique permettant d’assurer l’équilibre est souvent dédiée à la probléma-tique de la marche. Une partie de la communauté “Animation assistée par ordinateur” introduitde plus en plus de physique dans ses modèles comme C.K. Liu et al. [LP02] [LHP05], K. Yinet al. [YLvdP07] [YCBvdP08]. V.B. Zordan et al. [ZMCF05] s’intéressent à modifier des com-portements de capture de mouvements pré-enregistrés pour traiter des situations nouvelles etimprévues comme une perturbation.

A. Goswami (Honda Research Institute) et al. [PCDG06] [RCPG07] s’intéressent à la reprised’équilibre d’un robot bipède suite à une perturbation. Cette approche permet de spécifier la po-sition du pied permettant au robot de retrouver l’équilibre. Les auteurs proposent une méthodepour apprendre le point de capture ("Capture point"). Ils utilisent un modèle de pendule inverseavec roue libre afin de prendre en compte le moment angulaire. H. Diedam et al. [DDW+08]adaptent le positionnement des pieds lors de la marche à l’aide d’une prédiction sur le zmp.

P.B. Wieber [Wie00] (inria) propose une formulation d’optimisation intéressante pour leproblème de la marche d’un robot. Les forces de contact sont prises en compte dans la loi decommande. On a repris cette formulation générale pour nos développements, avec quelques diffé-rences. De même, les travaux de Y. Abe et al. [ASP07] se rapprochent des nôtres. Ils proposentune commande interactive multi-objectifs avec des contacts frottants mais ne considèrent pas lapréhension ni l’équilibre robuste.

4.1.2 Contribution et positionnement

On propose ici un cadre unifié où toutes les contraintes sont traitées simultanément : forcesunilatérales de contact avec frottement, efforts bilatéraux de préhension et couples de commande.Les limitations d’actionnement sont prises en compte. On gère également les butées articulaires.

La réaction de l’hv à une perturbation peut être “simple”. L’hv retouve l’équilibre en conser-vant ses interactions avec l’environnement. En utilisant les marges de stabilité pour la prise dedécision, on réalise des réflexes “évolués” en changent les interactions de l’hv avec l’environne-ment. L’hv peut faire un pas de côté, s’aider d’une prise ou s’appuyer sur un mur pour retrouverson équilibre.

Une gestion de la redondance articulaire simple et efficace permet à l’hv d’adapter sa pos-ture automatiquement lorsque ses interactions évoluent. Un grand nombre de situations et decomportements sont traités en utilisant un même jeu de paramètres.

On formalise un problème d’optimisation sous contraintes, avec une approche inspirée deP.B. Wieber [Wie00] et Y. Abe et al. [ASP07].

4.1.3 Hypothèses de travail

Par rapport à la technique de “computed torque” (J.Y.S. Luh et al. [LWP80], R.J. Ander-son [And89]), on prend en compte des contraintes inégalités, comme par exemple la saturationdes couples. Les méthodes de commande par inversion de modèle sont inadaptées. La prise encompte du modèle de contact dans la commande nécessite de résoudre des contraintes égalités,inégalités et de complémentarité. C’est un problème d’optimisation complexe qui pourrait être

49

Page 52: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

résolu par une méthode de Programmation Quadratique Séquentielle (SQP). Pour pallier à cettedifficulté, on se contente de formuler un problème QP (§ 4.4.2).

Bien que la résolution du problème détermine les efforts de contact, les accélérations et lescouples internes, c’est bien uniquement ces derniers qui nous intéressent pour la commande del’hv.

4.2 L’algorithme de commande

4.2.1 Présentation du problème

La commande calcule des couples à appliquer à toutes les articulations de l’hv. Afin que l’hvsaisisse des prises ou des objets avec ses mains, un torseur d’effort résultant d’un actionnementde préhension est ajouté aux inconnues du système précédemment énoncé.

Les inconnues du système sont donc :– τ : couples articulaires ;– T : accélérations articulaires ;– fc : forces de contact ;– Wp : efforts de préhension.

Elles sont regroupés sous la formed’un vecteur :

Y =

τ

Tfc

Wp

(4.1)

Dans la suite de cette section 4.2, on formalise et complète les hypothèses de travail précé-demment énoncé :

Non-glissement des contacts : il intervient sur deux inconnues du problème : l’accéléra-tion des contacts, qui s’exprime en fonction de l’accélération articulaire à l’aide d’une jacobienne,et les forces de contact. Ces dernières doivent être dans le cône de frottement. C’est la deuxièmecondition qui garantit le non-glissement. Cette contrainte est non-linéaire. Or, on veut se rame-ner à un problème linéaire plus facile à résoudre. Pour cela, le cône de frottement est discrétisé(§ 2.4.1.2).

Couples articulaires limités : les efforts exercés par l’homme sur l’environnement sontlimités par sa force musculaire. La limitation musculaire est représentée dans la commande parune saturation des couples d’actionnement.

Efforts de préhension limités : lorsqu’il saisit une prise, l’homme applique un effort pours’aider à garder son équilibre, comme par exemple dans un bus. Dans la commande, afin decalculer correctement cet effort, l’accélération entre la main et la prise doit être nulle. Tant quela prise est saisie, les deux corps évoluent ensemble. Contrairement aux forces de frottements, lesefforts de préhension sont bornés.

Il reste à définir le moyen de retrouver une position d’équilibre.

Accélération du CdM : en atteignant un CdM stable par rapport à la configuration deses contacts et des prises saisies, l’hv trouve une position d’équilibre. Dans un système d’ordre2, c’est l’accélération du CdM qu’il faut commander. Avec un correcteur proportionnel-dérivé, laposition et la vitesse du CdM sont commandées par l’intermédiaire d’une accélération, s’asser-vissant sur des entrées de consigne.

50

Page 53: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.2. L’ALGORITHME DE COMMANDE

Tous ces choix sont formalisés sous la forme de contraintes égalités, inégalités et d’un critèreà optimiser. Un schéma de synthèse est présenté figure 4.1.

Figure 4.1 – Entrées et sorties de la commande d’hv autonome.

4.2.2 Contraintes égalités

Les contraintes égalités comprennent :– l’équation de la dynamique ;– l’accélération des contacts ;– l’accélération de préhension.

On les détaille dans la suite de cette section.

4.2.2.1 Dynamique

L’équation de la dynamique de l’hv s’exprime ainsi :

L τ − M T + Ctc fc + Ct

p Wp −N T + M G = 0 (4.2)

avec :– Ct

c : matrice exprimant les forces de contact en coordonnées généralisées ;– Ct

p : matrice exprimant les forces de préhension en coordonnées généralisées.

Les efforts extérieurs appliqués à l’hv (Ct W ) se décomposent dans la loi de commande enforce de contact et effort de préhension : Ct

c fc+Ctp Wp. Les matrices C, M et N sont des données

connues du problème, tenues à jour par le simulateur utilisé. Ainsi, les matrices Cc et Cp sontdéterminées à partir de la jacobienne C. Les matrices L et G sont connues et constantes.

L’équation de la dynamique (équation 4.2) s’exprime facilement en fonction de l’inconnue Y :

[

L −M Ctc Ct

p

]

Y +(

M G−N T)

= 0 (4.3)

51

Page 54: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

4.2.2.2 Accélérations des contacts

Dans cette partie, l’objectif est d’exprimer les conditions portant sur l’accélération des pointsde contact en fonction des inconnues du problème. On introduit les notations suivantes :

vc =

vc/contact(1)...

vc/contact(nc)

ac =

ac/contact(1)...

ac/contact(nc)

aconsigne

c =

aconsignec/contact(1)

...aconsignec/contact(nc)

(4.4)

avec :

• nc : nombre de contacts dont l’accélération est prise en compte ;

• vc/contact(i) : vitesse absolue du contact i exprimé dans le repère contact (dim(

vc/bd(i))

=3) ;

• ac/contact(i) : accélération absolue du contact i exprimé dans le repère contact ;

• aconsignec/contact(i) : accélération absolue de consigne du contact i exprimé dans le repère contact.

La contrainte portant sur l’accélération des points de contact est de la forme :

ac = aconsignec avec ∀i ∈ [1, nc] , aconsigne

c/contact(i) = 03,1 (4.5)

ac s’exprime en fonction des inconnues du système Y et plus particulièrement T :{

vc = Cc T

ac = Cc T + Cc T(4.6)

La matrice Cc, introduite dans le § 4.2.2.1, permet d’exprimer la vitesse des points de contacten fonction de T . Elle est construite à partir de la jacobienne C. La matrice Cc est la dérivée de Cc.

Grâce aux équations 4.5 et 4.6, T s’exprime en fonction de l’accélération de contacts deconsigne :

Cc T = aconsignec − Cc T (4.7)

Finalement, l’équation 4.7 s’écrit en fonction de l’inconnue Y :

[

0 Cc 0 0]

Y +(

Cc T − aconsignec

)

= 0 (4.8)

4.2.2.3 Accélération de préhension

L’accélération de préhension permet de commander la main pour atteindre une prise, suivreune trajectoire ou un objet. Le repère de préhension est le repère “corps” de la main. Dans lecas de l’hv à 32 ddl, il s’agit du repère associé au CdM du corps. Alors que l’accélération despoints de contact est asservie uniquement en position, l’accélération de préhension est asservieen position et orientation car il s’agit de corps. On introduit les notations suivantes :

vp =

vp/bd(1)...

vp/bd(np)

ap =

ap/bd(1)...

ap/bd(np)

aconsigne

p =

aconsignep/bd (1)

...aconsignep/bd (np)

(4.9)

52

Page 55: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.2. L’ALGORITHME DE COMMANDE

avec :

• np : nombre d’effecteurs dédiés à la préhension dont l’accélération est prise en compte ;

• vp/bd(i) : vitesse absolue de préhension i exprimée dans le repère “corps” (dim(

vp/bd(i))

=6) ;

• ap/bd(i) : accélération absolue de préhension i exprimé dans le repère “corps” ;

• aconsignep/bd (i) : accélération absolue de consigne de préhension i exprimé dans le repère “corps”.

La troisième contrainte porte sur l’accélération des corps de préhension. Elle est de la forme :

ap = aconsignep (4.10)

ap s’exprime en fonction des inconnues du système Y et plus particulièrement T :

{

vp = Cp T

ap = Cp T + Cp T(4.11)

La matrice Cp, introduite dans le § 4.2.2.1, permet d’exprimer la vitesse des corps de pré-hension en fonction de T . Elle est construite à partir de la jacobienne C. La matrice Cp est ladérivée de Cp.

Grâce aux équations 4.10 et 4.11, T s’exprime en fonction de l’accélération de préhension deconsigne :

Cp T = aconsignep − Cp T (4.12)

L’accélération des corps de préhension de consigne peut être un asservissement en positionet en vitesse vers une consigne (en translation et en rotation). La position de la main est définiepar le repère homogène Hp/bd et la position de consigne est définie par le repère homogène

Hconsignep/bd . L’écart en orientation entre le repère de consigne Rconsigne

p/bd et le repère courant Rp/bd

est mesuré par la partie antisymétrique de(

Rconsignep/bd

)tRp/bd (annexe B). On introduit les

notation suivantes :

∆Xp/bd =

[

rconsignep/bd − rp/bd

∆Rp/bd

]

avec[

∆Rp/bd

]

=1

2

(

(

Rconsignep/bd

)t

Rp/bd −(

Rp/bd

)t

Rconsignep/bd

)

,

(4.13)

Hconsignep/bd =

[

Rconsignep/bd rconsignep/bd

0 1

]

et Hp/bd =

[

Rp/bd rp/bd0 1

]

L’accélération de préhension de consigne s’écrit à l’aide d’un correcteur proportionnel-dérivé :

aconsignep = kp

(

∆Xp/bd

)

+ µp

(

V consignep/bd − Vp/bd

)

(4.14)

avec :

• aconsignep : accélération absolue de consigne des corps de préhension dans leur repère propre ;

• (kp, µp) : gains de l’asservissement : raideur et amortissement pour l’accélération des corpsde préhension ;

53

Page 56: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

• Vp/bd : vitesse des corps de préhension dans le repère “corps” ;

• V consignep/bd : vitesse de consigne des corps de préhension dans le repère “corps”.

Finalement, l’équation 4.14 s’écrit en fonction de l’inconnue Y :

[

0 Cp 0 0]

Y +(

Cp T − aconsignep

)

= 0 (4.15)

4.2.2.4 Synthèse

En regroupant en un système les contraintes égalités portant sur l’équation de la dynamique(équation 4.3), l’accélération des contacts (équation 4.8) et l’accélération de préhension (équation4.15), on obtient : �� ��A Y + b = 0 (4.16)

avec A =

L −M Ctc Ct

p

0 Cc 0 00 Cp 0 0

et b =

M G−N T

Cc T − aconsignec

Cp T − aconsignep

4.2.3 Contraintes inégalités

Dans le problème, plusieurs contraintes inégalités sont prises en compte. Tout d’abord, lescouples de commande sont saturés pour représenter la limitation d’actionnement du robot.

De plus, une deuxième contrainte inégalité provient des butées articulaires. En effet, on nepeut pas les ignorer pour le calcul des couples de commande, sous peine de trouver des couplesmoteur susceptibles de violer ces limites. La gestion des butées articulaires porte sur les accélé-rations articulaires et est expliqué au § 4.2.3.2.

Pour garantir le non-glissement des contacts, il faut d’une part contraindre les efforts decontact dans le cône de frottement. Afin de formaliser un QP, cette contrainte est exprimée demanière linéaire, c’est pourquoi le cône de frottement est discrétisé.

L’hv peut appliquer des efforts de préhension lorsqu’il a au préalable saisi une prise ou unobjet. En théorie, l’actionnement articulaire, qui est saturé, limite indirectement les efforts ap-plicables en bout de chaîne. Cependant, la saturation des couples est difficilement quantifiableet volontairement surestimée. Afin de remédier à cette mauvaise connaissance des couples d’ac-tionnement maximaux, on sature également les efforts de préhension.

En résumé, les contraintes inégalités comprennent :– la saturation des couples articulaires ;– la gestion des butées articulaires ;– le non-glissement des contacts ;– la saturation des efforts de préhension.

4.2.3.1 Saturation des couples articulaires

On exprime cette contrainte de la manière suivante :

54

Page 57: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.2. L’ALGORITHME DE COMMANDE

τmin ≤ τ ≤ τmax ⇔{

τ ≤ τmax

τ ≥ τmin(4.17)

Cette contrainte sur les couples moteurs (équation 4.17) s’exprime facilement en fonction del’inconnue Y :

[

−Inddl0 0 0

+Inddl0 0 0

]

Y +

[

+τmax

−τmin

]

≥ 0 (4.18)

Note 5. Il est très difficile de trouver dans la littérature des données concernant les couplesmaximaux pour chaque articulation de l’homme. De plus, ces couples dépendent de différentsparamètres, en particulier des angles articulaires.

4.2.3.2 Gestion des butées articulaires

(a) Posture initiale. (b) Posture finale : la loi decommande gère les butées arti-culaires. La main gauche atteintla poignée en position et orien-tation.

(c) Posture finale : la com-mande ne gère pas les butées ar-ticulaires. La main gauche n’at-teint pas complètement la poi-gnet.

Figure 4.2 – Résultat de simulation. À partir d’une posture initiale, l’hv a pour consigne desaisir une prise avec sa main gauche. La gestion des butées articulaires permet à l’hv d’atteindreen position et orientation la cible.

Une méthode simple permettant de prendre en compte les butées articulaires dans la com-mande est présentée (figure 4.2). À chaque instant, l’inégalité suivante doit être respectée :

∀i ∈ [0, nddl] , qi ∈[

qmini , qmax

i

]

(4.19)

Cette inégalité porte sur l’angle du ddl qi mais elle entraîne une inégalité sur l’accélérationarticulaire du ddl concerné, qi. En effet, qi s’obtient par intégration numérique à partir de qi. Àun instant k de la simulation, l’accélération articulaire de l’instant k+1 est obtenue à partir desschémas d’intégrations (annexe C.3) :

qi(k + 1) = qi(k) + qi(k + 1) dt

qi(k + 1) = qi(k) + qi(k + 1) dt

}

=⇒ qi(k+1) = qi(k)+qi(k)dt+qi(k+1)dt2 (4.20)

En remplaçant (4.20) dans (4.19), on obtient :

55

Page 58: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

qmini ≤ qi(k + 1) ≤ qmax

i =⇒

qi(k + 1) ≤ qmaxi − qi(k)− qi(k) dt

dt2

qi(k + 1) ≥ qmini − qi(k)− qi(k) dt

dt2

(4.21)

La concaténation des nddl contraintes (4.21) donne la contrainte suivante :

Lt T ≤ qmax − q − q dt

dt2

Lt T ≥ qmin − q − q dt

dt2

(4.22)

Les contraintes sur les butées articulaires (équation 4.22) s’exprime en fonction de l’inconnueY :

[

0 −Lt 0 00 +Lt 0 0

]

Y +

[

+ qmax−q−q dtdt2

− qmin−q−q dtdt2

]

≥ 0 (4.23)

4.2.3.3 Non-glissement des contacts

La condition de non-glissement s’exprime comme un ensemble de contraintes inégalités. Laforce de contact calculée dans la commande doit être dans le demi-espace défini par chacunedes facettes du cône de frottement. Ainsi, pour la k-ème force de contact, la condition de non-glissement est :

∀k ∈ [1, ncf ], ∀i ∈ [1, na], Ekci

fc(k) + dkci≥ 0 (4.24)

avec :

• ncf : nombre de contacts établis ;

• na : nombre de facettes du cône de frottement.

Ekci

fc(k) + dkci

correspond à la distance entre fc(k) et la i-ème facette orientée. Une écritureplus synthétique de l’ensemble des contraintes de non-glissement est :

Ec fc + dc ≥ 0 (4.25)

Les contraintes sur les forces de contact (équation 4.25) s’expriment en fonction de l’inconnueY :

[

0 0 Ec 0]

Y + dc ≥ 0 (4.26)

Note 6. Si les forces de contact s’expriment dans leur repère de contact respectif, dc = 0.

4.2.3.4 Saturation des efforts de préhension

La saturation des efforts de préhension (chapitre 2.4.2) s’exprime ainsi :

|Wp| ≤Wmaxp ⇔

{

Wp ≤ Wmaxp

−Wp ≤ Wmaxp

(4.27)

56

Page 59: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.2. L’ALGORITHME DE COMMANDE

Soit npf , le nombre d’effort de préhension calculé, les contraintes (équation 4.27) s’exprimenten fonction de l’inconnue Y :

[

0 0 0 −I6 npf

0 0 0 +I6 npf

]

Y +

[

+Wmaxp

+Wmaxp

]

≥ 0 (4.28)

4.2.3.5 Synthèse

En regroupant en un système les contraintes inégalités portant sur la saturation des couplesarticulaires (équation 4.18), les limites articulaires (équation 4.23), les forces de contact (équation4.26) et la saturation des efforts de préhension (équation 4.28), on obtient :�� ��C Y + d ≥ 0 (4.29)

avec C =

−Inddl0 0 0

+Inddl0 0 0

0 +Lt 0 00 −Lt 0 00 0 Ec 00 0 0 −I6 npf

0 0 0 +I6 npf

et d =

+τmax

−τmin

+ qmax−q−q dtdt2

− qmin−q−q dtdt2

dc

+Wmaxp

+Wmaxp

4.2.4 Critères à optimiser

Après avoir détaillé les contraintes, on s’intéresse à la définition du critère à optimiser. Il apour rôle de permettre à l’hv d’atteindre une position d’équilibre connue (calculée dans le cha-pitre 3). Cette position est la position du CdM stable par rapport à la configuration des contactset prises. En ce qui concerne les inconnues, l’accélération du CdM, qui s’exprime à l’aide d’unejacobienne en fonction de l’accélération en coordonnées généralisées de l’hv, est optimisée. L’ac-célération désirée du CdM est obtenue par un asservissement proportionnel-dérivé vers la positiondu CdM de consigne.

(a) Avec le critère sur la pos-ture.

(b) Sans le critère sur la pos-ture.

Figure 4.3 – Optimisation de la posture de l’hv : influence de l’asservissement vers une posturede référence.

57

Page 60: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

En optimisant uniquement le CdM, l’hv peut adopter une grande variété de postures, à causede la redondance articulaire. Afin de mieux maîtriser cette indétermination, un second critère,portant sur la posture, est ajouté (figure 4.3). Le critère final à optimiser est la somme de deuxcritères :

– l’asservissement vers le CdM de consigne ;– l’asservissement vers une posture de référence.

4.2.4.1 Centre de Masse désiré

La position du CdM est optimisée en minimisant l’écart entre l’accélération réelle du CdMnoté acdm/bd et l’accélération désirée ades

cdm/bd. Dans ce cas, le repère “corps” dans lequel estexprimé le CdM est le corps racine.

adescdm/scène = kcdm

(

xconsignecdm/scène − xcdm/scène

)

+ µcdm

(

vconsignecdm/scène − vcdm/scène

)

adescdm/bd = Rt

racine adescdm/scène

(4.30)

avec :

• (kcdm, µcdm) : raideur et amortissement pour l’accélération du CdM ;

• xconsignecdm/scène : position du CdM de consigne, stable par rapport à la configuration des contacts

(§ 3.2.1) ;

• vconsignecdm/scène : vitesse du CdM de consigne. Il s’agit de la vitesse absolue de l’environnement

en interaction avec l’hv lorsqu’il n’est pas perturbé. En générale, cette vitesse est nulle ;

• Rracine : orientation du corps racine par rapport au repère scène.

acdm/bd s’exprime en fonction des inconnues du système, c’est à dire T (annexe B.5.2) :{

vcdm/bd = Ccdm T

acdm/bd = Ccdm T + Ccdm T(4.31)

avec :

• Ccdm : matrice exprimant la vitesse du CdM en fonction des vitesses articulaires ;

• Ccdm : matrice dérivée de Ccdm.

À l’aide de l’équation 4.31, le critère sur l’accélération du CdM s’écrit :

argminT

[

1

2‖acdm/bd − ades

cdm/bd‖2Qcdm

]

= . . .

argminT

[

1

2‖Ccdm T −

(

adescdm/bd − Ccdm T

)

‖2Qcdm

]

= . . .

argminT

[

1

2T t

(

Ctcdm Qcdm Ccdm

)

T − T t Ctcdm Qcdm

(

adescdm/bd − Ccdm T

)

]

= . . .

argminT

[

1

2T t Qcdm T + T t rcdm

]

=

(4.32)

avec :

58

Page 61: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.2. L’ALGORITHME DE COMMANDE

• Qcdm = pcdm Ctcdm I3 Ccdm ;

• rcdm = −pcdm Ctcdm I3

(

adescdm/bd − Ccdm T

)

;

• pcdm : poids du critère accélération du CdM.

4.2.4.2 Posture désirée

L’optimisation de la configuration de l’hv se compose en deux parties : le positionnement duthorax et une posture de référence.

On exprime la consigne désirée en accélération du thorax à l’aide d’un asservissement enposition et en vitesse vers une consigne (en translation et en rotation). L’écart de position s’écrit :

∆Xthorax/bd =

[

rdesthorax/bd − rthorax/bd

∆Rthorax/bd

]

(4.33)

avec[

∆Rthorax/bd

]

=1

2

(

(

Rdesthorax/bd

)tRthorax/bd −

(

Rthorax/bd

)tRdes

thorax/bd

)

,

Hdesthorax/bd =

[

Rdesthorax/bd rdesthorax/bd

0 1

]

et Hthorax/bd =

[

Rthorax/bd rthorax/bd

0 1

]

avec :

• Hthorax/bd : repère homogène définissant la position courante du thorax ;

• Hdesthorax/bd : repère homogène définissant la position désirée du thorax ;

• bd : repère “corps”, ici le thorax.

Après de nombreux essais, la configuration la plus réaliste est obtenue lorsque le thoraxest au-dessus du CdM, à une hauteur constante (h) qui n’évolue pas au cours de la simulation.L’orientation du thorax doit être verticale. En fonction de la position des pieds, on calcule l’angleβ, orientation du thorax suivant l’axe vertical. Ces heuristiques permettent de générer la configu-ration qui s’adapte automatiquement aux changements de l’environnement et aux configurationsde contacts et de préhensions. Hdes

thorax/bd s’écrit :

Hdesthorax/bd =

+cos(β) − sin(β) 0 xconsignecdm/bd (1)

+ sin(β) + cos(β) 0 xconsignecdm/bd (2)

0 0 1 h0 0 0 1

(4.34)

Dans la suite des calculs, on considère que le thorax est sur la première branche mais pasforcément le premier corps (corps libre qui ne peut pas être actionné). L’accélération désirée duthorax s’exprime alors :

adesthorax/bd = kthorax

(

∆Xthorax/bd

)

+ µthorax

(

V desthorax/bd − Vthorax/bd

)

(4.35)

avec :

• (kthorax, µthorax) : raideur et amortissement de l’asservissement du thorax ;

59

Page 62: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

• Vthorax/bd : vitesse réelle du thorax ;

• V desthorax/bd : vitesse désirée du thorax.

Avec la redondance, il est également nécessaire de donner une posture de référence pour tousles degrés de liberté. La posture initiale de l’hv au début de la simulation sert le plus souventde référence. L’accélération articulaire désirée s’exprime alors :

adesddl = kddl

(

qdesddl − qddl)

+ µddl

(

qdesddl − qddl)

(4.36)

avec :

• (kddl, µddl) : raideur et amortissement de l’asservissement des ddl de l’hv ;

• qdesddl : configuration articulaire désirée ;

• qdesddl : vitesse articulaire désirée.

Finalement, les deux asservissements (équation 4.35) et (équation 4.36) sont regroupés en unseul, noté ades

T:

adesT

=

[

adesthorax/bd

adesddl

]

(4.37)

L’accélération réelle de la configuration de l’hv s’écrit :

aT =

[

athorax

addl

]

avec

vthorax = Cthorax T

athorax = Cthorax T + Cthorax T

addl = Lt T

(4.38)

avec :

• Cthorax : matrice constituée des 6 premières lignes de C, exprimant la vitesse du thorax enfonction de T ;

• Cthorax : matrice dérivée de Cthorax.

Finalement, l’équation 4.38 s’écrit :

aT =

[

Cthorax

Lt

]

T +

[

Cthorax

0

]

T

= AT T +BT T

(4.39)

À l’aide de l’équation 4.39, le critère sur l’accélération de configuration s’écrit :

argminT

[

1

2‖aT − ades

T‖2Qposture

]

= . . .

argminT

[

1

2‖AT T −

(

adesT−BT T

)

‖2Qposture

]

= . . .

argminT

[

1

2T t

(

AtT

Qposture AT

)

T − T t AtT

Qposture

(

adesT−BT T

)

]

= . . .

argminT

[

1

2T t QT T + T t rT

]

=

(4.40)

60

Page 63: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.3. MISE EN ŒUVRE ALGORITHMIQUE

avec :

• QT = AtT

Qposture AT

• rT = −AtT

Qposture

(

adesT−BT T

)

4.2.4.3 Synthèse

Les deux optimisations sur T sont regroupées :– argmin

T

12 T t Qcdm T + T t rcdm

– argminT

12 T t QT T + T t rT �

�argmin

T

12 T t Q T + T t r (4.41)

avec Q = Qcdm +QT et r = rcdm + rT

4.3 Mise en œuvre algorithmique

La formulation du problème a été présentée rigoureusement dans le paragraphe précédent.En pratique, des heuristiques, approximations et méthodes complémentaires sont nécessaires.

4.3.1 Accélération des contacts

Environnement

∆xic/contact

Contact iappartenantau mannequin

Figure 4.4 – Distance au contact sphère/parallélépipède.

Cette section présente une méthode de commande gérant les décollements de contact. Dansla simulation, les contacts peuvent être rompus. Ce comportement vient en partie du fait que lescontacts sont rigides (sphère/plan). On distingue dans la loi de commande deux cas :

– collision : dans la simulation, l’hv est en collision avec l’environnement (exemple : lasphère touche le plan). L’accélération de consigne de commande est nulle ;

aconsignec/contact(i) = 03,1 (4.42)

61

Page 64: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

– non-collision : dans la simulation, l’hv n’est pas en collision avec l’environnement (fi-gure 4.4). On asservit le contact vers l’environnement le plus proche avec un proportionnel-dérivé.

aconsignec/contact(i) = kc

(

∆xic/contact

)

+ µc

(

vconsignec/contact(i)− vc/contact(i)

)

(4.43)

avec :

• (kc, µc) : raideur et amortissement pour l’accélération des corps contacts ;

• ∆xic/contact : distance minimale entre la sphère et le plan exprimé dans le repère de

contact. Les contacts vont toujours chercher à s’établir avec l’environnement le plusproche ;

• vc/contact (i) : vitesse du contact i exprimée dans le repère contact ;

• vconsignec/contact(i) : vitesse de consigne du contact i exprimée dans le repère contact. Dans

la majorité des cas, l’environnement de l’hv est immobile. La vitesse de consigne estalors nulle.

4.3.2 Critère à optimiser

La méthode d’optimisation que l’on a mise en œuvre requiert la non-singularité de Q vis-à-visdu vecteur des inconnues, par conséquent l’optimisation est également appliquée sur τ , fc et Wp.Il existe également une raison physique à cette optimisation, à savoir que l’on préfère le “moindreeffort”, en particulier pour économiser les moteurs du robot. Ainsi, les critères de minimisationsuivants sont effectués :

– minimisation des couples articulaires : τdes = 0(nddl,1) avec Qτ = pτ Inddl;

– minimisation des forces de contact : fdesc = 0(3 ncf ,1) avec Qfc

= pfcI3 ncf

;

– minimisation des efforts de préhension : W desp = 0(3 npf ,1) avec QWp = pWp I3 npf

.

L’équation 4.41 se complète donc en :�

�argmin

Y

12Y t Q Y + Y t r (4.44)

avec Q =

Qτ 0 0 00 Qcdm +Qposture 0 00 0 Qfc

00 0 0 QWp

et r =

−Qτ τdes

+rcdm + rT−Qfc

fdesc

−QWp W desp

4.3.3 Réglage des priorités

À ce stade, le réglage des priorités est effectué par les valeurs relatives des poids de la matriceQ. Au § 5.3, on présente les grandes lignes d’une autre méthode qui s’apparente aux projecteursdynamiques.

Un poids très faible est affecté aux critères (τdes, fdesc , W des

p ). Cependant, le poids est nonnul pour des problèmes de convergence de l’algorithme sinon la matrice Q n’est pas symétriquedéfinie positive. Un premier réglage des poids est proposé :

pcdm > pposture ≫ pτ ≃ pfc≃ pWp (4.45)

L’hv doit atteindre son CdM de consigne pour conserver l’équilibre, ce qui explique que lecritère d’optimisation du CdM est plus prioritaire que la posture. Si pτ , pfc

ou pWp sont trop

62

Page 65: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.3. MISE EN ŒUVRE ALGORITHMIQUE

importants par rapport à pcdm et pposture, l’équilibre est gêné par les autres critères à satisfaire.Les hypothèses portant sur τ , fc et Wp ont été au préalable formalisés comme des contraintes.Le CdM et la configuration disposent en priorité de l’optimisation.

Dans l’optimisation d’une posture, une pondération relative est effectuée entre d’une part laposition–orientation du thorax et d’autre part la configuration articulaire. La position désiréedu thorax est mise à jour au fur et à mesure de la simulation. Elle dépend du CdM de consigne,qui lui-même dépend de la configuration des contacts. Par contre, on choisit de ne pas mettre àjour la configuration articulaire désirée. C’est pourquoi une pondération relative plus forte estdonnée au critère sur la position du thorax. En contrepartie, pour que le thorax puisse évoluerfacilement, il est préférable de mettre une plus faible pondération sur les autres ddl. Sans cettepondération, la solution moyenne trouvée n’est pas satisfaisante.

Qposture = pposture

[

Qthorax 00 Qddl

]

(4.46)

avec :

• pposture : coefficient de pondération global de la posture ;

• Qthorax : matrice de pondération relative des 6 ddl du thorax ;

• Qddl : matrice de pondération relative des nddl.

Enfin, on pondère aussi les degrés de liberté entre eux, ce qui influence le comportement durobot. Ainsi, les degrés de liberté avec une plus forte pondération atteignent en priorité leurconsigne alors que les autres sont utilisés pour atteindre le CdM de consigne.

4.3.4 Réglage des gains

La loi de commande contient de nombreux asservissements. La méthode présentée ici permetun premier réglage des gains.

L’équation du mouvement d’un système du second ordre s’écrit :

x(t) + 2 ω0 ξ x(t) + ω20 x(t) = 0 (4.47)

avec :

• ω0

[

rad.s−1]

: pulsation propre non amortie ;

• ξ : coefficient d’amortissement.

La période propre T0 est la durée en secondes d’une oscillation du système :

T0 =2 π

ω0(4.48)

L’équation d’un système masse–ressort amorti (équivalent à un correcteur proportionnel dé-rivé) écarté de sa position d’équilibre est :

m x(t) + µ x(t) + k x(t) = 0 (4.49)

avec :

63

Page 66: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

• m [kg] : masse du système ;

• k[

N.m−1]

: raideur du système ;

• µ[

N.s.m−1]

: amortissement du système.

Un régime apériodique critique (ξ = 1) est recherché. Ce régime correspond à la limite durégime apériodique sans dépassement. C’est le plus rapide des régimes sans dépassement. Leséquations 4.47, 4.49 et ξ = 1 donnent :

ω0 =

k

m=

µ

2m(4.50)

Exemple d’application : détermination des asservissements pour l’accélération de consigne duCdM. Dans cet exemple, la masse de l’hv est de 70 kg. Une période propre de 2.5 s est suffisante.

{

k = m(

2 πT0

)2= 442 N.m−1

µ = 2m 2 πT0

= 352 N.s.m−1(4.51)

4.4 Justifications

4.4.1 Unicité de l’accélération en coordonnées généralisées de l’hv

Problématique : dans le cas où tous les contacts sont établis et le restent dans la simulation,l’objectif de ce paragraphe est de démontrer que l’accélération en coordonnées généralisées durobot calculé dans la loi de commande correspond à celle se produisant dans la simulation sousl’effet de τ .

Hypothèses : tout d’abord, on s’intéresse uniquement aux interactions unilatérales de typecontact. Les torseurs d’effort résultant d’un actionnement de préhension ne sont pas pris encompte dans cette démonstration. La condition “contacts établis dans la simulation” se traduitpar l’égalité suivante :

asimulationc = 0⇐⇒ Cc T + Cc T = 0 (4.52)

avec Cc, la matrice exprimant les vitesses de contact en fonction de T .

De plus, cette condition implique que des efforts de perturbation ne déstabilisent pas l’hv.Donc, du point de vue de la simulation, les efforts de perturbation n’interviennent pas dansl’équation de la dynamique qui s’écrit :

M T = L τ + Ctc f simulation

c −N T + M G (4.53)

Démonstration :M est symétrique définie positive donc l’équation 4.53 s’écrit :

T = M−1(

L τ + Ctc f simulation

c −N T + M G)

(4.54)

T est définie de manière unique si M−1 Ctc f simulation

c est définie de manière unique.

En multipliant l’équation 4.54 par Cc, on obtient :

Cc T = Cc M−1(

L τ + Ctc f simulation

c −N T + M G)

(4.55)

64

Page 67: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.4. JUSTIFICATIONS

Soit(

Cc M−1 Ctc

)

f simulationc = Cc T −

(

Cc M−1 L)

τ + Cc M−1(

N T − M G)

(4.56)

En remplaçant Cc T par −Cc T , l’équation 4.56 s’écrit :

Cc M−1 Ctc f simulation

c = −Cc T −(

Cc M−1 L)

τ + Cc M−1(

N T − M G)

= ν(4.57)

avec ν : vecteur déterminé. L’équation 4.57 implique M−1 Ctc f simulation

c défini de manière unique.Par conséquence, T est définie de manière unique.

Conclusion : Les efforts de contact calculés par la simulation peuvent être différents desefforts de contact calculés dans la loi de commande. Cependant, l’accélération T du robot calculéepar la simulation est identique à celle calculé par le QP. Il y a unicité du mouvement de l’hv.

4.4.2 Contraintes de complémentarité

En théorie, la relation entre la vitesse normale au contact et la force au contact est soumisesaux contraintes de complémentarité suivantes :

– maintien du contact : la vitesse normale au contact est nulle, une force au contact peutalors s’appliquer ;

– rupture du contact : la vitesse normale au contact est non nulle, la force au contact doitêtre nulle.

Or, les conditions de complémentarité sont difficiles à mettre en œuvre (convergence, tempsde calcul . . . ) et ne sont pas prise en compte dans notre formulation de la commande. On gèreexplicitement la prise en compte des accélérations et des forces de contact à chaque instantk de la simulation. Dans la commande, on impose une accélération de contact nulle, évitantl’interpénétration, le glissement ou la rupture des contacts. Suite à une perturbation, une rupturede contact peut se produire. Dans ce cas, l’effort de contact n’est pas calculé par la loi decommande (tableau 4.1).

Instant Bloc Bloc commandesimulation accélération contact (§ 4.3.1) force de contact

k − 1 collision nulle calculéek non-collision non-nulle non-calculée

Table 4.1 – Rupture d’un contact à l’instant k. Les inconnues de la commande s’adapte aunouvel état des contacts.

4.4.3 Influences du nombre de ddl

L’hv 32 ddl (figure 4.5(a)) a été présenté dans le § 2.2.2. En pratique, on a aussi utiliséd’autres modélisations. L’hv 36 ddl (figure 4.5(b)) a 2 ddl supplémentaires à chaque clavicule,ce qui permet une mobilité de l’épaule. D’autre part, les dimensions, les masses et la position desliaisons cinématiques proviennent de HuMAns [INR06]. C’est ce mannequin qui est utilisé pourla reconstruction de mouvement du chapitre 6. Par construction, son corps racine est l’abdomen,ce qui a permis de tester le cas où le corps racine est un autre corps que le thorax. L’hv 49ddl (figure 4.5(c)) est tiré d’un personnage fantaisiste. Sa colonne vertébrale est constituée de 4liaisons rotules (succession de 3 liaisons pivots). Chaque ddl a des butées articulaires. De plus,

65

Page 68: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

(a) 32 ddl (b) 36 ddl (c) 49 ddl (d) 72 ddl

Figure 4.5 – Les différents types d’hv.

la cheville est dédoublée. Enfin, l’hv 72 ddl (figure 4.5(d)) est identique à l’hv 32 ddl, avec deuxmains à 20 ddl. La commande s’arrête juste après les poignets, le mouvement des doigts estlaissé à un simple contrôleur PD ou une commande de manipulation plus adapté. Dans tous lescas, on utilise les mêmes asservissements, les mêmes priorités et l’on a testé une large gamme desimulations. Les comportements obtenus sont similaires.

4.5 Résultats et discussions

Les simulations ont été réalisées avec le moteur physique Arboris développé par Alain Mi-caelli 1 et Sébastien Barthélémy 2 en langage Matlabr. L’élaboration du modèle dynamiqueest tiré de Park [Par05] et le formalisme des contacts avec frottements secs s’inspire de L. Tonget M.Y. Wang [TW05].

4.5.1 Introduction de nouvelles interactions dans le calcul de la commande

4.5.1.1 Appuyer sur le mur

Afin d’appliquer un effort sur un mur, l’hv atteint une posture et un CdM lui permettantd’être équilibré statiquement (figure 4.6). Il s’agit d’une tâche en multi-contacts non coplanaires.Les efforts de contact de la main sont ajoutés aux inconnues du problème. De plus, les contraintesportant sur ces efforts ainsi que sur l’accélération des contacts de la main sont ajoutés aux autrescontraintes.

4.5.1.2 Poser le second pied

Dans cet exemple, l’hv n’a qu’un pied au sol au début de la simulation (figure 4.7). Danscette configuration, il n’est pas équilibré. Il atteint une posture stable en posant le second pied ausol. L’hv établie ses contacts sur l’environnement le plus proche et, en même temps, à atteindreson CdM de consigne. Celui-ci est calculé en considérant que l’hv repose sur ses deux pieds. Enquelque sorte, l’hv anticipe son nouvel appui. Il est important de traiter ces deux aspects enmême temps pour avoir un comportement stable.

Note 7. Le calcul du CdM de consigne nécessite la connaissance des coordonnées des points decontact. Tous les contacts des pieds sont considérés comme établis dans ce calcul. Si ce n’est pasle cas dans la simulation, on utilise la projection du contact sur l’environnement (ici, un planhorizontal).

1. cea/list2. isir

66

Page 69: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.5. RÉSULTATS ET DISCUSSIONS

CdM réel

CdM consigne

Force réelle

Force de consigne

Figure 4.6 – L’hv appuie sur le mur à l’aide de sa main.

Figure 4.7 – L’hv pose le pied droit.

67

Page 70: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

4.5.1.3 Se lever

(a) (b) (c) (d) (e)

Figure 4.8 – L’hv se lève.

Dans l’exemple de la figure 4.8, on met en œuvre une loi de commande permettant à l’hvde se lever. On se contente d’assurer l’équilibre quasi-statique du mouvement qui se décomposeen deux temps. Tout d’abord, le CdM de consigne est calculé uniquement avec les appuis despieds. L’hv s’avance pour atteindre ce CdM de consigne (figure 4.8(b)). Puis, la contrainte surl’accélération du contact des fesses est désactivée (figure 4.8(c)). L’hv peut alors se lever.

L’introduction de nouvelles interactions dans la formulation de la loi de commande permetd’enrichir considérablement le comportement de l’hv. Ainsi, les interactions de l’hv avec l’envi-ronnement évoluent au cours de la simulation. Le chapitre 3 permet de mettre à jour la positiondu CdM de consigne, stable par rapport à la nouvelle configuration de contact ou de prise.

À présent, pour ce qui est des réactions à des perturbations, l’hv peut adopter deux stratégiespour s’équilibrer, si la perturbation est :

– faible : il s’équilibre à l’aide de ses contacts et de ses prises courants. On parle de réflexe“simple” ;

– forte : il met en œuvre une stratégie de retenue où il change la position de ses contacts etde ses prises. On parle de réflexe “évolué”.

4.5.2 Réflexe “simple”

4.5.2.1 Perturbation sans préhension

Les perturbations s’appliquent sur un temps très court (100 ms), sur l’environnement de l’hvou directement sur l’hv. S’il le peut, l’hv s’équilibre et atteint une nouvelle position d’équilibre.

Dans l’exemple de la figure 4.9, l’hv subit un effort perturbateur au niveau de l’épaule. Ceteffort est représenté par une flèche rouge.

Dans les exemples des figures 4.10 et 4.11, c’est le sol qui est perturbé. La perturbation estune translation de 15 cm, en quelques dizaines de ms, avant de s’arrêter brutalement. Pendant ledéplacement du support, l’hv applique tout son poids sur la jambe droite (figure 4.10). Une foisle mouvement du sol stoppé, son pied gauche glisse quelques instants. Puis, l’hv peut s’équilibrer.

Dans l’exemple de la figure 4.11, pendant le déplacement du sol, l’hv lève légèrement l’avantdes pieds. Comme la perturbation n’est pas explicitement connue par la loi de commande, il y arupture de contact.

68

Page 71: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.5. RÉSULTATS ET DISCUSSIONS

(a) Équilibre (b) Perturba-tion

(c) Fin pertur-bation

(d) Gestionéquilibre

(e) Retouréquilibre

Figure 4.9 – Perturbation directement appliquée à l’hv.

(a) Translation dusupport

(b) Glissement dupied gauche

(c) Fin perturbation (d) Gestion équi-libre

(e) Retour équilibre

Figure 4.10 – Perturbation de l’hv : déplacement médial / latéral du sol.

(a) Translation support (b) Fin perturbation (c) Gestion équilibre (d) Retour équilibre

Figure 4.11 – Perturbation de l’hv : déplacement postérieur / antérieur du sol.

69

Page 72: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

4.5.2.2 Perturbation avec préhension

Dans l’exemple de la figure 4.12, les efforts de préhension font partie intégrante des inconnuesdu système à résoudre. L’hv utilise cette prise pour s’aider à retrouver son équilibre. Suivant lessollicitations, l’hv tire, pousse ou applique un moment sur la prise.

Figure 4.12 – Simulation du comportement d’un passager dans un bus.

4.5.3 Réflexe “évolué”

4.5.3.1 Introduction

Figure 4.13 – Réflexe “simple” : l’hv maintient ses pieds au sol. La perturbation ne peut pasêtre compensé avec cette configuration de contacts. L’hv pert l’équilibre.

Lorsqu’il s’agit de mettre en œuvre un réflexe “simple”, le comportement de l’hv lors d’uneperturbation consiste à maintenir ses contacts sur l’environnement et à atteindre son CdM deconsigne. Cela peut donner un comportement insuffisant (figure 4.13). Si la perturbation est tropimportante, l’hv ne parvient pas à retrouver son CdM de consigne et tombe en avant. Alorsqu’il est naturel pour un humain de faire un pas en avant, la commande réalisée jusqu’à présentsuppose que les pieds sont maintenus au sol. Pour que l’hv fasse un pas en avant (figure 4.14),

70

Page 73: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.5. RÉSULTATS ET DISCUSSIONS

Figure 4.14 – Réflexe “évolué” : la commande spécifie explicitement le mouvement du pied del’hv. Ce dernier garde son équilibre.

il faut le spécifier explicitement en déclenchant une suite d’actions. En utilisant l’indicateur destabilité de l’hv (chapitre 3), la perte d’équilibre est caractérisée. On met en œuvre une stratégiepermettant à l’hv de faire un pas en avant et de retrouver son équilibre. Mais ce réflexe n’estqu’une des nombreuses possibilités pour retrouver son équilibre. Dans ce chapitre trois réflexes“évolués” sont présentés :

– appuyer avec les mains sur l’environnement ;– saisir une prise ;– faire un pas de côté.

Avant la simulation, l’ensemble des réflexes possibles sont spécifiés. Une méthode permettantà la commande de choisir et d’appliquer le réflexe le plus pertinent est présentée § 4.5.4.

4.5.3.2 Appuyer avec les mains sur l’environnement

CdM consigne

CdM initial

Vitesse CdM

Forces contact

Figure 4.15 – Un effort de perturbation est directement appliqué dans le dos de l’hv. Il retrouveson équilibre en s’appuyant sur un mur. La flèche verte représente la vitesse du CdM juste aprèsla perturbation.

Lorsque l’hv est poussé en direction d’un mur, ce réflexe lui permet de s’appuyer dessus.Par simplification, l’endroit du mur où l’hv pose la main est connu. Il est défini par l’utilisateur

71

Page 74: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

avant la simulation.

La position du CdM de consigne est calculée en fonction de la nouvelle configuration decontact, à partir des forces de contact désirées des mains (normales au mur). Ainsi, l’hv freineson mouvement en basculant en direction du mur. Les marges de stabilité ne sont pas prises encompte. Une fois l’équilibre retrouvé, un mécanisme de retour à la position initiale se déclenche.

La figure 4.15 illustre la position de l’hv en appui sur le mur. Sur le schéma, le CdM deconsigne est plus proche du mur que le CdM initiale de l’hv, à l’instant de la perturbation. Lavitesse du CdM est en direction du mur. Le CdM de consigne est équilibré statiquement et estsur le “chemin” qu’emprunte le CdM suite à la perturbation.

4.5.3.3 Saisir une prise

CdM consigne

CdM initial

Vitesse CdM

Forces contactet préhension

Figure 4.16 – Un effort de perturbation est directement appliqué dans le dos de l’hv. Il retrouveson équilibre en s’aidant d’une prise. Sa main droite est confondue avec la prise sur l’image dedroite. La flèche verte représente la vitesse du CdM juste après la perturbation.

Très proche du réflexe précédent, la saisie d’une prise améliore les possibilités de retour àl’équilibre. En effet, si l’hv tombe en arrière, il peut s’aider d’une prise se situant devant lui pourretrouver son équilibre.

Le CdM de consigne est déterminé en introduisant un effort désiré au niveau de la prise. Ladirection de cet effort correspond à la vitesse du CdM juste après la perturbation (figure 4.16).

Bien que les aspects relatifs à la robustesse n’interviennent pas dans le calcul du CdM deconsigne, ils sont utilisés pour caractériser l’état d’équilibre de l’hv et déclencher des réflexes“évolués”. Dans l’exemple de la figure 4.17, le sol bascule autour d’un axe, à vitesse constante(11 deg.s−1). Au début de la simulation, l’hv est debout et le caractère préhensif de ses mainsn’est pas utilisé (figure 4.17(a)). L’équilibre est rompu pour une posture érigée sur deux piedspour une inclinaison trop importante du sol. L’objectif de la commande d’hv est de conserverun équilibre robuste quand l’environnement change. Grâce aux prises, l’hv est capable de main-

72

Page 75: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.5. RÉSULTATS ET DISCUSSIONS

(a) angle = 0 (b) angle = 15 (c) angle = 25 (d) angle = 38 (e) angle = 43

Figure 4.17 – Exemple de gestion d’équilibre d’hv basé sur le calcul des marges de stabilité.Le sol bascule à une vitesse constante. On choisit une distribution de perturbations isotropiquepour calculer λmax pour chaque système étudié. L’hv garde son équilibre en utilisant des prisesavec ses mains.

tenir son équilibre. À cette fin, les interactions de préhension de l’hv sont activées/désactivéesdans la formulation de la loi de commande, tout au long de la simulation. Ce comportement estbasé sur le calcul de robustesse qui donne une bonne caractérisation de la rupture d’équilibre.Pour la posture courante de l’hv, l’amplitude de l’effort de perturbation maximal (distributionisotropique) est calculée. Lorsque ce critère de stabilité est plus petit qu’une amplitude limitechoisie, une action de rétablissement est déclenchée.

Le graphique présente l’effort de perturbation maximal admissible, fonction de l’angle de ren-versement du sol. Les critères de stabilité étudié diminuent logiquement lorsque le renversementdu sol augmente. Plusieurs systèmes sont étudiés simultanément : hv en interaction sur deuxpieds, deux pieds et une main, deux pieds et deux mains. L’hv passe d’une configuration deprise à une autre dans le but de conserver une marge de stabilité minimum. Par exemple, surla figure 4.17(c), angle=25 , la marge de stabilité de l’hv en interaction sur deux pieds devientinférieure à la marge de stabilité minimum : déclenchement d’un changement de prise. L’hvutilise sa main gauche pour attraper une prise. Dans cette nouvelle configuration, la marge destabilité est meilleure. L’hv converge donc vers une configuration d’équilibre plus stable.

4.5.3.4 Faire un pas de côté

Effectuer un pas de côté est également un réflexe courant en cas de perte d’équilibre. Jusqu’àprésent, une consigne de la commande était de maintenir les pieds au sol. Dans le réflexe proposé,il faut spécifier explicitement à l’hv de déplacer son pied en lui indiquant où le poser ainsique la durée du pas. Il est préférable de positionner le pied dans la direction de la vitesse duCdM. Le comportement de l’algorithme s’observe sur deux cas de pertes d’équilibre (figure 4.18).

73

Page 76: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

(a) Perturbation vers l’avant gauche. (b) Perturbation vers l’arrière droit.

Figure 4.18 – Suite à une perturbation, la direction du vecteur vitesse (flèche verte) du CdM(sphère rouge) permet de déterminer où poser le pied pour tenter d’équilibrer l’hv. La trajectoiredu pied est alors calculée (tracée en bleu).

En perspective, l’utilisation d’un algorithme de marche enrichirait le comportement de l’hv enproposant plusieurs pas.

4.5.4 Choix du réflexe

Champs Description Exemple

Nom Nom du réflexe Saisir une prise . . .

Membre Le numéro de l’effecteur Main gauche, Pied droit . . .

n env. Identification de l’environnement [n robot, n branche, n corps, n géométrie]

Distance Distance entre l’effecteur et sa cible 10 cm

λmax Amplitude maximale de l’effort de per-turbation

100

Table 4.2 – Caractéristiques communes d’un réflexe “évolué”.

Au début d’une simulation, on définit l’ensemble des réflexes possibles (tableau 4.2). Au coursde la simulation, il faut définir le choix du réflexe le plus pertinent selon la perturbation. Lesorigines d’une perte d’équilibre sont nombreuses. On classe les déséquilibres en deux cas :

– le déséquilibre provient d’une perturbation liée à l’environnement (déplacement du sol, chocd’un objet). La loi de commande stoppe toutes les tâches en cours, cela correspond à uncomportement “intuitivement naturel”. Les tâches sont reprises après retour à l’équilibre ;

– le déséquilibre provient de la réalisation d’une tâche par l’hv. Par exemple, en atteignantune cible trop loin, l’hv perd son équilibre (figure 4.20). On choisit alors uniquement lesréflexes qui permettent de poursuivre la tâche et d’améliorer l’équilibre.

Suite à cette première sélection de réflexes, on teste la pertinence des réflexes entre eux auregard des critères suivants :

– angle CdM – cible : il s’agit de l’angle entre la vitesse du CdM à l’instant où l’on

74

Page 77: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

4.5. RÉSULTATS ET DISCUSSIONS

Figure 4.19 – Schéma de principe de la mise en œuvre de stratégie de reprise d’équilibre.

déclenche le réflexe, et de la droite passant par la position du CdM courant et la cible. Ons’intéresse ici à la capacité d’arrêter le mouvement du CdM par rapport à l’axe de la prise.La direction de la vitesse du CdM à l’instant où l’on déclenche le réflexe est une indicationde la direction de la perturbation (qui n’est pas connue, à priori) ;

– distance main – cible : il s’agit de la distance entre l’effecteur (main) et la cible, qu’ils’agisse d’un mur ou d’une prise. Ce critère permet d’étudier la faisabilité d’atteindre unecible. Si elle est trop loin, l’hv n’a pas le temps de l’atteindre convenablement.

Pour chacun des critères étudiés, les réflexes sont alors classés. Les critères sont pondéréspour obtenir la meilleure stratégie. La figure 4.19 résume la mise en œuvre de réflexes “évolués”.Toutes les stratégies réflexes présentées ne sont que des ébauches, incomplètes, des réflexes dereprise d’équilibre possibles. On a décrit les principes ainsi que quelques tests sur des exemplesconcrets.

75

Page 78: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 4. ASSURER L’ÉQUILIBRE

Figure 4.20 – L’hv a pour objectif d’atteindre la sphère rouge, de la soulever et de la déplacerjusqu’à l’autre support. En voulant atteindre la sphère rouge, l’hv est déséquilibré vers l’avant.La perte d’équilibre provient de la tâche. La loi de commande sélectionne le réflexe qui consisteà saisir la prise avec la main gauche. L’hv retrouve son équilibre sans que les tâches ne soientinterrompues.

76

Page 79: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5

Gestion de tâches

Ce chapitre traite de la gestion des tâches. Un objectif se décompose en un ensemble d’actionsélémentaires se traduisant en critères et en contraintes pour la loi de commande. L’objectif

est de faire le lien entre un objectif global spécifié par l’utilisateur (ex : peindre) et sa traductionautomatique en termes de loi de commande.

On définit des structures et des actions de base, qui permettent l’interface entre des objectifsglobaux et la commande. Les structures mettent à jour la formulation de la loi de commande. Lesactions caractérisent le comportement souhaité.

Les tâches sont souvent conflictuelles et l’on propose une méthode numérique pour gérer lespriorités entre les tâches.

On peut ainsi réaliser des comportements complexes. Ainsi, l’hv manutentionnaire déplacedes charges lourdes plus ou moins guidées ou portées, dans un monde virtuel industriel complexe.

77

Page 80: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

Sommaire5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.1.1 État de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795.1.1.1 Génération de comportements . . . . . . . . . . . . . . . . . . 795.1.1.2 Gestion des priorités . . . . . . . . . . . . . . . . . . . . . . . . 79

5.1.2 Contribution et positionnement . . . . . . . . . . . . . . . . . . . . . . . 805.2 Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

5.2.1 Présentation générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805.2.2 Détails des actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

5.2.2.1 Génération de trajectoire . . . . . . . . . . . . . . . . . . . . . 825.2.2.2 Saisir une prise ou un objet . . . . . . . . . . . . . . . . . . . . 845.2.2.3 Appuyer sur l’environnement . . . . . . . . . . . . . . . . . . . 845.2.2.4 Posture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

5.2.3 Structures de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845.2.3.1 Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845.2.3.2 Préhension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

5.3 Gestion des priorités . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

5.3.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885.3.2 Mise en œuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

5.4 Tâches de manutention . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

5.4.1 Présentation du problème . . . . . . . . . . . . . . . . . . . . . . . . . . 915.4.2 Synthèse des efforts de manutention . . . . . . . . . . . . . . . . . . . . 92

5.4.2.1 Mouvement désiré . . . . . . . . . . . . . . . . . . . . . . . . . 935.4.2.2 Forces de contact de consigne . . . . . . . . . . . . . . . . . . . 94

5.4.3 Les différentes étapes de la commande . . . . . . . . . . . . . . . . . . . 94

78

Page 81: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.1. INTRODUCTION

5.1 Introduction

5.1.1 État de l’art

5.1.1.1 Génération de comportements

Une partie de la communauté de robotique humanoïde s’intéresse à la planification de tâchescomplexes. Celle-ci peut prendre en compte des contraintes au niveau des efforts et des dépla-cements [Esc08] [TGG07]. O. Stasse et al. [SEM+08] (Japanese–French Robotics Laboratory)présentent une tâche avec évitements de collisions et d’auto-collisions en temps réel du robotHRP-2. E. Yoshida et al. [YPL+08] font déplacer une boîte par pivotement en quasi-statiquepar le robot.

L’Irisa développe un processus temps réel dédié à la planification du mouvement d’huma-noïdes de synthèse dans des environnements contraints (TopoPlan – projet Bunraku).

D’autre part, P. Faloustos et al. [FvdPT01] présentent un ensemble de lois de commandebas-niveau et de modes d’enchaînements pour animer des personnages. Chaque commande estspécifique d’une action élémentaire. Les travaux ont conduit au développement de l’outil Dance.

Les problématiques de planification et de mode d’enchaînement de tâches ne seront pasabordées dans ce document.

5.1.1.2 Gestion des priorités

Figure 5.1 – Cas de conflit entre deux tâches. Le squelette ne peut atteindre simultanément laposition désirée du parapluie (en rose), et la poignée.

Les tâches sont souvent conflictuelles (figure 5.1). Il n’est pas toujours possible de résoudretoutes les contraintes de manière simultanée. Dans la littérature, la priorité est traitée par lesprojections cinématiques ou dynamiques.

Dans un contexte cinématique, le découplage de tâches a été appliqué à l’hv par P. Baerlo-cher et al. [BB04]. Ils proposent une commande de type cinématique inverse à multiples niveauxde priorités. Un nombre arbitraire de priorités entre les tâches à effectuer est fixé. Les auteursdécrivent un schéma de résolution efficace de ce problème de cinématique inverse.

79

Page 82: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

Cette approche a été étendue au cas dynamique par L. Sentis et al. [SK04], [SK05], [SK06]et V. De Sapio [DKD06].

N. Mansard et al. [MK08] prennent en compte des contraintes unilatérales dans le calculdes projecteurs dynamiques.

O. Khatib et al. [KWDS] proposent une méthode pour identifier les sous tâches carac-téristiques des mouvements humains en analysant des comportements obtenus par capture demouvements. Ces comportements sont alors incorporés dans la commande multi-tâches qui classechaque tâche par priorité. En identifiant les caractéristiques du mouvement, les auteurs consti-tuent ainsi une base des stratégies du mouvement humain, hiérarchisées par ordre de prioritésuivant la tâche à effectuer.

Enfin, S. Barthélemy et al. [BSB06] proposent d’utiliser la méthode des projecteurs entredes tâches hierarchisées pour établir le critère à optimiser dans un problème de type QP. C’estune méthode analytique.

5.1.2 Contribution et positionnement

On propose une architecture simplifiée permettant de combiner quelques comportements élé-mentaires – la coordination est inspirée de Faloustos. Pour les priorités, on propose une alternative“numérique” aux projections.

On propose une liste non exhaustive de comportements élémentaires. Ces comportementssont simples à mettre en œuvre. Ils dépendent d’un faible nombre de paramètres. Ils s’intègrentnaturellement dans la loi de commande, qui permet déjà de gérer l’équilibre. L’hv réalise destâches comme peindre ou déplacer des objets en combinant ces comportements élémentaires.

Une gestion des priorités entre les tâches est également proposée. Il s’agit d’une méthodenumérique qui est une alternative à la formulation analytique des projecteurs.

Les comportements élémentaires développés, appelés “actions”, sont décrits dans le § 5.2. Le§ 5.3 présente la méthode de gestion des priorités. Enfin, les premiers résultats de simulationd’hv manutentionnaire sont exposés dans le § 5.4.

5.2 Actions

5.2.1 Présentation générale

Ce chapitre propose une architecture de gestion de tâches et traite des aspects programma-tion. L’objectif est de doter l’hv d’un ensemble de comportements de base appelés par la suite“actions”. Une action est utilisée comme contrainte ou critère dans la loi de commande (cha-pitre 4) où elle s’intègre naturellement. Une action a un certain nombre de champs pré-requisdéfinis dans le tableau 5.1. Avant chaque simulation, l’utilisateur définit les paramètres des ac-tions qu’il souhaite voir réaliser par l’hv.

Le champs “type” est détaillé ci-dessous. Il permet de choisir quand et comment une actions’exécute. On distingue trois types d’exécutions :

“type = 1” ces actions nécessitent la fin de l’exécution d’une action précédente. Dans ce cas,l’action se déclenche lorsque l’action de “type = 1” précédente est réalisée. Une action se

80

Page 83: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.2. ACTIONS

Champs Description Exemples de valeurs

Catégorie Grande catégorie d’action Tâche ou réflexe

Nom Nom de l’action Génération de trajectoire, posture . . .

Type Mode de déclenchement 1, 2 ou 3

Actif Déjà réalisé ou non booléen

tinitial Temps de début de l’action Absolu ou relatif à un temps intermédiaire

tfin Temps de fin de l’action Absolu ou relatif ou ∞tcourant Temps courant de l’action Compris entre tinitial et tfin

Table 5.1 – Identifiants communs à toutes les actions.

termine lorsque sa durée est écoulée. Des enchaînements de tâches sont ainsi définis. Parexemple, pour générer un mouvement de va-et-vient entre deux configurations, on utilisedes actions “postures-clés” de “type = 1”. Il suffit de spécifier la durée de chaque actionpour pouvoir générer très simplement le mouvement ;

“type = 2” ces actions s’exécutent à un instant donné, une seule fois. Ainsi, des paramètrespeuvent être initialisés, des contraintes élémentaires activées ou désactivées. Par exemple,afin que l’hv lâche une prise, on désactive à un instant donné la contrainte de préhensiondans la loi de commande. Une fois exécutée, une action de “type = 2” peut alors devenirde “type = 3” ;

“type = 3” l’action est déclenchée à un instant, et reste activée pour une durée donnée. Parexemple, une génération de trajectoire se réalise en deux étapes. Afin de déterminer les pa-ramètres d’interpolation, cette action est donc de “type = 2” pendant l’initialisation, puiselle devient de “type = 3” afin d’être exécutée tant que la trajectoire n’est pas entièrementparcourue.

D’autre part, en complément du champs “type”, un certain nombre d’informations tempo-relles est nécessaire pour chaque action. Le début, la fin et/ou la durée d’une action doivent êtrespécifiés :

– tinit : c’est l’instant où l’action est déclenchée. Pour les actions de “type = 2 ou 3”, c’estle temps absolu de la simulation. Pour les actions de “type = 1”, c’est la durée entre la finde l’action précédente et le déclenchement de l’action suivante ;

– tfin : c’est l’instant où l’action est arrêtée. Pour les actions de “type = 3”, c’est le tempsabsolu de la simulation. Pour les actions de “type = 1”, c’est la durée de l’action. Enfin, lesactions de “type = 2” ne sont, par définition, exécutées qu’une seule fois, cette informationn’est donc pas utilisée ;

– tcourant : c’est le temps courant de l’action qui donne une indication sur son taux deréalisation. C’est une information utile lorsqu’une action est interrompue. On peut alorsreprendre l’action où elle en est ou bien depuis son début.

Enfin, une action est dite “Actif = 1” tant qu’elle n’a pas été commencée ou qu’elle a étécommencée mais pas terminée. Une action est dite “Actif = 0” lorsqu’elle est terminée.

On détaille à présent les quatres comportements de base implémentés, qui permettent degénérer des comportements très variés.

81

Page 84: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

5.2.2 Détails des actions

5.2.2.1 Génération de trajectoire

La “génération de trajectoire” est une action qui permet de spécifier le mouvement d’un corpsdans l’espace (main, pied . . . ). Cette action porte sur l’accélération d’un “corps”. Elle est utiliséecomme une contrainte dans la loi de commande. Elle peut être employée pour la marche ou pourla saisie de prises ou d’objets.

Les actions “génération de trajectoire” sont toujours de “type = 2”. Lors de l’initialisation,on s’assure que l’accélération du corps n’est pas surcontrainte (accélérations de contacts prisesen compte par la loi de commande).

Afin de déterminer l’accélération de consigne du corps, les consignes en positions (translationet rotation) et en vitesses (translation et rotation) peuvent être calculées de deux manièresdifférentes :

– soit les consignes définissent l’état final à atteindre pour le corps contrôlé ; cet état est uneconstante de SE(3)×se(3) et la commande est réalisée avec un correcteur PD vers cet état ;

– soit les consignes définissent une trajectoire à suivre dans SE(3) × se(3), depuis un étatinitial jusqu’à un état final et la commande est réalisée avec un correcteur PD le longde cette trajectoire (figure 5.2). Pour les exemples traités, on a choisi une génération detrajectoire particulière mais la généralisation à des trajectoires plus complexes issues d’unplanificateur par exemple ne pose pas de difficultés à priori.

Les champs de base de l’action “génération de trajectoire” sont détaillés dans le tableau 5.2.

Exemple : Peindre est une tâche complexe se décomposant en un enchaînement d’actionsdont la “génération de trajectoire”. Pour atteindre le pinceau (figures 5.3(a) et 5.3(b)), le suivide trajectoire vers la position finale de l’objet à saisir est une méthode possible. On peut ainsispécifier un chemin qui évite la collision entre la main de l’hv et la table. La trajectoire estcalculée en début d’action mais il est possible de la recalculer si nécessaire.

Une fois le pinceau saisi, l’hv doit réaliser le mouvement de peindre (figures 5.3(c) et 5.3(d)).L’état final à atteindre par la main est spécifié (positions en translation et en rotation). Enindiquant un ensemble d’objectifs clés, le mouvement de peindre est reproduit par l’hv.

Figure 5.2 – Interpolation de type spline avec une configuration de passage.

82

Page 85: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.2. ACTIONS

Champs Description Exemple

ActifT Désactiver/Activer le calcul de l’accélération del’effecteur dans la loi de commande

booléen

n prehension Indice de l’effecteur 1 (main gauche) . . .

(kp, µp) Raideur et amortissement du correcteur PD del’accélération de l’effecteur (permet de rigidifiersa prise)

kp et µp ∈ M6,6(R), sy-métrique définie posi-tive

tmilieu % de la durée totale de l’interpolation où inter-vient le passage intermédiaire

0.5

dmilieu % de la distance totale de l’interpolation où in-tervient le passage intermédiaire

0.5

dHmilieu Matrice de transformation qui positionne un re-père de passage à partir de la position initiale del’effecteur

dHmilieu ∈ SE(3)

Hinitial Repère initial de l’effecteur Hinitial ∈ SE(3)

Hfin Repère de consigne final à atteindre par l’effec-teur

Hfin ∈ SE(3)

Vinitial Vitesse initiale désirée de l’effecteur Vinitial ∈ R6

Vfin Vitesse finale désirée de l’effecteur Vfin ∈ R6

Table 5.2 – Champs de base de l’action “génération de trajectoire”.

(a) (b) (c) (d)

Figure 5.3 – Décomposition d’une tâche complexe (peindre) en un enchaînement d’actions.

83

Page 86: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

5.2.2.2 Saisir une prise ou un objet

Cette action traite de la prise en compte d’un calcul d’effort au niveau d’un effecteur. L’ache-minement de l’effecteur vers une cible s’effectue avec l’action décrite au § 5.2.2.1. Tant que laprise ou l’objet n’est pas atteint, la loi de commande ne calcule aucun effort de préhension. dmin

indique la distance à partir de laquelle on considère que la cible est atteinte (tableau 5.3). Unmodèle d’interaction de préhension est alors pris en compte à la fois dans la commande (calculd’un effort de préhension) et dans la simulation (activation d’une liaison visco-élastique). Dansla loi de commande, l’accélération de l’effecteur doit être égale à l’accélération de la prise pourassurer le maintien correct de la saisie.

Afin de soulever et déplacer un objet, l’actionnement de l’hv doit compenser la masse del’objet. On fait l’hypothèse que la masse de l’objet est connue. Un effort de réaction de consigneest alors ajouté au bilan des efforts s’appliquant sur l’hv et est pris en compte par la loi decommande.

Exemple : Un certain nombre de simulations utilisant l’action “saisir” sont présentées dansce document. On détaille au § 4.5.2.2 la problématique du passager de bus. Dans un véhicule,l’hv saisit le volant et peut s’y accrocher (chapitre 7).

5.2.2.3 Appuyer sur l’environnement

Cette action traite de l’activation ou désactivation de la prise en compte par la commandedes contacts d’un effecteur (tableau 5.4). Les pieds interagissent toujours avec le sol par l’in-termédiaire de contacts. De même, lorsque l’hv appuie sur un mur avec une main, c’est parl’intermédiaire de contacts. C’est, en général, une action de “type = 2”.

5.2.2.4 Posture

L’action “posture” permet de changer la posture désirée. Grâce à un contrôle PD articulaire,la posture de l’hv converge vers sa nouvelle consigne. En donnant à chaque instant la position etla vitesse désirées de chaque articulation, l’hv peut rejouer un mouvement préenregistré. Contrai-rement à une approche simplement cinématique, le mouvement obtenu est soumis à toutes lescontraintes du moteur physique. Par exemple, l’hv rejoue au mieux le mouvement préenregistrétout en conservant son équilibre en cas de perturbation.

5.2.3 Structures de base

Deux structures de base permettent de faire le lien entre la commande, les marges de stabilitéet des objectifs globaux de tâches.

5.2.3.1 Contact

La structure “Contact” regroupe toutes les informations concernant les contacts de l’hv uti-lisées dans la loi de commande (tableau 5.5). La disposition des contacts sur l’hv est donnée. Ilfaut spécifier explicitement à quelle partie de l’environnement chaque contact de l’hv correspond.

L’exemple suivant illustre l’utilisation de cette structure. L’hv a pour consigne de s’appuyersur un mur. Au début de la simulation, l’hv a les bras le long du corps. Les contacts de sa mainne sont pas pris en compte dans la loi de commande. L’action “génération de trajectoire” estutile afin que l’hv amène sa main près du mur, avec la bonne orientation. À cet instant, lescontacts de la main doivent être activés dans la commande afin que l’hv puisse appuyer sur le

84

Page 87: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.2. ACTIONS

Champs Description Exemple

Actifsaisi Désactiver/Activer le calcul d’un effort de préhensiondans la loi de commande

booléen

Actifmssaisi Désactiver/Activer le calcul d’un effort de préhen-sion pour la détermination CdM de consigne (fonc-tion marge de stabilité)

booléen

n prehension Indice de l’effecteur 1 (main gauche) . . .

dmin Distance à partir de laquelle la liaison visco-élastiqueest activée dans la simulation

1 cm

Masse Masse de l’objet à compenser (dans marge de stabilitéet la commande)

1 kg

n ve Numéro de la liaison visco-élastique 1, 2 . . .

Table 5.3 – Champs de base de l’action “saisir”.

Champs Description Exemple

Actifappuyer Désactiver/Activer le calcul d’une force de contact dans laloi de commande

booléen

Actifmsappuyer Désactiver/Activer la prise en compte d’une force decontact désirée dans le calcul du CdM de consigne (fonc-tion marge de stabilité)

booléen

n contact Numéro des contacts de la structure “contact” que l’onveut désactiver/activer.

[1, 2, 3]

Table 5.4 – Champs de base de l’action “appuyer”.

85

Page 88: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

mur (Actiffc). De plus, des efforts désirés s’appliquant au niveau de ces nouvelles interactions,peuvent être pris en compte dans le calcul du CdM de consigne (Actifms). La détection de collisionrenseigne sur l’état d’interaction de l’hv avec l’environnement à l’aide du champs Actifcollision.Les informations sur le frottement sec de chaque contact (µcommande), le repère de contact et lesasservissements apparaissent aussi dans cette structure. Enfin, si l’hv doit appliquer un effort deconsigne au niveau de sa main, on complète le champ fmsc . Afin que cette consigne soit au mieuxrespectée, on pondère cette force de contact à la fois dans le calcul du CdM de consigne (Qfmsc )et dans le calcul de la commande (Qfc).

Champs Description Exemple

Contact Identification du contact sur le robot hv [n rb, n br, n bd, n sh] a

Env. Identification du contact sur le robot environnement [n rb, n br, n bd, n sh]

µcommande Coefficient de frottement du contact dans la loi decommande (coefficient de sécurité, cf. § 2.4.1.2)

≤ µsimulation

na Nombre de facettes du cône de frottement 4 ou 5

Actiffc Désactiver/Activer le calcul d’une force de contactdans la loi de commande

booléen

ActifT Désactiver/Activer le calcul de l’accélération ducontact dans la loi de commande

booléen

Actifms Désactiver/Activer le calcul d’une force de contactdans le calcul du CdM de consigne (Marge de stabi-lité)

booléen

Actifcol. Considéré en collision ou non par la commande booléen

xc/scène Coordonnées du contact sur le robot hv dans le re-père scène

xc/scène ∈ R3

xconsignec/scène Coordonnées du contact sur le robot environnement

dans le repère scènexconsignec/scène ∈ R

3

Rc/scène Orientation du repère de contact dans le repère scène Rc/scène ∈ SO(3)

(kc, µc) Raideur et amortissement du correcteur PD de l’ac-célération du contact

kc et µc ∈ M6,6(R), sy-métrique définie posi-tive

fc Force de contact calculée par la loi de commande fc ∈ R3

fdesc Force de contact désirée (sortie du calcul du CdMde consigne, entrée du calcul des couples d’actionne-ment)

fdesc ∈ R

3

fmsc Force de contact de consigne (entrée du calcul duCdM de consigne)

fmsc ∈ R

3

Qfc Poids du critère concernant la force de contact dansle calcul des couples d’actionnement

Qfc∈ M3,3(R), symé-

trique définie positive

Qfmsc Poids du critère concernant la force de contact dansle calcul du CdM de consigne (marge de stabilité)

Qmsfc

∈ M3,3(R), symé-trique définie positive

Table 5.5 – Champs de base de la structure “Contact”.

a. rb : robot, br : branche, bd : corps, sh : géométrie

86

Page 89: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.2. ACTIONS

5.2.3.2 Préhension

La structure “Préhension” regroupe toutes les informations concernant la génération de tra-jectoire et les efforts des effecteurs terminaux de l’hv utilisés dans la loi de commande (tableau5.6). On retrouve les gains des asservissements de suivis de trajectoire (kp, µp), les informationsde position courante et de consigne de chaque effecteur.

On illustre le fonctionnement de cette structure dans le cas où l’hv a pour consigne de saisirune prise. Pour atteindre une prise, il faut s’assurer que les accélérations de contacts de la mainne sont pas contraintes dans la loi de commande. On retrouve ces informations dans le champs“ n contact”. Il faut activer la contrainte sur l’accélération de l’effecteur terminal (ActifT). Lesconsignes de positions et de vitesses se situent dans les champs H

consignep/scène et V

consignep/scène . Enfin,

lorsque l’hv a atteint sa cible et que sa main saisit la prise, il peut y exercer un effort (ActifWp).Les informations concernant les efforts de préhension désirés et maximaux se retrouvent respec-tivement dans les champs Wdesp et Wmaxp .

Champs Description Exemple

Nom Nom de l’effecteur ’main gauche’ . . .

Préhension Identification de l’effecteur sur la structure ar-borescente du robot hv

[n rb, n br, n bd, n sh]

Env. Identification de la prise sur la structure arbo-rescente du robot environnement

[n rb, n br, n bd, n sh]

n contact Numéros des contacts de la structure “Contact”située sur cet effecteur

[1, 2, 3]

ActifT Désactiver/Activer la contrainte sur l’accéléra-tion de l’effecteur terminal

booléen

ActifWp Désactiver/Activer le calcul d’un effort de pré-hension dans la loi de commande

booléen

ActifmsWp Désactiver/Activer le calcul d’un effort de pré-hension pour la détermination CdM de consigne(fonction marge de stabilité)

booléen

Actifve Numéro de la liaison visco-élastique dans la si-mulation, 0 si elle n’est pas activée

0, 1, 2 . . .

Hp/scène Repère de préhension exprimé dans le repèrescène

Hp/scène ∈ SE(3)

Hconsignep/scène Repère de préhension de référence dans le repère

scèneHconsigne

p/scène ∈ SE(3)

Hfinp/scène Repère de préhension final à atteindre dans lerepère scène

Hfinp/scène ∈ SE(3)

Hgéométriep/bd Repère de préhension exprimé par rapport au

repère du corps de préhensionHgéométrie

p/bd ∈ SE(3)

87

Page 90: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

Vp/scène Vitesse de préhension (réelle) Vp/scène ∈ R6

Vconsignep/scène Vitesse de préhension de consigne V consigne

p/scène ∈ R6

Vp/scène Accélération de préhension calculée par la loi decommande

Vp/scène ∈ R6

Vconsignep/scène Accélération de préhension de consigne V consigne

p/scène ∈ R6

(kp, µp) Raideur et amortissement du correcteur PD del’accélération de l’effecteur

kp et µp ∈ M6,6(R), sy-métrique définie posi-tive

Wp Effort de préhension calculé par la loi de com-mande

Wp ∈ R6

Wdesp Effort de préhension désiré (sortie de marge destabilité, entrée de loi de commande)

W desp ∈ R

6

Wmsp Effort de préhension de consigne (entrée demarge de stabilité)

Wmsp ∈ R

6

Wmaxp Effort de préhension maximal dans marge de sta-bilité et loi de commande

[80; 80; 80; 40; 40; 40]

Wsatp Effort de préhension limite au-delà duquel la liai-son visco-élastique est rompue dans le simulateur

1.5Wmaxp

Masse Masse de l’objet à compenser (cas d’une saisied’objet)

10 kg

QWp Poids du critère concernant l’effort de préhensiondans le calcul des couples d’actionnement

QWp ∈ M6,6(R), symé-trique définie positive

QWdespPoids du critère concernant l’effort de préhensiondans le calcul du CdM de consigne (marge destabilité)

QdesWp

∈ M6,6(R), symé-trique définie positive

Table 5.6: Champs de base de la structure “Préhension”.

5.3 Gestion des priorités

5.3.1 Présentation

La gestion des priorités entre les tâches (souvent conflictuelles) fait toujours l’objet de nom-breuses recherches. La méthode la plus souvent utilisée est celle des projecteurs. Elle peut êtreutilisée dans une méthode de type “couple calculé” [SK04] ou dans le critère d’optimisation dansle cas d’une méthode d’optimisation sous contraintes [BSB06].

Dans la construction du critère à optimiser, un poids est affecté à chaque tâche en fonctionde son importance. Par exemple, la réalisation de la tâche “atteindre le CdM de consigne” est

88

Page 91: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.3. GESTION DES PRIORITÉS

prioritaire par rapport à la tâche “atteindre la posture de référence”. Mais on obtient une solutionmoyenne qui ne permet pas d’avoir la certitude que la tâche la plus prioritaire est parfaitementréalisée. Une autre méthode est de ne pas traiter la tâche la plus prioritaire comme un critère àoptimiser mais comme une contrainte. C’est l’option adoptée jusqu’à présent pour la commandedu mouvement des effecteurs terminaux. Cette méthode a des limites :

– l’équilibre n’est pas garanti car l’atteinte du CdM de consigne n’est pas prioritaire ;– la consigne de l’effecteur terminal n’est pas nécessairement réalisable. Traitée comme unecontrainte égalité, il n’existe pas forcément de solution satisfaisant toutes les contraintesdu problème d’optimisation quadratique.

On propose ici de traiter toutes les tâches dans le critère d’optimisation (atteindre le CdMde consigne, mouvement des effecteurs terminaux, atteindre la posture de référence). Pour gérerles priorités entre les tâches, une approche alternative est présentée. Il s’agit d’une méthode nu-mérique basée sur la résolution d’une succession de problème d’optimisation quadratique.

Un premier QP est formulé et résolu pour la tâche la plus prioritaire. La solution ne réalisepeut-être pas complètement la tâche mais s’en approche du mieux possible. La solution obtenuepour le premier critère est transformée en contrainte pour un second QP qui optimise un critèrerelatif à une tâche secondaire. On procède itérativement tant que le problème d’optimisationquadratique n’est pas surcontraint.

Par rapport à la méthode “tout optimisation”, cette approche permet de hiérarchiser effica-cement les tâches. C’est une méthode équivalente à l’utilisation de projecteurs pour construirele critère à optimiser.

Ce principe est illustré par la suite à travers un exemple de gestion de priorité entre troistâches.

5.3.2 Mise en œuvre

On rappelle que dans notre loi de commande multi-objectifs, l’équilibre est toujours prioritairesur les autres tâches. Dans l’exemple proposé, on souhaite que l’hv touche un objet matérialisépar une sphère rouge, en conservant l’état de ses interactions. Cette tâche est impossible à réalisersans perdre l’équilibre. Les trois tâches constituant le critère multi-objectifs sont :

– tâche 1 : garder l’équilibre – atteindre la position du CdM de consigne ;– tâche 2 : toucher une cible matérialisée par une sphère avec la main gauche ;– tâche 3 : ne pas s’éloigner d’une posture de référence – atteindre la posture initiale.

La construction des trois problèmes successifs d’optimisation quadratique est présentée dansla figure 5.4. Les résultats de cette loi de commande sont présentés sur les figures 5.5.

Une première simulation est effectuée en traitant la tâche 2 “toucher la cible” comme la tâchela plus prioritaire. La figure 5.5(a) illustre le résultat de cette loi de commande : l’hv atteint sacible au détriment de son équilibre.

La tâche 1 “garder l’équilibre” est dorénavant la tâche la plus prioritaire. Dans un premiertemps, les butées articulaires ne sont pas prises en compte. Le résultat de cette commande estprésenté sur la figure 5.5(b). En bout de course, l’accélération désirée de la main est non nullecar il existe une erreur non nulle en position. Plusieurs solutions sont possibles pour éviter lesoscillations de la main : augmenter le poids de τdes, filtrer la solution.

89

Page 92: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

Figure 5.4 – Gestion de trois tâches à priorité décrois-sante.

(a) Priorité à l’atteinte de la sphère :perte d’équilibre.

(b) Priorité à la conservation duCdM sans les butées. articulaires

(c) Priorité à la conservation duCdM avec les butées articulaires.

Figure 5.5 – Différents ordresde priorité entre les tâches deconservation du CdM, de pos-ture et d’atteinte de la sphèreavec la main gauche.

90

Page 93: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.4. TÂCHES DE MANUTENTION

Enfin, les butées articulaires sont introduites et le résultat est présenté sur la figure 5.5(c).Une fois le mouvement de la main bloqué par les butées articulaires, il se peut que l’on ne trouvepas de solution au problème d’optimisation quadratique. Dans ce cas, on change la consignede la main qui devient la position courante de la main. Cette approche permet de stabiliser lemouvement et d’obtenir une posture beaucoup plus réaliste car les butées articulaires sont prisesen compte.

5.4 Tâches de manutention

5.4.1 Présentation du problème

(a) Déplacer une boîte. (b) Pousser une armoire.

Figure 5.6 – Humain virtuel manutentionnaire.

Les tâches de manutention ont été mises en œuvre par Chau-Thuan Huynh [Huy08], dansle cadre de son stage de fin d’études. En s’appuyant sur la commande exposée aux chapitres 3 et4 ainsi que sur les possibilités d’action de l’hv présentées en début de ce chapitre, C.T. Huynhs’est intéressé à la commande d’hv manipulant des objets. Il s’est appliqué à commander unhv manutentionnaire qui déplace des charges lourdes plus ou moins guidées ou portées dans unmonde virtuel industriel complexe.

On calcule les efforts que les mains de l’hv doivent appliquer sur l’objet pour réaliser lemouvement souhaité à l’aide de l’équation de la dynamique de l’objet (§ 5.4.2, équation 5.1). Deplus, il faut prendre en compte le non-glissement des contacts. Un problème d’optimisation souscontraintes est alors résolu avec pour inconnue les efforts que les mains de l’hv appliquent surl’objet. Ces efforts deviennent alors des consignes pour la commande de l’hv (figure 5.7). Toutd’abord, le CdM de consigne, équilibré en statique, est calculé en tenant compte de l’objet ma-nipulé (chapitre 3). De plus, dans le calcul des couples articulaires, les efforts de contact désirésdes mains sont les efforts précédemment calculés. On leur affecte une priorité importante pourêtre réalisés dans le QP.

Deux tâches de manutentionnaires ont été traitées. La première consiste à déplacer une boîtesur une table (figure 5.6(a)). La seconde tâche consiste à pousser une armoire (figure 5.6(b)).Dans les deux cas, l’hv contrôle la position de l’objet dans l’environnement. Les dimensions et lalocalisation des prises sur l’objet sont connues de l’hv. Il adapte sa posture et surtout la position

91

Page 94: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

de son CdM automatiquement pour pouvoir compenser les efforts produits sur l’objet sans perdrel’équilibre.

Figure 5.7 – Schéma-bloc décrivant la manipulation d’une boîte.

5.4.2 Synthèse des efforts de manutention

Pour assurer le bon déroulement d’une tâche de manipulation, un soin particulier doit êtreapporté au calcul des consignes en efforts au niveau de l’interface entre les effecteurs terminauxde l’hv manutentionnaire et l’objet manipulé. En effet, ce sont principalement ces efforts, avecla gravité, qui déterminent le mouvement de l’objet manipulé, et donc la réussite ou non de lamanipulation.

La relation entre le mouvement de l’objet et les efforts de contact qui lui sont appliqués estl’équation de la dynamique de l’objet :

Mbox

(

Vbox −G)

+Nbox Tbox = Wc→box +Wautres contacts→box (5.1)

Dans cette équation, Vbox est le torseur cinématique absolu de l’objet et Wc→box est le torseurrésultant des efforts de contact de l’hv sur l’objet. Ces deux torseurs, ainsi que G et la matriced’inertie généralisée Mbox, sont exprimés dans le repère propre de l’objet. Wautres contacts→box

désigne le torseur des autres efforts de contact appliqué sur la box. Ils sont connus dans cetteéquation.

Le torseur résultant des efforts de contact s’exprime en fonction des efforts fc(1), . . . , fc(nc)appliqués à la surface de l’objet : si on suppose, comme d’habitude, que ces efforts sont écritsdans leurs repères de contact c1, . . . , cnc respectifs, et en notant box le repère de l’objet, on peutécrire :

Wc→box =

nc∑

i=1

boxAd−tci

[

fc(i)03,1

]

(5.2)

avec boxAd−tci

la matrice co-adjointe de boxHci, dont on rappelle l’expression :

boxAd−tci=

[

boxRci03,3

[rbox,ci] boxRci

boxRci

]

(5.3)

92

Page 95: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.4. TÂCHES DE MANUTENTION

L’équation 5.2 se ré-écrit donc :

Wc→box =

[

boxRc1 . . . boxRcnc

[rbox,c1 ]boxRc1 . . .

[

rbox,cnc

]

boxRcnc

]

fc(1)...

fc(nc)

= Ctc fc

(5.4)

Dans le domaine de l’étude de la manipulation robotique, la matrice Ctc est appelée “matrice

de préhension”. En utilisant (5.1) et (5.4), on trouve donc la relation entre le mouvement del’objet et les causes de ce mouvement, fc :

Mbox

(

Vbox −G)

+Nbox Tbox = Ctc fc +Wautres contacts→box (5.5)

C’est fc que l’on cherche, pour produire un certain mouvement désiré V desbox . Il faut donc dans

un premier temps spécifier le mouvement désiré (§ 5.4.2.1) puis dans un deuxième temps utiliserl’équation 5.5 pour en déduire les forces de contact adéquates à appliquer, f consigne

c (§ 5.4.2.2).Ces forces de contact sont ensuite traitées comme des consignes à atteindre au mieux dans lecalcul de la commande de l’hv.

5.4.2.1 Mouvement désiré

Le mouvement désiré de l’objet manipulé par l’hv est spécifié par l’utilisateur sous la formed’une consigne de position dans SE(3) (position et orientation) et d’une consigne de vitesse dansse(3) (vitesse de translation et de rotation) :

Hdesbox =

[

Rdesbox rdesbox

01,3 1

]

∈ SE(3) V desbox ∈ se(3)

Ces consignes identifient soit un état final à atteindre dans SE(3) × se(3) pour l’objet, soitune trajectoire à suivre dans le même espace. Les écarts entre le mouvement et le mouvementdésiré sont donc :

∆Xbox =

[

R−1box

(

rdesbox − rbox)

∆Rbox

]

avec [∆Rbox] =1

2

(

(

Rdesbox

)tRbox −Rt

box Rdesbox

)

(5.6)

et ∆Vbox = V desbox − Vbox

La matrice R−1box apparaissant dans l’expression de ∆Xbox est nécessaire car les vecteurs rbox

et rdesbox sont exprimés dans le repère de référence. Les trois autres écarts sont exprimés dansle repère propre à l’objet, repère dans lequel s’exprime également l’accélération du mouvementdésiré, V des

box :

V desbox = kbox ∆Xbox + µbox ∆Vbox (5.7)

On asservit en effet le mouvement de l’objet manipulé sur les consignes dans SE(3)× se(3) àl’aide d’un correcteur proportionnel-dérivé.

93

Page 96: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

5.4.2.2 Forces de contact de consigne

Le mouvement désiré V desbox de l’objet induit, avec l’équation 5.1, un torseur d’efforts de contact

désiré selon :

W desc→box = Mbox

(

V desbox −G

)

+Nbox Tbox −Wautres contacts→box (5.8)

Si ce torseur est effectivement appliqué à l’objet, l’équation 5.1 assure que l’objet adoptel’accélération Vbox = V des

box , spécifiée au paragraphe précédent. En effet, si W desc→box = Wc→box, à

l’aide des équations 5.1 et 5.8, on obtient Mbox Vbox = Mbox V desbox soit Vbox = V des

box car Mbox estinversible.

L’objectif est de trouver les fc telles que W desc→box = Wc→box. Comme les contraintes de non-

glissement portent sur les forces de contact fc, on ne peut pas simplement calculer une pseudoinverse de Ct

c. De plus, la trajectoire V desbox n’est pas forcément atteignable. C’est pourquoi une

méthode d’optimisation est mise en œuvre. On cherche à minimiser l’écart entre W desc→box et

Wc→box ; les inconnues recherchées sont les efforts de contact, fc :

argminfc

[

1

2‖W des

c→box −Wc→box‖2Qbox

]

= argminfc

1

2W t

c→box Qbox Wc→box +W tc→box rbox (5.9)

avec rbox = −Qbox W desc→box, et d’après l’équation 5.4 :

argminfc

[

1

2‖W des

c→box −Wc→box‖2Qbox

]

= argminfc

1

2W t

c→box Qbox Wc→box +W tc→box rbox (5.10)

avec Qbox = Cc Qbox Ctc et rbox = Cc rbox = −Cc Qbox W des

c→box

Au final, pour calculer les efforts de contact fc qui produisent le mouvement de manutentionsouhaité, V des

box , on minimise le critère précédent sous les contraintes de non-glissement des forcesde contact :

{

argminfc

12W t

c→box Qbox Wc→box +W tc→box rbox

Ec fc + dc ≥ 0(5.11)

5.4.3 Les différentes étapes de la commande

Dans cette section, on détaille les différentes phases de la commande (figure 5.8). Il s’agitd’un schéma séquentiel des différentes étapes de la commande de l’hv. Chaque étape débute unefois la précédente terminée.

Étape 1 – établissement des prises : l’utilisateur spécifie les positions de consigne desmains sur l’objet, par exemple, au milieu de deux faces opposées de la boîte. En utilisant l’action“Génération de trajectoire” (§ 5.2.2.1), les mains atteignent les positions des prises sur les objets.

Étape 2 – activation des contacts : on active la prise en compte des contacts de la maindans la loi de commande. On utilise l’action “Appuyer sur l’environnement” (§ 5.2.2.3). La loide commande peut calculer des efforts à appliquer sur l’objet.

94

Page 97: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.4. TÂCHES DE MANUTENTION

Figure 5.8 – Déroulement des tâches de manutention.

Figure 5.9 – Équilibre de la boîte.

95

Page 98: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 5. GESTION DE TÂCHES

Étape 3 – appuyer / saisir : on s’intéresse au calcul des efforts des mains sur l’objet,avant de déplacer celui-ci. Du point de vue de la commande, une méthode consiste à augmenterprogressivement la masse de l’objet.

Mtcourant = Mboxtcourant − tdébut de tâche

tfin de tâche − tdébut de tâche(5.12)

Il faut considérer le frottement sec des contacts. Si l’objectif consiste à soulever un objet,on calcule l’effort tangent nécessaire (figure 5.9). Le non-glissement du contact impose d’exercerun certain effort normal de serrage. Si l’objectif consiste à pousser un objet, on calcule l’effortnormal nécessaire (figure 5.10). Il faut dans ce cas prendre en compte le frottement entre l’objetet le sol.

Les efforts entre les mains et l’objet interviennent dans le bilan des efforts s’appliquant àl’hv. En effet, on considère, dans le calcul du CdM de consigne, des efforts de contact désirés desmains sur l’objet. Par exemple, en tentant progressivement de soulever une boîte située devantlui, la position du CdM de consigne calculée recule afin de garantir l’équilibre statique de l’hv.En poussant une armoire, la position du CdM doit avancer vers l’objet.

Étape 4 – déplacer l’objet : il s’agit de l’étape principale de la manutention. Elle s’appuiesur le bilan des efforts s’exerçant sur l’objet (§ 5.4.2.2). La donnée d’entrée de cette étape estle mouvement de l’objet désiré par l’utilisateur. À partir de l’accélération désirée, les effortsnécessaires de la main sur l’objet pour réaliser le mouvement souhaité, sont déterminés. Cesefforts entre les mains et l’objet étant pris en compte dans le calcul du CdM de consigne, on estassuré que l’hv conserve son équilibre. L’objectif de la commande d’hv est double : appliquerles efforts de contact de consigne et atteindre la position du CdM de consigne. On joue sur lespriorités du critère d’optimisation pour atteindre ces objectifs.

Étape 5 – relâcher l’objet : une fois que l’objet a atteint sa position finale, on relâche lesefforts que l’hv applique sur l’objet. C’est le processus inverse de l’étape 3.

Étape 6 – désactiver les contacts : on désactive la prise en compte des contacts de la maindans la loi de commande. On utilise l’action “Appuyer sur l’environnement” (§ 5.2.2.3).

Figure 5.10 – Équilibre de l’armoire.

96

Page 99: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

5.4. TÂCHES DE MANUTENTION

Étape 7 – s’éloigner des prises : on utilise l’action “Génération de trajectoire” (§ 5.2.2.1)pour relacher les contraintes sur l’accélération des mains. L’hv retrouve alors sa posture dedépart.

97

Page 100: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 101: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6

Validations

Ce chapitre confronte la simulation et l’expérimentation sur des cas simples. Des campagnesd’essais sur 4 sujets volontaires ont été réalisées à l’ inrs. Une partie des essais a pour ob-

jectif d’étudier et de comparer les postures adoptées à partir de consignes par les sujets et parl’hv. Une autre partie a pour objectif d’étudier et de comparer les réflexes des sujets et de l’hv.En tout, 4 type d’essais ont été effectués.

Des capteurs d’efforts sont placées à chacune des interactions du sujet avec l’environnement :pieds et mains. Les mouvements des sujets sont également capturés. On effectue une reconstruc-tion de mouvement afin de passer des coordonnées des marqueurs aux coordonnées articulairesdu mannequin virtuel.

Les conditions des essais sont simulées : la disposition de l’environnement ainsi que les mou-vements du sol sont reproduits à l’identique en simulation. Le comportement de l’hv est généré àl’aide des lois de commande précédemment présentées. L’hv est entièrement autonome et n’uti-lise aucune donnée expérimentale.

Enfin, les résultats issus des expérimentations sont confrontés aux résultats des simulations.On compare en particulier l’évolution du CdM et les efforts d’interactions. L’expérimentationnous permet d’ajuster les paramètres de la loi de commande pour que le comportement de l’hv serapproche de celui des sujets. On trouve ainsi des valeurs physiques pour ces paramètres, jusqu’àprésent fixés arbitrairement.

Ce travail constitue une première étape de validation. Outre les résultats des confrontationscalculs/essais, il illustre une démarche complète de validation biomécanique qui peut être étendueà d’autre cas de simulation, dans le cadre de recherches ultérieures.

99

Page 102: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Sommaire6.1 Matériels et méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

6.1.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016.1.2 Instrumentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016.1.3 Sujets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026.1.4 Description des essais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

6.1.4.1 Essai 01 : consigne en effort . . . . . . . . . . . . . . . . . . . . 1026.1.4.2 Essai 02 : perturbation latérale du support . . . . . . . . . . . 1036.1.4.3 Essai 03 : atteindre une cible . . . . . . . . . . . . . . . . . . . 1046.1.4.4 Essai 04 : perturbation latérale du support et préhension . . . 104

6.1.5 Pré-traitements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056.1.5.1 Synchronisation . . . . . . . . . . . . . . . . . . . . . . . . . . 105

6.1.5.2 Capture de mouvements viconr . . . . . . . . . . . . . . . . . 1056.1.5.3 Plate-forme d’efforts . . . . . . . . . . . . . . . . . . . . . . . . 106

6.2 Résultats et discussions . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

6.2.1 Mise en œuvre des simulations . . . . . . . . . . . . . . . . . . . . . . . 1066.2.2 Classification des résultats . . . . . . . . . . . . . . . . . . . . . . . . . . 1066.2.3 Essai 01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

6.2.3.1 Préliminaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076.2.3.2 Comparaison CdM . . . . . . . . . . . . . . . . . . . . . . . . . 1076.2.3.3 Comparaison des efforts . . . . . . . . . . . . . . . . . . . . . . 1096.2.3.4 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

6.2.4 Essai 02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1096.2.4.1 Préliminaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1096.2.4.2 Comparaison CdM . . . . . . . . . . . . . . . . . . . . . . . . . 1106.2.4.3 Comparaison des efforts . . . . . . . . . . . . . . . . . . . . . . 1106.2.4.4 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

6.2.5 Essai 03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1136.2.5.1 Analyse des résultats . . . . . . . . . . . . . . . . . . . . . . . 1136.2.5.2 Comparaison des efforts . . . . . . . . . . . . . . . . . . . . . . 1146.2.5.3 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

6.2.6 Essai 04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1156.2.6.1 Analyse des résultats . . . . . . . . . . . . . . . . . . . . . . . 1156.2.6.2 Comparaison CdM . . . . . . . . . . . . . . . . . . . . . . . . . 1176.2.6.3 Comparaison des efforts . . . . . . . . . . . . . . . . . . . . . . 1176.2.6.4 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

6.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

100

Page 103: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.1. MATÉRIELS ET MÉTHODES

6.1 Matériels et méthodes

6.1.1 Objectifs

Quatre essais ont été réalisés sur des sujets humains pour confronter l’expérience aux simu-lations. Afin de minimiser la variabilité inhérente au comportement humain, on s’est intéresséà des cas simples, délimité par le protocole d’expérience. Pendant ces essais, les déplacementsdes sujets et les efforts qu’ils appliquent sur l’environnement ont été mesurés. Chaque essai a étéréalisé trois fois par chaque volontaire pour tenir compte des dispersions souvent importantesdans le domaine biomécanique.

La loi de commande contient de nombreux paramètres d’asservissements qu’il est difficile dequantifier. L’intérêt de confronter ce modèle de comportement à la réalité est aussi d’ajuster cesasservissements.

6.1.2 Instrumentation

(a) Capteur ati. (b) Système viconr. (c) Banc vibratoire.

Figure 6.1 – Instrumentation de la campagne d’essais.

Les équipements se situent dans le laboratoire inrs/msmp 1. Les efforts entre le sujet etl’environnement sont mesurés à l’aide de capteurs ati (figure 6.1(a)) :

– interactions pieds : 2 capteurs Delta SI 660-60 (FmaxX = Fmax

Y = 660 N ; FmaxZ = 1980 N ;

Cmax = 60 N.m−1) ;– interaction main : 1 capteur Delta SI 1500-240 (Fmax

X = FmaxY = 1500 N ; Fmax

Z = 3750 N ;Cmax = 240 N.m−1).

Les déplacements du sujet sont mesurés à l’aide du système de capture de mouvement viconr

(figure 6.1(b)). La reconstruction du mouvement permet d’obtenir les coordonnées articulairesde l’hv aux dimensions du sujet. Enfin, les perturbations du sol sont provoquées par un bancvibratoire (figure 6.1(c)) en régime transitoire. Après plusieurs essais, un profil de perturbationde 15 cm d’amplitude a été retenu (figure 6.3). Les fréquences d’échantillonnage des mesures sontdonnées dans le tableau 6.1.

1. msmp : Modélisation des Systèmes Mécaniques et de Prévention à Vandœuvre

101

Page 104: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Système de Période d’Nbr

mesure échantillonagecapteur d’efforts 0.01 s 3

caméra viconr 0.01 s 6caméra vidéo 0.04 s 1

Table 6.1 – Systèmes de mesure.

Nom du N du Masse Taillesujet sujet (kg) (m)

alexandre 1 77 1.83cyrille 2 75 1.86jonathan 3 80 1.89laurent 4 75 1.77

moyenne 76.75 1.84

Table 6.2 – Masses et tailles des sujets.

Table 6.3 – Déplacement du banc vibratoirelors des essais 02 et 04.

Sans Avecpréhension préhension

Posture Essai 01 Essai 03Réflexe Essai 02 Essai 04

Table 6.4 – Objectifs de chaque essai.

6.1.3 Sujets

Quatre hommes, âgés de 25 à 40 ans, ont réalisé l’ensemble des 4 essais. La masse et la tailledes sujets sont indiqués dans le tableau 6.2.

6.1.4 Description des essais

Chaque essai a été effectué 3 fois par les 4 volontaires. La moitié des essais a pour but decaractériser une posture donnée, par les forces d’interaction entre le sujet et son environnement.L’autre moitié sert à mettre en évidence un comportement réflexe suite à une perturbation. Letraitement de la préhension étant un des points clés de la loi de commande, la moitié des essaismet en jeu une prise pour le maintien de l’équilibre. L’objectif de chaque essai est résumé dansle tableau 6.4. Lors des essais 02 et 04, le banc vibratoire exécute une translation en suivant leprofil de la figure 6.3.

6.1.4.1 Essai 01 : consigne en effort

Dans l’essai 01 (figure 6.2), le sujet est en position debout, une main contre un appui vertical.Au début de l’essai, il n’applique aucun effort sur ce support. Il a pour objectif d’appliquer uneffort de consigne à l’aide de sa main gauche. Un oscilloscope, placé en face du sujet, lui indiqueà chaque instant l’effort qu’il exerce sur ce support. La consigne de force de 120 N est aussiindiquée sur l’oscilloscope. Pour atteindre cette consigne, tout en gardant les deux pieds au sol,le sujet doit s’avancer pour garder son équilibre, qui dans ce cas, peut être considéré commestatique. Il a pour objectif d’atteindre cette consigne en quelques secondes (environs 5 s).

Cet essai permet de connaître la validité du calcul de CdM de consigne ainsi que la validitéde la gestion de la redondance. Dans le chapitre 3, la position du CdM de consigne stable estcalculée pour une configuration de contact connue et des efforts de contact désirés (§ 3.2). Ensimulation, il s’agit d’imposer des efforts de contact au niveau de la main identiques aux efforts

102

Page 105: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.1. MATÉRIELS ET MÉTHODES

(a) Sujet (b) Reconstruction

Figure 6.2 – Essai 01 : consigne en effort sur la main gauche.

mesurés, pour observer la posture automatiquement adoptée par l’hv. On peut donc comparer laposition du CdM, la posture globale et les efforts d’interaction, notamment au niveau des pieds.

6.1.4.2 Essai 02 : perturbation latérale du support

(a) Sujet (b) Reconstruction

Figure 6.3 – Essai 02 : perturbation du sujet dans le plan sagittal.

Dans l’essai 02 (figure 6.3), le sujet est debout sur le banc vibratoire, les deux bras le longdu corps. Le banc se translate avant d’arriver en butée et de s’arrêter brutalement. Le sujet estperturbé dans le plan sagittal. Il connaît la direction de la perturbation, ce qui influence soncomportement. Cependant, il ne sait pas précisément quand celle-ci va se produire. Toutes lesmesures ont été prises pour limiter les risques de chute de plain-pied : limitation des accéléra-tions, déplacement raisonnable du sol, encadrement du sujet.

Cet essai permet d’évaluer sur un cas simple le comportement réflexe de l’hv suite à uneperturbation. L’expérimentation permet d’ajuster les paramètres de la loi de commande tel quele suivi du CdM de consigne, jusqu’alors défini arbitrairement. Un recalage est donc possiblepour obtenir un temps de réponse à une perturbation et un retour à l’équilibre plus réaliste del’hv.

103

Page 106: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

6.1.4.3 Essai 03 : atteindre une cible

(a) Sujet (b) Reconstruction

Figure 6.4 – Essai 03 : atteindre une cible en s’aidant d’une prise.

Dans l’essai 03 (figure 6.4), le sujet est en position debout. Il ne doit pas déplacer ses pieds.Son objectif est de saisir avec sa main droite une balle située de son côté droit, en arrière. Celle-ci est trop éloignée pour être atteinte directement sous peine de perdre l’équilibre. Il saisit uneprise avec sa main gauche située devant lui, sur sa gauche. En s’aidant de celle-ci, il peut alorsse pencher pour atteindre la balle, tout en gardant son équilibre.

Comme dans l’essai 01, il s’agit principalement de comparer les efforts d’interaction une foisl’objectif réalisé. Un problème se pose en simulation : générer le CdM de consigne sans connaîtrela consigne d’effort de la main gauche. Dans un premier temps, on peut contourner ce problème enutilisant comme donnée d’entrée de la simulation, la posture finale obtenue par la reconstructiondu mouvement. L’intérêt de cet essai réside alors uniquement dans la comparaison des effortsd’interaction et enlève partiellement à la méthode ses propriétés de gestion autonome. Une autresolution est de laisser le CdM de consigne au dessus des pieds. Le CdM réel s’en éloigne pourpermettre à la main gauche d’atteindre la cible, ce qui est traité comme une contrainte alors quela position du CdM est uniquement une consigne, qu’il n’est pas obligatoire de satisfaire.

6.1.4.4 Essai 04 : perturbation latérale du support et préhension

Dans l’essai 04 (figure 6.5), le sujet est debout sur le banc vibratoire. Il saisit une prise avecsa main droite qui l’aide à garder son équilibre. Il s’agit alors du même protocole que dans l’essai02. Le banc se translate avant d’arriver en butée et de s’arrêter brutalement. Le sujet est per-turbé dans le plan sagittal. Comme dans l’essai 02, on ajuste les asservissements et priorités del’algorithme de résolution du problème quadratique.

D’autre part, on a observé dès les premiers essais que l’utilisation de la prise évolue considé-rablement au cours des essais chez un même sujet. Dans le premier essai, le sujet, probablementpar appréhension, s’accroche de toutes ses forces à la prise pour conserver son équilibre. Dansles essais suivants, l’effort appliqué sur la prise diminue et est mieux réparti sur les pieds. Il estintéressant de comparer les essais 02 et 04.

104

Page 107: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.1. MATÉRIELS ET MÉTHODES

(a) Sujet (b) Reconstruction

Figure 6.5 – Essai 04 : perturbation du sujet s’aidant d’une prise dans le plan sagittal.

6.1.5 Pré-traitements

6.1.5.1 Synchronisation

Les mesures de forces, mouvements et vidéos ont été synchronisées à l’aide d’un signal chocinitial sur un des capteur ati, avec un marteau équipé de mires viconr.

6.1.5.2 Capture de mouvements viconr

Figure 6.6 – Processus de reconstruction de mouvements de l’hv à partir des données viconr.

Un marqueur doit être visible par au moins deux caméras pour permettre la déterminationde ses 3 composantes spatiales. Au cours de la mesure, certains marqueurs peuvent être occul-tés quelques instants. Il faut alors les reconnaître lorsqu’ils apparaissent à nouveau. Une foisla mesure terminée, une étape de numérotation des marqueurs capturés est nécessaire. À la finde cette étape, tous les marqueurs sont identifiés mais certaines acquisitions peuvent manquersuite à des occultations des mires. On réalise alors une interpolation pour obtenir les échantillonstemporels manquants. D’autre part, un filtrage peut être effectué pour atténuer le bruit dû auximprécisions de mesures.

105

Page 108: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

On effectue alors la reconstruction des mouvements capturés sous Arboris. L’hv utilisé pourcette reconstruction à 36 ddl (données provenant de Humans [INR06]). À partir de la taille et dela masse des sujets, on calcule un facteur d’échelle qui permet d’obtenir la longueur, la masse etl’inertie de tous les segments corporels de leur avatar et la position des marqueurs viconr surl’hv. Il ne reste plus qu’à faire coïncider les marqueurs de l’hv avec les données capturées pourchaque instant de l’essai réalisé. On obtient ainsi la position du corps racine ainsi que la configu-ration articulaire qui permet de définir complètement la posture de l’avatar. Cette opération esteffectuée par un algorithme d’optimisation de type descente de gradient, en pondérant les mar-queurs. Les mires sont placées sur des repères anatomiques du sujet. D’un sujet à l’autre, il estdifficile de positionner précisément certaines mires. On affecte un poids différents aux marqueursen fonction de la pertinence que l’on accorde à chaque mesure. La solution moyenne obtenue serapproche de la configuration des marqueurs mesurée. Cette solution est satisfaisante, notam-ment au regard de l’exploitation que l’on fait de ces données : la reconstruction de mouvementsest utilisée principalement pour obtenir la position du CdM et une allure de comportement (fi-gure 6.6). Pour alléger la présentation des résultats, les articulations ne sont pas étudiées une àune.

6.1.5.3 Plate-forme d’efforts

Des plaques ou poignées sont montées sur les capteurs d’effort. Dans les essais 02 et 04, unessai à vide (sans sujet) est effectué, afin d’obtenir la contribution dynamique des supports auxefforts mesurés. On retranche par la suite ces efforts à vide sur les essais effectués avec sujet.

6.2 Résultats et discussions

6.2.1 Mise en œuvre des simulations

Le même avatar (masses, dimensions) est utilisé à la fois pour les simulations et pour lareconstruction du mouvement. L’origine du repère scène de la simulation Arboris est confondueavec l’origine du repère viconr. L’environnement extérieur (prises, mur) est repéré et modéliséà l’échelle. Cet environnement intervient dans les calculs comme un robot commandé cinémati-quement. Lors des essais 02 et 04, on commande cinématiquement en position et vitesse le solafin de reproduire exactement le même mouvement de translation.

Pour chaque essai, on effectue une simulation avec les caratéristiques corporelles de chaquesujet – soit un total de 16 simulations. Pour chaque simulation, la posture de référence de l’hv estla posture obtenue par reconstruction de mouvement. Pour chaque série, on choisit une postureinitiale parmi les trois essais disponibles. Chaque simulation correspond donc à une série et peutêtre comparée avec les 3 essais effectués au cours de cette série.

6.2.2 Classification des résultats

Essai n 1 Essai n 2 Essai n 3 Simulation n 1 Simulation n 2

Figure 6.7 – Légende des couleurs pour les courbes.

Les résultats sont présentés sous forme de courbes. Chaque essai étant réalisé 3 fois par sujet,on les représente par une couleur bleue de nuance différente. Les résultats des simulations sontreprésentés en rouge. Pour les essais 02 et 04, deux simulations sont réalisées avec des paramètres

106

Page 109: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.2. RÉSULTATS ET DISCUSSIONS

de loi de commande différents. Le code des couleurs employé est détaillé dans la figure 6.7. Deplus, on trace le déplacement du CdM dans l’espace. Sa position initiale sera représentée par unesphère verte • et sa position finale par une sphère rouge •.6.2.3 Essai 01

6.2.3.1 Préliminaires

(a) Sujet 01 (b) Sujet 02 (c) Sujet 03 (d) Sujet 04

Figure 6.8 – Essai 01 : comparaison posture finale. Pour chaque sujet, la posture de gauche estle résultat de la simulation, la posture de droite est obtenue par reconstruction de mouvement.

La position et l’effort de consigne de la main gauche sont fournis comme données d’entrée àla loi de commande. La main gauche de l’hv suit une trajectoire générée par interpolation pouratteindre le mur. On active alors les contacts de la main gauche à la fois dans le calcul des couplesarticulaires et du CdM de consigne. Dans ce dernier calcul, les forces de contact désirées sontde 120 N, correspondant ainsi à l’effort de consigne que doit appliquer le sujet sur le mur. Parconséquent, le CdM de consigne, calculé automatiquement, avance vers le mur. On se contented’utiliser le calcul présenté § 3.2. Ce calcul ne prend pas en compte le critère de robustesse. L’hvadapte sa posture et se penche vers le mur.

Dans la simulation, l’hv remonte les épaules et les bras en s’appuyant sur le mur. Ce phé-nomène n’a pas été constaté lors des essais (figure 6.8). En s’avançant, les sujets abaissent leurCdM. Or, ce phénomène naturel n’est pas pris en compte par la commande. La hauteur du CdMde consigne de l’hv reste constante. En s’avançant, l’hv compense donc en levant les épauleset les bras. Dans le chapitre 3, la hauteur du CdM n’est pas déterminée automatiquement enfonction de la configuration des contacts. Une idée est de s’assurer que la distance du CdM aupied reste constante. Lorsque le CdM avance, il s’abaisserait.

Les sujets appuient progressivement sur le mur jusqu’à atteindre la consigne en effort de120 N. L’effort de consigne de l’hv est un créneau d’amplitude 120 N. L’implémentation de lacommande permettant à l’hv d’appuyer progressivement sur le mur jusqu’à l’effort de consigneest laissée en perspective.

6.2.3.2 Comparaison CdM

Le déplacement du CdM de l’hv est comparable à celui des sujets (figure 6.9). Chez les sujets01 et 03, la position du CdM de simulation est très proche de celle du CdM en pratique. Chezles sujets 02 et 04, la position mesurée du CdM est plus proche du mur que celle de l’hv. Dans lasimulation, la position du CdM de consigne est calculée automatiquement uniquement à partirdes positions et des efforts de consigne de la main gauche et des pieds. Ces résultats sont donc très

107

Page 110: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Figure 6.9 – Essai 01 : évolution dans le plan du CdM. Pour le sujet cyrille, deux essais surtrois sont exploitables. Pour le sujet jonathan, un seul des trois essais est utilisable. Unités : m.

108

Page 111: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.2. RÉSULTATS ET DISCUSSIONS

satisfaisants car on observe une bonne corrélation de la posture finale entre essai et simulation.La loi de commande peut donc effectivement prédire la posture à adopter pour appliquer uneconsigne désirée. La prise en compte des marges de stabilité pour la détermination du CdM deconsigne pourrait prédire une position plus proche des sujets 02 et 04.

6.2.3.3 Comparaison des efforts

ESSAI 01 Pied Gauche Pied droit Main Gauche

Efforts (N) N.−→X

−→Y

−→Z N.

−→X

−→Y

−→Z N.

−→X

−→Y

−→Z

Bilan Exp. +380 +088 +035 -368 +414 +047 -040 -408 +132 +036 +001 -127

Sim. +385 +085 +036 -374 +379 +048 -023 -374 +118 -004 +002 -118

Table 6.5 – Essai 01 : bilan de comparaison entre expériences et simulations des efforts. Onindique la norme de l’effort (N.) puis les 3 composantes de l’effort.

On observe une bonne corrélation entre les efforts issus de l’expérimentation et de la simu-lation (tableau 6.5). On relève un écart important des efforts de la main gauche tangents aumur. L’hv exerce sur le mur un effort très proche de la consigne (

−→Z ≃ 120 N,

−→X ≃ −→Y ≃ 0 N).

Les sujets appliquent le bon effort normal mais aussi de manière inconsciente un effort tangent(−→X ≃ 36 N).

6.2.3.4 Bilan

À partir d’un effort de consigne sur la main gauche, la loi de commande permet de prédirecorrectement la posture à adopter par l’hv. On observe une bonne adéquation en termes d’effortsd’interactions et de déplacement du CdM.

Plusieurs modifications de la loi de commande permettraient sans doute d’améliorer l’adé-quation du modèle à la réalité :

– gérer la hauteur du CdM de consigne ;– calculer le CdM de consigne en introduisant un critère de stabilité ;– introduire progressivement l’effort de consigne de la main gauche.

6.2.4 Essai 02

6.2.4.1 Préliminaires

(a) Sujet 01 (b) Sujet 02 (c) Sujet 03 (d) Sujet 04

Figure 6.10 – Essai 02 : comparaison des postures. Pour chaque sujet, la posture de gauche estle résultat de la simulation, la posture de droite est obtenue par reconstruction de mouvement.

109

Page 112: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

La posture de référence de l’hv est choisie comme la posture initiale des sujets, obtenue parreconstruction des mouvements. Lors de l’initialisation de la commande, la répartition des effortsde consigne des contacts pieds/sol est calculée. Celle-ci permet d’équilibrer le CdM de la posturede référence. Les sujets ont leur poids réparti plus ou moins sur l’avant des appuis.

Quelques simulations préliminaires montrent que l’asservissement sur le CdM est le facteurle plus important du comportement de l’hv. Afin d’ajuster la commande de l’hv aux essais sursujets, deux simulations ont été réalisées par sujet, avec des asservissements différents concernantle mouvement du CdM :

– simulation n 1 : kcdm = 500 N.m−1, µcdm = 250 N.s.m−1.kg−1 ;– simulation n 2 : kcdm = 500 N.m−1, µcdm = 100 N.s.m−1.kg−1.

La coordination posturale est assez différente entre l’hv et les sujets. Les asservissements etpriorités liés à la posture n’ont pas été recalés. Dans notre validation, on s’est intéressé unique-ment au recalage de l’asservissement du CdM. Cet asservissement influence le temps de réponsedu système pour atteindre le CdM de consigne mais aussi le profil des efforts d’interaction del’hv avec le sol.

6.2.4.2 Comparaison CdM

On observe des comportements différents d’un sujet à l’autre (figure 6.11), notamment l’évo-lution postérieure/antérieure du CdM lors de la perturbation. L’hv conserve la même position deCdM dans l’axe postérieur/antérieur. En ce qui concerne les efforts, au début de l’essai, les sujetsont tendance à être plus en appui sur l’avant des pieds qu’à la fin de l’essai. Cette reconfigurationn’est pas constatée dans la simulation.

L’évolution relative latérale du CdM en fonction du temps (figure 6.12) permet d’observer lestemps de réponse des deux asservissements testés en simulation. À raideur égale, l’amortissementle plus faible donne le temps de réponse le plus court, ce qui peut provoquer la perte d’équilibrede l’hv. Par exemple, la simulation n 2 du sujet 03 ne donne pas de retour à l’équilibre. Ceciest probablement du au fait que le sujet est initialement en appui sur la pointe des pieds, ce quidiminue la capacité de l’hv à retrouver l’équilibre dans la simulation.

La région délimitée par les 2 simulations englobe (surtout suivant l’axe postérieur/antérieur)les résultats expérimentaux, ce qui est très satisfaisant. On observe un phénomène d’oscillationsur les courbes expérimentales, que l’on ne retrouve pas en simulation. Ce phénomène est plusou moins atténué d’un sujet à l’autre.

6.2.4.3 Comparaison des efforts

Le pic d’effort lors du déplacement du banc vibratoire est comparable entre simulation etexpérimentation (figures 6.13 et 6.14). On observe un phénomène d’oscillations sur la mesure desefforts d’interaction du pied gauche et du pied droit avec le sol. La simulation n 1 a une réponsetrop amortie. Avec la simulation n 2, on observe une première oscillation suite au pic d’effortcomparable à l’expérimentation. En augmentant la raideur et/ou diminuant l’amortissement,il est probable que l’on observe d’autres cycles d’oscillations. Cependant, on se heurte à desproblèmes de convergence.

6.2.4.4 Bilan

Les deux simulations englobent la zone des essais aussi bien pour le déplacement du CdMque pour les efforts d’interactions. La simulation n 2 permet d’obtenir une réponse plus fidèle à

110

Page 113: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.2. RÉSULTATS ET DISCUSSIONS

Figure 6.11 – Essai 02 : évolution absolue du CdM dans le plan. Pour le sujet jonathan, l’hvn’a pas retrouvé l’équilibre dans l’une des deux simulations. Unités : m.

111

Page 114: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Figure 6.12 – Essai 02 : évolution relative latérale (axe de la perturbation) du CdM en fonctiondu temps. La position du CdM est exprimée dans le repère attaché au sol en mouvement.

Figure 6.13 – Essai 02 : évolution de la norme de la force du pied gauche.

112

Page 115: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.2. RÉSULTATS ET DISCUSSIONS

Figure 6.14 – Essai 02 : évolution de la norme de la force du pied droit.

la réalité.

En perspective, des essais complémentaires et des modifications de la loi de commande per-mettraient probablement d’améliorer encore la pertinence de notre modélisation :

– tout d’abord, il faut mieux rendre compte du phénomène d’oscillation sur le déplacementdu CdM et les efforts d’interaction. Le corps humain est une structure souple donc oscillantelorsque elle est soumise à une perturbation ;

– la coordination posturale peut être également améliorée grâce au réglage les gains desasservissements et priorités des optimisations ;

– enfin, suite à une perturbation, on pourrait redéfinir la position du CdM de consigne dansl’axe postérieur/antérieur, en s’appuyant sur les marges de stabilité. On améliorerait ainsile retour à l’équilibre de l’hv.

6.2.5 Essai 03

6.2.5.1 Analyse des résultats

Une première simulation a été effectuée en spécifiant uniquement les positions de la prise pourla main gauche et de la cible pour la main droite. Le résultat n’est pas concluant. En simulation,le CdM s’écarte très peu de sa position initiale (figure 6.6). En termes d’efforts, l’hv utilise trèspeu sa main gauche pour se maintenir (tableau 6.7). À l’opposé, les sujets reculent et s’aidentde leur prise avec la main gauche pour atteindre la cible.

Le CdM de consigne n’évolue pas au cours de la simulation. Contrairement à l’essai 01, l’effortde consigne de la main gauche est inconnu. Cet effort est difficilement quantifiable et dépendde la posture adoptée par le sujet pour atteindre la cible. Pour ce type de problème, la loi de

113

Page 116: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Table 6.6 – Essai 03 : évolution dans leplan du CdM sans l’indication de positiondu CdM finale. Unités : m.

Efforts Pied Pied Main

normés Gauche Droit Gauche

Expérience 380 360 155

Simulation 360 380 25

Écart (%) 5 6 84

Table 6.7 – Essai 03 : comparaison entre ex-périences et simulations des efforts. Norme desefforts d’interactions appliqués en position finaleen N.

commande est inadaptée. Elle ne permet pas de prédire la posture à adopter et les efforts àappliquer pour que l’hv atteigne la cible. Pour aller plus loin dans l’expérimentation, on fait unehypothèse supplémentaire. La position finale du CdM est connue et provient de l’expérimentation.

(a) Sujet 01 (b) Sujet 02 (c) Sujet 03 (d) Sujet 04

Figure 6.15 – Essai 03 : comparaison posture finale. Pour chaque sujet, la posture de gauche estle résultat de la simulation, la posture de droite est obtenue par reconstruction de mouvement.

En spécifiant la posture initiale et le CdM final, l’évolution du CdM de l’hv est très corré-lée avec celles des expérimentations. Les postures finales entre simulations et expérimentationssont très proches (figure 6.15). La redondance de la posture de l’hv est gérée par la commande.L’orientation du thorax est actualisée en fonction de la position des effecteurs. Il n’est perti-nent que de comparer les efforts, puisque les CdM ont fait l’objet d’une hypothèse qui les rend“artificiellement” très proches.

6.2.5.2 Comparaison des efforts

ESSAI 03 Pied Gauche Pied droit Main Gauche

Efforts (N) N.−→X

−→Y

−→Z N.

−→X

−→Y

−→Z N.

−→X

−→Y

−→Z

Bilan Exp. +349 -093 -052 +331 +379 -016 -046 -375 +128 +034 -072 +089

Sim. +357 -087 -040 +344 +422 -032 -054 -417 +142 +089 -110 +011

Table 6.8 – Essai 03 : comparaison entre expériences et simulations des efforts. On indique lanorme de l’effort (N.) puis ses 3 composantes. Unité : N.

114

Page 117: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.2. RÉSULTATS ET DISCUSSIONS

On observe une bonne corrélation au niveau des efforts d’interaction des pieds (tableau 6.8).Les efforts de la main gauche sont comparables en norme mais pas en direction. La mauvaiseestimation des couples et efforts de préhension de saturation peut être à l’origine de ces différencesentre simulation et expérimentation.

6.2.5.3 Bilan

Notre algorithme de commande ne permet pas de prédire la posture et les efforts d’interactionpour les tâches d’atteinte de cible. Sans information sur l’effort de consigne à exercer sur la prise,l’hv a un comportement différent de l’humain. En ajoutant une hypothèse très restrictive surla position du CdM final de l’hv, on a comparé les efforts d’interactions. Il y a une mauvaisecorrélation sur les efforts exercés par la main qui tient la prise gauche. L’étude de l’influence dela saturation des efforts de préhension sur cette corrélation est laissée en perspective.

6.2.6 Essai 04

6.2.6.1 Analyse des résultats

(a) Sujet 01 (b) Sujet 02 (c) Sujet 03 (d) Sujet 04

Figure 6.16 – Essai 04 : comparaison de postures. Pour chaque sujet, la posture de gauche estle résultat de la simulation, la posture de droite est obtenue par reconstruction de mouvement.

Le dispositif de l’essai 02 est complexifié. On s’intéresse à la réaction simple à une pertur-bation de l’hv s’aidant d’une prise. Le CdM de consigne est mis à jour en tenant compte de laposition des pieds de l’hv. Les mêmes efforts de contact désirés au niveau des pieds que dansl’essai 02 sont utilisés. L’effort de préhension désiré est nul.

Comme dans l’essai 02, on réalise deux simulations avec différents gains des asservissementsde la position du CdM :

– simulation n 1 : kcdm = 500 N.m−1, µcdm = 250 N.s.m−1.kg−1 ;– simulation n 2 : kcdm = 500 N.m−1, µcdm = 100 N.s.m−1.kg−1.

Ces deux premières simulations montrent une mauvaise corrélation en termes d’efforts d’in-teraction entre simulation et expérimentations. On étudie alors l’influence d’un paramètre sup-plémentaire de la loi de commande, la saturation de l’effort de préhension :

– simulation n 1 : fmax = 200 N, mmax = 80 N.m−1 ;– simulation n 2 : fmax = 050 N, mmax = 20 N.m−1.

Pour simplifier la présentation, gains et saturations sont étudiés simultanément. L’influencede chaque paramètre n’est pas exposée.

115

Page 118: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Figure 6.17 – Essai 04 : évolution absolue du CdM dans le plan. Unités : m.

116

Page 119: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.3. CONCLUSION

6.2.6.2 Comparaison CdM

D’une part, les comportements sont différents d’un sujet à l’autre (figure 6.17). D’autre part,on note peu de différences entre les simulations n 1 et n 2 en ce qui concerne l’évolution dansle plan du CdM. Le déplacement simulé du CdM se trouve dans le corridor de variabilité desrésultats expérimentaux.

L’évolution relative latérale du CdM en fonction du temps permet d’observer les temps deréponse des deux asservissements testés (figure 6.18). Contrairement à l’essai 02, on n’observepas d’instabilité dans les simulations. L’hv est soumis à la même perturbation que dans l’essai02 mais la prise saisie par la main droite améliore sa stabilité.

Suivant l’axe médial/latéral, les 2 simulations sont comparables aux résultats expérimen-taux, ce qui est très satisfaisant. On observe un petit phénomène d’oscillation sur les courbesexpérimentales, que l’on ne retrouve pas en simulation.

6.2.6.3 Comparaison des efforts

On trouve des différences importantes entre les deux simulations en termes d’efforts d’inter-actions (figures 6.19, 6.21 et 6.20). Pour la simulation n 1, la norme des efforts des pieds restepratiquement constante. Ces résultats sont très éloignés de la réalité. La variation d’efforts pro-duite par la perturbation semble se répercuter uniquement sur l’effort exercé par la main droite.La simulation n 2, dans laquelle on a diminué la saturation de l’effort de préhension, donne desrésultats plus proches de la réalité. On observe une répartition des efforts d’interactions plusplausible. L’hv n’utilise pas uniquement sa main droite pour compenser la perturbation maisaussi ses pieds. En diminuant la saturation de l’effort de préhension, on observe également unediminution de la norme de l’effort exercé par la main droite sur la prise (figure 6.20). De plus,l’effort n’est pas exercé dans la même direction.

6.2.6.4 Bilan

À partir de la même posture initiale que les sujets, le comportement de l’hv est proche decelui des sujets. Les deux simulations permettent d’englober le corridor de variabilité des essaispour le déplacement du CdM. La simulation n 2 permet d’obtenir une réponse plus fidèle à laréalité en terme d’efforts d’interaction.

En perspective, une analyse complémentaire des essais et des modifications de la loi de com-mande permettraient peut-être d’améliorer l’adéquation de notre loi de commande à la réalité :

– interpréter suivant chaque axe les efforts d’interactions ;– implémenter une saturation isotrope de l’effort de préhension ;– étudier l’influence de la saturation des couples d’actionnement.

6.3 Conclusion

Cette étude dresse une première validation et permet un recalage de la loi de commande(tableau 6.9). Les résultats sont encourageants et ont démontré la grande souplesse d’utilisationde la loi de commande. L’identification très simple des paramètres clés de la commande a per-mis d’obtenir rapidement une bonne corrélation entre simulation et expérimentation. Il suffit demodifier l’asservissement du CdM et de la saturation de l’effort de préhension, c’est à dire deuxparamètres seulement, pour obtenir un recalage satisfaisant en terme de déplacement du CdM

117

Page 120: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Figure 6.18 – Essai 04 : évolution relative latérale du CdM en fonction du temps. La positiondu CdM est exprimée dans le repère attaché au sol en mouvement.

Figure 6.19 – Essai 04 : évolution de la norme de la force du pied gauche.

118

Page 121: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

6.3. CONCLUSION

Figure 6.20 – Essai 04 : évolution de la norme de la force du pied droit.

Figure 6.21 – Essai 04 : évolution de la norme de la force de la main droite.

119

Page 122: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 6. VALIDATIONS

Comparaison simulation / Numéro de l’essai

expérimentation Essai 01 Essai 02 Essai 03 Essai 04

Rôle prédictif de la commande oui oui non oui

Comparaison CdM oui oui - oui

Comparaison efforts oui oui moyen oui

Recalage paramètres - kcdm, µcdm -kcdm, µcdm

fmaxp , mmax

p

Table 6.9 – Bilan de la validation.

et d’efforts d’interaction.

Pour ces essais bien définis, on a observé des différences de comportement d’un essai à l’autrepour un même sujet et entre les sujets. La loi de commande ne permet pas de simuler rigoureu-sement tous ces comportements, c’est à dire ne permet pas de simuler la variabilité humaine.Elle donne cependant un comportement globalement comparable à la réalité. La modélisationdes interactions (contact, préhension) est adaptée aux problèmes traités. La loi de commandedonne à l’hv un comportement réflexe pertinent (essai 02 et 04). Elle génère une posture réalisteà partir d’informations concernant les efforts d’interaction (essai 01).

Une démarche plus complète et approfondie de validation, faisant l’objet en soi d’une thèse,pourrait être entreprise.

120

Page 123: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7

Cariste

Les renversements latéraux de chariots de manutention provoquent chaque année de nom-breux accidents mortels. La prévention dans ce domaine et le développement de systèmes

de retenue pour les conducteurs est une priorité pour l’ inrs. Comme il n’est pas possible dereproduire expérimentalement un cas complet réaliste de renversement de chariot avec un sujethumain pour des problèmes évidents de sécurité, on a recours à des outils de simulation, maisencore faut-il disposer d’un hv ayant un comportement dynamique réaliste. Ce chapitre présenteles premiers résultats de l’application de la loi de commande présenté dans cette thèse à la pro-blématique du cariste.

Tout d’abord, on présente un bref résumé des campagnes d’essais réalisées à l’ inrs concernantle renversement latéral du cariste. Deux types de banc d’essais ont été construits avec l’objectifde fournir des éléments de validation biomécanique représentatifs et utilisables pour un modèled’hv. On dresse un bilan qualitatif des comportements observés sur les sujets.

Puis, le comportement du cariste est simulé en utilisant les lois de commande de l’hv pré-sentées dans ce mémoire. Les cas de renversement traités sont présentés par ordre croissant decomplexité et de réalisme. On s’appuie sur des cas simples pour expliquer l’influence de certainsparamètres de la simulation et/ou de la commande (coefficient de frottement, effort de préhen-sion maximal, délai). Enfin, plusieurs cas de renversement complet avec un cariste virtuel sontdétaillés.

121

Page 124: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

Sommaire7.1 Problématique du cariste . . . . . . . . . . . . . . . . . . . . . . . . . . 123

7.1.1 Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1237.1.2 Résultats expérimentaux . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

7.1.2.1 Banc dynamique pour l’étude du virage en J . . . . . . . . . . 1257.1.2.2 Banc statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

7.1.3 Objectifs de la simulation . . . . . . . . . . . . . . . . . . . . . . . . . . 1277.2 Commande du cariste . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

7.2.1 Présentation du système . . . . . . . . . . . . . . . . . . . . . . . . . . . 1277.2.1.1 Modélisation du chariot . . . . . . . . . . . . . . . . . . . . . . 1277.2.1.2 Les différents types de renversement traités . . . . . . . . . . . 1287.2.1.3 Stratégies du cariste . . . . . . . . . . . . . . . . . . . . . . . . 1297.2.1.4 Paramètres testés . . . . . . . . . . . . . . . . . . . . . . . . . 130

7.2.2 Renversement simple : simulations . . . . . . . . . . . . . . . . . . . . . 1327.2.2.1 Classification des résultats . . . . . . . . . . . . . . . . . . . . 1327.2.2.2 Influence du coefficient de frottement et de l’effort de préhen-

sion maximal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1327.2.2.3 Influence du délai . . . . . . . . . . . . . . . . . . . . . . . . . 1337.2.2.4 Différences entre délai et stratégie . . . . . . . . . . . . . . . . 134

7.2.3 Renversement statique : simulations . . . . . . . . . . . . . . . . . . . . 1347.2.3.1 Classification des résultats . . . . . . . . . . . . . . . . . . . . 1347.2.3.2 Influence de la stratégie . . . . . . . . . . . . . . . . . . . . . . 1367.2.3.3 Influence du délai . . . . . . . . . . . . . . . . . . . . . . . . . 1367.2.3.4 Comparaison expérimentation / simulation . . . . . . . . . . . 136

7.2.4 Renversement dynamique : simulations . . . . . . . . . . . . . . . . . . . 1387.2.4.1 Classification des résultats . . . . . . . . . . . . . . . . . . . . 1387.2.4.2 Nouvelle stratégie : centrifuge . . . . . . . . . . . . . . . . . . 1397.2.4.3 Influence de la stratégie . . . . . . . . . . . . . . . . . . . . . . 139

7.3 Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . 142

7.3.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1427.3.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

122

Page 125: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.1. PROBLÉMATIQUE DU CARISTE

7.1 Problématique du cariste

Figure 7.1 – Chariot élévateur.

7.1.1 Contexte

En France, chaque année, les chariots élévateurs (figure 7.1) sont responsables en moyennede 8300 accidents 1 avec arrêt de travail dont 560 avec incapacité permanente. On déplore enmoyenne 10 accidents mortels par an mettant en cause des chariots élévateurs, dont la moitié estdue au renversement latéral de la machine. Le coût direct pour les entreprises est de 45 millionsd’euros par an. Les chariots sont des machines relativement instables du fait de leur Centre deMasse (CdM) élevé.

L’inrs conduit depuis 8 ans un projet de recherche multidisciplinaire impliquant des équipesd’ingénieurs et d’ergonomes (projet cemamo, Conception et Ergonomie des MAchines MObiles).L’approche est fondée sur l’observation de l’utilisation des machines en situation réelle de travailafin d’améliorer la conception des chariots. Ce travail se décompose en trois axes :

1. Normalisation = évaluation des risques. L’objectif est de développer une norme d’es-sai européenne cen 2 (Comité Européen de Normalisation) permettant de caractériser lastabilité des machines disponibles sur le marché. La difficulté réside dans la prise en comptela dynamique du véhicule. Le principe est d’effectuer un parcours à pleine vitesse en virageet de déterminer les dimensions minimales du couloir de sortie ne conduisant pas à unrenversement de la machine.

2. Conception = réduction des risques à la source :

Limiter le risque de renversement : le principe est de développer des outils numériquespermettant de prédire et d’optimiser le comportement dynamique de la machine. Onpeut prédire les effets d’un paramètre de conception (pneus, distribution de la masse,empattement . . . ) sur la stabilité de la machine avant même qu’elle ne soit fabriquée.

Minimiser les conséquences d’un renversement sur le conducteur : en effet, le risque derenversement n’est pas complètement maîtrisable. On ne pourra jamais empêcherun chariot de se renverser dans des cas de conduites extrêmes ou de sollicitationsextraordinaires (exemple : effondrement de quais). Dans ces circonstances, il fautgarantir l’intégrité du conducteur. Des systèmes sont disponibles : ceintures, portillons,etc. (figure 7.2). L’objectif de l’inrs est de mettre au point une méthode d’essaispermettant d’évaluer l’aptitude de ces systèmes à retenir le conducteur et à le protéger.

1. chiffres décennie 1993–20022. groupe de travail n 11 (Investigation into the lateral and general stability of industrial trucks covered by

standards en 1726-1 and en 1459), comité technique n 150 (safety of industrial trucks)

123

Page 126: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

3. Formation = gestion des risques résiduels et prise en compte de l’opérateur.L’utilisation de modèles physiques de tenue de route a permis de développer un simulateurde conduite. L’objectif est de mettre les apprenants en situation d’expérimentation deseffets d’une conduite à risque pour les sensibiliser. Un prototype de simulateur a été déve-loppé sur la base d’un cahier des charges pédagogique élaboré par un groupe de travail avecdes organismes de formation externes. Le prototype circule actuellement pour évaluationdans ces organismes.

Figure 7.2 – Différents systèmes de retenue du cariste : ceinture de sécurité, portillon de sécurité,coussins gonflables.

Dans le second axe, le développement d’une méthode d’essais pour évaluer les systèmes decontention présente une double difficulté :

− La première est de définir un ou des critères biomécaniques caractérisant l’efficacité réelledu système. Par exemple, un critère géométrique privilégierait les systèmes empêchant lesmembres de sortir du périmètre de la cabine. Un critère physique permettrait notammentde prendre en compte la force d’un impact s’il y a un choc d’une partie du corps avec lesol. Ces questions restent ouvertes.

− La seconde difficulté est de modéliser le comportement du cariste lors du renversement quine peut pas être considéré comme purement passif. En effet, le temps de renversement duchariot (une ou deux secondes) est suffisamment long pour que le conducteur ait plusieursréflexes. Cependant, il est difficile de réaliser des expérimentations sur sujets humains ensituation de renversement, même partiel, pour des raisons éthiques et de sécurité. Deuxapproches complémentaires sont envisagées.

La première utilise des mannequins physiques passifs. Une étude inrs démarre actuellementdans ce sens. La difficulté est d’adapter les mannequins existants de type HybridIII, originel-lement conçus pour des essais de crash automobile, afin de les faire “réagir” de manière réaliste.Cette approche nécessite des installations lourdes et coûteuses.

La seconde approche consiste à modéliser le comportement dynamique du conducteur ensimulation. L’humain virtuel interagit avec l’environnement (plancher, siège et volant). Il peututiliser cet environnement pour se maintenir dans la cabine lors du renversement dynamique.Ses capacités physiques à se maintenir sur son siège doivent être modélisées de façon réaliste. Ilest important de simuler plusieurs comportements actifs de l’hv, représentatifs des différentesréactions des caristes. Cette thèse répond à ces besoins de simulation et ce chapitre compare,dans un objectif de validation, des résultats de simulation avec des essais.

124

Page 127: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.1. PROBLÉMATIQUE DU CARISTE

7.1.2 Résultats expérimentaux

Ces dernières années, l’inrs a conçu et réalisé deux bancs d’essais de renversement poursimuler en laboratoire et avec des sujets humains le renversement latéral d’un chariot :

– renversement statique : le chariot (ou le banc d’essais) est à l’arrêt et son basculementest provoqué par un moyen externe (gravité – figure 7.4) ;

– renversement dynamique : le chariot (ou la nacelle du banc) est conduit à sa vitessemaximale (de 12 à 20 km/h), le renversement du cariste est provoqué, soit en roulant surun plan latéralement incliné, soit sous l’effet des forces d’inertie centrifuges en initiant unvirage brutal (rayon de braquage de l’ordre de 5 m – figure 7.3).

7.1.2.1 Banc dynamique pour l’étude du virage en J

Figure 7.3 – Campagne d’essais sur banc dynamique.

En octobre 2003, des essais de renversement dynamique latéral ont été réalisés avec quatresujets [Feu05] (figure 7.3). L’objectif du banc de renversement « virage en J » est d’analyser lecomportement d’un sujet humain lors d’une situation de renversement latéral provoqué par unvirage serré à grande vitesse en marche avant. Les efforts d’interaction au niveau des appuis ducariste dans son chariot et les mouvements des sujets ont été mesurés. Une première analyse desdonnées de force a permis de dégager essentiellement deux types de comportements : soit le sujets’agrippe et tire sur le volant pour essayer, sans succès, de rester dans la cabine, soit le sujetpousse sur le volant afin de se caler dans son siège et parvient ainsi à rester dans la cabine, maisuniquement lors d’essais à faible vitesse.

7.1.2.2 Banc statique

En 2006, des essais de renversement statique ont été réalisés avec quatre sujets [Gau] (fi-gures 7.4 et 7.5). Les efforts d’interaction ont été mesurés et tous les essais ont été filmés. Uneétude comparative des différents dispositifs de retenue testés sur les sujets a été effectuée.

Ces essais ont été réalisés avec un siège de conducteur simplifié. Il s’agit d’une plaque en boisrecouvert de deux matériaux différents (moquette figure 7.4 – téflon figure 7.5). Il n’y a pas dedossier. L’objectif est alors d’étudier l’influence du frottement entre le siège et le cariste sur lecomportement de ce dernier. Pour chaque revêtement, chaque sujet a réalisé deux essais. Dansle premier, la consigne est de ne pas chercher à résister à l’éjection. Dans le second essai, il estdemandé au sujet de chercher à se maintenir dans la cabine en s’appuyant sur les mains et jambes.

Le comportement du sujet et son maintien dans la cabine est très influencé par le type derevêtement du siège (et donc le coefficient de frottement) et la stratégie (active ou passive)adoptée par le sujet pendant le renversement.

125

Page 128: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

Figure 7.4 – Campagne d’essais sur banc statique. Le siège est une plaque en bois recouvertede moquette (coefficient de frottement élevé). Essai du haut : la consigne est de ne pas chercherà résister à l’éjection. Essai du bas : il est demandé au sujet de chercher à se maintenir dans lacabine en s’appuyant sur les mains et jambes.

Figure 7.5 – Campagne d’essais sur banc statique. Le siège est une plaque en bois recouvertede teflon (coefficient de frottement faible). Essai du haut : la consigne est de ne pas chercher àrésister à l’éjection. Essai du bas : il est demandé au sujet de chercher à se maintenir dans lacabine en s’appuyant sur les mains et jambes.

126

Page 129: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

7.1.3 Objectifs de la simulation

Pour aborder la problématique du cariste, la simulation est un moyen complémentaire àl’expérimentation. En effet, les campagnes d’essai sur sujets déjà réalisées ne permettent pas dereproduire une situation de renversement complète réaliste. Elles sont longues à mettre en œuvre.Quant aux essais sur mannequin passif, il est difficile d’actionner ce dernier pour qu’il adopteun comportement réaliste. En principe, la simulation de renversement dynamique de chariot està la fois moins coûteuse et plus flexible. Elle permet notamment de reproduire intégralementune situation de renversement de chariot, à condition que le modèle soit réaliste. Pour vérifierce caractère réaliste, il est important de confronter au préalable le modèle numérique avec desessais réels, afin d’en recaler les paramètres (présenté dans une certaine mesure au le chapitreprécédent).

Lors des campagnes d’essais sur sujets (§ 7.1.2.1 et § 7.1.2.2), on a observé que les réactionset stratégies réflexes étaient différentes d’un sujet à l’autre. C’est pourquoi il est important demodéliser différentes familles de réactions pour le cariste virtuel, qui correspondent le plus pos-sible aux réactions de l’homme.

L’objectif est d’utiliser la commande d’hv dynamiques permettant de prédire le comporte-ment mécanique d’un conducteur de chariot élévateur en situation de renversement latéral. Àplus long terme, l’inrs envisage d’intégrer le modèle d’hv à des outils de modélisation mécaniqueconventionnels, l’objectif étant de concevoir et d’optimiser des systèmes de retenue.

7.2 Commande du cariste

7.2.1 Présentation du système

7.2.1.1 Modélisation du chariot

Axe de renversementsimple

Axe de renversementstatique

Plancher

Siège

Volant et prisespour les mains

Figure 7.6 – Représentations du chariot : complet (à gauche) et simplifié (à droite). Les axesde rotation des renversements simple et statique sont représentés sur les deux figures.

Le chariot d’essai de l’inrs a été modélisé sous Arboris. Deux représentations (une simplifiéeet une plus complète) ont été créées. Dans tous les cas, le chariot est modélisé comme un objet

127

Page 130: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

commandé cinématiquement en position et en vitesse. Certaines parties du chariot sont activespour la détection de collisions (figure 7.6). C’est le cas du plancher et du siège. Les autres formesgéométriques du chariot sont utilisées comme indicateurs graphiques pour détecter visuellementles collisions entre le cariste et la cabine. On détaille par la suite les différents types de commandescinématiques pour le chariot.

7.2.1.2 Les différents types de renversement traités

Figure 7.7 – Renversement simple du chariot : position et vitesse angulaires de l’axe de renver-sement.

Figure 7.8 – Renversement statique du chariot : position et vitesse angulaires de l’axe de ren-versement.

On traite trois types de renversement. Le renversement simple est une rotation autour d’unaxe situé sous le siège au milieu de celui-ci (figure 7.6). Le chariot réalise un basculement de60 degrés avant de retourner à sa position initiale. L’évolution de l’angle au niveau de l’axe estdonnée figure 7.7. Le retour à la position verticale permet de conclure si l’hv a réussi à se main-tenir sur son siège, s’il a glissé ou s’il a lâché le volant. Ce renversement simple permet d’étudierl’influence de plusieurs paramètres sur l’équilibre du cariste, en particulier différentes stratégiesde retenue du cariste.

Le renversement statique est une rotation autour d’un axe se situant au niveau des roues(figures 7.4, 7.5 et 7.6). L’évolution de l’angle au niveau de l’axe est donnée figure 7.8 et est lamême que celle utilisée lors de la campagne d’essai sur des sujets (§ 7.1.2.2). Le mouvement du

128

Page 131: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

Figure 7.9 – Renversement dynamique du chariot : virage en J à gauche.

chariot s’interrompt brutalement vers 70 degrés, avec une vitesse importante avant l’arrêt. Onétudie le comportement du cariste jusqu’à cet instant. Le mouvement subi par le cariste est unerotation combinée par une translation. Ce type de renversement est simplifié par rapport au typede renversement suivant.

Enfin, le renversement dynamique est le renversement le plus réaliste (figure 7.9). Il s’agitd’un virage en J. Après une phase où le chariot accélère en ligne droite et atteint une certainevitesse, celui-ci tourne puis se renverse. C’est le cas le plus fréquent de renversement de chariot demanutention, responsable d’accidents graves du conducteur. Les caractéristiques des trajectoires(positions et vitesses à chaque instant) ont été calculées grâce au modèle de chariot développé etvalidé par l’inrs (J. Rebelle [RMP08]). On teste la commande d’hv sur un cas de renversementdynamique.

7.2.1.3 Stratégies du cariste

(a) simple : suivre le mouvement du siège. (b) verticale : conserver une posture verticale.

Figure 7.10 – Stratégies du cariste.

En simulation, la liaison entre les mains du cariste et le volant (une fois celles-ci en contactavec le volant) est réalisée par une liaison visco-élastique dont la charge maximale est fixée arbi-trairement à 1, 5 fois le torseur maximal de préhension main/objet défini dans la loi de commande.Le torseur de préhension calculé par la loi de commande ne correspond pas toujours à l’effortappliqué dans la simulation. Par exemple, c’est le cas lorsque l’hv arrive en butée articulaire,

129

Page 132: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

une partie de son poids s’ajoute au torseur de préhension. C’est pourquoi les liaisons entre lesmains et le volant peuvent se rompre au cours de la simulation.

On rappelle quelques aspects de la commande de l’hv :– les efforts de préhension sont saturés ;– les couples articulaires de commande sont saturés à 100 N.m−1 ;– l’hv possède trois sphères de contact par pied ainsi qu’une sphère de contact au niveau desfesses. Ces sphères sont prises en compte par la détection de collision d’Arboris ;

– la vitesse désirée de l’asservissement PD du CdM et du thorax correspond à la vitesse debasculement du chariot. En effet, le conducteur est entraîné par le mouvement de la cabine.En absolu, sa vitesse coïncide avec celle du chariot.

Les observations réalisées pendant les campagnes d’essais (§ 7.1.2) indiquent clairement qu’iln’existe pas une seule “stratégie” possible lors d’un renversement : il n’existe pas de modèle“unique” du comportement humain lors d’un renversement de véhicule. Par conséquent, il fautpouvoir proposer plusieurs familles de modèles, représentatifs des comportements observés. Onen a implémenté deux :

simple : l’hv cherche à conserver une position assise sur le siège lors du renversement (fi-gure 7.10(a)). Le CdM et la position du thorax de consigne sont calculés en fonction de laposition du chariot.

verticale : l’hv conserve son buste vertical indépendamment de l’orientation du siège (fi-gure 7.10(b)). Le CdM et la position du thorax de consigne sont également calculés enfonction de la position du chariot.

On laisse en perspective l’implémentation d’autres modèles de comportement. Par simpli-fication, la détermination du CdM de consigne provient d’informations sur le déplacement duchariot.

7.2.1.4 Paramètres testés

La loi de commmande fait intervenir de nombreux paramètres : gains des asservissements,poids des critères d’optimisation et efforts de saturation. Tous ces paramètres influencent lerésultat de la loi de commande (c’est à dire τ) et donc le comportement dynamique du caristelors de son éjection. Afin d’étudier l’influence de certains paramètres sur le comportement ducariste, et sa capacité à se maintenir sur son siège, on a effectué une série de simulations. Lesdeux stratégies du cariste ont été testé. On étudie l’influence de trois paramètres :

Le coefficient de frottement : on étudie différents coefficient de frottement entre l’hv et lechariot. Les contacts concernés sont ceux au niveau des fesses sur le siège et des pieds surle plancher. Ces contacts ont le même coefficient de frottement. On fait varier ce dernierentre 0, 1 et 0, 9, avec un pas de 0, 2.

Les efforts de préhension maximaux : il s’agit des efforts de préhension maximaux ad-missibles, c’est à dire des bornes inférieures et supérieures qui sont fixées par l’inconnue“efforts de préhension” dans la loi de commande. Ces bornes inférieures et supérieuressont les mêmes dans les trois directions de forces et les trois directions de moment, ce quicontraint la force et le moment de l’effort de préhension dans un cube de R

3. En simulation,on considère que le lâcher-prise du volant intervient lorsque l’effort visco-élastique modéli-sant l’interaction entre les mains et le volant atteint une certaine valeur, que l’on appelle“effort de rupture” de cette liaison et qui est proportionnel à l’effort maximum admissibledéfini dans la loi de commande (tableau 7.1). L’hv lâche alors le volant.

130

Page 133: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

nmax

effort

Force/ Dimensions des cubes Norme de l’effort max

Moment saturants (−→x ,−→y ,−→z ) compris dans l’intervalle :

1Force (N) 2 [50, 50, 50] 50 ≤ ‖fmax‖ ≤ 87 (=

√3 50)

Moment (N.m−1) 2 [20, 20, 20] 20 ≤ ‖mmax‖ ≤ 35 (=√3 20)

2Force (N) 2 [100, 100, 100] 100 ≤ ‖fmax‖ ≤ 173 (=

√3 100)

Moment (N.m−1) 2 [40, 40, 40] 40 ≤ ‖mmax‖ ≤ 69 (=√3 40)

3Force (N) 2 [150, 150, 150] 150 ≤ ‖fmax‖ ≤ 260 (=

√3 150)

Moment (N.m−1) 2 [60, 60, 60] 60 ≤ ‖mmax‖ ≤ 104 (=√3 60)

4Force (N) 2 [200, 200, 200] 200 ≤ ‖fmax‖ ≤ 346 (=

√3 200)

Moment (N.m−1) 2 [80, 80, 80] 80 ≤ ‖mmax‖ ≤ 139 (=√3 80)

5Force (N) 2 [250, 250, 250] 250 ≤ ‖fmax‖ ≤ 433 (=

√3 250)

Moment (N.m−1) 2 [100, 100, 100] 100 ≤ ‖mmax‖ ≤ 173 (=√3 100)

6Force (N) 2 [300, 300, 300] 300 ≤ ‖fmax‖ ≤ 520 (=

√3 300)

Moment (N.m−1) 2 [120, 120, 120] 120 ≤ ‖mmax‖ ≤ 207 (=√3 120)

Table 7.1 – La saturation du torseur de préhension dans la loi de commande est un paramètrequi peut prendre différentes valeurs, désigné par le numéro nmax

effort. Les forces et moments de

préhension sont contraints dans des cubes. Lorsque la force (ou le moment) atteint les limitesdu cube, sa norme est différente si l’on se situe sur une face, une arrête ou un sommet. Poursimplifier la présentation des résultats, lorsque la force (ou le moment) calculée par la loi decommande est comprise dans l’intervalle de saturation, on suppose que la contrainte sur cetteforce (ou moment) est atteinte.

131

Page 134: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

Le délai sur la consigne du CdM : pour modéliser le caractère non-immédiat des réactionshumaines, on introduit un retard sur la consigne du CdM et la position du thorax (ainsique la vitesse). On fait varier ce retard entre 0 et 300 ms. Si l’on note ∆t le retard ensecondes, la position du CdM de consigne à l’instant t est : xconsigne

cdm (t) = xconsignecdm (t−∆t).

Afin d’étudier l’influence de ces trois paramètres sur le comportement du cariste, on a réaliséde nombreuses simulations. Chaque simulation n’aboutit pas forcément à un résultat exploitable.Une simulation échoue lorsqu’une force de contact devient beaucoup trop grande. Il se peut,compte tenu des hypothèses faits pour le calcul de la commande (non-glissement, par exemple),qu’il n’existe pas de solution.

7.2.2 Renversement simple : simulations

On étudie dans un premier temps le renversement simple, une simplification du renversementdynamique. Cette première étude permet d’interpréter l’influence des paramètres et des stratégiesdu cariste sur le succès du maintien sur le siège.

7.2.2.1 Classification des résultats

La simulation a échoué, lacommande ne réussit pas àmaintenir l’hv sur son siège.Celui-ci lâche le volant.

Le cariste se maintient surson siège avec des couplesarticulaires atteignant la

saturation.

Le cariste se maintient surson siège sans que sescouples articulaires

n’atteignent la saturation.

Figure 7.11 – Légendes des tableaux pour un renversement simple.

Les résultats sont synthétisés sous forme de tableaux. Chaque tableau présente l’influence dedeux paramètres sur la réussite du cariste, pour une stratégie donnée. Chaque cellule est coloréeen fonction de la réussite de la simulation (figure 7.11) :

– si la simulation a échoué, la cellule est très grisée. On indique dans la cellule correspondantel’angle, en degré, du chariot au dernier instant avant l’échec de la simulation. Plus cet angleest grand, plus le cariste arrive à se maintenir sur son siège.

– si la simulation est allée à son terme, le chariot revient à sa position initiale. Si la cellulea un fond gris clair, cela signifie que les couples articulaires maximaux ont été atteints àun instant de la simulation. On indique dans la cellule la force (N) et le moment (N.m−1)maximaux calculés par la loi de commande au cours de la simulation. Dans le cas où cesvaleurs sont indiquées en caractères gras, on suppose que la contrainte de saturation de laforce (ou moment) de préhension est atteinte (tableau 7.1).

7.2.2.2 Influence du coefficient de frottement et de l’effort de préhension maximal

On constate que plus le coefficient de frottement et/ou l’effort maximal admissible aug-mentent, meilleur est le maintien du cariste sur son siège (tableaux 7.2 et 7.3). Même si lasimulation échoue (cellule gris foncé), l’angle de renversement au moment de l’échec du main-tient augmente avec ces deux paramètres. À nmax

effort constant, plus le coefficient de frottementaugmente et plus l’effort de préhension diminue. Ce résultat paraît logique car un transfert desefforts s’opère de la liaison main/volant vers les zones de contact. De plus, en comparant les deuxstratégies du cariste, on constate qu’aucune n’améliore significativement le résultat. Cependant,

132

Page 135: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

les efforts de préhension maximaux calculés par la loi de commande pendant la simulation sontplus importants pour la stratégie verticale.

Stratégie Coefficient de frottementsimple 0.1 0.3 0.5 0.7 0.9

Effortmax(n

max

effort)

1 28 40 48 53 57

2 37 49 57 59151

61

3 45 57260

88

174

75

13961

4 54338

117

215

93

17477

13961

5 60265

110

21593

17477

13961

6 60265110

21593

17477

13961

Table 7.2 – Renversement simple, délai : 0 s,τmax = 100 N.m−1.

Stratégie Coefficient de frottementverticale 0.1 0.3 0.5 0.7 0.9

Effortmax(n

max

effort)

1 32 43 53 58 60

2 42 53 60 60173

57

3 50 60256

91

240

88

179

83

4 57346

133

273

117

217

101

17983

5 58365

152

260

119

217101

17983

6 59319

139

260119

217101

17983

Table 7.3 – Renversement simple, délai : 0 s,τmax = 100 N.m−1.

Dans le cas d’une stratégie verticale, à mi-parcours, on constate que la position désirée nepeut pas être entièrement atteinte. D’une part, les mains et les pieds sont contraints en position eten orientation, les fesses en position seulement. La forte diminution de la redondance articulaireque ces contraintes entraînent explique en partie la mauvaise atteinte du CdM de consigne. Ainsi,si on observe le nombre maximal de ddl en butée à un instant de la simulation (nmaxddl butee), onconstate qu’il est nul pour la stratégie simple et de 6 pour la stratégie verticale. Le tableau7.4 présente la distance la plus grande entre, d’une part, le CdM et sa consigne (ligne du hautdans les cellules), et d’autre part, le centre du thorax et sa consigne (ligne du bas).

µ = 0.3, délai = 0 s, effort max = 4

µ = 0.9, délai = 0 s, effort max = 4

Stratégie Coefficient de frottementverticale 0.1 0.3 0.5 0.7 0.9

Effortmax(n

max

effort)

1 32 43 53 58 60

2 42 53 60 606.4

17.0

3 50 607.0

18.0

6.4

17.0

6.4

17.0

4 5712.6

29.7

6.4

17.0

6.4

17.0

6.417.0

5 586.2

16.6

6.4

17.0

6.417.0

6.417.0

6 596.2

16.6

6.417.0

6.417.0

6.417.0

Table 7.4 – Renversement simple, délai : 0 s, nmaxddl butee =6, τmax = 100 N.m−1, distances en cm.

7.2.2.3 Influence du délai

L’introduction d’un délai n’a pas d’influence sur le succès ou l’échec du maintien du cariste,quelque soit la stratégie de celui-ci. De plus, le délai n’a pas d’influence sur l’effort de préhensionmaximal atteint au cours de la simulation. Cependant, il modifie la position du cariste durant le

133

Page 136: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

renversement (figure 7.12). Plus le délai est important, et plus la position du CdM de consigneest en retard par rapport à la position du siège.

Figure 7.12 – Les images du dessus montrent le comportement du cariste sans délai et les imagesdu dessous avec un délai de 300 ms. L’introduction du délai semble apporter plus de réalisme.Stratégie simple, µ = 0,5, nmaxeffort = 4.

7.2.2.4 Différences entre délai et stratégie

Dans une stratégie verticale, les consignes de position pour le CdM et le thorax pivotentautour du contact bassin/siège. Lorsque l’on augmente le délai, l’hv doit atteindre une confi-guration de plus en plus éloignée dans le temps, qui correspond à une autre configuration decontact, pour une autre inclinaison du siège. La configuration du cariste, à un même instant dela simulation, semble assez proche entre d’une part une stratégie simple avec un délai importantet d’autre part, une stratégie verticale sans délai.

La figure 7.13 illustre la différence aux niveaux des consignes de position du CdM et duthorax. Dans le premier cas (délai = 0 ms, stratégie simple), l’hv est correctement assis sur lesiège et ses consignes sont atteintes. Dans le deuxième cas (délai = 0 ms, stratégie verticale),l’hv garde le dos droit et vertical, les consignes étant relativement bien atteintes. Le CdM et lethorax sont alignés verticalement. Dans le dernier cas (délai = 240 ms, stratégie simple), l’hvn’a pas le dos droit et est assez éloigné de ses consignes en position du CdM et du thorax, qu’ilne pourra probablement pas atteindre compte tenu des contraintes que le calcul de la commandedoit satisfaire.

7.2.3 Renversement statique : simulations

7.2.3.1 Classification des résultats

Dans le cas d’un renversement statique, il n’y a pas de retour à l’équilibre du système commedans le renversement simple. C’est pourquoi on s’intéresse au pas précédant l’arrivée en butée dumouvement de renversement. À cet instant, on regarde si le cariste est proche ou non de son CdMde consigne et s’il a glissé. La signification du fond coloré n’est pas la même que dans l’étude durenversement simple ; elle est définie figure 7.14.

Lorsqu’au cours d’une simulation, un couple articulaire atteint sa valeur de saturation, onmarque une étoile dans la cellule. Le contenu de la cellule est en caractères gras lorsqu’au coursde la simulation correspondante, les efforts de préhension maximum sont atteints. Enfin, si lasimulation a échoué, l’angle de renversement atteint est alors indiqué dans la cellule.

134

Page 137: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

délai = 0 ms, stratégiesimple

délai = 0 ms, stratégieverticale

délai = 240 ms, stratégiesimple

Figure 7.13 – Renversement simple, µ = 0,5, nmaxeffort = 4, angle de renversement = 28 , τmax =100 N.m−1. Dans les figures du dessous, les sphères représentent la position du CdM et les paral-lélépipèdes la position du thorax. Le vert représente la consigne, tandis que le rouge représentel’état courant.

La simulation a échoué, lecariste glisse sur son siège et

lâche le volant.

L’hv se maintient sur sonsiège. Il est éloigné de sonCdM de consigne ou glisse.

Le cariste se maintient surson siège. Il est proche deson CdM de consigne.

Figure 7.14 – Légendes des tableaux pour un renversement statique. Pour chaque couleur,l’image du haut correspond à la stratégie simple et l’image du bas à la stratégie verticale.

135

Page 138: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

7.2.3.2 Influence de la stratégie

En ce qui concerne l’évolution des résultats dans les tableaux 7.5 et 7.6, on peut faire lamême remarque que dans le cas du renversement simple : l’augmentation du coefficient de frotte-ment et de l’effort maximal de préhension admissible améliore le maintien du cariste sur son siège.

Dans le renversement simple, la stratégie n’influençait pas significativement le succès dumaintien du cariste dans la cabine. Cette fois, pour un renversement statique, on constate que lastratégie du cariste influence sa capacité à se maintenir dans le chariot. Cela est dû en partie autype de renversement mais surtout aux critères d’observations que l’on utilise (§ 7.2.3.1). Lorsquele CdM du cariste est éloigné de son CdM de consigne (cellule gris clair), cet éloignement estdans le sens de la chute. En cherchant à atteindre une position verticale, le cariste s’éloigne leplus possible de ce sens du renversement et améliore ainsi son maintien dans le chariot. Il retardele moment de son éjection en essayant, dès le début, de rester vertical. Ceci explique pourquoila stratégie verticale est meilleure que la stratégie simple.

La stratégie verticale donne une consigne de position du CdM non réalisable par l’algo-rithme de commande, ce qui se traduit par une augmentation du nombre d’articulations enbutée articulaire (stratégie simple – nmaxddl butee = 0, stratégie verticale – nmaxddl butee = 7).

Stratégie Coefficient de frottementsimple 0.1 0.3 0.5 0.7 0.9

Effortmax(n

max

effort)

1 41 51 59 62 65

2 51 62173

69

173

60

173

58

3 62248

91

260

90

231

87

185

78

4323∗

119

313

118

247

107

212

94

18581

5378∗

146

278

118

245106

21294

18581

6297125

277118

245106

21294

18581

Table 7.5 – Renversement statique, délai : 0 s, τmax = 100 N.m−1.

7.2.3.3 Influence du délai

Contrairement au renversement simple, le délai joue un rôle significatif dans le maintiendu cariste sur son siège. Dans certaines proportions, plus le délai augmente et meilleur est lemaintien du cariste. En effet, ajouter du délai est équivalent à atteindre une posture verticale.Cependant, un délai trop important a pour effet une consigne irréalisable. Or, l’hv trouve seslimites articulaires en voulant atteindre une consigne en position très éloigné de sa configurationcourante. Étant très contraint (au niveau des pieds, mains et fesses, butées), si son nombre debutées articulaires augmente, le cariste glisse au niveau de ses contacts.

7.2.3.4 Comparaison expérimentation / simulation

Une confrontation entre l’expérimentation et la simulation est possible dans le cas du renver-sement statique. En s’appuyant sur les essais inrs 7.1.2.2, on effectue une comparaison qualitativeà partir de captures vidéo (figure 7.15). Les coefficients de frottement du contact entre le bassin

136

Page 139: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

Stratégie Coefficient de frottementverticale 0.1 0.3 0.5 0.7 0.9

Effortmax(n

max

effort)

1 46 57 6587

35

87

35

2 59173

69

173

65

173

69

173

69

3260∗

96

260∗

101

260∗

98

195

86

173

74

4323∗

123

298∗

127

220

103

19491

17181

5393∗

144

248∗

114

220103

19491

17181

6278∗

127

248∗

114220103

19491

17181

Table 7.6 – Renversement statique, délai : 0 s, τmax = 100 N.m−1.

(a) L’hv glisse sur le siège,stratégie simple – µ=0,1

(b) Le cariste adopte unestratégie simple – µ=0,5

(c) Le cariste adopte unestratégie verticale – µ=0,5

Figure 7.15 – Comparaison expérimentation / simulation pour le renversement statique.

137

Page 140: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

et le siège sont comparables entre l’expérimentation et la simulation.

Dans la comparaison (a), le sujet est assis sur une plaque en bois recouverte de téflon. L’éjec-tion du sujet débute à partir d’un angle de renversement de 50 . Le résultat de la simulationdonne un comportement très semblable pour le cariste virtuel.

Dans les comparaisons (b) et (c), le sujet est assis sur une plaque en bois recouverte demoquette. La meilleure adhérence du contact entre le bassin et le siège permet au sujet de semaintenir dans la cabine jusqu’à l’arrivé en butée du banc d’essai, à 70 de renversement. Lecariste virtuel arrive lui aussi à se maintenir jusqu’à 70 . Dans la comparaison (b), la consignedonnée au sujet est de chercher à se maintenir dans la cabine en appuyant sur ses mains et sesjambes. On rapproche ce comportement de la stratégie simple. Dans la comparaison (c), aucuneconsigne n’est donnée au sujet. On rapproche ce comportement de la stratégie verticale.

Avec seulement deux stratégies de cariste implémentées et un bon ajustement du coefficientde frottement du contact entre le bassin et le siège, la loi de commande génère un ensemble decomportements pour le cariste proches de ceux observés lors de la campagne d’essai sur sujets.Ces premiers résultats sont encourageants.

7.2.4 Renversement dynamique : simulations

7.2.4.1 Classification des résultats

On peut décomposer un renversement dynamique en trois phases :– phase 1 (figure 7.16(a)) : phase d’accélération du chariot qui lui permet d’attaquer le

virage avec une vitesse importante ;– phase 2 (figure 7.16(b)) : début du virage serré. La force centrifuge fait basculer le haut

du corps de l’hv vers l’extérieur du virage ;– phase 3 (figure 7.16(c)) : en continuant de tourner, le chariot bascule autour de ses roues

extérieures et se renverse, ce qui se rapproche du cas statique.

(a) Phase 1 : accélération du cha-riot.

(b) Phase 2 : début du virage. (c) Phase 3 : basculement du cha-riot.

Figure 7.16 – Les 3 phases du virage en J (stratégie simple).

Les résultats d’un renversement dynamique, avec un délai de 0 s et τmax = 100 N.m−1 sontprésentés dans les tableaux 7.7, 7.8 et 7.9. Le coefficient de frottement de µ = 0, 1 ne figure pasdans les tableaux, car dès la phase 1 d’accélération du chariot, l’adhérence du cariste sur le siègeest insuffisante et l’hv décolle du siège.

Deux angles sont indiqués dans chaque cellule. Ces angles définissent l’orientation du chariotà l’instant où l’interaction de préhension des mains sur le volant est rompue dans le simulateur.

138

Page 141: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

Le premier angle correspond à la rotation suivant un axe vertical (angle de virage). Le deuxièmeangle correspond au basculement du chariot.

Résultat mauvais Résultat moyen Résultat bon

Figure 7.17 – Légendes des tableaux pour un renversement dynamique. Pour un µ et nmaxeffortidentiques, on relève l’instant où le cariste lâche le volant. Plus la rupture de la préhensionintervient tard dans le renversement, meilleure est la stratégie. On compare la qualité de 3stratégies entre elles et on associe à chaque cellule une teinte de gris.

7.2.4.2 Nouvelle stratégie : centrifuge

Dès la phase 2, la force centrifuge pousse le corps de l’hv vers l’extérieur du virage. Lesstratégies simple et verticale n’empêchent pas ce phénomène. Avec une stratégie simple, l’hvreste en position assise lors du renversement (figure 7.18). La stratégie verticale n’intervientque lorsque le chariot bascule, c’est à dire dans la phase 3. De manière générale, l’hv n’anticipepas le renversement.

On met en œuvre une troisième stratégie, que l’on nomme centrifuge. Cette stratégie apour objectif d’obtenir un comportement d’hv qui anticipe le renversement du chariot dès queles effets centrifuges se font sentir. Avec une stratégie centrifuge, l’hv cherche à atteindre uneposition assise inclinée de 20 par rapport à la verticale dans le repère de la cabine. Cet angle estfixe contrairement à la stratégie verticale où l’angle dans le repère chariot change lorsque celui-ci bascule. Bien sûr cet angle de 20 est orienté vers l’intérieur du virage. Ceci permet pendantla phase 2 du renversement de contrer les efforts centrifuges. Dans la phase 3, la consigne estd’atteindre une position plus verticale que la position assise simple. La stratégie centrifugesemble un compromis entre les stratégies simple et verticale avec un facteur d’anticipation durenversement. Sa nécessité est apparue dès les premières simulations de renversement dynamique.

7.2.4.3 Influence de la stratégie

L’efficacité d’une stratégie dépend de la trajectoire du virage, du coefficient de frottement etde l’effort maximal admissible de préhension. En général, la stratégie simple est souvent la plusperformante et la stratégie verticale la moins performante (figures 7.18 et 7.19). Il faut êtreprudent face à ces résultats car une différence d’un ou deux degrés séparent parfois la meilleurestratégie de la plus mauvaise. Pour les stratégies simple et centrifuge, les consignes de positiondu CdM et du thorax sont tout le temps atteignables, ce qui n’est pas le cas de la straté-gie verticale. Ceci peut expliquer les mauvais résultats de la stratégie verticale. De plus, lesconclusions de la partie sur le renversement statique s’appliquent dans le cas d’un basculement de70 . Or, dans le cas dynamique, le renversement peut atteindre 90 . La stratégie verticale peut,dans ce cas, être moins performante, notamment pour des problèmes de consigne non atteignable.

Le réalisme des postures tenues par l’hv lors du renversement dynamique est discutable(figure 7.19). Lors des campagnes d’essais réalisées à l’inrs (§ 7.1.2), les sujets humains nepouvaient se maintenir pour de telles inclinaisons de cabine. La capacité “musculaire” de l’hv asans doute un peu été surestimée.

139

Page 142: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

Figure 7.18 – Les 3 stratégies du cariste. De haut en bas, stratégies simple, verticale etcentrifuge.

Stratégie simple Stratégie verticale Stratégie centrifuge

Figure 7.19 – Stratégies du cariste lors d’un virage en J à l’instant précédant le lâcher du volant.

140

Page 143: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.2. COMMANDE DU CARISTE

Stratégie Coefficient de frottementsimple 0.3 0.5 0.7 0.9

Effortmax(n

max

effort) 1 3

531696

60120

64121

2 60120

71123

71123

74124

3 74124

82126

82126

85127

4 78125

85125

89128

85127

5 89128

89128

85127

85127

6 89128

89128

89128

89128

Table 7.7 – Stratégie simple.

Stratégie Coefficient de frottementverticale 0.3 0.5 0.7 0.9

Effortmax(n

max

effort) 1 3

48983

51117

31109

2 22103

45115

51117

51117

3 57119

54118

54118

54118

4 85127

78125

78125

54118

5 82126

78125

78125

78125

6 89128

82126

78125

78125

Table 7.8 – Stratégie verticale.

Stratégie Coefficient de frottementcentrifuge 0.3 0.5 0.7 0.9

Effortmax(n

max

effort) 1 462

60120

60120

64121

2 64121

67122

71123

74124

3 71123

78125

67122

74124

4 74124

74124

82126

78125

5 82126

78125

70123

78125

6 85127

78125

82126

82126

Table 7.9 – Stratégie centrifuge.

141

Page 144: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 7. CARISTE

7.3 Conclusion et perspectives

7.3.1 Conclusion

Dans ce chapitre, la commande d’hv est appliqué au cas du cariste. On a étudié trois typesde renversement de complexité et de réalisme croissants. On a proposé trois types de stratégiesréflexes pour le cariste et testé leur efficacité quant au maintien du cariste dans la cabine. Enfin,on a fait varier trois paramètres et interprété leur influence sur le comportement dynamique ducariste. Ces résultats sont synthétisés dans le tableau 7.10. Bien qu’il soit trivial de constater quel’augmentation du coefficient de frottement, tout comme celle de l’effort de préhension maximaladmissible, améliore le maintien du cariste dans la cabine, on connaît maintenant dans quellemesure. Ces résultats ne sont pour l’instant pas validés par des essais sur sujets. Cette étudepermet d’évaluer qualitativement l’influence de certains paramètres. L’objectif était d’obtenir unensemble de comportements de cariste dans plusieurs situations.

Aide au maintien type de renversement

du cariste simple statique dynamique

ր coefficient de frottement oui oui oui a

ր effort maximale de préhension oui oui oui b

ր délai neutre oui c non testé

Meilleure stratégie neutre verticale simple d

Table 7.10 – Effet des paramètres et stratégies étudiés sur l’amélioration du maintiendu cariste dans son chariot.

a. Ce paramètre améliore en générale le maintien du cariste ; quelques exceptions sont constatées.b. Ce paramètre améliore en générale le maintien du cariste ; quelques exceptions sont constatées.c. Un petit délai améliore les résultats mais l’effet s’inverse lorsque celui-ci devient trop grand.d. Suivie par la stratégie centrifuge et verticale.

7.3.2 Perspectives

Cette étude soulève également des interrogations qui pourront être abordées dans des re-cherches ultérieures.

Essais

Validations : le comportement du cariste virtuel n’a pas été quantitativement comparé auxessais sur sujets humains. Une étape importante est de valider ces résultats.

Renversement dynamique : l’interprétation en l’état des résultats est assez délicate et nécessiteune analyse plus poussée des données.

Modèle

Saturation des couples articulaires : dans toutes les simulations, on a saturé tous les couplesde commande de manière identique : τmax = 100 N.m−1. Ce couple est assez important etn’est pas réalisable par toutes les articulations humaines. On devrait faire varier ce couplemaximal en différenciant les articulations, d’une simulation à l’autre et étudier son impactsur la capacité du cariste à se maintenir dans le chariot.

142

Page 145: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

7.3. CONCLUSION ET PERSPECTIVES

Glissement des contacts : dans l’algorithme de commande, une contrainte sur l’accélération descontacts est appliquée et empêche en partie les contacts de glisser (interactions pieds/plancher,fesses/siège). On pourrait relâcher cette contrainte et autoriser le glissement du contactbassin/siège.

Définir d’autres stratégies réflexes

“éjection” : l’hv tente de s’éjecter en cours de renversement, vers l’intérieur du virage ;

“dossier ” : l’hv tente de se maintenir au fond du siège. On ajoute au siège un dossier sur lequell’hv peut s’appuyer et exercer une pression à l’aide des membres inférieurs.

À moyen terme, on pourrait également modéliser en simulation des éléments de retenue(portique, ceinture . . . ) afin d’étudier leur efficacité.

143

Page 146: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 147: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

CHAPITRE 8

Conclusion et perspectives

8.1 Conclusion

On a proposé une nouvelle commande d’humain virtuel dynamique. Les points clés sont lessuivants :

Définir et quantifier l’équilibre (chapitre 3)– centre de masse stable : la position de consigne du CdM est calculée à chaque pas de temps

en fonction de la configuration de contact (pieds, mains, fesses) et de la configurationde préhension (mains uniquement). On calcule les efforts de l’hv sur son environnementqui lui permettent d’atteindre ce CdM de consigne et d’y rester à l’équilibre statique ;

– marges de stabilité : on traite de la stabilité vis-à-vis d’efforts de perturbation. On calculele plus grand effort de perturbation qui peut être compensé par une variation d’effortde contact sous des hypothèses de contacts non-glissants et de limitation des effortsde préhension. La norme de cette plus grande perturbation est la marge de stabilitéde la posture. Plus la marge de stabilité est grande, meilleure est la stabilité de laposture. Cette marge de stabilité permet de quantifier la robustesse d’une configurationde contacts et de prises. De plus, on calcule la position du CdM permettant de maximisercette marge de stabilité. On détermine également la valeur des efforts de l’hv sur sonenvironnement pour résister de façon globale aux perturbations : il s’agit d’efforts depré-contrainte et non d’efforts résistifs relatifs à une perturbation particulière ;

– critères de stabilité statique : ces marges de stabilité peuvent soit considérer le CdMcomme inconnue soit prendre en compte la saturation des couples articulaires. Ces margespeuvent de déclencher des automates permettant à l’hv d’atteindre une configurationstable.

Assurer l’équilibre (chapitre 4)– commande dynamique d’humain virtuel : commande globale basée sur l’optimisation d’un

critère sous contrainte. Les valeurs désirées des variables d’optimisation sont fixées par lesconsignes de la loi de commande : position du CdM, efforts de contact et de préhension(entre autres), calculés en prenant en compte les marges de stabilité ;

– contact frottant unilatéral et préhension bilatérale considérés simultanément : dans desenvironnements virtuels complexes, un humain virtuel peut être amené à devoir utiliserses mains en plus de ses pieds pour assurer son équilibre. Le traitement de l’équilibreprend cet aspect en compte en gérant à la fois les contacts unilatéraux, non coplanaireset avec frottement sec, et les contacts bilatéraux en force et/ou en couple (modélisant

145

Page 148: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

la préhension au niveau des mains). Pour traiter les différents types de contacts, uneformulation unifiée de la commande est proposée ;

– gestion de la redondance : les consignes relatives au CdM et à la posture sont misesà jour périodiquement ce qui a pour effet une certaine autonomie de l’hv commandérelativement à sa configuration articulaire. De plus, l’évitement des butées articulairesest géré par la loi de commande.

– stratégies d’équilibre complexes : dans certains cas, des stratégies d’équilibres complexessont à mettre en œuvre pour pour permettre à l’hv de conserver son équilibre. Il s’agitde changer la configuration de contact ou de préhension de l’hv. On a implémenté troistypes d’action réflexes : faire un pas de côté, poser une main sur un plan et saisir uneprise. Ces actions réflexes sont déclenchées de manière automatique par un observateurde la marge de stabilité courante de l’humain virtuel. Dans une bibliothèque de réflexesexplicitement connus de la commande, l’algorithme choisit le plus pertinent en fonctionde la perturbation de son état.

Réalisations de tâches (chapitre 5)– paramètres indépendants de la tâche : le problème d’optimisation sous contraintes met en

jeu de nombreux gains d’asservissements et priorités. Chacun d’eux a une significationphysique. On utilise pour une large gamme de simulation les mêmes gains et prioritésqui, ne dépendent donc pas de l’action à réaliser ;

– actions élémentaires : génération de trajectoire, saisir une prise ou un objet, appuyer surl’environnement, posture. À l’aide de ces quatre actions élémentaires, on peut réaliserla majorité des comportements de base de l’humain virtuel. Un enchaînement d’actionsélémentaires permet de réaliser des comportements plus complexes comme l’escaladed’un mur de prise. Ces actions élémentaires font le lien entre un comportement global,comme la marche, et la formulation du problème d’optimisation sous contraintes ;

– gestion des priorités entre les tâches : les tâches peuvent être conflictuelles. On proposeune méthode numérique pour gérer les priorités entre les tâches.

On a confronté la commande d’humain virtuel au réel. Pour cela, une série de quatre essaistypes a été réalisé sur quatre sujets. Les efforts et les mouvements des sujets ont été mesurés. Ona comparé les ordres de grandeur de ces mesures avec des simulations dynamiques équivalentescontenant un humain virtuel commandé. Cette étude dresse une première validation et permetun recalage de la loi de commande. Ces résultats encourageants ont démontré la grande souplessed’utilisation de la loi de commande.

Enfin, on a appliqué la commande au cas particulier du cariste, pour un renversement quasistatique et dynamique. On a proposé trois types de stratégies réflexes pour le cariste et testé leurefficacité quant au maintien du cariste dans la cabine. Enfin, on a fait varier trois paramètres etinterprété leur influence sur le comportement dynamique du cariste. On obtient un ensemble decomportements de cariste dans plusieurs situations.

8.2 Perspectives

8.2.1 Amélioration de la commande dynamique

Voici quelques perspectives :

Trouver des valeurs physiques pour les couples articulaires limites (§ 4.2.3)

Modéliser et piloter la raideur de l’hv

Dans l’étude relative à la robustesse, la raideur de l’hv vis-à-vis de son environnement

146

Page 149: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

intervient et l’on a choisit une valeur arbitraire. Il est intéressant de se baser sur unevaleur plus réaliste. La raideur de l’hv constitue également un élément important dans soncomportement vis-à-vis de son environnement.

Prendre en compte la cinématique de l’hv dans la robustesse

En regard de la robustesse, la position du CdM dépend de la cinématique de l’hv. Introduirecette cinématique compliquerait le problème en le rendant fortement non linéaire, maispermettrait d’éliminer des solutions non réalistes.

Comportements plus complexes

– enrichir les comportements à plusieurs pas et l’enchaînement de stratégies d’équilibre ;– avoir une caractérisation dynamique de la rupture d’équilibre, et non simplement sta-

tique ;– prédictive (C. Azevedo et al. [APE04]).

8.2.2 hv dynamique interactif

(a) Gestion d’équilibre. (b) Gestion de tâches.

Figure 8.1 – hv interactif.

Une implémentation en temps réel de la commande de l’hv a été réalisé (figure 8.1)permettantune interaction directe avec l’hv. L’algorithme de base est suffisamment rapide pour être utiliséen temps réel. En effet, dans la commande, la résolution du QP est l’étape la plus coûteuse. Pourun problème de complexité moyenne (un hv debout résistant à une perturbation), les dimensionsdes matrices sont :

argminY

12‖Y − Y des‖2Q

A Y + b = 0C Y + d ≥ 0

avec

dim (Y ) = (88, 01)

dim (A) = (24, 88)

dim (C) = (94, 88)

(8.1)

La rapidité de la résolution est également corrélée au conditionnement des matrices. Ce-pendant, la taille du système est un bon indicateur. Le QP est résout à l’aide une fonction Csingle-threaded en 2.6 ms sur un processeur Intelr Xeonr 5130 cadencé à 2,00 GHz avec 2,00Go de mémoire vive.

147

Page 150: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Outre la mise en œuvre de stratégies d’équilibres évoluées pour répondre à des perturbations,c’est la cohabitation entre l’hv piloté par capture de mouvement et hv dynamique autonomequi est la prochaine grande étape.

La capture de mouvement permet d’obtenir un avatar effectuant les gestes d’un opérateur.Ces mouvements seront complétés par une gestion d’équilibre autonome qui garantirait à l’hvdes gestes physiques, quelle que soit la qualité de la capture de mouvement. Ainsi, il ne sera peutêtre plus nécessaire de traquer tout le corps de l’opérateur, mais seulement une partie, le resterésultant de la gestion d’équilibre, ou comportements plus évolués complémentaires des souhaitsou indications de l’opérateur.

148

Page 151: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Bibliographie

[And89] Anderson, Robert J. : Passive computed torque algorithms for robots. DansConference on Decision and Control, pages 1638–1644, Décembre 1989.

[APE04] Azevedo, C., Poignet, P. et Espiau, B. : Artificial locomotion control: fromhumans to robots. Robotics and Autonomous Systems, 47:203–223, 2004.

[ASP07] Abe, Yeuhi, Silva, Marco Da et Popović, Jovan : Multiobjective control with fric-tional contacts. Dans Eurographics / ACM SIGGRAPH Symposium on ComputerAnimation, pages 249–258, 2007.

[BB04] Baerlocher, Paolo et Boulic, Ronan : An inverse kinematic architecture en-forcing an arbitrary number of strict priority levels. The Visual Computer, 20(6),2004.

[BBM09] Bidaud, Philippe, Barthélemy, Sébastien et Micaelli, Alain : Le traité de laréalité virtuelle : Contrôle de l’équilibre des humains virtuels (à paraître), tome 5.Les Presses, Mines Paris, 2009.

[BLR05] Bretl, Timothy, Latombe, Jean-Claude et Rock, Stephen : Toward autonomousfree-climbing robots. Robotics Research, pages 6–15, 2005.

[BRL03] Bretl, Timothy, Rock, Stephen et Latombe, Jean-Claude : Motion planning fora three-limbed climbing robot in vertical natural terrain. Dans IEEE InternationalConference on Robotics and Automation, tome 3, pages 2946–2953, Taipei, Taiwan,2003.

[BSB06] Barthélemy, Sébastien, Salaun, Camille et Bidaud, Philippe : Dynamic simu-lation and control of sit-to-stand motion. Dans Proceedings of the 9th InternationalConference on Climbing and Walking Robots (CLAWAR), 2006.

[Che98] Chevallier, J.M. : Anatomie, tome 2 : l’appareil locomoteur. Broché, flammarionmédecine édition, 1998.

[DDW+08] Diedam, H., Dimitrov, D., Wieber, P. B., Mombaur, K. et Diehl, M. : On-line walking gait generation with adaptive foot positioning through linear modelpredictive control. Dans IEEE International Conference on Intelligent Robots andSystems, pages 1121–1126, Octobre 2008.

[DG67] Dempster, W.T. et Gaughran, G.R.L. : Properties of body segments based onsize and weight. American Journal of Anatomy, 120:33–54, 1967.

[DKD06] De Sapio, Vincent, Khatib, Oussama et Delp, S. : Task-level approaches for thecontrol of constrained multibody systems. 2006.

149

Page 152: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

[Esc08] Escande, Adrien : Planification de points d’appui pour la génération de mouve-ments acycliques : application aux humanoïdes. Thèse de doctorat, Universitéd’Evry-Val d’Esonne, Décembre 2008.

[FB98] Fasse, E.D. et Breedveld, P.C. : Modeling of elastically coupled bodies: Part1 – general theory and geometric potential function method. Transactions of theASME, 120:496–506, 1998.

[Feu05] Feutry, David : Développement d’un modèle numérique de sujet humain pourprédire le comportement bio-dynamique d’un conducteur de chariot élévateur ensituation de renversement latéral. Rapport d’activité INRS/LIRIS, Mars 2005.

[FvdPT01] Faloutsos, Petros, Panne, Michiel van de et Terzopoulos, Demetri : Com-posable controllers for physics-based character animation. Dans Fiume, Eugene(rédacteur): SIGGRAPH 2001, Computer Graphics Proceedings, pages 251–260.ACM Press / ACM SIGGRAPH, 2001.

[Gau] Gautier, Jean : Définition et réalisation d’un protocole d’essai pour la qualificationde systèmes de retenue pour caristes. Stage de fin d’étude – Master ENSEM.

[Han64] Hanavan, E.P. : Mathematical model of the human body. Wright-Patterson AirForce Base, Ohio, AMRL-TR, pages 64–102, 1964.

[Her05] Herbin, R. : Cours d’analyse numérique : licence de mathématiques. UniversitéAix-Marseille 1, 2004–2005.

[HHH+06] Hirukawa, H., Hattori, S., Harada, K., Kajita, S., Kaneko, K., Kanehiro,F., Fujiwara, K. et Morisawa, M. : A universal stability criterion of the footcontact of legged robots – adios zmp. Dans IEEE International Conference onRobotics and Automation, pages 1976–1983, 2006.

[HKF+07] Harada, K., Kanehiro, F., Fujiwara, K., Kaneko, K., Yokoi, K. etHirukawa, H. : Real-time planning of humanoid robot’s gait for force-controlledmanipulation. IEEE/ASME Transations on Mechatronics, 12(1):53–62, 2007.

[HKKH06] Harada, K., Kajita, S., Kanko, K. et Hirukawa, H. : Dynamics and balanceof a humanoid robot during manipulation tasks. IEEE Transactions on Robotics,22(3):568–575, 2006.

[Huy08] Huynh, Chau Thuan : Commande d’un mannequin virtuel manutentionnaire. Rap-port de fin d’études, CEA, 2008.

[INR06] INRIA Rhône-Alpes : HuMAnS User Documentation, Octobre 2006.

[KWDS] Khatib, Oussama, Warren, James, De Sapio, Vincent et Sentis, Luis : Human-like motion from physiologically-based potential energies.

[LHP05] Liu, C. Karen, Hertzmann, Aaron et Popović, Zoran : Learning physic-basedmotion style with nonlinear inverse optimization. ACM Transactions on GraphicsSIGGRAPH, 24(3):1071–1081, 2005.

[LP02] Liu, C. Karen et Popović, Zoran : Synthesis of complex dynamic character motionfrom simple animations. Dans Proceedings of the 29th annual conference on com-puter graphics and interactive techniques, pages 408–416, New York, 2002. ACMPress.

[LWP80] Luh, J.Y.S., Walker, M.W. et Paul, R.P.C. : Resolved-acceleration control ofmechanical manipultors. Dans IEEE Transactions on Automatic Control, tome 25,pages 468–474, Juin 1980.

[MF68] McGhee, R.B. et Frank, A.A. : On the stability properties of quadruped creepinggaits. Dans Mathematical Biosciences, tome 3, pages 331–351, 1968.

150

Page 153: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

[MK08] Mansard, Nicolas et Khatib, Oussama : Continuous control law from unilateralconstraints. Dans IEEE International Conference on Robotics and Automation,tome 3, pages 3359–3364, Mai 2008.

[MLS94] Murray, Richard M., Li, Zexiang et Sastry, S. Shankar : A Mathematical Intro-duction to Robotic Manipulation. CRC Press, 1994.

[MM75] Miller, D. et Morrison, W.E. : Prediction of segmental parameters using thehanavan human body model. Medecine and Science in Sports, 7(3):207–212, 1975.

[OR04] Or, Yizhar et Rimon, Elon : Computation and graphic characterization of ro-bust multiple-contact postures in gravitational environments. Dans Department ofMechanical Engineering, Juin 2004.

[OR06] Or, Yizhar etRimon, Elon : Computation of multiple-contact frictional equilibriumpostures in three-dimensional gravitational environments. Dans Department ofMechanical Engineering, 2006.

[Par05] Park, Jonghoon : Principle of dynamical balance for multibody systems, multibodysystem dynamics. 14(3–4):269–299, 2005.

[PCDG06] Pratt, Jerry E., Carff, J., Drakunov, S. et Goswami, Ambarish : Capturepoint : A step toward humanoid push recovery. Dans IEEE International Confer-ence on Humanoid Robots, pages 200–207, 2006.

[RCPG07] Rebula, John R., Canas, Fabian, Pratt, Jerry E. et Goswami, Ambarish :Learning capture points for humanoid push recovery. Dans IEEE InternationalConference on Humanoid Robots, Décembre 2007.

[Ren06] Rennuit, Antoine : Contribution au Contrôle des Humains Virtuels Interactifs.Thèse de doctorat, École Centrale de Nantes, 2006.

[RMP08] Rebelle, Jérôme, Mistrot, Pierre et Poirot, Richard : Development and vali-dation of a numerical model for predicting forklift truck tip-over. Vehicle SystemDynamics, Novembre 2008.

[SEM+08] Stasse, Olivier, Escande, Adrien, Mansard, Nicolas, Miossec, Sylvain,Evrard, Paul et Kheddar, Abderrahmane : Real-time (self)-collision avoidancetask on a hrp-2 humanoid robot. Dans IEEE International Conference on Roboticsand Automation, pages 3200–3205, Pasadena, CA, USA, Mai 2008.

[SK04] Sentis, Luis et Khatib, Oussama : Task-oriented control of humanoid robotsthrough prioritization. International Journal of Humanoid Robotics, Décembre2004.

[SK05] Sentis, Luis et Khatib, Oussama : Synthesis of whole-body behaviors throughhierarchical control of behavioral primitives. International Journal of HumanoidRobotics, 2005.

[SK06] Sentis, Luis et Khatib, Oussama : A whole-body control framework for humanoidsoperating in human environnements. Dans IEEE International Conference onRobotics and Automation Orlando, Florida, pages 2641–2648, 2006.

[Tei96] Teichmann, Marek : A grasp metric invariant under rigid motions. Dans IEEEInternational Conference on Robotics and Automation, tome 3, pages 2143–2148,Avril 1996.

[TGG07] Toussaint, Marc, Gienger, Michael et Goerick, Christian : Optimization ofsequential attractor-based movement for compact behaviour generation. Dans IEEEInternational Conference on Humanoid Robots, Décembre 2007.

151

Page 154: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

[TTP01] Trinkle, Jeffrey C., Tzitzoutis, J. et Pang, J.S. : Dynamic multi-rigid-bodysystems with concurrent distributed contacts: Theory and examples, philosophi-cal transactions on mathematical, physical, and engineering sciences. Series A,359:2575–2593, 2001.

[TW05] Tong, Liu etWang, Michael Yu : Computation of three-dimensional rigid-body dy-namics with multiple unilateral contacts using time-stepping and gauss-seidel meth-ods. IEEE Transactions on Automation Science and Engineering, 2(1):19–31, 2005.

[VS74] Vukobratovic, M. et Stepanenko, J. : On the stability of anthropomorphicsystems. Dans Mathematical Biosciences, tome 15, pages 1–37, 1974.

[Wie00] Wieber, P. B. : Modélisation et Commande d’un Robot Marcheur Anthropomorphe.Thèse de doctorat, École des Mines de Paris, Décembre 2000.

[YCBvdP08] Yin, Kang Kang, Coros, Stelian, Beaudoin, Philippe et Panne, Michiel van de :Continuation methods for adapting simulated skills. ACM Transactions on Graph-ics, 27(3):1–7, Août 2008.

[YLvdP07] Yin, Kang Kang, Loken, Kevin et Panne, Michiel van de : Simbicon: Simplebiped locomotion control. ACM Transactions on Graphics, 26(3):1–10, Juin 2007.

[YPL+08] Yoshida, Eiichi, Poirier, Mathieu, Laumond, Jean-Paul, Kanoun, Oussama,Lamiraux, Florent, Alami, Rachid et Yokoi, Kazuhito : Whole-body motionplanning for pivoting based manipulation by humanoids. Dans IEEE InternationalConference on Robotics and Automation, pages 3181–3186, Pasadena, CA, USA,Mai 2008.

[ZDL01] Zhu, Xiangyang, Ding, Han et Li, Hanxiong : A quantitative measure for multi-fingered grasps. Dans IEEE/ASME International Conference on Advanced Intelli-gent Mechatronics, pages 213–219, Italy, July 2001.

[ZDW03] Zhu, Xiangyang, Ding, Han et Wang, Jun : Grasp analysis and synthesis basedon a new quantitative measure. IEEE Transactions on Robotics and Automation,19(6):942–953, Décembre 2003.

[ZMCF05] Zordan, Victor B., Majkowska, Anna, Chiu, Bill et Fast, Matthew : Dynamicresponse for motion capture animation. Dans Fiume, Eugene (rédacteur): SIG-GRAPH 2005, Computer Graphics Proceedings, pages 697–701. ACM Press / ACMSIGGRAPH, 2005.

152

Page 155: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Annexes

SommaireA Définition des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

B Formalisme mathématique et rappels de mécanique du solide . . . . 159

B.1 Le groupe spécial euclidien . . . . . . . . . . . . . . . . . . . . . . . . . 159B.2 La notation homogène . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159B.3 Matrice de rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160B.4 Rappels de mécanique du solide . . . . . . . . . . . . . . . . . . . . . . . 160B.5 CdM : position, vitesse, accélération . . . . . . . . . . . . . . . . . . . . 161

B.5.1 Position du CdM . . . . . . . . . . . . . . . . . . . . . . . . . . 162B.5.2 Vitesse du CdM . . . . . . . . . . . . . . . . . . . . . . . . . . 163B.5.3 Accélération du CdM . . . . . . . . . . . . . . . . . . . . . . . 164

C Simulation physique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

C.1 Fonctionnement global d’une simulation . . . . . . . . . . . . . . . . . . 165C.2 Gestion des contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . 166C.3 Intégration numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

D Paramétrage de l’hv . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

D.1 Masses et géométries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169D.2 Limites articulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

E Liste de publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171

153

Page 156: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 157: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

A Définition des variables

Les variables utilisées tout au long du rapport sont ici listées. Le lecteur peut s’y référer pourretrouver la signification d’une variable introduite avant la partie en cours de lecture.

X Vecteur position en coordonnées généralisées d’un robot

T Vecteur vitesse en coordonnées généralisées d’un robot

T Vecteur accélération en coordonnées généralisées d’un robot, dérivé de T

τ Couples articulaires

W Vecteur des torseurs d’efforts appliqués sur chacun des corps qui constituent lerobot, exprimés dans leurs repères de base respectifs. (repères liés aux “corps”)

C Jacobienne du robot : matrice de transformation entre l’espace des vitesses ar-ticulaires (“espace tangent exprimé par T ”) et l’espace des vitesses cartésiennesdes corps (espace des torseurs cinématiques des corps, en formulation “corps”se3 (R)× . . .× se3 (R) = se3 (R)

ncorps).

M Matrice de masse (ou d’inertie) généralisée en coordonnées généralisées

L Matrice permettant d’exprimer τ en coordonnées généralisées

N Matrice associée aux effets de Coriolis et centrifuges

G Accélération de la pesanteur exprimée en coordonnées généralisées

Vracine Torseur cinématique du corps racine de l’arborescence du robot exprimé dans lerepère lié au corps “racine”

qk Vitesse articulaire du corps k par rapport au corps le précédent dans l’arbores-cence

τk Couple articulaire appliqué par le corps k sur le corps le suivant dans l’arbores-cence

τcommande Couples articulaires calculés par la commande

τbutée Couples articulaires dus aux butées articulaires

Wcontact Torseur dynamique lié aux contacts entre l’hv et son environnement

Wliaison Torseur dynamique lié aux liaisons viscoélastiques entre l’hv et son environne-ment

Wperturbation Torseur dynamique lié aux perturbations extérieures exercées sur l’hv

Mk Matrice d’inertie du corps k dans son repère de base

nddl Nombre de degrés de liberté du robot hv (ne tient pas compte des 6 ddl du corpsracine)

na Nombre d’arêtes des cônes de frottement linéarisés

nc Nombre de corps de contact du robot hv

np Nombre de corps de préhension du robot hv

xconsignecdm/scène Position de consigne du CdM exprimée dans le repère scène

xdescdm/scène Position désirée du CdM exprimée dans le repère scène

xcdm/scène Position du CdM exprimée dans le repère scène

xcdm/racine Position du CdM exprimée dans le repère racine

vdescdm/scène Vitesse absolue désirée du CdM exprimée dans le repère scène

155

Page 158: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

vcdm/scène Vitesse absolue du CdM exprimée dans le repère scène

vcdm/racine Vitesse absolue du CdM exprimée dans le repère racine

acdm/scène Accélération absolue du CdM exprimée dans le repère scène

acdm/racine Accélération absolue du CdM exprimée dans le repère racine

adescdm/scène Accélération absolue désirée du CdM exprimée dans le repère scène

adescdm/racine Accélération absolue désirée du CdM exprimée dans le repère racine

xkc/scène Position du kieme point de contact exprimée dans le repère scène

xc/scène Concaténation des xkc/scène

vkc/scène Vitesse du kieme point de contact exprimée dans le repère scène

vc/scène Concaténation des vkc/scène

akc/scène Accélération du kieme point de contact exprimée dans le repère scène

Xkp/scène Position du kieme corps de préhension exprimée dans le repère scène

V kp/scène Torseur vitesse du kieme corps de préhension exprimée dans le repère scène

V kp/scène Accélération du kieme corps de préhension exprimée dans le repère scène

Ccdm Jacobienne permettant d’exprimer vcdm/racine en fonction de T

Cp Jacobienne permettant d’exprimer vp/bd en fonction de T

Cc Jacobienne permettant d’exprimer vc/bd en fonction de T

τdes Couples articulaires désirés

T des Accélérations en coordonnées généralisées désirées

fdesc/contact Forces de contact désirées exprimées dans le repère de contact

W desp/bd Efforts de préhension désirés exprimé dans le repère du corps

Rracine Rotation du repère du corps racine par rapport au repère scène

rracine Position du repère du corps racine par rapport au repère scène

hdes Hauteur du thorax désirée exprimée dans le repère scène

m Masse totale du robot hv

g Accélération de pesanteur (g = 9,81 m.s−2)

µ Coefficient de frottement sec

Nc Normale au contact

T 1c , T 2

c Tangentes au contact

fc/contact Forces de contact exprimées dans le repère de contact

Wp/prehension Efforts de préhension exprimés dans les repères de préhension

Ctc Jacobienne exprimant fc/contact en coordonnées généralisées

Ctp Jacobienne exprimant Wp/préhension en coordonnées généralisées

(kcdm, µcdm) Gains de l’asservissement de la position du CdM(

kT , µT

)

Gains de l’asservissement de la posture

(kc, µc) Gains de l’asservissement de la position des corps de contact

(kp, µp) Gains de l’asservissement de la position des corps de préhension

pcdm Poids du critère d’optimisation portant sur l’accélération du CdM

pT Poids du critère d’optimisation portant sur l’accélération de la posture de l’hv

156

Page 159: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

pτ Poids du critère d’optimisation portant sur les couples articulaires

pfcPoids du critère d’optimisation portant sur les forces de contact

pWp Poids du critère d’optimisation portant sur les efforts de préhension

157

Page 160: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille
Page 161: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

B Formalisme mathématique et rappels de mécanique du solide

B.1 Le groupe spécial euclidien

Cette annexe précise le formalisme mathématique utilisé dans ce rapport. Ce formalisme estcelui présenté dans l’ouvrage de Murray, Li et Sastry [MLS94]. On rappel que l’espace desmatrices de rotation dans M3,3(R), est le groupe spécial orthogonal :

SO3(R) = {R ∈ M3,3(R) : R Rt = I3, det(R) = 1} (2)

Ces matrices décrivent l’ensemble des rotations possibles dans R3. L’ensemble des matrices

antisymétriques forme l’espace antisym3(R) :

antisym3(R) = {S ∈ M3,3(R) : St = −S} (3)

On définit l’application [] : r ∈ R3 → [r] ∈ antisym3(R) :

r =

rx

ry

rz

[r] =

0 −rz ry

rz 0 −rx

−ry rx 0

(4)

[r] ∈ antisym3(R) car [r]t = −[r] (5)

Cette application effectue un produit vectoriel :

r1 ∧ r2 = [r1] r2 avec ∧ : le produit vectoriel (6)

Tout déplacement rigide définissant la position d’un solide attaché à un repère B, relativementà un repère A peut être défini par la combinaison d’une :

– translation : rab ∈ R3, vecteur définissant la position de l’origine du repère B dans le

repère A ;– rotation : Rab ∈ SO3(R), matrice décrivant l’orientation du repère B par rapport au

repère A.

L’ensemble de ces déplacements est appelé le groupe spécial euclidien :

SE3(R) = {(R, r) ∈ SO3(R)× R3} (7)

B.2 La notation homogène

La notation homogène permet de représenter les éléments de SE3(R) et d’exprimer les chan-gements de repère. Cette notation permet de différencier un point ou un vecteur de R

3 par l’ajoutd’une quatrième coordonnée :

– un point de coordonnées (x, y, z) est noté : [x, y, z, 1]T ;– un vecteur de coordonnées (x, y, z) est noté : [x, y, z, 0]T .

On peut également représenter chacun des éléments de SE3(R) par une matrice homogène :

Hab =

[

Rab rab

01,3 1

]

Hba = H−1ab =

[

Rtab −Rt

ab rab

01,3 1

]

(8)

Hab(t) ∈ SE3(R) représente le mouvement d’un corps rigide lié à un repère B, relativementà un repère A. L’augmentation de la dimension de 3 à 4 permet de manipuler des points etdes vecteurs indépendamment de leur nature, par des relations linéaires. Par exemple, on peut

159

Page 162: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

exprimer la position d’un point ou d’un vecteur, exprimé dans le repère B (rB), dans le repèreA (rA), en utilisant la matrice de passage du repère A au repère B (figure 2).

rA = Hab rB (9)

A xA

yA

zA

B

xB

yB

zB

HAB

rAB

RAB

Figure 2 – Changement de repère.

B.3 Matrice de rotation

Une matrice de rotation R est une matrice orthogonale directe, ce qui signifie que ses co-lonnes forment une base orthonormée directe, ou encore que sa matrice transposée est égale àsa matrice inverse, et que son déterminant vaut 1. Inversement, étant donnée une matrice derotation quelconque, on retrouve facilement le cosinus de l’angle de rotation. En effet, la tracede la matrice est égale à 1 + 2 cosφ. Par ailleurs, on remarque que :

R−Rt

2= sin(φ)

0 −nz +ny

+nz 0 −nx

−ny +nx 0

~n =

nx

ny

nz

ce qui permet de retrouver rapidement l’axe ~n et le sinus associés à la rotation φ. L’utilisation dematrices de rotation présente l’avantage de ne pas avoir de singularité contrairement à l’utilisationdes angles d’Euler. Le seul cas de singularité se présente lorsque φ = 0 mod π. Dans ce cas, lamatrice antisymétrique est nulle et les deux matrices de rotation (R et Rt) sont confondues carφ = 0⇒ R = I3.

B.4 Rappels de mécanique du solide

La vitesse d’un corps associé au repère B par rapport à A, exprimée dans le repère A s’exprimeà l’aide du torseur cinématique (“twist” en anglais) [MLS94] :

V bab =

[

vbob,ba

ωbba

]

(10)

160

Page 163: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

avec :

• vbob,ba

∈ R3 : vitesse de l’origine du repère B, exprimée dans le repère B ;

• ωbba ∈ R

3 : vitesse angulaire de B par rapport à A, exprimée dans le repère B.

On note se3(R) l’ensemble des torseurs cinématiques. se3(R) est l’espace tangent à l’identitédu groupe de Lie SE3(R). se3(R) a une structure d’algèbre de Lie.

Le changement de repère d’un torseur cinématique s’exprime à l’aide de l’adjointe de Hab,noté AdHab

: R6 −→ R

6 :

AdHab=

[

Rab [rab]Rab

03,3 Rab

]

Ad−1Hab

=

[

Rtab −Rt

ab [rab]03,3 Rt

ab

]

(11)

V bab = Ad−1

HabV a

ab (12)

soit :

• vbab = Rt

ab vaab −Rt

ab [rab] ωaab = Rt

ab (vaab − rab ∧ ωa

ab)

• ωbab = Rt

ab ωaab

Une force généralisée agissant sur un corps rigide est définie par une force et un moment.Cette force généralisée est représenté par un torseur d’effort (“wrench” en anglais), i.e. les deuxcomposantes sont liées par la relation “de déplacement du champ de moment” :

W aab =

[

faab

τaoa,ab

]

(13)

soit :

• faab : résultante des efforts du solide lié à A sur le solide lié à B ;

• τaoa,ab : moment en A des efforts de A sur B.

Par analogie au torseur cinétique, le changement de repère s’exprime à l’aide de la matriceco-adjointe Ad−t

Habde la transformation homogène Hab :

Ad−tHab

= (Ad−1Hab

)t = (AdtHab

)−1 =

[

Rab 03,3

[rab] Rab Rab

]

(14)

W aab = Ad−t

HabW b

ab (15)

soit :

• faab = Rab f b

ab ;

• τaab = Rab τ b

ab + [rab]Rab f bab =

(

Rab τ bab

)

+ rab ∧ faab.

B.5 CdM : position, vitesse, accélération

On détaille dans cette annexe les calculs pour obtenir la position, la vitesse et l’accélérationdu CdM à partir du modèle dynamique d’Arboris.

161

Page 164: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Ei

{i}

{i L (i− 1)}

{i + 1}

{i L (i + 1)}

Figure 3 – Repère de liaison des corps : on choisit de confondre les repères {i} au CdM ducorps.

B.5.1 Position du CdM

La position du CdM exprimée dans le repère du corps racine est :

xcdm/racine =1

mrcdm avec [rcdm] =

(

Ct M C)

(1 : 3, 4 : 6) (16)

Démonstrations :Dans un premier temps, afin de calculer Ct M C, on rappelle l’expression des matrices M , C

et Ct.

M =

Mracine 06,6 . . . 06,6

06,6 M1. . .

......

. . .. . . 06,6

06,6 . . . 06,6 Mnddl

avec Mi =

[

mi I3 03,3

03,3 ℑi

]

(17)

C =

I6 06,1 06,1 . . . . . . 06,1

1Adracine1Ad1LracineE1 06,1 . . . . . .

......

.... . . 06,1 . . . 06,1

iAdracineiAd1LracineE1 . . . iAdiL(i−1)Ei 06,1

......

... . . . . . .. . . 06,1

nddlAdracinenddlAd1LracineE1 . . . nddlAdiL(i−1)Ei . . . nddlAdnddlL(nddl−1)Enddl

(18)

Ct =

I6

(

1Adracine

)t. . .

(

iAdracine

)t0 (nddlAdracine)

t

01,6

(

1Ad1LracineE1

)t. . .

(

iAd1LracineE1

)t. . . (nddlAd1LracineE1)

t

01,6 01,6. . .

......

...

01,6

... 01,6

(

iAdiL(i−1)Ei

)t ...(

nddlAdiL(i−1)Ei

)t

01,6

...... 01,6

. . ....

01,6 . . . . . . . . . 01,6

(

nddlAdnddlL(nddl−1)Enddl

)t

(19)

162

Page 165: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

À partir des matrices M , C et Ct (équations 17, 18 et 19), on calcule Ct M C (1 : 6, 1 : 6) :

Ct M C (1 : 6, 1 : 6) = Mracine +

nddl∑

i=1

(

iAdracine)t

Mi

(

iAdracine)

(20)

avec iAdracine =

[

Ri [ri] Ri

03,3 Ri

]

Par construction, le repère d’un corps i est confondu avec son CdM (figure 3). Ainsi, ri

représente la distance du CdM du corps i au repère racine exprimée dans le repère du corps i.On détaille le calcul de

(

iAdracine)t

Mi

(

iAdracine)

:

(

iAdracine)t

Mi

(

iAdracine)

=

[

Rti 03,3

−Rti [ri] Rt

i

] [

mi I3 033

03,3 ℑi

] [

Ri [ri] Ri

03,3 Ri

]

=

[

mi I3 mi Rti [ri] Ri

−mi Rti [ri] Ri Rt

i

(

ℑi −mi [ri]2)

Ri

] (21)

Tout d’abord, la masse de l’hv s’obtient simplement avec Ct M C (1, 1). Pour la suite, onintroduit les notations suivantes :

ri =

ai

bi

ci

[ri] =

0 −ci +bi

+ci 0 −ai

−bi +ai 0

[ri]t = − [ri] (22)

[ri]2 =

−(

b2i + c2

i

)

ai bi ai ci

ai bi −(

a2i + c2

i

)

bi ci

ai ci bi ci −(

a2i + b2

i

)

(23)

Pour exprimer la matrice d’inertie du corps i du repère (cdm, Ri) au repère (racine, Ri), laformule de Huygens donne :

ℑ(i)/(racine,Ri) = ℑ(i)/(cdm,Ri) +mi

(

b2i + c2

i

)

−ai bi −ai ci

−ai bi

(

a2i + c2

i

)

−bi ci

−ai ci −bi ci

(

a2i + b2

i

)

(24)

Donc la matrice d’inertie globale du système est Ct MC (4 : 6, 4 : 6). On détaille maintenantla matrice Ct MC (1 : 3, 4 : 6) :

Ct M C (1 : 3, 4 : 6) = mracine I3 +

nddl∑

i=1

mi Rti [ri] Ri

= m [rcdm]

(25)

B.5.2 Vitesse du CdM

Pour exprimer la vitesse du CdM à partir du modèle dynamique, on part du modèle cinéma-tique direct :

VracineV1...

Vnddl

= C

Vracineq1...

qnddl

= C T (26)

163

Page 166: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

On multiplie les vitesses en coordonnées généralisées par la matrice de masse M , puis Ct :

M C T =

Mracine VracineM1 V1...

MnddlVnddl

(27)

En multipliant l’équation 27 par Ct, on obtient :

Ct M C T =

[

Mracine Vracine +(

1Adracine)t

M1 V1 + . . .+ (nddlAdracine)t Mnddl

Vnddl

...

]

(28)

Ct M C T =

[

Mracine Vracine +∑nddl

i=1racineAdi Mi Vi/corps(i)...

]

(29)

On obtient la vitesse du CdM exprimée dans le repère du corps racine :

vcdm/racine =1

m

(

Mracine Vracine +

nddl∑

i=1

racineAdi Mi Vi/corps(i)

)

=1

m

(

Ct M C)

(1 : 3, :) T (30)

On pose vcdm/racine = Ccdm T avec Ccdm = 1m

(

Ct M C)

(1 : 3, :).

vcdm/scène = Rracine vcdm/racine (31)

B.5.3 Accélération du CdM

Pour obtenir l’accélération du CdM, on repart de l’expression de la vitesse du CdM, vcdm/racine =Ccdm T que l’on dérive :

acdm/racine = Ccdm T + Ccdm T (32)

acdm/scène = Rracine acdm/racine (33)

164

Page 167: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

C Simulation physique

C.1 Fonctionnement global d’une simulation

Figure 4 – Présentation de la boucle de simulation.

On utilise un simulateur dynamique (chapitre 2.3) des systèmes rigides poly-articulés. Lesrobots ne sont pas libres. Ils sont physiquement contraints dans la simulation. Les butées articu-laires constituent les contraintes internes, qui sont gérées par le simulateur. Dans cette étude, lescontraintes externes se limitent à des contacts rigides sur rigides et des liaisons viscoélastiques.On détaillera les différents modèles d’interaction (chapitre 2.4).

La simulation se déroule en une étape d’initialisation puis une boucle de simulation (figure 4).Lors de l’étape d’initialisation, on définit les structures arborescentes, leurs propriétés physiques(masse, inertie, contacts, matériaux, . . .), graphiques (géométrie, couleur, . . .) ainsi que la postureinitiale. Pour déterminer la position et la vitesse du système à l’instant k + 1, il faut calculerl’accélération du système à l’instant k+1 car on effectue une intégration Euler implicite (§ C.3).Cette accélération est calculée à partir des positions et vitesses de l’instant k et des contraintes(internes et externes) du système à l’instant k+1. On calcule tout d’abord ces efforts (contrainteset commande) à l’instant k+1 puis l’accélération à k+1 et enfin, par intégration, on en déduit laposture et la vitesse de l’instant k+1. On peut décomposer une boucle de simulation en plusieursétapes.

Étape 1 – Modèle à l’instant k : à chaque instant k de la simulation, on connaît l’état dusystème. Il s’agit des positions et des vitesses du corps racine et des articulations.

165

Page 168: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

Étape 2 – Commande : on commence tout d’abord par calculer la commande de l’instantk + 1. Celle-ci s’appuie sur des connaissances de positions et de vitesses de l’instant k.

Étape 3 – Mouvement libre : l’état du système à l’instant k, les couples de commandeet l’accélération de pesanteur génèrent un mouvement libre. Ce mouvement n’est pas contraint(contacts, butées articulaires . . . ). Suite à ce mouvement libre, on calcule les contraintes. Parexemple, dans le mouvement libre, des corps peuvent s’interpénétrer. On réalise alors une détec-tion de collision pour déterminer le point d’application des forces de contact. Enfin, on calculeles forces de contact de réaction qui empêchent les solides de s’interpénétrer.

Étape 4 – Bilan des efforts : on effectue un bilan des efforts de l’instant k+1 s’appliquant aurobot. Ces efforts contiennent les couples de la loi de commande et aussi les efforts de contraintes.

Étape 5 – Mouvement contraint : à partir du bilan des efforts précédents, on déterminel’accélération du système à l’instant k + 1.

Étape 6 – Intégration de l’accélération : en intégrant deux fois cette accélération, onobtient la vitesse et la configuration du système à l’instant k+1. Les contraintes ont été calculéespour garantir la non-interpénétration des solides au niveau des contacts et la non-violation desbutées articulaires.

C.2 Gestion des contraintes

La méthode de prise en compte des contraintes bilatérales (liaisons viscoélastiques, bouclescinématiques) et unilatérales (collisions, butées) repose sur un algorithme de Gauss-Seidel quinécessite la connaissance d’une matrice de “compliance” ou matrice “admittance”. Cette matricemet en relation des torseurs d’efforts de contraintes avec des vitesses relatives. On peut l’écrireainsi :

θc = Y Γc (34)

avec :

– θc : vecteur vitesses de contraintes (torseurs cinématiques complets ou partiels, vitessesarticulaires . . . ) ;

– Y : matrice d’admittance en question ;– Γc : vecteur des efforts de contraintes (torseurs d’efforts complets ou partiels, forces oucouples articulaires . . . ).

On procède en trois temps :– on construit d’abord la matrice admittance pour chacun des cas traités isolément commes’il n’y avait qu’une seule contrainte ;

– on construit la matrice admittance globale qui fait apparaître des couplages entre les dif-férentes contraintes ;

– on décrit l’algorithme de Gauss-Seidel globalement, puis le traitement particulier lié àchaque cas.

On ne considère que des contacts ponctuels avec frottements secs de type Coulomb avec unecomposante en torsion, tels que décrits dans les articles de J.C. Trinkle et al. [TTP01] et LiuTong et al. [TW05]. Dans ce modèle de frottement et dans le repère de contact, les seules com-posantes du torseur d’efforts engendrés par le contact sont (fx, fy, fz, mz) (figure 5), soit : les

166

Page 169: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

trois composantes de force et une composante de moment, la dernière suivant l’axe z.

D’autre part, une liaison viscoélastique est constituée d’un ressort (application de SE (3)dans se (3)∗) et d’une viscosité (application de se (3) dans se (3)∗). On a choisi pour le ressortune formulation dérivant d’un potentiel (E.D. Fasse et P.C. Breedveld [FB98]) et, pour laviscosité, une application linéaire constante symétrique définie positive appliquée dans l’un desrepères de la liaison.

Dans la simulation, on utilise des contacts sphère/parallélépipède, sphère/sphère et ellip-soïde/sphère. Pour réaliser un contact plan/plan (figure 5), on attache sur un “corps” 3 sphèresde contact qui définissent un plan, qui pourra entrer en collision avec un parallélépipède. Les piedset les mains du mannequin sont des parallélépipèdes où 3 sphères sont encastrées. C’est au niveaude ces sphères qu’interviennent les contacts avec l’environnement (un autre parallélépipède).

−→x

−→y

−→z

x1c

x2c

x3c

Figure 5 – Orientation du repère de contact et simplification du contact plan/plan.

C.3 Intégration numérique

Le problème à résoudre dans une simulation numérique consiste à discrétiser l’équation 35pour la résoudre numériquement (avec x l’état du système considéré) :

x = f(x) (35)

On utilise deux schémas d’intégration numérique à un pas de temps que sont Euler direct(qui est un schéma explicite) et Euler rétrograde (qui est un schéma implicite) :

– schéma explicite :

xk+1 − xk

δt≃ xk = f(xk) (36)

– schéma implicite :

xk+1 − xk

δt≃ xk+1 = f(xk+1) (37)

Une prédiction de xk+1 est mise en œuvre, puis une linéarisation de f autour de xk, dans unschéma d’Euler implicite linéarisé :

xk+1 − xk

δt≃ xk+1 ≃ f(xk + xk δt) (38)

167

Page 170: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

f(xk + xk δt) = f(xk) +∂f

∂xxk δt (39)

L’accélération est intégrée. L’intégration numérique se fait d’abord selon Euler implicite puisselon Euler explicite (R. Herbin [Her05]). À l’instant k, l’équation de la dynamique s’écrit :

Mk Tk+1 + Nk Tk+1 = Ctk Wk + L τk avec Tk+1 =

Tk+1 − Tk

dt(40)

Donc, par inversion, on obtient le vecteur vitesse en coordonnées généralisées du robot àl’instant k + 1 :

Tk+1 =(

Mk + dt Nk

)

−1 (

Mk Tk + dt(

Ctk Wk + L τk

)

)

avec Tk+1 =

[

Vk+1

qk+1

]

(41)

Enfin, la configuration de l’hv à l’instant k + 1 est calculée à partir de la configuration àl’instant k et Tk+1 :

{

Hk+1 = Hk exp(Vk+1 dt)

qk+1 = qk + qk+1 dt(42)

168

Page 171: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

D Paramétrage de l’hv

D.1 Masses et géométries

Segments corporels % de la masse totale

tête 06.30

thorax 17.10

abdomen + bassin 32.39

bras 02.63

avant-bras 01.54

main 00.59

cuisse 10.95

jambe 04.93

pied 01.46

Table 2 – Masses des segments corporels (D. Miller et al. [MM75]).

Géométries Segments corporels

Ellipsoïde Tête

StadiumThorax

Abdomen

Cône tronqué

Bras

Avant-bras

Cuisse

Jambe

ParallépipèdeMain

Pied

Table 3 – Géométries des segments corporels (E.P. Hanavan [Han64]).

169

Page 172: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

D.2 Limites articulaires

Articulation Mouvement Angle limite ( ) Nomination

Cou

abduction −18 couminX

adduction +18 coumaxX

flexion −19 couminY

extension +23 coumaxY

rotation médiale −75 couminZ

rotation latérale +75 coumaxZ

Épaule

adduction −90 épauleminX

abduction +90 épaulemaxX

extension −60 épauleminY

flexion +170 épaulemaxY

rotation interne −20 épauleminZ

rotation externe +97 épaulemaxZ

Coude

extension +00 coudeminY

flexion +160 coudemaxY

supination −90 coudeminZ

pronation +85 coudemaxZ

Poignet

flexion −80 poignetminX

extension +70 poignetmaxX

adduction −30 poignetminY

abduction +20 poignetmaxY

Hanche

adduction −30 hancheminX

abduction +30 hanchemaxX

extension −20 hancheminY

flexion +120 hanchemaxY

rotation latérale −60 hancheminZ

rotation médiale +30 hanchemaxZ

Genouflexion −135 genoumin

Y

extension +00 genoumaxY

Cheville

adduction −30 chevilleminX

abduction +20 chevillemaxX

flexion plantaire −50 chevilleminY

flexion dorsale +30 chevillemaxY

Table 4 – Limites articulaires de l’humain virtuel à 32 ddl (J.M. Chevallier [Che98]).

170

Page 173: Commande dynamique d’humains virtuels : équilibre robuste et … · Commande dynamique d’humains virtuels : équilibre robuste et gestion des tâches Thèse de Doctorat Cyrille

E Liste de publications

Publications à des conférences internationales

icra 08 Robust Balance Optimization Control of Humanoid Robots with Multiple nonCoplanar Grasps and Frictional Contacts. Cyrille Collette, Alain Micaelli,Pierre Lemerle et Claude Andriot. Dans IEEE International Conference onRobotics and Automation, pages 3187-3193, Pasadena, ca, usa, Mai 2008.

Humanoids 07 Dynamic Balance Control of Humanoids for Multiple Grasps and non Copla-nar Frictional Contacts. Cyrille Collette, Alain Micaelli, Pierre Lemerleet Claude Andriot. Dans IEEE/RAS International Conference on HumanoidRobots, Pittsburgh, pa, usa, December 2007.

isvc 07 Dynamic Balance Control Following Disturbance of Virtual Humans. CyrilleCollette, Alain Micaelli, Pierre Lemerle et Claude Andriot. DansG. Bebis et al., editor, isvc 2007, Part I, lncs 4841, pages 734-744, BerlinHeidelberg, 2007. Springer-Verlag.

Autres

jnrh 08 Gestion d’Équilibre Robuste d’Humains Virtuels Dynamiques. Cyrille Col-lette, Alain Micaelli, Pierre Lemerle et Claude Andriot. jnrh, Paris,France, 2008.

jnrh 07 Gestion d’Équilibre d’Humains Virtuels Dynamiques en Multi Contacts NonCoplanaires avec Frottements Secs. Cyrille Collette, Alain Micaelli, PierreLemerle et Claude Andriot. jnrh, Montpellier, France, 2007.

171