ch.02 rotation kinematics
DESCRIPTION
RoboticsTRANSCRIPT
HCM City Univ. of Technology, Faculty of Mechanical Engineering Phung Tri Cong
02. Rotation Kinematics
Robotics 2.01 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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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