Recap: rigid motions Rigid motion is a combination of rotation and - - PDF document

recap rigid motions
SMART_READER_LITE
LIVE PREVIEW

Recap: rigid motions Rigid motion is a combination of rotation and - - PDF document

Forward and Inverse Kinematics Chapter 3 Hadi Moradi ( original slides by Steve from Harvard ) Recap: rigid motions Rigid motion is a combination of rotation and translation Defined by a rotation matrix ( R ) and a displacement vector


slide-1
SLIDE 1

1

Forward and Inverse Kinematics Chapter 3 Hadi Moradi (original slides by Steve from Harvard)

Recap: rigid motions

  • Rigid motion is a combination of rotation and translation

– Defined by a rotation matrix (R) and a displacement vector (d) – the group of all rigid motions (d,R) is known as the Special Euclidean group, SE(3)

slide-2
SLIDE 2

2 Recap: homogeneous transforms

  • Basic transforms:

Th t l ti th t ti – Three pure translation, three pure rotation

⎥ ⎥ ⎥ ⎥ ⎤ ⎢ ⎢ ⎢ ⎢ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 1 1 1 1 1 1 1

, ,

b a

b y a x

Trans Trans ⎥ ⎥ ⎥ ⎥ ⎤ ⎢ ⎢ ⎢ ⎢ ⎡ − = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − = 1 1 1

, , β β β β β α α α α α

c s s c c s s c

y x

Rot Rot ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎦ ⎢ ⎢ ⎣ 1 1 1 1 1 1

,

c

c z

Trans ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − = ⎥ ⎥ ⎦ ⎢ ⎢ ⎣ 1 1 1

, γ γ γ γ γ β β

c s s c c s

z

Rot

Example

  • Euler angles: we have only discussed ZYZ Euler angles. What is the

g y g set of all possible Euler angles that can be used to represent any rotation matrix?

– XYZ, YZX, ZXY, XYX, YZY, ZXZ, XZY, YXZ, ZYX, XZX, YXY, ZYZ

slide-3
SLIDE 3

3 Example

  • Compute the homogeneous transformation representing a translation of

p g p g 3 units along the x-axis followed by a rotation of π/2 about the current z- axis followed by a translation of 1 unit along the fixed y-axis

Forward kinematics introduction

  • Challenge: given all the joint parameters of a manipulator, determine

g g j p p the position and orientation of the tool frame

slide-4
SLIDE 4

4 Convention

  • A n-DOF manipulator will have n joints (either revolute or prismatic) and

n+1 links (since each joint connects two links) n 1 links (since each joint connects two links)

– We assume that each joint only has one DOF. – The o0 frame is the inertial frame –

  • n is the tool frame

– Joint i connects links i-1 and i – The oi is connected to link i

  • Joint variables q
  • Joint variables, qi

⎩ ⎨ ⎧ = prismatic is joint if revolute is joint if i d i q

i i i

θ

Convention

  • We said that a homogeneous transformation allowed us to express the

position and orientation of oj with respect to oi position and orientation of oj with respect to oi

slide-5
SLIDE 5

5 Convention

  • Finally, the position and orientation of the tool frame with respect to the

inertial frame is given by one homogeneous transformation matrix: inertial frame is given by one homogeneous transformation matrix:

– For a n-DOF manipulator

( ) ( ) ( )

n n n n n

q A q A q A T

  • R

H ⋅ ⋅ ⋅ = = ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ =

2 2 1 1

1

The Denavit-Hartenberg (DH) Convention

  • Representing each individual homogeneous transformation as the

product of four basic transformations: product of four basic transformations:

⎥ ⎥ ⎤ ⎢ ⎢ ⎡ − − ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − = = 1 1 1 1 1 1 1 1 1 1 1 1 Rot Trans Trans Rot

, , , , i i i x a x d z z i

s a s c c c s c a s s c s c c s s c a d c s s c A

i i i i i i i i i i i i i i i i i i

θ α θ α θ θ α α α α θ θ θ θ α θ

⎥ ⎥ ⎥ ⎦ ⎢ ⎢ ⎢ ⎣ − = 1

i i

d c s s a s c c c s

i i i i i i i i

α α θ α θ α θ θ

slide-6
SLIDE 6

6 Existence and uniqueness

  • When can we represent a homogeneous transformation using the 4 DH

parameters? parameters?

Existence and uniqueness

  • Proof:

1 We assume that R1

0 has the form: θ 1

R R R =

  • 1. We assume that R1 has the form:
  • 2. Use DH1 to verify the form of R1

α θ , , 1 x z R

R R

slide-7
SLIDE 7

7 Existence and uniqueness

  • Proof:

1 Use DH2 to determine the form of o1

  • 1. Use DH2 to determine the form of o1

Physical basis for DH parameters

  • ai: link length, distance between the z0 and z1 (along x1)
  • αi: link twist, angle between z0 and z1 (measured around x1)
  • di: link offset, distance between o0 and intersection of z0 and x1 (along z0)
  • θi: joint angle, angle between x0 and x1 (measured around z0)

positive convention:

=

, , , , x a x d z z i

A

i i i i

α θ

Rot Trans Trans Rot ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − − = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − = 1 1 1 1 1 1 1 1 1 1 1 1 1

, , , , i i i i i a d

d c s s a s c c c s c a s s c s c c s s c a d c s s c

i i i i i i i i i i i i i i i i i i i i i i i i i i

α α θ α θ α θ θ θ α θ α θ θ α α α α θ θ θ θ α θ

slide-8
SLIDE 8

8 Assigning coordinate frames

  • For any n-link manipulator, we can always choose coordinate frames

such that DH1 and DH2 are satisfied such that DH1 and DH2 are satisfied

– The choice is not unique, but the end result will always be the same

  • 1. Choose zi as axis of rotation for joint i+1

Assigning coordinate frames

  • 2. Assign base frame
  • 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
slide-9
SLIDE 9

9 Assigning coordinate frames

i. zi-1 and zi are non-coplanar

Assigning coordinate frames

ii. zi-1 and zi intersect

slide-10
SLIDE 10

10 Assigning coordinate frames

iii. zi-1 and zi are parallel

Assigning tool frame

  • The previous assignments are valid up to frame n-1

– The tool frame assignment is most often defined by the axes n s a: The tool frame assignment is most often defined by the axes n, s, a:

slide-11
SLIDE 11

11 Example 1: two-link planar manipulator

  • 2DOF: need to assign three coordinate frames

Example 1: two-link planar manipulator

  • Now define DH parameters

– First define the constant parameters ai αi First, define the constant parameters ai, αi – Second, define the variable parameters θi, di link ai αi di θi 1 2

slide-12
SLIDE 12

12 Example 2: three-link cylindrical robot

  • 3DOF: need to assign four coordinate frames

Example 2: three-link cylindrical robot

  • Now define DH parameters

– First define the constant parameters ai αi link ai αi di θi 1 First, define the constant parameters ai, αi – Second, define the variable parameters θi, di 1 2 3

slide-13
SLIDE 13

13 Example 3: spherical wrist

  • 3DOF: need to assign four coordinate frames

Example 3: spherical wrist

link ai αi di θi 4

  • Now define DH parameters

– First define the constant parameters ai αi 5 6 First, define the constant parameters ai, αi – Second, define the variable parameters θi, di

slide-14
SLIDE 14

14 Next class…

  • More examples for common configurations