• Aucun résultat trouvé

Robotique Manipulation et commande

N/A
N/A
Protected

Academic year: 2022

Partager "Robotique Manipulation et commande"

Copied!
44
0
0

Texte intégral

(1)

Robotique

Manipulation et commande

Université de Strasbourg

Telecom Physique Strasbourg, option ISAV Master IRIV, parcours AR

Jacques Gangloff

(2)

Plan du chapitre

—  1. Introduction

—  2 Convention de Denavit-Hartenberg

–  2.1. Introduction

–  2.2. Les paramètres de DH

–  2.3. Matrice homogène de DH

–  2.4. Modélisation géométrique d’un robot

–  2.5 Exemples

—  3. Modèle géométrique inverse

–  3.1. Définition

–  3.2. Exemple 1

–  3.3. Exemple 2

(3)

1. Introduction

1.1. Définitions

—  Modèle géométrique direct

–  Donne l’attitude de l’organe terminal en fonction des coordonnées articulaires (longueur pour une articulation prismatique ou angle pour une rotoïde).

—  Modèle géométrique inverse

–  Donne, si elles existent, le ou les ensembles de

positions articulaires en fonction de l’attitude de

l’organe terminal.

(4)

1. Introduction

1.2. Principe : idée générale

—  Principe

–  Fixer un repère à chaque corps du robot.

–  Calculer la matrice homogène entre chaque repère.

–  En déduire la matrice homogène entre la base et l’organe terminal.

—  Hypothèses

–  Le robot est un chaînage de n+1 corps liés entre eux par n articulations.

–  A chaque corps on associe un repère R i . Les repères sont numérotés de 0 à n.

–  La i ème articulation dont la position est notée q i

relie les corps i-1 et i.

(5)

1. Introduction

1.2. Principe : exemple

articulation 1 : q 1 articulation 3 : q 3

Base : corps 0 corps 1 corps 2

corps 3

Ar ticul ati on 2 : q 2

(6)

1. Introduction

1.2. Principe : exemple

ou bien

R 0

R 1 R 2

R 3

R 0

R 1 R 2

R 3

On a : M

03

(q) = M

01

(q

1

) M

12

(q

2

) M

23

(q

3

) avec q = [q

1

q

2

q

3

]

T

(7)

2. Convention de DH

2.1. Introduction

—  Convention de Denavit-Hartenberg

–  Permet de normaliser, simplifier et rationaliser la modélisation géométrique d’un robot.

—  Hypothèses

–  L’attitude d’un repère R i par rapport au repère R i-1 est exprimée au moyen de 4 paramètres uniques : les paramètres de DH.

–  Deux contraintes limitent les degrés de liberté du repère R i par rapport au repère R i-1 :

–  L’axe x i de R i est perpendiculaire à l’axe z i-1 de R i-1

–  L’axe x i coupe l’axe z i-1

(8)

2. Convention de DH

2.2. Les paramètres de DH

—  Décomposition de M i-1 i en 4 transformations élémentaires :

1.  Rotation autour de z d’un angle θ i

2.  Translation autour de z d’une longueur d i 3.  Translation autour de x d’une longueur a i 4.  Rotation autour de x d’un angle α i

—  Ces transformations se font par rapport au repère courant. D’où :

M i ! 1 i = R ( z

i!1

, "

i

) T ( z

i!1

,d

i

) T ( x

i

,a

i

) R ( x

i

, #

i

)

(9)

2. Convention de DH

2.2. Les paramètres de DH

—  On vérifie que les 2 conditions de DH sont remplies :

—  Unicité :

–  Soit M i-1 i vérifiant les 2 conditions de DH

–  Dans ce cas, on démontre [SPONG] que les paramètres de DH θ i d i a i et α i sont uniques.

z i!1

x i!1

y i ! 1 y i x i

z i

! x

! y

!!

x

!!

y

!!!

!!! x y

! i d i a i

! i

θ i d i a i et α i sont

les paramètres de

Denavit-Hartenberg

(10)

2. Convention de DH

2.3. Matrice homogène de DH

—  On a :

—  D’où :

M i!1 i = R ( z

i!1

, "

i

) T ( z

i!1

,d

i

) T ( x

i

,a

i

) R ( x

i

, #

i

)

M

i!1i

=

c "

i

!s "

i

0 0 s "

i

c "

i

0 0 0 0 1 0 0 0 0 1

#

$

% %

% %

%

&

' ( ( ( ( ( )

1 0 0 0 0 1 0 0 0 0 1 d

i

0 0 0 1

#

$

% %

% %

%

&

' ( ( ( ( ( )

1 0 0 a

i

0 1 0 0 0 0 1 0 0 0 0 1

#

$

% %

% %

%

&

' ( ( ( ( ( )

1 0 0 0

0 c *

i

! s *

i

0 0 s *

i

c *

i

0

0 0 0 1

#

$

% %

% %

%

&

' ( ( ( ( (

=

c "

i

! s "

i

c *

i

s "

i

s *

i

a

i

c "

i

s "

i

c "

i

c *

i

!c "

i

s *

i

a

i

s "

i

0 s *

i

c *

i

d

i

0 0 0 1

#

$

% %

% %

%

&

'

( (

( (

(

(11)

2. Convention de DH

2.4. Application à un robot série : cas général

—  Règle de positionnement du repère R i :

–  L’axe z i est confondu avec l’axe n°i+1 du robot.

–  L’axe x i est perpendiculaire et coupe l’axe n°i.

corps i - 1 corps i

axe i+1

axe i

! i d i x i ! 1

y i!1

z i ! 1

a i

corps i +1

! i x i

y i

z i

(12)

2. Convention de DH

2.4. Application à un robot série : cas particuliers

—  Les axes z i-1 et z i sont parallèles

–  Il y a une infinité de normales communes entre z i et z i-1 . On fixe d i =0 :

—  Les axes z i-1 et z i se coupent

–  Dans ce cas : a i =0 :

z i-1

x i-1 z i

x i

z i-1

z i

(13)

2. Convention de DH

2.4. Application à un robot série : cas particuliers

—  Choix du repère R 0

–  L’origine du repère R 0 peut être choisie n’importe où le long de l’axe 1.

–  L’axe x 0 peut être choisi de manière quelconque.

—  Choix du repère R n

–  L’origine est en général placée au centre de l’outil (TCP).

–  Parfois on impose y dans le sens de la fermeture de

la pince.

(14)

2. Convention de DH

2.4. Application à un robot série : remarques

—  Remarques

–  Lorsqu’on a le choix et en l’absence de contrainte particulière, on privilégiera toujours la solution la plus simple (i.e. celle qui donne le plus de 0 dans le tableau de DH).

–  Le sens des axes z respecte le sens positif d’évolution des coordonnées articulaires.

–  Le choix des repères impose une configuration nulle du manipulateur (celle pour laquelle les

coordonnées articulaires sont nulles). On peut en

changer en imposant des offsets à θ ou d dans le

tableau de DH.

(15)

2. Convention de DH

2.5. Exemple 1 : manipulateur plan

d

! ! a

1 : longueur du corps 1 a 2 : longueur du corps 2 a 3 : longueur du corps 3 d=α=β=0 : bras vertical

Corps a i α i d i θ i

1 2 3

* Paramètres variables

(16)

2. Convention de DH

2.5. Exemple 1 : manipulateur plan

—  On a :

M

i!1i

=

c "

i

!s "

i

c #

i

s "

i

s #

i

a

i

c "

i

s "

i

c "

i

c #

i

! c "

i

s #

i

a

i

s "

i

0 s #

i

c #

i

d

i

0 0 0 1

$

%

&

&

&

&

&

'

(

) )

) )

)

(17)

2. Convention de DH

2.5. Exemple 2 : robot SCARA

16/10/12

(18)

2. Convention de DH

2.5. Exemple 2 : robot SCARA

Corps a i α i d i θ i 1

2 3

M

i!1i

=

c "

i

! s "

i

c #

i

s "

i

s #

i

a

i

c "

i

s "

i

c "

i

c #

i

! c "

i

s #

i

a

i

s "

i

0 s #

i

c #

i

d

i

0 0 0 1

$

%

&

&

&

&

&

'

(

) )

) )

)

(19)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

—  Décomposition en 2 parties :

1.  Les 3 premiers axes

2.  Les 3 derniers axes = poignet

IRB 1400, ABB

TM

(20)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

d 1 a 1

a 2

d 4

Corps a i α i d i θ i 1

2

3

(21)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

Corps a i α i d i θ i 1

2 3

M

i!1i

=

c "

i

! s "

i

c #

i

s "

i

s #

i

a

i

c "

i

s "

i

c "

i

c #

i

! c "

i

s #

i

a

i

s "

i

0 s #

i

c #

i

d

i

0 0 0 1

$

%

&

&

&

&

&

'

(

) )

) )

)

(22)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

Soit : M

03

=

r

11

r

12

r

13

T

x

r

21

r

22

r

23

T

y

r

31

r

32

r

33

T

z

0 0 0 1

!

"

# #

# #

#

$

%

&

&

&

&

&

avec

T

x

= 1

2 a

2

( c( '

1

( '

2

) + c( '

1

+ '

2

) ) + a

1

c

1

T

y

= 1

2 a

2

( s( '

1

+ '

2

) + s( '

1

( '

2

) ) + a

1

s

1

T

z

= a

2

s

2

+ d

1

)

* + + +

, + + +

Et

r

11

= 1

2 ( c( ('

3

+ '

1

( '

2

) + c( '

3

+ '

1

+ '

2

) )

r

12

= s

1

r

13

= ( 1

2 ( s( ('

3

+ '

1

( '

2

) + s( '

3

+ '

1

+ '

2

) )

r

21

= 1

2 ( s( '

3

+ '

1

+ '

2

) + s( ('

3

+ '

1

( '

2

) )

r

22

= ( c

1

)

* + + + + ++

+ + + +

r

31

= s

23

r

32

= 0 r

33

= ( c

23

)

* +

, +

(23)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

—  Remarques

–  Il peut être utile d’avoir recours à un logiciel de calcul symbolique pour le modèle géométrique.

–  Sous Matlab avec la boite à outils « Maple », le calcul de M 03 s’effectue de la manière suivante :

>> syms t1 t2 t3 a1 a2 a3 d1!

>> M01=[cos(t1) 0 sin(t1) a1*cos(t1); sin(t1) 0 -cos(t1) a1*sin(t1);0 1 0 d1; 0 0 0 1]!

>> M12=[cos(t2) -sin(t2) 0 a2*cos(t2); sin(t2) cos(t2) 0 a2*sin(t2); 0 0 1 0; 0 0 0 1]!

>> M23=[cos(t3) 0 sin(t3) 0; sin(t3) 0 -cos(t3) 0; 0 1 0 0; 0 0 0 1]!

>> M03=simple(M01*M12*M23) !

!

M03 = [1/2*cos(-t3+t1-t2)+1/2*cos(t3+t1+t2),sin(t1),-1/2*sin(-t3+t1-t2)+1/2*sin(t3+t1+t2), 1/2*a2*cos(t1-t2)+1/2*a2*cos(t1+t2)+a1*cos(t1)]!

[1/2*sin(t3+t1+t2)+1/2*sin(-t3+t1-t2),-cos(t1),-1/2*cos(t3+t1+t2)+1/2*cos(-t3+t1-t2),!

1/2*a2*sin(t1+t2)+1/2*a2*sin(t1-t2)+a1*sin(t1)]!

[sin(t2+t3),0,-cos(t2+t3),a2*sin(t2)+d1]!

[0,0,0,1] !

(24)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

—  Vérifications :

–  Pour θ 1,2 =0 et θ 3 =π/2 :

–  Pour θ 2,3 =π/2 et θ 1 =0 :

M

03

=

0 0 1 a

1

+ a

2

0 ! 1 0 0

1 0 0 d

1

0 0 0 1

"

#

$ $

$ $

$

%

&

' ' ' ' '

Configuration bras horizontal

M

03

=

! 1 0 0 a

1

0 ! 1 0 0

0 0 1 d

1

+ a

2

"

$ $

$ $

% ' ' ' '

Configuration bras vertical

(25)

3 axes concourants = rotule

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

—  Modèle du poignet :

(26)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

z 3

x 3

y 3

d 6 d 4

Corps a i α i d i θ i

1

2

3

(27)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

—  D’où :

(28)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

—  On en déduit : M 06 = M 03 M 36

>> ccode(M06)!

! ans =!

!

M06[0][0] = cos(q1) * cos(q2) * cos(q3) * cos(q4) * cos(q5) * cos(q6) - cos(q1) * cos(q2) * cos (q3) * sin(q4) * sin(q6) - cos(q1) * sin(q2) * sin(q3) * cos(q4) * cos(q5) * cos(q6) + cos(q1) * sin(q2) * sin(q3) * sin(q4) * sin(q6) + sin(q1) * sin(q4) * cos(q5) * cos(q6) + sin(q1) * cos (q4) * sin(q6) - sin(q5) * cos(q6) * cos(q1) * cos(q2) * sin(q3) - sin(q5) * cos(q6) * cos(q1) * sin(q2) * cos(q3);!

M06[0][1] = -cos(q1) * cos(q2) * cos(q3) * cos(q4) * cos(q5) * sin(q6) - cos(q1) * cos(q2) * cos (q3) * sin(q4) * cos(q6) + cos(q1) * sin(q2) * sin(q3) * cos(q4) * cos(q5) * sin(q6) + cos(q1) * sin(q2) * sin(q3) * sin(q4) * cos(q6) - sin(q1) * sin(q4) * cos(q5) * sin(q6) + sin(q1) * cos (q4) * cos(q6) + sin(q5) * sin(q6) * cos(q1) * cos(q2) * sin(q3) + sin(q5) * sin(q6) * cos(q1) * sin(q2) * cos(q3);!

M06[0][2] = cos(q4) * sin(q5) * cos(q1) * cos(q2) * cos(q3) - cos(q4) * sin(q5) * cos(q1) * sin (q2) * sin(q3) + sin(q1) * sin(q4) * sin(q5) + cos(q1) * cos(q2) * sin(q3) * cos(q5) + cos(q1) * sin(q2) * cos(q3) * cos(q5);!

M06[0][3] = cos(q4) * sin(q5) * d6 * cos(q1) * cos(q2) * cos(q3) - cos(q4) * sin(q5) * d6 * cos (q1) * sin(q2) * sin(q3) + sin(q1) * sin(q4) * sin(q5) * d6 + cos(q1) * cos(q2) * sin(q3) * cos (q5) * d6 + cos(q1) * cos(q2) * sin(q3) * d4 + cos(q1) * sin(q2) * cos(q3) * cos(q5) * d6 + cos (q1) * sin(q2) * cos(q3) * d4 + cos(q1) * cos(q2) * a2 + cos(q1) * a1;!

(29)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

M06[1][0] = sin(q1) * cos(q2) * cos(q3) * cos(q4) * cos(q5) * cos(q6) - sin(q1) * cos(q2) * cos (q3) * sin(q4) * sin(q6) - sin(q1) * sin(q2) * sin(q3) * cos(q4) * cos(q5) * cos(q6) + sin(q1) * sin(q2) * sin(q3) * sin(q4) * sin(q6) - cos(q1) * sin(q4) * cos(q5) * cos(q6) - cos(q1) * cos (q4) * sin(q6) - sin(q5) * cos(q6) * sin(q1) * cos(q2) * sin(q3) - sin(q5) * cos(q6) * sin(q1) * sin(q2) * cos(q3);!

M06[1][1] = -sin(q1) * cos(q2) * cos(q3) * cos(q4) * cos(q5) * sin(q6) - sin(q1) * cos(q2) * cos (q3) * sin(q4) * cos(q6) + sin(q1) * sin(q2) * sin(q3) * cos(q4) * cos(q5) * sin(q6) + sin(q1) * sin(q2) * sin(q3) * sin(q4) * cos(q6) + cos(q1) * sin(q4) * cos(q5) * sin(q6) - cos(q1) * cos (q4) * cos(q6) + sin(q5) * sin(q6) * sin(q1) * cos(q2) * sin(q3) + sin(q5) * sin(q6) * sin(q1) * sin(q2) * cos(q3);!

M06[1][2] = cos(q4) * sin(q5) * sin(q1) * cos(q2) * cos(q3) - cos(q4) * sin(q5) * sin(q1) * sin (q2) * sin(q3) - cos(q1) * sin(q4) * sin(q5) + sin(q1) * cos(q2) * sin(q3) * cos(q5) + sin(q1) * sin(q2) * cos(q3) * cos(q5);!

M06[1][3] = cos(q4) * sin(q5) * d6 * sin(q1) * cos(q2) * cos(q3) - cos(q4) * sin(q5) * d6 * sin (q1) * sin(q2) * sin(q3) - cos(q1) * sin(q4) * sin(q5) * d6 + sin(q1) * cos(q2) * sin(q3) * cos (q5) * d6 + sin(q1) * cos(q2) * sin(q3) * d4 + sin(q1) * sin(q2) * cos(q3) * cos(q5) * d6 + sin (q1) * sin(q2) * cos(q3) * d4 + sin(q1) * cos(q2) * a2 + sin(q1) * a1;!

M06[2][0] = sin(q2) * cos(q3) * cos(q4) * cos(q5) * cos(q6) - sin(q2) * cos(q3) * sin(q4) * sin (q6) + cos(q2) * sin(q3) * cos(q4) * cos(q5) * cos(q6) - cos(q2) * sin(q3) * sin(q4) * sin(q6) - sin(q5) * cos(q6) * sin(q2) * sin(q3) + sin(q5) * cos(q6) * cos(q2) * cos(q3);!

M06[2][1] = -sin(q2) * cos(q3) * cos(q4) * cos(q5) * sin(q6) - sin(q2) * cos(q3) * sin(q4) * cos (q6) - cos(q2) * sin(q3) * cos(q4) * cos(q5) * sin(q6) - cos(q2) * sin(q3) * sin(q4) * cos(q6) + sin(q5) * sin(q6) * sin(q2) * sin(q3) - sin(q5) * sin(q6) * cos(q2) * cos(q3);!

M06[2][2] = cos(q4) * sin(q5) * sin(q2) * cos(q3) + cos(q4) * sin(q5) * cos(q2) * sin(q3) + sin (q2) * sin(q3) * cos(q5) - cos(q2) * cos(q3) * cos(q5);!

M06[2][3] = cos(q4) * sin(q5) * d6 * sin(q2) * cos(q3) + cos(q4) * sin(q5) * d6 * cos(q2) * sin (q3) + sin(q2) * sin(q3) * cos(q5) * d6 + sin(q2) * sin(q3) * d4 - cos(q2) * cos(q3) * cos(q5) * d6 - cos(q2) * cos(q3) * d4 + sin(q2) * a2 + d1;!

(30)

2. Convention de DH

2.5. Exemple 3 : 6 axes anthropomorphe

—  Vérifications

–  Bras replié (θ 1…6 =0) :

–  Bras vertical (θ 1,4,5,6 =0 et θ 2,3 =π/2) :

M

06

=

1 0 0 a

2

+ a

1

0 ! 1 0 0

0 0 !1 ! d

6

! d

4

+ d

1

0 0 0 1

"

#

$ $

$ $

$

%

&

' ' ' ' '

M

06

=

! 1 0 0 a

1

0 ! 1 0 0

0 0 1 d

6

+ d

4

+ a

2

+ d

1

"

$ $

$ $

% '

' '

'

(31)

3. Modèle géométrique inverse

3.1. Définitions

—  Modèle géométrique direct (MGD)

–  Le modèle géométrique direct est donc une fonction qui permet d’exprimer l’attitude de l’organe terminal en fonction des coordonnées articulaires.

–  Par exemple, lorsque l’attitude est exprimées à l’aide de 6 coordonnées :

p(q) =

T

x

(q) T

y

(q) T

z

(q)

!

r

(q)

!

t

(q)

!

l

(q)

"

#

$ $

$ $

$ $

$ $

$

%

&

' ' ' ' ' ' ' ' '

= G

d

(q)

(32)

3. Modèle géométrique inverse

3.1. Définitions

—  Modèle géométrique inverse (MGI)

–  Soit G i une fonction telle que :

–  La fonction G i est appelée modèle géométrique inverse du robot.

—  Remarques :

–  G i dépend de la décomposition de la rotation.

–  Il existe souvent plusieurs solutions q pour une attitude p donnée de l’organe terminal.

–  G i est définie uniquement à l’intérieur de l’espace de travail dextre du robot.

–  Il y a des points singuliers à l’intérieur de l’espace de travail du robot où G i admet une infinité de solutions.

q = G i ( p)

(33)

3. Modèle géométrique inverse

3.2. Exemple 1 : robot plan

—  Problème :

–  Soit p=[T x T y T z ] T les coordonnées de O 3 dans R 0

–  Trouver G i telle que q=G i (p) avec q=[d α β] T

d

y

0

x

0

z

0

R 0

R 1

y

1

x

1

z

1

R 2

y

2

x

2

z

2

R 3

x

3

y

3

z

3

! !

(34)

3. Modèle géométrique inverse

3.2. Exemple 1 : robot plan

—  Relation évidente :

—  Le reste peut être traité dans un plan :

—  On a :

y

0

x

0

!

!

O 3

a 1 a 2

a 3

(35)

3. Modèle géométrique inverse

3.2. Exemple 1 : robot plan

—  De plus :

—  En additionnant ces équations :

—  En utilisant :

—  On obtient :

—  D’où :

cos( a ! b) = cos a cos b + sin a sin b

(36)

3. Modèle géométrique inverse

3.2. Exemple 1 : robot plan

—  On en déduit que :

—  En choisissant le signe, on détermine la configuration du coude.

—  Pour obtenir α on écrit que :

—  On résout le système et on obtient :

! = ± arccos( D ) si D " 1

T x ! a 1 = k 1 cos " ! k 2 sin "

T y = k 1 sin " + k 2 cos "

# $

%

&% avec k 1 = a 2 + a 3 cos '

k 2 = a 3 sin '

# $

%

&%

sin ! = k 1 T y " k 2 (T x " a 1 )

k 2 + k 2 cos ! = k 2 T y + k 1 (T x " a 1 )

k 2 + k 2

(37)

3. Modèle géométrique inverse

3.2. Exemple 1 : robot plan

—  Finalement :

—  A. N. :

–  a 1 = 2 , a 2 = 4√2 , a 3 = 3 , T x = 6 , T y = 7

! = arctan 2 ( k

1

T

y

" k

2

(T

x

" a

1

) , k

2

T

y

" k

1

(T

x

" a

1

) )

x

y 7

2

6

(38)

3. Modèle géométrique inverse

3.3. Exemple 2 : 6 axes anthropomorphe

—  Le calcul du MGI d’un 6R

anthropomorphe se fait en 2 étapes :

1.  Trouver q 1 q 2 q 3 , les 3 premières coordonnées articulaires, telles que le centre de la rotule

coïncide avec la position désirée

2.  Trouver q 4 q 5 q 6 , les angles du poignet, de

manière à avoir la bonne orientation de la pince.

—  Cette décomposition est possible, car

les angles du poignet n’influencent pas la

position du centre de la rotule.

(39)

3. Modèle géométrique inverse

3.3. Exemple 2 : 6 axes anthropomorphe

—  On a :

—  D’où :

—  Etape 1 :

–  Trouver q 1 q 2 q 3 tels que le centre de la rotule ait pour coordonnées [o x o y o z ] T dans R 0 .

z 3

x 3

y 3 z 4

x 4

y 4 z 5

x 5

y 5 x 6

y 6 z 6

d 6 d 4

Centre de la rotule

6

O = " 0 0 ! d

6

1

# $

%

T

0

O = M

06

Connu

!

6

O = ! o

x

o

y

o

z

1

"# $

%&

T

(40)

3. Modèle géométrique inverse

3.3. Exemple 2 : 6 axes anthropomorphe

—  On a :

—  Le problème est alors ramené

dans le plan :

z 0

x 0

o x o y

o z

q 1 O

a 1 d 1 a 2 d 4

q 1 = arctan 2 ( ) o y , o x

O

q 2 q 3

o

z

! d

1

o

x2

+ o

y2

! a

1

(41)

3. Modèle géométrique inverse

3.3. Exemple 2 : 6 axes anthropomorphe

—  D’après 3.2 :

—  Remarques :

–  q 1 est unique si (o x o y ) ≠ (0 0) (si le point O n’est pas sur le premier axe). Sinon, infinité de solutions.

–  q 2 et q 3 existent si D ≤ 1 (position atteignable).

D = (o

z

! d

1

)

2

+ ( o

x2

+ o

y2

! a

1

)

2

! a

22

! d

42

2a

2

d

4

" q

3

= ± arcsin( D) si D # 1

" q

2

= arctan 2 ( k

1

(o

z

! d

1

) ! k

2

( o

x2

+ o

y2

! a

1

) , k

2

(o

z

! d

1

) ! k

1

( o

x2

+ o

y2

! a

1

) )

avec : k

1

= a

2

+ d

4

sin(q

3

) et k

2

= d

4

cos( q

3

)

(42)

3. Modèle géométrique inverse

3.3. Exemple 2 : 6 axes anthropomorphe

—  Etape 2 :

–  On connaît M 03 (Etape 1) et M 06 (Hypothèses).

–  On en déduit :

–  Soit :

–  Qu’on identifie à (cf 2.5 exemple 3) : M 36 = M 03 ! 1 M 06

M

36

=

r

11

r

12

r

13

T

x

r

21

r

22

r

23

T

y

r

31

r

32

r

33

T

z

0 0 0 1

!

"

# #

# #

#

$

%

&

&

&

&

&

M

36

=

c

4

c

5

c

6

! s

4

s

6

! c

4

c

5

s

6

! s

4

c

6

c

4

s

5

c

4

s

5

d

6

s

4

c

5

c

6

+ c

4

s

6

! s

4

c

5

s

6

+ c

4

c

6

s

4

s

5

s

4

s

5

d

6

"

$ $

$

% '

' '

(43)

3. Modèle géométrique inverse

3.3. Exemple 2 : 6 axes anthropomorphe

—  Si q 5 ≠ 0 [π] :

—  Si q 5 = 0 [π] :

q 5 = ± arccos( r 33 )

q 4 = arctan 2( ! r 23 , ! r 13 ) q 6 = arctan3( r 32 , ! r 31 )

"

# $

% $

q 4 = 0

q 6 = arctan 2( r 12 , r 22 )

! "

#

$#

(44)

3. Modèle géométrique inverse

3.3. Exemple 2 : 6 axes anthropomorphe

—  Remarques

–  Dans le cas général, il y a 2 solutions pour le triplet {q 1 q 2 q 3 } (coude en haut ou en bas).

–  Dans le cas général, il y a 2 solutions pour le triplet {q 4 q 5 q 6 } (2 valeurs possibles de q 5 , dans la

pratique, seul une est accessible).

–  Donc dans le cas général, il y a 4 solutions au MGI de ce robot.

–  Il y a 3 cas singuliers :

–  Lorsque le point O est sur l’axe 1 (infinité de solutions).

–  Lorsque le point O est inaccessible (pas de solution).

–  Lorsque q 5 =0 [π] (infinité de solutions).

Références

Documents relatifs

7 Paul calcule que, s’il achète deux croissants et une brioche à 1,83 €, il dépense 0,47 € de plus que s’il achète quatre croissants.. Écris, en fonction de x , le prix

7  Paul calcule que, s’il achète deux croissants et une brioche à 1,83 €, il dépense 0,47 € de plus que s’il achète quatre croissants.. Écris, en fonction de x , le prix

a.Écris, en fonction de x , le prix en euros de deux croissants et d'une

a.Écris, en fonction de x , le prix en euros de deux croissants et d'une

Le M-L-T-C est un modèle abstrait, qui peut décrire les trois modalités aléthique,épistémique et déontique de n’importe quelle langue naturelle et peut, pourquoi

Étant donné un tétraèdre ABCD, soient a, [3, y, S les coefficients barycentiques dont il faut affecter les som- mets pour que le barycentre soit le centre O de la sphère

Chaque année, la banque nous reverse 4% du capital de l’année précédente. On suppose que le placement initial est

[r]