Chapter 2 robot kinematics

35
Chapter 2 Robot Kinematics: Position Analysis 2.1 INTRODUCTION Forward Kinematics: to determine where the robot’s hand is? (If all joint variables are known) Inverse Kinematics: to calculate what each joint variable is? (If we desire that the hand be located at a particular point)

Transcript of Chapter 2 robot kinematics

Page 1: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.1 INTRODUCTION

♦Forward Kinematics: to determine where the robot’s hand is? (If all joint variables are known)

♦Inverse Kinematics: to calculate what each joint variable is? (If we desire that the hand be located at a particular point)

Page 2: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.2 ROBOTS AS MECHANISM

Fig. 2.1 A one-degree-of-freedom closed-loop four-bar mechanism

♦Multiple type robot have multiple DOF. (3 Dimensional, open loop, chain mechanisms)

Fig. 2.2 (a) Closed-loop versus (b) open-loop mechanism

Page 3: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.3 MATRIX REPRESENTATION 2.3.1 Representation of a Point in Space

Fig. 2.3 Representation of a point in space

♦A point P in space : 3 coordinates relative to a reference frame

^^^

kcjbiaP zyx ++=

Page 4: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.3 MATRIX REPRESENTATION 2.3.2 Representation of a Vector in Space

Fig. 2.4 Representation of a vector in space

♦A Vector P in space : 3 coordinates of its tail and of its head

^^^__

kcjbiaP zyx ++=

=

w

z

y

x

P__

Page 5: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.3 MATRIX REPRESENTATION 2.3.3 Representation of a Frame at the Origin of a Fixed-Reference Frame

Fig. 2.5 Representation of a frame at the origin of the reference frame

♦Each Unit Vector is mutually perpendicular. : normal, orientation, approach vector

=

zzz

yyy

xxx

aon

aon

aon

F

Page 6: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.3 MATRIX REPRESENTATION 2.3.4 Representation of a Frame in a Fixed Reference Frame

Fig. 2.6 Representation of a frame in a frame

♦Each Unit Vector is mutually perpendicular. : normal, orientation, approach vector

=

1000

zzzz

yyyy

xxxx

Paon

Paon

Paon

F

Page 7: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.3 MATRIX REPRESENTATION 2.3.5 Representation of a Rigid Body

Fig. 2.8 Representation of an object in space

♦An object can be represented in space by attaching a frame to it and representing the frame in space.

=

1000

zzzz

yyyy

xxxx

objectPaon

Paon

Paon

F

Page 8: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.4 HOMOGENEOUS TRANSFORMATION MATRICES

♦A transformation matrices must be in square form.

• It is much easier to calculate the inverse of square matrices.• To multiply two matrices, their dimensions must match.

=

1000

zzzz

yyyy

xxxx

Paon

Paon

Paon

F

Page 9: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.5 REPRESENTATION OF TRANSFORMATINS 2.5.1 Representation of a Pure Translation

Fig. 2.9 Representation of an pure translation in space

♦A transformation is defined as making a movement in space. • A pure translation.• A pure rotation about an axis.• A combination of translation or rotations.

=

1000

100

010

001

z

y

x

d

d

d

T

Page 10: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.5 REPRESENTATION OF TRANSFORMATINS 2.5.2 Representation of a Pure Rotation about an Axis

Fig. 2.10 Coordinates of a point in a rotating frame before and after rotation.

♦Assumption : The frame is at the origin of the reference frame and parallel to it.

Fig. 2.11 Coordinates of a point relative to the reference frame and rotating frame as viewed from the x-axis.

Page 11: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.5 REPRESENTATION OF TRANSFORMATINS 2.5.3 Representation of Combined Transformations

Fig. 2.13 Effects of three successive transformations

♦A number of successive translations and rotations….

Fig. 2.14 Changing the order of transformations will change the final result

Page 12: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.5 REPRESENTATION OF TRANSFORMATINS 2.5.5 Transformations Relative to the Rotating Frame

Fig. 2.15 Transformations relative to the current frames.

♦Example 2.8

Page 13: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.6 INVERSE OF TRANSFORMATION MATIRICES

Fig. 2.16 The Universe, robot, hand, part, and end effecter frames.

♦Inverse of a matrix calculation steps : • Calculate the determinant of the matrix. • Transpose the matrix. • Replace each element of the transposed matrix by its own minor(adjoint matrix). • Divide the converted matrix by the determinant.

Page 14: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS

Fig. 2.17 The hand frame of the robot relative to the reference frame.

♦Forward Kinematics Analysis: • Calculating the position and orientation of the hand of the robot. • If all robot joint variables are known, one can calculate where the robot is at any instant. • Recall Chapter 1.

Page 15: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.1 Forward and Inverse Kinematics Equations for Position

♦Forward Kinematics and Inverse Kinematics equation for position analysis : (a) Cartesian (gantry, rectangular) coordinates. (b) Cylindrical coordinates. (c) Spherical coordinates. (d) Articulated (anthropomorphic, or all-revolute) coordinates.

Page 16: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.1 Forward and Inverse Kinematics Equations for Position 2.7.1(a) Cartesian (Gantry, Rectangular) Coordinates

♦IBM 7565 robot • All actuator is linear. • A gantry robot is a Cartesian robot.

Fig. 2.18 Cartesian Coordinates.

==

1000

100

010

001

z

y

x

cartPR

P

P

P

TT

Page 17: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.1 Forward and Inverse Kinematics Equations for Position 2.7.1(b) Cylindrical Coordinates

♦2 Linear translations and 1 rotation • translation of r along the x-axis • rotation of α about the z-axis • translation of l along the z-axis

Fig. 2.19 Cylindrical Coordinates.

==

1000

100

0

0

l

rSCS

rCSC

TT cylPR ααα

ααα

,0,0))Trans(,)Rot(Trans(0,0,),,( rzllrTT cylPR αα ==

Page 18: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.1 Forward and Inverse Kinematics Equations for Position 2.7.1(c) Spherical Coordinates

♦2 Linear translations and 1 rotation • translation of r along the z-axis • rotation of β about the y-axis • rotation of γ along the z-axis

Fig. 2.20 Spherical Coordinates.

−⋅⋅⋅⋅⋅−⋅

==

1000

0 βββγβγβγγβγβγβγγβ

rCCS

SrSSSCSC

CrSCSSCC

TT sphPR

))Trans()Rot(Rot()( 0,0,,,,, γβγβ yzlrsphPR TT ==

Page 19: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.1 Forward and Inverse Kinematics Equations for Position 2.7.1(d) Articulated Coordinates

♦3 rotations -> Denavit-Hartenberg representation

Fig. 2.21 Articulated Coordinates.

Page 20: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.2 Forward and Inverse Kinematics Equations for Orientation

♦ Roll, Pitch, Yaw (RPY) angles♦ Euler angles♦ Articulated joints

Page 21: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.2 Forward and Inverse Kinematics Equations for Orientation 2.7.2(a) Roll, Pitch, Yaw(RPY) Angles

♦Roll: Rotation of about -axis (z-axis of the moving frame)♦Pitch: Rotation of about -axis (y-axis of the moving frame)♦Yaw: Rotation of about -axis (x-axis of the moving frame)

aaφoφnφ

on

Fig. 2.22 RPY rotations about the current axes.

Page 22: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.2 Forward and Inverse Kinematics Equations for Orientation 2.7.2(b) Euler Angles

Fig. 2.24 Euler rotations about the current axes.

♦Rotation of about -axis (z-axis of the moving frame) followed by♦Rotation of about -axis (y-axis of the moving frame) followed by♦Rotation of about -axis (z-axis of the moving frame).

aφθψ

oa

Page 23: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.2 Forward and Inverse Kinematics Equations for Orientation 2.7.2(c) Articulated Joints

Consult again section 2.7.1(d)…….

Page 24: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.7 FORWARD AND INVERSE KINEMATICS OF ROBOTS 2.7.3 Forward and Inverse Kinematics Equations for Orientation

)()( ,,,, noazyxcartHR RPYPPPTT φφφ×=

)()( ,,,, ψθγβ φEulerTT rsphHR ×=

♦ Assumption : Robot is made of a Cartesian and an RPY set of joints.

♦ Assumption : Robot is made of a Spherical Coordinate and an Euler angle.

Another Combination can be possible……

Denavit-Hartenberg Representation

Page 25: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.8 DENAVIT-HARTENBERG REPRESENTATION OF FORWARD KINEMATIC EQUATIONS OF ROBOT

• Denavit-Hartenberg Representation :

Fig. 2.25 A D-H representation of a general-purpose joint-link combination

@ Simple way of modeling robot links and joints for any robot configuration, regardless of its sequence or complexity.

@ Transformations in any coordinates is possible.

@ Any possible combinations of joints and links and all-revolute articulated robots can be represented.

Page 26: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.8 DENAVIT-HARTENBERG REPRESENTATION OF FORWARD KINEMATIC EQUATIONS OF ROBOT

• Denavit-Hartenberg Representation procedures:

Start point:

Assign joint number n to the first shown joint.

Assign a local reference frame for each and every joint before or

after these joints.

Y-axis does not used in D-H representation.

Page 27: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.8 DENAVIT-HARTENBERG REPRESENTATION OF FORWARD KINEMATIC EQUATIONS OF ROBOT

• Procedures for assigning a local reference frame to each joint:

.All joints are represented by a z-axis ٭ (right-hand rule for rotational joint, linear movement for prismatic joint)

The common normal is one line mutually perpendicular to any two ٭

skew lines.

.Parallel z-axes joints make a infinite number of common normal ٭

Intersecting z-axes of two successive joints make no common ٭

normal between them(Length is 0.).

Page 28: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.8 DENAVIT-HARTENBERG REPRESENTATION OF FORWARD KINEMATIC EQUATIONS OF ROBOT

• Symbol Terminologies :

⊙ θ : A rotation about the z-axis.

⊙ d : The distance on the z-axis.

⊙ a : The length of each common normal (Joint offset).

⊙ α : The angle between two successive z-axes (Joint twist)

Only θ and d are joint variables.

Page 29: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.8 DENAVIT-HARTENBERG REPRESENTATION OF FORWARD KINEMATIC EQUATIONS OF ROBOT

• The necessary motions to transform from one reference frame to the next.

(I) Rotate about the zn-axis an able of θn+1. (Coplanar)

(II) Translate along zn-axis a distance of dn+1 to make xn and xn+1

colinear.

(III) Translate along the xn-axis a distance of an+1 to bring the origins

of xn+1 together.

(IV) Rotate zn-axis about xn+1 axis an angle of αn+1 to align zn-axis

with zn+1-axis.

Page 30: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.9 THE INVERSE KINEMATIC SOLUTION OF ROBOT

• Determine the value of each joint to place the arm at a desired position and orientation.

654321 AAAAAATHR =

+++−+

++−−

−−+

++++

−−−

=

1000

)()()()(

)()()()(

2232342345234623465234623465234

22323423415152341651

6234652341

651

6234652341

22323423415152341651

6234652341

651

6234652341

aSaSaSSSCCCCSSCCCS

aCaCaCSCCSCSCSC

CSCCCS

CSC

SSCCCS

aCaCaCCCSSCCCSS

CSCCCC

CSS

SSCCCC

=

1000

zzzz

yyyy

xxxx

paon

paon

paon

Page 31: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.9 THE INVERSE KINEMATIC SOLUTION OF ROBOT

6543211

11 ][

1000

AAAAARHSApaon

paon

paon

Azzzz

yyyy

xxxx

==

× −−

6543211

11

10001000

00

0100

00

AAAAApaon

paon

paon

CS

SC

zzzz

yyyy

xxxx

=

×

Page 32: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.9 THE INVERSE KINEMATIC SOLUTION OF ROBOT

= −

x

y

p

p11 tanθ

)())((

)())((tan

423433423411233

42341133423423312

aSPaSaCSpCpaaC

aCSpCpaSaSpaaC

zyx

yxz

−+−++−+−−+= −θ

= −

3

313 tan

C

322344 θθθθ −−=

yx

zyx

aCaS

aSaSaCC

11

2341123415

)(tan

−++= −θ

zyx

zyx

oCoSoCS

nSnSnCS

23411234

2341123416

)(

)(tan

++−++−= −θ

Page 33: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.10 INVERSE KINEMATIC PROGRAM OF ROBOTS• A robot has a predictable path on a straight line, • Or an unpredictable path on a straight line.

.A predictable path is necessary to recalculate joint variables ٭

(Between 50 to 200 times a second)

To make the robot follow a straight line, it is necessary to break ٭

the line into many small sections.

.All unnecessary computations should be eliminated ٭

Fig. 2.30 Small sections of movement for straight-line motions

Page 34: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.11 DEGENERACY AND DEXTERITY

∴Degeneracy : The robot looses a degree of freedom and thus cannot perform as desired.

,When the robot’s joints reach their physical limits ٭ and as a result, cannot move any further.

In the middle point of its workspace if the z-axes ٭ of two similar joints becomes colinear.

Fig. 2.31 An example of a robot in a degenerate position.

∴Dexterity : The volume of points where one can position the robot as desired, but not orientate it.

Page 35: Chapter 2   robot kinematics

Chapter 2Robot Kinematics: Position Analysis

2.12 THE FUNDAMENTAL PROBLEM WITH D-H REPRESENTATION

∴Defect of D-H presentation : D-H cannot represent any motion about the y-axis, because all motions are about the x- and z-axis.

Fig. 2.31 The frames of the Stanford Arm.

# θ d a α

1 θ1 0 0 -90

2 θ2 d1 0 90

3 0 d1 0 0

4 θ4 0 0 -90

5 θ5 0 0 90

6 θ6 0 0 0

TABLE 2.3 THE PARAMETERS TABLE FOR THE STANFORD ARM