P =
| x |
| y |
| z |
La matrice de rotation comme telle sera notée R. Il s’agit simplement d’utiliser la même notation que le livre qui sert de source à cet article, de façon à éviter toute confusion dans les nombreuses multiplications de matrices qui vont survenir. Bref, comme j’allais l’expliquer,
R * P = P’.
Les trois matrices de rotation de base dépendent de l’axe autour duquel s’effectue la rotation. S’il s’agit d’une rotation autour de l’axe des x,


Finalement, si la rotation s’effectue autour de l’axe des z,

Bien entendu, ces matrices ne sont pas descendues du ciel comme par magie ; il est absolument possible de démontrer leur provenance, et ce à l’aide de concepts tels que le produit scalaire et le produit vectoriel. Mais il se trouve que cette démonstration est du genre à être plutôt longue et, à moins d’une demande particulière des lecteurs et lectrices de ce blogue, elle ne sera pas affichée ici.
Pour revenir à nos matrices, la beauté dans tout ça, c’est qu’elles peuvent être multipliées pour arriver à la rotation finale voulue. Bien entendu, le résultat final R = Rx * Ry * Rz ne sera pas reproduit ici, mais vous pouvez quand même vous l’imaginer. On notera au passage que la rotation n’est pas une opération commutative : l’ordre dans lequel sont effectuées les rotations peut mener à un résultat final différent, et il peut donc exister plusieurs « chemins de rotation » pour passer d’un point P à un point P’ final. Pour ceux qui se demandent ce qu’il faut faire lorsque la rotation s’effectue selon un système d’axes différent de celui de l’origine, soyez sans crainte : il suffit d’exprimer notre point selon les coordonnées du nouveau système d’axes, d’effectuer la rotation voulue sur les « nouvelles » coordonnées du point, et de traduire le résultat dans les coordonnées du système d’origine. Mais passons tout de suite à la seconde moitié du titre de cet article.
Pour appliquer une matrice de transformation à un point, il faut exprimer ce point sous la forme verticale, avec une coordonnée ajoutée, correspondant au facteur d’échelle pour ce point. Dans les cas qui vont nous intéresser, ce facteur gardera une valeur de 1.
Par exemple, si on veut affecter au point P(0,2,3) une rotation de 30 degrés autour de l’axe des z ainsi qu’une translation de 5 unités en x et de 5 unités en y, l’opération résultante aura cette forme :

Les coordonnées de P’ sont donc (4, 6.73, 3).
Les informations pour cet article ont été prises dans TSAI, Lung-Wen, ROBOT ANALYSIS : The Mechanics of Serial and Parallel Manipulators, John Wiley and Sons Inc., États-Unis, 1999, 505 p. Sachez que cet article aura très probablement une suite, où seront appliquées les méthodes matricielles à l’analyse de position des manipulateurs sériels.
Aucun commentaire:
Enregistrer un commentaire