CINEMÁTICA INVERSA
Descrição do Produto
CINEMÁTICA INVERSA
Caetano Soares Fajardo ∴
Trabalho sobre cinemática inversa elaborado para disciplina de robótica do curso de engenharia de controle e automação da CEFET-RJ Uned Ni.
Docente: Fabricio Lopes e Silva Ms.c. Dicente: Caetano Soares Fajardo∴
Nova Iguaçu Junho de 2016
Sumário Metodologia .................................................................................................................................3 Problema Proposto .......................................................................................................................3 Objetivos ......................................................................................................................................3 Como o problema será resolvido ..................................................................................................4 Desenvolvimento (Resolução do problema) .................................................................................6 Bibliografia ................................................................................................................................15
Metodologia
Problema Proposto
Obtenção das equações de cinemática inversa do manipulador antropomórfico com pulso de Euler.
Obtenção das equações de cinemática inversa do manipulador SCARA, cilíndrico ou esférico com pulso RPY.
Objetivos
Obtenção dos ângulos das juntas do manipulador através de uma trajetória proposta no espaço, com os seguintes intervalos de ângulos das juntas:
1 0 90
(1)
2 0 90
(2)
3 0 180
(3)
Apresentar resultados numéricos;
Apresentar resultados gráficos;
Adaptar as transformações com os referenciais de situações reais.
Como o problema será resolvido O problema será resolvido pelo método de manipulação de matrizes inversas descrito por (Craig, 2005). O método de manipulação de matrizes inversas consiste na resolução de incógnitas geradas na igualdade entre o produto de uma dada matriz inversa de transformação homogênea para um referencial com a matriz de transformação homogênea total para o manipulador e o produto entre matrizes de transformação homogêneas a partir do índice adotado para o referencial. Na equação 4 são mostradas as operações algébrica para resolução das incógnitas para o referencial 1 para o manipulador The Ultimation PUMA 560 descritas por (Craig, 2005).
T 0 1
T 21T 2 23T 3 34T 4 45T 5 56T 6
1 0
1
(4)
6
Onde
c1 s 1 0 0
s1 c1 0 0
0 0 1 0
0 r11 0 r21 0 r31 1 0
r12 r22 r32 0
r13 r23 r33 0
Px Py 1 6T Pz 1
(5)
s1 Px c1 Py d 3
(6)
Px cos
(7)
Py sen
(8)
Onde
P
2 x
Py2
A tan 2( Py , Px )
(9)
(10)
c1 s s1c
d3
sen( 1 )
d3
(11)
(12)
d cos( 1 ) 1 3
(13)
2
d d 32 3 1 A tan 2 , 1 2
1 A tan 2Py , Px A tan 2 d 3 , Px2 Py2 d 32
(14)
(15)
Nesta resolução para a articulação 1 do manipulador The Ultimation PUMA 560, as matrizes de transformação homogênea foram calculadas pelo método de Denavit Hatemberg. Na resolução deste problema as matrizes de transformação homogênea não foram e nem serão calculadas pelo método de Denavit Hatemberg, entretanto a resolução das incógnitas será a mesma. Segundo (Craig, 2005), uma equação transcendental pode ser convertida para obtenção do ângulo de uma dada articulação. Na equação é mostrada uma equação transcendental, e a sua resolução é descrita nas equações 16, 17, 18, 19 e 20.
a cos bsen c
(16)
a(1 u 2 ) 2bu c(1 u 2 )
(17)
(a c)u 2 2bu (c a) 0
(18)
(19)
b b2 a2 c2 ac
u
b b2 a2 c2 ac
2 tan 1
(20)
Para o cálculo da matriz inversa da matriz de transformação, resolve-se numericamente a equação mostrada na equação 21, por exemplo para o cálculo da matriz inversa da matriz de transformação 03T resolve-se a equação 22.
T 0 C
1
T 0 3
1
C 1 C
T
1 C 2 C 1
T
1
01T
1
T T
23T
1 1 2
1 0 1
1
(21)
(22)
Desenvolvimento (Resolução do problema) Primeiro, resolvem-se as equações de cinemática inversa mostradas na equação 23.
T 0 1
1 0
(23)
T 61T
6
Onde
C1 S 1 0 0
S1 C1 0 0
0 l1C1 r11 0 l1 S1 r21 1 0 r31 0 1 0
r12 r22 r32 0
r13 r23 r33 0
Px Py 1 6T Pz 1
(24)
C1 PX S1 Py l1C1 l 2 l3C2
(25)
S1 Px C1 Py l1 S1 l3 S 2
(26)
Pelo método geométrico descrito por (Craig, 2005), o ângulo da junta do referencial 2 para o manipulador antropomórfico em questão é mostrado na equação 29.
cos 2
Px2 Py2 l12 l 22
(27)
2l1l 2
sen 2 1 cos 2
(28)
2 A tan 2sen 2 , cos 2
(29)
Para o ângulo da junta do referencial 1, a equação 51.
T 0 2
1 0
(30)
T 26T
6
Onde
C12 S 12 0 0
S12 C12 0 0
0 l1C12 l 2 C 2 r11 0 l1 S12 l 2 S 2 r21 r31 1 0 0 1 0
r12 r22 r32 0
r13 r23 r33 0
Px Py 2 6T Pz 1
(31)
C12 Px S12 Py l1C12 l2 C2 l3
(32)
S12 P x C12 Py l1 S12 l 2 S 2 0
(33)
C12 Px l1 S12 Py l2 C2 l3
(34)
12 1 2
(35)
S12 l1 Px C12 Py l 2 S 2
(36)
S12
l 2 S 2 C12 Py
l1 Px
(37)
cos1 cos 2 sen1 sen 2 Px sen( 1) cos 2 cos1 sen 2 Py l 2 cos 2 l3 cosa b cosa cosb sena senb sena b sena cosb senbcosa
C1 Px S1 Py l1C1 l 2 l3
C1 Py l1 S1 S1 Px l3
C 2
S 2
C1 Px S1 Py l1C1 l 2 l3C2
C1
l3C2 l 2 S1 Py
(41)
(42)
(43)
(44)
Px l1
l3C2 l 2 S1 Py
Px l1
Py l1 S1 S1 Px l3 S 2
Py2 Py l2 S1 l1 Px l3 S 2 l3C 2 Px l1 Px l1 Px l1 Py
l2 Px l1 Px l1 2 Py l1 Px Px l1
l3 S 2 l3C 2 S1
(40)
(45)
(46)
(47)
sen1 cos1 1
(48)
cos(1 ) 2 1 sen(1 ) 2
(49)
cos(1 ) 1 sen(1 ) 2
(50)
1 A tan 2(sen(1 ), cos(1 ))
(51)
2
2
(38)
(39)
T 0 3
3 4 5 T T T 4 5 6
cos 1 2 3 sen 1 2 3 0 0
1 0
sen 1 2 3 cos 1 2 3 0 0
(52)
T 34T 45T 56T
6
0 l 2 cos 2 3 l 3 cos 3 l 1 cos 1 2 3 0 l 2 sen 2 3 l 3 sen 3 l 1 sen 1 2 3 1 0 0 1
cos 1 2 3 Px sen 1 2 3 Py l 2 cos 2 3 l3 cos 3 l1 cos 1 2 3 0
(53)
(54)
sen1 2 3 Px cos1 2 3 Py l 2 sen 2 3 l3 3 (55) l1 sen1 2 3 0
cos1 2 3 Px l1 sen1 2 3 Py l2 cos 2 3 l3 cos 3
(56)
sen1 2 3 l1 Px cos1 2 3 Py l2 sen 2 3 l3 sen 3 (57)
1 2 a
sena 3
sen a cos 3 sen 3 cos a
l3 sen 3 l 2 sen 3 cosa3Py
(58)
(59)
l1 Px
l1 Px
l 3 sen 3 l 2 sen 3 cos a cos 3 sen a sen 3 Py
(60)
sena 3 l1 Px cosa 3 Py l2 sen 2 3 l3 sen 3 (61)
sena cos 3 cosa sen 3 l1 Px cosa cos 3 sena sen 3 Py l 2 sen 2 cos 3 cos 2 sen 3 l3 sen 3
(62)
sen 3 cosa l1 Px sena Py l 2 cos 2 l3
(63)
sena cos 3 l1 Px cosa cos 3 Py l 2 sen 2 cos 3
sen 3
sena cos 3 l1 Px cosa cos 3 Py l 2 sen 2 cos 3
(64)
cosa l1 Px sena Py l 2 cos 2 l3
cosa cos sena sen Px l sena cos cosa sen Py 3 1 3 3 3 l cos cos sen sen l cos 2 2 3 3 3 2 3
sen3 sena Px l1 cosa Py l2sen2 l3 cos3
cos 3 cosa Px l1 sena Py l2 cos 2
(66)
(67)
cos cosa Px l sena Py l cos l 3 1 2 2 3 sena cos l Px cosa cos Py l sen cos 3 1 3 2 2 3 0 cosa l Px sena Py l cos l 1 2 2 3
cos 3 cosa Px l1 sena Py l 2 cos 2 l 3 cosa Px l1
(65)
(68)
sena l1 Px cosa Py l s sen 2 cos 3 0 cosa l P sena P l cos l 1 x y 2 2 3
cos 3 0
3
2
rad ,
3 rad 2
(69)
(70)
Na equação 70, foi constatado que o ângulo 3 possui dois valores possíveis, o que prova uma condição de singularidade para este ângulo, portanto na programação do programa que fará a cinemática inversa será adotado o intervalo 0 3 1,4923rad , isto é, o ângulo máximo de
3 menos 5% para que o manipulador tenha uma margem de segurança de 5% para que não
danifique a estrutura do manipulador, desta forma não podendo trabalhar no intervalo de
0 3 rad .
T 1 06T 45T 56T
(71)
1234 1 2 3 4
(72)
123 1 2 3
(73)
234 2 3 4
(74)
34 3 4
(75)
0 4
Adotou-se a notação de:
cos1234 sen1234 0 0
sen 1234 cos 1234 0 0
0 l1 cos 1234 l 3 cos 34 l 2 234 0 l1 sen 1234 l 3 sen 34 l 2 sen 234
1 0
0 1
r11 r21 r 31 0
r12 r22 r32
r13 r23 r33
0
0
Px Py 4 5 5T 6T Pz 1
1 2 3 c
(77)
2 3 d
(78)
cosc cos 4 senc sen 4 Px senc cos 4 cosc sen 4 Py l1 cosc cos 4 senc sen 4 l3 cos 3 cos 4 sen 3 sen 4 l 2 cosd cos 4 send sen 4 0 senc cos 4 cosc sen 4 Px cosc cos 4 senc sen 4 Py
l1 senc cos 4 cosc sen 4 l3 sen 3 cos 4 sen 4 cos 3 l 2 send cos 4 cosd sen 4 0
(76)
(79)
(80)
sen 4 cosc Px Py senc l1 cosc l3 cos 3 l 2 cosd
(81)
cos 4 cosc Px senc Py l1 cosc l3 cos 3 l 2 cosd
(82)
cos 4 senc Px cosc Py l1 senc l3 sen 3 l 2 send 0
sen 4 senc Px cosc Py l1 senc l3 sen 3 l 2 send 0
sen 4
cos 4 senc Px cosc Py l1 senc l3 sen 3 l 2 send
(83)
cosc Px Py senc l1 cosc l3 cos 3 l 2 cosd
cos 4 cosc Px senc Py l1 cosc l3 cos 3 l 2 cosd
sen 4 senc Px cosc Py l1 senc l3 sen 3 l 2 send
cos 4 senc Px cosc Py l1 senc l3 sen 3 l 2 send cosc Px Py senc l1 cosc l3 cos 3 l 2 cosd
(84)
(85)
*
senc P cosc P l senc l sen l send cos cosc P senc P l cosc l cos l cosd x
4
y
1
x
3
y
3
1
2
3
3
2
cos 4 0
4 a tan 20
(86)
2
(87)
rad
Na equação 87, foi constatado que o ângulo 4 possui dois valores possíveis, o que prova uma condição de singularidade para este ângulo, portanto na programação do programa que fará a cinemática inversa será adotado o intervalo 0 4 1,4923rad , isto é, o ângulo máximo de
4 menos 5% para que o manipulador tenha uma margem de segurança de 5% para que não danifique a estrutura do manipulador, desta forma não podendo trabalhar no intervalo de
0 4 rad .
T T T T T 4 5
1 3 4
1 2 3
1 1 2
1 0 1
1 0
T 56T
6
(88)
cos 12345 sen 12345 0 0
sen 12345 cos 12345 0 0
0 l 2 cos 2345 l1 cos 12345 l 3 cos 345 0 l 2 sen 2345 l1 sen 12345 l 3 sen 345 1 0 0 1
r11
r21 r 31 0
r12 r22 r32
r13 r23 r33
0
0
Px Py 5 6T Pz 1
cos12345 Px sen12345 Py l2 cos 2345 l1 cos12345 l3 cos 345 0
sen12345 Px cos12345 Py l2 sen 2345 l1 sen12345 l3 sen 345 0
(92)
m 2345
(93)
n 345
(94)
cos 5 cosk Px senk Py l 2 cosm l1 cosk l3 cosn
sen 5 senk Px cosk Py l 2 senm l1 senk l3 senn 0
senk cos 5 sen 5 cosk Px cosk cos 5 senk sen 5 Py l 2 senm cos 5 cosm sen 5 l1 senk cos 5 cosk sen 5 l3 senn cos 5 cosn sen 5 0
(90)
(91)
k 12345
cosk cos 5 senk sen 5 Px senk cos 5 sen 5 cosk Py l 2 cosm cos 5 senm sen 5 l1 cosk cos 5 senk sen 5 l3 cosn cos 5 senn sen 5 0
(89)
(95)
(96)
(97)
sen 5 cosk Px senk Py l 2 cosm l1 cosk l3 cosn
cos 5 senk Px cosk Py l 2 senm l1 senk l3 senn 0
sen 5
(98)
cos 5 senk Px cosk Py l 2 senm l1 senk l3 senn
(99)
cosk Px senk Py l 2 cosm l1 cosk l3 cosn
5 a tan 2( sen 5 , cos 5 )
2
rad
(100)
Na equação 100, foi constatado que o ângulo 5 possui dois valores possíveis, o que prova uma condição de singularidade para este ângulo, portanto na programação do programa que fará a cinemática inversa será adotado o intervalo 0 5 1,4923rad , isto é, o ângulo máximo de 5 menos 5% para que o manipulador tenha uma margem de segurança de 5% para que não danifique a estrutura do manipulador, desta forma não podendo trabalhar no intervalo de
0 5 rad . cos1 r11 sen1 r21 cos 2345 cos 6
(101)
sen1 r11 cos1 r21 sen 2345 cos 6
(102)
r11
cos 2345 cos 6 sen1 r21 cos1
r21
sen 2345 cos 6 sen1 r21 cos1
(103)
(104)
cos1234 r11 sen1234 r21 l1 cos1234 l3 cos 34 l 2 cos 234 cos 5 cos 6
(105)
r11
cos 2345 cos 6 sen 2345 cos 6 tg 1 tg 1 r11 cos1 cos1
r11 1 tg 1
cos 2345 cos 6 sen 2345 cos 6 tg 1 cos1 cos1
(106)
(107)
cos 2345 cos 6 sen 2345 cos 6 1 cos1234 tg 1 cos1 cos1 1 tg 1 sen 2345 cos 6 sen1234 cos 1
(108)
cos 2345 cos 6 sen 2345 cos 6 1 tg 1 tg 1 cos1 cos1 1 tg 1 l1 cos1234 l3 cos 34 l 2 cos 234 cos 5 cos 6
cos1234 cos 2345 cos1 1 tg 1 sen 2345 cos1 1 1 tg cos1 1 cos 6 sen1234 cos1 1 sen 2345 1 sen1234 tg 1 cos 1 cos 2345 1 1 sen1234 tg 1 cos 1 sen 2345 cos 5 1 tg 1 l1 cos1234 l3 cos 34 l 2 cos 234
(109)
Bibliografia Craig, J. J. (2005). Introduction to robotics mechanics and control. Saddle River, NJ, United States of America: Pearson Education International. Niku, S. B. (2013). Introdução a robótica. Rio de Janeiro: LTC.
Lihat lebih banyak...
Comentários