0% ont trouvé ce document utile (0 vote)
747 vues37 pages

Cours MGD Mgi

Ce document décrit les modèles géométriques directs et inverses pour les robots articulés. Il présente la terminologie de base incluant les repères, les espaces articulaire et opérationnel, ainsi que les transformations entre repères.

Transféré par

DABAKH LDEEBOY
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
747 vues37 pages

Cours MGD Mgi

Ce document décrit les modèles géométriques directs et inverses pour les robots articulés. Il présente la terminologie de base incluant les repères, les espaces articulaire et opérationnel, ainsi que les transformations entre repères.

Transféré par

DABAKH LDEEBOY
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Modèles géométriques: directs et inverses

Ludovic Hofer

6 novembre 2019
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Robots articulés et modèle géométriques

Deux types d’articulations


Rotoïde (liaisons angulaires)
Linéaire (liaisons prismatiques)
Deux types d’architecture
Séries
Parallèles

Contenu du cours
Modèle géométrique pours robots séries

L. Hofer MGD/MGI 2 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Vocabulaire
y2

q2 yE

y0
x2
y1 x1
q1
xE
x0

Espace articulaire : Q
n : nombre d’articulations (degrés de liberté)
Configuration du robot q = (q1 , . . . , qn )
Ici : q = (π/6, −5π/12)

L. Hofer MGD/MGI 3 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Vocabulaire
y2

q2 yE

y0
x2
y1 x1
q1
xE
x0

Les repères du robot


0 : La base du robot
i : Repère du corps rigide après i articulations
E : L’effecteur ou outil du robot (pince, etc...)

L. Hofer MGD/MGI 3 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Vocabulaire
y2

q2 yE

y0
x2
y1 x1
q1
xE
x0

Espace opérationnel : O
Position de l’outil dans le repère 0
Orientation du repère E dans le repère 0

L. Hofer MGD/MGI 3 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Vocabulaire
y2

q2 yE

y0
x2
y1 x1
q1
xE
x0

Les modèles géométriques


Direct : Q → O (MGD, Forward Kinematics)
Inverse : O → Q (MGI, Inverse Kinematics)

L. Hofer MGD/MGI 3 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Repères

Note :
On se restreint ici aux repères orthonormés directs

Notations
Oi L’origine du repère i
x~i Le vecteur unitaire ~x du repère i
i
~v Le vecteur ~v dans le repère i
i
P La position du point P dans le repère i

Remarque
Oi , x~i et y~i suffisent à spécifier un repère, car :

z~i = x~i ∧ y~i


L. Hofer MGD/MGI 4 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Rotation en 3D

Notation
i
R j La rotation de j vers i

 
i i i i
Rj = x~j y~j z~j

Propriétés
i T
Rj = j Ri
i −1
Rj = j Ri
i
R j j ~v = i ~v
i
Rj j Rk = i Rk

L. Hofer MGD/MGI 5 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Transformation homogène en 3D

Notation
j
T i Transformation du repère j vers le repère i

j
!
i
i
Rj ~i
O
Tj =
01×3 1

Propriétés
i
Tj jTk = iT k
i
~ j = −i R j j O
O ~i
i T j ~
! !
i T ~j i T
i
Tj
−1 j
= Ti = Rj O = Rj −i R j O i
01×3 1 01×3 1

L. Hofer MGD/MGI 6 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Rotation autour des axes unitaires


j 
1 0 0 0 zi
0 cos(θ) sin(θ) 0 zj
R(~x , θ) = 
 
0 −sin(θ) cos(θ) 0

yj
θ
0 0 0 1 i
yi
j 
cos(θ) 0 −sin(θ) 0 xi
 0 1 0 0 xj
R(~y , θ) = 
 
 sin(θ) 0 cos(θ) 0

zj
θ
0 0 0 1 i
zi
j 
cos(θ) sin(θ) 0 0 yi
−sin(θ) cos(θ) 0 0 yj
R(~z , θ) = 
 
 0 0 1 0

xj
θ
0 0 0 1 i
xi

L. Hofer MGD/MGI 7 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Translation selon un axe

~v ∈ Rn : un vecteur unitaire indiquant l’axe de translation


d ∈ R : La distance de la translation
j !
I3×3 −d~v yj
T (~v , d) =
0 1
i
yi
d~v xj

xi

L. Hofer MGD/MGI 8 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Dérivée des transformations

Dérivée élément par éléments

Exemple : Rotation

R(~x ,q) R0 (~x ,q)


z }| { z }| {
1 0 0 0 0 0 0 0
d 0 cos(q) sin(q) 0 0 −sin(q) cos(q) 0
  
=
dq 0 −sin(q) cos(q) 0 0 −cos(q) −sin(q) 0
 

0 0 0 1 0 0 0 0

L. Hofer MGD/MGI 9 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Transformation en fonction de q

À chaque q ∈ Q correspond une matrice 0 T E


Architecture série : transformations successives :
0
T E (q) = 0 T 1 (q1 )1 T 2 (q2 ) . . . n−1 T n (qn )n T E

Chaque transformation peut encore être décomposée


i 00 0
T j = i T j 00 j T j 0 (qi ) j T j

00
Rotoïde : j T j 0 (qi ) : R(~v , qi ), avec ~v l’axe de rotation
00
Linéaire : j T j 0 (qi ) : T (~v , qi ), avec ~v l’axe de translation

L. Hofer MGD/MGI 10 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Exemple : Bras à 3 degrés de libertés


y3
y2
L2
q2 q3 L3
x2 yE
x3
L1

y0
x1 xE
y1 q1
x0
0 1 2 3
T 1 (q1 ) T 2 (q2 ) T 3 (q3 ) TE
z }| {z }| {z }| {z }| {
R(~z , −q1 ) T (~x , −L1) R(~z , −q2 ) T (~x , −L2) R(~z , −q3 ) T (~x , −L3)
| {z }
0
T E (q)

L. Hofer MGD/MGI 11 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Notes sur l’espace opérationnel

0
T E contient des informations redondantes
9 valeurs pour décrire l’orientation
3 valeurs suffiraient
0
T E contient parfois des informations inutiles
Par exemple, intérêt uniquement pour la position (x,y)

Notation
 
0
P TE : transformation → l’espace opérationnel
 
0
G(q) = P T E (q)
Gi (q) Le i-ème élément du vecteur G(q)

L. Hofer MGD/MGI 12 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Quelques exemples de projection dans O

Position et orientation
 0 
!! O
E
0 0

0
 RE OE  roll 
 
P TE = P =  
0
01×3 1  pitch RE 


yaw 

Position uniquement
!!
0 0

0
 RE OE
P TE = P = 0 OE
01×3 1

L. Hofer MGD/MGI 13 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Présentation

Modèle Géométrique Inverse

Objectif
Pour un o ∈ O, quelles configurations q ∈ Q tel que G(q) = o

Différences avec le MGD


Généralement, plusieurs solutions
Parfois 0 solutions
Parfois infinité de solutions

L. Hofer MGD/MGI 14 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Présentation

MGI et nombre de degrés de liberté

Cas classique : n = 6
L’espace opérationnel comprend position et orientation.

Sur-contraint : n < 6
Suppression de contraintes (par exemple position uniquement)

Sous-contraint : n > 6
Plusieurs possibilités :
Fixer toutes les articulations sauf 6
Introduire des contraintes supplémentaires

L. Hofer MGD/MGI 15 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Présentation

Méthodes de résolutions

Pas de solution générale, mais deux approches du problème :


Méthodes analytiques
Résolution géométrique
Résolution algébrique
Méthodes numériques (itératives)
Par Jacobienne Inverse
Par Jacobienne Transposée

L. Hofer MGD/MGI 16 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Résolution Analytique

Avantages et inconvénients

Avantages
Réponses exactes
Nombre de solutions disponible
Exécution rapide

Inconvénients
Pas de méthode générale : propre à chaque robot
Ne fournit pas de solution approchée quand la cible n’est pas
atteignable

L. Hofer MGD/MGI 17 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Résolution Analytique

Résolution géométrique : cas pratique

C
Données du problèmes
I
L2

C : Position cible
β D D : kO − C k
I’
L1 : kO − Ik
L1 α φ L2 : kI − C k

L. Hofer MGD/MGI 18 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Résolution Analytique

Résolution géométrique : cas pratique

C
Quelles valeurs pour α et β
I
L2

Par Al-Kashi :
β L2 2 = D 2 + L1 2 − 2DL2 cos(α)
I’ D
Autrement 
dit :
2 2 −L 2

φ α = arccos L1 +D2L1 D
2
L1 α
De manièresimilaire : 
2 2 2
2 −D
O β = arccos L1 +L
2L1 L2

L. Hofer MGD/MGI 18 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Résolution Analytique

Résolution géométrique : cas pratique

C
Quelles valeurs pour q1 et q2
I
L2

Cas classique : 2 solutions :


β D
(
I’ q1 = φ − α, q2 = 180 − β
q1 = φ + α, q2 = β − 180
L1 α φ

L. Hofer MGD/MGI 18 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Résolution Analytique

Résolution géométrique : cas pratique

C
Quelles valeurs pour q1 et q2
I
L2

Cas classique : 2 solutions :


β D
(
I’ q1 = φ − α, q2 = 180 − β
q1 = φ + α, q2 = β − 180
L1 α φ
Pas de solutions :
O D > L1 + L2 ou
D < |L2 − L1 |

L. Hofer MGD/MGI 18 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Résolution Analytique

Résolution géométrique : cas pratique

C
Quelles valeurs pour q1 et q2
I
L2

Cas classique : 2 solutions :


β D
(
I’ q1 = φ − α, q2 = 180 − β
q1 = φ + α, q2 = β − 180
L1 α φ
Pas de solutions :
O D > L1 + L2 ou
D < |L2 − L1 |
Une seule solution :
D = L1 + L2

L. Hofer MGD/MGI 18 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Résolution Analytique

Résolution algébrique

Non-couvert ici 1
Systèmes d’équation avec cos et sin
Choix du repère dans lequel sont exprimés est important
Utilisation de calcul symbolique (sympy, maxima, maple)

1. Voir 1.2.3 : [Link]


Khalil-Dombre_Modelisation/Khalil-Dombre_Modelisation.pdf
L. Hofer MGD/MGI 19 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Jacobienne

La jacobienne

 ∂G1 (q) ∂G1 (q) 


∂q1 ... ∂qn
.. .. ..
 
∂G(q) ∂G(q)  
J(q) = ∂q1 ... ∂qn
=
 . . . 

∂Gk (q) ∂Gk (q)
∂q1 ... ∂qn

Utilités
MGI : méthodes numériques
Vitesse dans l’espace opérationnel : ȯ = J(q)q̇

L. Hofer MGD/MGI 20 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Avantages et inconvénients

Avantages
Méthode similaire pour tous les robots, basée sur G
Solution approximative pour position impossible

Inconvénients
Fournit une seule solution
Vulnérable aux singularités
Calculatoire
Non répétable

L. Hofer MGD/MGI 21 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Inverse de la jacobienne

Résolution du MGI
Soit  ∈ Rk un vecteur de norme faible :
On linéarise G autour de q : G(q + ) ≈ G(q) + J(q)
Donc : o − G(q) ≈ J(q)
On peut donc trouver  avec :  ≈ J(q)−1 (o − G(q))

Problèmes fréquents
 trop grand : approximation linéaire invalide
Plusieurs pas de résolution : méthode itérative
J(q) non-inversible (exemple : matrice rectangulaire)

L. Hofer MGD/MGI 22 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Jacobienne Transposée : Théorie

Formulation du problème
Minimisation d’une fonction de coût C (o, q) avec :
o ∈ O : la cible à atteindre
q ∈ Q : la configuration du robot

Recherche du coût minimum


Optimisation de fonction en boîte noire
Résolution plus efficace avec accès au gradient : ∇C (o, q)
 ∂ 
∂q1 C (o, q)

∇C (o, q) =  .. 
 . 


∂qn C (o, q)

L. Hofer MGD/MGI 23 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Jacobienne Transposée : Exemple

Cas simple
Cas simple : 3 degrés de liberté
Cible : position en 3D
Coût : carré des erreurs :
3
X
C (o, q) = (oi − Gi (q))2 = (o − G(q))T (o − G(q))
i=0

L. Hofer MGD/MGI 24 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Jacobienne Transposée : calcul de ∇C (o, q)

Fonction de coût : carré des erreurs :


3
X
C (o, q) = (oi − Gi (q))2
i=0

L. Hofer MGD/MGI 25 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Jacobienne Transposée : calcul de ∇C (o, q)

Fonction de coût : carré des erreurs :


3
X
C (o, q) = (oi − Gi (q))2
i=0

Dérivations de fonctions composées :


3
∂C (o, q) X ∂Gi (q)
= −2(oi − Gi (q))
∂qj i=1
∂qj

L. Hofer MGD/MGI 25 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Jacobienne Transposée : calcul de ∇C (o, q)

Dérivations de fonctions composées :


3
∂C (o, q) X ∂Gi (q)
= −2(oi − Gi (q))
∂qj i=1
∂qj

Autrement dit :
!T
∂C (o, q) ∂G(q)
= −2 (o − G(q))
∂qj ∂qj

L. Hofer MGD/MGI 25 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Jacobienne Transposée : calcul de ∇C (o, q)

Autrement dit :
!T
∂C (o, q) ∂G(q)
= −2 (o − G(q))
∂qj ∂qj

D’où :
 ∂G (q) ∂G2 (q) ∂G3 (q)

1
 ∂G∂q 1
1 (q)
∂q1
∂G2 (q)
∂q1
∂G3 (q) 
∇C (o, q) = −2 
 ∂q2 ∂q2 ∂q2 
 (o − G(q))
∂G1 (q) ∂G2 (q) ∂G3 (q)
∂q3 ∂q3 ∂q3

L. Hofer MGD/MGI 25 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Jacobienne Transposée : calcul de ∇C (o, q)

D’où :
 ∂G (q) ∂G2 (q) ∂G3 (q)

1
 ∂G∂q 1
1 (q)
∂q1
∂G2 (q)
∂q1
∂G3 (q) 
∇C (o, q) = −2 
 ∂q2 ∂q2 ∂q2 
 (o − G(q))
∂G1 (q) ∂G2 (q) ∂G3 (q)
∂q3 ∂q3 ∂q3

Finalement :

∇C (o, q) = −2J(q)T (o − G(q))

L. Hofer MGD/MGI 25 / 26
Introduction Repères en 3D Modèle Géométrique Direct Modèle Géométrique Inverse

Méthodes numériques

Pour aller plus loin

[Link]
robots_series.pdf
http:
//[Link]/Khalil-Dombre_
Modelisation/Khalil-Dombre_Modelisation.pdf

L. Hofer MGD/MGI 26 / 26

Vous aimerez peut-être aussi