Name: Student code
Homework #2
(Spatial descriptions and transformations)
Problem 1. A frame {B} is located initially coincident with a frame {A}. We rotate {B} about ZB-
axis by
30 degrees, and then we rotate the resulting frame about XB-axis by 45 degrees. Do the
followings:
a. Give the rotation matrix that will change the description of vectors from 𝑃B to 𝑃A.
b. Determine a unique rotation about an equivalent axis for the rotations?
Problem 2.
From the figure above, give the the value of ABT , CAT , CBT , and CAT
Name: Student code
Problem 3.
Figure depicts the robot grasping an object. Relative position and orientation of the base frame
{B}, the working table frame {S}, object frame {O}, the end effector frame {E}, and the camera
frame {C} are as shown in the figure. Determine the homogenous transformation matrix
B S C C
ET , OT , OT , ST
and CET . From these result, calculate OBT , EST , and OET .
Problem 4. An orientation is constructed from the following sub-rotations. Firstly, rotate about
the z-axis by 900. Then follow by the rotation about the y-axis of the current frame by -1800.
Finally, rotate about the current x-axis by -900.
a) Describe this orientation with the ZYX Euler angles
b) Describe this orientation with the XYZ Euler angles
c) Find the equivalent axis and angle
Name: Student code
Solutions
Solution to Problem 1:
a. Give the rotation matrix !"𝐑
écos(300 ) - sin(300 ) 0 ù
ê ú
R ZB (300 ) = ê sin(300 ) cos(300 ) 0 ú
ê 0 0 1 úû
ë
é1 0 0 ù
ê
R XB (30 ) = ê0 cos(45 ) - sin(45 ) ú
0 0 0 ú
êë0 sin(450 ) cos(450 ) úû
é0.886 -0.3536 0.3536 ù
A
B R (30 ) = êê 0.5
0
0.6124 -0.6124 úú
êë 0 0.7071 0.7071 úû
b. Determine a unique rotation
æ r 11 + r 22 + r 33 -1 ö
q = arg cos ç ÷
è 2 ø
é r32 - r23 ù
1 ê
ˆ =
K ê r13 - r31 úú
2sin q
êë r21 - r12 úû
q = arg cos(0.5928) = 0.9363 = 53.64740
⎡ 0.8192 ⎤
⎢ ⎥
K̂ = ⎢ 0.2195 ⎥
⎢ 0.5299 ⎥
⎣ ⎦
Solution to Problem 2
é -1 0 0 3ù
ê 0 -1 0 0 úú
A
T = ê
B
ê0 0 1 0ú
ê ú
ë0 0 0 1û
é 0 -0.5 0.866 3 ù
ê 0 0.866 0.5 0 ú
ê ú
CT =
A
ê -1 0 0 2ú
ê ú
ë0 0 0 1û
Name: Student code
é0 0.5 -0.866 0ù
ê 0 -0.866 -0.5 0 úú
ê
CT =
B
ê -1 0 0 2ú
ê ú
ë0 0 0 1û
é 0 0 -1 2 ù
ê -0.5 0.866 0 1.5 úú
ê
AT =
C
ê0.866 0.5 0 -2.598ú
ê ú
ë 0 0 0 1 û
Solution to Problem 3
𝐾#! may be determined by the first observing that {𝐵} is oriented to {𝑆} with the rotation of -30o
about {s}z-axis. That is
𝑐(−30* ) −𝑠(−30* ) 0
)
!𝑅 = 𝑅$,&'(! = *𝑠(−30* ) 𝑐(−30* ) 03
0 0 1
Similarly, {𝐸 } is oriented relative to {𝑆} with the first rotation of -20o about {s}z-axis, and then
the rotation of 40o about moving y-axis. The resulting transformation would be:
𝑐(−20* ) −𝑠(−20* ) 0 𝑐(40* ) 0 𝑠(40* )
)
#𝑅 = 𝑅$,&+(! 𝑅,,-(! = *𝑠(−20* ) 𝑐(−20* ) 03 * 0 1 0 3
*
0 0 1 −𝑠(40 ) 0 𝐶(40* )
Consequently, the orientation of {𝐸 } relative to {𝐵 } is seen from the figure to be
𝑠*.#/! = [3 −0.7 1.45]0
Which must be further be represented in {𝐵} by
𝐵*.# = !)𝑅&1)!"#/% = [2.9481 0.8938 1.45]0
Putting the orientation and position information together, the transformation matrix
0.7544 −0.1736 0.6330 2.9481
! 0.1330 0.9848 0.1116 0.8938
#𝑇 = @ B
−0.6428 0 0.7660 1.45
0 0 0 1
Is determined
Next posture of the object will now be determined relative to the table corner. Relative position
of the origins is readily observed to be
𝒄𝑶3𝑶 = [0.2 0.2 1]0
Name: Student code
Relative orientation may be determined by representing the unit vectors of the x-y-z axes of
{𝑂} in {𝐶 }. As a result
0.5 0.8660 0
4
*𝑅 = F0.8660 −0.5 0G
0 0 −1
Therefore
0.5 0.8660 0 0.2
4 0.8660 −0.5 0 0.2
*𝑇 = @ B
0 0 −1 1
0 0 0 1
Similarly, 4)𝑇 may be observed directly from the figure as
0 −1 0 0.7
4 −1 0 0 0.7
)𝑇 = @ B
0 0 −1 1.25
0 0 0 1
Position of the origin {𝐸 } with the respect to {𝐶 } is the figure:
𝒄𝑶3𝑬 = [−0.3 1.5 0.8]0
However, the relative orientation should be calculated indirectly via
0 −1 0 𝑐 (−20* ) −𝑠(−20* ) 0 𝑐(40* ) 0 𝑠(40* )
4 4 )
# 𝑅 = )𝑅 # 𝑅 = F−1 0 0 G F𝑠(−20* ) 𝑐 (−20* ) 0G F 0 1 0 G
*)
0 0 −1 0 0 1 −𝑠(40 0 𝐶(40* )
0.2620 −0.9397 0.2198
= F−0.7198 −0.3420 −0.6040G
0.6428 0 −0.7660
Hence,
0.2620 −0.9397 0.2198 −0.3
4 −0.7198 −0.3420 −0.6040 1.5
#𝑇 = @ B
0.6428 0 −0.7660 0.8
0 0 0 1
The remaining transformation matrices may be obtained by formulating the transform equation
and substituting the above results
−0.5 0.8660 0 4.3239
! ! # 4 ! 4 &14 −0.8660 −0.5 0 1.1108
*𝑇 = # 𝑇 4 𝑇 *𝑇 = # 𝑇 # 𝑇 *𝑇 = @ B
0 0 1 1.25
0 0 0 1
Name: Student code
0.7198 0.5868 −0.6428 1.1271
# # 4 * 0.3420 0.9397 0 0.6661
)𝑇 = 4 𝑇 *𝑇 )𝑇 = #4 𝑇 &14*𝑇 *)𝑇 &1 =@ B
0.6040 −0.2198 0.7660 0.3583
0 0 0 1
−0.4924 0.5868 −0.6428 1.1954
# # 4 4 &14 −0.7660 −0.6428 0 −0.0252
*𝑇 = 4 𝑇 *𝑇 = # 𝑇 *𝑇 = @ B
−0.4132 0.4924 0.7660 0.7419
0 0 0 1
Solution to Problem 4
écos(90) - sin(90) 0ù
RZ ,90o = êê sin(90) cos(90) 0úú
êë 0 0 1 úû
é cos(-180) 0 sin(-180) ù
RY , -180o = êê 0 1 0 ú
ú
êë - sin(-180) 0 cos(-180) úû
é1 0 0 ù
RX , -90o = ê0 cos(-90) - sin(-90) úú
ê
êë0 sin(-90) cos(-90) úû
a. The orientation with the ZYX Euler angles can be described:
é 0 0 -1ù
RZYX = RZ RY RX = êê -1 0 0 úú = RZ , -90o RY ,0o RX ,90o
êë 0 1 0 úû
b. The orientation with the XYZ Euler angles can be described
é 0 0 -1ù
RZYX = RZ RY RX = êê -1 0 0 úú = RX ,0o RY , -90o RX , -90o
êë 0 1 0 úû
Since the function arctan has 2 roots, another answer could be accepted.
c. The equivalent axis and angle:
Name: Student code
æ r 11 + r 22 + r 33 -1 ö
q = arg cos ç ÷
è 2 ø
é r32 - r23 ù
ˆ = 1 êr - r ú
K
2sin q ê
13 31 ú
êë r21 - r12 úû
q = arg cos(-1 / 2) = 2.0944 = 1200
é 0.5774 ù
K = êê -0.5774 úú
ˆ
êë -0.5774 úû