Modèle géom.

UFR des Sciences, Département EEA
M1 EEAII
Parcours ViRob
Fabio MORBIDI
E-mail: fabio.morbidi@u-picardie.fr!
http://home.mis.u-picardie.fr/~fabio/Teaching.html
Année Universitaire 2014/2015
Plan du cours
Chapitre 1 : Généralités
1.1 Définitions
1.2 Constituants d’un robot
1.3 Classification des robots
1.4 Caractéristiques d’un robot
1.5 Les générations de robot
1.6 Programmation des robots
1.7 Utilisation des robots
Chapitre 2 : Degrés de liberté - Architecture
2.1 Positionnement
• Rotation et représentation de la rotation
• Attitude et matrices homogènes
2
Plan du cours
2.2 Cinématique
• Vitesse d’un solide
• Vecteur vitesse de rotation
• Mouvement rigide
• Torseur cinématique
Chapitre 3 : Modélisation d’un robot
3.1 Modèle géométrique
• Convention de Denavit-Hartenberg
• Modèle géométrique direct
• Modèle géométrique inverse
3.2 Modèle cinématique
• Jacobien direct d’un robot
• Jacobien inverse d’un robot
3.3 Modèle dynamique
• Equation d’Euler-Lagrange
3
Modèle géométrique
θ4
effecteur
d3
θ2
θ1
base
Modèle géométrique direct: etant données les positions articulaires
(distance resp. angle pour une articulation prismatique resp. rotoïde)
trouver la pose de l’effecteur par rapport à la base
Modèle géométrique inverse: etant donnée une pose de l’effecteur
par rapport à la base, trouver, si elles existent, l’ensembles de positions
articulaires qui permettent de générer cette pose
4
Modèle géométrique direct
effecteur
θ4
Oe
d3
θ2
θ1
base
• Par rapport au repère de la base Ob-xbybzb, le modèle géométrique direct
est exprimé par la matrice de transformation homogène:
où
Tbe (q) =
�
nbe (q)
sbe (q)
abe (q)
pbe (q)
0
0
0
1
�
q ∈ Rn : vecteur des variables des articulations
ne , se , ae : vecteurs unitaires du repère de l’effecteur
pbe : vecteur qui décrit l’origine du repère de l’effecteur par rapport à la base
5
Modèle géométrique direct
Si l’effecteur est une pince, comment choisir le repère ?
Oe
pince
ye
ze
• Origin Oe : elle prise au centre de la pince
• Axe ze : direction de rapprocement de l’object à attraper
• Axe ye : orthogonal à ze dans le plan de glissement des becs de la pince
• Axe xe : orthogonal aux autres axes pour avoir un repère direct
Rappel les symboles:
la flêche sort de la page vers le lecteur
× la flêche entre dans la page
6
Modèle géométrique direct
Fixé au sol
Manipulateur à chaîne ouverte avec n + 1 segments (ou corps) liés par
n articulations
• Par convention, le segment 0 est fixé au sol
• Assumption: chaque articulation fournit à la structure mécanique
1 DDL qui corresponde à la variable de l’articulation
7
Modèle géométrique direct
Procedure pour déterminer
le modèle géométrique direct:
1. Définir les repères associés à chaque segment:
0, 1, . . . , n
2. Determiner la transformation de coordonnées entre deux segments
consecutifs
Ai−1
(qi ), i ∈ {1, . . . , n}
i
3. Determiner, d’un façon recursive, la transformation totale entre le repère n
et le repère 0, c’est-à-dire:
T0n (q) = A01 (q1 ) A12 (q2 ) · · · An−1
(qn )
n
8
Modèle géométrique direct
effecteur
base
Attention: la transformation de coordonnées effective qui décrit la pose
de l’effecteur par rapport à la base est donnée par:
Tbe (q) = Tb0 T0n (q) Tne
Matrice de transformation (constante) qui décrit la
pose du repère 0 par rapport au repère de la base
Matrice de transformation (constante)
qui décrit la pose du repère de
l’effecteur par rapport au repère n
9
Modèle géométrique direct
θ4
d3
θ2
θ1
Procedure à suivre pour déterminer le modèle géométrique direct:
1. Définir les repères associés à chaque segment:
0, 1, . . . , n
Mais:
• Comment définir les repères avec des manipulateurs complexes,
avec un grand nombre d’articulations ?
• Il faut trouver une procedure systematique et générale
Solution: Convention de Denavit-Hartenberg
10
Convention de Denavit-Hartenberg
Problem: déterminer le repères attachés à deux segments consecutifs
et calculer la transformation de coordonnées entre les deux repères
artic.
artic.
i–1
i
artic.
i+1
segm.
segm.
ai
θi
ai−1
axe
i
Notation:
L’axe i dénote l’axe de l’articulation qui rélie le segment
i – 1 au segment i
11
Convention de Denavit-Hartenberg
La convention de Denavit Hartenberg (DH) est adoptée pour définir le
repère du segment i :
1. Choisir l’axe zi le long de l’axe de l’articulation
i +1
2. Placer l’origin Oi à l'intersection de l'axe zi avec la normale commune
aux axes zi -1 et zi . Placer aussi Oi’ à l’intersection de la normale
commune avec l’axe zi -1
3. Choisir l’axe xi le long de la normal commune aux axes zi -1 et zi
avec sens de l’articulation i à l’articulation i + 1
4. Choisir l’axe yi pour completer la triplet d’un repère direct
(“regle de la main droite”)
droite
Remarque:
La normale commune entre deux droites est
la droite qui contient le segment à distance
minimale entre les deux droites
Normale
commune
i
droite
i+1
12
Convention de Denavit-Hartenberg
Remarque [cas particuliers]:
La convention de DH ne donne pas une définition unique du repère
d’un segment dans les cas suivants:
• Pour le repère 0: seulement la direction de l’axe z0 est specifiée.
Partant, O0 et x0 peuvent être choisis arbitrairement
• Pour le repère n: puisqu'il n'y a pas l’articulation n + 1, zn n’est pas
défini de manière unique, tandis que xn doit être normal à l’axe zn-1.
Typiquement, l’articulation n est rotoïde, et donc zn doit être aligné
avec la direction de zn-1
• Si deux axes consécutifs sont parallèles, la normale commune
entre les deux n’est pas définie de manière unique (αi = 0).
On place Oi tel que di = 0
• Si deux axes consécutifs se coupent, le sens de xi est arbitraire (ai = 0).
On place Oi à l’intersection des axes zi – 1 et zi
• Si l’articulation
i est prismatique, la direction de zi – 1 est arbitraire
13
Paramètres de Denavit-Hartenberg
Une fois que les repères des segments ont été fixés, la position et orientation
du repère i par rapport au repère
quatre parametrès suivantes:
i
- 1 est complètement specifiée par les
• ai : distance entre Oi et Oi’
• di : coordonnée de Oi’ le long de zi – 1
• αi : angle entre les axes zi – 1 et zi autour de l’axe xi
L’angle est positif si la rotation est faite dans le sens antihoraire
• θi : angle entre les axes xi – 1 et xi autour de l’axe zi – 1
L’angle est positif si la rotation est faite dans le sens antihoraire
segm.
segm.
artic. i – 1
θi
artic. i + 1
artic. i
14
Paramètres de Denavit-Hartenberg
• Deux des quatre paramètres (ai and αi) sont toujours constants et
dependent seulement de la géometrie de connection des articulations
consecutives définie par le segment i
• Des paramètres restants, seulement un est variable et depend du type
d’articulation qui rélie le segment i - 1 avec segment i , En particulier:
• Si l’articulation
i est rotoïde, la variable est θi
• Si l’articulation
i est prismatique, la variable est di
segm.
segm.
artic. i – 1
θi
artic. i + 1
artic. i
15
Transformation homogène de DH
En conclusion, nous pouvons exprimer la transformation de coordonnées
entre repère i et i - 1 selon les étapes suivantes:
1. Choisir un repère aligné avec le repère
i–1
2. Faire un translation de di du repère choisi le long de l’axe zi – 1 et faire
un rotation de θi autour de l’axe zi – 1
Cette séquence aligne le repère courant avec le repère i’ et est décrite
par la matrice homogène:
Ai−1
i�

cos θi
 sin θ
i

= 
 0
0
− sin θi
cos θi
0
0

0 0
0 0


1 di 
0 1
16
Transformation homogène de DH
artic.
artic.
i–1
i
artic.
i+1
segm.
segm.
ai
θi
ai−1
axe
i
17
Transformation homogène de DH
3. Faire un translation du repère aligné avec le repère i’ de ai le long de
l’axe xi’ et faire un rotation de αi autour de l’axe xi’ ; Cette séquence aligne
le repère courant avec le repère i et est décrite par la matrice homogène:
i�
Ai

1
0
 0 cos α
i

= 
 0 sin αi
0
0
0
− sin αi
cos αi
0

ai
0


0
1
4. La transformation finale est obtenue en multipliant à droite les
transformations précédentes:
i
Ai−1
(qi ) = Ai−1
i
i� A i
Fonction seulement de qi
�

c θi
s
 θi
= 
 0
0
qi = θi : articulation rotoïde
qi = di : articulation prismatique
−sθi cαi
c θi c α i
s αi
0
s θi s α i
−cθi sαi
c αi
0

a i c θi
a i s θi 


di 
1
cθi = cos θi , sθi = sin θi
18
Modèle géometrique direct
pour manipulateurs industriels
Exemples
19
1 - Manipulateur planaire à 3 segments
θ3
θ2
θ1
• Les axes des articulation rotoïdes sont tous parallèles
• Choix le plus simple des repères: axes xi le long de la direction des segments
correspondants (la direction de x0 est arbitraire) et tous situés dans le plan (x0, y0)
20
Manipulateur planaire à 3 segments
Segment
ai
αi
di
θi
1
a1
0
0
θ1
2
a2
0
0
θ2
3
a3
0
0
θ3
Paramètres de DH
Puisque toutes les articulations sont rotoïdes, la matrice de transformation
homogène a la même structure pour chaque des trois articulations:

cos θi
 sin θ
i

Ai−1
(θ
)
=

i
i
 0
0
− sin θi
cos θi
0
0

0 ai cos θi
0 ai sin θi 

 , i ∈ {1, 2, 3}

1
0
0
1
21
Manipulateur planaire à 3 segments
• La matrice de transformation totale est donc:

c123
s
 123
0
0
1
2
T3 (q) = A1 A2 A3 = 
 0
0
−s123
c123
0
0

0 a1 c1 + a2 c12 + a3 c123
0 a1 s1 + a2 s12 + a3 s123 



1
0
0
1
où q = [θ1 , θ2 , θ3 ]T et c12 = cos(θ1 + θ2 ), s123 = sin(θ1 + θ2 + θ3 )
• Le repère 3 ne coïncide pas avec le repère de l’effecteur: en effet
la direction de rapprocement de l’object à attraper est alignée avec
le vecteur unitaire x03 et pas avec z03 (cf. diapositive 6)
• Partant, si les deux repères ont la même origine, il faut ajouter la
transformation suivante (une rotation pure):
T3e =
�
Ry (90◦ )
01×3

0
�
 0
03×1

= 
 −1
10
0
0
1
0
0
1
0
0
0

0
0


0
1
22
2 - Manipulateur sphérique
θ2
θ1
Exercice [pour le 3 mars]: déterminer les parametrès de DH et le modèle
géométrique direct (c’est-à-dire T03 (q) ) du manipulateur sphérique
23