Quaternion Kinematic and Dynamic Differential Equations-Is7
Quaternion Kinematic and Dynamic Differential Equations-Is7
Quaternion Kinematic and Dynamic Differential Equations-Is7
1, FEBRUARY 1992 53
Quaternion Kinematic and
Dynamic Differential Equations
Jack C. K. Chou, Member, IEEE
Abstract-Using quaternions to describe finite rotations brings
attention to their capacity to specify arbitrary rotations in space
without degeneration to singularity and to their usefulness in
extending the vector algebra to encompass multiplication and di-
vision for both scalars and spatial vectors. A quaternion contains
four parameters, and they have been proved to be a minimal
set for defining a nonsingular mapping between the parameters
and their corresponding rotational transformation matrix. Many
useful identities pertaining to quaternion multiplications are
generalized in this paper. Among them multiplicative commu-
tativity is the most powerful. Since quaternion space includes the
three-dimensional vector space, the physical quantities related to
rotations, such as angular displacement, velocity, acceleration,
and momentum, are shown to be vector quaternions, and their
expressions in quaternion space are derived. These kinematic and
dynamic differential equations are further shown to be invertible
due to the fact that they are written in quaternion space, and the
highest order term of the rotation parameters can be expressed
explicitly in closed form.
I. INTRODUCTION
N 1843, the Irish mathematician W. R. Hamilton invented
I quaternions in order to extend three-dimensional vector al-
gebra for inclusion of multiplications and divisions. Although
it has been found that ordinary vector algebra provides a better
mathematical apparatus for investigating physical problems,
quaternion algebra, nevertheless, provides us with a simple and
elegant representation for describing finite rotations in space.
Finite rotations in space are described by 3 3 rotational
transformation matrices, and these matrices can be specified by
a set of three to nine parameters. Commonly used parameter
triples for finite rotations include Euler angles, Cardan angles
(or Bryant angles), and Rodrigues parameters. Four parameters
are Euler axis and angle, Euler parameters, and Cayley-Klein
parameters. Directly using direction cosines for describing ro-
tations requires a total of nine parameters with six constraints.
A thorough comparison of most of these rotation parameters
was given by Spring in 1986 [1]. Among all the representations
for finite rotations, only those of four parameters behave well
for arbitrary rotations because a nonsingular mapping between
parameters and their corresponding rotational transformation
matrix requires a set of four parameters at least; this fact was
addressed by Stuelpnagel in 1964 [2].
The study of quaternions can be traced back to the work by
Hamilton (1853 and 1969) [3], [4], Tait (1867) [5], Kelland
and Tait (1882) [6], Hardy (1881) [7], Cayley (1885 and 1889)
Manuscript received January 10, 1990; revised August 14, 1991.
The author is with the Erik Jonsson School of Engineering and Computer
IEEE Log Number 9104191.
Science, The University of Texas at Dallas, Richardson, TX 75083-0688.
[8]-[lo], and Klein (1925) [ l l ] . It did not become popular
until the recent applications to spatial kinematic analysis by
Yang and Freudenstein in 1964 [12] and Nikravesh in 1984
[13]; spatial kinematic synthesis by Sandor in 1968 [14];
rigid-body dynamics by Robinson (1958) [15], Yang and
Freudenstein (1964) [12], Nikravesh and Chung (1982) [16],
Koshlyakov (1983) [17], Chelnokov (1984) [18], Nikravesh
(1984) [13], and Chou et al. (1986) [19]-[21]; robot trajectory
planning by Taylor (1979) 1221; rob,ot dynamics by Huston
and Kelly (1982) [23] and Chou et al. (1987) [24]; spacecraft
control by Ickes (1970) [25], Meyer (1971) [26], Hendley
(1971) [27], Junkins and Turner (1980) [28], Werz (1980) [29],
Dwyer (1984) [30], and Wen and Kreutz (1988) [31]; camera
calibration by Chou and Kame1 (1988 and 1991) [32], [33] and
Chou (1991) [34], [35]; and photogrammetry by Horn (1987)
Euler parameters are unit quaternions. They are a set of
four parameters required to satisfy the normality condition that
the norm is unity. Using Euler-parameter representations to
describe the orientation of a coordinate system has several ad-
vantages over the conventional usage of direction cosines and
Euler angles. First, a mechanical system that involves rotation
between various coordinate systems does not degenerate for
any angular orientation [37]. Second, the computational cost
of using Euler parameters is less than using direction cosines
or Euler angles when quaternion multiplication is applied [15],
[22], [25]. Furthermore, physical quantities pertaining to the
motion of rotation such as angular displacement, velocity,
acceleration, and momentum are derived in terms of Euler
parameters in a simple manner. Manipulating equations is
much easier when using quaternion algebra.
1361.
11. QUATERNIONS
A quaternion a is defined as a complex number
azj ask (1)
formed from four different units (1, k) by means of the
real parameters ai(i 0, 1, 2, 3) [3], [ll], [38]-(421, where
and k are three orthogonal unit spatial vectors. With ideas
from both vector and matrix algebra, the quaternion may be
viewed as a linear combination of a scalar and a spatial
vector
If 0, a is a purely imaginary number and is called a
vector quaternion; when 0, a is a real number and is
1042-296)3/92$03.00 1992 IEEE
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 8, NO. 1, FEBRUARY 1992
called a scalar quaternion. As we can observe, scalars and
spatial vectors are quaternions, and they are in the subspace
of quaternions.
The conjugate of a quaternion a, denoted by a*, is defined
by negating its vector part (or imaginary part); that is
(3)
a* a0 a'.
It is convenient to represent quaternions and their algebra
in matrix form to simplify equation manipulations. The matrix
(column vector) representation of an arbitrary quaternion a
with respect to the basis (1, k) is merely the collection
of its parameters:
a [ a o , a l , a ~ , a 3 ] ~ [ao, uTl T (4)
where superscript T indicates the transpose of a matrix.
111. QUATERNION ALGEBRA
Since scalars and spatial vectors are in the subspace of
quaternions, the rules in scalar and vector algebra also apply to
quaternions. Let us ccnsider the following three quaternions:
a bo+b, and7 CO+< or in matrix form: a
[ ao, ai , az , a31T [ao,uTIT, [bo, bi , bz, b3I T [bo, bTIT,
and [CO, cl , c2, c3IT [c0,cTlT.
A. Addition and Subtraction
are defined as
Addition and subtraction, f, of two quaternions a and
( a o f b o ) + ( a ' f C )
or in matrix form
a f [a0 f bo, a1 f b l , a2 f bz, a3 f bglT. ( 6)
The quaternion addition and subtraction obey associative and
commutative laws.
B. Multiplication
Quaternion multiplication, designated by 8, is defined as
a 8 (a0 2) 8 (bo
a0 +bo a0 bo a' @
where the scalar-scalar and scalar-vector quaternion products
are defined, respectively, the same y a y a? scalars and spatial
vectors; thus, a0 8 bo aobo, a0 8 b aob, and bo 8 a' boa'.
The vector-vector quaternion product is defined as'
4
a ' @b =- a ' . b +a ' x b (8)
where the operations ll." and x define the dot product and
the cross product in the space of spatial vectors. In terms of
matrices, we separate the scalar and the vector parts in (7) and
rewrite it as
boa0 bTa_
a
4 aobo aTb
ab0 (aoU a) b] bao ( boU b)u
'This equation can be obtained by multiplying (al a az j a3k) and
( bl i 62j b3k) directly and using the rules: l i i l i , l j j l j ,
1k k1 k, j 2 k2 -1, i j - j i k, j k - kj and
ki -ik j , which were defined by Hamilton.
where U is a 3x3 unit matrix (or identity matrix), and
0 -a3 a2 - 4 3 b2
Letting 7 a 8 and factoring (9) into a product of two
matrices pertaining to a and we get
The quaternion multiplication is associative and distributive:
respectively, but it is not commutative: a 8 a.
a nda B( ( Bf 7)
C. Multiplicative Commutativity
Quaternion multiplication is associative and distributive
with respect to addition and subtraction, but the commutative
law does not hold in general. However, from (10) we can
observe that a and can commute simply with a sign change.
This property is very useful; therefore, two compact notations,
first introduced by Wehage (1984) [42], are designed for the
leading matrices:
where the hats and used in a and correspon!
to the "+I1 and signs attached to the matrices a and b,
respectively. The hats and may also be considered
as mathematical operators that transform a four-vector
into a 4 x 4 matrix in the form of a and a, respectively.
With the notation given in ( l l ) , the commutative property
of multiplication demonstrated in (10) can be expressed in a
compact form as
Furthermore, consider a direct application of (12) to the
multiplication of three 'quaternions in matrix form. The triple
multiplication, a 8 7 can be written as
Thus, we get
Equation (12) can be further generalized as
I
CHOU: QUATERNION KINEMATIC AND DYNAMIC DIFFERENTIAL EQUATIONS
and (13) can be generalized as
(ala2 A ~ ) ( P ~ ~ ~ (jlj2 jrn)(<2
Using (12) and (13), we can prove (14) and (15) very easily.
If we want to use and as operators to transform
a quaternion that is the resultant of a sequence of quaternion
multiplications into its 4 4 matrix, the following equations
(15)
will be useful:
(ala2...an_lan) ala2...a,-lan
The proof of these four equations can be developed using (12)
and (13).
D. Conjugate Multiplications
If the multiplication involves the conjugates of quaternions,
the commutative properties in (12) to (19) still hold. For
instance, the product of two quaternion conjugates,
a* can be written in matrix form as 7 a*p*
p*a* (&)Tp* (i)Ta*. Here, we also find that
If the multiplication involves the conjugate of a sequence of
quaternions, the following identity demonstrates the multi-
plicative commutativity of conjugate products:
E. Norm, Division, and Inverse
The norm of a quaternion a, denoted by N(a), is a scalar
quaternion and is defined as N(a) a* a a a*
U; U; U:. Apparently, it is identical to the
square of the Euclidean norm norm) of a general vector:
I[allz a. a aTa U: U: U; U:. We conclude that
the norm of a can be written as
Unlike spatial vectors, the set of quaternions forms a divi-
sion algebra [38]-[40], since for each nonzero quaternion a
there is an inverse a-l such that a a-l a-l 8 a 1.
Consider two nonzero quaternions a and a. N(a) Since
a 1, we find the inverse of a to be
If N(a) 1, a is normalized and is called a unit quaternion;
in this case, the inverse of a is a*. Since the inverse of a
is equal to its conjugate scaled by its norm, the commutative
property of conjugate products still holds:
F. Some Interesting Matrices
Furthermore, defining two 3 4 matrices
[-a (UoU
-U3 U2 -a1 a0
-bl bo -b3
(25)
-b2 b3 bo 2 1 1 [-b ( boU+b) ]
-b3 -b2 bl bo
(26)
we can rewrite a and as
a*)T
a = [ = (,+)TI=
E"*
and
The matrices E", EP, E"*, and EP* represent some matrices
of particular structures; the superscripts a, a*, and
indicate that the entries of these matrices are made by the
quaternions a, a*, and respectively. Therefore, we may
also have and or other E and E associated with any
given quaternion.
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 8, NO. 1, FEBRUARY 1992
f f = p @p * - p@) p*
Iv. EULER PARAMETERS AND FINITE ROTATIONS
Euler parameters, denoted by p [eo, el , e2, egIT
[eo, eTIT, are unit quaternions. They can be expressed in the
form
(29)
0
p cos (sin 0 5 5 27~
2 2
where cos(e/2) eo, sin(8/2) and f e .
The vector is a unit vector when is not zero. The Euler
parameters are required to satisfy the normality constraint
pTp
Let p be a unit quaternion and a be an arbitrary quaternion.
The operation p 8 a 8 p * transforms a into another quaternion
a without changing its norm. Ex ressing a p a p* in
matrix form, we have a ($5 )a ( p p ) a or
-T+
and
=p* @ p -p* @P .
OT
0 EpEp
a=
where pTp 1 and Epp Epp 0 are substituted. The
matrix
Using Euler parameters to define a rotation matrix A is
not unique. From it is obvious that we can use - p to
describe the same rotation as
a ( - p) @a 8 ( - p) *.
Therefore, the Euler parameters define a two-to-one mapping
from parameters to a rotation and provide a nonsingular
one-to-two mapping from a rotation matrix back to its cor-
responding Euler parameters.
Obtaining the Euler parameters that specify the inverse
rotation A- is trivial. If A is defined by the unit quaternion
p, then A- is specified by the conjugate of p: p*. This can
be verified when we write as a ( p*) 8 a ( p*) *.
V. ANGULAR VELOCITY
Consider a set of Euler parameters pio specifying the ori-
entation of the coordinate system oi(x;, yi, z;) with respect to
the coordinate system Oo(X0, Yo, and a vector quaternion
(or a spatial vector) whose projections onto the systems oi
and are and respectively. The operations
pi0 8
A $iT G T i
is a quaternion transformation in four-space. Since the
transformations p and are orthonormal, the norms of a
and a are identical. Also, from we can see that the scalar
part of a after transformation is not changed, and the vector
part of a is rotated by a transformation in terms of a unit axis
U and an angle of Therefore, the transformed quaternion is
not stretched, and the transformation of the scalar and vector
parts is independent.
With the aid of quaternion algebra, finite rotations in space
may be dealt with in a simple and elegant manner. If a is a
vector quaternion, the equation
T
a p 8 a @p*
is, in fact, an alternative statement of the Euler theorem that a
general rotation in space can be achieved by a single rotation
about an axis The rotational transformation matrh A
for a spatial vector can be obtained by taking the lower right
submatrix of directly:
- T
A EpEp eTe)U 2(eeT e$).
Directly from Eulers theorem, the matrix A can be derived as
A ( COS 0)U (1 COS B)UUT (sin
This matrix A has been given by Rodrigues
Gibbs Wittenburg Suh and Radcliffe
and Goldstein and has been used
by many researchers such as Paul and Wang and
Ravani Applying some trigonometric identities
and substituting eo cos and (sin $)U, we can prove
that the As in and are identical.
CHOU: QUATERNION KINEMATIC AND DYNAMIC DIFFERENTIAL EQUATIONS
we recognize that 2a is, in fact, the angular velocity in three-
space, and 2a is the angular velocity in four-space. Thus,
The angular-velocity matrix can be found as
0 2Ef0Ef0
(43)
2a 2p,o p:o -2pp,0 Pzo
or, in matrix form
To verify (51),
+Ti
-1T . T . T
(44)
From (44), we can see that the quaternion angular velocity is
C o = P - P = P P - P P = P P + P P
' T . T
+T+ +T - - T 4 -+T
P(P P)P + P (PP >P (PP >PP
' T +- T
6dT6P + p p ATA
a combination of the normality constraint differentiated once
and a spatial vector angular velocity 2kPp. The superscript
"0" indicates that the angular velocity has its projection in the
system 00.
The angular-velocity matrix can be derived directly from
matrix manipulation of the first two terms of equation (40)
(see Appendix A, Section A, for a and 6)
Rio a
+ T
In three-space, the angular-velocity matrix is 2EpEp To
verify (45),
- 0 i + T - T 1 i + T lT-
n z o = a - a = p p - p p = p p + p p
' T . T
4 - T- +T ++T - T- +T -+T
P(P P>P + P (PP >P P(P P>P +PP PP
(PP +PP )(PP 1 AAT (46)
4 - T - T -+T
where the formulas given in (13) and (A7) are applied.
and
In a similar way, differentiating (37) and substituting (36)
(see Appendix A, Section B, for we get
i i = p @ r i - r i g p + p * g i o @ p
2b +p* @ p
(47)
or, in matrix form
Rewriting (42) as
and comparing with (42), we get the angular velocity Qio of
system oi relative to system which is resolved in the
system oi as
or, in matrix form
where the properties (13) and (A13) are used. In (46) and
(52), the angular-velocity matrices are shown to agree with
Poisson's equations as given by Pipe (1963) [49].
can be related. From The angular velocities Q:o and
(4317
T - T+ +T
Q:o 25 ( p p ) ( 2 p Ai OR&. (53)
Also, equating (46) with (52), we can find
If the systems 0 0 and oi represent the inertial and the
ith body-fixed coordinate system, respectively, (53) and (54)
describe the transformations of the quantities pertaining to the
angular velocities in the inertial system and the ith body-fixed
system. The representation of angular velocities in (44) and
(50) is not unique; they can be represented in different forms
and are given in Appendix A, Section C.
VI. ANGULAR ACCELERATION
. o
The angular acceleration Rio of system oi relative to system
which has its projection on system 0 0 , is derived by
differentiating (43) directly
or, in matrix form
T . T
2 1 l i i i O l + . . I )
= 2 [ = 2 [ (56)
PZP, PZPi O 0
E:oPio E:oPio
where Ep p 0 can be verified easily.
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 8, NO. 1, FEBRUARY 1992
. i
Similarly, the angular acceleration which is resolved in
the system oi, can be derived by differentiating (49)
(57)
or, in matrix form
where Epp 0 can be verified directly.
The angular accelerations Rio and hf, are related by the
rotational transformation matrix. This can be shown by ma-
nipulating (56):
(59)
where the properties (A6) and (A7) are used.
From (56) and (58), we see that the angular acceleration
is a vector quaternion because the scalar component is zero.
In addition, the angular acceleration in quaternion space is a
combination of the normality constraint differentiated twice
and a spatial vector. Various representations for acceleration
are given in Appendix A, Section D.
VII. ANGULAR MOMENTUM
In the inertial coordinate system Oo(X0, YO, ZO), the general
motion of rotation of a rigid body of inertia tensor I o, acted
upon by a system of forces, is defined by Tfo Hi, where
eo is the resultant moment (sum of the external moments or
torque) applied to the body, and Hfo is the angular momentum
about the moment center. The angular momentum of body
which is resolved in the inertial reference frame 00 is written
. o
as H ~ O , I in quaternion space, or
after substituting angular velocity from (43). In matrix form,
(60) can be written as
where k Trace(1)/2 (see Appendix B for details). The
matrices I and I o are the inertia matrices in four- and three-
space, respectively, and the superscript "0" indicates that the
inertia matrices are given with respect to the reference frame
We can see, from (61), that the angular momentum is a
vector quaternion. Note that a subscript should be attached
to the physical quantities in this section; however, it is dropped
to unclutter the equations.
The resultant moment To, which is the rate of change of the
angular momentum, is also a vector quaternion. Differentiating
Ho once and substituting I (see Appendix C) , we have
. o
(62)
- 0 - 0
T O = l Q + RI QO
in quaternion space, or
TO 2i0Q 2 [a ( i Oa) ( i Oa) a]
(63)
where a is given in (39). One particular representation of To
in quaternion space is written as
TO =2i 0( P@p* + p @p * ) 2 (P@P*) I (P@P*) 1
(64)
or, in matrix form
k OT
1
0
CHOU: QUATERNION KINEMATIC AND DYNAMIC DIFFERENTIAL EQUATIONS
From (65), we see that the resultant torque To is a vector
quaternion, and it is simply a combination of the normality
constraint of Euler parameters (30) twice differentiated and
a spatial torque. Alternatively, we may interpret that (65) is
the generalized Euler's equations of motion of rotation in
three-space associated with the acceleration constraint of Euler
parameters.
The moment CO of body i resolved in the system oi can
be derived directly from the relation AioT to be
- i - i
T Iin" f2 I
(66)
are orthogonal (nonsingular), and they are orthonormal
if a and are normalized; that is, (&)T and
(j)-l (5)'. A direct application of this property to robot
kinematic equations was presented by Chou and Kame1 in
1988 and 1991 [32], [33].
Applying the above property to the equations of angular
velocity yields the desired form of kinematic differential
equations for Euler parameters. In quaternion space, the in-
vertibility of angular velocities can be identified immediately
as
T
(70)
Substituting ai, ai, and hi, we can express the moment in
quaternion space as
(67)
where is given in (39). One particular representation of T"
in quaternion space is
In three-space, the invertibility property remains, and they
become
and p* -'(EP*
T
(71)
[ A i -'(EP*)TQi.
T" =2i i ( p* @p i ; +* @p ) $ 2 (p* I (p* @P)
For angular acceleration, the terms of the second-order deriva-
tive of p can be expressed explicitly as
(68)
or, in matrix form
The bottom vector equations of (69) are Euler's equations
of motion of rotation in terms of Euler parameters and their
derivatives in three-space.
VIII. NONSINGULARITY
In quaternion space, the scalars, vectors, and quaternions
are unified. Expressing a spatial vector in quaternion space
provides us with elegant properties for manipulating equations.
Observe that the cross product of tw_o spatial vectors a
and b has the property that +iib -Ba; the similarity to
(12), a a, can be recognized immediately. However,
in vector space the matrices ii and b are skew-symmetric
(singular), whereas in quaternion space the matrices a and
Similarly, in three-space the invertibility retains as
p $(EP)'hO ( pTp) p
p $(EP)TGi ( pTp) p
(73)
When the dynamic equations of motion are developed using
Euler equations, the invertibility property of (65) and (69) is
useful; in four-space, we have
. T
p $$(jO)-lTO
p $$(i")-'T ) p ( p p) .
- i +T
In three-space, they are
2 ip)T ( I o) Ep EP)' I o
2 ( 5 ) T ( I i 1 ( Ep ( EP) T? ( i p ) p .
60 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 8, NO. 1 , FEBRUARY 1992
Using different a and we can derive similar equations, in
four-space, for the conjugate Euler parameters as
T
-5 ( i i ) - ' ( S p)ii(pp*)
or in three-space
-+(El'* T (IO)-lTO.- (p*Tp*)p*
)p*
(77)
EP*) T ( I z -1 T" ( f TP* ) p *
2 Ii) 1 (EP* (EP TIi
The invertibility property demonstrated in (74) to (77) is useful
for applying the Newton-Euler formulation to deriving the
equations of motion of mechanical systems. Incorporating
the second-order differentiation of the normality constraint
of Euler parameters with Euler's equations, we can obtain
nonsingular coefficient matrices for p and p*: 2; I 2$ I
2$1, and 25I'. This property has been applied to an n-body
pendulum dynamics simulation in order to design a linear
computational-cost scheme by Chou in 1989 [50].
Besides the above orthogonality property, the extraction of
a unit quaternion from any given rotational transformation
matrix does not produce a singular case. In contrast to any
other set of three generalized coordinates for describing a
rotation, there is no critical case in which the inverse formulas
are singular. This fact has been demonstrated by Klumpp [51],
Horn [36], and Wittenburg [37].
The complexity in (75) and (77) can be reduced when we
apply the properties given in (A4), (A5), ( Al l ) , and (A12).
For example, the third terms of the right-hand side in (75) and
(77) can be rewritten as
T - 0 T, . i
The triple products are symmetric matrices. When we compute
this portion of the equation, we can minimize its computational
cost.
IX. CONCLUSIONS
This paper is devoted to the introduction of quaternion
algebra, generalized properties of quaternion multiplications
and divisions, and to the derivation of quaternion kinematic
and dynamic differential equations for the physical quantities
pertaining to the motion of rotation such as angular velocity,
acceleration, and momentum. These physical quantities are
spatial vectors and are also shown to be vector quaternions.
The Euler parameters are a unit quaternion and are repre-
sented by a normalized vector of four real numbers. They are
one of the minimal sets of parameters capable of defining
a nonsingular mapping between the parameters and their
corresponding rotation matrix. As we can see from the first few
sections in this paper, the quaternion algebra provides many
mathematical properties for manipulating equations involving
rotations. One example is that the derivation of the inverse
rotation is trivial when unit quaternions are used. Another
example is that the combination of successive rotations can
be greatly simplified using quaternion multiplications directly
without using 3 3 rotation matrices [52]. The generalized
commutative properties of quaternion multiplication are very
useful for manipulating kinematic equations derived from
successive rotations in space. One application given by Chou
[52] is for the derivation of partial derivatives of a sequence
of rotations written in terms of a sequence of unit quaternions.
Furthermore, quaternion algebra is potentially useful for sys-
tems involving very large numbers of rotations in space to
represent all the unit quaternions as a graph for a computer
data base. A fundamental study in this direction was initiated
by Chou
Using Euler parameters to define finite rotations not only
possesses mathematical beauty but also retains the physical
significance of rotations in Cartesian space. From (29), we can
see that the mathematical parameters are in fact their physical
counterparts of a rotational axis and a rotation angle 6 ' that
are used in the Euler theorem regarding finite rotations. That
is, taking the vector part of a unit quaternion and normalizing
it, we can find the rotational axis right away, and from the
first parameter we can obtain the angle of rotation.
Since the quaternion space includes the spatial vector space,
quaternion algebra is applicable to spatial vectors. This is true
when we first show that the spatial vectors regarding rotations
such as angular velocities, accelerations, and momentums
are vector quaternions followed by deriving very simple and
compact differential expressions for them in quaternion space.
From these kinematic and dynamic differential equations, we
can further see the nonsingularity properties that the Euler
parameters provide us. Since the Euler parameters are well
defined for any rotation, their relationship to angular velocity,
acceleration, and momentum is always nonsingular. That is,
the highest order term of Euler parameters in any kinematic
or dynamic equation can be expressed explicitly in closed form
without any singularity problem.
On the surface, quaternion algebra seems a cumbersome tool
for analyzing physical phenomena that are three-dimensional
in nature and can be thus described more elegantly using
three-dimensional vector calculus. This can be observed from
CHOU QUATERNION KINEMATIC AND DYNAMIC DIFFERENTIAL EQUATIONS 61
(Ep*)p* -(Ep*)p* ( Ep) p -(Ep)p
the equations for vectors such as (44), (56), (58), (61),
(65), and (69) in which there is always a zero redundant
element, and from the equations for matrices such as (45)
and (51) in which there is a redundant zero row and column.
Although we did not prove that other physical quantities such
as linear displacement, velocity, acceleration, and force are
vector quaternions, we can expect that they are. That, again,
demonstrates that when using quaternions to represent physical
quantities, we have to carry the redundancy in our equations
all the time.
Although directly using four-vector equations such as (44),
(56), (58), (61), (65), and (69) is impractical, it is very
practical to derive these equations in four-space before we
obtain their three-space equations because the manipulation
of these equations in four-space is facilitated by quaternion
algebra. One recent application of this methodology to camera
calibrations was initiated by Chou [34], [35]. In this work,
all the physical quantities were represented as quaternions
during the manipulation of equations. As a result, the original
643)
=(E +P EP T -(ip)(zp)T
equation of interest was able to be transformed into a more
elegant and applicable form for the rest of the research.
In this paper, we not only show that the rotational physical
quantities are vector quaternions, but also emphasize the
fundamental quaternion algebra which will be very useful for
many applications related to rotations in space.
and pTp pTp p*Tp* P * ~ $ 0 can be proved easily
and are used in the derivation of (A2) and (A3).
Since the representation of a is not unique, the represen-
tations of and are also not unique. Using the formulas
developed in (18) and (19), we obtain the following properties:
APPENDIX A
ANGULAR VELOCITY AND ACCELERATION
A. Alpha
form, it is
From (39), we have a p p* - p In matrix
T .
a pp* p p to (Al )
EPp Epp
We see that the quaternion a is a vector quaternion since
0. Using the properties given in (16) and we can
find
Similarly, using the properties given in (17) and (28), we can
find
and
i + T
a = p p - pp
(A71
a= p p - p p .
B. Beta
form, it is
From (39), we have p* 8 p -p* g p. In matrix
p = - p p = [ +T PTP 0 (A8)
-EPi -Epp
We can observe also that the quaternion is a vector quater-
nion since 60 0. Using the properties given in (16) and
(27), we can find
Similarly, using the properties given in (17) and (28), we can
find
a :(PIT PST [ p* ($*)TI
62
The identities
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 8, NO. 1, FEBRUARY 1992
I
(A171
For Qio, in three-space, they are obtained from (A12) as
hio 2( E EP* T - 2( Ep*) ( &*) T
2( Ep) ( Ep) T - 2( Ep) ( Ep) ) T.
and
(A121
can be proved easily and are used in deriving (A9) and (A10).
Since the representation of is not unique, the represen-
tations of and are also not unique. Using the formulas
developed in (16) and (17), we obtain the following properties:
and
D. Various Representations of Angular Acceleration
Similar to angular velocity, the representation of angular
acceleration is not unique. For Rio, applying the multiplicative
commutativity property given in (12) and the properties in (27)
and (28) to we can obtain
' i
Similarly, we can express Rio in three-space as
C. Various Representations of Angular Velocity
can be expressed in two
different ways: 2pi0 8 pz0 -2pi0 p:o. If we manipulate
these two quaternion representations using the multiplicative
commutativity given in (12) and the matrices in (27) and (28),
we can easily obtain the following identities for expressing
flyo in three-space:
From (43) the angular velocity
o +
Qio 2( Ep) p - 2( Ep) p 2(Ep*)p* - 2( $*) p*.
(A15)
Similarly, we can express in three-space as:
(A161
Equations (A15) and (A16) can be obtained directly from
(A4) and ( Al l ) also. The angular-velocity matrix for in
three-space, can be obtained directly using (A5) as
(MO)
APPENDIX B
INERTIA MATRIX IN FOUR-SPACE
Consider a rigid body and a coordinate system Oo(X0, YO,
Let the vector r [r,, ry rZIT specify the position of an
infinitesimal mass dm in the body. The moments of inertia of
masses with respect to the XO, YO, and axes are defined as
I,, J ( r : r,2)dm
and
I,, (r2 ry2)dm
respectively, and the products of inertia of masses are defined
as
CHOU: QUATERNION KINEMATIC DYNAMIC DIFFERENTIAL EQUATIONS
and Substituting (46), the Poissons equation, gives
where the integrations are carried out over the whole mass of
the body [53].
The inertia matrix in three-space is defined as [46],
(rTrV-rrT)dm
where I,, I,,, I,, I,,, and Iyz Izy.
In four-space, the vector quaternion r [ O , T , , T ~ , T , ] ~
specifies the position of mass dm, and the inertia matrix is
defined as
I (rTrU-rrT)dm=
- O
I
E)dm
where
r: ry2 r, 0 0
ri r,2 -r,ry
E E
- ryr, r; + T i
-r,r, -r,ry
Since [47]
therefore
io L I O A ~ ~ I ~ A Z
since ii 0. Substituting (Cl) into (C3) gives
63
REFERENCES
[l] K. W. Spring, Euler parameters and the use of quaternion algebra in
the manipulation of finite rotations: A review, Mechanism Machine
Theory, vol. 21, no. 5, pp. 365-373, 1986.
[2] J. Stuelpnagel, On the parametrization of the three-dimensional rotation
group, SlAMRev., vol. 6, no. 4, pp. 422430, Oct. 1964.
[3] W. R. Hamilton, Lectures on Quaternions. Dublin: Hodges and Smith,
1853.
[4] Elements of Quaternions, 3rd ed. New York Chelsea, 1969.
[SI P. G. Tait, An Elementary Treatise on Quaternions. London: MacMil-
lan. 1867.
[6] P. Kelland and P. G. Tait, Introduction to Quaternions, with Numerous
[7] A. S. Hardy, Elements of Quaternions. Boston: Ginn, Health, and Co.,
Examples London: MacMillan, 1882.
(B2)
1881.
[8] A. Cayley, On the quaternion equation Qq 0, Messenger of
Mathematics, vol. XIV, pp. 108-112, 1885.
[9] On the matrical equation Qq Messenger of
Mathematics, vol. XIV, pp. 176-178, 1885.
[lo] On certain results relating to quaternions, The Collected
Mathematical Papers of Arthur Cayley, vol. I, pp. 123-126, 1889.
[ll] F. Klein, Elementary Mathematics From the Advanced Standpoint.
New-York Dover, 1925.
[12] A. T. Yang and F. Freudenstein, Application of dual-number quaternion
algebra to the analysis of spatial mechanisms, ASME J. Appl. Mech. E,
vol. 31, no. 2, pp. 300-308, June 1964.
[13] P. E. Nikravesh, Spatial kinematic and dynamic analysis with Euler
parameters, incomputer Aided Analysis and Optimization of Mechani-
cal System Dynamics, E. J. Haug ed. Heidelberg: Spring-Verlag, 1984,
[14] G. N. Sandor, Principles of general quatemion-operator method of
spatial kinematic synthesis, ASME J. Appl. Mech. E, vol. 35, no. 1,
pp. 4046, Mar. 1968.
A. C. Robinson, On the use of quaternions in simulation of rigid-body
motion, Tech. Rep. 58-17, Aeronautical Research Lab., Wright Air
rx r,
pp. 261-281.
Defining
1 1
2 2
k - ( I xx I,, I,,) -Trace(Io)
(B4)
we obtain the inertia matrix in four-space as
I o=[ k OT
0 I o
APPENDIX C
DIFFERENTIATION OF INERTIA MATRIX
The inertia matrix I o, referred to the inertial coordinate
system Oo(X0, YO, ZO) , and the inertia matrix I , referred
to the body-fixed coordinate system oi(xi, yi, zi) of body
can be related by [55]
where Ai0 is the rotational transformation matrix of system oi
relative to system Differentiating (Cl) once, we have
io A ~ ~ P A ; A ~ ~ F A L A~ , ~ A; .
(c2)
Development Center, Dayton, OH, Dec. 1958.
[16] P. E. Nikravesh and I. S. Chung, Applications of Euler parameters
to the dynamic analysis of three-dimensional constrained mechanical
systems, ASME J. Mech. Design, vol. 104, no. 4, pp. 785-791, 1982.
[17] V. N. Koshlyakov, Equations of a heavy rigid body that rotates about
a fixed point in the Rodrigues-Hamilton parameters, Izv. Akad. Nauk
SSSR, Mekhanika Tverdogo Tela, vol. 18, no. 4, pp. 16-25, 1983.
[18] Yu. N. Chelnokov, Use of quaternions in the precessional theory of
gyroscopes, Izv. Akad. Nauk SSSR. Mekhanika Tverdogo Tela, vol. 19,
no. 6, pp. 3-10, 1984.
[19] J. C. K. Chou, H. K. Kesavan, and K. Singhal, Dynamics of 3-
D isolated rigid-body systems: Graph-theoretic models, Mechanism
Machine Theory, vol. 21, no. 3, pp. 261-272, 1986.
[20] J. C. K. Chou, K. Singhal, and H. K. Kesavan, Multi-body systems with
open chains: Graph-theoretic model, Mechanism Machine Theory, vol.
21, no. 3, pp. 273-284, 1986.
[21] J. C. K. Chou, H. K. Kesavan, and K. Singhal, A systems approach
to 3-D multi-body systems using graph-theoretic models, IEEE Truns.
Syst. Man Cybern., vol. SMC-16, no. 2, pp. 219-230, 1986.
[22] R. H. Taylor, Planning and execution of straight line manipulator
trajectories, IBM J. Res. Develop., vol. 23, pp. 424436, 1979.
[23] R. L. Huston and F. A. Kelly, The development of equations of motion
of single-arm robots, IEEE Trans. Syst. Man Cybern., vol. SMC-12, no.
3, pp. 259-266, May/June 1982.
[24] J. C. K. Chou, G. Baciu, and H. K. Kesavan, Graph-theoretic models
for simulating robot manipulators, inProc. IEEE Inf. Con$ Robotics
Automat., vol. 2 (Raleigh, NC, Mar. 31-Apr. 3, 1987), pp. 953-959.
[25] B. P. Ickes, A new method for performing digital control system
amplitude computations using quaternions, AIAA J., vol. 8, no. 1, no.
13-17, Jan. 1970.
[26] G. Meyer, Design and global analysis of spacecraft attitude control
systems, NASA Tech. Rep. R-361, Mar. 1971.
64 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 8, NO. 1, FEBRUARY 1992
[27] A. C. Hendley, Quaternions for control of space vehicles, in Proc. Inst.
Navigation, National Space Meeting on Space Shuttle Space Station
Nuclear Shuttle Navigation (Huntsville, AL), Feb. 1971.
[28] J. L. Junkins and J. D. Turner, Optimal continuous torque attitude
maneuvers, J. Guidance Control, vol. 3, no. 3, pp. 21G217, May-June
1980.
[29] J. R. Wen, Ed., Spacecrap Afrirude Determinafion and Control.
Boston: Reidel, 1980.
[30] T. A. W. Dwyer, Exact nonliner control of large angle rotational
maneuvers, IEEE Trans. Automat. Control, vol. AC-29, no. 9, pp.
769-774, Sept. 1984.
[31] J. T. Wen and K. Kreutz, Globally stable control laws for the attitude
maneuver problem: Tracking control and adaptive control, in Proc. 27th
Confi Decision Control (Austin, TX, Dec. 7-9, 1988), pp. 69-74.
[32] J. C. K. Chou and M. Kamel, Quaternions approach to solve the
kinematic equation of rotation, A, A, A, Ab, of a sensor-mounted
robotic manipulator, in Proc. IEEE Int. Conj Robotics Automat., vol.
2 (Philadelphia, PA, Apr. 24-29, 1988), pp. 2656-2662.
[33] Finding the position and orientation of a sensor on a robot
manipulator using quaternions, Int. J. Robotics Res., vol. 10, no. 3, pp.
240-254, June 1991.
[34] J. C. K. Chou, The solution of quadratic equations for the camera
location calibration using Newton-Raphson method, Tech. Rep. TR-
91002, Computer Vision Lab., Erik Jonsson School of Engineering and
Computer Sci., Univ. of Texas at Dallas, Richardson, TX, Feb. 4, 1991.
[35] Solving diagonalized quadratic equations for the calibration
of camera orientation using Newton-Raphson method and closed-form
formalae for LU factorization, Tech. Rep. TR-91003, Computer Vision
Lab., Erik Jonsson School of Engineering and Computer Sci., Univ. of
Texas at Dallas, Richardson, TX, June 13, 1991.
[36] B. K. P. Horn, Closed-form solution of absolute orientation using unit
ouaternions,J. OD?. Soc. Amer.. vol. 4. no. 4. DD. 62S642. ADI. 1987.
-r-
j. Wittenburg, DGamics of Systems ofRigid Bidies.
Teubner, 1977.
L. Brand, Vector and Tensor Analysis.
B. Brainerd, D. A. Clarke, M. J. Liebovitz, R. A. Rose, and G. A.
Scroggie, Vector and Matrices. Toronto: Ryerson, 1967, ch. 7.
D. J. Foulis, Fundamental Concepts of Mathematics. Weber and
Schmidt, Prindle, 1969, ch. 4.
0. Bottema and B. Roth, Theoretical Kinematics. Amsterdam: North-
Holland, 1979.
R. A. Wehage, Quaternions and Euler parameters-A brief exposition,
inComputer Aided Analysis and Optimization of Mechanical System Dy-
namics, E. J. Haug, Ed. Heidelberg: Spring-Verlag, 1984, pp. 147-180.
0. Rodrigues, Des lois gtometriques qui rtgissent les dtplacements
dun systbme solide dans lespace, et de la variation des coordonntes
provenant de ces dtplacements considtrts indkpendamment des causes
qui peuvent les produire, J. Mathematiques Pures Appl., vol. 5, pp.
Stuttgart: B. G.
New York: Wiley, 1957.
380-440, 1840.
[44] J. W. Gibbs, Vector Analysis. New York: Dover, 1960 (republished
from 2nd ed., 1909).
[45] C. H. Suh and C. W. Radcliffe, Kinematics and Mechanisms Design.
New York: Wiley, 1978.
[46] H. Goldstein, Classical Mechanics, 2nd ed. Reading, MA Addison-
Wesley, 1981.
[47] R. P. Paul, Robot Manipulators: Mathematics, Programming, and Con-
trol.
[48] L. T. Wang and B. Ravaui, Recursive computations of kinematic
and dynamic equations for mechanical manipulators, IEEE J. Robotics
Automat., vol. RA-1, no. 3, pp. 124-131, Sept. 1985.
[49] L. A. Pipes, Matrix Methods for Engineering. Englewood Cliffs, NJ:
Prentice-Hall, 1963.
[50] J. C. K. Chou, A nearly-linear computational-cost scheme for the
forward dynamics of an n-body pendulum, in Proc. 3rd Ann. Con8
Aerospace Computational Control, D. E. Bernard and G. K. Man, Eds.
(Pasadena, CA, Dec. 15, 1989), JPL 89-45, pp. 88-101.
[51] A. R. Klumpp, Singularity-free extraction of a quaternion from a
direction-cosine matrix, J. Spacecraft Rockets, vol. 13, no. 12, pp.
754-755, 1976.
[52] J. C. K. Chou, Graph representation and partial derivatives of suc-
cessive rotations with quaternions, Tech. Rep. TR-890011, Program in
Engineering Science, Erik Jonsson School of Engineering and Computer
Sci., Univ. of Texas at Dallas, Richardson, TX, Nov. 1989.
Reading, MA: Addison-Wesley,
1968.
Cambridge, MA: MIT Press, 1981.
[53] T. B. Huang, Engineering Mechanics.
[54] K. R. Symon, Mechanics. Reading, MA: Addison-Wesley, 1971.
[55] S. N. Rasband, Dynamics. New York: Wiley, 1983.
Jack C. K. Chou (SS8-MSS) graduated from
the Department of Electrical Engineering, National
Taipei Institute of Technology, Taipei, Taiwan, and
received the M.A.Sc. and Ph.D. degrees in systems
design engineering from the University of Water-
loo, Waterloo, Ontario, Canada, in 1984 and 1988,
respectively.
He joined the Erik Jonsson School of Engineering
and Computer Science at the University of Texas at
Dallas, Richardson, in 1988 as an Assistant Profes-
sor in Engineering Science. His research interests
include CAD/CAM, robotics, physical systems modeling and simulation of
mechanical and electrical systems, multibody dynamic systems, numerical
computational methods, and camera calibration from computer vision.
Dr. Chou is a member of the ASME and the SME.