Professional Documents
Culture Documents
Version Info
Version Info
ROBOTIKA
Kinematika robota
Općenito 1
FSB
Transformacija koordinata u ravnini - translacija
zadano: x,y,a,b
x = a + x1
y = b + y1
b
x1 = x − a
O1 a x1
y1 = y − b
Translacija 2
FSB
Transformacija koordinata u ravnini - rotacija
zadano: x,y,ϕ
y1
traži se: x1,y1
O1 x1
x1 = x cos ϕ + y sin ϕ
y1 = y cos ϕ − x sin ϕ
Rotacija 3
FSB
x1 = x cos ϕ + y sin ϕ
y1 = y cos ϕ − x sin ϕ
x1 cos ϕ sin ϕ x
y = − sin ϕ
cos ϕ y
1
p1 = A p A=
matrica
transformacija
−1
p = A p1
x cos ϕ − sin ϕ x1
y = sin ϕ
cos ϕ y1
Matrica A 4
FSB
Homogene transformacije
k
O
j y
i
x
Homogene t. 5
FSB
Matrica homogenih transformacija
i = j = k =1 1 0 0 0
0 1 0 0
i× j = k n
An =
0 0 1 0
i j = j k = k i = 0
0 0 0 1
Matrica HT 6
FSB
0 −1 0 1
0 0 1 2 y1
0
A1 = z
− 1 0 0 2
2
0 0 0 1 j1
O1
k1 z1
1
p i1
k
O0
j 1 2
y
1
i
2 x1
x
Primjer 7
FSB
( )
p1 = A1
0 −1
p0 = A0 p0
1
Prijelaz 8
FSB
Transformacije translacije
z1
2
c
k1
O10 b
j1 1 2
y1
1
i1
a 1 0 0 a
2 0 1 0 b
x1 A = Tran (a, b, c) =
0 0 1 c
Translacija
0 0 0 1
9
FSB
Transformacije rotacije
z
z1
2
1
α
k1
O0 O1
i1 j1 1 2 y1y
1
i
1 0 0 0
2 0 cos α − sin α 0
x x1 A = Rot ( x,α ) =
0 sin α cos α 0
Rotacija
0 0 0 1
10
FSB
cos α 0 sin α 0
0 1 0 0
A = Rot ( y,α ) =
− sin α 0 cos α 0
0 0 0 1
cos α − sin α 0 0
sin α cos α 0 0
A = Rot ( z ,α ) =
0 0 1 0
0 0 0 1
Rot y i Rot z 11
FSB
Relativne i apsolutne transformacije
Rot(x,90°) = 0A1
Tran(0,b,c) = 1A2 y2
y2
z y z y
1 1
z2 O2
O2
z2 x2
O1 O1
z1 O0 x2 y z1 O0 y
x x
x1 x1
T= 1A2 0A1 T= 0A1 1A2
♦ Apsolutne transformacije ♦ Relativne transformacije
Relativne i apsolutne 12
FSB
Matrica transformacija
0
T2 = 0 A11 A 2 matrica transformacija
p 0 = 0 T2 p 2
p 2 = T2( )0 −1
p 0 = 2 T0 p0
n
♦ prijelaz iz n-tog u m-ti sustav m
Tn = ∏ i −1
Ai
i = m +1
Matrica transformacija 13
FSB
cos α − sin α 0 0
sin α cos α 0 0
Rot(z,α) A1 = Rot ( z,α ) =
0 0 1 0
0 0 0 1
1 0 0 a
0 1 0 b
Tran(a,b,0) A 2 = Tran (a, b,0) =
0 0 1 0
0 0 0 1
1 0 0 0
0 cos β − sin β 0
Rot(x,β) A3 = Rot ( x, β ) =
0 sin β cos β 0
0 0 0 1
Primjer 14
FSB
0
T3 = A1A 2 A 3
Primjer 15
FSB
Denavit-Hartembergov zapis strukture robota
yi-1
xi-1
DH zapis strukture 16
FSB
Matrica prihvata
z
n = vektor normale
a
o = vektor orijentacije
O a = vektor djelovanja
o y
n p = vektor položaja
x
nx ox ax px
n p y
n o a p y oy ay
0
Tn = =
n
0 0 0 1 z oz az pz
0 0 0 1
Matrica prihvata 17
FSB
Stanford manipulator
z4
O4
x4 y4
L4 z3
q4
y3
z2 x O3
3
z z1 q3
q2
L3 y2
O2
L1 x2 q O0 y1
1
O1 y
x
L2 x1
Stanford 18
FSB
z4 c1 − s1 0 0
O4 s c1 0 0
y4 A1 = Rot ( z, q1) = 1
x4 z3 0 0 1 0
q4
0 0 0 1
y3
z2 x O3 c2 0 s2 0
3 0 1 0 0
A 2 = Tran (0,0, L1 )Rot ( y, q2 ) =
− s2 0 c2 L1
z z1
q3 0 0 0 1
q2
1 0 0 0
y2 0 1 0 L2
A3 = Tran (0, L2 , L3 + q3 ) =
O2 0 0 1 L3 + q3
x2 q O0 y1 0 0 0 1
1
O1 y c4 0 s4 s4 L4
0 1 0 0
x A 4 = Rot ( y, q4 )Tran (0,0, L4 ) =
x1 − s4 0 c4 c4 L4
0 0 0 1
Stanford-transformacije 19
FSB
0
T4 = A1 A 2 A3 A 4
1 0 0 0
0 1 0 L2
0
T4 =
0 0 1 L1 + L3 + L4
0 0 0 1
Stanford-kinematika 20
FSB
L1=0.5 m
L2=0.15 m
L3=0.3 m
L4=0.15 m − 0.469 − 0.342 0.814 0.34257
− 0.171 0.939 0 .296 0.28431
0
T4 =
− 0.866 0.000 − 0.500 0.76972
q1=20° 0 0 0 1
q2=40°
q3=0.15 m
q4=80°
Stanford-primjer 21
FSB
Opis robota i okoline
z
SBG = ET6
T6 G
E
B
S
T6 = E-1SBG
x 22
Opis robota
FSB
Definiranje okoline kamerom
z
KDG = ET6
T6 G
E
D
K
T6 = E-1KDG
x 23
Opis kamerom
FSB
Eulerovi kutevi
nx ox ax px
n oy ay p y nx = cosϑ cos ϕ cosψ − sin ϑ sinψ
0
Tn = y
nz oz az pz n y = sin ϑ cos ϕ cosψ + cosϑ sinψ
0 0 0 1
nz = sin ϕ cosψ
n = o = a =1
n×o = a ox = − cosϑ cos ϕ sinψ − sin ϑ cosψ
no = oa = an = 0
o y = − sin ϑ cos ϕ sinψ + cosϑ cosψ
Rot ( z ,ϑ )Rot ( y, ϕ )Rot ( z ,ψ ) oz = sin ϕ sinψ
υ - skretanje
ϕ - nagib ax = cosϑ sin ϕ
ψ - valjanje a y = sin ϑ sin ϕ
az = cos ϕ
Eulerovi kutevi 24
FSB
Eulerovi kutevi za Stanford manipulator
ϑ = q1
ϕ = q2 + q4 = q24 ϕ = q24
ψ =0
ay ATAN2
ϑ = arctan y
ax
ϕ = arccos(az )
- +
− nz
ψ = arccos x
sin ϕ + -
ϑ = ATAN2(a y , ax )
ϕ = ATAN2(ax cosϑ + a y sin ϑ , az )
ψ = ATAN2(-nx sin ϑ + n y cosϑ , - ox sin ϑ + o y cosϑ )
Euler-inverzni 26
FSB
Kvaternion
1
k1 = nx + o y + a z + 1
2
1
k2 = nx − o y − a z + 1 ⇒ sign k2 = sign (oz -a y )
2
1
k3 = o y − nx − a z + 1 ⇒ sign k3 = sign (a x-nz )
2
1
k4 = a z − nx − o y + 1 ⇒ sign k4 = sign (n y -ox )
2
♦ Stanford manipulator
q = [q1 q2 q3 q4 ]T ϑ = q1
ϕ = q2 + q4
r = [ px py pz ϕ ]T ψ =0
♦ traži se q=[ q1 q2 q3 q4 q5 q6 ]T
Upute za rješavanje
Upute 30
FSB
Postupak
(0 A1 )−1 0 T6 = 1T6
(1A 2 ) −1 (0 A1 )−1 0 T6 = 2 T6
( 2 A3 ) −1 (1A 2 ) −1 (0 A1 ) −1 0 T6 = 3T6
(3 A 4 ) −1 (2 A3 ) −1 (1A 2 ) −1 (0 A1 )−1 0 T6 = 4 T6
0
T6 = 0 T6
Postupak 31
FSB
IKP za Stanford manipulator
(0 A1 )−1 0 T4 = 1T4
c1 s1 0 0 nx ox ax px c24 0 s24 s2 ( L3 + q3 ) + s24 L4
− s c 0 0 n y oy ay p y 0 1 0 L2
1 1 =
0 0 1 0 nz oz az pz − s24 0 c24 L1 + c2 ( L3 + q3 ) + c24 L4
0 0 0 1 0 0 0 1 0 0 0 1
(2,4) = (2,4) − s1 px + c1 p y = L2
sin(η − q1) = L2 / r L2
tan(η − q1) =
cos(η − q1) = 1 − ( L2 / r )2 ± r 2 − L22
py
− arctan
L2
q1 = arctan
px + r 2
− L2
2
IKP – Stanford 1 33
FSB
ay
(2,3) = (2,3) q1 = arctan
ax
ny
(2,1) = (2,1) q1 = arctan
nx
q24 = ϕ
IKP – Stanford 2 34
FSB
(1,4) = (1,4) c1 px + s1 p y = s2 ( L3 + q3 ) + s24 L4 (*)
c1 px + s1 p y − s24 L4
iz (*) s2 =
L3 + q3
pz − L1 − c24 L4
iz (**) c2 =
L3 + q3
c1 p x + s1 p y − s24 L4
q2 = arctan
pz − L1 − c24 L4
q4 = q24 − q2 = ϕ − q2
IKP – Stanford 2 35
FSB
( 1 A 2 ) −1 ( 0 A1 ) −1 0
T4 = 2 T4
f 21 = c2 (c1x + s1 y ) − s2 z {+ s2 L1}p
f 22 = − s1x + c1 y
f 23 = s2 (c1x + s1 y ) + c2 z {− c2 L1}p
IKP – Stanford 3 36
FSB
q3 = s2 (c1 px + s1 p y ) + c2 ( pz − L1) − c4 L4 − L3
q3 = s2 (c1 px + s1 p y ) + c2 ( pz − L1) − c4 L4 − L3
IKP – Stanford 4 37
FSB
Jacobieva matrica
∆r = J (q) ∆q / ∆t
∆r ∆q / lim
= J (q) ∆t →0
∆t ∆t
rɺ = J (q) qɺ
dJ (q)
ɺrɺ = qɺ + J (q) q
ɺɺ
dt
Jacobi 1 39
FSB
Jacobieva matrica Stanford manipulatora
∂px
J11 = = −c1L2 − s1s2 ( L3 + q3 ) − s1s24 L4 = − p y
∂q1
∂px
J12 = = c1c2 ( L3 + q3 ) + c1c24 L4
∂q2
∂px
J13 = = c1s2
∂q3
∂px
J14 = = c1c24 L4
∂q4
Stanford Jacobi 1 40
FSB
∂p y
J 21 = = − s1L2 + c1s2 ( L3 + q3 ) + c1s24 L4 = px
∂q1
∂p y
J 22 = = s1c2 ( L3 + q3 ) + s1c24 L4
∂q2
∂p y
J 23 = = s1s2
∂q3
∂p y
J 24 = = s1c24 L4
∂q4
Stanford Jacobi 2 41
FSB
∂pz ∂ϕ
J 31 = =0 J 41 = =0
∂q1 ∂q1
∂pz
J 32 = = s2 ( L3 + q3 ) − s24 L4 ∂ϕ
∂q2 J 42 = =1
∂q2
∂pz
J 33 = = c2 ∂ϕ
∂q3 J 43 = =0
∂q3
∂pz
J 34 = = − s24 L4 ∂ϕ
∂q4 J 44 = =1
∂q4
Stanford Jacobi 3 42
FSB
L1=0.5 m
L2=0.15 m
L3=0.3 m r = [0.3425 0.2843 0.7697 2/3π ]T
L4=0.15 m
[
∆q = 0.229
0.229 4.7mm - 0.229T
]
Primjer 43
FSB
Rješavanje IKP iteracijom
qA=[ q1 q2 q3 q4 q5 q6 ]T q B=[ q1 q2 q3 q4 q5 q6 ]T
Slobodni prijelaz 46
FSB
q1 q1B q2
q2B
q2A
q1A
τ1 t
τ2 t
qɺ1
∆qi qɺ2
τi = 2
qɺɺi.max
τ1 t
τ2 t
qɺɺ1.max
qɺɺ2.max
τ1 t
τ2 t
Slobodni prijelaz 1
τ1 ≠ τ2 ≠ τi 47
FSB
qA=[ q1 q2 q3 q4 q5 q6 ]T qB=[ q1 q2 q3 q4 q5 q6 ]T
Slijedno voñenje 48
FSB
q1 q1B q2
q2B
q2A
q1A
τ1 t τ2 t
qɺ1 qɺ2
τ1 t τ2 t
qɺɺ1 4∆qi qɺɺ
qɺɺi = 2 2
τ
τ1 t τ2 t
Slijedno voñenje 1
τ1 = τ2 = τi = τ 49
FSB
Voñenje po vektoru položaja
z
O y
x
izmeñu točaka: voñenje točka-točka slijednog tipa
Voñenje po položaju 50