Passage entre quaternions et matrice des cosinus directeurs Transition from Quaternions to Direction Cosine Matrices
2.1.6 Matrices homogènes 3D Homogenous Matrices in 3D (12) Une rotation autour d'un axe ne passant pas par l'origine se compose de la même façon que dans le cas 2D: A rotation around an axis NOT through the origin is done as in 2D: (13) avec le vecteur p de l'origine O à un point quelconque sur l'axe de rotation with vector p from origin O to any point on the rotation axis.
Rappel: Mouvement général 3D: Vis (screw, Schraube) Recall from earlier lecture: The most general motion in 3D is a screw Différence avec le cas 2D: Le mouvement général en 3D est équivalent à une rotation autour d'un axe plus une translation en direction de cet axe. A screw is a rotation around an axis plus a translation along this axis. Exercice 8b: Trouver matrice de transformation menant les points A=[1 0 0]T , B=[0 0 0]T et C=[0 1 0]T vers A'=[1 0 1]T , B'=[1 –1 1]T et C’=[0 –1 1]T Axe, l'angle de rotation, la translation en direction de l'axe?
2.1.7 Variables robot – Joint Variables Tout robot est controlé par des consignes angulaires ou linéaires envoyées aux actionneurs (moteurs). A robot is controlled by sending desired joint variables to the actuators. The number of joint variables is the number of degrees of freedom of the robot. Symbols qi or qi are used for these variables. Ces angles ou positions sont les variables robots. Leur nombre n est le nombre de ddl du robot. (joint variables) Nous utilisons { q1, q2, … qi, …. qn } ou { q1, q2, … qi, …. qn }.
Variables opérationnelles – Operational (Task-specific) variables La tâche du robot se décrit dans d’autres termes: Position et orientation de l’outil, de l’objet à manipuler. Pour un corps rigide, il sera nécessaire de spécifier six paramètres indépendants, correspondants aux six ddl d’un solide dans l’espace. {x,y,z, Q} ou {x,y,z, a, b, g} The robot task is described in other variables, task specific: The position and orientation of the object to be handled, i.e. the six independant values {x,y,z, Q} or {x,y,z, a, b, g}
Modèle Géométrique Direct MGD Forward Kinematics Le MGD donne les coordonnées opérationelles en fonction des variables articulaires Forward kinematics is the mathematical expression of the task variables as function of the joint variables. {x,y,z, Q} = F (q1, q2, … qi, …. qn )
q4 y q2 L2 L1 q1 x Exemple: MGD du SCARA Fig.8 Définition des variables articulaires qi 1st step: Definition of the joint variables définir les positions de référence qi = 0 2nd step Definition of reference position (of the zero) définir les paramètres du robot Li 3rd step Definition of the robot parameters
qi = 0 y L1 L2 x x = … ? y = … ? z = q3 j = q1 + q2 + q4 Position de référence qi = 0 y L1 L2 x Le MGD donne orientation et position de la main x = … ? y = … ? z = q3 j = q1 + q2 + q4 q1 q2 q4 L1 L2 y x The forward kinematics will give position & orientation of the hand
x = L1 cos q1 + L2cos(q1 + q2 ) = L1 c1 + L2c12 Position du centre de la main (tool center point TCP) & orientation de la main TCP y q2 L2 L1 q1 x x = L1 cos q1 + L2cos(q1 + q2 ) = L1 c1 + L2c12 y = L1 sin q1 + L2sin(q1 + q2 ) = L1 s1 + L2s12 z = q3 j = q1 + q2 + q4
Position & orientation d’un outil TCP y L4 q2 q1 x x = L1 c1 + L2c12 + L4c124 y = L1 s1 + L2s12 + L4s124 z = q3 j = q1 + q2 + q4 Position & orientation of a tool
La même démarche pour un robot à 6 ddl devient MGD d’un robot à 6 ddl? La même démarche pour un robot à 6 ddl devient très difficile => utiliser les matrices homogènes! For a 6 d.o.f. robot, the same task becomes very hard by hand. It becomes straight forward with the use of homogenous matrices. Exercice 9 !
Ex. 9b Rot. de q4 de autour de [ L1 + L2 , 0 ]T Rot. de q2 de autour de [ L1 , 0 ]T Rot. de q1 de autour de [ 0 , 0 ]T 1.)
et L1 2 = L1 + L2 avec les définitions versine(q) = 1– cosq Ex. 9b 1 Rot. de q4 de autour de [ L1 + L2 , 0 ]T avec les définitions versine(q) = 1– cosq donc v4 = 1– cos q4 et L1 2 = L1 + L2
Ex. 9b MGD complet: =
Ex. 9b MGD complet: =