CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most...

84
CSE4421/5324: Introduction to Robotics 1

Transcript of CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most...

Page 1: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

CSE4421/5324: Introduction to Robotics

1

Page 2: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Contact Information

2

Burton MaLassonde [email protected]

EECS4421/5324lectures Monday, Wednesday, Friday 1:30-2:30PM (SLH C)Lab 1 Thursday 12:30-2:30, Prism 1004Lab 2 Thursday 2:30-4:30, Prism 1004

www.eecs.yorku.ca/course/4421(web site not complete yet)

Page 3: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

General Course Information

3

introduces the basic concepts of robotic manipulators and autonomous systems. After a review of some fundamental mathematics the course examines the mechanics and dynamics of robot arms, mobile robots, their sensors and algorithms for controlling them.

Page 4: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Textbook

4

no required textbook first 6 weeks of course uses notation consistent with Robot

Modeling and Control by MW Spong, S Hutchinson, M Vidyasagar

Page 5: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Assessment

5

labs/assignments 6 x 5% midterm, 30% exam, 40%

Page 6: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Introduction to manipulator kinematics

6

Page 7: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Robotic Manipulators

7

a robotic manipulator is a kinematic chain i.e. an assembly of pairs of rigid bodies that can move respect to one

another via a mechanical constraint

the rigid bodies are called links the mechanical constraints are called joints

Symbolic Representation of Manipulators

Page 8: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

A150 Robotic Arm

8 Symbolic Representation of Manipulators

link 3link 2

Page 9: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Joints

9 Symbolic Representation of Manipulators

most manipulator joints are one of two types1. revolute (or rotary) like a hinge

2. prismatic (or linear) like a piston

our convention: joint i connects link i – 1 to link i when joint i is actuated, link i moves

Page 10: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Joint Variables

10 Symbolic Representation of Manipulators

revolute and prismatic joints are one degree of freedom (DOF) joints; thus, they can be described using a single numeric value called a joint variable

qi : joint variable for joint i1. revolute qi = i : angle of rotation of link i relative to link i – 1

2. prismatic qi = di : displacement of link i relative to link i – 1

Page 11: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Revolute Joint Variable

11 Symbolic Representation of Manipulators

revolute like a hinge allows relative rotation about a fixed axis between two links

axis of rotation is the z axis by convention

joint variable qi = i : angle of rotation of link i relative to link i – 1

link i – 1

link i

i

joint i

Page 12: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Prismatic Joint Variable

12 Symbolic Representation of Manipulators

prismatic like a piston allows relative translation along a fixed axis between two links

axis of translation is the z axis by convention

joint variable qi = di : displacement of link i relative to link i – 1

link i – 1 link i

di

joint i

Page 13: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Common Manipulator Arrangments

13

most industrial manipulators have six or fewer joints the first three joints are the arm the remaining joints are the wrist

it is common to describe such manipulators using the joints of the arm R: revolute joint P: prismatic joint

Common Manipulator Arrangements

Page 14: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Articulated Manipulator

14

RRR (first three joints are all revolute) joint axes z0 : waist z1 : shoulder (perpendicular to z0) z2 : elbow (parallel to z1)

Common Manipulator Arrangements

z0z1 z2

waist

shoulder

elbow

forearm

1

2 3

Page 15: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Spherical Manipulator

15

RRP Stanford arm

http://infolab.stanford.edu/pub/voy/museum/pictures/display/robots/IMG_2404ArmFrontPeekingOut.JPG

Common Manipulator Arrangements

z0z1

z2

waist

shoulder

1

2

d3

Page 16: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

SCARA Manipulator

16

RRP Selective Compliant Articulated Robot for Assembly

http://www.robots.epson.com/products/g-series.htm

Common Manipulator Arrangements

z0

z1 z2

1

2

d3

Page 17: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Parallel Robots

17

all of the preceding examples are examples of serial chains base (link 0) is connected to link 1 by a joint link 1 is connected to link 2 by a joint link 2 is connected to link 3 by a joint ... and so on

a parallel robot is formed by connecting two or more serial chains https://www.youtube.com/watch?v=p1Lrz0gPvOA

Parallel Robots

Page 18: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

18

given the joint variables and dimensions of the links what is the position and orientation of the end effector?

Forward Kinematics

2

1

a1

a2

Page 19: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

19

choose the base coordinate frame of the robot we want (x, y) to be expressed in this frame

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

Page 20: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

20

notice that link 1 moves in a circle centered on the base frame origin

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

( a1 cos 1 , a1 sin 1 )

Page 21: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

21

choose a coordinate frame with origin located on joint 2 with the same orientation as the base frame

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

( a1 cos 1 , a1 sin 1 )

1

x1

y1

Page 22: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

22

notice that link 2 moves in a circle centered on frame 1

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

( a1 cos 1 , a1 sin 1 )

1

x1

y1

( a2 cos (1 + 2),a2 sin (1 + 2) )

Page 23: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

23

because the base frame and frame 1 have the same orientation, we can sum the coordinates to find the position of the end effector in the base frame

Forward Kinematics

2

1

a1

a2

x0

y0

( a1 cos 1 , a1 sin 1 )

1

x1

y1

( a2 cos (1 + 2),a2 sin (1 + 2) )

(a1 cos 1 + a2 cos (1 + 2),a1 sin 1 + a2 sin (1 + 2) )

Page 24: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

24

we also want the orientation of frame 2 with respect to the base frame x2 and y2 expressed in terms

of x0 and y0

Forward Kinematics

2

1

a1

a2

x0

y01

x2y2

Page 25: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

25

without proof I claim:

Forward Kinematics

2

1

a1

a2

x0

y01

x2 = (cos (1 + 2),sin (1 + 2) )

y2 = (-sin (1 + 2),cos (1 + 2) )

x2y2

Page 26: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

26

find , , and expressed in frame

d1

x0

y0

2

x2

y2

x1

y1

(x, y) ?

Page 27: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Forward Kinematics

27

find , , and expressed in frame

x0

y0

30°

Page 28: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Inverse Kinematics

28

given the position (and possiblythe orientation) of the endeffector, and the dimensionsof the links, what are the jointvariables?

Inverse Kinematics

2 ?

1 ?

a1

a2

x0

y0

x2y2

(x, y)

Page 29: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Inverse Kinematics

29

harder than forward kinematics because there is often more than one possible solution

Inverse Kinematics

a1

a2

x0

y0

(x, y)

Page 30: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Inverse Kinematics

30

law of cosines

Inverse Kinematics

2 ?

a1

a2

x0

y0

(x, y)

22221

22

21

2 )cos(2 yxaaaab

b

Page 31: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Inverse Kinematics

31 Inverse Kinematics

21

22

21

22

2 2)cos(

aaaayx

)cos()cos( 22

and we have the trigonometric identity

221

22

21

22

2 2cos C

aaaayx

therefore,

We could take the inverse cosine, but this gives only one of the two solutions.

Page 32: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Inverse Kinematics

32 Inverse Kinematics

1cossin 222

to obtain

Instead, use the two trigonometric identities:

cossintan

2

221

2

1tan

CC

which yields both solutions for 2 . In many programming languages you would use thefour quadrant inverse tangent function atan2

c2 = (x*x + y*y – a1*a1 – a2*a2) / (2*a1*a2);s2 = sqrt(1 – c2*c2);theta21 = atan2(s2, c2);theta22 = atan2(-s2, c2);

Page 33: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Inverse Kinematics

33

Exercise for the student: show that

Inverse Kinematics

221

22111 cos

sintantan

aa

axy

Page 34: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Spatial Descriptions

34

Page 35: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Points and Vectors

35

point : a location in space vector : magnitude (length) and direction between two points

p

qv

Page 36: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Coordinate Frames

36

choosing a frame (a point and two perpendicular vectors of unit length) allows us to assign coordinates

0p

0q

12000 qpv

0x

0y

0o 0

5.120q

5.240p

Page 37: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Coordinate Frames

37

the coordinates change depending on the choice of frame

1p

1q

21111 qpv

1x

1y1o 1

25.01q

45.01p

Page 38: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Dot Product

38

the dot product of two vectors

nu

uu

u2

1

nv

vv

v2

1

vuvuvuvuvu Tnn 2211

u

v

cosu

cosvuvu

Page 39: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Vector Projection and Rejection

39

if u and v are unit vectors (have magnitude equal to 1) then the projection becomes

u

v

projection of u on v

rejection of u from v

vvvvu

vvvvuu

vvu ˆˆˆ

Page 40: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Translation

40

suppose we are given o1 expressed in {0}

1x

1y

1o 1

0x

0y

0o 0

030

1o

Page 41: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Translation 1

41

the location of {1} expressed in {0}

1x

1y

1o 1

0x

0y

0o 0

03

00

030

001

01 ood

01d

Page 42: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Translation 1

42

1. the translation vector can be interpreted as the location of frame {j} expressed in frame {i}

ijd

Page 43: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Translation 2

43

p1 expressed in {0}

1x

1y

1o 1

0x

0y

0o 0

14

11

0310

10 pdp

111p

a point expressedin frame {1}

01d

Page 44: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Translation 2

44

2. the translation vector can be interpreted as a coordinate transformation of a point from frame {j} to frame {i}

ijd

Page 45: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Translation 3

45

q0 expressed in {0}

0x

0y

0o 0

12

11

0300 pdq

110p

120q

d

Page 46: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Translation 3

46

3. the translation vector can be interpreted as an operator that takes a point and moves it to a new point in the same frame

d

Page 47: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation

47

suppose that frame {1} is rotated relative to frame {0}

1x

1y

0x

0y

10 oo

sin

cos

Page 48: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation 1

48

the orientation of frame {1} expressed in {0}

1x

1y

0x

0y

10 oo

0101

010101 yyyx

xyxxR

Page 49: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation 1

49

1. the rotation matrix can be interpreted as the orientation of frame {j} expressed in frame {i}

ijR

Page 50: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation 2

50

p1 expressed in {0}

1x

1y

0x

0y

10 oo

11

cossinsincos10

10

pRp

111p

Page 51: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation 2

51

2. the rotation matrix can be interpreted as a coordinate transformation of a point from frame {j} to frame {i}

ijR

Page 52: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation 3

52

q0 expressed in {0}

0x

0y

0o

11

cossinsincos00

pRq

0q0p

Page 53: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation 3

53

3. the rotation matrix can be interpreted as an operator that takes a point and moves it to a new point in the same frame

R

Page 54: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Properties of Rotation Matrices

54

RT = R-1

the columns of R are mutually orthogonal each column of R is a unit vector det R = 1 (the determinant is equal to 1)

Page 55: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation and Translation

55

1x1y

1o 10x

0y

0o 0

Page 56: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotations in 3D

56

010101

010101

01010101

zzzyzxyzyyyxxzxyxx

R

Page 57: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotations

57

Page 58: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Properties of Rotation Matrices

58

RT = R-1

the columns of R are mutually orthogonal each column of R is a unit vector det R = 1 (the determinant is equal to 1)

Page 59: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotations in 3D

59

010101

010101

01010101

zzzyzxyzyyyxxzxyxx

R0x

0y10 oo

0z

1x

1y1z

Page 60: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation About z-axis

60

0x

0y

10 ˆˆ zz

1x

1y

+'ve rotation

Page 61: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation About x-axis

61

0x

0y

0z

1x

1y

+'ve rotation

1z

Page 62: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation About y-axis

62

0x

10 ˆˆ yy

0z

1x +'ve rotation

1z

Page 63: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Relative Orientation Example

63

0x

10 ˆˆ zy

0z

1x

1y

45

Page 64: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Successive Rotations in Moving Frames

64

1. Suppose you perform a rotation in frame {0} to obtain {1}.2. Then you perform a rotation in frame {1} to obtain {2}.

What is the orientation of {2} relative to {0}?

?02 R

0x

1z

1x10 ˆˆ yy

0z

2x

21 ˆˆ zz

1x

1y

2y

2x

2y

0z

0x

0y

2z

,12 zRR ,

01 yRR

Page 65: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Successive Rotations in a Fixed Frame

65

1. Suppose you perform a rotation in frame {0} to obtain {1}.2. Then you rotate {1} in frame {0} to obtain {2}.

What is the orientation of {2} relative to {0}?

?02 R

0x

1z

1x10 ˆˆ yy

0z

1x

1z

0y

1y

2x

2y0z

0x

0y

2z

,zRR,01 yRR

0z

0x

Page 66: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Composition of Rotations

66

1. Given a fixed frame {0} and a current frame {1} and if {2} is obtained by a rotation R in the current frame {1} then use

postmulitplication to obtain:

2. Given a fixed frame {0} and a frame {1} and if {2} is obtained by a rotation R in the fixed frame {0} then use

premultiplication to obtain:

01R

01

02 RRR

12

01

02

12 and RRRRR

Page 67: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rotation About a Unit Axis

67

cvkskvkkskvkkskvkkcvkskvkkskvkkskvkkcvk

R

zxzyyzx

xzyyzyx

yzxzyxx

k2

2

2

,

0x

0y

0z

xkyk

zkk

cos1sincos

vsc

Page 68: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rigid Body Transformations

68

Page 69: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Homogeneous Representation

69

translation represented by a vector d vector addition

rotation represented by a matrix R matrix-matrix and matrix-vector multiplication

convenient to have a uniform representation of translation and rotation obviously vector addition will not work for rotation can we use matrix multiplication to represent translation?

Page 70: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Homogeneous Representation

70

consider moving a point p by a translation vector d

zz

yy

xx

z

y

x

z

y

x

dpdpdp

ddd

ppp

dp

zz

yy

xx

z

y

x

dpdpdp

ppp

?

not possible as matrix-vector multiplication always leaves the origin unchanged

Page 71: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Homogeneous Representation

71

consider an augmented vector ph and an augmented matrix D

1000100010001

z

y

x

ddd

D

1z

y

x

h ppp

p

111000100010001

zz

yy

xx

z

y

x

z

y

x

h dpdpdp

ppp

ddd

Dp

Page 72: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Homogeneous Representation

72

the augmented form of a rotation matrix R3x3

1000000

3x3RR

111000000

3x33x3 pRppp

RRpz

y

x

h

Page 73: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rigid Body Transformations in 3D

73

p

01d

12d{0}

{1}

{2}

Page 74: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rigid Body Transformations in 3D

74

suppose {1} is a rotated and translated relative to {0} what is the pose (the orientation and position) of {1}

expressed in {0} ?

d

{0}

{1}

?01T

Page 75: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rigid Body Transformations in 3D

75

suppose we use the moving frame interpretation (postmultiplytransformation matrices)1. translate in {0} to get {0’}2. and then rotate in {0’} to get {1}

d

{0}

{1}

0'0D

d

{0}

{0’}

{0’}

Step 1

Step 2

'01

0'0 RD

Page 76: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rigid Body Transformations in 3D

76

suppose we use the fixed frame interpretation (premultiplytransformation matrices)1. rotate in {0} to get {0’}2. and then translate in {0} in to get {1}

d

{0}

R

{0}

{0’}

{0’}

{1}

Step 1

Step 2

RD

Page 77: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Rigid Body Transformations in 3D

77

both interpretations yield the same transformation

1000

1000000

1000100010001

3x3

3x3

01

dR

Rd

RDT

Page 78: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Homogeneous Representation

78

every rigid-body transformation can be represented as a rotation followed by a translation in the same frame as a 4x4 matrix

where R is a 3x3 rotation matrix and d is a 3x1 translation vector

1000dR

T

Page 79: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Homogeneous Representation

79

in some frame i points

vectors

1

ii p

P

0

ii v

V

Page 80: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Inverse Transformation

80

the inverse of a transformation undoes the original transformation if

then

1000dR

T

10001 dRR

TTT

Page 81: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Transform Equations

81

{0}

{1}{2}

{3}

{4}

01T

12T

03T

34T

42T

Page 82: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Transform Equations

82

give expressions for:02T

34T

Page 83: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Transform Equations

83

{0}

{1}

01T

02T

{2}

{3}23T

Page 84: CSE4421/5324: Introduction to Robotics · Joints 9 Symbolic Representation of Manipulators most manipulator joints are one of two types 1. revolute (or rotary) like a hinge 2. prismatic

Transform Equations

84

how can you find

01T

23T

02T

13T