Rigid-Body Kinematics 2
-3
2.1.1 Rules for Composing Rotations
Consider three frames of reference A, B, and C, all of which have the same origin. The vectors x
A
, x
B
, x
C
represent the same arbitrary point in space, x, as it is viewed in the three different frames. With respect to
some common frame fixed in space with axes defined by {e
1
, e
2
, e
3
}where (e
i
)
j
=δ
ij
, the rotation matrices
describing the basis vectors of the frames A, B, and C are
R
A
=
e
A
1
, e
A
2
, e
A
3
R
B
=
e
B
1
, e
B
2
, e
B
3
R
C
=
e
C
1
, e
C
2
, e
C
3
where the vectors e
A
i
, e
B
i
, and e
C
i
are unit vectors along the i
th
axis of frame A, B,orC.The“absolute”
coordinates of the vector x are then given by
x = R
A
x
A
= R
B
x
B
= R
C
x
C
Inthis notation,whichisoftenusedin the fieldofrobotics(see e.g., [1, 2]), thereis effectivelya“cancellation”
of indices along the upper right to lower left diagonal.
Given the rotation matrices R
A
, R
B
, and R
C
, it is possible to define rotations of one frame relative to
another by observing that, for instance, R
A
x
A
= R
B
x
B
implies x
A
= (R
A
)
−1
R
B
x
B
. Therefore, given any
vector x
B
as it looks in B,wecanfind how it looks in A, x
A
, by performing the transformation:
x
A
= R
A
B
x
B
where R
A
B
= (R
A
)
−1
R
B
(2.7)
It follows from substituting the analogous expression x
B
= R
B
C
x
C
into x
A
= R
A
B
x
B
that concatenation of
rotations is calculated as
x
A
= R
A
C
x
C
where R
A
C
= R
A
B
R
B
C
(2.8)
Again there is effectively a cancellation of indices, and this propagates through for any number of relative
rotations. Note that the order of multiplication is critical.
In addition to changes of basis, rotation matricescan be viewedas descriptions of motion. Multiplication
of a rotationmatrix Q (which represents a frame of reference)by a rotation matrix R (representingmotion)
on the left, RQ, has the effect of moving Q by R relative to the base frame. Multiplying by the same rotation
matrix on the right, QR, has the effect of moving by R relative to the the frame Q.
To demonstrate the difference, consider a frame of reference Q = [a, b, n]wherea and b are unit vectors
orthogonal to each other, and a × b = n. First rotating from the identity 1I = [e
1
, e
2
, e
3
] fixedinspace
to Q and then rotating relative to Q by R
3
(θ) results in QR
3
(θ). On the other hand, a rotation about the
vector e
Q
3
= n as viewed in the fixed frame is a rotation A(θ, n). Hence, shifting the frame of reference Q
by multiplying on the left by A(θ, n) has the same effect as QR
3
(θ), and so we write
A(θ, n)Q = QR
3
(θ)orA(θ, n) = QR
3
(θ)Q
T
(2.9)
This is one way to define the matrix
A(θ, n) =
n
2
1
vθ + cθ n
2
n
1
vθ − n
3
sθ n
3
n
1
vθ + n
2
sθ
n
1
n
2
vθ + n
3
sθ n
2
2
vθ + cθ n
3
n
2
vθ − n
1
sθ
n
1
n
3
vθ − n
2
sθ n
2
n
3
vθ + n
1
sθ n
2
3
vθ + cθ
where s θ = sin θ , cθ = cos θ , and vθ = 1 −cos θ . This expresses a rotation in terms of its axis and angle,
and is a mathematical statement of Euler’s Theorem.
Note that a and b do not appear in the final expression. There is nothing magical about e
3
, and we could
have used the same construction using any other basis vector, e
i
, and we would get the same result so long
as n is in the ith column of Q.