Cinématique inverse
La cinématique inverse (souvent abrégée IK, de l'anglais inverse kinematics) désigne l'ensemble des méthodes de calcul des positions et rotations d'un modèle articulaire afin d'obtenir une pose désirée. Les méthodes de cinématique inverse sont principalement utilisées en infographie, en robotique, en animation ou encore en chimie. Le terme cinématique inverse renvoie au fait que la résolution des calculs est généralement basée sur les équations cinématiques du modèle articulaire.
Utilisations
modifierEn animation, la cinématique inverse permet par exemple, pour un modèle humain, de déterminer la torsion des poignets, des coudes, des doigts, etc. (en un mot, de toutes les articulations du bras) afin d'atteindre un objet du bout de l'index. Plutôt que de spécifier à la main un ensemble de coordonnées articulaires, l'animateur peut ainsi formuler un mouvement à partir de ses composants significatifs : trajectoires des mains ou des pieds, orientation du bassin, etc.
La cinématique inverse est également un outil de calcul fondamental en robotique, elle permet de déterminer les commandes envoyées aux moteurs du robot en fonction d'objectifs fixés (par exemple la position du centre de masse). Le robot industriel de la figure ci-contre donne un exemple d'application. La commande des robots humanoïdes passe également par la cinématique inverse et le contrôle de points géométriques comme le centre de masse et le ZMP[1].
En chimie, et principalement dans l'étude des protéines, on cherche la forme géométrique la plus probable des molécules. C'est d'une importance capitale en médecine, puisque la forme des protéines influence leurs propriétés, et peut permettre l'étude de nouveaux médicaments exploitant cette géométrie. Certains logiciels de calcul partagé exploitent ces algorithmes dans ce but.
Principes
modifier![](http://upload.wikimedia.org/wikipedia/commons/thumb/2/2c/Modele_cinematique_corps_humain.svg/220px-Modele_cinematique_corps_humain.svg.png)
Les principes de la cinématique inverse sont les suivants :
- les membres sont des solides indéformables, de longueur donnée, reliés entre eux par des articulations ;
- les articulations supportent une certaine torsion maximale, qui varie selon la direction ou la vitesse ;
- les mouvements sont supposés suffisamment réguliers pour paraître naturels.
Mathématiquement, on obtient une équation dépendant de plusieurs variables. Dans l'exemple du bras humain touchant un objet de l'index, les paramètres seraient les différents angles formés par les articulations, et l'équation donnerait la distance entre l'index et l'objet à atteindre. On cherche à minimiser cette fonction pour qu'il y ait contact entre l'index et l'objet. Dans la majorité des cas, les solutions analytiques ont des formules trop complexes pour être calculées à la main[2]. On utilise alors généralement des techniques d'optimisation non linéaire ou l'algorithme de Levenberg-Marquardt. On peut éventuellement distinguer entre différentes positions possibles en affectant un « poids » plus important aux poses plus éloignées de celle qui est tenue - qualitativement, on effectue le moins de mouvements possibles.
Redondance
modifierUn problème de cinématique inverse est redondant dès lors que le nombre de degrés de contraintes c de l'objectif est inférieur au nombre de degrés de liberté f du manipulateur[3]. Par exemple, pour la tâche cinématique "maintenir son index à une position et orientation fixée", le bras humain est redondant : il est toujours possible de bouger le coude tout en maintenant son index à une position fixe dans l'espace. Cela traduit le fait que la tâche en question a six degrés de contrainte (trois pour la position fixe, trois autres pour l'orientation fixe de l'index) tandis que le bras humain a, dans le modèle de la figure ci-contre, sept degrés de liberté : trois au niveau de l'épaule (liaison sphérique), un au niveau du coude et trois au niveau du poignet.
Voir aussi
modifierArticles connexes
modifier- Chaîne cinématique (robotique) (modèles articulaires)
- Infographie ;
- Algorithme de Levenberg-Marquardt ;
- Pseudo-inverse ;
- Jacobien.
Liens externes
modifier- (en) HowStuffWorks.com Article Comment font les personnages de jeu pour bouger avec fluidité ? ;
- (en) Théorie de la cinématique inverse en 3D ;
- (en) Cinématique inverse appliquée aux protéines ;
- (en) Exemple simple de cinématique inverse utilisant le Jacobien.
- (en) IKFast, un compilateur de formules analytiques pour la cinématique inverse.
Notes et références
modifier- Shuuji Kajita, Hirohisa Hirukawa, Kensuke Harada, Kazuhito Yokoi. Introduction à la commande des robots humanoïdes - De la modélisation à la génération du mouvement. Springer. Springer, p. 200, 2009. <hal-00352801>
- Dans certains cas, comme les bras robotisés, il existe des compilateurs cinématiques qui automatisent le calcul de ces formules. Voir par exemple : Diankov, Rosen. Automated construction of robotic manipulation programs. Diss. University of Tokyo, 2010.
- Nakamura, Yoshihiko. Advanced robotics: redundancy and optimization. Addison-Wesley Longman Publishing Co., Inc., 1990.