Correction du TD n°2 : MGI par la méthode de Paul, singularités#
On étudie le robot 6 axes RX90 de marque Stäubli donné en Fig. 36} :

Fig. 36 Robot STAUBLI RX90#
L’objectif du TD est de calculer l’ensemble des solutions au Modèle Géométrique Inverse (MGI) pour ce type de robot en utilisant la méthode de Paul. L’analyse de la résolution et des équations mises en jeu permet de déterminer les singularités du robot.
Analyse du paramétrage#
Le schéma cinématique du robot ainsi que le paramétrage selon la convention de Denavit et Hartenberg modifiée sont donnés en annexe.
Question 1.1 : Reporter sur le schéma cinématique les différents points caractéristiques, constantes géométriques, et paramètres articulaires.
Question 1.2 : Rappeler quelle est la particularité de cette structure permettant de découpler le problème de résolution du MGI en deux sous problèmes :
le problème en position;
le problème en orientation.
Solution
Le centre du poignet est l’intersection des axes de rotation concourants des 3 dernières liaisons pivots.
Dans cet exercice on cherche à établir le MGI. Par conséquent, on suppose la position et l’orientation de l’effecteur connues ! \(\mathcal{R}_6 = (O_6, \overrightarrow{x_6}, \overrightarrow{y_6}, \overrightarrow{z_6})\) connu ! Les paramètres du modèle de DHm sont aussi connus. Les seuls inconnus à déterminer dans cet exercice sont les paramètres articulaires.
Découpage du problème :
Connaissant \(\overrightarrow{z_6}\) et \(r_6 = cste\) on peut déterminer aisément la position du centre poignet (rotule équivalente) \(O_4 = O_5\). Les paramètres articulaires \(\theta_4\), \(\theta_5\) et \(\theta_6\) n’influent pas sur la position de \(O_4\) d’où : Le problème de position est fonction uniquement de \(\theta_1\), \(\theta_2\) et \(\theta_3\)
Une fois ce problème traité, \(\theta_1\), \(\theta_2\) et \(\theta_3\) sont connus. Le problème d’orientation nous permet d’obtenir les paramètres articulaires \(\theta_4\), \(\theta_5\) et \(\theta_6\).
Résolution du Modèle géométrique Inverse#
Dans cette partie, il s’agit de mettre en oeuvre la méthode de résolution dite « de Paul » pour résoudre le MGI en deux temps.
Question 2.1 : Exprimer l’équation en position : expression de l’origine de \(O_4\) dans le référentiel de base \(\mathcal{R}_0\) en fonction des matrices de transformation homogènes mises en jeu. De quels paramètres articulaires dépend la position du point \(O_4\) ?
Solution
Expression de \(O_4\) dans le référentiel de base \(\mathcal{R}_{0}\) : \( ^0 P_4 = \mathbf{T}_{04}\ ^4P_4\). Dans la suite on notera : \(^0P_4 = (P_x, P_y, P_z)\).
La position du point \(O_4\) dépend donc des seuls paramètres articulaires \(\theta_1\), \(\theta_2\) et \(\theta_3\).
Question 2.2 : Déterminer par la méthode de Paul l’ensemble des solutions articulaires obtenues par l’équation en position.
Solution
On aura besoin des matrices inverses \(\mathbf{T}_{10}\) et \(\mathbf{T}_{21}\)
Rappel de cours :
Résolution en utilisant la méthode de Paul :
1 - Première étape :
La seconde équation du système dépend uniquement de \(\theta_1\). Cette équation correspond à une équation de type 2 (cf. poly de cours) avec \(X = -P_x\), \(Y = P_y\) et \(Z = 0\) \
Cette équation admet deux solutions (cf. démonstration en annexes).
2 - Deuxième étape :
La variable articulaire \(\theta_1\) est maintenant connue.
Les deux premières équations du système précédent permettent d’isoler \(\theta_2\). Pour cela, il suffit de déplacer \(d_3\) de l’autre côté de l’équation puis de faire la somme des deux équations au carré.
Pour simplifier les notations, on pose : \(c_1 = P_x \text{C}\theta_1 + P_y \text{S}\theta_1\) et \(c_2 = P_z - r_1\)
Cette équation correspond à une équation de type 2 (cf. poly de cours) avec \(X = - 2 d_3 c_2\), \(Y = - 2 d_3 c_1\) et \(Z = r_4^2 - c_1^2 - c_2^2 - d_3^2\)
Cette équation admet deux solutions (cf. démonstration en annexes).
3 - Troisième étape :
La variable articulaire \(\theta_2\) est maintenant connue. On peut en déduire \(\theta_3\). Pour cela on utilise les équations du système de l’étape 2.
Question 2.3 : Exprimer l’équation en orientation : expression de la base orientant l’effecteur dans le référentiel de base \(\mathcal{B}_0\) en fonction des matrices de rotation (changement de bases) mises en jeu. Une fois le problème en position résolu, de quels paramètres articulaires dépend l’orientation de l’effecteur ?
Solution
Expression de la base effecteur dans la base 0
On isole tous les termes connus en multipliant à gauche de chaque côté de l’équation par l’inverse de la matrice de rotation entre 0 et 3 : \(\mathbf{R}_{30}\).
Pour simplifier l’écriture, on renomme le terme de gauche :
Maintenant que \(\theta_1\), \(\theta_2\), et \(\theta_3\) on cherche \(\theta_4\), \(\theta_5\), et \(\theta_6\) afin de répondre au problème en orientation.
Question 2.4 : Déterminer par la méthode de Paul l’ensemble des solutions articulaires obtenues par l’équation en orientation.
Solution
On procède de la même manière, mais sur l’équation en orientation.
Cette équation matricielle nous donne 9 équations scalaires.
1 - L’équation \((2,3)\) permet de déterminer \(\theta_4\). effectivement il s’agit d’une équation de type 2 (cf. cours et démonstration).
Cette équation admet deux solutions (cf. démonstration en annexes).
2 - Les équations \((1,3)\) et \((3,3)\) permettent de déterminer \(\theta_5\).
La solution est la suivante :
3 - Les équations \((2,1)\) et \((2,2)\) permettent de déterminer \(\theta_6\).
La solution est la suivante :
Synthèse#
Question 3.1 : Faire le bilan sur le nombre de solutions articulaires correspondant à un positionnement du repère effecteur.
Solution
Synthèse du nombre de solutions articulaires pour une configuration de l’effecteur dans l’espace des tâches :

Question 3.2 : Importer le robot dans l’application « RoboDK », puis, sur quelques configurations, étudier les solutions (notamment leur nombre) au MGI.
Solution
Étant donné la course des paramètres articulaires, il existe dans certains cas, plus de 8 configurations articulaires permettant d’obtenir une position et une orientation de l’effecteur donnée. Si par contre on limite les courses articulaires à un seul et unique tour \((360 \deg)\), alors seules 8 configurations articulaires ou moins sont possibles (sauf au niveau des singularités).
Question 3.3 : À partir des équations obtenues en partie 2, déterminer et illustrer les singularités géométriques de ce robot.
Solution
Singularité : Une infinité de solutions dans l’espace articulaire donne la même configuration dans l’espace des tâches.
Pour le calcul de \(\theta_1\) : si \(P_x = P_y = 0\) cela implique que \(\theta_1\) est indéterminé (singularité au niveau de l’épaule)
Pour le calcul de \(\theta_4\) : si \(H_x = H_z = 0\) cela implique que \(\theta_4\) est indéterminé (singularité au niveau du poignet)
Singularité au niveau du coude : déplacement possible uniquement dans une direction.
Annexes#

Fig. 37 Schéma cinématique#
\(d_i\) |
\(\alpha_i\) |
\(r_i\) |
\(\theta_i\) |
|
---|---|---|---|---|
\(\mathbf{T}_{01}\) |
0 |
0 |
\(r_1\) |
\(\theta_1\) |
\(\mathbf{T}_{12}\) |
0 |
\(90^{\circ}\) |
0 |
\(\theta_2\) |
\(\mathbf{T}_{23}\) |
\(d_3\) |
0 |
0 |
\(\theta_3\) |
\(\mathbf{T}_{34}\) |
0 |
\(-90^{\circ}\) |
\(r_4\) |
\(\theta_4\) |
\(\mathbf{T}_{45}\) |
0 |
\(90^{\circ}\) |
0 |
\(\theta_5\) |
\(\mathbf{T}_{56}\) |
0 |
\(-90^{\circ}\) |
\(r_6\) |
\(\theta_6\) |
Matrices homogènes élémentaires de transformations entre repères :#

Fig. 38 Positions singulières#
Solution
Solutions de l’équation de type 2 :
Solution :
Dans le cas où \(X \ne 0\) et \(Y \ne 0\) et \(Z \ne 0\), l’équation est résolue en élevant l’expression au carré : en remplaçant les termes en sinus par les fonctions équivalentes en cosinus, on aboutit à une équation du second degré à résoudre donnant la valeur du cosinus. Un raisonnement analogue est mené pour déterminer le terme en sinus :
Dans ce cas, la résolution de l’équation donne deux solutions, correspondant aux valeurs de \(\varepsilon\).