introdução à robótica industrial · introdução à robótica industrial adriano a. g. siqueira...

23
Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc ¸ ˜ ao ` a Rob ´ otica Industrial – p. 1/23

Upload: phunganh

Post on 10-Nov-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Introdução à Robótica Industrial

Adriano A. G. Siqueira

Aula 4

Introducao a Robotica Industrial – p. 1/23

Page 2: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica 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) edo efetuador (n)

Tn0 =

[

Rn0 dn0

0 1

]

=

[

n0 s0 a0 dn0

0 0 0 1

]

=

nx sx ax dx

ny sy ay dy

nz sz az dz

0 0 0 1

Introducao a Robotica Industrial – p. 2/23

Page 3: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Representação Denavit-Hartenberg

• Defina o eixozi ao longo do eixo da juntai+ 1. O eixozn é definido nadireção do eixozn−1 se a juntan é rotacional.

• DefinaO0 no eixoz0 ex0 convenientemente.

• Parai = 1, · · · , n− 1:

• Posicionar a origemOi onde a normal comum azi e zi−1 intersectazi.Sezi intersectazi−1 posicionarOi nesta intersecção. Sezi e zi−1 sãoparalelos, posicionarOi na juntai+ 1.

• Definaxi ao longo da normal comum azi e zi−1 com direção da juntaiparai+ 1, ou na direção normal ao planozi−1 − zi sezi−1 e zi seintersectam.

• DefinaOn convenientemente ao longo do eixozn (no centro da garra) exnnormal ao eixozn − 1.

• Escolhayi para completar a “regra da mão direita”Introducao a Robotica Industrial – p. 3/23

Page 4: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Representação Denavit-Hartenberg

• Criar uma tabela dos parâmetros dos elos,ai, di, αi e θi.

• ai = distância ao longo dexi da intersecção dos eixosxi e zi−1 atéOi.

• di = distância ao longozi−1 deOi−1 até a intersecção dos eixosxi ezi−1. di é variável se a juntai é prismática.

• αi = o ângulo entrezi−1 e zi medido em torno dexi.

• θi = o ângulo entrexi−1 exi medido em torno dezi−1. θi é variável se ajuntai é rotativa.

• Calcular as matrizes de transformação homogêneasHii−1 substituindo os

parâmetros acima em (1).

• CalcularTn0 = H10 · · ·Hn

n−1.

Introducao a Robotica Industrial – p. 4/23

Page 5: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Representação Denavit-Hartenberg

• Transformação homogênea entre os sistemas de coordenadasi e i− 1

Hii−1 =

cθi−sθi

cαisθisαi

aicθi

sθicθicαi

−cθisαi

aisθi

0 sαicαi

di

0 0 0 1

(1)

sendoθi, ai, di, αi parâmetros do eloi e juntai.

Introducao a Robotica Industrial – p. 5/23

Page 6: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo

• Considere um manipulador planar de dois elos.

Introducao a Robotica Industrial – p. 6/23

Page 7: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo

• Parâmetros de D-H:

Elo ai αi di θi

1 a1 0 0 θ1

2 a2 0 0 θ2

• Matrizes homogêneas

H10 =

c1 −s1 0 a1c1

s1 c1 0 a1s1

0 0 1 0

0 0 0 1

H21 =

c2 −s2 0 a2c2

s2 c2 0 a2s2

0 0 1 0

0 0 0 1

Introducao a Robotica Industrial – p. 7/23

Page 8: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo

• Matriz de tranformação homogêneaT 20 :

T 20 = H1

0H21 =

c12 −s12 0 a1c1 + a2c12

s12 c12 0 a1s1 + a2s12

0 0 1 0

0 0 0 1

• As seguinte relações trigonométricas são utilizadas:c12 = c1c2 − s1s2 es12 = s1c2 + s2c1.

• Posição da origemO2:

dx = a1c1 + a2c12

dy = a1s1 + a2s12

• Orientação:φ = θ1 + θ2.

Introducao a Robotica Industrial – p. 8/23

Page 9: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/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

• Espaço das posições e orientações:x =

[

dn0

Φ

]

=

dx

dy

dz

φ

θ

ψ

• Cinemática direta:x = f(q)

Introducao a Robotica Industrial – p. 9/23

Page 10: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/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

Introducao a Robotica Industrial – p. 10/23

Page 11: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo

• Considere o manipulador de dois elos

dx = a1c1 + a2c12

dy = a1s1 + a2s12

• Elevando ao quadrado as duas equações e somando

d2x + d2

y = a21 + a2

2 + 2a1a2c2

• Então

c2 =d2x + d2

y − a21 − a2

2

2a1a2

• Existência de solução:−1 ≤ c2 ≤ 1 ⇒ fora do espaço de trabalho

Introducao a Robotica Industrial – p. 11/23

Page 12: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo

s2 = ±

1 − c22

• O sinal está relacionado com as duas possibilidades de valorparaθ2

θ2 = atan2(s2, c2)

γ = atan2(n, d) =

indefinido para n = d = 0

90◦ para n > 0 e d = 0

−90◦ para n < 0 e d = 0

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

Introducao a Robotica Industrial – p. 12/23

Page 13: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo

• Substituindoθ2 nas equações

s1 =(a1 + a2c2)dy − a2s2dx

d2x + d2

y

c1 =(a1 + a2c2)dx + a2s2dy

d2x + d2

y

• Portanto θ1 = atan2(s1, c1)

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

Introducao a Robotica Industrial – p. 13/23

Page 14: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/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 eR = [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)

• CalculeR30

• CalculeR63 = (R3

0)TR

• Resolva a cinemática inversa para a orientação,(q4, q5, q6), determinandoos ângulos de Euler com relação ao sistema de coordenadasO3x3y3z3.

Introducao a Robotica Industrial – p. 14/23

Page 15: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Ângulos de Euler

• (φ, θ, ψ) - três variáveis idependentes.

• Rotação em torno dez0 pelo ânguloφ

• Rotação em torno dey′

0 pelo ânguloθ

• Rotação em torno dez′′

0 pelo ânguloψ

• Matriz de rotação

Rz0,φRy′0,θRz′′

0,ψ =

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

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

−sθcψ sθsψ cθ

R =

r11 r12 r13

r21 r22 r23

r31 r32 r33

Introducao a Robotica Industrial – p. 15/23

Page 16: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Ângulos de Euler

• Ser13 6= 0 e r23 6= 0.

φ = atan2(r23, r13)

θ = atan2(√

r213 + r223, r33)

ψ = atan2(r32,−r31)

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

Introducao a Robotica Industrial – p. 16/23

Page 17: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo: Stanford

• dp0 = dn0 − d6a

Introducao a Robotica Industrial – p. 17/23

Page 18: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo: Stanford

• dp0 =

dpx

dpy

dpz

x0

y0

dpx

dpy

r

d2

1

s

z0

dpz

s

2

d1

d3

Introducao a Robotica Industrial – p. 18/23

Page 19: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo: Stanford

• Sendor2 = dp2x + dp2

y

β = acos(d2/r)

α = atan2(dpy, dpx)

θ1 = α− β

• Cálculo deθ2

s = sen(β)r

θ2 = atan2(dpz − d1, s)

• A variáveld3 é dada por:

d3 =√

(dpz − d1)2 + s2

Introducao a Robotica Industrial – p. 19/23

Page 20: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Cinemática da velocidade

• Relação entre as velocidades das juntas e velocidades (linear e angular) doefetuador

• Matriz Jacobiana geométrica

dn0 = Jd(q)q

w0 = Jw(q)q

• SendoJd(q) eJw(q) matrizes3 × n. Ainda

v =

[

dn0

w0

]

=

[

Jd(q)

Jw(q)

]

q = J(q)q

• SendoJ(q) uma matriz6 × n.

Introducao a Robotica Industrial – p. 20/23

Page 21: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Cinemática da velocidade

• Matriz Jacobiana analítica

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

q

Φ = JΦ(q)q =∂Φ

∂qq

• Assim

x =

[

dn0

Φ

]

=

[

Jd(q)

JΦ(q)

]

q = JA(q)q

Introducao a Robotica Industrial – p. 21/23

Page 22: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Exemplo: Jacobiana analítica

• Manipulador com dois elos

x =

dx

dy

φ

=

a1c1 + a2c12

a1s1 + a2s12

θ1 + θ2

x =

dx

dy

φ

=

−a1s1θ1 − a2s12(θ1 + θ2)

a1c1θ1 + a2c12(θ1 + θ2)

θ1 + θ2

• Matriz Jacobiana

JA(q) =

[

Jd(q)

JΦ(q)

]

=

−a1s1 − a2s12 −a2s12

a1c1 + a2c12 a2c12

1 1

Introducao a Robotica Industrial – p. 22/23

Page 23: Introdução à Robótica Industrial · Introdução à Robótica Industrial Adriano A. G. Siqueira Aula 4 Introduc¸ao˜ a Rob` otica Industrial – p. 1/23´

Cinemática inversa da posição

via matriz Jacobiana

• Cinemática inversa da velocidade

q = J(q)−1v

• Cálculo das variáveis das juntas

q =

∫ t

T=0

q(T )dT + q0

• Usando a integração de Euler

q(tk+1) = q(tk) + q(tk)∆t

q(tk+1) = q(tk) + J(q(tk))−1v(tk)∆t

• A matriz Jacobiana precisa ser invertível eq0 precisa ser conhecida.

Introducao a Robotica Industrial – p. 23/23