Você está na página 1de 9

04/06/2016

Introdução
Cinemática inversa

{Ferramenta}

Introdução à Robótica ?
Cinemática inversa
Prof. Douglas G. Macharet
douglas.macharet@dcc.ufmg.br
? ?
{Base}

Introdução à Robótica - Cinemática inversa 2

Introdução Cinemática inversa


Cinemática inversa Dificuldades

 Como calcular os valores das variáveis de  Sistema de equações não-lineares


junta que produzirão a posição e orientação  As soluções podem não existir
desejadas do órgão terminal?  Múltiplas soluções são possíveis
 Dado o valor numérico de 𝑁0𝑇 encontrar os  Método de solução a ser utilizado
valores de 𝜃1 , 𝜃2 , … , 𝜃𝑁 (ou 𝑑1 , 𝑑2 , … , 𝑑𝑁 )
 Sistema de equações não-lineares

Introdução à Robótica - Cinemática inversa 3 Introdução à Robótica - Cinemática inversa 4

Cinemática inversa Cinemática inversa


Existência de soluções Existência de soluções

 Espaço de trabalho
 Volume definido pelos pontos alcançáveis
𝐿2
 Alcançável (reachable)
𝐿1
 Pontos alcançáveis com pelo menos uma orientação
 Hábil (dexterous)
 Pontos alcançáveis em todas orientações possíveis

Introdução à Robótica - Cinemática inversa 5 Introdução à Robótica - Cinemática inversa 6

1
04/06/2016

Cinemática inversa Cinemática inversa


Existência de soluções Existência de soluções (𝐿1 = 𝐿2 )

 Considerando 𝐿1 = 𝐿2
Espaço alcançável
 Espaço alcançável
 Círculo de raio 𝑅 = 𝐿1 + 𝐿2 = 2𝐿1
 Espaço hábil
 Um único ponto (a origem)

Espaço hábil

Introdução à Robótica - Cinemática inversa 7 Introdução à Robótica - Cinemática inversa 8

Cinemática inversa Cinemática inversa


Existência de soluções Existência de soluções (𝐿1 ≠ 𝐿2 )

 Considerando 𝐿1 ≠ 𝐿2
 Espaço alcançável Espaço alcançável
𝑟 = |𝐿1 − 𝐿2 |

 Coroa circular com 𝑟 = |𝐿1 − 𝐿2 | e 𝑅 = 𝐿1 + 𝐿2


 Dentro desse espaço apenas duas orientações são
possíveis. No limite, há apenas uma
 Espaço hábil
 Não existe! Não existe
espaço hábil! 𝑅 = 𝐿1 + 𝐿2

Introdução à Robótica - Cinemática inversa 9 Introdução à Robótica - Cinemática inversa 10

Cinemática inversa Cinemática inversa


Existência de soluções Existência de soluções

 Na prática, o espaço de trabalho alcançável  O espaço de trabalho do robô é limitado


é menor, pois as juntas possuem limites  Um manipulador com menos de 6 DoF não
 Considerando limites consegue alcançar posições e orientações
 Se 𝜃1 pudesse assumir todos os valores em arbitrárias no espaço 3D
[0∘ , 360∘ ], mas 0∘ ≤ 𝜃2 ≤ 180∘ , o espaço  Transformação do referencial da ferramenta
alcançável é o mesmo, porém apenas uma
 Independente da cinemática do manipulador
orientação será possível em cada ponto
 Qual é o referencial atingível mais próximo?

Introdução à Robótica - Cinemática inversa 11 Introdução à Robótica - Cinemática inversa 12

2
04/06/2016

Cinemática inversa Cinemática inversa


Existência de soluções Subespaço de manipulador para 𝑛 < 6

 O usuário pensa em termos de {𝑇}, mas  O espaço alcançável por um manipulador de


computacionalmente consideramos {𝑊} 𝑛 DoF (𝑛 < 6), é parte de um subespaço
 Dado um referencial alvo {𝐺}, calcula-se {𝑊}. com 𝑛 graus de liberdade
Verifica-se se a posição e orientação de {𝑊}  Ex: o subespaço de um manipulador planar com
encontram-se no espaço de trabalho. Caso 2 elos é um plano, mas o espaço de trabalho é
verdadeiro, existe pelo menos uma solução um subconjunto desse plano (𝐿1 + 𝐿2 ), para o
caso em que 𝐿1 = 𝐿2

Introdução à Robótica - Cinemática inversa 13 Introdução à Robótica - Cinemática inversa 14

Cinemática inversa Cinemática inversa


Subespaço de manipulador para 𝑛 < 6 Subespaço de manipulador para 𝑛 < 6

 Uma maneira de se especificar o subespaço  Geralmente, ao se definir um alvo para um


de um manipulador de 𝑛 DoF, é fornecer manipulador com 𝑛 DoF, utiliza-se 𝑛
uma expressão para o referencial do pulso parâmetros para especificar esse alvo
{𝑊} ou da ferramenta {𝑇}, em função das 𝑛  Entretanto, ao especificar um alvo com 6
variáveis que o localizam graus de liberdade, em geral, não é possível
 O subespaço é gerado ao assinalar a essas alcançá-lo com um manipulador com 𝑛 < 6
variáveis todos os valores possíveis

Introdução à Robótica - Cinemática inversa 15 Introdução à Robótica - Cinemática inversa 16

Cinemática inversa Cinemática inversa


Subespaço de manipulador para 𝑛 < 6 Múltiplas soluções

 Especificando alvos quando 𝑛 < 6  Um braço planar com 3 graus de liberdade


1. Dado um referencial alvo um alvo 𝑆
𝐺 𝑇, calcular  Apenas juntas de revolução
modificado 𝐺𝑆′𝑇 que pertence ao subespaço do  Elos de comprimento adequado e juntas com
manipulador e é o mais próximo do original uma boa faixa de trabalho
2. Calcular a cinemática inversa baseado em 𝐺𝑆′𝑇.  Todas as posições no espaço de trabalho são
Mas cuidado, essa solução ainda pode não alcançáveis com qualquer orientação
pertencer ao espaço de trabalho do robô  Grande espaço de trabalho hábil

Introdução à Robótica - Cinemática inversa 17 Introdução à Robótica - Cinemática inversa 18

3
04/06/2016

Cinemática inversa Cinemática inversa


Múltiplas soluções Múltiplas soluções

 Múltiplas soluções também é um problema


 Como escolher uma?
 Diferentes critérios podem ser utilizados
 Escolher a solução mais próxima
 Priorizar o movimento dos elos menores
 A posição do manipulador deve ser utilizada!

Introdução à Robótica - Cinemática inversa 19 Introdução à Robótica - Cinemática inversa 20

Cinemática inversa Cinemática inversa


Múltiplas soluções Múltiplas soluções

 A quantidade de soluções depende


 Do número de juntas
 Dos parâmetros do elo
 Por exemplo, 𝛼𝑖 , 𝑎𝑖 e 𝑑𝑖 , para juntas de revolução
 Dos limites de movimento das juntas

Introdução à Robótica - Cinemática inversa 21 Introdução à Robótica - Cinemática inversa 22

Cinemática inversa Cinemática inversa


Múltiplas soluções Múltiplas soluções

 PUMA 560
 Possui 8 diferentes soluções para certos alvos
 Devido a limitações das juntas, algumas devem
ser desconsideradas (inacessíveis)
 Variação nas últimas três juntas
𝜃4′ = 𝜃4 + 180∘
𝜃5′ = −𝜃5
𝜃6′ = 𝜃6 + 180∘
Introdução à Robótica - Cinemática inversa 23 Introdução à Robótica - Cinemática inversa 24

4
04/06/2016

Cinemática inversa Cinemática inversa


Múltiplas soluções Métodos de solução

 O número de soluções possíveis está  Não existem algoritmos gerais que resolvem
relacionado à quantidade de parâmetros de sistemas de equações não-lineares
elo que são diferentes de zero  Manipulador solucionável
 Comprimento de elo (𝑎𝑖 )  Variáveis de junta são determinadas por um
𝒂𝒊 Número de soluções algoritmo que calcula todos os conjuntos de
𝑎1 = 𝑎3 = 𝑎5 = 0 ≤4 variáveis associadas a uma posição e orientação
𝑎3 = 𝑎5 = 0 ≤8
𝑎3 = 0 ≤ 16
Todos 𝑎𝑖 ≠ 0 ≤16

Introdução à Robótica - Cinemática inversa 25 Introdução à Robótica - Cinemática inversa 26

Cinemática inversa Cinemática inversa


Métodos de solução Soluções numéricas vs. Soluções analíticas

 Soluções numéricas  Soluções numéricas


 Métodos de otimização  Métodos mais genéricos
 Computacionalmente custosos (iterativos)
 Soluções analíticas (fechadas)
 Resultado aproximado (precisão)
 Algébricas
 Soluções analíticas
 Geométricas
 Aplicável em problemas mais simples
 Inversão das equações de cinemática direta
 Resultado exato
Introdução à Robótica - Cinemática inversa 27 Introdução à Robótica - Cinemática inversa 28

Cinemática inversa Cinemática inversa


Soluções analíticas (fechadas) Soluções analíticas (fechadas)

 Soluções cujos métodos são baseados em  Todos sistemas com juntas de revolução ou
expressões analíticas ou na solução de um prismáticas, com um total de 6 DoF em uma
polinômio de grau menor ou igual a 4 única cadeia cinemática são solucionáveis
 Dois métodos básicos  Essa solução geral, entretanto, é numérica
 Algébricos  Em geral, manipuladores com vários eixos de
 Geométricos junta que se interceptam e/ou alguns 𝛼𝑖 = 0
 Soluções bem parecidas (diferença no foco) ou 𝛼𝑖 = ±90∘ , possuem solução fechada

Introdução à Robótica - Cinemática inversa 29 Introdução à Robótica - Cinemática inversa 30

5
04/06/2016

Cinemática inversa Cinemática inversa


Soluções analíticas (fechadas) Solução algébrica

 Para que um manipulador com 6 DoF tenha  A solução algébrica busca determinar a
solução fechada é suficiente que três eixos cinemática inversa a partir das equações de
adjacentes se interceptem em um ponto transformação e da descrição da posição e
 Quase todos manipuladores atendem orientação que se deseja alcançar
 Manipuladores industriais são projetados dessa
forma para terem uma solução fechada

Introdução à Robótica - Cinemática inversa 31 Introdução à Robótica - Cinemática inversa 32

Cinemática inversa Cinemática inversa


Solução algébrica (Exemplo PP) Solução algébrica (Exemplo PP)

 A cinemática direta e a inversa são triviais


para manipuladores com juntas prismáticas
𝑑2
x  d1
 Somente uma solução
y  d2
 Equações lineares
 Não envolve funções trigonométricas
 Por este motivo, a geometria é popular
 CNC, Gantry, Plotters, ...
𝑑1

Introdução à Robótica - Cinemática inversa 33 Introdução à Robótica - Cinemática inversa 34

Cinemática inversa Cinemática inversa


Solução algébrica (Exemplo RRR) Solução algébrica (Exemplo RRR)

 Considerando um manipulador planar


 Alvo representado por três valores: 𝑥, 𝑦 e ϕ
 A orientação no plano do Elo 3 é dada por ϕ
 Simplificação específica
c  s 0 x
c123  s123 0 L1c1  L2c12  s c 0 y
s c123 0 L1s1  L2s12  *c123 = cos(𝜃1 + 𝜃2 + 𝜃3 )
B
T   
B
T  0
T   123  W
0 0 1 0
 0 
W 3


0 1 0

 
 0 0 0 1  0 0 0 1

Introdução à Robótica - Cinemática inversa 35 Introdução à Robótica - Cinemática inversa 36

6
04/06/2016

Cinemática inversa Cinemática inversa


Solução algébrica (Exemplo RRR) Solução algébrica (Exemplo RRR)

c123  s123 0 L1c1  L2c12  c  s 0 x  Elevando ao quadrado e somando, temos:


s c123 0 L1s1  L2s12  s c 0 y
B
T  03T   123  B
T   
 0  0 0 0
W W
0 1 0 1
    𝑥 2 + 𝑦 2 = 𝐿21 + 𝐿22 + 2𝐿1 𝐿2 c2
 0 0 0 1  0 0 0 1

 Devem ser resolvidas para 𝜃1 , 𝜃2 e 𝜃3 :  considerando que


c  c123
s  s123 c12  c1c2  s1s2
x  L1c1  L2c12 s12  c1s2  s1c2
y  L1s1  L2s12
Introdução à Robótica - Cinemática inversa 37 Introdução à Robótica - Cinemática inversa 38

Cinemática inversa Cinemática inversa


Solução algébrica (Exemplo RRR) Solução algébrica (Exemplo RRR)

 Resolvendo para c2 , temos:  Assumindo o alvo no workspace, temos:


x  y L L
2 2 2 2
c2  1 2
s2   1  c 22
2 L1L2
 Para que exista uma solução, o lado direito  Logo, 𝜃2 pode ser obtido por
da equação deve possuir valor em [−1,1]
 A existência de solução seria verificada agora  2  atan2(s2 , c 2 )
 O ponto está além do alcance do manipulador

Introdução à Robótica - Cinemática inversa 39 Introdução à Robótica - Cinemática inversa 40

Cinemática inversa Cinemática inversa


Solução algébrica (Exemplo RRR) Solução geométrica

 Em seguida, deve-se resolver para 𝜃1  A abordagem geométrica envolve decompor


 Verificar Livro-Texto (Craig, Cap. 4, Pag. 111) o problema de geometria espacial do
𝑘1 = 𝐿1 + 𝐿2 c2
manipulador em problemas de geometria
𝜃1 = atan2 𝑦, 𝑥 − atan2(𝑘2 , 𝑘1 ) 𝑘2 = 𝐿2 s2 plana mais simples
 Finalmente, 𝜃3 será obtido a partir de  Para muitos manipuladores (em particular
quando 𝛼𝑖 = 0 ou 𝛼𝑖 = ±90∘ ), isso pode ser
𝜃1 + 𝜃2 + 𝜃3 = atan2(s𝜙 , c𝜙 ) = 𝜙 feito com certa facilidade

Introdução à Robótica - Cinemática inversa 41 Introdução à Robótica - Cinemática inversa 42

7
04/06/2016

Cinemática inversa Cinemática inversa


Solução geométrica (Exemplo RRR) Solução geométrica (Exemplo RRR)

 A figura a seguir mostra o triângulo formado


por 𝐿1 , 𝐿2 e a linha que une a origem do
sistema de referência {0} com a origem do
sistema de referência {3}
 As linhas pontilhadas representam a outra
configuração possível do triângulo que
levaria à mesma posição do sistema de
referência {3}

Introdução à Robótica - Cinemática inversa 43 Introdução à Robótica - Cinemática inversa 44

Cinemática inversa Cinemática inversa


Solução geométrica (Exemplo RRR) Solução geométrica (Exemplo RRR)

 Aplicando a lei dos cossenos, temos:  Para o triângulo existir, é necessário que a
distância para o alvo ( 𝑥 2 + 𝑦 2 ) seja menor
𝑥 2 + 𝑦 2 = 𝐿21 + 𝐿22 − 2𝐿1 𝐿2 cos(180 + 𝜃2 )
ou igual a 𝐿1 + 𝐿2
 Como cos 180 + 𝜃2 = −cos(𝜃2 ), tem-se  A existência de solução seria verificada agora
 A condição não é satisfeita se o alvo estiver fora
x 2  y 2  L12  L22 do alcance do manipulador
c2 
2 L1L2

Introdução à Robótica - Cinemática inversa 45 Introdução à Robótica - Cinemática inversa 46

Cinemática inversa Cinemática inversa


Solução geométrica (Exemplo RRR) Solução geométrica (Exemplo RRR)

 Resolvendo para 𝜃1 , calcula-se 𝛽, dado por  Para que a geometria da equação anterior
seja preservada, deve-se ter 0 ≤ 𝜓 ≤ 180∘
  atan2( y , x )  Consideração comum nesse tipo de solução
 E 𝜓, pela lei dos cossenos  Assim, 𝜃1 é dado por
𝜃1 = 𝛽 ± 𝜓
x 2  y 2  L12  L22
cos   onde o sinal “+” é utilizado quando 𝜃2 < 0, e
2 L1 x 2  y 2
o sinal “-” quando 𝜃2 > 0
Introdução à Robótica - Cinemática inversa 47 Introdução à Robótica - Cinemática inversa 48

8
04/06/2016

Cinemática inversa Cinemática inversa


Solução geométrica (Exemplo RRR) Solução geométrica (Exemplo RRR)

 Finalmente, 𝜃3 é obtido a partir de  Basta considerá-la inicialmente

𝜃1 + 𝜃2 + 𝜃3 = 𝜙 𝑦’

 E a posição da garra? x  x` L3 cos 


 Esse é o ponto onde ocorrerá a manipulação y  y ` L3 sin 

𝑥’

Introdução à Robótica - Cinemática inversa 49 Introdução à Robótica - Cinemática inversa 50

Você também pode gostar