Escolar Documentos
Profissional Documentos
Cultura Documentos
Cinemática inversa
IMPORTANTE - Verificação
21 de Maio
Controle em malha fechada de todos os eixos
Cinemática
• Cinemática direta
• Cinemática inversa
Cinemática
• Cinemática direta
• Cinemática inversa
– Solução fechada
• Geométrica
• Analítica
– Solução numérica
• Iterativa
– Outras
Soluções para a cinemática inversa
(mais comuns)
Y (x,y)
q2
q1
X
Solução geométrica: exemplo
q1 = ?
q2 = ?
r
y r2 = x2 + y2
α
r2 = a12 + a22 – 2.a1.a2.cosα
Fogira: http://www.dinamatica.com.br/2011/03/uma-deducao-grafica-da-lei-dos-cossenos.html
Solução geométrica: exemplo
q1 = ?
q2 = ?
r
α y r2 = x2 + y2
cos(q2) = -cos(α)
Solução geométrica: exemplo
a2.sen(q2)
a2.sen(q2)
a2 sen (q 2)
tan( )
a1 a2 cos(q 2)
a2 sen (q 2)
tan
1
ϐ a1 a2 cos(q 2)
Solução geométrica: exemplo
y
tan( )
x
1 y
tan
x
a2 sen (q 2)
tan
1
r a1 a2 cos(q 2)
y q1
ϐ
y 1 a2 sen (q 2)
q1 tan tan
1
γ x a1 a2 cos(q 2)
x
Solução geométrica: exemplo
x 2 y 2 a12 a22
cos(q 2)
2a1a 2
y 1 a2 sen (q 2)
q1 tan tan
1
x a1 a2 cos(q 2)
Solução geométrica: exemplo
x 2 y 2 a12 a22
cos(q 2)
2a1a 2
y 1 a2 sen (q 2)
q1 tan tan
1
x a1 a2 cos(q 2)
Figura adaptada de: http://www.mathwarehouse.com/trigonometry/graph-equation-cosine/graph-of-cosine-properties-pictures-examples.php
Solução geométrica: exemplo
Simetria do cosseno
-Duas soluções
-Ângulo positivo e negativo
x 2
y 2
a 2
a 2
q 2 cos
1 1 2
2a1a 2
y 1 a2 sen (q 2)
q1 tan tan
1
x a1 a2 cos(q 2)
q1
X
x 2
y 2
a 2
a 2
x 2
y 2
a 2
a 2
q 2 cos1 1 2
q 2 cos1 1 2
2a1a 2 2a1a 2
y 1 a2 sen (q 2) y 1 a2 sen (q 2)
1
q1 tan tan 1
q1 tan tan
x a1 a2 cos(q 2) x a1 a2 cos(q 2)
Solução analítica
• Calcular cinemática direta
• Isolar os ângulos nas equações da cinemática
direta
• Resolver para x,y,z, P, R,Y desejados
Solução analítica: exemplo
Y (x,y)
q2
q1
X
Solução analítica: exemplo
x = a2*cos(q1+q2) + a1*cos(q1)
y = a2*sin(q1+q2) + a1*sin(q1)
Solução analítica: exemplo
x = a2*cos(q1+q2) + a1*cos(q1)
y = a2*sin(q1+q2) + a1*sin(q1)
q1 = ?
q2 = ?
α
cos(q2) = C2
sen(q2) = S2
α
x = (a1+a2.C2)cos(q1)-a2.S2sin(q1)
y = (a1 + a2C2)sen(q1) + a2S2cos(q1)
a.cos(t) + bsen(t) = c
• Desvantagem
– Difícil de obter dependendo do número de juntas
Toolbox
• SerialLink.ikine3
– http://www.petercorke.com/RTB/robot.pdf
– Página 233
– q = R.ikine3(T) is the joint coordinates
corresponding to the robot end-effector pose T
represented by the homogenenous transform. This
is a analytic solution for a 3-axis robot (such as the
first three joints of a robot like the Puma 560)
Toolbox
• mdl_puma560
• p560.plot(qz)
• T = transl(0.6, 0.1, 0) * rpy2tr(0, 180, 0, ‘deg’)
• trplot(T)
• qu = p560.ikine3(T) # 3 graus de liberdade sem pulso
• qu = p560.ikine6s(T) #3 graus de liberdade + 3 no pulso
• qu = p560.ikine6s(T, ‘r’) #s = pulso esférico
• qu = p560.ikine6s(T, ‘d’)
• p560.fkine(qu)
• p560.plot(qu) / p560.plot3d(qu)
Solução numérica
• Solução na forma fechada
– Pode não existir
– Pode ser muito complicada
x,y,z, R, P, Y θ1 θ2 θ3 θ4 θ5 θ6
Solução numérica
x,y,z, R, P, Y θ1 θ2 θ3 θ4 θ5 θ6
x' = -a1.q1’.sin(q1)-a2.(q1’+q2’).sin(q1+q2)
y' = a1.q1’.cos(q1)+a2.(q1’+q2’).cos(q1+q2)
Jacobiana:
- Equivalente matricial da derivada
- Função dos ângulos das juntas
- Relação linear das velocidades das juntas e a velocidade da ponta do robô
Inversa da Jacobiana
- Determina a velocidade das juntas com base na velocidade desejada do TCP
(x,y)
q2=0
q1
X
Matriz Jacobiana
(x,y)
q2=0
Singularidade
q1
X
Matriz Jacobiana
Movimento
Y impossível
(x,y)
Equivalente a um robô
com um grau de liberdade
q1
X
Matriz Jacobiana
Dificuldade de movimento
Y
(x,y)
q2 próximo de 0
Determinante pequeno
Condition number da matriz grande
cond()
q1
X
Cinemática inversa nos projetos
• Tentar encontrar solução analítica ou
geométrica
• Definir parâmetros de Denavit-Hartenberg
• Criar modelo do robô no Matlab
– Ver aulas anteriores
• Executar as sub-rotinas de cinemática inversa
• Verificar se é consistente com a cinemática
direta
Créditos e leitura
• Aula baseada em vídeo do curso “Introduction
to Robotics” do Prof. Peter Korke
• Robotics Toolbox manual (2015)
– http://www.petercorke.com/RTB/robot.pdf
• Using the Robotics Toolbox with a real robot
– http://petercorke.com/doc/robotarm.pdf
• Livro Peter Corke
– Capítulo 7