Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS...

37
Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: • Introduction Link Description Link-Connection Description Convention for Affixing Frames to Links Manipulator Kinematics • Actuator Space, Joint Space, and Cartesian Space Example: Kinematics of PUMA Robot 1

Transcript of Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS...

Page 1: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

1

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSOutline:

• Introduction• Link Description• Link-Connection Description• Convention for Affixing Frames to Links• Manipulator Kinematics• Actuator Space, Joint Space, and Cartesian Space• Example: Kinematics of PUMA Robot

Page 2: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

2

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSIntroduction:

• Kinematics: Motion without regarding the forces that cause it (Position, Velocity, and Acceleration). Geometry and Time dependent.

• Rigid links are assumed, connected with joints that are instrumented with sensors to the measure the relative position of the connected links.– Revolute Joint Joint Angle– Prismatic Joint Joint Offset/Displacement

• Degrees of Freedom# of independent position variables which have to be specified in order to locate all parts of the mechanism

Sensor

Sensor

Page 3: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

3

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSIntroduction:

• Degrees of FreedomEx: 4-Bar mechanism, # of independent position variables = 1 DoF = 1

• Typical industrial open chain serial robot1 Joint 1 DoF

# of Joints ≡ # of DoF• End Effector:

Gripper, Welding torch, Electromagnetic, etc…

Page 4: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

4

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSIntroduction:

• The position of the manipulator is described by giving a description of the tool frame (attached to the E.E.) relative to the base frame (non-moving).

• Froward kinematics:

GivenJoint Angles

Joint space(θ1,θ1,…,θDoF)

Calculate Position & Orientation of the tool frame w. r. t. base frame

Cartesian space(x,y,z, and orientation angles)

Page 5: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

5

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSLink Description:

• Links Numbering:

n-1 n

E.E.

Base 0

1

2

In this chapter:- Rigid links are assumed which

define the relationship between the corresponding joint axes of the manipulator.

Page 6: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

6

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSLink Description:

• Joint axis (i):Is a line in space or direction vector about which link (i) rotates relative to link (i-1)

• ai ≡ represents the distance between axes (i & i+1) which is a property of the link (link geometry)

ai ≡ ith link length

• αi ≡ angle from axis i to i+1 in right hand sense about ai.

αi ≡ link twist • Note that a plane normal to ai axis will be parallel to both axis i and axis i+1.

Page 7: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

7

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSLink Description

• Example: consider the link, find link length and twist?

a = 7inα = +45o

Page 8: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

8

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSJoint Description

• Intermediate link:Axis i ≡ common axis between links i and i-1di ≡ link offset ≡ distance along this

common axis fromone link to the next

θi ≡ joint angle ≡ the amount

of rotation about this common axis between one link and the other

• Importantdi ≡ variable if joint i is prismatic

θi ≡ variable if joint i is revolute

Page 9: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

9

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSJoint Description

• First and last links:– Use a0 = 0 and α0 = 0. And an and αn are not needed to be defined

• Joints 1:– Revolute the zero position for θ1 is chosen arbitrarily.

d1 = 0.

– Prismatic the zero position for d1 is chosen arbitrarily.

θ1 = 0.

• Joints n: the same convention as joint 1.Zero values were assigned so that later calculations will be as

simple as possible

Page 10: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

10

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSJoint Description

• Link parametersHence, any robot can be described kinematically by giving the values of four quantities for each link. Two describe the link itself, and two describe the link's connection to a neighboring link. In the usual case of a revolute joint, θi is called the joint variable, and the other three quantities would be fixed link parameters. For prismatic joints, d1 is the joint variable, and the other three quantities are fixed link parameters. The definition of mechanisms by means of these quantities is a convention usually called the Denavit—Hartenberg notation

Page 11: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

11

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• A frame is attached rigidly to each link; frame {i} is attached rigidly to link (i), such that:

Intermediate link – -axis of frame {i} is coincident with the joint axis (i). – The origin of frame {i} is located where the ai perpendicular

intersects the joint (i) axis.– -axis points along ai in the direction from joint (i) to joint (i+1)

– In the case of ai = 0, is normal to the plane of and . We define α i as being measured in the right-hand sense about .

– is formed by the right-hand rule to complete the ith frame.

Page 12: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

12

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

First link/joint:– Use frames {0} and {1} coincident when joint variable (1) is zero.

(a0 = 0, α0 = 0, and d0 = 0) if joint (1) is revolute

(a0 = 0, α0 = 0, and d0 = 0) if joint (1) is revolute

Last link/joint:– Revolute joint: frames {n-1} and {n} are coincident when θi = 0.

as a result di = 0 (always).

– Prismatic joint: frames {n-1} and {n} are coincident when di = 0.

as a result θi = 0 (always).

Page 13: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

13

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• Summary

Note: frames attachments is not unique

Page 14: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

14

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• Example: attach frames for the following manipulator, and find DH parameters…

Page 15: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

15

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• Example: attach frames for the following manipulator, and find DH parameters… – Determine Joint axes

(in this case out of the page) All αi = 0

– Base frame {0} when θ1 = 0

can be determined. – Frame {3} (last link) when θ3 = 0

can be determined.

Page 16: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

16

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• Construct the table:

Page 17: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

17

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• Previous exam question

For the 3DoF manipulator shown in the figure assign frames for each link using DH method and determine link parameters.

Page 18: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

18

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• Joint axes - directions1 0ˆ ˆ,Z Z

2Z

3Z

Page 19: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

19

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• - directions

2Z

3Z

3X

1 0ˆ ˆ,X X

2X 1 0ˆ ˆ,Z Z

Page 20: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

20

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• Origens

2Z

3Z

2X

3X

1 0ˆ ˆ,X X

0 1 2, ,O O O

3O

1 0ˆ ˆ,Z Z

Page 21: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

21

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• - directions

2Z

3Z

2X

3X

1 0ˆ ˆ,X X

0 1 2, ,O O O

3O

1 0ˆ ˆ,Z Z

1 0ˆ ˆ,Y Y

2Y3Y

Page 22: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

22

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• DH parameters…

2Z

3Z

2X

3X

1 0ˆ ˆ,X X

0 1 2, ,O O O

3O

1 0ˆ ˆ,Z Z

1 0ˆ ˆ,Y Y

2Y3Y

2a

3d

Page 23: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

23

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSConvention for attaching frames to links

• DH parameters…

i ai-1 αi-1 θi di

1 0 0 θ1 0

2 0 90 θ2 0

3 a2= Const. 90 0 d3

Page 24: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

24

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSManipulator Kinematics

• Extract the relation between frames on the same link position & orientation of {n} relative to {0}POSITION:

1

11

, 1

1

sin

cosi i

ii

O O i i

i i

a

P d

d

1ˆiZ

1iY

ˆiZ

id

1i

Page 25: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

25

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSManipulator Kinematics

ORIENTATION:Rotation about moving axes:Originally {i-1} and {i} have the same orientation

– 1st rotation: rotation about by an angle αi-1.

– 2nd rotation: rotation about by an angle θi

11

11 1

1 1

ˆ ˆ( , ) ( , )

1 0 0 0

0 0

0 0 0 1

ii i i

i iii i i i i

i i

R Rot x Rot z

c s

R c s s c

s c

Page 26: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

26

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSManipulator Kinematics

ORIENTATION:

TRANSFORMATION MATRIX:

11 1 1

1 1 1

0i iii i i i i i

i i i i i

c s

R s c c c s

s s c s c

1

1 1,1

0 0 0 1i i

i ii O Oi

i

R PT

1

1 1 1 11

1 1 1 1

0

0 0 0 1

i i i

i i i i i i iii

i i i i i i i

c s a

s c c c s d sT

s s c s c d c

Page 27: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

27

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSManipulator kinematics

• Example: for the previous manipulator find the transformation matrix for each link.

1

1 1 1 11

1 1 1 1

0

0 0 0 1

i i i

i i i i i i iii

i i i i i i i

c s a

s c c c s d sT

s s c s c d c

i ai-1 αi-1 θi di

1 0 0 θ1 0

2 0 90 θ2 0

3 a2 90 0 d3

1 1 0 1 1 0

1 0 1 0 0 1 0 1 101

1 0 1 0 0 1 0

0 0

0 0

0 0 1 0

0 0 0 1 0 0 0 1

c s a c s a

s c c c s d s s cT

s s c s c d c

2 2 1 1 0

2 2 1 112

2 2

0 (0) 0

(90) (90) (90) (0) (90) 0 0

(90) (90) (90) (0) (90) 0 0 1 0

0 0 0 1 0 0 0 1

c s c s a

s c c c s s s cT

s s c s c c

Each matrix is constructed from one row of the table

Page 28: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

28

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSManipulator kinematics

• Example: for the previous manipulator find the transformation matrix for each link.

1

1 1 1 11

1 1 1 1

0

0 0 0 1

i i i

i i i i i i iii

i i i i i i i

c s a

s c c c s d sT

s s c s c d c

i ai-1 αi-1 θi di

1 0 0 θ1 0

2 0 90 θ2 0

3 a2 90 0 d3

2 2

3 323

3

(0) (0) 0 1 0 0

(0) (90) (0) (90) (90) (90) 0 0 1

(0) (90) (0) (90) (90) (90) 0 1 0 0

0 0 0 1 0 0 0 1

c s a a

s c c c s d s dT

s s c s c d c

Page 29: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

29

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSManipulator kinematics

• Concatenating link transformations:

Each transformation has one variable (θi or di)

is a function of all n-joint variables

0 0 1 2 11 2 1... n n

n n nT T T T T

0nT

1iiT

Page 30: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

30

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSManipulator kinematics

• Concatenating link transformations:

Each transformation has one variable (θi or di)

is a function of all n-joint variables

0 0 1 2 11 2 1... n n

n n nT T T T T

0nT

1iiT

Page 31: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

31

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSExample: Kinematics of PUMA Robot

Page 32: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

32

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSExample: Kinematics of PUMA Robot

Frame attachments

Page 33: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

33

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSExample: Kinematics of PUMA Robot

DH parameters

Page 34: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

34

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSExample: Kinematics of PUMA Robot

Transformation matrices

Refer to the book for more kinematic equations

Page 35: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

35

Faculty of Engineering - Mechanical Engineering Department

ROBOTICS

• Joint Space: Joint variables (θ1/d1, θ2/d2, … θn/dn) • Cartesian Space: Position and orientation of the E.E.

relative to the base frame– Direct kinematics: joint variables Position and orientation of the

E.E. relative to the base frame.

• Actuator Space: In most of cases, actuators are not connected directly to the joints (Gear trains, mechanisms, pulleys and chains …). Moreover, sensors/encoders are mounted on the actuators rather than robot joints. Hence, it will be easier to describe the motion of the robot by actuator variables.

Actuator, Joint, and Cartesian Spaces:

Page 36: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

36

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSActuator, Joint, and Cartesian Spaces:

Inverse Problem

Inverse Problem

DirectProblem

DirectProblem

Page 37: Chapter 3: Forward Kinematics Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: Introduction Link Description Link-Connection.

Chapter 3: Forward Kinematics

37

Faculty of Engineering - Mechanical Engineering Department

ROBOTICSFrames with standard names: