robot kinematics: articulated robots · control robot kinematics: articulated robots ... quite...

19
PR 502 Robot Dynamics & Control 11/9/2006 1 PR 502: Robot Dynamics & Control Robot Kinematics: Articulated Robots Asanga Ratnaweera Department of Mechanical Engieering 9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering 2 Articulated Robots

Upload: buituyen

Post on 22-Jul-2018

247 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

1

PR 502: Robot Dynamics & Control

Robot Kinematics:Articulated Robots

Asanga RatnaweeraDepartment of Mechanical Engieering

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

2

Articulated Robots

Page 2: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

2

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

3

Denavit-Hartenberg (DH) Representation

Developed by Denavit and Hartenberg in 1955 for kinematic modeling of lower pairsHas become a standard way of representing robots and modeling their motions.However, direct modeling techniques learned before are faster and straight forwardQuite useful for Articulated robot modeling

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

4

Links, Joints and Their ParametersMechanical manipulator consists of sequence of rigid bodies (links) connected either revolute or prismatic joint.Each joint-link pair constitutes one degree of freedom (dof).Hence, for n dof system has n number of links.Usually the first link (link 0) is attached to a supporting base and last link is attached with the tool.

Page 3: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

3

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

5

DH Coordinate frames

Establishing base coordinate system:A right handed Cartesian coordinate system XYZ or xo, yo, zo is assigned to the base of the manipulator with the zo axis lying along the axis of motion for the 1st link (joint 1) and pointing towards the shoulder of the robot.

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

6

DH Coordinate frames

Page 4: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

4

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

7

DH Coordinate framesEstablishing the joint axis:

All joints without exception are represented by a Z axis.If the joint is revolute the Z axis is the axis of rotation.If the joint is prismatic, Z axis is along the direction of the linear motion.

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

8

DH Coordinate framesEstablishing the joint axis:

Defining X axisAssign the X axis along the common normal between two Z axes.If two z axes are parallel then assign X axis along the common normal to the previous jointIf two Z axes are intersecting each other, assign the x axis along a line perpendicular to the plane formed by the two Z axes

Page 5: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

5

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

9

DH Coordinate frames

Common normal between two z axes of joint 1 and 2

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

10

DH Coordinate frames

Page 6: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

6

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

11

DH Coordinate frames

Z1X1

Y1

X2Z2

Y2

Z3

X3

Y3

1 2 3

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

12

DH Coordinate frames

Page 7: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

7

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

13

Z(i - 1)

X(i -1)

Y(i -1)

α( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

Z(i - 1)

X(i -1)

Y(i -1)

α( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

Denavit-HartenbergParametersConsider any link i

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

14

DH ParameterFour parameters (a,α,d,θ) are associated with each link of a manipulator.

a : the perpendicular distance between the adjacent joint axes (Z axes).

ex: ai-1 is the perpendicular distance between Z(i) and Z(i-1) axes.

Page 8: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

8

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

15

DH Parameters

ai-1

αi-1

αi-1

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

16

DH Parameterα : Amount of rotation around the

common perpendicular so that the joint axes are parallel.

Ex: αi -1 is how much you have to rotate Z(i-1)about X(i-1) axis so that the Z(i-1) is pointing in the same direction as the Z(i) axis.Positive rotation follows the right hand rule.

Page 9: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

9

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

17

DH Coordinate frames

ai-1

αi-1

αi-1

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

18

DH Parameterdi : The displacement along the Zi-1 axis needed to align the ai-1 common perpendicular to the ai common perpendicular. In other words, displacement along the Zi to align the Xi-1and Xi axes.Note: a, α are called link parameters and d, θ are called joint parameters

Page 10: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

10

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

19

Denavit-HartenbergParameters

Z(i - 1)

X(i -1)

Y(i -1)

α( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

Z(i - 1)

X(i -1)

Y(i -1)

α( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

20

Denavit-HartenbergTransformation

Page 11: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

11

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

21

Denavit-HartenbergTransformation

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

22

The Denavit-HartenbergMatrix

Just like the Homogeneous Matrix, the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next. Using a series of D-H Matrix multiplications and the D-H Parameter table, the final result is a transformation matrix from some frame to your initial frame.

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎡−−

−−−−

−−−−

1000cosαcosαsinαcosθsinαsinθsinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

dd

a

Page 12: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

12

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

23

Example: Robot with three revolute joints

Tool

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

24

Example: Robot with three revolute joints

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

Page 13: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

13

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

25

Example: Robot with three revolute joints

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

26

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i α(i-1) a(i-1) di θi

0 0 0 0 θ0

1 0 a0 0 θ1

2 -90 a1 d2 θ2

Denavit-Hartenberg Link Parameter Table

Page 14: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

14

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

27

Ex: robot with 3 Revolute Joints Z2Y2

Z0

X0

Y0

Z1

X2

Y1

X1

d2

a0 a1

Notice that the table has two uses:

1) To describe the robot with its variables and parameters.

2) To describe some state of the robot by having a numerical values for the variables.

Denavit-Hartenberg Link Parameter Table

i α(i-1) a(i-1) di θi

0 0 0 0 θ0

1 0 a0 0 θ1

2 -90 a1 d2 θ2

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

28

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i α(i-1) a(i-1) di θi

0 0 0 0 θ0

1 0 a0 0 θ1

2 -90 a1 d2 θ2

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

=

1VVV

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010=

Note: T is the D-H matrix with (i-1) = 0 and i = 1.

Page 15: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

15

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

29

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡ −

=

1000010000cosθsinθ00sinθcosθ

T 00

00

0

i α(i-1) a(i-1) di θi

0 0 0 0 θ0

1 0 a0 0 θ1

2 -90 a1 d2 θ2

This is just a rotation around the Z0 axis

⎥⎥⎥⎥

⎢⎢⎢⎢

−−

=

100000cosθsinθ

d100a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2followed by a rotation around the X2 andZ2 axis

T)T)(T)((T 12

010=

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡ −

=

1000000000cosθsinθa0sinθcosθ

T 11

011

01

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

30

More examples

Y0ˆ

Y1ˆ

Y3ˆ

Y2ˆ

X0ˆ

X1ˆ

X2ˆ

X3ˆ

θ 30L203

θ 2 0L102

θ 10001

θ i d ia i - 1α i - 1i

Page 16: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

16

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

31

Ex: PUMA 650 Robot

θ 6 00-90°6

θ 50090°5

θ 4d4a3-90°4

θ 3d3a203

θ 2 00-90°2

θ 10001

θ i d ia i - 1α i - 1i

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

32

Ex: PUMA Robot

θ 6 00-90°6

θ 50090°5

θ 4d4a3-90°4

θ 3d3a203

θ 2 00-90°2

θ 10001

θ i d ia i - 1α i - 1i

TTTTTTTT 65

54

43

32

21

100=

Px = c1 [ a2c2 + a3c23 – d4s23] – d3s1

Py = s1 [ a2c2 + a3c23 – d4s23] + d3c1

Pz = – a3s23 – a2s2 – d4c23

Where,C – cos, S - sin

Ci=cosθi ; Cij = cos(θi + θj)

Page 17: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

17

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

33

Px = c1 [ l2c2 + l3c23]Py = s1 [ l2c2 + l3c23 ]Pz = – l2s2 – l3s23

θ 50090°5

θ 40L304

θ 30L203

θ 2 00-90°2

θ 10001

θ i d ia i - 1α i - 1i

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

34

Ex: Stanford Robot

Page 18: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

18

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

35

Ex: Stanford Robot

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

36

Example

Page 19: Robot Kinematics: Articulated Robots · Control Robot Kinematics: Articulated Robots ... Quite useful for Articulated robot modeling 9 November 2006 Asanga Ratnaweera, Department

PR 502 Robot Dynamics & Control 11/9/2006

19

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

37

Ex: Stanford Robot

X1 Y1

Z1

X2

Z2

X3

Z3

X4

X5

X6

Z4

Z5

Z6

X7

Z7

9 November 2006 Asanga Ratnaweera, Department of Mechanical Engineering

38

DH Notation

Example - Stanford Arm (cont'd)DH Parameters of Stanford Arm

θ60b606

θ50°b505

θ490°004

90°90°b3 03

θ290°b202

θ190°b101

θiαibiaii