Você está na página 1de 25

CINEMTICA INVERSA

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.

Coordenadas articulares: r,

r1

1
x

Cinemtica direta (1/5)


A cinemtica direta permite determinar a localizao do extremo de um membro se conhecidos os valores das coordenadas articulares. y Coordenadas articulares: r, Mtodo geomtrico: x = r1 cos 1 y = r1 sen 1
r1
( x, y )
x

Cinemtica direta (1/5)


A cinemtica direta permite determinar a localizao do extremo de um membro se conhecidos os valores das coordenadas articulares. y
( x, y )

Coordenadas articulares: r, Mtodo geomtrico: x = r1 cos 1 + r2 cos( 1 + 2 ) y = r1 sen 1 + r2 sen( 1 + 2 )

r2 r1

1
x

Cinemtica direta (1/5)


A cinemtica direta permite determinar a localizao do extremo de um membro se conhecidos os valores das coordenadas articulares. y
( x, y )

Coordenadas articulares: r, Mtodo geomtrico: x = r1 cos 1 + r2 cos( 1 + 2 ) y = r1 sen 1 + r2 sen( 1 + 2 )

r2 r1

1
x

Esta abordagem no sistemtica

Cinemtica direta (2/5)


Representao de Denavit-Hartenberg (D-H):
0 0 1

Cinemtica direta (2/5)


Representao de Denavit-Hartenberg (D-H):
1 0 r2 0 0 1 0 0 0 0 1 1

r2
x

Cinemtica direta (2/5)


Representao de Denavit-Hartenberg (D-H):
c 2 s 2 0 s 2 c 2 0 0 1 0 r2 0 0 0 1 0 0 1 0 0 1 1

r2 2
x

Cinemtica direta (2/5)


Representao de Denavit-Hartenberg (D-H):
1 0 r1 c 2 0 1 0 s 2 0 0 1 0 s 2 c 2 0 0 1 0 r2 0 0 0 1 0 0 1 0 0 1 1

r2 r1 2
x

Cinemtica direta (2/5)


Representao de Denavit-Hartenberg (D-H):
x c 1 s 1 0 1 0 r1 c 2 s 2 0 1 0 r2 0 y = s c 1 0 0 1 0 s 2 c 2 0 0 1 0 0 1 0 1 0 0 1 0 1 1 0 4444 244444 0 444 21 0 444 1 4 0 3 1 4 3 14 4 4 0 1 A1 A2 y
( x, y )

r2 r1

1
x

Cinemtica direta (2/5)


Representao de Denavit-Hartenberg (D-H):
x c(1 + 2 ) s(1 + 2 ) r1 c 1 + r2 c(1 + 2 ) 0 y = s( + ) c( + ) r s + r s( + ) 0 2 1 2 1 1 2 1 2 1 0 0 1 1 1

y
( x, y )

r2 r1

1
x

Cinemtica direta (3/5)


Representao de Denavit-Hartenberg (D-H): 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: 0 1 0 0 c s 0 s c 0 0 0 0 0 0 1 0 0 0 1 r 0 0 1 0 0 0 1

Rotao ao redor do eixo x:

1 0 Translao paralela ao eixo z: 0 0

Cinemtica direta (4/5)


Representao de Denavit-Hartenberg (D-H): Em 2D:
x c(1 + 2 ) s(1 + 2 ) r1 c 1 + r2 c(1 + 2 ) 0 y = s( + ) c( + ) r s + r s( + ) 0 2 1 2 1 1 2 1 2 1 0 0 1 1 1

O equivalente em 3D: x c(1 + 2 ) s(1 + 2 ) y s( + ) c( + ) 2 1 2 = 1 0 0 z 1 0 0 0 r1 c 1 + r2 c(1 + 2 ) 0 0 r1 s 1 + r2 s(1 + 2 ) 0 1 0 0 1 0 1

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 i 1 A i representa a posio e orientao relativa entre os sistemas associados a dois elos sucessivos A representao total do sistema que serve de exemplo:
0

A 2 = 0A1 1 A 2

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: x = r cos = atan2( y , x ), r = x 2 + y 2 y = r sen Para casos mais complexos, resulta muito difcil aplicar este mtodo.

Cinemtica inversa (2/9)


Da cinemtica direta temos: r r r X = f (q ) = T (q ) x onde q o vetor das coordenadas articulares:
q = (r1, 1,K, rn , n )

O problema darcinemtica inversa consiste em encontrar a inversa da f tal que r 1 r q = f (X) r Devido aos senos & cosenos das rotaes, f no linear em q. Por isso, sua inversa pode no existir ou no ser uma funo elementar (arctan, cos,).

Cinemtica inversa (3/9)


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

onde J (q0 ) o jacobiano da funo no ponto q0 e a aproximao anterior vlida perto desse ponto. y

Aproximada Exata

Cinemtica inversa (4/9)


Clculo do jacobiano:

Precisamos calcular o jacobiano e logo invert-lo. r As colunas do jacobiano so as derivadas parciais de f no ponto q0. Como da representao de D-H temos r r f (q ) = R1T1 LRnTn x onde s Ri depende de i e s Ti depende de ri , pela regra do produto as derivadas parciais so calculadas como sendo: r r f (q ) = R1T1 LRiTi LRnTn x, r r r f (q ) = R1T1 L RiTi LRnTn x.
i i

Por isso necessrio derivar matrizes de rotao e translao.

Cinemtica inversa (5/9)


Clculo do jacobiano: Derivada de uma matriz de rotao R:
RR T = 1 R R T + R (R )T = 0 R R T = (R R T )T

Ento a velocidade angular = R R T uma matriz antissimtrica, que est relacionada com o eixo de rotao r = ( x , y , z ) via z y 0 0 x 0 0 = z 0 0 y x 0 0 0 0 Finalmente, R = R R T R = R.

Cinemtica inversa (6/9)


Clculo do jacobiano: Derivada de uma matriz de translao T:

Por exemplo: 1 0 T = 0 0 0 1 0 0 0 0 1 0 0 r 0 1 0 0 T = 0 0 0 0 0 0 0 0 0 0 0 1 0 0

Cinemtica inversa (7/9)


Clculo do jacobiano:

Retomando nosso exemplo, se


x c 1 y = s 1 1 0 s 1 0 1 0 r1 c 2 c 1 0 0 1 0 s 2 0 1 0 0 1 0 s 2 c 2 0 0 1 0 r2 0 0 0 1 0 0 1 0 0 1 1

ento o jacobiano resulta ser:


c 1 J = s 1 0 r2 s(1 + 2 ) r1 s 1 c(1 + 2 ) r2 s(1 + 2 ) r2 c(1 + 2 ) + r1 c 1 s(1 + 2 ) r2 c(1 + 2 ) 0 0 0

O vetor das coordenadas articulares q = (r1, 1, r2 , 2 )

Cinemtica inversa (8/9)


Inversa generalizada: A inversa do jacobiano tal que, dada uma pequena variao da posio do extremo, possvel calcular a variao nas coordenadas articulares: q = J 1 x Em geral, no existe a inversa do jacobiano, mas sim uma inversa generalizada B, que cumpre alguma das condies de Moore-Penrose: 1. JBJ = J 2. BJB = B 3. (JB )T = JB 4. (BJ )T = BJ

Se B cumpre todas as quatro condies, dita pseudoinversa, e nica: B = J + Achar a inversa generalizada um processo lento e que no lida adequadamente com singularidades.

Cinemtica inversa (9/9)


Transposta do jacobiano:

Em lugar de utilizar a pseudo-inversa do jacobiano, pode-se utilizar a transposta: q = J T x 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: q ( i +1) = h J T x ( i )

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