23

Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4

˜ a` Robotica ´ Introduc¸ao Industrial – p. 1/23

Cinemática Direta • Dado: variáveis

Author Angélica Cristiana Faria Corte-Real

76 downloads 14 Views 360KB Size
Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4

˜ a` Robotica ´ Introduc¸ao Industrial – p. 1/23

Cinemática Direta • Dado: variáveis das juntas (ângulos ou deslocamentos) • Procurado: posição e orientação do efetuador • Transformação homogênea entre os sistemas de coordenadas da base (0) e do efetuador (n)

T0n

=

"

R0n 0

dn0 1

#

=

"

n0 0

s0 0

a0 0

dn0 1

#



  = 

nx ny nz 0

sx sy sz 0

ax ay az 0

dx dy dz 1

    

˜ a` Robotica ´ Introduc¸ao Industrial – p. 2/23

Representação Denavit-Hartenberg • Defina o eixo zi ao longo do eixo da junta i + 1. O eixo zn é definido na direção do eixo zn−1 se a junta n é rotacional. • Defina O0 no eixo z0 e x0 convenientemente. • Para i = 1, · · · , n − 1: • Posicionar a origem Oi onde a normal comum a zi e zi−1 intersecta zi . Se zi intersecta zi−1 posicionar Oi nesta intersecção. Se zi e zi−1 são paralelos, posicionar Oi na junta i + 1. • Defina xi ao longo da normal comum a zi e zi−1 com direção da junta i para i + 1, ou na direção normal ao plano zi−1 − zi se zi−1 e zi se intersectam. • Defina On convenientemente ao longo do eixo zn (no centro da garra) e xn normal ao eixo zn − 1. • Escolha yi para completar a “regra da mão direita” ˜ a` Robotica ´ Introduc¸ao Industrial – p. 3/23

Representação Denavit-Hartenberg • Criar uma tabela dos parâmetros dos elos, ai , di , αi e θi . • ai = distância ao longo de xi da intersecção dos eixos xi e zi−1 até Oi . • di = distância ao longo zi−1 de Oi−1 até a intersecção dos eixos xi e zi−1 . di é variável se a junta i é prismática. • αi = o ângulo entre zi−1 e zi medido em torno de xi . • θi = o ângulo entre xi−1 e xi medido em torno de zi−1 . θi é variável se a junta i é rotativa. i • Calcular as matrizes de transformação homogêneas Hi−1 substituindo os parâmetros acima em (1). n • Calcular T0n = H01 · · · Hn−1 .

˜ a` Robotica ´ Introduc¸ao Industrial – p. 4/23

Representação Denavit-Hartenberg • Transformação homogênea entre os sistemas de coordenadas i e i − 1

(1)

i Hi−1



  = 

cθi sθ i 0 0

−sθi cαi cθi cαi sα i 0

sθ i sα i −cθi sαi cαi 0

ai cθi ai sθi di 1

    

sendo θi , ai , di , αi parâmetros do elo i e junta i.

˜ a` Robotica ´ Introduc¸ao Industrial – p. 5/23

Exemplo • Considere um manipulador planar de dois elos.

˜ a` Robotica ´ Introduc¸ao Industrial – p. 6/23

Exemplo • Parâmetros de D-H:

Elo 1 2

ai a1 a2

αi 0 0

di 0 0

θi θ1 θ2

• Matrizes homogêneas 

  H01 =  

c1 s1 0 0

−s1 c1 0 0

0 0 1 0

a1 c1 a1 s1 0 1

    



  H12 =  

c2 s2 0 0

−s2 c2 0 0

0 a2 c2 0 a2 s2 1 0 0 1

    

˜ a` Robotica ´ Introduc¸ao Industrial – p. 7/23

Exemplo • Matriz de tranformação homogênea T02 : 

  T02 = H01 H12 =  

c12 s12 0 0

−s12 c12 0 0

0 a1 c1 + a2 c12 0 a1 s1 + a2 s12 1 0 0 1

    

• As seguinte relações trigonométricas são utilizadas: c12 = c1 c2 − s1 s2 e s12 = s1 c2 + s2 c1 . • Posição da origem O2 : dx dy

= a1 c1 + a2 c12 = a1 s1 + a2 s12

• Orientação: φ = θ1 + θ2 . ˜ a` Robotica ´ Introduc¸ao Industrial – p. 8/23

Espaço das juntas e Espaço das posições e orientações 

  • Espaço das juntas: q =   

q1 q2 .. . qn

     

(

qi = θi , para junta rotacional qi = di , para junta prismtica 

 " #   n  d0 • Espaço das posições e orientações: x = =  Φ    • Cinemática direta: x = f(q)

dx dy dz φ θ ψ

         

˜ a` Robotica ´ Introduc¸ao Industrial – p. 9/23

Cinemática Inversa • Dado: posição e orientação do efetuador • Procurado: variáveis das juntas (ângulos ou deslocamentos) • Funções não lineares • Múltiplas soluções • Pode ser que não existam soluções admissíveis. • Soluções analíticas • + pouco tempo de cálculo • − aplicáveis para um único tipo de robô • − não existe procedimento padrão • Soluções numéricas iterativas • + aplicáveis para robôs diferentes • − não apropriadas para aplicações em tempo real • − problemas de convergência nas proximidades de singularidades ˜ a` Robotica ´ Introduc¸ao Industrial – p. 10/23

Exemplo • Considere o manipulador de dois elos dx dy

= a1 c1 + a2 c12 = a1 s1 + a2 s12

• Elevando ao quadrado as duas equações e somando d2x + d2y = a21 + a22 + 2a1 a2 c2 • Então d2x + d2y − a21 − a22 c2 = 2a1 a2 • Existência de solução: −1 ≤ c2 ≤ 1 ⇒ fora do espaço de trabalho

˜ a` Robotica ´ Introduc¸ao Industrial – p. 11/23

Exemplo

q s2 = ± 1 − c22 • O sinal está relacionado com as duas possibilidades de valor para θ2 θ2 = atan2(s2 , c2 )

 indef inido para n = d = 0     ◦  90 para n > 0 e d = 0     ◦   −90 para n < 0 e d = 0 γ = atan2(n, d) = 0◦ ≤ γ < 90◦ para n ≥ 0 e d > 0   ◦ ◦  90 ≤ γ < 180 para n ≥ 0 e d < 0     ◦ ◦  −180 ≤ γ < −90 para n ≤ 0 e d < 0    −90◦ ≤ γ < 0◦ para n ≤ 0 e d > 0

˜ a` Robotica ´ Introduc¸ao Industrial – p. 12/23

Exemplo • Substituindo θ2 nas equações s1 c1 • Portanto

=

(a1 + a2 c2 )dy − a2 s2 dx d2x + d2y

=

(a1 + a2 c2 )dx + a2 s2 dy d2x + d2y

θ1 = atan2(s1 , c1 )

• Se a orientação, φ = θ1 + θ2 , é dada ⇒ única solução

˜ a` Robotica ´ Introduc¸ao Industrial – p. 13/23

Manipuladores de 6 gdl’s com punho esférico • Eixos do punho se intersectam num único ponto • Posição e orientação dados por: dn0 e R = [n0 s0 a0 ] • Os problemas de posição e orientação podem ser desacoplados • Solução: • Calcule a posição do punho: dp0 • Resolva a cinemática inversa para (q1 , q2 , q3 ) • Calcule R03 • Calcule R36 = (R03 )T R • Resolva a cinemática inversa para a orientação, (q4 , q5 , q6 ), determinando os ângulos de Euler com relação ao sistema de coordenadas O3 x3 y3 z3 .

˜ a` Robotica ´ Introduc¸ao Industrial – p. 14/23

Ângulos de Euler • (φ, θ, ψ) - três variáveis idependentes. • Rotação em torno de z0 pelo ângulo φ ′

• Rotação em torno de y0 pelo ângulo θ ′′

• Rotação em torno de z0 pelo ângulo ψ • Matriz de rotação

Rz0 ,φ Ry′ ,θ Rz ′′ ,ψ 0

0



c φ c θ c ψ − sφ sψ  =  sφ c θ c ψ + c φ sψ −sθ cψ 

r11  R =  r21 r31

r12 r22 r32

−cφ cθ sψ − sφ cψ −sφ cθ sψ + cφ cψ sθ sψ



c φ sθ  sφ sθ  cθ



r13  r23  r33

˜ a` Robotica ´ Introduc¸ao Industrial – p. 15/23

Ângulos de Euler • Se r13 6= 0 e r23 6= 0. φ θ ψ

= atan2(r23 , r13 ) q 2 + r2 , r ) = atan2( r13 23 33 = atan2(r32 , −r31 )

• O ângulo θ é limitado a (0, π). Se sθ = 0, ou seja, θ = 0 ou π , é possível determinar somente a soma ou diferença entre os ângulos φ e ψ .

˜ a` Robotica ´ Introduc¸ao Industrial – p. 16/23

Exemplo: Stanford • dp0 = dn0 − d6 a

˜ a` Robotica ´ Introduc¸ao Industrial – p. 17/23

Exemplo: Stanford 



dpx  • dp0 =  dp  y  dpz y0

z0

dpy

dpz d3 T2

s

s

r E

d1 d2

D

T1 dpx

x0 ˜ a` Robotica ´ Introduc¸ao Industrial – p. 18/23

Exemplo: Stanford • Sendo r 2 = dp2x + dp2y β = acos(d2 /r) α = atan2(dpy , dpx ) θ1 = α − β • Cálculo de θ2 s = sen(β)r θ2 = atan2(dpz − d1 , s) • A variável d3 é dada por: p d3 = (dpz − d1 )2 + s2

˜ a` Robotica ´ Introduc¸ao Industrial – p. 19/23

Cinemática da velocidade • Relação entre as velocidades das juntas e velocidades (linear e angular) do efetuador • Matriz Jacobiana geométrica d˙ n0 = Jd (q)q˙ w0 = Jw (q)q˙ • Sendo Jd (q) e Jw (q) matrizes 3 × n. Ainda v=

"

d˙ n0 w0

#

=

"

Jd (q) Jw (q)

#

q˙ = J(q)q˙

• Sendo J(q) uma matriz 6 × n.

˜ a` Robotica ´ Introduc¸ao Industrial – p. 20/23

Cinemática da velocidade • Matriz Jacobiana analítica d˙ n0

∂dn0 = Jd (q)q˙ = q˙ ∂q

˙ = JΦ (q)q˙ = ∂Φ q˙ Φ ∂q • Assim x˙ =

"

d˙ n0 ˙ Φ

#

=

"

Jd (q) JΦ (q)

#

q˙ = JA (q)q˙

˜ a` Robotica ´ Introduc¸ao Industrial – p. 21/23

Exemplo: Jacobiana analítica • Manipulador com dois elos 







dx a1 c1 + a2 c12     x =  dy  =  a1 s1 + a2 s12  φ θ1 + θ2 d˙x −a1 s1 θ˙1 − a2 s12 (θ˙1 + θ˙2 )     x˙ =  d˙y  =  a1 c1 θ˙1 + a2 c12 (θ˙1 + θ˙2 )  φ˙ θ˙1 + θ˙2 





Jd (q) JΦ (q)

#



• Matriz Jacobiana

JA (q) =

"



−a1 s1 − a2 s12  =  a1 c1 + a2 c12 1



−a2 s12  a2 c12  1 ˜ a` Robotica ´ Introduc¸ao Industrial – p. 22/23

Cinemática inversa da posição via matriz Jacobiana • Cinemática inversa da velocidade q˙ = J(q)−1 v • Cálculo das variáveis das juntas q=

Z

t

q(T ˙ )dT + q0 T =0

• Usando a integração de Euler q(tk+1 ) = q(tk ) + q(t ˙ k )∆t q(tk+1 ) = q(tk ) + J(q(tk ))−1 v(tk )∆t • A matriz Jacobiana precisa ser invertível e q0 precisa ser conhecida.

˜ a` Robotica ´ Introduc¸ao Industrial – p. 23/23

Helpful Social

Copyright © 2025 ELIBRARY.TIPS - All rights reserved.