ch.02 rotation kinematics

50
HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong 02. Rotation Kinematics Robotics 2.01 Rotation Kinematics

Upload: icarus-can

Post on 18-Jul-2016

41 views

Category:

Documents


2 download

DESCRIPTION

Robotics

TRANSCRIPT

Page 1: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

02. Rotation Kinematics

Robotics 2.01 Rotation Kinematics

Page 2: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

• Consider a rigid body 𝑩 with a fixed point 𝑶 ⟹ Rotation about the fixed

point 𝑶 is the only possible motion of the body 𝑩

• Consider

- local coordinate frame 𝑂𝑥𝑦𝑧

attaches to the rigid body 𝑩

- global coordinate frame 𝑂𝑍𝑌𝑍

• Determine

- Transformation matrices for

point 𝑷 between two coordinates

• Point 𝑶 of the body 𝑩 is fixed to the ground 𝑮 and is the origin of both

coordinate frames

𝑶

Robotics 2.02 Rotation Kinematics

Page 3: Ch.02 Rotation Kinematics

I. ROTATION ABOUT GLOBAL CARTESIAN AXES

• Rigid body 𝑩 rotates 𝛼 degrees about the 𝑍-axis of the global coordinate

• 𝑷2 has local coordinate: 𝒓2𝐵 =

𝑥2𝑦2𝑧2

and global coordinate: 𝒓2𝐺 =

𝑋2𝑌2𝑍2

⟹ Relation between the two coordinates:

𝑋2𝑌2𝑍2

=𝑐𝑜𝑠𝛼 −𝑠𝑖𝑛𝛼 0𝑠𝑖𝑛𝛼 𝑐𝑜𝑠𝛼 00 0 1

𝑥2𝑦2𝑧2

or 𝒓2𝐺 = 𝑸𝑍,𝛼 𝒓2

𝐵 (2.1)

where 𝑸𝑍,𝛼 is the 𝒁-rotation matrix

𝑸𝑍,𝛼 =𝑐𝑜𝑠𝛼 −𝑠𝑖𝑛𝛼 0𝑠𝑖𝑛𝛼 𝑐𝑜𝑠𝛼 00 0 1

(2.3)

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

Robotics 2.03 Rotation Kinematics

Page 4: Ch.02 Rotation Kinematics

I. ROTATION ABOUT GLOBAL CARTESIAN AXES

• Similarly, rotation 𝛽 degrees about the 𝑌-axis, and γ degrees about the

𝑋-axis of the global frame relate the local and global coordinates of point

𝑷 by the following equations

𝒓𝐺 = 𝑸𝑌,𝛽 𝒓𝐵 (2.4)

𝒓𝐺 = 𝑸𝑋,𝛾 𝒓𝐵 (2.5)

Where 𝑸𝑌,𝛽 is the 𝒀-rotation matrix

𝑸𝑌,𝛽 =𝑐𝑜𝑠𝛽 0 𝑠𝑖𝑛𝛽0 1 0

−𝑠𝑖𝑛𝛽 0 𝑐𝑜𝑠𝛽 (2.6)

and 𝑸𝑋,𝛾 is the 𝑿-rotation matrix

𝑸𝑋,𝛾 =1 0 00 𝑐𝑜𝑠𝛾 −𝑠𝑖𝑛𝛾0 𝑠𝑖𝑛𝛾 𝑐𝑜𝑠𝛾

(2.7)

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

Robotics 2.04 Rotation Kinematics

Page 5: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

I. ROTATION ABOUT GLOBAL CARTESIAN AXES

• Example 3 (Successive rotation about global axes)

The corner 𝑷(5,30,10) of the slab rotates 300 about

the 𝑍-axis, then 300 about the 𝑋-axis, and 900

about the 𝑌-axis ⟹ Find the final position of 𝑷 ?

The new global position of 𝑷 after first rotation

After the second rotation

And after the last rotation

Robotics 2.05 Rotation Kinematics

Page 6: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

I. ROTATION ABOUT GLOBAL CARTESIAN AXES

The slab and the point 𝑷 in first, second, third, and fourth positions

Robotics 2.06 Rotation Kinematics

Page 7: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

I. ROTATION ABOUT GLOBAL CARTESIAN AXES

• Example 4 (Time dependent global rotation)

A rigid body 𝑩 continuously turns about 𝑌-axis of 𝑮 at a rate of 0.3𝑟𝑎𝑑/𝑠

⟹ Find the global position and global velocity of the body point 𝑷?

The rotation transformation matrix of the body is

𝑸𝐵𝐺 =

𝑐𝑜𝑠0.3𝑡 0 𝑠𝑖𝑛0.3𝑡0 1 0

−𝑠𝑖𝑛0.3𝑡 0 𝑐𝑜𝑠0.3𝑡

Any point of 𝑩 will move on a circle with radius 𝑅 = 𝑋2 + 𝑍2 parallel

to (𝑋, 𝑍)-plane

𝑋𝑌𝑍

=𝑐𝑜𝑠0.3𝑡 0 𝑠𝑖𝑛0.3𝑡

0 1 0−𝑠𝑖𝑛0.3𝑡 0 𝑐𝑜𝑠0.3𝑡

𝑥𝑦𝑧

=𝑥𝑐𝑜𝑠0.3𝑡 + 𝑧𝑠𝑖𝑛0.3𝑡

𝑦𝑧𝑐𝑜𝑠0.3𝑡 − 𝑥𝑠𝑖𝑛0.3𝑡

𝑋2 + 𝑍2 = (𝑥𝑐𝑜𝑠0.3𝑡 + 𝑧𝑠𝑖𝑛0.3𝑡)2+(𝑧𝑐𝑜𝑠0.3𝑡 − 𝑥𝑠𝑖𝑛0.3𝑡)2

= 𝑥2 + 𝑧2 = 𝑅2

Robotics 2.07 Rotation Kinematics

Page 8: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

I. ROTATION ABOUT GLOBAL CARTESIAN AXES

After 𝑡 = 1𝑠, the point 𝒓𝐵 = 1 0 0 𝑇 will be seen at

𝑋𝑌𝑍

=cos 0.3 0 sin 0.30 1 0

− sin 0.3 0 cos 0.3

100

=0.9550

−0.295

After 𝑡 = 2𝑠, the point 𝒓𝐵 = 1 0 0 𝑇 will be seen at

𝑋𝑌𝑍

=𝑐𝑜𝑠0.6 0 sin 0.60 1 0

− sin 0.6 0 cos 0.6

100

=0.8250

−0.564

Taking a time derivative of 𝒓𝑃 𝐺 = 𝑸𝑌,𝛽 𝒓𝑃

𝐵 to get the global velocity

vector of any point 𝑷

𝒗𝑃 𝐺 = 𝑸 𝑌,𝛽 𝒓𝑃

𝐵

= 0.3𝑧𝑐𝑜𝑠0.3𝑡 − 𝑥𝑠𝑖𝑛0.3𝑡

0−𝑥𝑐𝑜𝑠0.3𝑡 − 𝑧𝑠𝑖𝑛0.3𝑡

Robotics 2.08 Rotation Kinematics

Page 9: Ch.02 Rotation Kinematics

I. ROTATION ABOUT GLOBAL CARTESIAN AXES

• Example 5 (Global rotation, local position)

A point 𝑷 moved to 𝒓2 𝐺 = [4,3,2]𝑇 after rotating 600 about 𝑍-axis

⟹ Find local position of 𝑷 in the local coordinate?

𝒓2 𝐵 = 𝑸𝑍,60

−1 𝒓2 𝐺

𝑥2𝑦2𝑧2

=𝑐𝑜𝑠60 −𝑠𝑖𝑛60 0𝑠𝑖𝑛60 𝑐𝑜𝑠60 00 0 1

−1 432

=4.5981−1.9641

2.0

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

Robotics 2.09 Rotation Kinematics

Page 10: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

II. SUCCESSIVE ROTATION ABOUT GLOBAL CARTESIAN AXES

• The final global position of a point 𝑷 ( 𝒓𝐺 ) in a rigid body 𝑩 with position

vector 𝒓𝐵 , after a sequence of rotations 𝑸1, 𝑸2, 𝑸3, … , 𝑸𝑛 about the

global axes can be found by

𝒓𝐺 = 𝑸𝐵 𝐺 𝒓𝐵 (2.35)

Where the global rotation matrix

𝑸𝐵 𝐺 = 𝑸𝑛 …𝑸3𝑸2𝑸1 (2.36)

A rotation matrix is orthogonal

𝑸𝑇 = 𝑸−1 (2.37)

Robotics 2.10 Rotation Kinematics

Page 11: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

II. SUCCESSIVE ROTATION ABOUT GLOBAL CARTESIAN AXES

• Example 6 (Successive global rotation matrix)

The global rotation matrix after a rotation 𝑸𝑍,𝛼 followed by 𝑸𝑌,𝛽 and

then 𝑸𝑋,𝛾 is

𝑸𝐵 𝐺 = 𝑸𝑋,𝛾𝑸𝑌,𝛽𝑸𝑍,𝛼 (2.38)

=1 0 00 𝑐𝑜𝑠𝛾 −𝑠𝑖𝑛𝛾0 𝑠𝑖𝑛𝛾 𝑐𝑜𝑠𝛾

𝑐𝑜𝑠𝛽 0 𝑠𝑖𝑛𝛽0 1 0

−𝑠𝑖𝑛𝛽 0 𝑐𝑜𝑠𝛽

𝑐𝑜𝑠𝛼 −𝑠𝑖𝑛𝛼 0𝑠𝑖𝑛𝛼 𝑐𝑜𝑠𝛼 00 0 1

=

𝑐𝛼𝑐𝛽 −𝑐𝛽𝑠𝛼 𝑠𝛽𝑐𝛾𝑠𝛼 + 𝑐𝛼𝑠𝛽𝑠𝛾 𝑐𝛼𝑐𝛾 − 𝑠𝛼𝑠𝛽𝑠𝛾 −𝑐𝛽𝑠𝛾𝑠𝛼𝑠𝛾 − 𝑐𝛼𝑐𝛾𝑠𝛽 𝑐𝛼𝑠𝛾 + 𝑐𝛾𝑠𝛼𝑠𝛽 𝑐𝛽𝑐𝛾

Robotics 2.11 Rotation Kinematics

Page 12: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

II. SUCCESSIVE ROTATION ABOUT GLOBAL CARTESIAN AXES

• Example 7 (Successive global rotations, global position)

The end point 𝑷 of the arm is located at

𝑋1𝑌1𝑍1

=0

𝑙𝑐𝑜𝑠𝜃𝑙𝑠𝑖𝑛𝜃

=0

1𝑐𝑜𝑠750

1𝑠𝑖𝑛750=

0.000.260.97

(2.39)

The rotation matrix to find the new position of

the end point 𝑷: rotate −290 about 𝑋-axis, then

300 about 𝑍-axis, and 1320 about 𝑋-axis is

𝑸𝐵𝐺 = 𝑸𝑋,132𝑸𝑍,30𝑸𝑋,−29 =

0.87 −0.44 −0.24−0.33 −0.15 −0.930.37 0.89 −0.27

(2.40)

and

𝑋2𝑌2𝑍2

=0.87 −0.44 −0.24−0.33 −0.15 −0.930.37 0.89 −0.27

0.000.260.97

=−0.3472−0.9411−0.0305

(2.41)

Robotics 2.12 Rotation Kinematics

Page 13: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

II. SUCCESSIVE ROTATION ABOUT GLOBAL CARTESIAN AXES

• Example 8 (Twelve independent triple global rotations)

There are 12 different independent combinations of triple rotations about

the global axes which transform a rigid body coordinate frame 𝑩 from the

coincident position with a global frame 𝑮 to any final orientation by only

three rotations about the global axes provided that no two

consequence rotations are about the same axis:

𝑸𝑋,𝛾𝑸𝑌,𝛽𝑸𝑍,𝛼 𝑸𝑍,𝛾𝑸𝑌,𝛽𝑸𝑋,𝛼 𝑸𝑋,𝛾𝑸𝑌,𝛽𝑸𝑋,𝛼 𝑸𝑋,𝛾𝑸𝑍,𝛽𝑸𝑋,𝛼

𝑸𝑌,𝛾𝑸𝑍,𝛽𝑸𝑋,𝛼 𝑸𝑌,𝛾𝑸𝑋,𝛽𝑸𝑍,𝛼 𝑸𝑌,𝛾𝑸𝑍,𝛽𝑸𝑌,𝛼 𝑸𝑌,𝛾𝑸𝑋,𝛽𝑸𝑌,𝛼

𝑸𝑍,𝛾𝑸𝑋,𝛽𝑸𝑌,𝛼 𝑸𝑋,𝛾𝑸𝑍,𝛽𝑸𝑌,𝛼 𝑸𝑍,𝛾𝑸𝑋,𝛽𝑸𝑍,𝛼 𝑸𝑍,𝛾𝑸𝑌,𝛽𝑸𝑍,𝛼

Robotics 2.13 Rotation Kinematics

Page 14: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

II. SUCCESSIVE ROTATION ABOUT GLOBAL CARTESIAN AXES

• Example 9 (Order of rotation, and order of matrix multiplication)

Changing the order of global rotation matrices is equivalent to

changing the order of rotations. The position of a point 𝑷 of a rigid

body 𝑩 is located at 𝒓𝑃 = 1 2 3 𝑇𝐵

Its global position after rotation 300 about 𝑋-axis and then 450 about 𝑌-

axis is at

𝒓𝑃𝐺

1 = 𝑸𝑌,45𝑸𝑋,30 𝒓𝑃 =0.53 −0.84 0.130.0 0.15 0.99

−0.85 −0.52 0.081

123

𝐵 =−0.763.27−1.64

And if we change the order of rotation then its position would be at:

𝒓𝑃𝐺

2 = 𝑸𝑋,30𝑸𝑌,45 𝒓𝑃 =0.53 0.0 0.85−0.84 0.15 0.52−0.13 −0.99 0.081

123

=3.081.02−1.86

𝐵

These two final positions of 𝑷 are 𝑑 = 𝒓𝑃𝐺

1 − 𝒓𝑃𝐺

2 = 4.456 apart

Robotics 2.14 Rotation Kinematics

Page 15: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

III. GLOBAL ROLL-PITCH-YAW ANGLES

• The rotation about the 𝑋-axis of the global coordinate frame is called a

roll, the rotation about the 𝑌-axis of the global coordinate frame is called

a pitch, and the rotation about the 𝑍-axis of the global coordinate frame is

called a yaw

• This figure illustrates 450 roll, pitch, and yaw rotation about the axes of a

global coordinate frame

Robotics 2.15 Rotation Kinematics

Page 16: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

III. GLOBAL ROLL-PITCH-YAW ANGLES

• Given the roll, pitch, and yaw angles, we can compute the overall

rotation matrix

• The global roll-pitch-yaw rotation matrix is

𝑸𝐵 = 𝑸𝑍,𝛾𝑸𝑌,𝛽𝑸𝑋,𝛼 𝐺

=

𝑐𝛽𝑐𝛾 −𝑐𝛼𝑠𝛾 + 𝑐𝛾𝑠𝛼𝑠𝛽 𝑠𝛼𝑠𝛾 + 𝑐𝛼𝑐𝛾𝑠𝛽𝑐𝛽𝑠𝛾 𝑐𝛼𝑐𝛾 + 𝑠𝛼𝑠𝛽𝑠𝛾 −𝑐𝛾𝑠𝛼 + 𝑐𝛼𝑠𝛽𝑠𝛾−𝑠𝛽 𝑐𝛽𝑠𝛼 𝑐𝛼𝑐𝛽

(2.55)

Robotics 2.16 Rotation Kinematics

Page 17: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

III. GLOBAL ROLL-PITCH-YAW ANGLES

• Also we are able to compute the equivalent roll, pitch, and yaw angles

when a rotation matrix is given. Suppose that 𝑟𝑖𝑗 indicates the element of

row 𝑖 and column 𝑗 of the roll-pitch-yaw rotation matrix (2.55)

• Then the roll angle is

𝛼 = 𝑡𝑎𝑛−1𝑟32

𝑟33

and the pitch angle is

𝛽 = −𝑠𝑖𝑛−1 𝑟31

and the yaw angle is

𝛾 = 𝑡𝑎𝑛−1𝑟21𝑟11

Robotics 2.17 Rotation Kinematics

Page 18: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

III. GLOBAL ROLL-PITCH-YAW ANGLES

• Example 11 (Determination of roll-pitch-yaw angles)

Determine the required roll-pitch-yaw angles to make the 𝑥-axis of the

body coordinate 𝑩 parallel to 𝒖 = 𝑰 + 2𝑱 + 3𝑲 , while 𝑦-axis remains in

(𝑋, 𝑌)-plane?

We have

𝒊 =𝒖

𝒖=

1

14𝑰 +

2

14𝑱 +

3

14𝑲 𝐺

𝒋 = 𝑰 ∙ 𝒋 𝑰 + 𝑱 ∙ 𝒋 𝑱 = 𝑐𝑜𝑠𝜃𝑰 𝐺 + 𝑠𝑖𝑛𝜃𝑱

The axes 𝒊 𝐺 and 𝒋 𝐺 must be orthogonal, therefore

1/ 14

2/ 14

3/ 14

∙𝑐𝑜𝑠𝜃𝑠𝑖𝑛𝜃0

= 0 ⇒ 𝜃 = −26.560

Robotics 2.18 Rotation Kinematics

Page 19: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

III. GLOBAL ROLL-PITCH-YAW ANGLES

Find 𝒌 𝐺 by a cross product: 𝒌 = 𝒊 × 𝒋 =

1/ 14

2/ 14

3/ 14

×0.894−0.447

0=

0.3580.717−0.597

𝐺𝐺𝐺

Hence, the transformation matrix 𝑸𝐵𝐺 is

𝑸𝐵 =

𝑰 ∙ 𝒊 𝑰 ∙ 𝒋 𝑰 ∙ 𝒌

𝑱 ∙ 𝒊 𝑱 ∙ 𝒋 𝑱 ∙ 𝒌

𝑲 ∙ 𝒊 𝑲 ∙ 𝒋 𝑲 ∙ 𝒌

=

1/ 14 0.894 0.358

2/ 14 −0.447 0.717

3/ 14 0 −0.597

𝐺

Now it is possible to determine the required roll-pitch-yaw angles

𝛼 = 𝑡𝑎𝑛−1𝑟32𝑟33

= 𝑡𝑎𝑛−10

−0.597= 0

𝛽 = −𝑠𝑖𝑛−1 𝑟31 = −𝑠𝑖𝑛−13

14≈ −0.93 rad

𝛾 = 𝑡𝑎𝑛−1𝑟21𝑟11

= 𝑡𝑎𝑛−12/ 14

1/ 14≈ 1.1071 rad

Robotics 2.19 Rotation Kinematics

Page 20: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IV. ROTATION ABOUT LOCAL CARTESIAN AXES

• The rigid body 𝑩 undergoes a rotation 𝜑 about the 𝑧-axis of its local

coordinate frame

• Coordinates of any point 𝑷 of the rigid body in local and global

coordinates frame are related by the following equation

𝒓2 = 𝑨𝑧,𝜑 𝒓2𝐺𝐵

The vector 𝒓2 = 𝑋2 𝑌2 𝑍2𝑇𝐺 and

𝒓2 = 𝑥2 𝑦2 𝑧2 𝑇𝐵 are the position

vectors of the point in local and

global frames respectively

𝑨𝑧,𝜑 is 𝒛-rotation matrix

𝑨𝑧,𝜑 =𝑐𝑜𝑠𝜑 𝑠𝑖𝑛𝜑 0−𝑠𝑖𝑛𝜑 𝑐𝑜𝑠𝜑 00 0 1

Robotics 2.20 Rotation Kinematics

0

Page 21: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IV. ROTATION ABOUT LOCAL CARTESIAN AXES

• Similarly, rotation 𝜃 about the 𝑦-axis and rotation 𝜓 about the 𝑥-axis are

described by the 𝒚-rotation matrix 𝑨𝑦,𝜃 and the 𝒙-rotation matrix 𝑨𝑥,𝜓

respectively

𝑨𝑦,𝜃 =𝑐𝑜𝑠𝜃 0 −𝑠𝑖𝑛𝜃0 1 0

𝑠𝑖𝑛𝜃 0 𝑐𝑜𝑠𝜃

𝑨𝑥,𝜓 =1 0 00 𝑐𝑜𝑠𝜓 𝑠𝑖𝑛𝜓0 −𝑠𝑖𝑛𝜓 𝑐𝑜𝑠𝜓

Robotics 2.21 Rotation Kinematics

Page 22: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IV. ROTATION ABOUT LOCAL CARTESIAN AXES

• Example 12 (Local rotation, local position)

If a local coordinate frame 𝑂𝑥𝑦𝑧 has been rotated 600 about the 𝑧-axis

and a point 𝑷 in the global coordinate frame 𝑂𝑋𝑌𝑍 is at 4 3 2

Its coordinates in the local coordinate frame 𝑂𝑥𝑦𝑧 are

𝑥𝑦𝑧

=𝑐𝑜𝑠60 𝑠𝑖𝑛60 0−𝑠𝑖𝑛60 𝑐𝑜𝑠60 0

0 0 1

432

=4.60−1.972.0

Robotics 2.22 Rotation Kinematics

Page 23: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

Robotics 2.23 Rotation Kinematics

IV. ROTATION ABOUT LOCAL CARTESIAN AXES

• Example 13 (Local rotation, global position)

If a local coordinate frame 𝑂𝑥𝑦𝑧 has been rotated 600 about the 𝑧-axis

and a point 𝑷 in the local coordinate frame 𝑂𝑥𝑦𝑧 is at 4 3 2

Its position in the global coordinate frame 𝑂𝑋𝑌𝑍 is at

𝑋𝑌𝑍

=𝑐𝑜𝑠60 𝑠𝑖𝑛60 0−𝑠𝑖𝑛60 𝑐𝑜𝑠60 0

0 0 1

𝑇 432

=−0.604.962.0

Page 24: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IV. ROTATION ABOUT LOCAL CARTESIAN AXES

• Example 14 (Successive local rotation, global position)

The arm shown in Fig 2.11 has two actuators. The first actuator rotates

the arm −900 about 𝑦-axis and then the second actuator rotates the arm

900 about 𝑥-axis. If the end point 𝑷 is at

𝒓𝑃 = 9.5 −10.1 10.1 𝑇𝐵

Then its position in the global coordinate frame is at

𝒓2 = 𝑨𝑥,90𝑨𝑦,−90−1

𝒓𝑃 = 𝑨𝑦,−90−1 𝑨𝑥,90

−1 𝒓𝑃𝐵𝐵𝐺

= 𝑨𝑦,−90𝑇 𝑨𝑥,90

𝑇 𝒓𝑃𝐵 =

10.1−10.19.5

Robotics 2.24 Rotation Kinematics

Page 25: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

V. SUCCESSIVE ROTATION ABOUT LOCAL CARTESIAN AXES

• The final global position of a point 𝑷 in a rigid body 𝑩 with position

vector 𝒓, after some rotation 𝑨1, 𝑨2, 𝑨3, ⋯ , 𝑨𝑛 about the local axes, can

be found by

𝒓𝐵 = 𝑨𝐺 𝒓𝐺𝐵

where

𝑨𝐺 = 𝑨𝑛⋯𝑨3𝑨2𝑨1𝐵

• 𝑨𝐺𝐵 is called the local rotation matrix and it maps the global

coordinates to their corresponding local coordinates

• Rotation about the local coordinate axis is conceptually interesting

because in a sequence of rotations, each rotation is about one of the axes

of the local coordinate frame, which has been moved to its new global

position during the last rotation

Robotics 2.25 Rotation Kinematics

Page 26: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

V. SUCCESSIVE ROTATION ABOUT LOCAL CARTESIAN AXES

• Example 15 (Successive local rotation, local position)

A local coordinate frame 𝑩(𝑂𝑥𝑦𝑧) that initially is coincident with a

global coordinate frame 𝑮(𝑂𝑋𝑌𝑍) undergoes a rotation 𝜑 = 300 about

the 𝑧-axis, then 𝜃 = 300 about the 𝑥-axis, and then 𝜓 = 300 about the

𝑦-axis.

The local rotation matrix is

𝑨𝐺 = 𝑨𝑦,30𝑨𝑥,30𝑨𝑧,30 =0.63 0.65 −0.43−0.43 0.75 0.500.65 −0.125 0.75

𝐵

The global coordinate of 𝑷 is 𝑋 = 5, 𝑌 = 30, 𝑍 = 10, so the coordinate

of 𝑷 in the local frame is

𝑥𝑦𝑧

=0.63 0.65 −0.43−0.43 0.75 0.500.65 −0.125 0.75

53010

=18.3525.357.0

Robotics 2.26 Rotation Kinematics

Page 27: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

V. SUCCESSIVE ROTATION ABOUT LOCAL CARTESIAN AXES

• Example 16 (Successive local rotation)

The rotation matrix for a body point 𝑷(𝑥, 𝑦, 𝑧) after rotation 𝑨𝑧,𝜑

followed by 𝑨𝑥,𝜃 and 𝑨𝑦,𝜓 is

𝑨𝐺𝐵 = 𝑨𝑦,𝜓𝑨𝑥,𝜃𝑨𝑧,𝜑

=

𝑐𝜑𝑐𝜓 − 𝑠𝜃𝑠𝜑𝑠𝜓 𝑐𝜓𝑠𝜑 + 𝑐𝜑𝑠𝜃𝑠𝜓 −𝑐𝜃𝑠𝜓−𝑐𝜃𝑠𝜑 𝑐𝜃𝑐𝜑 𝑠𝜃

𝑐𝜑𝑠𝜓 + 𝑠𝜃𝑐𝜓𝑠𝜑 𝑠𝜑𝑠𝜓 − 𝑐𝜑𝑠𝜃𝑐𝜓 𝑐𝜃𝑐𝜓

(2.97)

Robotics 2.27 Rotation Kinematics

Page 28: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

V. SUCCESSIVE ROTATION ABOUT LOCAL CARTESIAN AXES

• Example 17 (Twelve independent triple local rotations)

Any 2 independent orthogonal coordinate frames with a common origin

can be related by a sequence of three rotations about the local coordinate

axes, where no two successive rotations may be about the same axis. In

general, there are 12 different independent combinations of triple

rotation about local axes

1 − 𝑨𝑥,𝜓𝑨𝑦,𝜃𝑨𝑧,𝜑 5 − 𝑨𝑦,𝜓𝑨𝑥,𝜃𝑨𝑧,𝜑 9 − 𝑨𝑧,𝜓𝑨𝑥,𝜃𝑨𝑧,𝜑

2 − 𝑨𝑦,𝜓𝑨𝑧,𝜃𝑨𝑥,𝜑 6 − 𝑨𝑥,𝜓𝑨𝑧,𝜃𝑨𝑦,𝜑 10 − 𝑨𝑥,𝜓𝑨𝑧,𝜃𝑨𝑥,𝜑

3 − 𝑨𝑧,𝜓𝑨𝑥,𝜃𝑨𝑦,𝜑 7 − 𝑨𝑥,𝜓𝑨𝑦,𝜃𝑨𝑥,𝜑 11 − 𝑨𝑦,𝜓𝑨𝑥,𝜃𝑨𝑦,𝜑

4 − 𝑨𝑧,𝜓𝑨𝑦,𝜃𝑨𝑥,𝜑 8 − 𝑨𝑦,𝜓𝑨𝑧,𝜃𝑨𝑦,𝜑 12 − 𝑨𝑧,𝜓𝑨𝑦,𝜃𝑨𝑧,𝜑

Robotics 2.28 Rotation Kinematics

Page 29: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VI. EULER ANGLES

• The rotation about the 𝑍 -axis of the global coordinate is called

precession, the rotation about the 𝑥-axis of the local coordinate is called

nutation, and the rotation about the 𝑧-axis of the local coordinate is

called spin

• The precession-nutation-spin rotation angles are also called Euler angles

• Euler angles rotation matrix has many application in rigid body

kinematics

• To find Euler angles rotation matrix to go from the global frame

𝐺(𝑂𝑋𝑌𝑍) to the final body frame 𝐵(𝑂𝑥𝑦𝑧), we employ a body frame

𝐵′(𝑂𝑥′𝑦′𝑧′) that shown in Fig 2.12 that before the first rotation coincides

with the global frame

Robotics 2.29 Rotation Kinematics

Page 30: Ch.02 Rotation Kinematics

VI. EULER ANGLES

• Let there be at first a rotation 𝜑 about the 𝑧′-axis. Because 𝑍-axis and

𝑧′-axis are coincident, we have

𝒓 = 𝑨𝐺 𝒓𝐺𝐵′𝐵′

𝑨𝐺 = 𝑨𝑧,𝜑 =𝑐𝑜𝑠𝜑 𝑠𝑖𝑛𝜑 0−𝑠𝑖𝑛𝜑 𝑐𝑜𝑠𝜑 00 0 1

𝐵′

• Next we consider the 𝑩′(𝑂𝑥′𝑦′𝑧′) frame as a new fixed global frame and

introduce a new body frame 𝑩′′(𝑂𝑥′′𝑦′′𝑧′′). Before the second rotation,

the two frame coincide

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

Robotics 2.30 Rotation Kinematics

Page 31: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VI. EULER ANGLES

• Then, we execute a 𝜃 rotation about 𝑥′′-axis as shown in Fig 2.13. The

transformation between 𝑩′(𝑂𝑥′𝑦′𝑧′) and 𝑩′′(𝑂𝑥′′𝑦′′𝑧′′) is

𝒓 = 𝑨𝐵′ 𝒓𝐵′𝐵′′𝐵′′

𝑨𝐵′ = 𝑨𝑥,𝜃 =1 0 00 𝑐𝑜𝑠𝜃 𝑠𝑖𝑛𝜃0 −𝑠𝑖𝑛𝜃 𝑐𝑜𝑠𝜃

𝐵′′

• Finally, we consider the 𝑩′′(𝑂𝑥′′𝑦′′𝑧′′) frame as a new fixed global

frame and consider the final body frame 𝑩(𝑂𝑥𝑦𝑧) to coincide with 𝑩′′ before the third rotation

Robotics 2.31 Rotation Kinematics

Page 32: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VI. EULER ANGLES

• We now execute a 𝜓 rotation about the 𝑧′′-axis as shown in Fig 2.14. The

transformation between 𝑩′′(𝑂𝑥′′𝑦′′𝑧′′) and 𝑩(𝑂𝑥𝑦𝑧) is

𝒓 = 𝑨𝐵′′ 𝒓𝐵′′𝐵𝐵

𝑨𝐵′′ = 𝑨𝑧,𝜓 =𝑐𝑜𝑠𝜓 𝑠𝑖𝑛𝜓 0−𝑠𝑖𝑛𝜓 𝑐𝑜𝑠𝜓 00 0 1

𝐵

By the rule of composition of rotation, the

transformation from 𝑮(𝑂𝑋𝑌𝑍) to 𝑩(𝑂𝑥𝑦𝑧) is

𝒓𝐵 = 𝑨𝐺 𝒓𝐺𝐵

𝑨𝐺 = 𝑨𝑧,𝜓𝑨𝑥,𝜃𝑨𝑧,𝜑𝐵

=

𝑐𝜑𝑐𝜓 − 𝑐𝜃𝑠𝜑𝑠𝜓 𝑐𝜓𝑠𝜑 + 𝑐𝜃𝑐𝜑𝑠𝜓 𝑠𝜃𝑠𝜓−𝑐𝜑𝑠𝜓 − 𝑐𝜃𝑐𝜓𝑠𝜑 −𝑠𝜑𝑠𝜓 + 𝑐𝜃𝑐𝜑𝑐𝜓 𝑠𝜃𝑐𝜓

𝑠𝜃𝑠𝜑 −𝑐𝜑𝑠𝜃 𝑐𝜃

Robotics 2.32 Rotation Kinematics

Page 33: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VI. EULER ANGLES

• Example 18 (Euler angle rotation matrix)

The Euler or precession-nutation-spin rotation matrix for 𝜑 = 79.150,

𝜃 = 41.410, and 𝜓 = −40.70 would be found by substituting 𝜑, 𝜃 and 𝜓

in equation (2.106)

𝑨𝐺 = 𝑨𝑧,−40.7𝑨𝑥,41.41𝑨𝑧,79.15𝐵

=0.63 0.65 −0.43−0.43 0.75 0.500.65 −0.125 0.75

Robotics 2.33 Rotation Kinematics

Page 34: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VI. EULER ANGLES

• Example 19 (Euler angles of a local rotation matrix)

The local rotation matrix after rotation 300 about the 𝑧-axis, then rotation

300 about the 𝑥-axis, and then 300 about the 𝑦-axis is

𝑨𝐺 = 𝑨𝑦,30𝑨𝑥,30𝑨𝑧,30𝐵

=0.63 0.65 −0.43−0.43 0.75 0.500.65 −0.125 0.75

The Euler angles of the corresponding rotation matrix are

𝜃 = 𝑐𝑜𝑠−1 𝑟33 = 𝑐𝑜𝑠−1 0.75 = 41.410

𝜑 = −𝑡𝑎𝑛−1𝑟31𝑟32

= −𝑡𝑎𝑛−10.65

−0.125= 79.150

𝜓 = 𝑡𝑎𝑛−1𝑟13𝑟23

= 𝑡𝑎𝑛−1−0.43

0.50= −40.70

Robotics 2.34 Rotation Kinematics

Page 35: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VI. EULER ANGLES

• Example 20 (Relative rotation matrix of two bodies)

Consider a rigid body 𝑩1 with an orientation matrix 𝑨𝐺𝐵1 made by Euler

angles 𝜑 = 300, 𝜃 = −450, 𝜓 = 600, and another rigid body 𝑩2 having

𝜑 = 100, 𝜃 = 250, 𝜓 = −150, the individual rotation matrices are

𝑨𝐺 = 𝑨𝑧,60𝑨𝑥,−45𝑨𝑧,30 𝐵1 𝑨𝐺 = 𝑨𝑧,−15𝑨𝑥,25𝑨𝑧,10

𝐵2

=0.127 0.78 −0.612−0.927 −0.127 −0.354−0.354 0.612 0.707

=0.992 −0.0633 −0.1090.103 0.907 0.4080.0734 −0.416 0.906

The relative rotation matrix to map 𝑩2 to 𝑩1 may be found by

𝑨𝐵2 = 𝑨𝐺 𝑨𝐵2 =0.992 0.103 0.0734

−0.0633 0.907 −0.416−0.109 0.408 0.906

𝐺𝐵1𝐵1

Robotics 2.35 Rotation Kinematics

Page 36: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VII. LOCAL ROLL-PITCH-YAW ANGLES

• Rotation about the 𝑥-axis of the local frame is called roll or bank, rotation

about 𝑦-axis of the local frame is called pitch or attitude, and rotation about

the 𝑧-axis of the local frame is called yaw, spin or heading

• The local roll-pitch-yaw rotation matrix is

𝑨𝐺 = 𝑨𝑧,𝜓𝑨𝑦,𝜃𝑨𝑥,𝜑 =𝐵

𝑐𝜃𝑐𝜓 𝑐𝜑𝑠𝜓 + 𝑠𝜃𝑐𝜓𝑠𝜑 𝑠𝜑𝑠𝜓 − 𝑐𝜑𝑠𝜃𝑐𝜓−𝑐𝜃𝑠𝜓 𝑐𝜑𝑐𝜓 − 𝑠𝜃𝑠𝜑𝑠𝜓 𝑐𝜓𝑠𝜑 + 𝑐𝜑𝑠𝜃𝑠𝜓𝑠𝜃 −𝑐𝜃𝑠𝜑 𝑐𝜃𝑐𝜑

Note the difference between roll-pitch-yaw

and Euler angles, although we show both

utilizing 𝜑, 𝜃 and 𝜓

Robotics 2.36 Rotation Kinematics

Page 37: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VII. LOCAL ROLL-PITCH-YAW ANGLES

• Example 28 (Angular velocity and local roll-pitch-yaw rate)

Using the roll-pitch-yaw frequencies, the angular velocity of a body 𝑩

with respect to the global reference frame is

𝝎𝐵 = 𝜔𝑥𝒊 + 𝜔𝑦𝒋 + 𝜔𝑧𝒌 𝐺

= 𝜑 𝒆 𝜑 + 𝜃 𝒆 𝜃 + 𝜓 𝒆 𝜓

The roll unit vector 𝒆 𝜑 = 1 0 0 𝑇 transforms to the body frame after

rotation 𝜃 and then rotation 𝜓

𝒆 𝜑 = 𝑨𝑧,𝜓𝑨𝑦,𝜃

100

=𝑐𝑜𝑠𝜃𝑐𝑜𝑠𝜓−𝑐𝑜𝑠𝜃𝑠𝑖𝑛𝜓

𝑠𝑖𝑛𝜃

𝐵

The pitch unit vector 𝒆 𝜃 = 0 1 0 𝑇 transforms to the body frame

after rotation 𝜓

Robotics 2.37 Rotation Kinematics

Page 38: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VII. LOCAL ROLL-PITCH-YAW ANGLES

𝒆 𝜃 = 𝑨𝑧,𝜓

010

=𝑠𝑖𝑛𝜓𝑐𝑜𝑠𝜓0

𝐵

The yaw unit vector 𝒆 𝜓 = 0 0 1 𝑇 is already along the local 𝑧-axis

Hence, 𝝎𝐵𝐺 can be expressed in body frame 𝑂𝑥𝑦𝑧 as

𝝎𝐵 =𝑐𝑜𝑠𝜃𝑐𝑜𝑠𝜓 𝑠𝑖𝑛𝜓 0−𝑐𝑜𝑠𝜃𝑠𝑖𝑛𝜓 𝑐𝑜𝑠𝜓 0

𝑠𝑖𝑛𝜃 0 1

𝜑

𝜃

𝜓 𝐺𝐵

And therefore, 𝝎𝐵𝐺 in global frame 𝑂𝑋𝑌𝑍 is

𝝎𝐵 =1 0 𝑠𝑖𝑛𝜃0 𝑐𝑜𝑠𝜑 −𝑐𝑜𝑠𝜃𝑠𝑖𝑛𝜑0 𝑠𝑖𝑛𝜑 𝑐𝑜𝑠𝜃𝑐𝑜𝑠𝜑

𝜑

𝜃

𝜓 𝐺𝐺

Robotics 2.38 Rotation Kinematics

Page 39: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VIII. LOCAL AXES VERSUS GLOBAL AXES ROTATION

• The global rotation matrix 𝑸𝐵𝐺 is equal to the inverse of the local

rotation matrix 𝑨𝐺𝐵 and vice versa

𝑸𝐵𝐺 = 𝑨𝐺

−1𝐵 , 𝑨𝐺𝐵 = 𝑸𝐵

−1𝐺

where

𝑸𝐵𝐺 = 𝑨1

−1𝑨2−1𝑨3

−1⋯𝑨𝑛−1

𝑨𝐺𝐵 = 𝑸1

−1𝑸2−1𝑸3

−1⋯𝑸𝑛−1

• Also, pre-multiplication of the global rotation matrix is equal to post-

multiplication of the local rotation matrix

Robotics 2.39 Rotation Kinematics

Page 40: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VIII. LOCAL AXES VERSUS GLOBAL AXES ROTATION

• Example 29 (Global position and post-multiplication of rotation matrix)

The local position of a point 𝑷 after rotation is at 𝒓 = 1 2 3 𝑇𝐵 . If

the local rotation matrix to transform 𝒓𝐺 to 𝒓𝐵 is given as

𝑨𝑧,𝜑 =𝑐𝑜𝑠𝜑 𝑠𝑖𝑛𝜑 0−𝑠𝑖𝑛𝜑 𝑐𝑜𝑠𝜑 00 0 1

=𝑐𝑜𝑠30 𝑠𝑖𝑛30 0−𝑠𝑖𝑛30 𝑐𝑜𝑠30 0

0 0 1

𝐵

Then we may find the global position vector 𝒓𝐺 by post-multiplication

𝑨𝑧,𝜑𝐵 by the local position vector 𝒓𝑇𝐵

𝒓𝑇 =𝐺 𝒓𝑇 𝑨𝑧,𝜑𝐵𝐵 = 1 2 3

𝑐𝑜𝑠30 𝑠𝑖𝑛30 0−𝑠𝑖𝑛30 𝑐𝑜𝑠30 0

0 0 1

= −0.13 2.23 3.0

Robotics 2.40 Rotation Kinematics

Page 41: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

VIII. LOCAL AXES VERSUS GLOBAL AXES ROTATION

• Example 29 (Global position and post-multiplication of rotation matrix)

Instead of pre-multiplication of 𝑨𝑧,𝜑−1𝐵 by 𝒓𝐵

𝒓𝐺 = 𝑨𝑧,𝜑−1𝐵 𝒓𝐵

=𝑐𝑜𝑠30 −𝑠𝑖𝑛30 0𝑠𝑖𝑛30 𝑐𝑜𝑠30 00 0 1

123

=−0.132.233

Robotics 2.41 Rotation Kinematics

Page 42: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IX. GENERAL TRANSFORMATION

• Consider a general situation in which two coordinate frames, 𝑮(𝑂𝑋𝑌𝑍) and 𝑩(𝑂𝑥𝑦𝑧) with a common origin 𝑶, are employed to express the

components of a vector 𝒓. There is always a transformation matrix 𝑹𝐵𝐺

to map the components of 𝒓 from the reference frame 𝑩(𝑂𝑥𝑦𝑧) to the

other reference frame 𝑮(𝑂𝑋𝑌𝑍)

𝒓𝐺 = 𝑹𝐵 𝒓𝐵𝐺

• In addition, the inverse map, 𝒓𝐵 = 𝑹𝐵−1 𝒓𝐺𝐺 , can be done by 𝑹𝐺

𝐵

𝒓𝐵 = 𝑹𝐺 𝒓𝐺𝐵

where

𝑹𝐵𝐺 = 𝑹𝐺

𝐵 = 1

and

𝑹𝐺𝐵 = 𝑹𝐵

−1 = 𝑹𝐵𝑇𝐺𝐺

Robotics 2.42 Rotation Kinematics

Page 43: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IX. GENERAL TRANSFORMATION

• Example 30 (Elements of transformation matrix)

The position vector 𝒓 of a point 𝑷 may be expressed in terms of its

components with respect to either 𝑮(𝑂𝑋𝑌𝑍) or 𝑩(𝑂𝑥𝑦𝑧) frames. If

𝒓 = 100𝑰 − 50𝑱 + 150𝑲 𝐺 ⇒ Find components of 𝒓 in the 𝑂𝑥𝑦𝑧 frame?

The 𝑥-axis lie in the 𝑋𝑍 plane at 400 from

the 𝑋-axis, and the angle between 𝑦 and 𝑌 is

600. Therefore

𝑹𝐺 =

𝑐𝑜𝑠40 0 𝑠𝑖𝑛40𝒋 ∙ 𝑰 𝑐𝑜𝑠60 𝒋 ∙ 𝑲

𝒌 ∙ 𝑰 𝒌 ∙ 𝑱 𝒌 ∙ 𝑲

𝐵

=

0.766 0 0.643𝒋 ∙ 𝑰 0.5 𝒋 ∙ 𝑲

𝒌 ∙ 𝑰 𝒌 ∙ 𝑱 𝒌 ∙ 𝑲

Robotics 2.43 Rotation Kinematics

Page 44: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IX. GENERAL TRANSFORMATION

And by using 𝑹𝐺 𝑹𝐵 = 𝑹𝐺 𝑹𝐺𝑇 = 𝑰𝐵𝐵𝐺𝐵

0.766 0 0.643𝑟21 0.5 𝑟23𝑟31 𝑟32 𝑟33

0.766 𝑟21 𝑟310 0.5 𝑟32

0.643 𝑟23 𝑟33

=1 0 00 1 00 0 1

We obtain a set of equations to find the missing elements. Solving these

equations provides the following transformation matrix

𝑹𝐺 =0.766 0 0.6430.557 0.5 −0.663−0.322 0.866 0.383

𝐵

Then we can find the components of 𝒓𝐵

𝒓𝐵 = 𝑹𝐺 𝒓 =0.766 0 0.6430.557 0.5 −0.663−0.322 0.866 0.383

100−50150

=173.05−68.75−18.05

𝐺𝐵

Robotics 2.44 Rotation Kinematics

Page 45: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IX. GENERAL TRANSFORMATION

• Example 31 (Global position, using 𝒓𝐵 and 𝑹𝐺𝐵 )

The position vector 𝒓 of a point 𝑷 in local frame is

𝒓 = 100𝒊 − 50𝒋 + 150𝒌 𝐵

The transformation matrix to map 𝒓𝐺 to 𝒓𝐵

𝑹𝐺 =0.766 0 0.6430.557 0.5 −0.663−0.322 0.866 0.383

𝐵

Then the components of 𝒓𝐺 in 𝑮(𝑂𝑋𝑌𝑍) would be

𝒓𝐺 = 𝑹𝐵 𝒓 = 𝑹𝐺𝑇 𝒓𝐵𝐵𝐵𝐺

=0.766 0.557 −0.3220 0.5 0.866

0.643 −0.663 0.383

100−50150

=0.45104.9154.9

Robotics 2.45 Rotation Kinematics

Page 46: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IX. GENERAL TRANSFORMATION

• Example 32 (Two points transformation matrix)

The global position vector of two points, 𝑷1 and 𝑷2, of a rigid body 𝑩 are

𝒓𝑃1 =1.0771.3652.666

𝐺 𝒓𝑃2 =−0.4732.239−0.959

𝐺

The origin of the body 𝑩(𝑂𝑥𝑦𝑧) is fixed on the origin of 𝑮(𝑂𝑋𝑌𝑍), and

the points 𝑷1 and 𝑷2 are lying on the local 𝑥-axis and 𝑦-axis respectively.

To find 𝑹𝐵𝐺 , we use the local unit vectors 𝒊 𝐺 and 𝒋 𝐺

𝒊 =𝒓𝑃1

𝐺

𝒓𝑃1𝐺

=0.3380.4290.838

𝐺 𝒋 =𝒓𝑃2

𝐺

𝒓𝑃2𝐺

=−0.1910.902−0.387

𝐺

Robotics 2.46 Rotation Kinematics

Page 47: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

IX. GENERAL TRANSFORMATION

• Example 32 (Two points transformation matrix)

We can calculate 𝒌 𝐺 as follow

𝒌 = 𝒊 × 𝒋 𝐺𝐺𝐺 =−0.922−0.0290.387

Hence, the transformation matrix using the coordinates of two points

𝒓𝑃1𝐺 and 𝒓𝑃2

𝐺 would be

𝑹𝐵 = 𝒊 𝐺 𝒋 𝐺 𝒌 𝐺𝐺

=0.338 −0.191 −0.9220.429 0.902 −0.0290.838 −0.387 0.387

Robotics 2.47 Rotation Kinematics

Page 48: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

X. ACTIVE AND PASSIVE TRANSFORMATION

• Rotation of a local frame when the position vector 𝒓𝐺 of a point 𝑷 is

fixed in global frame and does not rotate with the local frame, is called

passive transformation

• Rotation of a local frame when the position vector 𝒓𝐵 of a point 𝑷 is

fixed in the local frame and rotate with the local frame, is called active

transformation

• The passive and active transformation are mathematically equivalent

• The rotation matrix for a rotated frame and rotated vector (active

transformation) is the same as the rotation matrix for a rotated frame and

fixed vector (passive transformation)

Robotics 2.48 Rotation Kinematics

Page 49: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

X. ACTIVE AND PASSIVE TRANSFORMATION

• Example 39 (Active and passive rotation about 𝑋-axis)

Consider a local and global frames 𝑩 and 𝑮 that are coincident. A body

point 𝑷 is at 𝒓𝐵

𝒓𝐵 =121

A rotation of 900 about 𝑋-axis will move the point to 𝒓𝐺

𝒓 = 𝑹𝑋,90 𝒓𝐵𝐺

=

1 0 0

0 𝑐𝑜𝑠𝜋

2−𝑠𝑖𝑛

𝜋

2

0 𝑠𝑖𝑛𝜋

2𝑐𝑜𝑠

𝜋

2

121

=1−12

Robotics 2.49 Rotation Kinematics

Page 50: Ch.02 Rotation Kinematics

HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong

X. ACTIVE AND PASSIVE TRANSFORMATION

• Example 39 (Active and passive rotation about 𝑋-axis)

Now assume that 𝑷 is fixed in 𝑮. When 𝑩 rotates 900 about 𝑋-axis, the

coordinates of 𝑷 in the local frame will change such that

𝒓𝐵 = 𝑹𝑋,−90 𝒓𝐺

=

1 0 0

0 𝑐𝑜𝑠−𝜋

2−𝑠𝑖𝑛

−𝜋

2

0 𝑠𝑖𝑛−𝜋

2𝑐𝑜𝑠

−𝜋

2

121

=11−2

Robotics 2.50 Rotation Kinematics