Academia.eduAcademia.edu

Contrôle de l'équilibre des humains virtuels

Ce chapitre aborde le problème de l'analyse de l'équilibre et de la synthèse par la ommande de la coordination des mouvements d'humains virtuels pour la simulation réaliste d'activités physiques quotidiennes ou professionnelles. nous discutons dans un premier temps les notions d'équilibre postural et de stabilité de cet équilibre dans le cadre particulier des mannequins numériques. Nous introduisons un modèle mécanique pour des mannequins en interaction physique avec l'environnement. À partir d'une formulation générale du problème de l'équilibre, nous examinons un certain nombre de moyens proposés pour caractériser et quantifier la stabilité de l'équilibre des systèmes mécaniques contraints. Nous introduisons la notion de perturbation admissible pour la dynamique posturale vis-à-vis des contraintes de persistance et de non-glissement des appuis. Enfin, nous proposons des techniques de synthèse par la commande de fonctions motrices pour une coordin...

3 CONTRÔLE DE L’ÉQUILIBRE DES HUMAINS VIRTUELS Philippe Bidaud, Sébastien Barthélémy et Alain Micaelli 3.1 INTRODUCTION Ce chapitre aborde le problème de l’analyse de l’équilibre et de la synthèse par la commande de la coordination des mouvements d’humains virtuels pour la simulation réaliste d’activités physiques quotidiennes ou professionnelles telles qu’illustré par la figure 3.1. La synthèse d’actions motrices physiquement réalistes et biologiquement plausibles d’humains virtuels constitue un enjeu important dans le développement de logiciels d’animation de mannequins numériques. Chez l’homme, l’activité motrice exploite un répertoire de synergies fonctionnelles acquises par apprentissage et autour desquelles s’organisent des mécanismes d’ajustement réactifs et prédictifs. Ces synergies élémen- Figure 3.1 : Prototypage de montage dans le domaine de l’aéronautique à l’aide de mannequins virtuels taires propres aux fonctions à réaliser (se mouvoir, saisir, manipuler, s’asseoir, s’accroupir, etc.) varient d’un sujet à l’autre en fonction de ses caractéristiques morphologiques et dynamiques. Elles dépendent intrinsèquement des diverses contraintes internes au système musculo-squelettique ou externes, comme notamment l’environnement avec lequel ce dernier interagit. Un grand nombre de ces synergies sont conditionnées d’une manière générale par l’équilibre postural du sujet lors de son évolution. L’équilibre est obtenu en utilisant les forces articulaires pour produire les effets dynamiques permettant de contrebalancer les effets de la gravité à travers les réactions aux appuis. Produire par des lois de commande sur un mannequin virtuel des comportements adaptatifs respectant son « équilibre »suppose de disposer • d’un modèle physique pour la simulation dynamique du mannequin ; • de moyens d’analyse de son état notamment vis-à-vis de son équilibre ; 41 42 • Le traité de la réalité virtuelle et au-delà de techniques de génération automatique de mouvements satisfaisant à la fois les tâches à réaliser et l’équilibre de la posture. Dans ce qui suit, nous discutons dans un premier temps les notions d’équilibre postural et de stabilité de cet équilibre dans le cadre particulier des mannequins numériques. Nous introduisons un modèle mécanique pour des mannequins en interaction physique avec l’environnement. À partir d’une formulation générale du problème de l’équilibre, nous examinons un certain nombre de moyens proposés pour caractériser et quantifier la stabilité de l’équilibre des systèmes mécaniques contraints. Nous introduisons la notion de perturbation admissible pour la dynamique posturale vis-à-vis des contraintes de persistance et de non-glissement des appuis. Enfin, nous proposons des techniques de synthèse par la commande de fonctions motrices pour une coordination de l’ensemble du système postural et de manipulation satisfaisant explicitement les contraintes d’équilibre des appuis. 3.2 ÉQUILIBRE ET STABILITÉ DE MANNEQUINS NUMÉRIQUES L’équilibre traduit d’une manière générale un état où les forces en présence se contrebalancent exactement. Cette notion prend toutefois des sens différents selon le domaine considéré. En automatique, un état d’équilibre est tel que le système n’évolue plus si son entrée n’est pas modifiée. Cette définition est assez restrictive : il n’y a pas lieu en pratique d’opposer équilibre et mouvement. Par exemple, le maintien orthostatique (station debout) s’opère chez l’homme par d’incessants ajustements (mouvements). Pour prendre en considération ces notions, la définition d’équilibre peut être étendue à des cycle limites ou des trajectoires d’équilibre. L’équilibre mécanique d’un système caractérise, à l’aide des théorèmes généraux de la mécanique, le fait que la somme des efforts exercés sur chacun des corps qui le composent est nulle. Lorsque le système en question est immobile, on parle d’équilibre statique. Dans le cas contraire, des efforts inertiels interviennent et l’on parle d’équilibre dynamique. Tous les objets évoluant dans le monde réel sont en permanence en situation d’équilibre dynamique : il ne peuvent se soustraire aux lois de la physique. Dans un monde virtuel en revanche, les conditions d’équilibre dynamique doivent être spécifiquement imposées pour que la simulation soit physiquement réaliste. Pour un humain virtuel ou réel, en langage ordinaire, l’équilibre se définit plutôt par opposition à la chute (« perdre l’équilibre »), état qui intègre également l’intention du sujet dans son activité physique. Par exemple, la marche est somme toute une succession de chutes contrôlées vers l’avant. Au regard de ces remarques, on peut dire que la caractérisation d’un état de déséquilibre (au sens du langage commun) est la perte de contrôle qui conduit inéluctablement à la chute. Un équilibre est qualifié de stable si son état reste maîtrisable (ne diverge pas, revient vers un cycle limite, etc.) en dépit d’une perturbation finie (par exemple, une variation des entrées du système). Il existe plusieurs définitions formelles de la stabilité en automatique. Pour un système non linéaire comme le système mécanique articulé du corps humain, virtuel ou réel, la théorie de Lyapunov ou encore la théorie de la passivité sont généralement applicables. Toutefois, au-delà de la dynamique du mouvement libre, ces systèmes peuvent être sujets à des variations discontinues d’état lors de l’établissement des contacts (impacts). Ils peuvent être aussi sujets à des contraintes non-holonomes, en particulier lors du glissement des appuis. Ces systèmes sont donc par nature des sys- Contrôle de l’équilibre des humains virtuels 43 tèmes mécaniques non-réguliers. La simulation numérique de tels systèmes fait l’objet de travaux très importants notamment dans le cadre particulier de ses applications aux logiciels de réalité virtuelle. Citons à titre d’exemple ceux de J.C. Baraff [Baraff, 1995] ou encore de D. Trinkle [Trinkle e.a., 2001]. Pour de tels systèmes, les outils de l’automatique doivent être repensés aussi bien au niveau des méthodes d’analyse que celles de synthèse des lois de commande. Indépendamment des aspects liés à la stabilisation de ces systèmes, la caractérisation même de leur gouvernabilité doit être traitée. Celle-ci est en partie conditionnée par les contraintes liées à la stabilité des appuis mais aussi à d’autres contraintes physiques comme celles relatives aux capacités des actionneurs. Aussi, dans ce qui suit, nous avançons un certain nombre de moyens utilisables pour observer une instabilité (glissement ou décollement) des appuis avec l’environnement physique qui conduirait à une perte de contrôle de l’état postural pour des humains virtuels (valable aussi pour les sujets humains ou les robots humanoïdes). 3.3 MODÈLES POUR LA SIMULATION ET LA COMMANDE 3.3.1 MODÈLE MÉCANIQUE DU MANNEQUIN VIRTUEL Pour réaliser des simulations réalistes, les mannequins numériques doivent comporter un très grand nombre de degrés de liberté (ddl). On utilise typiquement 19 segments (modélisés par des corps rigides) et 37 articulations à un ddl. Des représentations plus détaillées, notamment pour la colonne vertébrale et les mains conduisent à un mannequin comprenant plus d’une centaine d’articulations et de segments corporels. Notons qu’il existe une norme internationale (H-ANIM [ISO/IEC FCD 19774 :200x, ]) qui standardise la description de personnages 3D animés afin d’assurer la compatibilité avec les différents systèmes de modélisation, d’animation, de capture de mouvements et de visualisation. Par ailleurs, il existe de nombreuses bases de données anthropométriques desquelles peuvent être extraits les paramètres définissant la géométrie des masses et la cinématique du corps humain (voir par exemple [de Leva, 1996]). Une présentation assez complète des mannequins numériques proposés dans les logiciels actuels de CAO (Conception Assistée par Ordinateur) et de PLM (Product Life Management) figure dans [Hue, 2008]. Le système présente une topologie arborescente à partir d’un solide choisi comme la racine. Ce dernier étant mobile par rapport à un référentiel supposé Galiléen, on parle de système à base mobile ou flottante. La figure 3.2 représente un tel mannequin, dont le bassin constitue le corps racine. La configuration (ou posture) du mannequin est entièrement définie par la configuration du corps racine, que l’on peut représenter par une matrice homogène 0 H1 ∈ SE(3) et celle des différentes articulations, que l’on peut représenter par des réels q2 (pour les liaisons pivot) ou des matrices rotations  R4 ∈ SO(3) (pour les liaisons rotules). Nous notons Q = 0 H1 , q2 , . . . , R4 , . . . la famille paramétrant la configuration du mannequin. Les équations du mouvement d’un tel système peuvent être obtenues par le formalisme de Lagrange écrit en termes de quasi-coordonnées (équations de Boltzmann-Hamel). 44 Le traité de la réalité virtuelle Figure 3.2 : Mannequin virtuel à 36+6 degrés de liberté Ces équations sont de la forme : M (Q) ( ν̇ − g(Q)) + N (Q, ν)ν = S(Q) τ + γc (3.1) h   i où ν = v1/0 ; q̇2 ; . . . ; vec R4T Ṙ4 ; . . . est un paramétrage des vitesses du système, ν̇ est sa dérivée par rapport au temps, M (Q) est la matrice d’énergie cinétique totale du système, N (Q, ν) est la matrice des effets non-linéaires et g(Q) est l’accélération gravitationnelle. Le membre de droite fait apparaître les efforts généralisés relatifs aux paramètres. On distingue les efforts de contact γc ainsi que les efforts moteurs S(Q)τ . S(Q) est une matrice qui représente les caractéristiques des actionneurs et τ ∈ Rn−nu est le vecteur d’entrées appliquées aux actionneurs. Pour les systèmes à base flottante, la position par rapport à l’environnement n’est pas directement commandée. Le système est par conséquent dit sous-actionné. Le rang de la matrice S(Q) est alors inférieur au nombre de degrés de liberté du système. Dans le cas d’un mannequin, le nombre de degrés de liberté non actionnés nu vaut donc 6 (ou 3 pour les systèmes évoluant dans le plan). Dans la suite, nous choisissons S(Q) afin de pouvoir écrire (sans perte de généralité) les efforts moteurs sous la forme :   S(Q)τ = 0nuτ×1 (3.2) Il apparaît alors clairement que pour agir sur les nu degrés de liberté non actionnés, la seule solution est d’exploiter et même de contrôler les efforts de contact γc . Pour plus de détails sur la formulation des équations du mouvement en quasicoordonnées, le lecteur peut se reporter à [Kozlowski e.a., 2006]. Nous nous contentons ici de les développer pour le mécanisme illustré sur la figure 3.3(a). Il s’agit d’un système plan à base flottante, constitué de deux solides dont l’un articulé par une liaison prismatique. Nous choisissons trois repères, indicés 0, 1, 2 respectivement liés au sol, au premier et au second solide pour représenter sa géométrie. La configuration  et la vitesse sont alors respectivement paramétrées par la famille Q = 0 H1 , q4 et le Contrôle de l’équilibre des humains virtuels 45 yc2 q4 z2 zc2 y2 l q3 z1 y1 q1 z0 zc1 q2 yc1 y0 (a) Paramétrage du système (b) Le système en position (q1 = 0, q2 = 0, q3 = pi , q4 = 1) et en contact avec l’environ2 nement en deux points Figure 3.3 : système à 1 ddl actionné (liaison prismatique) et à base flottante évoluant dans le plan (3 ddl non actionnés) vecteur ν = 1  v1/0 en notant q̇4   cos(q3 ) − sin(q3 ) R1 = sin(q3 ) cos(q3 ) # " q1 0 R1 0 q2 H1 = 0 0 1  x  " #" # ω1/0 q̇3 1 0 0 y 1 q̇1 v1/0 =  v1/o  = 0 0 T R1 z q̇2 0 v1/0 0 Les matrices du modèle (3.1) peuvent s’écrire sous la forme :   I1 + I2 + m2 (q4 + l)2 0 m2 (q4 + l) 0  0 m1 + m2 0 0  M (Q) =  m2 (q4 + l) 0 m1 + m2 0  0 0 0 m2   (q4 + l)q̇4 m2 0 0 0 0 0 0 0  N (Q) =  q̇4 m2 0 0 0 0 0 0 0 # #" " 0 1 0 0 0 g(Q) = 0 0 T R1 0 −9, 81m s−2 0 S(q) = 00 1 (3.3) (3.4) (3.5) (3.6) (3.7) (3.8) (3.9) 46 Le traité de la réalité virtuelle en notant m1 , m2 , I1 et I2 les masses et moments d’inertie des deux solides, et en supposant que les centres de masse sont confondus avec les origines des repères 1 et 2. 3.3.2 MODÈLES DE CONTACT Le contact entre plusieurs corps est un phénomène complexe pour lequel on peut considérer trois grandes familles de modèles. Si les corps sont rigides, un impact correspond à une discontinuité de vitesse qui, associée à l’équation différentielle (3.1), forme un système dynamique hybride, assez difficile à exploiter. Si les corps sont déformables, une modélisation fidèle recourt à des éléments finis, ce qui augmente considérablement la complexité du système. Un compromis consiste à considérer que les corps, bien que rigides, supportent des déformations locales modélisées par des ressorts amortis non-linéaires. Cette approche est séduisante de prime abord, car le système dynamique résultant est régulier, mais conduit souvent à un système d’équations différentielles raide et difficile à simuler et à analyser. Nous nous limitons ici à des contacts rigides auxquels sont associés un modèle de Coulomb. 3.3.2.1 Contact ponctuel sans frottement {c} ④✶⑥ ④✷⑥ Figure 3.4 : Repères associés au contact Soient deux solides (notés 1 et 2) en contact ponctuel. On définit un repère {c} orthonormé direct ayant pour origine le point de contact et dont l’axe z est choisi normal au plan tangent aux surfaces en contact1 comme illustré à la figure 3.3.2.1. Définissons la vitesse relative des deux solides au point de contact vc = cAd2 v2/0 − cAd1 v1/0 = [ ωcx ωcy ωcz vcx vcy vcz T ] (3.10) Sous l’hypothèse de contacts rigides, une contrainte d’unilatéralité traduit l’impossibilité d’interpénétration des deux solides : vcz ≥ 0 (3.11) Réciproquement, l’effort de contact exercé par le solide 1 sur le solide 2, que nous noteT rons wc = [ 0 0 0 0 0 fcz ] se réduit à la seule composante normale (fcz ), correspondant 1 Les surfaces en contact sont supposées régulières pour que le plan tangent soit défini. Contrôle de l’équilibre des humains virtuels 47 aux forces de pression. Une seconde contrainte d’unilatéralité exclut un comportement adhésif du contact : fcz ≥ 0 (3.12) Finalement, une contrainte de complémentarité exclut l’existence d’une force de pression lors de la rupture de contact : vcz fcz = 0 (3.13) Cette équation est appelée loi (ou condition) de Signorini. 3.3.2.2 Contact ponctuel avec frottement Les lois d’Amontons-Coulomb2 modélisent les forces de frottement qui s’opposent au glissement des surfaces en contact. La vitesse de glissement est définie comme la projection de vc sur le plan tangent au contact. Lorsqu’elle est nulle, on parle de frottement statique et les forces de contact appartiennent au cône de Coulomb Fµ , caractérisé par le coefficient de friction µ, une constante adimensionnelle, positive propre aux matériaux en contact.   q 2 T (3.14) Fµ = wc : wc = [ 0 0 0 fcx fcy fcz ] et fcx 2 + fcy ≤ µfcz L’ensemble Fµ est un cône de révolution (ou de Lorentz), d’angle α = atan(µ) dont tous les éléments satisfont l’équation (3.12). Quelques cas particuliers peuvent être mentionnés : • lorsque µ = 0, le cône se réduit à une demi-droite, c’est-à-dire au modèle de contact sans frottement ; π • lorsque µ tend vers l’infini, α tend vers 2 et le cône tend vers un demi-espace. Dans ce cas, le glissement n’intervient jamais. Les forces normale et tangentielle ne sont toutefois pas indépendantes : si la force normale est nulle, alors la force de frottement sera nulle également ; • lorsque l’on considère un problème plan, Fµ est un cône polyédrique, plus facile à manipuler mathématiquement. Lorsque le glissement est non-nul, on parle de frottement dynamique. Le modèle de frottement dynamique de Coulomb permet d’analyser des cas simples mais présente également des incohérences [Wieber, 2000]. Dans beaucoup de situations, il est souhaitable de respecter strictement les conditions de frottement statique. Nous nous limitons par la suite à considérer ce cas particulier. 3.3.2.3 Contact non ponctuel Lorsque les surfaces en contact sont suffisamment faibles, les contacts non ponctuels peuvent être modélisés en introduisant dans le modèle d’Amontons-Coulomb des efforts s’opposant au pivotement et éventuellement au roulement des solides en contact. 2 Les loi du frottement furent découvertes par Léonard de Vinci (1452-1519) puis oubliées. Guillaume Amontons les découvrit également et les publia en 1699. Elles furent ensuite vérifiées par Charles-Augustin de Coulomb en 1781. 48 Le traité de la réalité virtuelle Par exemple, le modèle de contact ponctuel déformable peut être modélisé à l’aide d’un coefficient de frottement spécifique au pivotement ξ (homogène à l’inverse d’une longueur) : Fµ,ξ =   wc : wc = [ 0 0 mzc fcx fcy fcz  T ] , s fcx 2 µ2 + 2 fcy µ2 ≤ fcz et mzc ξ ≤ fcz    (3.15) Dans le cas contraire, le contact peut être décomposé en un ensemble de contacts ponctuels. L’effort de contact total étant alors obtenu à l’aide de la somme des torseurs des efforts élémentaires. ❧ z z y y ② (b) Une caisse en appui sur sol modélisée dans le plan par un appui linéïque ou deux appuis ponctuels frottants mx ✭◆ ♠✮ (a) Une table en appui sur sol modélisée dans le plan par deux appuis ponctuels frottants fy ✭◆✮ fz ✭◆✮ (c) ensemble des torseurs transmissibles par les contacts des deux exemples précédents, exprimés dans le repère 1, pour y = 43 l Figure 3.5 : Une table (deux contacts ponctuels) et une caisse (un contact linéïque) Compte tenu de la convexité de Fµ , on peut souvent décomposer un contact linéïque ou surfacique en un nombre fini de contacts ponctuels. Ainsi les efforts de contact transmissibles sont identiques pour les deux exemples de la figure 3.5. L’ensemble de ces efforts est représenté figure 3.5(c) dans l’espace des torseurs plans. Contrôle de l’équilibre des humains virtuels 49 3.3.2.4 Représentation mathématique des cônes de Coulomb Plusieurs types de formulation mathématiques peuvent être exploitées pour représenter les cônes convexes Fµ traduisant les contraintes d’adhérence des contacts. Si une forme exacte peut être donnée par des Inégalités Linéaires Matricielles (LMI), une approximation polyèdrique est souvent exploitée. Le cône ainsi approximé admet les deux représentations canoniques : soit C ∈ Rd un cône polyédrique convexe. Il peut être construit sous forme d’une combinaison positive de nr rayons ri : C= ( d x∈R :x= nr X ) αi ri : αi ≥ 0 i=1 = pos (r1 , . . . , rnr ) (3.16) (3.17) C peut également être défini comme la solution d’un système fini d’inégalités linéaires, c’est-à-dire comme l’intersection d’un nombre fini de demi-espaces :  C = x ∈ Rd : Ax ≤  (3.18) f (pos (r1 , . . . , rnr )) = pos (f (r1 ), . . . , f (rnr )) (3.19) où les lignes de la matrice A sont les vecteurs orthogonaux aux faces de C et orientés vers l’extérieur. Comme nous l’avons mentionné, un cône polyédrique est plus facile à manipuler mathématiquement qu’un cône de révolution. En particulier, l’image d’un cône polyédrique par une application linéaire f est un cône polyédrique de rayons f (ri ) : et la somme vectorielle (ou somme de Minkowsky) de deux cônes polyédriques convexes est le cône polyédrique convexe obtenu par la combinaison positive de l’ensemble de leurs rayons :        pos r11 , . . . , rn ⊕ pos r12 , . . . , rn (3.20) = pos r11 , . . . , rn , r12 , . . . , rn r r r r Il est courant d’approximer le cône de Coulomb par un cône polyédrique, que l’on Figure 3.6 : Cône de Coulomb et son approximation par un cône polyédrique à 5 rayons notera Fµ∗ , comme illustré sur la figure 3.6. On parle parfois dans ce cas de modèle de frottement pyramidal. 50 3.3.3 Le traité de la réalité virtuelle MODÈLE DU MANNEQUIN EN CONTACT Dès lors où le mannequin est en contact physique avec l’environnement, s’ajoutent aux efforts considérés dans l’équation (3.1) les actions de contact. Leur effet dépend de la distribution spatiale des contacts, de leur nature ainsi que de la manière par laquelle ils se transmettent dans le système. La transmission des efforts extérieurs de contact fait intervenir la matrice jacobienne Jci des contacts. La vitesse de chaque point de contact vci s’écrit en effet sous forme d’une combinaison linéaire des vitesses généralisées : vci = ciAd2 v2/0 − ciAd1 v1/0 = Jci (Q) ν (3.21) L’effort généralisé résultant des actions aux m contacts est alors donné par γc = m X JcTi (Q) wci (3.22) i=1 Il est généralement souhaitable que les contacts, en tant qu’appuis, soient maintenus et sans glissement. Cette condition se traduit par des contraintes sur la vitesse généralisée qui s’expriment comme h0i h0 0 0 1 0 0i 0 = 0 0 0 0 1 0 Jci (Q) ν, i = 1, . . . , m (3.23) 0 000001 ou sur l’accélération généralisée (en supposant que les contraintes sont vérifiées à l’instant initial)  h0i h0 0 0 1 0 0i 0 = 000010 Jci (Q) ν̇ + J˙ci (Q) ν , i = 1, . . . , m (3.24) 0 000001 Les contraintes (3.11) et (3.13) tout comme les modèles d’impact et de glissement ne sont dès lors plus nécessaires puisque l’on impose par la commande la permanence et le non-glissement du contact. L’équation (3.1) peut ainsi être réécrite : M (Q) ( ν̇ − g(Q)) + N (Q, ν) ν = [ τ ] + m X JcTi (Q) wci (3.25) i=1 Si l’on reprend l’exemple du mécanisme plan placé dans une situation de contact, comme illustré figure 3.3(b), les matrices jacobiennes des contacts sont respectivement : # # " " 1 0 0 0 1 0 0 0 (3.26) Jc2 = 0 0 1 0 Jc1 = 0 0 −1 0 0 −1 0 −1 0 1 0 0 et les efforts généralisés de contact s’expriment alors comme : γc = JcT1 c1 wc1 + JcT2 c2 wc2     0 0   0 0   y  0 1 fc1 0 −1 fcy2 = +  z −1 0 fc1 1 0  fcz2 0 −1 0 0 (3.27) (3.28) Contrôle de l’équilibre des humains virtuels 51 3.4 UNE FORMULATION DE L’ÉQUILIBRE DU MANNEQUIN Sur base des éléments de modélisation précédents, on peut introduire une formulation générale de l’équilibre d’un mannequin à travers l’étude de ses possibilités de mouvement. En effet, les solutions de (3.24) constituent un espace affine que nous notons N ⊂ Rn . Outre ces contraintes cinématiques, les accélérations sont également bornées par les conditions de transmission des efforts aux contacts. L’ensemble des efforts généralisés que les contacts peuvent supporter, Gc , s’exprime comme la somme vectorielle (somme de Minkowsky) des images par JcTi des cônes de Coulomb de chaque point de contact : Gc = Jc1 (Q)T Fµ1 ⊕ · · · ⊕ Jcm (Q)T Fµm ( = γc : ∃ (wc1 , . . . , wcm ) ∈ Fµ1 × . . . × Fµm : γc = m X i=1 JcTi (Q) wci (3.29) ) (3.30) Gc dépend uniquement de la configuration et de la nature des contacts. Il permet de caractériser la qualité d’un système d’appuis : plus cet ensemble est vaste, plus on peut « prendre appui »sur l’environnement. On peut alors traduire la condition d’équilibre dynamique sous la forme générale : M (Q) ( ν̇ − g(Q)) + N (Q, ν)ν − [ τ ] ∈ Gc (3.31) En introduisant également l’ensemble des efforts moteurs admissibles T , l’ensemble des accélérations réalisables peut s’écrire :      ν̇ ∈ M −1 (Q) (M (Q)g(Q) − N (Q, ν)ν) + + Gc ∩ N (3.32) T Sous cette forme, le problème est toutefois complexe à analyser et est généralement abordé de manière simplifiée. L’un des aspects qui est le plus souvent considéré est celui de l’équilibre en rotation, car il peut induire une perte de contrôle de la posture du mannequin. Un déséquilibre en rotation autour de l’un des axes du système d’appui conduira à un basculement autour de cet axe qui peut, s’il n’est pas suivi d’un changement de la topologie des appuis (comme dans le cas de la marche), provoquer la chute. 3.5 RÉSISTANCE AU BASCULEMENT Pour analyser et évaluer l’équilibre postural d’un mannequin numérique, comme celle d’un sujet humain, d’un robot humanoïde ou à locomotion multipodale, un certain nombre de méthodes introduisant généralement un « point »caractéristique et sa position rapportée à l’enveloppe convexe des points de contact (la base de sustentation) ont été développées. À ces points sont associées des mesures pour refléter la « qualité »de l’équilibre, notamment la capacité de résistance à une perturbation extérieure. 52 Le traité de la réalité virtuelle Ces méthodes se focalisent sur le risque de chute par basculement et le décollement induit des appuis. La mesure la plus simple considère l’équilibre statique du système à travers la projection du centre de masse (CdM) sur l’enveloppe convexe des points d’appuis et évalue sa « qualité »à l’aide de la distance entre le point projeté et la frontière de la base de sustentation. Ce type de mesure ne rend pas compte de l’effet du poids et de la hauteur du centre de gravité sur l’équilibre. Aussi, sur cette base d’autres mesures considérant notamment la variation d’énergie potentielle entre l’état courant et les situations en limite de stabilité ont été dérivées. Les effets inertiels peuvent être aussi combinés aux effets gravitationnels pour appréhender des perturbations dynamiques. Une présentation détaillée de ces mesures peut être trouvée dans [Besseron, 2008]. Au-delà de ces méthodes qui sont d’une manière générale statiques, on connaît plusieurs méthodes d’analyse du comportement dynamique qui s’appuient toujours sur des points caractéristiques. 3.5.1 CENTRE DE PRESSION Parmi ces points caratéristiques, le centre de pression (CdP) qui est défini, lorsque tous les points de contact appartiennent à un même plan P (le sol dans le cas général de la station debout), comme l’unique point P de P où le moment des forces de pression (c.à.d. la composante normale des forces de contact) est nul. En ce point le moment des forces de contact est normal à P. Les coordonnées de ce point peuvent être déterminées très facilement. D’une manière générale, en notant wc le torseur des forces de contact, exprimé en un point M ∈ P, dans une configuration où le mannequin a m appuis ponctuels avec l’environnement, wc = m X AdTc ci ci (3.33) wci i=1  1 0 m  X 0 = 0  i=1  0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 rcy − rcyi 1 0 0 0 0 rcxi − rcx 0 1 0 M est le centre de pression si et seulement si :  x    m x X 0 z rci − rc = fci y rci − rcy 0   rcyi − rcy 0 x x  0 rc − rci   0  0   x 0   fiy  0  fi  fiz 1 (3.34) (3.35) i=1 On peut faire remarquer qu’en P , le moment des forces de contact n’est généralement pas nul.P La composante de  moment normale  à P, qui implique les forces de frottement, m mzc = i=1 rcy − rcyi fcxi + rcxi − rcx fcyi est a priori non nulle. Seul, le moment des forces de pression est nul en P . On peut écrire l’équation (3.35) sous une forme qui fait apparaître directement la position de CdP :    x X m fczi rcxi rc (3.36) = y rcy fcz rci i=1 Contrôle de l’équilibre des humains virtuels 53 il est alors évident, en envisageant toutes les distributions de forces de pression physiquement réalistes, c’est-à-dire telles que fczi ≥ 0, que le lieu du centre de pression constitue l’enveloppe convexe des points de contact. On analyse généralement la posture chez les sujets humains par le biais d’une plateforme de posturographie. Cette dernière est constituée d’un capteur d’effort à 3 composantes (force normale fz à la surface du capteur et deux moments autour d’axes orthogonaux du plan (mx , my ). Les coordonnées (x, y) du CdP sont alors données par : x = −my /f z 3.5.2 y = mx /f z (3.37) ZERO MOMENT POINT Pour analyser la posture non plus à partir des efforts d’interaction mais par la connaissance de la dynamique posturale, Vukobratovic [Vukobratovic e.a., 1972] a introduit le zero moment point (ZMP). Ce point est défini comme étant l’unique point Z de P où le moment du torseur des effets inertiels et de gravité exercés sur le système (que nous notons wig ) est normal à P. Ce point peut être défini à l’aide des équations du mouvement (3.1) dont le membre de gauche représente les forces généralisées d’inertie et de gravité. À partir de cette équation, on peut déterminer wig en considérant les composantes des forces généralisées relatives aux paramètres définissant le mouvement du corps racine. En s’aidant de la matrice de projection Pu = [ I6×6 06×(n−6) ], on a : 1 wig = Pu (M (Q) ( ν̇ − g(Q)) + N (Q, ν)ν) (3.38) De même, 1 wc = Pu γc . Puisque les deux torseurs sont égaux (wc = wig ), le ZMP et le CdP sont confondus. Leur distinction tient uniquement à la méthode choisie pour définir et calculer le point : le CdP se mesure à partir des forces de contact, alors que le ZMP se calcule à partir du mouvement du système. Notons que les contraintes portant sur le CdP valent évidemment aussi pour le ZMP. Ajoutons que cette duplicité est l’une des clefs de la popularité du ZMP/CdP pour la commande de robots marcheurs : la position du point est aisément mesurée par les capteurs d’efforts positionnés dans les pieds du robot et les mouvements sont commandés de sorte que l’évolution du point reste à l’intérieur de la base sustentation. L’analyse temps/fréquence de la trajectoire du ZMP/CdP est à la base de l’étude des stratégies sensorimotrices de la régulation posturale chez l’homme. Pour assurer la propulsion du corps lors de la marche, ce point voyage pour une grande majorité des individus selon un axe médian de la sole plantaire du talon vers l’avant pied, comme illustré figure 3.7. L’élaboration de la commande et la génération de mouvement de robots humanoïdes est souvent réalisée à l’aide de modèles simplifiés réduisant le robot à un simple pendule inverse linéarisé (voir par exemple [Kajita e.a., 2003]) ce qui permet d’utiliser des méthodes de commande avancées et de fournir une interprétation simple des relations mécaniques entre le CdP et le CdM. Remarquons d’ailleurs que dans le cas où le système est immobile, le ZMP est confondu avec la projection orthogonale sur P du centre de masse du système. La position du ZMP peut constituer un indicateur de la qualité de l’équilibre. En effet, 54 Le traité de la réalité virtuelle Figure 3.7 : Évolution du ZMP (traits pointillés) et du CdM (traits pleins) pour un sujet marchant à vitesse naturelle (1,3 m/s). Les points indiquent les transitions entre les phases de double et de simple support. Cette illustration a été reproduite à partir de [Popovic e.a., 2005]. Les distances sont exprimées en mm. au-delà de vérifier qu’il est situé dans la base support, on utilise parfois la distance qui le sépare de la frontière de cette dernière pour quantifier la capacité du système à résister à une perturbation qui pourrait provoquer le basculement. Toutefois, cette quantification de l’équilibre à l’aide d’une distance est assez peu physique. Des alternatives ont été proposées notamment en modélisant plus finement les perturbations éventuelles ou encore en analysant l’équilibre d’un point de vue énergétique. 3.5.3 FOOT ROTATION INDICATOR POINT Lorsque le basculement se produit, l’information donnée par le ZMP/CdP n’est plus exploitable pour apprécier l’état de déséquilibre ; afin de dépasser cette limitation, Goswami [Goswami, 1999] a étendu le ZMP/CdP en introduisant le Foot Rotation Indicator point (FRI) qui permet, lors du basculement de rendre compte de la rotation du pied. Le FRI peut être défini comme suit : • • lorsque le pied est au repos, le FRI est confondu avec le ZMP/CdP ; Lors du basculement du pied, le FRI est défini comme le point de P où les forces de pression devraient être situées pour compenser stopper la rotation du pied. Ainsi, le FRI fournit une indication sur le sens et l’importance du basculement en s’écartant du ZMP/CdP proportionnellement au moment cinétique du pied. Toutefois, il a été montré [Popovic e.a., 2005] que cet écart n’est pas significatif chez l’homme (il est de l’ordre du millimètre lors de la marche). 3.5.4 LIMITATIONS L’analyse de l’équilibre par le ZMP/CdP/FRI souffre de limitations importantes : • • tout d’abord, elle ne permet de considérer que des situations où les contacts sont coplanaires, ce qui restreint singulièrement son champ d’application ; ensuite elle ne considère que les risques de basculement par décollement des appuis. Les risques de glissement des appuis ne sont pas pris en considération. Contrôle de l’équilibre des humains virtuels 55 3.6 UNE MÉTHODE GÉNÉRALE D’ANALYSE ET DE QUANTIFICATION DE L’ÉQUILIBRE Pour dépasser les limitations relatives aux méthodes évoquées ci-dessus, il convient notamment de pouvoir prendre en compte des situations quelconques de contact mais aussi de traiter explicitement d’un certain nombre de contraintes comme celles liées à l’adhérence des appuis ainsi qu’aux limites des capacités motrices humaines qui doivent être reflétées sur le mannequin numérique. Le développement de méthodes plus générales pour traiter du problème de l’équilibre des mannequins numériques peut être inspiré notamment des travaux menés sur l’équilibre des objets (rigides) dans le cadre de leur préhension. Dans cette section, nous introduisons des principes de caractérisation et de quantification de la qualité de l’équilibre d’un mannequin numérique (transposables à tout type de système locomoteur à appuis discrets comme au sujet humain) qui sont dérivés de ceux avancés par [Hirukawa e.a., 2006]. Pour développer ces principes, nous commençons par revisiter les méthodes établies pour considérer l’équilibre partiel (dans un sous-groupe des déplacements) ou total d’un corps isolé sous des appuis unilatéraux. Ces dernières ont été élaborées notamment pour traiter des problèmes de conception de systèmes d’ablocage et de préhension en se fondant sur les notions de fermeture géométrique et de fermeture de force. Nous commencerons par définir ces notions en considérant un solide unique qui, s’il devait être rapproché d’un mannequin, conduirait à rigidifier ce dernier. Dans ce cas particulier, le système étudié ne compte que les 6 ddl (resp. 3 dans le plan) non actionnés qui correspondent aux 6 (resp. 3) premières lignes de l’équation (3.31). Dans ce cas, les vitesses et les efforts généralisées sont homogènes à des torseurs. De même, la jacobienne de chaque contact se réduit à une matrice adjointe. 3.6.1 FERMETURE GÉOMÉTRIQUE La notion de fermeture géométrique (form closure), introduite initialement par Reuleaux [Reuleaux, 1875], a été très utilisée dans le domaine de la préhension. Un solide est dit en situation de fermeture géométrique s’il ne peut bouger sans pénétrer son environnement. Par exemple, la table de la figure 3.5 n’est pas en situation de fermeture géométrique puisqu’elle peut être soulevée et glisser. Cette définition peut être traduite mathématiquement sous diverses formes. Les propositions suivantes sont équivalentes : La prise caractérisée par G est fermée géométriquement T G ν > 0, ∀ν ∈ se(3) 6 pos (G) = R  ∈ conv (G) (3.39) (3.40) (3.41) (3.42) où G est la matrice constituée des coordonnées droites support des normales aux contacts. Plusieurs procédures algorithmiques permettant de vérifier la fermeture géométrique d’une prise sont proposées dans la littérature [Bicchi, 1995]. L’une des manières très directe de vérifier cette condition géométrique est de s’assurer que l’origine du système d’actions issues des contacts se trouve strictement à l’intérieur de l’enveloppe convexe 56 Le traité de la réalité virtuelle formée par le système de torseurs des actions de contact. Cela revient à vérifier que Gλ =  a une solution telle que λ > 0. Les prises respectant cette propriété sont stables en ce sens qu’aucun mouvement n’est possible, quelles que soient les actions extérieures appliquées et quels que soient les coefficients de frottement des points de contact. En contrepartie, la propriété de fermeture géométrique dans SE(3) requiert un nombre élevé de points de contacts. Par exemple, l’immobilisation d’un solide requiert un minimum de 7 contacts. Cette propriété est peu adaptée à l’étude de l’équilibre d’humains qui, le plus souvent, ne la vérifient pas. Une fermeture géométrique partielle peut également être définie [Bicchi, 1995], en identifiant des sous-espaces de déplacements infinitésimaux compatibles ou non avec les contraintes. 3.6.2 FERMETURE EN EFFORT La notion de fermeture en effort (force closure) a également été introduite dans le domaine de la préhension. Il en existe de multiples définitions, le plus souvent, il s’agit d’étendre la notion de fermeture géométrique pour prendre en considération le frottement qui peut favoriser la stabilité de la prise. Un solide est dit en situation de fermeture en effort si et seulement si : ∀w ∈ se(3)* , ∃ (wc1 , . . . , wcm ) ∈ Fµ1 × . . . × Fµm : w = m X JcTi wci (3.43) i=1 c’est-à-dire si tous les efforts de perturbation peuvent être compensés par des forces de contact. Toutes les prises fermées géométriquement le sont également en effort. Une définition alternative de la fermeture en effort prenant en considération la capacité du préhenseur à produire les efforts de contact a également été proposée [Bicchi, 1995]. 3.6.3 GÉOMÉTRIE LOCALE ET GLISSEMENT Dans le cadre du modèle de Coulomb, nous évaluons le risque de glissement en vérifiant la résistance de la prise à des efforts de perturbation. Une approche complémentaire consiste à modéliser les perturbations par des déplacements infinitésimaux et à considérer leur conséquences : une prise sera considérée comme stable si les efforts induits par le déplacement tendent à compenser ce dernier, c’est-à-dire à rétablir la configuration initiale [Trinkle e.a., 1994]. En particulier, pour étudier le glissement, il est nécessaire de considérer la géométrie du contact à l’aide d’un modèle local au second ordre [Rimon e.a., 1993] (comme l’illustre la figure 3.6.3) ainsi qu’un modèle linéaire de déformation. Nous n’abordons pas ces travaux plus en détail ici. 3.6.4 STABILITÉ VIS-À-VIS D’UN SOUS-ENSEMBLE DE PERTURBATIONS La fermeture en effort est une propriété souhaitable, mais il est souvent suffisant d’être stable vis-à-vis d’un ensemble plus limité de perturbations. On dit qu’une prise est Contrôle de l’équilibre des humains virtuels 57 Figure 3.8 : Deux prises planaires à 3 points correspondant à la même matrice G. Un modèle géométrique local (au second ordre) permet de déterminer que la pièce de gauche résiste à toutes les perturbation alors que celle de droite peut tourner autour de son centre. Figure reproduite à partir de [Howard e.a., 1996]. stable vis-à-vis de Wp ⊂ se(3)* si et seulement si ∀w ∈ Wp , ∃ (wc1 , . . . , wcm ) ∈ Fµ1 × . . . × Fµm : w = m X JcTi wci (3.44) i=1 Ainsi, une prise fermée en effort est stable vis-à-vis de l’ensemble de se(3)* . Il est courant de considérer des espaces de perturbation simples à manipuler tels que des hypersphères. En notant Sr l’hypersphère de rayon r :  Sr = x ∈ R6 : xT x ≤ r2 Il est possible de quantifier la stabilité d’une prise au moyen du rayon de la plus grande hypersphère inscrite dans Wc . Le centre de cette sphère est placé au torseur des efforts de contact correspondant à l’équilibre dynamique du système. L’hypersphère et son rayon sont respectivement appelés boule et rayon résiduel de Wc . Par exemple, dans le cas de la table (figure 3.5), dynamique correspond à un torseur (plan) " l’équilibre # −ymg 0 d’efforts de contact wc = où m est la masse de la table et g = 9.81 m/s2 mg l’accélération gravitationnelle. La boule résiduelle obtenue dans ce cas est illustrée figure 3.9. Lorsque Gc est un polyèdre, son rayon résiduel peut être calculé à l’aide d’un programme linéaire [Kirkpatrick e.a., 1992]. Dans le cas contraire, il est possible de calculer l’approximation polyédrique de Gc . fz fz mg mg ✵ ✵ mx ✵ ✵ mx Figure 3.9 : Vue en coupe (selon le plan f y = 0) de l’ensemble des efforts de contact admissibles et de la boule résiduelle de l’exemple de la figure 3.5. Ces ensembles sont représentés dans le repère 1 avec y = 34 l (figure (a)) et y = 2l (figure (b)). 58 Le traité de la réalité virtuelle Cette méthode souffre toutefois de quelques défauts : tout d’abord, on peut constater figure 3.9 que la forme et le rayon résiduel de Gc varient en fonction du repère choisi pour le représenter. Plus précisément, il a été montré [Teichmann, 1996] que la boule résiduelle est déformée en ellipsoïde par le changement de l’origine des moments. Ensuite, comme Gc est un espace qui combine moments et forces, son rayon résiduel dépend également des unités choisies pour représenter ces grandeurs. Ces deux difficultés proviennent du fait que se(3)* n’est pas un espace euclidien. En effet, pour définir la sphère (résiduelle), on recourt à la distance euclidienne qui est définie sur R6 mais pas sur se(3)* . Cette difficulté peut être contournée de diverses manières. Premièrement, les forces et les moments peuvent être considérés séparément, ce qui ne dispense pas de choisir une origine pour les moments. Teichmann [Teichmann, 1996] a proposé de retenir, parmi toutes les familles de sphères résiduelles engendrées par un changement de repère, celle de moindre rayon. Enfin, il est possible de définir une métrique invariante à gauche sur se(3)* ; métrique qui pourra exploiter des propriétés physiques telles que la matrice d’énergie cinétique ou la géométrie de l’objet [Haschke e.a., 2005]. En définitive, le choix d’une solution particulière dépend des perturbations vis-à-vis desquelles l’on souhaite étudier la stabilité et doit par conséquent être envisagé au cas par cas. 3.6.5 GÉNÉRALISATION AU CAS D’UN MANNEQUIN VIRTUEL Dans le cadre le plus général, il convient d’envisager la perturbation comme un effort généralisé, que nous notons γp et qui s’ajoute aux efforts extérieurs exercés sur le mannequin :   o M (Q) ( ν̇ − g(Q)) + N (Q, ν)ν = + γc + γp (3.45) τ Une perturbation peut être supportée sans provoquer de décollement ni de glissement, si elle appartient à l’ensemble :   o Gp = M (Q) (N − g(Q)) + N (Q, ν)ν − − Gc (3.46) T En pratique la détermination de cet ensemble se heurte à des difficultés algorithmiques insurmontables actuellement : en effet, si l’on considère le mannequin illustré figure 3.2, il est nécessaire de réaliser des combinaisons d’ensembles dans un espace de dimension 42. Pour cette raison, il n’est pas envisageable de considérer une hypersphère de perturbation de dimension 42, comme définie dans le cas d’un solide unique. Aussi, considérant que les contraintes portant sur les actionneurs ne seront pas limitantes (c.à.d. T = Rn−nu ), on peut se contenter de considérer les seuls effets des contraintes sur les degrés de liberté non commandés, ce qui nous conduit à représenter l’ensemble dans un espace de dimension 6, comme précédemment. Cela revient à projeter Gp à l’aide de la matrice Pu = [ I6×6 06×6 ] : Pu Gp = Pu M (Q) (N − g(Q)) + Pu N (Q, ν)ν − Pu Gc (3.47) Comme cette équation l’illustre, les perturbations peuvent être encaissées par les appuis et par les effets dynamiques de l’accélération qu’elles induisent. Toutefois, des accélérations élevées sont rarement souhaitables, si bien qu’on préfére s’intéresser à l’ensemble suivant : Pu M (Q) ( ν̇ − g(Q)) + Pu N (Q, ν)ν − Pu Gc (3.48) Contrôle de l’équilibre des humains virtuels 59 où • ν̇ ∈ N est l’accélération généralisée désirée/prévue ; • le torseur Pu M (Q) ( ν̇ − g(Q)) + Pu N (Q, ν)ν est la généralisation du ZMP ; • et l’ensemble Pu Gc est la généralisation en 3 dimensions (et avec frottement) de la base de sustentation. Cet ensemble de dimension 6, est représenté figure 3.6.5 pour un mannequin assis. Les composantes de force et de moment (exercés au centre de masse du mannequin) de Pu Gc y sont séparés pour les besoins de la représentation. Figure 3.10 : Ensembles des forces et des moments (exercés au CdM du mannequin) auxquels les contacts peuvent résister et leur boule résiduelle, pour un mannequin assis. Les hypersphères ne sont pas les seuls sous-ensembles de perturbations que l’on peut considérer. Par exemple, Zhu et al. [Zhu e.a., 2003] cherchent la plus grande homothétie qui peut être appliquée à un polytope de perturbation (sans qu’il ne sorte de γc ). Ce problème peut être résolu en considérant autant de lancers de rayons que le polytope compte de sommets. Chaque lancer de rayon pouvant être formulé comme un programme linéaire (si γc est un polyèdre) ou comme un programme semi-défini (si l’appartenance à γ est décrite comme une LMI). 3.7 GÉNÉRATION DE MOUVEMENT La représentation des contraintes qui traduisent les conditions de persistance et d’adhérence des appuis peut être exploitée pour le calcul des efforts nécessaires à la génération de mouvements pour l’ensemble du mannequin (problème de dynamique inverse). Elle permet d’aborder le problème général de la coordination posture/tâche non pas seulement en respectant explicitement les contraintes aux appuis mais aussi en optimisant la qualité de l’équilibre. Les méthodes classiques de commande par fonction de tâche [Samson e.a., 1991] ou dans l’espace opérationnel [Khatib, 1980] permettent de calculer les couples re- 60 Le traité de la réalité virtuelle quis pour générer le mouvement d’un mannequin soumis à des contraintes bilatérales (telles que (3.24)). Ces méthodes ne permettent pas de prendre en compte des contraintes d’unilatéralité opérant sur les forces de contact. Pour dépasser cette difficulté, [Wieber, 2000, Barthélemy e.a., 2006, Abe e.a., 2007, Colette e.a., 2007] ont proposé de traiter le problème sous forme de programme quadratique (QP). Park [Park, 2006] a également proposé une adaptation ad hoc de la méthode de la commande dans l’espace opérationnel. Le problème peut être mis la sous la forme du QP suivant :  ν̇  τ  w c1  Trouver  .  qui minimise .. w cm T Qm ν̇ 0  τ   w     c1   0  .    ..   .. . wcm 0  0 Qa 0 0 0 .. . 0 Qc1 .. . ··· ··· ··· .. . .. . 0   T   ν̇ pm ν̇  τ   pa   τ   p   w    wc1  c1   c1   + 2   .   .    ..    ..   ..   . 0 wcm pcm wcm Qcm 0 0 .. .  (3.49) sous contraintes :  M (Q)   Jc1 (Q)  .  . . Jcm (Q) h 06×(n−6) −I(n−6)×(n−6) 0 .. . 0 i   ν̇  −JcT1 (Q) . . . −JcTm (Q) τ    0 ... 0  w  =   c1  .. ..   ..   . . . 0 ... 0 wcm   M (Q) g(Q) − N (Q, ν) ν   −J˙c1 (Q) ν    (3.50)  ..   . ˙ −Jc (Q) ν m " où A(Q, µ) " wc1 .. . wcm # 0 0 0 In×n 0 −In×n  ν̇ # τ  "  # A(Q, µ)  w  c1   0  .  ≤ τmax  ..  0 −τmin wcm  ≤  traduit l’appartenance des forces de contact aux cônes (poly- édriques) de Coulomb et où τmin , τmax bornent les efforts articulaires. Qm et pm sont choisis en fonction de la tâche à accomplir. Par exemple, pour contrôler le centre de masse et la main droite, deux fonctions de tâche sont utilisées, de jacobiennes respectives Jg et Jh . On peut alors exprimer l’accélération comme suit : 0 v̇h/0 = Jh ν̇ + J˙h ν 0 ẍg = Jg ν̇ + J˙g ν (3.51) Contrôle de l’équilibre des humains virtuels 61 des 0 et minimiser les distances à des valeurs désirées k0 v̇h/0 − 0 v̇h/0 k et k0 ẍdes g − ẍkg revient à choisir les matrices suivantes dans le QP :  Qm = JhT Jh + PhT JgT Jg Ph     des ˙ − J˙h ν − PhT JgT 0 ẍdes pm = −JhT 0 v̇h/0 g − Jg ν (3.52) (3.53) où Ph est une matrice de projection sur le noyau de Jh , ce qui permet de donner la priorité à la tâche de positionnement de la main. Pour garantir l’unicité de la solution, une troisième tâche peut être ajoutée, qui sera souvent exprimée dans l’espace articulaire et traduira la préférence pour une posture particulière, correspondant à des critères de confort et d’éloignement des butées. Les matrices Qa , pa , Qci , pci sont également choisies afin de garantir l’unicité de la solution, généralement avec pa = 0 et Qa diagonale. Figure 3.11 : Exemple de mouvement généré considérant deux tâches : le positionnement de la main droite et du centre de masse. 3.8 CONCLUSION La synthèse par la commande de la coordination motrice pour des humains virtuels est un problème complexe qui à ce jour constitue une thématique de recherche relativement ouverte. Les méthodes de quantification de l’équilibre postural avancées ici restent à approfondir notamment en les confrontant à des observations chez l’homme. Les techniques de commande proposées restent limitées à des comportements « locaux »étant donné qu’elles opèrent sur le modèle dynamique linéarisé. Bien d’autres aspects restent à traiter pour être en mesure de générer les mouvements en exploitant par exemple des techniques de commande prédictive, de planication de mouvement par échantillonnage aléatoire voire encore l’enchaînement dynamique de tâches dans des environnement contraints. 62 Le traité de la réalité virtuelle 3.9 NOTATIONS ET MÉCANIQUE DU SOLIDE Soient un vecteur x libre et un point p de l’espace euclidien de dimension 3, nous noterons respectivement 1 x ∈ R3 et 1 p ∈ R3 leurs coordonnées exprimées dans le repère 1. Soit SO(3) le groupe de rotation ou groupe orthogonal spécial de dimension 3, nous noterons 1R2 ∈ SO(3) la matrice rotation de la base du repère 2 vers la base du repère 1, de sorte que 1 x = 1R2 2 x (3.54) Soit SE(3) le groupe spécial euclidien de dimension 3. Nous noterons 1 H2 ∈ SE(3) la matrice homogène de transformation du repère 2 au repère 1, qui s’écrit sous la forme : 1 H2 = 1 R2 1 000 r2 1  (3.55) de sorte que :     2 p p 1 = H2 1 1  1    2 x x 1 = H2 0 0 1 (3.56) Soit se(3) l’algèbre de Lie associée à SE(3). Nous noterons 3 v1/2 = [ ωx ωy ωz vx vy vz T ] ∈ se(3) les coordonnées Plückeriennes du torseur cinématique du repère 1 par rapport au repère 2, exprimées dans le repère 3. On peut rappeler les relations de transport et de composition des vitesses : 4 v2/1 = 4Ad3 3 v2/1  où Ad2 = 1 4 v3/1 = 4 v3/2 + 4 v2/1 1    R2 03×3 est l’adjointe de la matrice 1 H2 et 1 x× est la r2 × 1R2 1R2 matrice du préproduit vectoriel par x. 1 Les éléments de se(3)* , l’ensemble dual de se(3) représentent les torseurs d’efforts, dont nous noterons 3 w = [ mx my mz f x f y f z T ] ∈ se(3)* les coordonnées Plückeriennes exprimées dans le repère 3. La puissance développée par l’effort est alors données par le produit interne 3 wT 3 v et la relation de transport d’un effort est : 4 w = 3AdT4 3 w Contrôle de l’équilibre des humains virtuels 3.10 63 RÉFÉRENCES BIBLIOGRAPHIQUES [Abe e.a., 2007] Y. Abe, M. da Silva, and J. Popovic. Multiobjective Control with Frictional Contacts. In Symposium on Computer Animation (SCA) (2007). [Baraff, 1995] D. Baraff. Interactive simulation of solid rigid bodies. IEEE Computer Graphics and Applications, 15(3) :63–75 (1995). [Barthélemy e.a., 2006] S. Barthélemy, C. Salaün, and P. Bidaud. Dynamic Simulation and Control of Sit-to-Stand Motion. In Proceedings of the 9th International Conference on Climbing and Walking Robots (CLAWAR 2006) (2006), Brussel. [Besseron, 2008] G. Besseron (2008). Contrôle de la stabilité dynamique des systèmes locomoteurs hybrides roue-patte en terrain accidenté. PhD thesis, Université Pierre et Marie Curie (Paris 6), Paris, France. [Bicchi, 1995] A. Bicchi. On the Closure Properties of Robotic Grasping. The International Journal of Robotics Research, 14(4) :319–334 (1995). [Colette e.a., 2007] C. Colette, A. Micaelli, C. Andriot, and P. Lemerle. Dynamic Balance Control of Humanoids for Multiple Grasps and non Coplanar Frictional Contacts. In Humanoids’07 (2007). [de Leva, 1996] P. de Leva. Adjustments to zatsiorsky-seluyanov’s segment inertia parameters. J. Biomech., 29(9) :1223–1230 (1996). [Goswami, 1999] A. Goswami. Foot rotation indicator (fri) point : a new gait planning tool to evaluate postural stability of biped robots. In IEEE International Conference on Robotics and Automation, volume 1 (1999), pages 47– 52. [Haschke e.a., 2005] R. Haschke, J. Steil, I. Steuwer, and H. Ritter. Task Oriented Quality Measures for Dextrous Grasping. In icra (2005), pages 689–694. [Hirukawa e.a., 2006] H. Hirukawa, H. Shizuko, K. Harada, S. Kajita, K. Kaneko, F. kanehiro, K. Fujiwara, and M. Morisawa. A universal stability criterion of the foot contact of legged robots - adios zmp. In Ieee international conference on robotics and automation (2006), pages 1976–1983. [Howard e.a., 1996] W. S. Howard and V. Kumar. On the stability of grasped objects. IEEE Transactions on Robotics and Automation, 12(6) :904–917 (1996). [Hue, 2008] V. Hue (2008). Simulation de mouvements humains sur poste de travail pour le diagnostic et l’aide à la conception. PhD thesis, Université de Toulouse. [ISO/IEC FCD 19774 :200x, ] ISO/IEC FCD 19774 :200x. Information technology – Computer graphics and image processing – Humanoid animation (H-Anim). ISO, Geneva, Switzerland. [Kajita e.a., 2003] S. Kajita, F. Kanehiro, K. Kaneko, K. Fujiwara, K. Harada, K. Yokoi, and H. Hirukawa. Biped walking pattern generation by using preview control of zero-moment point. In Robotics and Automation, 2003. Proceedings. ICRA ’03. IEEE International Conference on, volume 2 (2003), pages 1620–1626. [Khatib, 1980] O. Khatib (1980). Commande Dynamique dans l’espace opérationnel des robots manipulateurs en présence d’obstacles. PhD thesis, École Nationale Supérieure de l’aéronautique et de l’espace. [Kirkpatrick e.a., 1992] D. Kirkpatrick, B. Mishra, and C.-K. Yap. Quantitative Steinitz’s theorems with applications to multifingered grasping. Discrete and Computational Geometry, 7(1) :295–318 (1992). [Kozlowski e.a., 2006] K. Kozlowski and P. Herman. A survey of equations of motion in terms of inertial quasi-velocities for serial manipulators. Archive of Applied Mechanics, 76 :579–614(36) (December 2006). 64 [Park, 2006] Le traité de la réalité virtuelle J. Park (2006). Control strategies for robots in contact. PhD thesis, Stanford University. [Popovic e.a., 2005] M. B. Popovic, A. Goswami, and H. Herr. Ground Reference Points in Legged Locomotion : Definitions, Biological Trajectories and Control Implications. International Journal of Robotics Research, 24(12) :1013–1032 (2005). [Reuleaux, 1875] F. Reuleaux. Kinematics of Machinery. Initialement publié en Allemand, Ré-édité en 1963 par Dover (1875). [Rimon e.a., 1993] E. Rimon and J. Burdick. Towards planning with force constraints : on the mobility of bodiesin contact. In Robotics and Automation, 1993. Proceedings., 1993 IEEE International Conference on (1993), pages 994–1000, Atlanta, GA, USA. [Samson e.a., 1991] C. Samson, B. Espiau, and M. L. Borgne. Robot Control : The Task Function Approach. Oxford University Press (1991). [Teichmann, 1996] M. Teichmann. A Grasp Metric Invariant under Rigid Motions. In International Conference on Robotics and Automation (1996), pages 2143–2148. [Trinkle e.a., 1994] J. C. Trinkle, A. O. Farahat, and P. F. Stiller. Second-order stability cells of a frictionless rigid body graspedby rigid fingers. In Robotics and Automation, 1994. Proceedings., 1994 IEEE International Conference on (1994), pages 2815–2821, San Diego, CA, USA. [Trinkle e.a., 2001] J. C. Trinkle, J. A. Tzitzouris, and J. S. Pang. Dynamic multirigid-body systems with concurrent distributed contacts. Philosophical Transactions : Mathematical, Physical and Engineering Sciences, 359(1789) :2575–2593 (2001). [Vukobratovic e.a., 1972] M. Vukobratovic and J. Stepanenko. On the stability of anthropomorphic systems. Mathematical Biosciences, 15(1-2) :1–37 (1972). [Wieber, 2000] P. B. Wieber (2000). Modélisation et commande d’un robot marcheur anthropomorphe. Phd thesis, École des Mines de Paris. [Zhu e.a., 2003] X. Zhu, H. Ding, and J. Wang. Grasp analysis and synthesis based on a new quantitative measure. IEEE Transactions on Robotics and Automation, 19(6) :942–953 (2003).