Você está na página 1de 25

CINEMTICA INVERSA

Aline Aparecida de Pina


Rodrigo Morante Blanco
Objetivos
Cinemtica direta
Introduo
Representao de Denavit-Hartenberg (D-H)

Cinemtica inversa
Introduo
Clculo do jacobiano
Inversa generalizada
Transposta do jacobiano
Cinemtica direta (1/5)
A cinemtica direta permite determinar a localizao do
extremo de um membro se conhecidos os valores das
coordenadas articulares.
x
y
1
r
1
u
Coordenadas articulares: r, u
Cinemtica direta (1/5)
A cinemtica direta permite determinar a localizao do
extremo de um membro se conhecidos os valores das
coordenadas articulares.
x
y
1
r
1
u
Coordenadas articulares: r, u
) , ( y x
Mtodo geomtrico:
1 1
1 1
sen
cos
u =
u =
r y
r x
Cinemtica direta (1/5)
A cinemtica direta permite determinar a localizao do
extremo de um membro se conhecidos os valores das
coordenadas articulares.
2
u
x
y
1
r
1
u
Coordenadas articulares: r, u
Mtodo geomtrico:
2
r
) , ( y x
) sen( sen
) cos( cos
2 1 2 1 1
2 1 2 1 1
u + u + u =
u + u + u =
r r y
r r x
Cinemtica direta (1/5)
A cinemtica direta permite determinar a localizao do
extremo de um membro se conhecidos os valores das
coordenadas articulares.
2
u
x
y
1
r
1
u
Coordenadas articulares: r, u
Mtodo geomtrico:
2
r
) , ( y x
) sen( sen
) cos( cos
2 1 2 1 1
2 1 2 1 1
u + u + u =
u + u + u =
r r y
r r x
Esta abordagem no sistemtica
Cinemtica direta (2/5)
Representao de Denavit-Hartenberg (D-H):
(
(
(

1
0
0
x
y
Cinemtica direta (2/5)
Representao de Denavit-Hartenberg (D-H):
(
(
(

(
(
(

1
0
0
1 0 0
0 1 0
0 1
2
r
x
y
2
r
Cinemtica direta (2/5)
Representao de Denavit-Hartenberg (D-H):
(
(
(

(
(
(

(
(
(

u u
u u
1
0
0
1 0 0
0 1 0
0 1
1 0 0
0 c s
0 s c
2
2 2
2 2
r
x
y
2
u
2
r
Cinemtica direta (2/5)
Representao de Denavit-Hartenberg (D-H):
(
(
(

(
(
(

(
(
(

u u
u u
(
(
(

1
0
0
1 0 0
0 1 0
0 1
1 0 0
0 c s
0 s c
1 0 0
0 1 0
0 1
2
2 2
2 2 1
r r
x
y
2
u
2
r
1
r
(
(
(

(
(
(

(
(
(

u u
u u
(
(
(

(
(
(

u u
u u
=
(
(
(

1
0
0
1 0 0
0 1 0
0 1
1 0 0
0 c s
0 s c
1 0 0
0 1 0
0 1
1 0 0
0 c s
0 s c
1
2
1
2
2 2
2 2
1
0
1
1 1
1 1

A
r
A
r
y
x
2
r
2
u
) , ( y x
2
r
2
u
) , ( y x
x
y
1
r
1
u
Cinemtica direta (2/5)
Representao de Denavit-Hartenberg (D-H):
Cinemtica direta (2/5)
Representao de Denavit-Hartenberg (D-H):
(
(
(

(
(
(

u + u + u u + u u + u
u + u + u u + u u + u
=
(
(
(

1
0
0
1 0 0
) s( s ) c( ) s(
) c( c ) s( ) c(
1
2 1 2 1 1 2 1 2 1
2 1 2 1 1 2 1 2 1
r r
r r
y
x
2
r
2
u
) , ( y x
2
r
2
u
) , ( y x
x
y
1
r
1
u
De esta forma possvel descrever as rotaes e
translaes de um elo do sistema com respeito ao elo
anterior. A extenso a 3D imediata (acrescentado uma
linha e uma coluna). Por exemplo:
(
(
(
(

u u
u u
1 0 0 0
0 c s 0
0 s c 0
0 0 0 1
(
(
(
(

1 0 0 0
1 0 0
0 0 1 0
0 0 0 1
r
Rotao ao redor do eixo x:
Translao paralela ao eixo z:
Cinemtica direta (3/5)
Representao de Denavit-Hartenberg (D-H):
Cinemtica direta (4/5)
Representao de Denavit-Hartenberg (D-H):
(
(
(
(

(
(
(
(

u + u + u u + u u + u
u + u + u u + u u + u
=
(
(
(
(

1
0
0
0
1 0 0 0
0 1 0 0
) s( s 0 ) c( ) s(
) c( c 0 ) s( ) c(
1
2 1 2 1 1 2 1 2 1
2 1 2 1 1 2 1 2 1
r r
r r
z
y
x
O equivalente em 3D:
(
(
(

(
(
(

u + u + u u + u u + u
u + u + u u + u u + u
=
(
(
(

1
0
0
1 0 0
) s( s ) c( ) s(
) c( c ) s( ) c(
1
2 1 2 1 1 2 1 2 1
2 1 2 1 1 2 1 2 1
r r
r r
y
x
Em 2D:
Cinemtica direta (5/5)
Representao de Denavit-Hartenberg (D-H):
Utilizando matrizes de transformao homognea:
Cada elo do sistema tem associado um sistema de
referncia
possvel representar as translaes e rotaes
relativas entre vrios elos (ou entre todos)
A matriz representa a posio e orientao relativa
entre os sistemas associados a dois elos sucessivos
i
i
A
1
A representao total do sistema que serve de exemplo:
2
1
1
0
2
0
A A A =
Esta abordagem sistemtica
Cinemtica inversa (1/9)
A cinemtica inversa procura determinar os valores das
coordenadas articulares se conhecida a localizao do
extremo do membro.
Assim como no caso da cinemtica direta, pode-se aplicar
mtodos geomtricos:
2 2
), , ( 2 atan
sen
cos
y x r x y
r y
r x
+ = = u
)
`

u =
u =
Para casos mais complexos, resulta muito difcil aplicar
este mtodo.
Cinemtica inversa (2/9)
Da cinemtica direta temos:
x q T q f X


) ( ) ( = =
onde q o vetor das coordenadas articulares:
) , , , , (
1 1 n n
r r q u u =
O problema da cinemtica inversa consiste em encontrar
a inversa da tal que f

) (
1
X f q

=
Devido aos senos & cosenos das rotaes, no linear
em q. Por isso, sua inversa pode no existir ou no ser
uma funo elementar (arctan, cos,).
f

Cinemtica inversa (3/9)


A idia utilizar uma aproximao linear da funo e
achar sua inversa:
) )( ( ) ( ) (
0 0 0
q q q J q f q f + =

(Taylor)
onde o jacobiano da funo no ponto e a
aproximao anterior vlida perto desse ponto.
) (
0
q J
0
q
x
y
Aproximada
Exata
Cinemtica inversa (4/9)
Clculo do jacobiano:
onde s depende de e s depende de
pela regra do produto as derivadas parciais so
calculadas como sendo:
i
R
i
u
i
T ,
i
r
Por isso necessrio derivar matrizes de rotao e
translao.
. ) (
, ) (
1 1
1 1
x T R T R T R q f
x T R T R T R q f
n n i i r
n n i i
i
i

'
= c
'
= c
u
x T R T R q f
n n

1 1
) ( =
Precisamos calcular o jacobiano e logo invert-lo. As
colunas do jacobiano so as derivadas parciais de no
ponto . Como da representao de D-H temos
f

0
q
Cinemtica inversa (5/9)
Clculo do jacobiano:
Derivada de uma matriz de rotao R:
T T T T T T
R R R R R R R R RR ) ( ) (
'
=
'
=
'
+
'
= 0 1
Ento a velocidade angular uma matriz
antissimtrica, que est relacionada com o eixo de rotao
T
R R
'
= O
) , , (
z y x
e e e = e

via
(
(
(
(

e e
e e
e e
= O
0 0 0 0
0 0
0 0
0 0
x y
x z
y z
Finalmente, . R R R R R
T
O =
'
=
'
Cinemtica inversa (6/9)
Clculo do jacobiano:
Derivada de uma matriz de translao T:
Por exemplo:
(
(
(
(

=
'

(
(
(
(

=
0 0 0 0
0 0 0 0
1 0 0 0
0 0 0 0
1 0 0 0
0 1 0 0
0 1 0
0 0 0 1
T
r
T
Cinemtica inversa (7/9)
Clculo do jacobiano:
(
(
(

(
(
(

(
(
(

u u
u u
(
(
(

(
(
(

u u
u u
=
(
(
(

1
0
0
1 0 0
0 1 0
0 1
1 0 0
0 c s
0 s c
1 0 0
0 1 0
0 1
1 0 0
0 c s
0 s c
1
2
2 2
2 2 1
1 1
1 1
r r
y
x
Retomando nosso exemplo, se
ento o jacobiano resulta ser:
(
(
(

u + u u + u u + u + u u
u + u u + u u u + u u
=
0 0 0 0
) c( ) s( c ) c( s
) s( ) c( s ) s( c
2 1 2 2 1 1 1 2 1 2 1
2 1 2 2 1 1 1 2 1 2 1
r r r
r r r
J
O vetor das coordenadas articulares
) , , , (
2 2 1 1
u u = r r q
Cinemtica inversa (8/9)
x J q A = A
1
A inversa do jacobiano tal que, dada uma pequena
variao da posio do extremo, possvel calcular a
variao nas coordenadas articulares:
Em geral, no existe a inversa do jacobiano, mas sim uma
inversa generalizada B, que cumpre alguma das
condies de Moore-Penrose:
BJ BJ JB JB
B BJB J JBJ
T T
= =
= =
) ( . 4 ) ( . 3
. 2 . 1
Inversa generalizada:
Achar a inversa generalizada um processo lento e que
no lida adequadamente com singularidades.
Se B cumpre todas as quatro condies, dita pseudo-
inversa, e nica:
+
= J B
Cinemtica inversa (9/9)
Transposta do jacobiano:
x J q
T
A = A
Em lugar de utilizar a pseudo-inversa do jacobiano, pode-se
utilizar a transposta:
muito mais barato e ainda por cima evita problemas com
singularidades.
Esta aproximao motivada por consideraes fsicas
(trabalho virtual).
Para resolver certos problemas de escala, pode-se
introduzir um fator de escala h, e iterar at atingir a
convergncia:
) ( ) 1 ( i T i
x J h q A = A
+
Referncias
Cinemtica Inversa:
Fast Numerical Methods for Inverse Kinematics, Bill Baxter
Cinemtica del robot, Amador
Matrizes em geral:
Matrix Computations, Gene H. Golub & Charles F. Van Loan

Você também pode gostar