Correction de l’examen de Système Poly-Articulés - 2023/2024#
On s’intéresse au robot spot produit par la société Boston Dynamics. Ce robot est composé de quatre jambes comprenant chacune 3 articulations. Le robot peut également être complété par un bras articulé au bout duquel se trouve une pince. Spot est un robot mobile agile qui navigue sur le terrain avec une mobilité sans précédent. Il permet ainsi d’automatiser des tâches d’inspection de routine et la capture de données de manière sûre, précise et fréquente.
Une description des composants du robot et de la pince sont donnés en annexe.

Fig. 86 Robot Spot + bras articulé#
Étude d’une jambe : modèle géométrique direct#
Le robot est composé de 4 jambes identiques. Ces 4 jambes sont reliées au corps du robot et sont chacune composées d’une hanche (hip), d’une jambe supérieure et d’une jambe inférieure (cf. Fig. 91). Les jambes ainsi que leurs composants sont désignés par leurs positions sur le robot « \(fl\) » pour front left « \(bl\) » pour back left et idem pour « \(fr\) » et « \(br\) ». Ces dénominations seront utilisées dans le paramétrage du robot. La distance entre les centres des articulations de la hanche (rouge) est nommée \(h_1\), la distance entre les articulations de la jambe supérieure (bleu) est notée \(h_2\) et la distance entre l’articulation et le pied (vert) est notée \(h_3\). La position du point \(O_{fl}\) dans le repère (\(O_{0}, \overrightarrow{x_0}, \overrightarrow{y_0}, \overrightarrow{z_0}\)) est notée (\(a_{fl}, b_{fl}, c_{fl}\)). Les pieds sont considérés comme des portions de sphère et leurs centres sont désignés par les points \(F_{fl}\), \(F_{bl}\) …

Fig. 87 Spot : schéma cinématique partiel#
Question 1.1 : Construire sur le document réponse le paramétrage au sens de Denavit Hartenberg modifié (DHm) en partant du point \(O_{fl}\). On considèrera le repère de base de la jambe comme étant (\(O_{fl}, \overrightarrow{x_0}, \overrightarrow{y_0}, \overrightarrow{z_0}\)).

Fig. 88 Spot : schéma cinématique jambe avant gauche.#
À titre indicatif : dans la Fig. 88 le trait en pointillé passant par \(O_{fl}\) est parallèle au vecteur \(\overrightarrow{x_0}\).
Question 1.2 : Synthétiser les résultats dans le tableau DHm associé. Dessiner également les figures de changement de repère en représentant les différents paramètres articulaires comme étant positif.
Solution
Tableau de paramètres DHm pour le robot
\(d_i\) |
\(\alpha_i\) |
\(r_i\) |
\(\theta_i\) |
|
---|---|---|---|---|
\(\mathbf{T}_{01}\) |
0 |
\(-90^{\circ}\) |
0 |
\(\theta_1\) |
\(\mathbf{T}_{12}\) |
0 |
\(90^{\circ}\) |
\(h_1\) |
\(\theta_2\) |
\(\mathbf{T}_{23}\) |
\(h_2\) |
0 |
0 |
\(\theta_3\) |

Question 1.3 : Déterminer les matrices homogènes de transformation \(T_{ij}\) entre les différents corps.
Solution
Matrices homogènes élémentaires de transformations entre repères :
Question 1.4 : En déduire l’expression du modèle géométrique direct (MGD) permettant d’exprimer la position du pied avant gauche (\(x_{fl},y_{fl},z_{fl}\)) dans le repère du robot (\(O_{fl}, \overrightarrow{x_0}, \overrightarrow{y_0}, \overrightarrow{z_0}\)). Rappeler quels sont les paramètres de l’espace des tâches et les paramètres de l’espace articulaire.
Solution
Question 1.5 : Déterminer par le calcul les singularités de cette structure. Expliquer les solutions trouvées par des croquis pour expliquer le sens physique.
Solution
Pour déterminer les singularités on calcul la jacobienne du MGD :
On calcul ensuite le déterminant de cette matrice. Après simplification, on trouve :
Les singularité correspondent au solution de l’équation \(det(J) = 0\). On trouve ici facilement \(\theta_3 = 0\, [\pi]\).
Cette solution correspond au moment ou la jambe est soit tendu \(\theta_3 = 0\) soit la jambe est entièrement replié \(\theta_3 = 180 deg\). Les deux solutions ne sont pas atteignable physiquement si l’on regarde les limitations articulaires données dans l’annexe.
Étude d’une jambe : modèle géométrique inverse#
Question 2.1 : En vous aidant de l’annexe 5.2, déterminer le modèle géométrique inverse en position uniquement permettant de relier les valeurs de \(\theta_i\) aux valeurs (\(x_{fl},y_{fl},z_{fl}\)).
Solution
On aura besoin des matrices inverses \(\mathbf{T}_{10}\) et \(\mathbf{T}_{21}\)
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. annexe) avec \(X = -x_{fl}\), \(Y = -z_{fl}y\) et \(Z = -h_1\) Cette équation admet deux solutions avec \(\varepsilon = \pm 1\) (cf. annexe)
2 - Deuxième étape :
La variable articulaire \(\theta_1\) est maintenant connue. Pour simplifier les notations on pose donc : \(a = x_{fl}\text{C}\theta_1 - z_{fl}\text{S}\theta_1 \) et \(b = - x_{fl}\text{S}\theta_1 - z_{fl}\text{C}\theta_1\)
Les équations (1) et (2) du système correspondent à des équations de type 6 . La méthode de résolution est donnée en annexe et permet dans un premier temps de déterminer \(\theta_2\) par un e équation de type 2 qui admet 2 solutions et dans un second temps de déterminer \(\theta_3\) par un système d’équation de type 3 (cf. annexe) qui lui admet une unique solution.
Question 2.2 : Donner le nombre de configurations articulaires possibles pour une même position de l’effecteur (pied) sans tenir compte des limites articulaires. N’hésitez pas à expliquer votre raisonnement par des figures si nécessaire.
Solution
La question précédente permet de dire qu’il existe 2 solutions pour \(\theta_1\), 2 solutions pour \(\theta_2\) et 1 solution pour \(\theta_3\). Ainsi il existe 4 configurations articulaires possible pour une même position du pied. Les figures suivantes illustre ces 4 configurations :

Question 2.3 : Les limites de chaque articulation sont données par le constructeur en annexe 5.1. En vous appuyant sur ces données, déterminez les relations entre les paramètres articulaires constructeurs et vos paramètres articulaires.
Solution
Sur le paramétrage actuel on a :
Le plus simple pour cela est de calculer les limites articulaires au niveau de \(\theta_1\), \(\theta_2\), \(\theta_3\) et de vérifier quel corresponde bien à la description donné dans l’annexe.
Question 2.4 : En tenant compte des limites articulaires, donner le nombre de configurations articulaires possibles pour une même position de l’effecteur (pied) (\(x_{fl},y_{fl},z_{fl}\)) dans le repère du robot (\(O_{fl}, \overrightarrow{x_0}, \overrightarrow{y_0}, \overrightarrow{z_0}\)).
Solution
En tenant compte des limites articulaire il reste une seul solution articulaire possible. Effectivement la limitation sur \(\theta_3\) supprime tout de suite les deux solutions ou le genou est devant la droite entre le pied et l’articulation 2. La dernière configuration articulaire est supprimer par la limitation articulaire sur \(\theta_1\) qui n’autorise pas le renversement de l’articulation (cf. corrigé question 2.2).
Le système est donc prévue pour ne pas avoir accès à ces zones de singularités et avoir une seule configuration articulaire possible, cela facilite énormément la commande des pieds.
Étude préliminaire du système complet#
On s’intéresse maintenant au robot en considérant les pieds comme fixes. On souhaite orienter et positionner le corps du robot (\(O_{0}, \overrightarrow{x_0}, \overrightarrow{y_0}, \overrightarrow{z_0}\)) par rapport a un repère \(\mathcal{R}_f\) fixe liée au sol (\(O_{f}, \overrightarrow{x_f}, \overrightarrow{y_f}, \overrightarrow{z_f}\)). Les positions des 4 points F dans le repère \(\mathcal{R}_f\) sont connues. On considère que le MGI et le MGD des jambes sont connus.
Question 3.1 : Donner les paramètres de l’espace des taches et les paramètres de l’espace articulaire puis décrire de manière détaillée sans faire de calcul la méthode permettant d’obtenir le MGI du système entier (sans prendre en compte le bras articulé et la pince).
Solution
Les paramètres de l’espace des taches corresponde à la position et l’orientation du repère \(\mathcal{R}_0\) par rapport au repère \(\mathcal{R}_f\). Il sont donc au nombre de 6 (3 translations et 3 rotations). Les paramètres articulaires sont au nombre de 12. Il s’agit des \(4\times 3\) articulations des jambes.
Pour obtenir le MGI du système il est nécessaire dans un premier temps de calculer dans le repère \(\mathcal{R}_f\) les coordonnées des 4 points \(O_{fl}\), \(O_{fb}\). Cette étape est facile etant donnée que l’on connait la position des différents point dans le repère \(\mathcal{R}_0\) ainsi que la position et l’orientation du repère \(\mathcal{R}_0\) par rapport à \(\mathcal{R}_f\)
Dans un second temps, une fois les coordonnées de ces 4 points \(O_{fl}\), \(O_{fb}\) … obtenus, il suffit d’appliquer le MGI de chaque pied. Effectivement le problème revient a trouver les valeurs des 3 articulation sur chaque jambe pour que celle-ci donne \(x_fl = \overrightarrow{O_{fl}F_{fl}}\cdot \overrightarrow{x_0}\), \(y_fl = \overrightarrow{O_{fl}F_{fl}}\cdot \overrightarrow{y_0}\) et \(y_fl = \overrightarrow{O_{fl}F_{fl}}\cdot \overrightarrow{z_0}\) idem pour les 3 autres jambes.
Question 3.2 : Le paramétrage permettant de définir l’orientation du corps du robot dans son environnement correspond à un paramétrage au sens de Tait Bryan (rotations X, Y”, Z””). S’agit-il d’un paramétrage extrinsèque ou intrinsèque ? Justifier.
Solution
Il s’agit d’un paramétrage avec des rotations intrinsèques étant donné que l’on tourne autour des axes de la nouvelle base à chaque rotation.
Question 3.3 : Le fait d’assimiler le pied à un point présente-t-il un problème dans le paramétrage du robot. Justifier votre réponse.
Solution
Les points d’appuis réels des pieds sont toujours la projection orthogonale des points \(F\) suivant la normale au sol. Le fait d’assimiler les pieds à un point n’est donc pas gênant si le robot est sur un plan étant donné que les pieds sont des portions de sphères. Effectivement, si le sol est plan les points \(F\) constitue juste des translations des points d’appuis réels. Par contre cela pose un soucis si le sol n’est pas plan.
Étude du bras articulé additionnel sans la pince#
Dans cette dernière partie on s’intéresse uniquement au bras articulé représenté dans les Fig. 89 et Fig. 90.
Question 4.1 : Combien de degrés de liberté possède le bras articulé sans tenir compte de la pince.
Solution
Le bras robotique possèdent 6 degrés de liberté du fait de ses 6 liaisons pivots. La septième articulation correspond à l’ouverture ou la fermeture de la pince et n’est donc pas une articulation du bras robotique.
Question 4.2 : En supposant connues toutes les matrices de transformation (\(T_{ij}\)) permettant de décrire le paramétrage géométrique du bras au sens de DHm, décrire précisément la démarche de résolution du MGI sans faire de calcul.
Solution
Ce bras est une structure sériel 6 axes. Les 3 dernier axes constitues un poignet (3 liaisons pivot concourante). Ainsi il est possible de découpler le problème de résolution du MGI en 2 sous problème. Le premier problème consiste a résoudre le problème en position sur le point \(0_4 = 0_5 = 0_6\). Ce problème permet de déterminer les 3 premier paramètre articulaire. Ensuite il faut résoudre le problème en orientation afin de déterminer les 3 paramètres articulaire restant. Pour résoude cela on applique la méthode de résolution de Paul.
Annexes#
Limites articulaires :#
Limites articulaires de chaque jambe (les notations utilisées dans ce paragraphe ne sont utiles que pour la question 2.3):
articulation 1 entre le corps et la hanche \(\theta_h\) : \(\pm\) 45 degrés par rapport au plan \((O_{fl},\overrightarrow{x_0},\overrightarrow{y_0})\)
articulation 2 entre la hanche et la jambe supérieure \(\theta_u\) : entre + 41 et - 141 degrés par rapport à l’horizontale lorsque l’articulation 1 est a \(\theta_h = 0\).
articulation 3 au niveau du genou entre la jambe supérieure et la jambe inférieure \(\theta_l\): entre -14 et - 160 degrés par rapport à la jambe tendue (flexion/extension de 14 à 160 degrés)
Équations :#
Inverse d’une matrice homogène :
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\).
Solutions de l’équation de type 6 :
Solution : Elle consiste à élever au carré chaque équation pour faire disparaître \(\theta_j\) en les additionnant.\(\theta_i\) est alors résolu par une équation de type 2. Ensuite, connaissant \(\theta_i\), \(\theta_j\) est déterminé par un système d’équations de type 3.
Solutions de l’équation de type 3 :
Dans le cas où \(X_1 Y_2 - X_2 Y_1 \neq 0\), les termes en cosinus et sinus sont obtenus par combinaison linaire des deux équations pour éliminer respectivement les termes sinus et cosinus :
Dans le cas où \(X_1 Y_2 - X_2 Y_1 = 0\) alors, les équations ne sont plus indépendantes ; on choisit alors l’une des deux équations que l’on résout en équation de type 2. Solution :

Fig. 89 Bras articulé : vue de dessus et vue de face#

Fig. 90 Bras articulé : vue de côté#

Fig. 91 Spot : description des composants#

Fig. 92 Paramétrage de DHm#

