2.1 Attitude Representation
2.1.3 Unit Quaternion
To denote the unit-quaternion, we use Q= (η, q)∈Q, whereη ∈R and q ∈R3, and
Q is the set of unit-quaternion defined by
Q:=
{
Q∈R×R3 | ∥Q∥= 1
}
The unit-quaternion is often considered as an axis-angle representation due to the fact the relative orientation of two reference frames can always be expressed by a single rotation by some angle θ about some axis (of unit length) ˆk, where in this case the unit-quaternion can be written as
Q=
(
cos(θ/2), sin(θ/2)ˆk
)
. (2.6)
The axis-angle representation can be used to reveal some interesting facts about the unit-quaternion. For example, the particular case Q = (0, q), such that η = 0 and
∥q∥ = 1, suggests thatθ =π(2n+ 1) where n ∈Z. In this case, the unit-quaternion
Qphysically describes a rotation of 180 degrees about the unit-length axis of rotation ˆ
k = q. This condition will be of particular interest in the analysis of the attitude estimation and control laws, due to some unique challenges which are attributed to this condition.
Due to the use of four elements, the unit-quaternion is an over-parameterization of the rotation space SO(3). That is, the transformation from Q →SO(3) is a two- to-one map. This characteristic results in some difficulties due to the multiplicity of equilibrium solutions (which relate to the same point in the rotation space) when using this representation. This is due to the fact that a coordinate frame whose orientation is described by the unit-quaternionQis physically equivalent to the coordinate frame whose orientation is defined by the unit-quaternion−Q. This can easily be seen from the definition of the axis-angle representation (2.6) since
−Q= ( −cos(θ/2), −sin(θ/2)ˆk ) = ( cos((θ+ 2π)/2), sin((θ+ 2π)/2)ˆk ) . (2.7) In terms of the axis-angle representation, we see that the unit-quaternion −Q differs
Chapter 2: Background 28
from Q in that the angle θ is increased by a value of 2π (or a multiple thereof). Therefore, if the orientation of two different frames of reference (each taken with respect to the inertial frame) are described by the unit-quaternion Q and −Q, the orientation of the two coordinate frames are physically equivalent and actually share the same value for the rotation matrix using the SO(3) parameterization. In fact, a well known transformation which provides a rotation matrixR(Q) which corresponds to the unit quaternion Q is known as the Rodrigues formula, and is given by
R(Q) =I3×3+ 2S(q)2−2ηS(q), (2.8) from which one can easily confirm R(Q) =R(−Q). Throughout this thesis we make use of this transformation frequently when it is convenient to use a rotation matrix instead of the unit-quaternion. Regardless of the physical equivalence of two points in the quaternion space, as discussed in the introduction, if a system has an equilibrium solution which corresponds to a value of the rotation matrix given by R ∈ SO(3), there exists two antipodal equilibrium solutions when using the quaternion parame- terization given by ±Q∈Q. As previously discussed, the multiplicity of equilibrium solutions presents a topological obstruction to making claims such as global stability (for more details see Bhat (2000) and Koditschek (1988)).
When unit-quaternion are used, it is often necessary to employ the use of the well-known quaternion product operation. To define this operation, we let Q1 = (η1, q1) ∈ Q, Q2 = (η2, q2) ∈ Q denote two unit-quaternion. Then the quaternion product of Q1 and Q2, denoted byQ3 = (η3, q3)∈Q is defined by
Q3 =Q1⊙Q2 =
(
η1η2−qT1q2, η1q2+η2q1+S(q1)q2
)
The setQforms a group with the quaternion multiplication operation⊙, with quater- nion inverseQ−1 = (η,−q), and identity elementQ⊙Q−1 =Q−1⊙Q= (1,0). Using this operation, the unit-quaternion can also be used to give the coordinates of a vec- tor in multiple frames of reference. For example, using the vector-transformation property described by 2.2, where we denote an arbitrary vector x1 ∈ R3 and denote
the vector expressed in a rotated coordinated frame given by x2 = R(Q)x1, then
the vector x2 can also be obtained using the quaternion product by the following
operation
(0, x2) =Q−1⊙(0, x1)⊙Q. (2.10) Although the aforementioned topological obstruction can be avoided by using the setSO(3), many researchers have still relied on the quaternion representation due to some significant advantages it offers over SO(3) representation. One advantage can be attributed to the unique mathematical properties of the quaternion, which often yields greatly simplified proofs when compared to works which rely solely on
SO(3). Another advantage of the unit quaternion stems from the fact it is represented using a vector (of four elements) instead of a 3×3 orthogonal matrix, which can be useful, especially in the development of computer simulations. For example, when implementing a particular unit-quaternion-based estimation or control algorithm (or when performing computer simulations), preserving the properties of the attitude representation becomes important. To ensure a vector preserves the properties of a unit-quaternion, one can simply normalize the vector (divide by the norm). Preserving
SO(3) properties of a 3×3 matrix involves more complicated algorithms, such as the
Chapter 2: Background 30