Lecture - 3 - Examples
Lecture - 3 - Examples
Examples
Assigning coordinate frames
1. Choose zi as axis of rotation for joint i+1
– z0 is axis of rotation for joint 1, z1 is axis of rotation for joint 2, etc
– If joint i+1 is revolute, zi is the axis of rotation of joint i+1
– If joint i+1 is prismatic, zi is the axis of translation for joint i+1
Assigning coordinate frames
2. Assign base frame
– Can be any point along z0
3. Chose x0, y0 to follow the right-handed convention
4. Now start an iterative process to define frame i with respect to frame i-1
– Consider three cases for the relationship of zi-1 and zi:
i. zi-1 and zi are non-coplanar
ii. zi-1 and zi intersect
zi-1 and zi are coplanar
iii. zi-1 and zi are parallel
Assigning coordinate frames
i. zi-1 and zi are non-coplanar
– There is a unique shortest distance between the two axes
– Choose this line segment to be xi
• oi is at the intersection of zi and xi
– Choose yi by right-handed convention
iii. zi-1 and zi intersect
– Choose xi to be normal to the plane defined by zi and zi-1
• oi is at the intersection of zi and xi
– Choose yi by right-handed convention
v. zi-1 and zi are parallel
– Infinitely many normals of equal length between zi and zi-1
– Free to choose oi anywhere along zi, however if we choose xi to be along
the normal that intersects at oi-1, the resulting di will be zero
– Choose yi by right-handed convention
Assigning tool frame
positive convention:
Transformation between i-1
link ai αi di θi
1 0 0 d1 θ1
2 0 -90 d2 0
3 0 0 d3 0
⎡c1 − s1 0 0⎤ ⎡1 0 0 0⎤ ⎡1 0 0 0⎤
⎢s c1 0 0 ⎥⎥ ⎢0 0 1 0 ⎥⎥ ⎢0 1 0 0 ⎥⎥
A1 = ⎢ 1 , A2 = ⎢ , A3 = ⎢
⎢0 0 1 d1 ⎥ ⎢0 − 1 0 d2 ⎥ ⎢0 0 1 d3 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣0 0 0 1⎦ ⎣0 0 0 1⎦ ⎣0 0 0 1⎦
⎡c1 0 − s1 − s1d 3 ⎤
⎢s 0 c c d ⎥
0 1 1 1 3
T3 = A1A2 A3 = ⎢ ⎥
⎢ 0 − 1 0 d1 + d 2 ⎥
⎢ ⎥
⎣0 0 0 1 ⎦
Example 3: spherical wrist
• 3DOF: need to assign four coordinate frames
– yaw, pitch, roll (θ4, θ5, θ6) all intersecting at one point o (wrist center)
Example 3: spherical wrist
⎢ − s5 c 6 s5 c 6 c5 c5d 6 ⎥
⎢ ⎥
⎣ 0 0 0 1 ⎦
Example 4: cylindrical robot with spherical wrist
• 6DOF: need to assign seven coordinate frames
– But we already did this for the previous two examples, so we can fill in the
table of DH parameters:
link ai αi di θi
1 0 0 d1 θ1
2 0 -90 d2 0
3 0 0 d3 0
o3, o4, o5 are all at 4 0 -90 0 θ4
the same point oc
5 0 90 0 θ5
6 0 0 d6 θ6
Example 4: cylindrical robot with spherical wrist
• Note that z3 (axis for joint 4) is collinear with z2 (axis for joint 3), thus we
can make the following combination:
r11 = c1c 4c5c 6 − c1s 4s6 + s1s5c 6
⎡ r11 r12 r13 dx ⎤
⎢r r r23 d y ⎥⎥ r21 = s1c 4c5c 6 − s1s 4s6 − c1s5c 6
T6 = T3 T6 = ⎢ 21 22
0 0 3
r31 = −s 4c5c 6 − c 4s6
⎢ r31 r32 r33 dz ⎥
⎢ ⎥ r12 = −c1c 4c5s6 − c1s 4c 6 − s1s5c 6
⎣0 0 0 1⎦
r22 = −s1c 4c5s6 − s1s 4s6 + c1s5c 6
r32 = s4c5c 6 − c 4c 6
r13 = c1c 4s5 − s1c5
r23 = s1c 4s5 + c1c5
r33 = −s 4s5
d x = c1c 4s5d 6 − s1c5d 6 − s1d 3
d y = s1c 4s5d 6 + c1c5d 6 + c1d 3
d z = −s 4s5d 6 + d1 + d 2
Example 5: the Stanford manipulator
• 6DOF: need to assign seven coordinate frames:
1. Choose z0 axis (axis of rotation for joint 1, base frame)
2. Choose z1-z5 axes (axes of rotation/translation for joints 2-6)
3. Choose xi axes
4. Choose tool frame
5. Fill in table of DH parameters:
Example 5: the Stanford manipulator
• Now determine the individual homogeneous transformations:
⎡c1 0 − s1 0⎤ ⎡c2 0 s2 0⎤
⎢s 0 c1 0⎥⎥ ⎢s 0 − c2 0 ⎥⎥
link ai αi di θi A1 = ⎢ 1 , A2 = ⎢ 2 ,
⎢0 −1 0 0⎥ ⎢0 1 0 d2 ⎥
1 0 -90 0 θ1 ⎢ ⎥ ⎢ ⎥
⎣0 0 0 1⎦ ⎣0 0 0 1⎦
2 0 90 d2 θ2 ⎡1 0 0 0⎤ ⎡c4 0 − s4 0⎤
⎢0 1 0 0 ⎥⎥ ⎢s 0 c4 0⎥⎥
3 0 0 d3 0 A3 = ⎢ , A4 = ⎢ 4 ,
⎢0 0 1 d3 ⎥ ⎢0 −1 0 0⎥
⎢ ⎥ ⎢ ⎥
4 0 -90 0 θ4 ⎣0 0 0 1⎦ ⎣0 0 0 1⎦
5 0 90 0 θ5 ⎡c5 0 s5 0⎤ ⎡c6 − s6 0 0 ⎤
⎢s 0 − c5 0⎥⎥ ⎢s c6 0 0 ⎥⎥
6 0 0 d6 θ6 A5 = ⎢ 5 , A6 = ⎢ 6
⎢0 −1 0 0⎥ ⎢0 0 1 d6 ⎥
⎢ ⎥ ⎢ ⎥
⎣0 0 0 1⎦ ⎣0 0 0 1⎦
Example 5: the Stanford manipulator
⎢ 0 0 − 1 − d3 − d 4 ⎥
⎢ ⎥
⎣ 0 0 0 1 ⎦
Q
u
e
s
t
i
o
n
s