Você está na página 1de 16

UNIVERSIDADE ESTADUAL DE LONDRINA

CENTRO DE TECNOLOGIA E URBANISMO


DEPARTAMENTO DE ENGENHARIA ELÉTRICA

LUCCA RODRIGUES PINTO

LABORATÓRIO 6 DE ROBÓTICA E AUTOMAÇÃO


INDUSTRIAL

LONDRINA
2023
2

LUCCA RODRIGUES PINTO

LABORATÓRIO 6 DE ROBÓTICA E AUTOMAÇÃO


INDUSTRIAL

Trabalho apresentado à disciplina


1ELE901 - Robótica e Automação In-
dustrial, na graduação em Engenharia
Elétrica - UEL.
Prof. Ruberlei Gaino

LONDRINA
2023
3

Conteúdo

1 Licença 4

2 Resumo 5

3 Introdução 6
3.1 Cinemática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2 Cinemática direta e inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.3 Notação de Denavit-Hartenberg . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.4 Posição e orientação do efetuador . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.5 Matriz Jacobiana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

4 Metodologia e resultados 9
4.1 Elaborar os procedimentos para determinar a matriz jacobiana do braço antropomórfico 9
4.1.1 a) Cinemática direta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.1.2 b) Cálculo da matriz jacobiana (analítica e vetorial) . . . . . . . . . . . . . . 11
4.1.3 c) Determine singularidades e manipularidades . . . . . . . . . . . . . . . . 14

5 Conclusões 15
4

1 LICENÇA
5

2 RESUMO

A princípio, este laboratório tem como finalidade tratar do tema de cinemática, da notação de Denavit-
Hartenberg e da matriz jacobiana, bem como durante a realização das etapas, aplicar os conceitos
vistos em aula, averiguar e constatar os resultados experimentais e teóricos obtidos ao realizar o
experimento para um braço antropomórfico. Inicialmente, conforme a proposta do laboratório, a
cinemática direta de um braço antropomórfico foi determinada. Os parâmetros DH puderam ser
encontrados, bem como a transformada homogênea de cada junta. Em sequência, com os conceitos
de matriz jacobiana, foi preciso determinar as abordagens vetorial e analítica. Ao final dessa etapa,
dados os conceitos de singularidade e manipularidade, foi possível avaliar estas medidas com base na
matriz jacobiana encontrada anteriormente.
6

3 INTRODUÇÃO

3.1 C INEMÁTICA

A cinemática é uma área da mecânica que estuda o movimento de corpos sem considerar massas ou
forças. Um braço robótico é composto por elos rígidos e juntas que podem ser de natureza transla-
cional (permitindo movimento linear) ou rotacional (permitindo movimento angular). O movimento
dessas juntas influencia a posição dos elos conectados e, consequentemente, do efetuador final. Este
último é a parte do robô que executa tarefas úteis e pode se mover livremente no espaço. Ao longo
deste processo, há a necessidade de calcular tanto a posição do efetuador final com base nas juntas,
o que é chamado de cinemática direta, quanto a posição das juntas com base na posição do efetuador
final, conhecido como o problema inverso (1).

3.2 C INEMÁTICA DIRETA E INVERSA

A cinemática direta é um conceito fundamental na robótica que envolve mapear as coordenadas das
juntas de um robô para a posição final de seu efetuador. Este processo é explorado no contexto de
braços robóticos, começando com exemplos simples de movimento bidimensional e evoluindo para
braços mais complexos com movimento tridimensional (1).
Ao contrário da cinemática direta, na qual desejamos calcular a posição do órgão terminal do ma-
nipulador em função das variáveis de junta, na cinemática inversa se deseja calcular os valores das
variáveis de junta que produzirão a posição e orientação desejadas para o órgão terminal.

3.3 N OTAÇÃO DE D ENAVIT-H ARTENBERG

Uma série de abordagens foram desenvolvidas para descrever de forma mais concisa um braço ro-
bótico serial-link: a notação de Denavit-Hartenberg (DH) é uma convenção amplamente utilizada na
robótica para descrever a cinemática de robôs manipuladores. Foi desenvolvida por Jacques Denavit
e Richard Hartenberg na década de 1950 e é fundamental para representar a geometria e as transfor-
mações entre os elos de um robô manipulador. Essa notação é particularmente útil para modelar a
cinemática direta e inversa de robôs (1).
A Figura 3.1 apresenta os parâmetros de Denavit-Hartenberg, seu significado físico, símbolo e defi-
nição formal.
7

Figura 3.1: parâmetros de Denavit-Hartenberg

3.4 P OSIÇÃO E ORIENTAÇÃO DO EFETUADOR

Com a notação de Denavit-Hartenberg definida, pode-se obter a posição e orientação do efetuador em


relação ao sistema da base em função dos deslocamentos de todas as articulações. O deslocamento
de cada articulação é dada por di para articulações prismáticas ou θi para articulações de revolução.
Para facilitar a nomenclatura, a posição das articulações pode ser denotada por qi .
Dessa forma, a posição e orientação do ligamento i relativo ao ligamento i-1 é descrita em função
de qi , através da matriz homogênea Ai−1i (qi ). Um manipulador consiste de n + 1 ligamentos, com
a base sendo o ligamento e o efetuador o ligamento n. Portanto, do efetuador à base existem n
transformações homogêneas consecutivas, assim, a posição e orientação do efetuador é dada por:

A0n = A01 (q1 )A12 (q2 )...An−1


n (qn ) (3.1)

Onde A0n é a matriz homogênea que representa a posição e orientação do efetuador em relação ao
sistema da base, em função das posições de todas as articulações. Como A0n é uma matriz homogênea
ela tem a seguinte forma:
" #
Rn0 (q1 , ..., qn ) Tn0 (q1 , ..., qn )
A0n (q1 , ..., qn ) = (3.2)
0 1

Rn0 (q1 , ..., qn ) é a matriz de rotação que representa a orientação do efetuador em relação ao sistema da
base. O vetor Tn0 (q1 , ..., qn ) fornece a posição do efetuador em relação ao sistema da base.
A transformação correspondente às rotações em torno dos eixos x, y ou z por um ângulo é:
 
1 0 0 0
 
 0 cosθ −sinθ 0 
R(x, θ) =   (3.3)

 0 sinθ cosθ 0 
0 0 0 1
8

 
cosθ
0 sinθ 0
 
 1 0 0 0 
R(y, θ) =   (3.4)

 −sinθ
0 cosθ 0 
0 0 0 1
 
cosθ −sinθ 0 0
 
 sinθ cosθ 0 0 
R(z, θ) = 
  (3.5)
 0 0 1 0 

0 0 0 1
No mais, a transformação T correspondente a uma translação por um vetor ai + bj + ck é (2):
 
1 0 0 a
 
 0 1 0 b 
T (a, b, c) =   (3.6)

 0 0 1 c 

0 0 0 1

3.5 M ATRIZ JACOBIANA

A Jacobiana é uma ferramenta de extrema importância na análise de manipuladores robóticos. Ela nos
auxilia na identificação de singularidades, análise de redundâncias, desenvolvimento de algoritmos de
cinemática inversa e na descrição das relações entre as forças aplicadas no efetuador final e os torques
resultantes nas articulações (estática). Além disso, a Jacobiana é essencial para derivar equações de
movimento dinâmico e projetar estratégias de controle no espaço operacional.
Para o cálculo da matriz jacobiana, podemos considerar a abordagem geométrica, como sugere a
Equação (3.7), ou a abordagem analítica, como sugere a Equação (3.8).

" #
Zi−1 · (Pe − Pi−1 )
J(q) = (3.7)
Zi−1

" # " #
∂Pe
Jp (q) ∂q
JA (q) = = ∂Φ (3.8)
JΦ (q) ∂q
e
9

4 METODOLOGIA E RESULTADOS

4.1 E LABORAR OS PROCEDIMENTOS PARA DETERMINAR A MATRIZ JACOBIANA DO BRAÇO AN -


TROPOMÓRFICO

4.1.1 a) Cinemática direta

Os parâmetros DH determinados são mostrados na Tabela 4.1.

Tabela 4.1: Parâmetros DH

# θ d a α
0-1 θ1 0 0 90
1-2 θ2 0 a2 0
2-3 θ3 0 a3 0

Logo mais, podemos definir a matriz de transformação homogênea como:

 
Cθi −Sθi Cαi Sθi Sαi ai Cθi
 
 Sθi Cθi Cαi −Cθi Cαi ai Sθi 
An−1
n =  (4.1)

 0 Sαi C αi di 

0 0 0 1
10

   
C1 −S1 0 0 1 0 0 0
   
 S1 C1 0 0   0 C(90) −S(90) 0 
A01 = Rz (θ1 ) · Rx (90) =  ·  (4.2)

 0 0 1 0  
  0 S(90) C(90) 0 

0 0 0 1 0 0 0 1

 
C1 0 S1 0
 
 S1 0 −C1 0 
A01 =  (4.3)

 0 1 0 0 

0 0 0 1

   
C2 −S2 0 0 1 0 0 a2
   
 S2 C2 0 0   0 1 0 0 
A12 = Rz (θ2 ) · Tx (a2 ) =  ·  (4.4)

 0 0 1 0  
  0 0 1 0 
0 0 0 1 0 0 0 1

 
C2 −S2 0 a2 C 2
 
 S2 C2 0 a2 S 2 
A12 =  (4.5)

 0 0 1 0  
0 0 0 1

   
C3 −S3 0 0 1 0 0 a3
   
 S3 C3 0 0   0 1 0 0 
A23 = Rz (θ3 ) · T x(a3 ) =  ·  (4.6)

 0 0 1 0  
  0 0 1 0 
0 0 0 1 0 0 0 1

 
C3 −S3 0 a3 C 3
 
 S3 C3 0 a3 S 3 
A23 =  (4.7)

 0 0 1 0  
0 0 0 1
11

 
C1 C23 −C1 S23 S1 C1 (a2 C2 + a3 C23 )
 
 S1 C23 −S1 S23 −C1 S1 (a2 C2 + a3 C23 ) 
A03 = A01 A12 A23 =  (4.8)

 S23 C23 0 a2 S2 + a3 S23 

0 0 0 1

4.1.2 b) Cálculo da matriz jacobiana (analítica e vetorial)

Jacobiana vetorial:

" #
Zi−1 · (Pe − Pi−1 )
J(q) = (4.9)
Zi−1

" #
Z0 · (P3 − P0 ) Z1 · (P3 − P1 ) Z2 · (P3 − P2 )
J(q) = (4.10)
Z0 Z1 Z2

∼ ∼
Pe = A01 (q1 )...An−1
n (qn )P0 (4.11)

 
0
 
∼  0 
P0 =   (4.12)

 0 

1

∼ ∼ ∼
Pe = A03 (q)P0 = A01 · A12 · A23 · P0 (4.13)

   
C1 C23 −C1 S23 S1 C1 (a2 C2 + a3 C23 ) 0
   
∼  S1 C23 −S1 S23 −C1 S1 (a2 C2 + a3 C23 )  
· 0 
Pe =   (4.14)

 S23 C23 0 a2 S2 + a3 S23  
  0 

0 0 0 1 1

 
C1 (a2 C2 + a3 C23 )
∼ ∼
Pe = P =  S1 (a2 C2 + a3 C23 )  (4.15)
 

a2 S2 + a3 S23
12

   
1 0 0 0 0  
    0
0
∼  0 1 0 0   0   
i = 1 → P0 = A0 P0 =  · = 0  (4.16)
 0 0 1 0   0 
0
   
0 0 0 1 1

   
C1 0 S1 0 0  
    0
0
∼  S1 0 −C1 0   0   
i = 2 → P1 = A1 P0 =  · = 0  (4.17)
 0 1 0 0   0 
0
   
0 0 0 1 1

     
C1 0 S1 0 C2 −S2 0 a2 C2 0
     
∼  S1 0 −C1 0   S2 C2 0 a2 S2 
· 0 
 
i = 3 → P2 = A01 A12 P0 = · (4.18)

 0 1 0 0  
  0 0 1 0    0 
 
0 0 0 1 0 0 0 1 1

 
a2 C 1 C 2
P 2 =  a2 S 1 C 2  (4.19)
 

a2 S2

i−2
Zi−1 = R10 (q1 )...Ri−1 (qi−1 )Z0 (4.20)

 
0
i = 1 → Z0 =  0  (4.21)
 

     
C1 0 S1 0 S1
i = 2 → Z1 = R10 · Z0 =  S1 0 −C1  ·  0  =  −C1  (4.22)
     

0 1 0 1 0

     
C1 0 S 1 C2 −S2 0 0
0 1
i = 3 → Z2 = R1 · R2 · Z0 =  S1 0 −C1  ·  S2 C2 0  ·  0  (4.23)
     

0 1 0 0 0 1 1
13

 
S1
Z2 =  −C1  (4.24)
 

 
−S1 (a2 C2 + a3 C23 ) −C1 (a2 S2 + a3 S23 ) −a3 C1 S23
 

 C1 (a2 C2 + a3 C23 ) −S1 (a2 S2 + a3 S23 ) −a3 S1 S23 

 0 a2 C2 + a3 C23 a3 C23 
J(q) =  (4.25)
 


 0 S1 S1 


 0 −C1 −C1 

1 0 0

Jacobiana analítica:
" # " #
∂Pe
Jp (q) ∂q
JA (q) = = ∂Φ (4.26)
JΦ (q) ∂q
e

 
c1 (a2 c2 + a3 c23 )
Pe = s1 (a2 c2 + a3 c23 ) (4.27)
 

a2 s2 + a3 s23

 ∂x ∂x ∂x
  
∂q1 ∂q2 ∂q3 −s1 (a2 c2 + a3 c23 ) −c1 (a2 s2 + a3 s23 ) −c1 a3 s23
 ∂y ∂y ∂y 
Jp (q) = =  c1 (a2 c2 + a3 c23 ) −s1 (a2 s2 + a3 s23 ) −s1 a3 s23  (4.28)
 
 ∂q1 ∂q2 ∂q3 
∂z ∂z ∂z
∂q1 ∂q2 ∂q3
0 a2 c2 + a3 c23 a3 c23

   
c1 c23 −c1 s23 s1 r11 r12 r13
Φe = s1 c23 −s1 s23 −c1  = r21 r22 r23  (4.29)
   

s23 c23 0 r31 r32 r33

π
ϕ = atan2(r23 , r13 ) = atan2(−c1 , s1 ) = q1 − (4.30)
2
q 
2 2 π
θ = atan2 r13 + r23 , r33 = atan2(1, 0) = (4.31)
2
π
ψ = atan2(r32 , −r31 ) = atan2(c23 , −s23 ) = q2 + q3 + (4.32)
2
 ∂ϕ ∂ϕ ∂ϕ
  
∂q1 ∂q2 ∂q3 1 0 0
 ∂θ ∂θ ∂θ 
JΦ (q) = = 0 0 0 (4.33)
 
 ∂q1 ∂q2 ∂q3 
∂ψ ∂ψ ∂ψ
∂q1 ∂q2 ∂q3
0 1 1
14

     
0 −sϕ cϕ sθ 1 0 0 0 cϕ s θ cϕ s θ
JΘ (q) = T (Φ)JΦ (q) = 0 cϕ sϕ sθ  = 0 0 0 = 0 −sϕ sθ −sϕ sθ  (4.34)
     

1 0 cθ 0 1 1 1 cθ cθ

 
0 s1 s1
JΘ (q) = 0 −c1 −c1  (4.35)
 

1 0 0

4.1.3 c) Determine singularidades e manipularidades

A singularidade é uma condição em que o robô perde graus de liberdade e a matriz Jacobiana não é
inversível (det(J) = 0). A manipulabilidade, por outro lado, é uma medida da capacidade do robô de

alcançar diferentes posições e orientações e é calculada como W (q) = J T · J.
Dessa forma, para o posto da matriz igual a 3, temos a singularidade:

det(J) = −a2 · a3 (a2 c2 s3 − a3 s2 + a3 c23 s2 + a3 c2 c3 s3 ) (4.36)

No mais, calculando a manipularidades:


W (q) = JT · J (4.37)

q 
2 2
c21 (a3 c23 + a2 c2 ) + s21 (a3 c23 + a2 c2 ) + 1 0 0
 
W (q) = 
p p
 0 a22 a23
+ 2c3 a2 a3 + + 1 a23 + a2 c 3 a3 + 1 

p p
0 a23 + a2 c3 a3 + 1 2
a3 + 1
(4.38)
15

5 CONCLUSÕES

Observamos e documentamos a teoria necessária de cinemática, da notação de Denavit-Hartenberg e


da matriz jacobiana para desenvolver o relatório. O mesmo foi realizado tendo como base as aulas
ministradas pelo docente e os livros teóricos denotados na Bibliografia.
Em um primeiro momento, conforme a proposta do laboratório, a cinemática direta de um braço
antropomórfico deveria ser determinada. Os parâmetros DH puderam ser encontrados, bem como
a transformada homogênea de cada junta. Em seguida, com os conceitos de matriz jacobiana, foi
preciso determinar as abordagens vetorial e analítica. Ao final dessa etapa, dados os conceitos de
singularidade e manipularidade, foi possível avaliar estas medidas com base na matriz jacobiana en-
contrada anteriormente.
16

Bibliografia

[1] Corke, P. Robotics, Vision and Control: Fundamental Algorithms in MATLAB. [S.l.]: Springer,
2017.

[2] Paul R. P. Mathematics, Programming, and Control : the Computer Control of Robot Manipula-
tors. [S.l.]: The MIT Press, 1981.

[3] Santos V. M. F. Robótica Industrial. Universidade de Aveiro, 2003-2004.

[4] Peter Corke. ROBOTICS ToolBox. 2022. Disponível em:


<https://petercorke.com/ToolBoxes/robotics-ToolBox/>.

Você também pode gostar