Académique Documents
Professionnel Documents
Culture Documents
T ERM P ROJECT
FALL 2003
YVIND H EGRENS
Preface
The work presented in the following is the result of a term project, carried out in the 9th
semester of the Master of Science program at the Norwegian University of Science and Technology, NTNU, Department of Engineering Cybernetics. Even though the report is self-standing
by itself, it should be considered a prestudy of a potential procedure of achieving complete
three-axis stabilization of an underactuated satellite. At the time of writing the problem is still
unsolved in the literature.
I would like to thank my supervisor Professor Kristin Y. Pettersen and advisor Assistant Professor Jan Tommy Gravdahl for their support,valuable advice and interesting discussions during
this work.
yvind Hegrens
Trondheim 2003-11-28
ii
Abstract
The topic of this report is attitude stabilization of an underactuated rigid satellite. Underactuated mechanical systems are characterized by the fact that there are more degrees of freedom
than actuators. In our case, the satellite has three degrees of freedom, but only two available
actuators. The problem is interesting both from a practical and theoretical point of view and
has received much attention in the last decades.
The spacecraft is modelled as an ideal rigid body and various topics within spacecraft and
astrodynamics are included to provide a thorough insight in how the model is derived. To
represent its attitude, the relatively new (w, z)-parametrization is utilized. By means of its
properties, it is very interesting for the attitude control problem. It is a minimal and compact
parametrization with the singularity moved as far away from the origin as possible, and the
motion of the z-axis is decoupled from the rest of the system.
It is shown that the underactuated satellite model fails to satisfy Brocketts necessary condition, hence it can not be asymptotically stabilized by means of a continuous time-invariant
pure-state feedback. This is also shown to be applicable for the discontinuous case as well.
Solving the complete three-axis stabilization problem for an underactuated rigid spacecraft
is still an open problem in the literature. A novel approach is proposed, but unlike preceding
work, a strategy utilizing theory related to nonlinear systems in cascades is exploited. Together
with well known methods like Lyapunov design and backstepping, the proposed strategy seems
highly potential, and hopefully it will make a contribution in the problem of achieving complete three-axis stabilization in sense of an underactuated satellite. The proposed approach aim
toward the rather ambitious goal of achieving global uniform asymptotic stability (GUAS) for
the closed-loop system.
Keywords: (w, z)-parametrization; spacecraft and astrodynamics; controllability; stabilizability; cascaded systems; attitude control
iv
Contents
Preface
Abstract
iii
Introduction
1.1 A real-life scenario: An example
1.2 Nonholonomic systems . . . . .
1.3 Previous work . . . . . . . . . .
1.4 Outline of the report . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
2
2
4
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Attitude parameterizations
2.1 The rotation matrix . . . . . . . . . . . . . . . . . . . . .
2.1.1 Kinematic differential equation . . . . . . . . . .
2.1.2 Attitude deviation . . . . . . . . . . . . . . . . . .
2.2 Euler parameters . . . . . . . . . . . . . . . . . . . . . .
2.3 Rodrigues parameters . . . . . . . . . . . . . . . . . . . .
2.3.1 The classical Rodrigues parameters . . . . . . . .
2.3.2 The modified Rodrigues parameters . . . . . . . .
2.4 The (w, z) parametrization . . . . . . . . . . . . . . . . .
2.4.1 Parametrization of the rotation matrix R SO(3)
2.4.2 Kinematic differential equations . . . . . . . . . .
2.4.3 Properties . . . . . . . . . . . . . . . . . . . . . .
2.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
. 5
. 6
. 6
. 7
. 7
. 7
. 8
. 9
. 9
. 12
. 14
. 14
.
.
.
.
.
.
.
.
.
.
15
15
15
17
22
25
27
27
30
31
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
vi
CONTENTS
4.4
4.5
Conclusions
43
6.1 Further work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Bibliography
A Theory
A.1 Mathematical preliminaries . . . . . . . . . . . . .
A.2 Lyapunov stability . . . . . . . . . . . . . . . . .
A.3 Strict Lyapunov functions for time-varying systems
A.4 Controllability . . . . . . . . . . . . . . . . . . . .
A.5 Stabilizability . . . . . . . . . . . . . . . . . . . .
45
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
49
49
50
50
51
53
59
Chapter 1
Introduction
Control of underactuated mechanical systems has attracted many researchers in recent years.
This is due to their broad range of applications and the theoretical problems they have to offer. Many real-life mechanical systems including aircrafts, helicopters, spacecrafts, underwater
vehicles, surface vessels, mobile robots, walking robots, and flexible systems are examples of
underactuated systems. Formally, underactuated mechanical systems are systems that have
fewer actuators than configuration variables (degrees of freedom). The restriction of the control makes the control design of these systems rather complicated.
The topic of this report is to establish and investigate a reasonable model of an underactuated satellite, and then finally propose a control strategy with hopes of obtaining complete
attitude stabilization about the satellites three principal axes. The system to be studied has
three degrees of freedom but only two available actuators, which makes it an underactuated
system. The motivation for studying this problem is both practical and theoretical. Usually an
actuator failure is handled by incorporating redundancy in the design. The disadvantage of this
approach is higher weight and a more complicated mechanical system. Especially for small
spacecrafts these factors may be crucial. An alternative is to use more complicated controllers
that manage to achieve the control objectives with only two actuators. From a theoretical point
of view the stabilization of an underactuated system is a challenging problem. Many interesting
control theoretical questions have to be answered and the problem by itself is highly nonlinear.
1.1
At the time of writing a Norwegian micro-satellite named NSAT-1, initiated by the Norwegian
Defence Research Establishment (FFI), is being planned. The satellite is to be used for maritime surveillance, and will give frequent coverage of Norwegian Ocean areas.
During a pass over Norwegian waters a passive receiver antenna onboard the satellite will
detect signals from active X-band radars from the vessels underneath. Based on the Angle of
Arrival (AOA) of the signals and pulse parameters, advanced onboard algorithms are used to
determine geographic position of the radar, and thereby the vessel holding it. This is known as
geolocation (Narheim et al., 2001). The author has been fortunate to have participated in the
study and specification phase for the particular satellite.
Introduction
From the mission described above it is obvious that the required accuracy must be high, and
the satellite platform should be able to obtain any desired attitude and remain in the same configuration. This should also be the case when different torque perturbations or disturbances are
present. Disturbances and perturbations are to be discussed subsequently. Since the receiver
antenna onboard needs to be oriented in a fixed direction, hence being able to detect radar signals in a particular observation area, complete 3-axis stabilization is desired.
To obtain the required performance for the system above, in terms of stability, it would be
desired to find a controller that globally uniformly asymptotically (GUAS) stabilizes the attitude configuration for the satellite. If possible, locally uniformly exponentially stability is
preferred, since this gives better convergence rate. If globally uniformly exponentially stability
was to be obtain, this gives strong robustness properties as well.
1.2
Nonholonomic systems
As mentioned earlier, control of underactuated mechanics systems has been a very active topic
of research during the last decades. The research on underactuated systems is a continuation
on the research on nonholonomic systems, as many underactuated systems are subject to nonholonomic constraints. Nonholonomic constraints can be divided into first-order and secondorder nonholonomic constraints. First-order constraints are non-integrable constrains on the
form (q, q)
= 0, where q and q are generalized coordinates and velocities. Second-order constraints are on the form (q, q,
q) = 0, and constrain the acceleration of the system. A common
property of nonholonomic systems is that they can not be stabilized by a pure time-invariant
state feedback. This will later be shown to be the case for our system as well. An excellent
introduction to nonholonomic systems can be found in Kolmanovsky and McClamroch (1995).
The number of publications on nonholonomic and underactuated systems is extensive. In the
next section some of the most interesting publications concerning underactuated spacecrafts
are presented.
1.3
Previous work
There exist numerous research articles on the problem of attitude stabilization of spacecrafts.
Most of these deals with the case of complete control actuation using either reaction wheels,
thrusters or magnetic actuators. Some contributions from Scandinavian scientist are for instance Egeland and Godhavn (1994), Dalsmo and Egeland (1997), Skullestad and Gilbert
(2000) and Wisniewski and Blanke (1999). The following summary is taken from Fauske
(2002), and gives an overview of some of the most interesting publications concerning underactuated spacecrafts.
The angular velocity control of a rigid body with only one or two controls has been studied
extensively in the literature. The issue of feedback stabilization of the angular velocities has
been solved using various approaches. In Brockett (1985) it was shown by finding a Lyapunov
function, that the null solution of the angular velocity equations is asymptotically stabilizable
by two control torques aligned with two principal axes if the uncontrolled axis is not an axis
of symmetry. The angular velocity of a rigid body can in fact be asymptotically stabilized by
smooth feedback with a single control as long as the control is not aligned with a principal axis
Introduction
new formulation for the attitude dynamics. The new attitude formulation, described in Tsiotras
and Longuski (1995), was subsequently used in Tsiotras et al. (1995) and Tsiotras and Luo
(1996) to derive a time-invariant discontinuous control law that achieves arbitrary reorientation
of the spacecraft. Due to the properties of the new parameterization, the control laws derived
were especially simple and elegant. In a more recent paper Tsiotras and Luo (2000), saturated
tracking and stabilization laws were developed for the underacutated axi-symmetric rigid body
under the assumption of zero spin rate. Another time-varying tracking law was developed in
Behal et al. (2002) using a Lyapunov-based approach and by exploiting several characteristics
of the quaternion attitude formulation. The spin rate was not required to be zero, however the
spacecraft could only be driven to an arbitrarily small neighborhood of the origin.
The topic of feasible trajectory generation for the underactuated spacecraft has not received
much attention. An exception is Tsiotras and Luo (2000) where feasible trajectories are generated for the axi-symmetric rigid body using the notion of differential flatness.
For an excellent overview of developments within actuator failures and control of underactuated spacecraft the reader is referred to Tsiotras and Doumtchenko (2000) and references
therein. This papers also addresses problems that are still to be solved.
1.4
Chapter 2
Attitude parameterizations
Rigid body dynamics is important for a wide range of control applications, and is essential in
robot control, ship control, control of aircraft and satellites, and vehicle control in automotive
systems. In the case of describing the dynamics of a rigid spacecraft, Eulers equations of motion are commonly used to provide a complete and well defined framework. For the kinematics
the situation is different, due to the fact that the rotation matrix, which describes the relative
orientation between two reference frames, can be parameterized in more than one way. Which
parametrization to use is clearly dependent on the problem to be solved. This chapter gives
an overview of different attitude parameterizations and describes in detail the relatively new
(w, z) parametrization. The latter is to be used throughout this report.
A possible choice of attitude parametrization is the classical Euler angles, which are commonly used in naval and aerospace control problems. However, the use of Euler angles in the
equations of motion may introduce complicated nonlinear expression with inherent singularities. They are therefore not considered in this report.
2.1
The rotation matrix, also called the direction cosine matrix, has three interpretations:
Describes the mutual orientation between two coordinate frames, where the column vector are cosines of the angles between the two frames.
Transforms vectors represented in one reference frame to another.
Rotates a vector within a reference frame.
The rotation matrix R from frame a to frame b is denoted Rab . A matrix R is a rotation matrix
if and only if it is an element of the set denoted by SO(3), that is,
SO(3) = R R33 : RT R = I and det R = 1 ,
(2.1)
Attitude parameterizations
(2.2)
S() is a skew-symmetric matrix operator and member of the set denoted by so(3), that is,
so(3) = S R33 : ST = S
(2.3)
In coordinate vector notation we introduce the skew-symmetric form of the vector defined by
0
z y
0
x ,
= S() = z
y x
0
2.1.1
x
= y
z
(2.4)
From the properties of SO(3), it can be shown that the kinematic differential equation for the
rotation matrix can be given by the two alternative forms (Egeland and Gravdahl, 2002)
a = ( a ) Ra
R
b
ab
b
b
a
a
R
b = Rb (ab )
(2.5a)
(2.5b)
a is the instantaneous angular velocity of frame b relative to frame a as seen from the
where ab
b is the angular velocity of frame a relative to frame b as seen from the b
a frame. Similar, ab
frame. Using (2.4) we can rewrite (2.5) as
a = S( a )Ra = Ra S( b )
R
ab
b
b
ab
b
2.1.2
(2.6)
Attitude deviation
Let the frame a define a reference orientation and let frame b be a body fixed frame. Then the
rotation matrix R , Rab will describe the orientation of the body. Suppose that the desired
orientation of the body is given by a rotation matrix Rd .
In the case of rotation matrices it does not make sense to subtract Rd from R as the result
would not be a valid rotation matrix. Instead the deviation between the desired and the actual
a SO(3) defined by
orientation is described by the rotation matrix R
a , RRT
R
d
(2.7)
It can be shown (Egeland and Gravdahl, 2002), by using composite rotations, that the kinematic differential equations for the attitude deviation can be calculated as
a = a da
d
a
a ) R
Ra = (
dt
a = I.
Clearly, from (2.7) we se that when R Rd R
(2.8a)
(2.8b)
2.2
Euler parameters
The Euler parameters, also called unit quaternions, are attractive due to their nonsingular
parametrization and linear kinematic differential equations if the angular velocities are known.
The quaternion representation requires much less computations than for instance the Euler
angles representation, and is therefore useful in applications where computer resources are
limited.
The Euler parameters are defined in terms of the angle-axis parameters and k, briefly discussed in regards to equation (2.2). The mapping is defined as
= cos ,
2
= k sin
(2.9)
(2.10)
It is found in Egeland and Gravdahl (2002) that the derivatives of the Euler parameters can be
given as functions of the angular velocity, which gives the kinematic differential equations
1
= T
2
1
=
[I + S()]
2
(2.11a)
(2.11b)
2.3
(2.12a)
(2.12b)
(2.12c)
(2.12d)
Rodrigues parameters
The classical and modified Rodrigues parameters can be interpreted as the coordinates resulting
from a stereographic projection of the four-dimensional Euler parameter hypersphere onto a
three-dimensional hyperplane (Schaub et al., 1995). The difference between them is how the
projection point and mapping hyperplane is chosen.
2.3.1
The classical Rodrigues parameters can be derived from the Euler parameters with the transformation
q=
(2.13)
q = k tan
(2.14)
2
Attitude parameterizations
Clearly, the classical Rodrigues parameters have a singular condition for = , where |q|
. The kinematic differential equation is derived from (2.11)
q =
d
=
2
dt
(2.15)
which gives the quadratic nonlinear differential equation for the kinematics, that is
q =
1
I + S(q) + qqT
2
(2.16)
1
(1 + q12 )1 + (q1 q2 q3 )2 + (q1 q3 + q2 )3
2
1
(q1 q2 + q3 )1 + (1 + q22 )2 + (q2 q3 q1 )3
2
1
(q3 q1 q2 )1 + (q3 q2 + q1 )2 + (1 + q32 )3
2
(2.17a)
(2.17b)
(2.17c)
Unlike the Euler parameters, the Rodrigues parameters are numerically unique. They uniquely
define a rotation on the open range of (, ). As is evident in equation (2.13), reversing the
sign of the Euler parameters has no effect on the q.
2.3.2
The modified Rodrigues parameters can be derived from the Euler parameters with the transformation
=
(2.18)
1+
Combining (2.13) and (2.18) yields
= k tan .
4
(2.19)
Clearly the the modified Rodrigues parameters have a singular condition for = 2, which
allow twice the principal rotation angle compared to the classical Rodrigues parameters. From
(2.13) and in (2.11) we get the differential kinematic equations
=
1
(1 T )I + 2S() + 2 T
4
(2.20)
1
1
1
(1 + 12 22 32 )1 + (1 2 3 )2 + (1 3 + 2 )3
4
2
2
1
1
1
(2 1 + 3 )1 + (1 12 + 22 32 )2 + (2 3 1 )3
2
4
2
1
1
1
(3 1 2 )1 + (3 2 + 1 )2 + (1 12 22 + 32 )3
2
2
4
(2.21a)
(2.21b)
(2.21c)
(a)
(b)
Figure 2.1: Rotation sequence of the (w, z) parametrization. Left hand side shows the initial
rotation about the body ~i3 -axis. Right hand side shows the resulting coordinate system after
the second rotation.
2.4
2.4.1
(2.22)
This can be interpreted as follows. Consider a inertial frame i, defined by three orthogonal unit
vectors ~i1 ,~i2 and ~i3 . Another frame b is fixed to the body and is defined by the three orthogonal
unit vectors ~b1 , ~b2 and ~b3 . The rotation matrix R in (2.22) is then the rotation matrix from the
the body frame to the inertial frame. The intermediate frame o, defined by the three orthogonal
unit vectors ~o1 , ~o2 and ~o3 is the result of the first rotation.
The first rotation is shown in figure 2.1 a) and represents a simple rotation about the inertial
~i3 -axis. This resulting rotation matrix can be written as
cos z sin z 0
Roi (z) = sin z cos z 0 , R1 (z)
0
0
1
(2.23)
10
Attitude parameterizations
The next step is to find an expression for the second rotation matrix Rbo (w) , R2 (w). Recall
that a rotation matrix can be computed using an angle-axis description, which was shown in
section 2.1 by using Rodrigues fomula (2.2). The formula is repeated here for clarity;
R(k, ) = I + S(k) sin + S2 (k)(1 cos )
(2.24)
Assume that ~o3 = a~b1 + b~b2 + c~b3 , which is the ~o3 -axis in the intermediate frame, transformed
to the body frame. In sense of the rotation matrix Rbo (k, ) this can be written as
a
b = Rbo (k, )~o3
(2.25)
c
The resulting vector [a, b, c]T is clearly the third column in the rotation matrix R2 . Also, it can
be shown that (a, b, c) are the directed cosines of the ~b3 -axis in the o frame, that is
~b3 = a~o1 b~o2 + c~o3
(2.26)
The angle between ~b3 and ~o3 is simply found from the vector dot product as
= cos1
~o3 ~b3
= cos1 c
~
|~o3 ||b3 |
(2.27)
The axis of rotation can be found from (note that ~k has the same coordinates in both frames)
~
~k = ~o3 b3
k~o3 ~b3 k
(2.28)
Using ~o3 = [0, 0, 1]T , when refereed to the intermediate reference frame, and (2.26), the axis
of rotation can be calculated as
o a~o2
~k = b~
1
(2.29)
a2 + b2
Now the angle-axis description of the rotation matrix can be used. Insertion of (2.29) and (2.27)
into (2.24) gives the rotation matrix from the intermediate frame to the body frame, that is
b2
ab
c + 1+c
1+c
a
ab
a2
Rob (k, ) = 1+c
(2.30)
c + 1+c
b
a
b
c
By taking the transpose of (2.30) we get the following expression for the rotation matrix R2 (w)
ab
b2
c + 1+c
1+c
a
a2
ab
(2.31)
Rbo (k, ) = 1+c
c + 1+c
b , R2 (w)
a
b
c
Expanding (2.22) with (2.23) and (2.31) gives the complicated matrix
2
2
2
2
R(w, z) =
z
1+c
b sin z a cos z
b cos z a sin z
b
c
(2.32)
11
Figure 2.2: Stereographic projection of a point (a, b, c) on a unit sphere on to a complex plane.
The foregoing matrix is redundant, in the sense that the elements a,b,c are not independent, but
satisfy the constraint
a2 + b2 + c2 = 1
(2.33)
We can therefor eliminate one of the elements in (2.32) to obtain a simplified form. One way
of doing this is to use a stereographic projection. From
the constraint in (2.33) we introduce
the set S 2 = (x1 , x2 , x3 ) R3 : x21 + x22 + x23 = 1 R3 , which is the unit sphere. For
(a, b, c) S 2 , we get the mapping : S 2 \{(0, 0, 1)} C, (a, b, c) 7 w. The stereographic
projection is shown in Figure 2.2 and is defined as
w , w1 + iw2 =
b ia
1+c
(2.34)
It can be verified that the inverse map 1 : C S 2 \{(0, 0, 1)}, w 7 (a, b, c) is given by
a=
i(w w)
,
1 + |w|2
b=
w+w
,
1 + |w|2
c=
1 |w|2
1 + |w|2
(2.35)
where w
is the complex conjugate of w and |w|2 = ww
= w12 + w22 . The basis of the projection
is the point (0, 0, 1), which is the south pole S of the unit sphere. Note that when c = 1
the projection has a singularity and w . The singularity corresponds to an upside-down
orientation of the body. Using (2.35) we can express R2 (w) in terms of (2.34) as follows
1 + w12 w22
2w1 w2
2w2
1
2w1 w2
1 w12 + w22
2w1
R2 (w) =
(2.36)
1 + w12 + w22
2
2
2w2
2w1
1 w 1 w2
When using complex notation, a more compact matrix can be given as
1 + Re(w2 )
Im(w2 )
2Im(w)
1
Im(w2 )
1 Re(w2 ) 2Re(w)
R2 (w) =
1 + |w|2
2Im(w)
2Re(w)
1 |w|2
(2.37)
The total rotation matrix R(w, z) is then given in terms of w and z as follows
12
Attitude parameterizations
where cz and sz denotes cos(z) and sin(z), respectively, and = 1/(1 + |w|2 ).
The foregoing matrix can be written more compactly as
Re(1 + w2 )eiz
Im(1 + w2 )eiz 2Im(w)
1
Im(1 w
2 )eiz Re(1 w
2 )eiz 2Re(w)
R(w, z) =
1 + |w|2
iz
2Im(we )
2Re(weiz )
1 |w|2
2.4.2
(2.39)
From (2.6) we can derive the kinematic differential equations for the attitude motion of the rigid
b
= bi
body. The differential equation for (2.22) becomes R(w,
z) = S()R(w,
z), where
is the angular velocity of the inertial frame relative to the body frame, as seen from the body
b = b (Kane et al., 1983). This relation makes
frame. It can be shown however, that bi
ib
b , which is the
it possible to derive the kinematics using the more intuitive angular velocity ib
angular velocity of the body frame relative to the inertial frame, as seen from the body frame.
b , [ , , ]T , and the redefined differential equation for
For the reminder we let = ib
1
2
3
(2.40)
(2.41)
b ia wc
1+c
(2.42)
w=
Differentiation of (2.41) gives
w =
Using the relations in (2.35) and (2.40) gives the differential equation for w C
w = i3 w +
+ w2
2
2
(2.43)
where
= 1 + i2 ,
= 1 i2 ,
i=
(2.44)
w 1 = 3 w2 + 2 w1 w2 +
(2.45a)
w 2
(2.45b)
To find the differential equation for z we start with the scalar form of the differential equation
for a rotation matrix,
tr[R(w,
z)] = tr[S()R(w, z)]
(2.46)
13
where tr() denotes the trace of the matrix. Taking the trace of R(w,
z) gives
2 cos z + 2
d
d
1
tr[R(w, z)] =
(tr[R(w, z)]) =
dt
dt 1 + w12 + w22
4(1 + cos z)(w1 w 1 + w2 w 2 )
2z sin z
=
1 + w12 + w22
(1 + w12 + w22 )2
(2.47)
w1 w 1 + w2 w 2
= 1 w1 + 2 w2
(1 + w12 + w22 )2
(2.48)
tr[R(w,
z)] =
2
z sin z + (1 + cos z)(1 w1 + 2 w2 )
2
2
1 + w 1 + w2
(2.49)
tr[S()R(w, z)] =
z = 3 1 w2 + 2 w1
(2.51)
i
z = 3 + (
w w)
(2.52)
or equivalently,
To summarize the discussion above, the differential kinematic equations for the (w, z) parametrization are
1
w 1 = 3 w2 + 2 w1 w2 + (1 + w12 w22 )
(2.53a)
2
2
w 2 = 3 w1 + 1 w1 w2 + (1 + w22 w12 )
(2.53b)
2
z = 3 1 w2 + 2 w1
(2.53c)
Alternatively they can be written more compactly as
w = i3 w +
+ w2 ,
2
2
i
z = 3 + (
w w)
(2.54a)
(2.54b)
Remark 2.4.1. It is straight forward to verify that the kinematic differential equations for the
(w, z) parametrization can be written as
d
|w|2 = (1 + |w|2 )Re( w)
dt
z = 3 + Im( w)
(2.55a)
(2.55b)
Remark 2.4.2. Equation (2.34) is only one of the possible definitions of the parameter w.
Other combinations will provide different kinematic equations for w and z. This is shown in
Table 2.1.
14
Attitude parameterizations
w
a+ib
1+c
Kinematics
w = i 3 w 2 + 2 w
z = 3 + 12 ( w
+
w)
2
bia
1+c
w = i3 w + 2 + 2 w2
z = 3 + 2i (
w w)
b+ic
1+a
w = i 1 w 2 + 2 w2
+
w)
z = 1 + 12 ( w
cib
1+a
w = i1 w + 2 + 2 w2
z = 1 + 2i (
w w)
c+ia
1+b
w = i 2 w 2 + 2 w2
z = 2 + 12 ( w
+
w)
aic
1+b
w = i2 w + 2 + 2 w2
z = 2 + 2i (
w w)
1 + i2
1 + i2
2 + i3
2 + i3
3 + i1
3 + i1
2.4.3
Properties
The (w, z) parametrization has some unique properties that makes it useful in attitude control
problems.
The kinematic equations are compact and have a clear physical interpretation. It can be
realized using two rotations about perpendicular axes.
The z parameter does not appear in (2.53a) and (2.53b). This means that in some applications the control problem can be decomposed into one of controlling only w and one
of controlling z.
A three dimensional parametrization will always involve singularities. A singularity
appears in the (w, z) parametrization when the body is upside down and consequently
w . The equilibrium (w1 , w2 , z) = (0, 0, 0) is nevertheless as far away from the
singularity as possible.
The (w, z) parametrization can easily be connected to other well known parametrizations
like the Eulerian angles, Euler-Rodrigues parameters and Angle-Axis parametrization.
2.5
Discussion
The previous sections have shown that there are many attitude parameterizations to choose
from. However, the (w, z) parametrization will be used in the rest of this report to describe the
attitude dynamics of an underactuated spacecraft. First of all this parametrization is minimal
and it is easy to avoid the singularity as long as we ensure that |w1 | and |w2 | does not approach
. Secondly, if the actuator failure is about the z-axis, the dynamics of the unactuated axis
can be decoupled from the rest of the system.
Chapter 3
The study of the dynamics of objects in interplanetary or interstellar space is called astrodynamics and has two major divisions. Celestial mechanics or orbit dynamics is concerned with
the motion of the center of mass of objects in space, whereas attitude dynamics is concerned
with the motion about the center of mass. Since the attitude dynamics is the main focus of this
report, only a brief review will be given on the celestial mechanics. For the interested reader,
Sellers (2000) is highly recommended as an introduction to astrodynamics. For more in-depth
information see Hughes (1986) and Wertz (1978, 1999). The work in this chapter is based on
these references.
3.1
Attitude dynamics
The first part of this chapter considers Newton-Euler equations of motion for rigid bodies, as
well as giving an overview of disturbance and control torques. Some of the equations found in
this chapter, together with the differential kinematic equations that were found in the foregoing
chapter, make up the system to be investigated in later chapters. Unless otherwise is stated, the
principal axes in the equations will coincide with the body reference system.
3.1.1
The angular motion of a spacecraft can be modelled as an ideal rigid body. However, most
spacecrafts have flexible parts like for instance antennas and solar panels. Also, internal effects
like fuel sloshing and thermal deformations are not accounted for using a rigid body model.
Nevertheless, for many problems the rigid body model is a good approximation, especially for
small spacecrafts.
Since only rotational motion will be considered throughout, the translational case will not be
taken into account at this stage. However, a detailed derivation of the equations of motion for
both cases is given in Appendix B. For the rotational case, when referred to the center of mass
and the body reference system, the well known equations for a rigid body can be written as
X
b
b
b
M ib
+ S(ib
)Mib
= =
i
(3.1)
i
where M is the inertia matrix for the rigid body, referred to the center of mass, = [x , y , z ]T
b = [ , , ]T is the angular velocity as exis the total torque acting on the body, and ib
1
2
3
16
plained in chapter 2. The torques i , acting on the individual mass elements in the body, are
due to both forces between individual mass elements and externally applied forces. Usually
the internal torques sum to zero and the resultant torque is simply the torques due to external
forces. The external torques e can be divided into two groups, called disturbance torques and
control torques. The first case is caused by environmental effects such as aerodynamic drag
and gravity gradient torque, while the latter is deliberately applied torques from devices such
as thrusters or magnetic coils. Both cases will be discussed in the following.
Assuming a diagonal inertia matrix, M = diag{m11 , m22 , m33 }, the dynamics in equation
(3.1) can easily be found to be given in component form as
m11 1 + (m33 m22 )2 3 = x
(3.2a)
(3.2b)
(3.2c)
dh
b
= e S(ib
)h
dt
(3.3)
b , is not
From this equation it can easily be seen that the angular momentum h, and hence ib
constant in the body frame, even when the external torque e is equal to zero. The resulting
b k h, that
motion is called nutation. Rotational motion without nutation only occurs when ib
is, only if the rotation is about a principle axis of the rigid body.
Remark 3.1.2. A spacecraft equipped with reaction or momentum wheels is not a rigid body
in the sense that they cause a redistribution of the angular momentum between the wheels and
the spacecraft body. The wheels do not change the total angular momentum of the spacecraft,
hence they can not be external torques.
However, in the case of using reduction or momentum wheels in the spacecraft body, the equations above can still be used with one minor modification. To encounter for the angular momentum of the wheels, we redefine the total angular momentum for the spacecraft, including
wheels, as
b
hb = Mib
+ hw
(3.4)
where the inertia matrix M includes the mass of the wheels and the vector hw = [h1 , h2 , h3 ]T
is the net angular momentum due to the rotation of the wheels relative to the body. Using a
similar procedure as when deriving (3.1) we get the following equation of motion
b
b
b
M ib
+ S(ib
)(Mib
+ hw ) =
dhw
dt
(3.5)
The quantity dhw /dt is the net torque applied to the wheels from the spacecraft body, so by
Newtons 3rd law of motion, -dhw /dt , [wx , wy , wz ]T is the torque applied to the spacecraft
body by the wheels. Writing (3.5) in component form in the body system, referred to the center
of mass, yields
m11 1 + (m33 m22 )2 3 + h3 2 h2 3 = x + wx
(3.6a)
(3.6b)
(3.6c)
17
Remark 3.1.3. A rigid body with one or more spinning wheels is commonly called a gyrostat.
An alternative representation of the multi-spin system described in (3.5) is derived in Hughes
(1986), in the case of using only one wheel. In Tsiotras et al. (2001) the representation is
expanded to include any number of wheels, which makes it quite practical to use. The rotational
equations of motion for a N -wheel gyrostat can be written as
h b = J1 (hb Aha ) hb
(3.7a)
(3.7b)
h a = a
or equally
b
b
b
J ib
= Ah a S(ib
)(Jib
+ Aha )
ha = a
(3.8a)
(3.8b)
where ha is the N 1 vector of the axial angular momenta of the wheels, is the 3 1 vector
of the total torque acting on the body, not including wheel torques, a is the N 1 vector of the
internal axial torques applied by the platform to the wheels, and A is the 3 N matrix whose
columns contain the axial unit vectors of the N momentum exchange wheels. The vector hb is
the total angular momentum for the spacecraft in the body frame, given by
b
+ Aha
hb = Jib
(3.9)
(3.10)
where M is the moment of inertia matrix for the spacecraft, including wheels, and the matrix
Ms = diag{Ms1 , Ms1 , ..., MsN } contains the axial moments of inertia of the wheels on the
diagonal. The axial angular momenta of the wheels can be written in terms of the body angular
velocity and the wheels axial angular velocities relative to the body, s , as
b
+ Ms s
ha = Ms AT ib
(3.11)
Note that s = [s1 , s2 , ..., sN ]T is a N 1 vector, and that these relative angular velocities are those that would for instance be measured by tachometers fixed to the platform.
We denote the resultant axial angular velocity of the wheels, relative to the inertial frame as
c = [c1 , c2 , ..., cN ]T . Using this notation we can write (3.11) as
ha = Ms c
(3.12)
b . Note that because typically the wheels spin at a much higher speed
where c = s + AT ib
b and we have that .
than the spacecraft itself, s ib
c
s
3.1.2
Disturbance torques
18
Internal torque
source
Mechanical and electrical devices
Fuel sloshing
General mass movement
Flexible appendages
The
where v is the translational velocity of the surface element relative to the incident stream, and v
is the unit vector in the same direction. The coefficients and CD are the atmospheric density
and the drag coefficient, respectively. Performing a summation over all such areas gives the
simplified expression for the aerodynamic torque, that is
Z
aero = rs dfaero
(3.14)
where rs is the position vector from the center of mass of the body to the surface element
dA. Usually this integral is not amenable to simple solutions for a surface associated with a
complex structure. A commonly used alternative is to represent the spacecraft as a collection
19
of simple geometrical elements. The torque about the center of mass of the spacecraft is then
the vector sum of the individual torques for each of these geometrical simplifications, that is
X
aero =
ri Faero,i
(3.15)
i
The vector ri is in this case the vector distance from the center of mass of the spacecraft to
the center of pressure of the the specific geometric shape and Faero,i is the force acting on the
component. Aerodynamic forces for some simple geometric figures are listed in Table 3.2.
Faero,i
Geometric figures
12 v 2 CD R2 v
Sphere of radius R
Plane with surface area A and
)
12 v 2 CD A(
nv
v
3
[
o3 (M
o3 )]
Rc3
(3.16)
Explanation
Rc
M
3
o
Remark 3.1.5. The expression in (3.16) is rather simplified due to the four assumptions
a) Only one celestial primary is considered. In most cases the primary will be the earth.
b) The primary possesses a spherically symmetrical mass distribution.
c) The spacecraft is small compared to its distance from the mass center of the primary.
d) The spacecraft consists of a single body.
In most spacecraft situations these are realistic assumptions.
20
Remark 3.1.6. There is no gravitational torque about the local vertical, that is
3 = 0
g o
As can be seen from (3.16), the vector equation is given in the local orbiting frame o. However,
in most cases it would be useful to represent the torque in the body fixed reference frame. By
letting the rotation matrix Rbo represent the rotation matrix from the body frame to the orbit
frame, we get the following expression for the gravitational torque, as referred to the body
frame
i
3 h
gb = 3 rb3 Mrb3
(3.17)
Rc
where rb3 = [r13 , r23 , r33 ]T is the third column in the rotation matrix Rbo . Independent of the
attitude parametrization we use to represent the rotation matrix, and assuming a diagonal inertia
matrix M = diag{m11 , m22 , m33 }, the gravitational torque in (3.17) simplifies to
(3.18)
1
= P cos (1 fs )s + 2(fs cos + fd )
n dA
3
(3.19)
where P is the mean momentum flux ( 4.67 106 N m2 at the earth), and fs and fd are the
coefficients of specular and diffuse reflection, respectively. The angle of incidence radiation is
21
The vector ri is in this case the vector distance from the center of mass of the spacecraft to
the center of pressure of the the specific geometric shape and Fsolar,i is the force acting on the
component. Solar radiation forces for some simple geometric figures are listed in Table 3.3.
Geometric figures
Sphere of radius R
Plane with surface area A
:
and normal unit vector n
)
= cos1 (s n
Fsolar,i
P (4R2 ) 14 +
fd
9
h
P A cos (1 fs )s + 2 fs cos +
fd
3
i
Table 3.3: Solar radiation force for some simple geometric figures
> 0,
Remark 3.1.7. The integral in (3.20) is taken over the spacecraft surface for which s n
that is, the surface exposed to the incoming radiation.
Magnetic torque
The residual magnetic field generated by a spacecraft interacts with the local field from the
earth and thereby exerts a couple on the body. The effect of the magnetic torque is altitude
dependent and strongest at low altitudes. The instantaneous magnetic disturbance torque mag
due to the spacecraft effective magnetic moment m is given by
mag = m B
(3.22)
where B is the geocentric magnetic flux density and m is the sum of the individual magnetic
moments caused by permanent and induced magnetism and spacecraft generated current loops.
Internal torques
Internal torques are defined as torques exerted on the spacecraft body by such internal moving
parts as reaction and momentum wheels, fuels or liquids inside partially filled containers or
flexible constructions. The reaction and momentum wheels are usually not to be considered
22
as disturbances, but are included here for definition. In a highly hypothetical scenario, the internal torques would also exist if the spacecraft was to be removed entirely from all external
influences in space.
As mentioned earlier the external torques will change the angular momentum of the spacecraft, while the internal torques only will affect the distribution of momentum between the
moving parts. However, even though the angular momentum remains constant in the absence
of external torques, the kinetic energy for the body could change and in most cases would the
redistribution of the angular momentum between the moving parts lead to a change in the dynamic characteristics.
In general the internal disturbance torques are undesired, hence must be encountered for using
external torques. Also, when designing a spacecraft the effects of internal disturbances could
be tried encountered for in the sense of placing the different devices in a clever manner.
3.1.3
Deliberately applied torques can be generated using various approaches, and commonly as a
combination of several different actuators. The types of actuators that can be used to control
the orientation of a spacecraft can usually be divided into three categories. These are thrusters,
momentum exchange devices and magnetic actuators. The actuator can also be categorized to
be either active or passive. Some control torques, and their properties, are given in Table 3.4.
A short explanation of some of the different designs is also given subsequently.
An important part of the design of a spacecraft is to decide the size and properties of the actuators since it is crucial to have enough control to overcome the disturbances discussed above,
as well as getting the spacecraft into its desired configuration. However, this topic will not be
discussed any further in this report, and the reader is referred to Wertz (1999) for details.
In later chapters the system will only have two available torques, hence making the system
underactuated. More details about this matter will be given shortly.
Gravity gradient
As mentioned earlier any nonsymmetrical object in orbit is subject to a gravitational torque.
Although this effect often is considered as a disturbance, it can also be utilized as a passive
control torque. This is commonly done using a gravitational boom. However, in the sense of
stabilizing a spacecraft, the body will only be in a stable equilibrium if its axes of minimum
inertia is aligned with the local vertical. Due to low accuracy and the need for damping makes
the use of other control torques necessary as well. In the Danish satellite rsted (Wisniewski
and Blanke, 1999) the gravity gradient was utilized together with magnetic actuators to archive
complete three-axis stabilization.
Solar radiation
In the previous section on disturbance torques, it was explained how the solar radiation causes
a passive torque on an exposed spacecraft. This can be utilized with controllable panels or solar
sails. The torques achieved are nevertheless low.
Type
23
Advantages
Disadvantages
External torque
Thrusters
Insensitive to altitude
Suit any orbit
Create torque about any axis
Gravity
gradient
Magnetic
No fuel required
Control torque magnitude
Solar radiation
No fuel required
Internal torque
No fuel required
Can store momentum
Control torque magnitude
Reaction wheels
Continuous
Fine-pointing capability
Provide momentum bias
Suitable for three-axis control
Provide momentum bias
Momentum wheels
Control moment
gyroscope
Requires fuel
On-Off operation only
Minimum impulse
Exhaust plume contaminants
No torque about the local vertical
Low accuracy
Low torque, altitude sensitive
Libration mode needs damping
No torque about local field direction
Altitude and latitude sensitive
Can cause magnetic interference
Needs controllable panels
Very low torque
Complicated
Potential reliability problems
24
When the spacecraft is exposed to a perturbation or it is accelerated, so are the wheels mounted
inside, and the result is generated torques from the wheels in the opposite direction, that is
b
Mrw rw = M ib
(3.23)
As seen from (3.23) the wheels have to be accelerated in order to create a torque. Neglecting
friction effects, the torque applied to a set of reaction wheels can be written as (Kaplan, 1976)
bw =
dh
b
+ ib
h
dt
(3.24)
where h = Mrw rw , [h1 , h2 , h3 ]T is the total angular momentum of the wheels, and bw
denote the torque applied to the wheels by the spacecraft body. By Newtons 3rd law, the
torque employed to the spacecraft body from the wheels is therefor given by wb = bw . By
defining -dh/dt , [wx , wy , wz ]T we get the following equation
wb
wx h3 2 + h2 3
= wy h1 3 + h3 1
wz h2 1 + h1 2
(3.25)
This is consistent with the results derived earlier, as equation (3.6) can be obtained by substituting the torque in (3.25), in addition to some external torque, for the torque in (3.1).
Remark 3.1.8. When the wheels reach their maximum speed, the storage of momentum will
be at its maximum as well. Therefor, it will be necessary to restore the nominal values, using
external torques. This process is known as momentum dumping.
Momentum wheels
Momentum wheels are very similar to reaction wheels, but in contrast to the reaction wheels
they are designed to operate at biased, or nonzero, momentum. As for the reaction wheels they
need to be used in conjunction with other external actuators.
Magnetic actuators
An active magnetic actuator takes advantage of the natural torque caused by the magnetic field
surrounding the earth. The magnetic disturbance that was described earlier is exploited by installing magnetic coils or torquers inside the spacecraft. The principle can best be explained
with the well known compass needle that attempts to align itself with the local field.
Magnetic actuators offer a cheap, reliable and robust way to control a spacecrafts attitude.
Unfortunately they are only effective for low earth orbit (LEO) spacecrafts and requires a complex model of the geomagnetic field surrounding the earth.
Electromagnets may be used to provide an external torque, which can be modelled as
mag = m B = niA (
c B)
(3.26)
where m is the magnetic dipole moment generated by the coils in the magnet. The other
parameters are listed in the following table.
3.2
25
Symbol
Explanation
c
i
n
A
Celestial mechanics
As mentioned at the very beginning of this chapter, the study of astrodynamics can be divided
into celestial mechanics and attitude dynamics. Sofar we have only considered the latter, in
the sense of giving an overview of different topics considering the motion about the center of
mass. Only a brief discussion on celestial mechanics will be given at this point. Even though
the effects of the celestial mechanics are assumed negligible throughout this report, the motion
of the center of mass of objects in space is highly relevant, and for a real-life system to be
revealing, these effects should be taken into account when designing the control systems.
In general, the theory of celestial mechanics underlies all the dynamical aspects of the orbital
motion of a spacecraft. Different approaches exist to provide the necessary equations needed
to calculate orbital elements from position and velocity, and to predict the future position and
velocity of the spacecraft. In the case of circular orbits and spherical earth it is relatively easy
to determine these relations by the use of gradients, combined with rotation matrices. In a
more general case the use of classical orbit elements, Keplerian orbit elements, is adequate.
Combined with perturbation theory this provides an excellent reference. Since the equations
concerning perturbations are rather extensive, they are not considered here. For further details
about this subject, the reader should refer to any textbook about spacecraft geodesy.
26
Chapter 4
Sofar the main focus has been on different approaches to model the kinematic and dynamic
differential equations for describing the configuration of a rigid body. The purpose of this
chapter is to choose an adequate model based on these equations, and describe some of its most
important properties. In our special case, the model is considered to be a satellite. Furthermore,
the satellite is assumed to be underactuated, which can be immediately design related or due
to for instance actuator failures. Throughout the rest of this report, the third principal axis in
the satellite body system contributes as the underactuated part in the sense that no torques can
be applied directly about this axis. As will be shown, many challenging control problems arise
when doing attitude stabilization due to this property.
4.1
Satellite model
To simplify the analysis it is important to choose a reasonable model that is not too complicated.
Therefor, because of its useful properties, the (w, z) parametrization presented in chapter 2 is
chosen to characterize the kinematics, while the dynamic equations are based on the NewtonEuler representation in chapter 3. In the following the model to be used is derived.
A preliminary and rather complex model can be written as1
= J1 J1 Ah a J1 S()(J + Aha )
h a = a
z = 3 1 w2 + 2 w1
w 1
w 2
1
= 3 w2 + 2 w1 w2 + (1 + w12 w22 )
2
2
= 3 w1 + 1 w1 w2 + (1 + w22 w12 )
2
(4.1a)
(4.1b)
(4.1c)
(4.1d)
(4.1e)
QQ1 = Q1 Q = I
28
P
P
b = [ , , ]T is written as for simplicity, and =
where ib
control + disturbance .
1
2
3
The model arises immediately from (3.8) and (2.53), and both control and disturbance torques
were discussed in chapter 3. As mentioned earlier, it is important to emphasize that torques
related to the wheels should not be included in since these are already accounted for.
An interesting model to control and simulate would be a satellite with wheels and thrusters,
and also including the gravity gradient as a disturbance. The thrusters could then be used to
implement the torques for large and fast (slew) maneuvers during attitude initialization and target acquisition phases, while providing momentum management when necessary. The wheels
could be used to supply reference torques in the sense of overcoming the disturbances, and also
for storing and releasing kinetic energy. A potential model could have been obtained for this
scenario from (4.1), and then assuming no torques except from those mentioned above.
However, even though this model is somewhat simplified compared to a real-life scenario,
it is still considered too rigorous for our purpose. For that reason, different assumptions will
be regarded subsequently to obtain even further simplifications. We also want the model to be
associated with an underactuated satellite as mentioned in the introduction. Taking the complexity of the present model in (4.1) into account, a simplified model can be derived as
1 =
2 =
3 =
w 1 =
w 2 =
z =
(m22 m33 )2 3
x
+
m11
m11
y
(m33 m11 )3 1
+
m22
m22
(m11 m22 )1 2
z
+
m33
m33
1
3 w2 + 2 w1 w2 + (1 + w12 w22 )
2
2
3 w1 + 1 w1 w2 + (1 + w22 w12 )
2
3 1 w2 + 2 w1
(4.2a)
(4.2b)
(4.2c)
(4.2d)
(4.2e)
(4.2f)
Consider now the case when there are no available torques about the third principal axis in
the body system, or equally, the 3 state in the model can not be altered directly through the
control input. A trivial redefinition of the control inputs finally yields the model
1 = 1
2 = 2
3 = 1 2
1
(1 + w12 w22 )
2
2
w 2 = 3 w1 + 1 w1 w2 + (1 + w22 w12 )
2
z = 3 1 w2 + 2 w1
w 1 = 3 w2 + 2 w1 w2 +
29
The assumptions needed for deriving this simplified model from (4.1) are stated as follows
a) All values associated with reaction or momentum wheels are set equal to zero,
hence (4.1a) and (4.1b) are reduced to (3.1).
b) The inertia matrix for the satellite is diagonal, M = diag{m11 , m22 , m33 }.
c) There are no torques about the third principal axis in the body system.
d) The available control torques are provided by pairs of thrusters, and they can
implement angular velocity about the actuated axes directly.
e) The control torques 1 and 2 in the model arise from the transformation
1 =
2 =
m22 m33
2 3 +
m11
m33 m11
1 3 +
m22
1
x
m11
1
y
m22
m11 m22
m33
6= 0.
Definition 4.1 (Axi-symmetric rigid body). When = 0 3 = 0, and the rigid body is
axi-symmetric.
Remark 4.1.1. The variable gives a measure of the body asymmetry about the underactuated
axis. In case the spacecraft is nearly symmetric about this axis, || 1. Without additional
assumptions, the model is uncontrollable at the origin when = 0. In fact, it is not even
accessible in this case. However, a real spacecraft can never be completely axi-symmetric,
implying that even if is very small there will be a slow rotation about the symmetric axis.
Several underactuated vehicles can be described by the general model (Pettersen, 1996)
(4.5a)
(4.5b)
30
The spacecraft model in Table 4.1 can be written in the form (4.5) by using
1
2
2
w1 w 2
w2
2 (1 + w1 w2 )
T
1
2
2
w1 w2
J() =
2 (1 + w2 w1 ) w1 , = [w1 , w2 , z]
w2
w1
1
C() = S()M, D() = 0, g() = 0, = = [1 , 2 , 3 ]T , = [1 , 2 ]T
(4.6)
(4.7)
Remark 4.1.2. The fundamental difference between the underactuated spacecraft model and
the general model (4.5), is the lack of a damping term, i.e D() = 0.
Remark 4.1.3. A spacecraft with a gravity gradient will experience gravitational torques,
hence g() 6= 0.
4.2
Controllability
Assuming that we have a smooth nonlinear system x = f (x, u), it can generally be converted
into an affine system quite easily, that is, into a system of the form
x = f (x) +
m
X
qi (x)ui
(4.8)
i=1
(4.9)
(4.10)
the system in (4.5), or equally, the system in Table 4.1, may be written as
= f (, ) + q1 1 + q2 2
(4.11)
Sussmann and Jurdjevic (1972) demonstrated that a necessary and sufficient condition for accessibility of these systems is that the Lie algebra generated by the system have full rank, the
so-called Lie algebra rank condition (LARC).
Lemma 4.1. The nonsymmetric underactuated satellite model (4.11) is locally strongly accessible from every (, ) R6 when 6= 0.
Proof. The accessibility distribution C , {q1 , q2 , [f, q1 ], [f, q2 ], [q2 , [f, q1 ]], [f, [[q1 , f ], q2 ]]}
R66 spans a six-dimensional space for every (, ) R6 , since the determinant of C can be
found to be 41 (1+w12 +w22 )2 2 6= 0, and consequently rank C = 6 for every (, ) R6 .
Remark 4.2.1. For a general nonlinear system, if in addition to LARC, f in (4.8) is identically
zero, there is a theorem saying that the system is controllable.
It should also be noted that if a linearized system is controllable nonlinear system is accessible. However, if a linearized system is uncontrollable ; nonlinear system is unaccessible.
Proposition 4.1. The nonsymmetric underactuated satellite model (4.11) is small time locally
controllable (STLC) from any equilibrium.
4.3 Stabilizability
31
Proof. From the proof of Lemma 4.1 it is seen that the system satisfies the LARC conditions,
and that any brackets with degree greater than 4 can be expressed as a linear combination of
lower order brackets. We further more note from the definitions in Appendix A.4 that the
degree of bad brackets must be odd. The bad bracket of degree 1 is f , which vanishes at
any equilibrium. The bad brackets of degree 3 are [g1 , [f, g1 ]] and [g2 , [f, g2 ]] which are
identically zero vector fields. Consequently, the nonsymmetric underactuated satellite model
(4.11) satisfies the Sussmann sufficient condition for STLC (Theorem A.3) with = 1, at every
equilibrium.
4.3
Stabilizability
In the following some control properties for the underactuated satellite model are discussed.
Proposition 4.2. There exists no continuous nor discontinuous time-invariant pure-state feedback that renders the underactuated satellite system in Table 4.1 asymptotically stable about
the origin.
Proof. (Based on Proposition 2.3 in Pettersen (1996)) Consider the mapping f (, , ) : R3
R3 R2 R6 defined by
1
1
M C() + M
0
(4.12)
f (, , ) =
J()
It can easily be verified that this mapping is equivalent to (4.11). To prove Proposition 4.2 we
must show that f (, , ) is not locally surjective. Consider a point in R6 of the form
1
M1 2
=
(4.13)
031
where (1 , 2 , ) R, arbitrary and non-zero. Points on the form exist in any neighborhood
of 0 in R6 . For f (, , ) to be surjective then for any R6 there exists an R6 R2 for
which f () = . As J() has full rank, the equation f (, , ) = implies that = = 0.
Thus it implies
a
1
b = 2
(4.14)
0
Clearly, (4.14) has no solution since 6= 0. From Theorem A.4 it then follows that there exists
no continuous pure-state feedback that renders the origin asymptotically stable.
By Theorem A.5, and the fact that the satellite model (4.11) cannot be asymptotically stabilized by a pure-state continuous feedback law, it can neither be asymptotically stabilized by
means of a discontinuous pure-state feedback law.
Remark 4.3.1. In Pettersen (1996) a more general result was derived. It was in fact shown that
there exists no continuous nor discontinuous pure-state feedback law that makes the origin of
(4.5) asymptotically stable if gu () has a zero element. The vector gu () is the elements of
g() corresponding to the underactuated dynamics.
32
Proposition 4.3. The nonsymmetric underactuated satellite model (4.11) is locally asymptotically stabilizable in small time by means of an almost smooth periodic time-varying feedback
law.
Proof. By Corollary A.2, as dim [(, )] > 4 and the vector fields f, q1 , q2 in (4.11) are analytic, this follows from the proof of Proposition 4.1.
4.4
Some important insight can be gained about the system in Table 4.1 by considering the case
when (w1 , w2 ) (0, 0), that is, the system simplifies to
1 = a
(4.15a)
2 = b
(4.15b)
3 = 1 2
1
w 1 =
1
2
1
w 2 =
2
2
z = 3
(4.15c)
(4.15d)
(4.15e)
(4.15f)
First of all we see from (4.15f) and (4.15c) that we have no direct control of z and 3 . However, z can be manipulated indirectly through the term 1 2 in (4.15c). If the spacecraft is
axi-symmetric, i.e. = 0, we have no control at all.
Assume that it is possible to manipulate the angular velocities directly. Consider the time
varying, periodic controllers
1 = 3 sin t,
2 = sin t
(4.16)
(4.17)
3 =
1
T
Z
0
1
3 sin2 tdt = 3
2
(4.18)
with T = . This means that it in average is possible to control 3 by using time-varying periodic controllers. This is the basic and intuitive idea behind many controllers for underactuated
and nonholonomic systems. Several other control strategies exist, but in order to circumvent
Brocketts necessary condition (Brockett, 1985) they must be time-varying or discontinuous.
See for instance Kolmanovsky and McClamroch (1995) for a comparison of different control
strategies for nonholonomic systems.
4.5
Summary
In this chapter the nonsymmetric underactuated satellite model in Table 4.1 was derived. Several properties of the system were then established, hereby the fact that any three-axis stabilizing controller for the system has to be time-varying (periodic). This fact will be utilized in
later chapters when proposing and discussing a potential control strategy.
Chapter 5
As mentioned in the introduction, the topic of this report is to choose a practical model, investigate some of its properties, and then suggest a control strategy to obtain attitude stabilization
about the satellites three principal axes. The system to be studied has three degrees of freedom
but only two available actuators, which makes it an underactuated system. From a theoretical
point of view the stabilization of an underactuated system is a challenging problem. Many interesting control theoretical questions have to be answered and the problem is highly nonlinear.
The angular velocity stabilization problem for the case of one or two actuator failures is well
understood and can be considered solved, although some work still remains for momentum
exchange actuators. On the other hand, despite extensive attempts, the complete attitude stabilization problem is not completely understood in the underactuated case. Consequently, no
globally stabilizing control law has so far been reported in the literature, as far as the author
knows.
In the following a novel strategy will be proposed, the final goal being complete three-axis
stabilization. Unlike most previous work however, a cascaded approach will be exploited.
The first part of this chapter considers some theory of stability for cascaded systems. Then,
in the following section, the theory is utilized when discussing the potential control scheme. A
globally uniformly asymptotically stabilized (GUAS) closed-loop system is desired.
5.1
(5.1a)
x 2 = f2 (t, x2 , u)
(5.1b)
34
x 1 = f1 (t, x1 , 0)
(5.2)
remains GUAS when it is perturbed by the output of another GUAS system of the form (5.1b),
that is, sufficient conditions to ensure GUAS for the system (5.1).
Consider now the nonlinear time-varying system in similar form as (5.1)
1 :
(5.3)
2 :
x 2 = f2 (t, x2 )
(5.4)
where the second term in (5.3) can be interpreted as a disturbance which must be driven to zero
without destabilizing the x1 -subsystem. The following theory is taken from Panteley and Loria
(2001)
Lemma 5.1. If the systems 01 and 2 are GUAS and the solutions of 1 and 2 are globally
uniformly bounded then the complete system 1 2 is GUAS.
The question that remains is whether or not the solutions of 1 and 2 are globally uniformly bounded. Depending on different cases according to the growth rates of f1 (t, x1 ) and
g(t, x1 , x2 ) this will be established subsequently.
Consider the following assumptions
(A1) The subsystem 2 is GUAS.
(A2) The subsystem 01 is GUAS and there exists a known C 1 Lyapunov function V(5.2) (t, x1 ) ,
V (t, x1 ), 1 , 2 K , a continuous nondecreasing function 4 , and a positive semidefinite function W (x1 ) such that
1 (kx1 k) V (t, x1 ) 2 (kx1 k)
V (t, x1 ) W (x1 )
V
x1
4 (kx1 k)
(A3) For each fixed x2 and t there exists a continuous function : R+ 7 R+ with lim s =
0 such that g(t, x1 , x2 ) in (5.3) satisfies
V
x1 g(t, x1 , x2 )
(kx1 k)kW (x1 )k
35
Z
a
ds
=
6 (s)
with 1 , 4 as in (A2).
(A5) For each r > 0 there exist constants , > 0 such that for all t 0 and all kx2 k < r
V
x1 g(t, x1 , x2 )
W (x1 ) kx1 k
where W (x1 ) and V (t, x1 ) are defined as in (A2).
(A6) There exists a function K such that for all t0 0 the solutions x2 (t) of 2 satisfies
Z
kx2 (t, t0 , x2 (t0 ))k dt (kx2 (t0 )k)
t0
Based on the assumptions above, some growth theorems can be stated. For proofs, the reader
should refer to Panteley and Loria (2001).
Theorem 5.1. If (A1), (A2) and (A3) hold, then the cascade 1 2 is GUAS.
Theorem 5.2. If (A1), (A2), (A4) and (A5) hold, then the cascade 1 2 is GUAS.
Theorem 5.3. If (A1), (A2), (A4) and (A6) hold, then the cascade 1 2 is GUAS.
Remark 5.1.1. The growth theorems can often be useful under certain circumstances. For each
fixed x2 , uniformly in t, these are proposed in Panteley and Loria (2001) to be
Theorem 5.1 : The function f1 (t, x1 ) grows faster than g(t, x1 , x2 ) as kx1 k
Theorem 5.2 : The function f1 (t, x1 ) majorizes g(t, x1 , x2 ) as kx1 k
Theorem 5.3 : The function f1 (t, x1 ) grows slower than g(t, x1 , x2 ) as functions of x1
Corollary 5.1. (See Lefeber (2000)) If (A2) is satisfied with
1 (kx1 k) = c1 kx1 k2
4 (kx1 k) = c4 kx1 k
and continuous functions k1 , k2 : R+ 7 R exist such that
kg(t, x1 , x2 )k k1 (kx2 k) + k2 (kx2 k)kx1 k
and (A1), (A6) is satisfied, the the cascaded system 1 2 is GUAS.
(5.5)
36
In addition to the growth theorems there exists an integrability criterion (Loria, 2001) stated as
Theorem 5.4. Assume that 01 i GUAS and suppose that the trajectories of 2 are uniformly
globally bounded. If moreover, (A6) holds, and (A7), (A8) below are satisfied, then the solutions
of the system 1 , 2 are uniformly globally bounded. If furthermore, the system 2 is GUAS,
then so is the origin of the cascade 1 2 .
(A7) There exist constants c1 , c2 , > 0 and a Lyapunov function function V (t, x1 ) for 01
such that V : R+ Rn
7 R+ is positive definite and radially unbounded, which satisfies
V
x1
kx1 k c1 V (t, x1 ) kx1 k
V
x1
c2 kx1 k
(A8) There exist two continuous functions 1 , 2 : R+ 7 R+ such that g(t, x1 , x2 ) satisfies
kg(t, x1 , x2 )k 1 (kx2 k) + 2 (kx2 k)kx1 k
For clarity of exposition, sofar it has been assumed that the interconnection term in (5.1b) can
be factorized as g(t, x1 , x2 )x2 ; in some cases, this may be unnecessarily restrictive. With an
abuse of notation, let us redefine g(t, x1 , x2 )x2 , g(t, x1 , x2 ), i.e. consider a cascaded system
of the form
1 :
x 1 = f1 (t, x1 ) + g(t, x1 , x2 )
(5.6a)
2 :
x 2 = f2 (t, x2 )
(5.6b)
(5.7)
where 50 , 500 , 0 and 00 are nondecreasing functions such that 00 (s) 0 as s 0 and
500 (kx1 k) c1 50 (kx1 k) for all kx1 k c.
Let then V2 (t, x2 ) be a Lyapunov function for 2 , and consider the following corollary, which
under the assumptions of Theorems 5.2 and 5.3, establish GUAS of the cascade 1 , 2 .
Corollary 5.2. Consider the cascaded system 1 , 2 satisfying
(5.7) and suppose that (A2),
1
1
0
(A1) and (A4) hold with 6 (V1 ) = 4 1 (V1 ) 5 1 (V1 ) , where we in (A2) use a Lyapunov function V1 (t, x1 , x2 ) , V1 . Assume further that 500 (kx1 k) is majorised by the function
W (x1 )
0
4 (kx1 k) and the function (kx2 k) satisfies either of the following
0 (kx2 k) %(V2 (t, x2 ))U (x2 )
(5.8)
37
5.2
Based on the theory concerning stability in cascades, and well known methods using Lyapunov
design and backstepping, a novel idea of a control strategy will in the following be discussed
with the goal of achieving GUAS for the underactuated satellite system. The satellite model is
repeated here for clarity, that is
1 = 1
(5.10a)
2 = 2
(5.10b)
3 = 1 2
(5.10c)
1
w 1 = 3 w2 + 2 w1 w2 + (1 + w12 w22 )
2
2
w 2 = 3 w1 + 1 w1 w2 + (1 + w22 w12 )
2
z = 3 1 w2 + 2 w1
(5.10d)
(5.10e)
(5.10f)
A desired structure, at least in the general case, is shown in Figure 5.2. Usually a model is
not given in this form, hence various synthetic inputs and coordinate transformations have to
be utilized. This often contributes as a challenging task, and in many cases this is the most
durable effort when dealing with systems of this nature. Nevertheless, if we are able to transform the system into such form, the theory from the previous section can be applied. This can
in many cases my easier than constructing Lyapunov functions for the complete system, which
in turn can be extremely difficult. In some sense, we can think of working with this structure
as a kind a separation principle. This will be explained shortly.
From the general block diagram in Figure 5.2 it is evident that the 2 subsystem cannot be
k be a function of the states in the
k1 .
a function of the states in the 1 subsystem, nor can
This is inherent from the nature of cascaded systems. On the other hand, the output from the
2 block works as a virtual input or disturbance to the 1 block. Furthermore, the 2 system
2 , which clearly makes up an internal cascade by itself. The
consists of the subsystems 3
k . If we
same observation can be done recursively, until we end up with the first single block,
are able to split the system into such blocks, we can study each block separately, which gives
rise to the separation principle as introduced above. Even though this is not completely true,
in the sense that a subsystem is coupled to the preceding subsystems through the connection
term, it is still a very powerful tool.
An informal outline of the procedure we are suggesting is given as follows;
38
i) Based on the original model in (5.10) we will try to transform it into a similar structure
as in Figure 5.2, where we want as many subsystems as possible.
ii) After doing necessary changes in coordinates and/or transformations we want z to be
controlled by 3 . We then use a kind of backstepping approach where we define 3d .
iii) We want w1 , w2 and 3 to be controlled through 1 and 2 . Clearly, z will be controlled
indirectly by these states as well. We will, as in the case of 3 , use a kind of backstepping
approach where we define 1d and 2d . From Proposition 4.2 we recall that a pure-state
feedback is not sufficient in obtaining asymptotic stability for the underactuated satellite.
We will therefor include some time-varying functions in 1d and 2d .
iv) Based on the theory on stability in cascades and Lyapunov functions, we will check
wether the closed-loop system is GUAS or not with our choice of synthetic inputs, and
consequently the final controller.
The rest of this chapter will consider each step as we try to characterize the promising approach
in achieving an asymptotically stabilizing controller, which works globally, uniformly in time.
Based on the discussion above, the initial step would be to split our system into as many
subsystems as possible. By looking at (5.10), it can easily be seen that the system is already
in a cascaded form, where (5.10a)-(5.10b) contribute as 2 and (5.10c)-(5.10f) make up the
subsystem 1 . Nevertheless, it would be highly desired to obtain further separations, in sense
of Figure 5.2. Numerous attempts, and many hours work, was done in trying to achieve this
goal, which unfortunately turned out to be a very difficult task, and most likely it is not even
possible. The reasons for this have to do with the nature of the highly coupled and nonlinear
differential equations, as well as our overall design strategy. This will be clearer after reading
the next paragraphs.
We again turn our attention to (5.10). As stated above, we want z to be controlled through
3 . This can be done by introducing the following change of coordinates
3 = 3 3d
(5.11)
where 3d is the desired value of 3 . At this stage however, we only define the function
3d , (z), and consequently we get a new system equation, in place of (5.10c), that is
3 = 1 2
3 = 1 2 0 (z)z
(5.12)
0
where we used the notation (z)
z , (z). Similar notation will be used throughout. Clearly,
by introducing
3 we also get (z) in both (5.10d) and (5.10e). Actually, (z) is included in
every system equation except for (5.10a) and (5.10b). As mentioned earlier a subsystem can
not be a function of any states in any preceding subsystems. We were not able to obtain this
property for more than two subsystems, and consequently we were unfortunately not able to
39
split up the system any further. Accepting this fact, we now rewrite the system in (5.10) as
1 = 1
(5.13a)
2 = 2
3 = 1 2 0 ( +
3 1 w2 + 2 w1 )
1
w 1 = ( +
3 ) w2 + 2 w1 w2 + (1 + w12 w22 )
2
2
w 2 = ( +
3 ) w1 + 1 w1 w2 + (1 + w22 w12 )
2
z = +
3 1 w2 + 2 w1
(5.13b)
(5.13c)
(5.13d)
(5.13e)
(5.13f)
where we used (5.12) and we dropped the argument in for simplicity. This gives us the two
(temporary) subsystems
e1
e2
(5.14)
: z 2 = f2 (t, z2 , u)
(5.15)
( +
3) 0
( +
3 ) w2
,
f1 (t, z1 ) =
( +
3 ) w1
+
3
1
2
g(t, z1 , z2 ) =
+ 0 w2
1 + w12 w22
w1 w 2
w2
f2 (t, z2 , u) = 1
2
(5.16)
0 w1
w1 w2
2
2
1 + w 2 w1
w1
(5.17)
1
2 1
1
2 2
1
2
e 1 and
e 2 GUAS, while
The direct approach would here be to find a control u that renders
still satisfying the conditions discussed earlier. However, we first introduce some synthetic
e 1 alone, when neglecting the connection term,
inputs such that we can conclude GUAS for
i.e. z2 0. The synthetic inputs, together with (z), are to be discussed subsequently, so at
this point we only define the coordinate changes and desired values as
1 = 1 1d ,
1d , 1 (t,
3 , w1 , w2 )
(5.18)
2 = 2 2d ,
2d , 2 (t,
3 , w1 , w 2 )
(5.19)
e 1 and
e 2 we get the final cascaded system
After doing necessary manipulations on
1
(5.20)
: x 2 = f2 (t, x2 , u)
(5.21)
40
1 2 0 ( +
3 1 w2 + 2 w1 )
( +
3 ) w2 + 2 w1 w2 + 21 1 + w12 w22
f1 (t, x1 ) =
,
2
2
2
( +
3 ) w1 + 1 w1 w2 + 2 1 + w2 w1
+
3 1 w2 + 2 w1
"
1
f2 (t, x2 , u) =
2
d1
dt
d2
dt
(5.22)
2 + 0 w2 + 2
2
1
2
2
2 1 + w 1 w2
1
g(t, x1 , x2 ) =
w1 w 2
w2
0 w1 + 1
w1 w2
2
2
1 + w 2 w1
w1
1
1
2
1
2
(5.23)
where we dropped the arguments of , 1 and 2 for simplicity. Also note that
i
i
di
i
i
3 +
w 1 +
w 2 ,
=
+
dt
t
3
w1
w2
i = 1, 2
(5.24)
5.3
Control design
As stated above, in this section we will try do give an outline of how to find the synthetic inputs,
and consequently the final control, such that the underactuated satellite system in (5.20)-(5.21)
is rendered GUAS.
We first start by looking at 2 . Obviously the final control will be of the form
1 =
2 =
d1
+ 1 (
1 )
dt
d2
+ 2 (
2 )
dt
(5.25)
(5.26)
i
where we defined d
dt in (5.24). The first term in both (5.25) and (5.26) cancels out the dynamics of 1 and 2 in 2 . This has to be done in order for the system to be a valid cascade,
as in (5.20)-(5.21). Accepting this fact, it is trivial to show that by making good choices for
1 (
1 ) and 2 (
2 ) the solutions of 2 will converge to zero in exponential time, that is, 2
will be rendered GES, and hence also GUAS. This can for instance be the case if we choose
i (
i ) = ki
i , i = 1, 2, and use a quadratic Lyapunov function to prove stability. Without
any additional assumptions we already can conclude that the subsystem 2 will not cause us
any trouble in the further design.
The rest of the design can be split into to parts. We first start by looking at 1 , when neglecting the connection term. We can do this based on the assumption that 2 is already rendered
41
GUAS, which was in fact shown above to be the case. For clarity, we define 01 , 1 : x2 0,
that is
1 2 0 ( +
3 1 w2 + 2 w1 )
( +
3 ) w2 + 2 w1 w2 + 21 1 + w12 w22
0
(5.27)
1 : x 1 =
( +
3 ) w1 + 1 w1 w2 + 22 1 + w22 w12
+
3 1 w2 + 2 w1
where we used (5.22). We now need to find , 1 and 2 such that 01 is rendered GUAS.
Obviously, this is nontrivial, and in fact it is considered to be a rather difficult task. Some
guidelines are nevertheless given in the following.
At the time of writing the work of completing the above mentioned task is not yet solved.
Some progress has been made however, and a promising Lyapunov candidate along the trajectories of w1 and w2 in 01 is defined as V1 , V1 (w1 , w2 ), where
V1 (w1 , w2 ) = ln(1 + w12 + w22 )
(5.28)
which is positive definite and V1 (0, 0) = 0, clearly. The derivative can easily be found to be
V 1 = 1 w1 + 2 w2
(5.29)
The latter is in some sense a strong result, and in fact it resembles a quadratic Lyapunov funcTP x
, where x
= [w1 , w2 ]T , x
= [1 , 2 ]T and P > 0. It can easily be seen that we
tion Ve = x
can choose 1 and 2 to make V 1 negative definite. However, even though we would like the
solution to be this simple, we have to remember that 01 consists of two more states, in which
both 1 and 2 are included. The strong coupling is in fact what makes the stabilization of the
01 system as hard as it is. In this report we choose to end the discussion of stabilizing this
subsystem by outlining what is left to do in the approach. A summary is given as
i) Construct one or more Lyapunov candidates along all trajectories in the 01 subsystem.
As mentioned above, V1 is a potential candidate along w1 and w2 . We also need to
include
3 and z in some additional Lyapunov functions.
ii) After finding potential Lyapunov candidates, we must determine (z), 1 (t,
3 , w1 , w2 )
0
and 2 (t,
3 , w1 , w2 ) such that we can conclude GUAS for 1 , according to Theorem
A.1 and Corollary A.1. The functions 1 and 2 are chosen to be time-varying, as a
result of Proposition 4.2. Typically they will including a periodic Sine function.
iii) When checking wether or not Theorem A.1 and Corollary A.1 are satisfied we can in
many cases use mathematical manipulation, accompanied by different inequalities as
described in Appendix A.1.
iv) If the derivative of the Lyapunov functions turn out to be negative semi-definite due to
for instance sin2 (t) terms, Strict Lyapunov functions will be tried constructed, according
to Appendix A.3.
Finally, when starting on the last part we now that 2 , and hopefully also 01 , is rendered
GUAS. To finalize the conclusion on wether or not the complete system 1 2 obtains
the same property as well, we need to utilize the theory about stability in cascaded systems,
which was discussed in the beginning of this chapter. In short, we need to check wether or not
our assumptions in neglecting the connection term in 1 was correct, hence verifying if the
connection term satisfies some necessary conditions or not.
42
Chapter 6
Conclusions
A detailed and general model for an underactuated satellite has been derived, including topics
related to disturbances and different actuators. In sense of representing the kinematics, the
relatively new (w, z)-parametrization was chosen due to its interesting and favorable properties compared with other minimal attitude representations. As for the dynamics, these were
described by the well known Newton-Euler equations of motion.
After taking numerous simplifications into account, several properties of the underactuated
satellite have been presented. Among others, the most important being the fact that the model
does not satisfy Brocketts necessary condition, hence making attitude stabilization impossible
in sense of using a continuous time-invariant pure-state feedback. This was also shown to be
applicable for the discontinuous case as well.
Based on the different model properties that were revealed, and the fact that complete threeaxis stabilization still is an open problem in the literature, in sense of an underactuated rigid
spacecraft, a novel approach has been proposed. Unlike previously work however, a strategy
utilizing theory related to nonlinear systems in cascades has been exploited.
At the time of writing, the work of achieving a globally uniformly asymptotically stabilizing controller in sense of the proposed strategy has not yet been completed. Nevertheless, the
problem has been reduced from stabilizing the entire system to finding some functions which
makes a subsystem globally uniformly asymptotically stable instead. From the theory of cascaded systems it was also shown that some additional growth conditions must be satisfied.
By combining well known methods like Lyapunov design, backstepping and theory related
to cascaded systems, the proposed strategy seems highly potential, and hopefully it will make
a contribution in the problem of achieving complete three-axis stabilization in sense of an underactuated satellite.
6.1
Further work
Even though the report is by itself self-standing, it should be considered a prestudy of a potential procedure of achieving complete three-axis stabilization. After finishing this report there is
definitely more to do on the subject. The first natural steps would be as follows;
44
Conclusions
Complete the work of finding Lyapunov candidates, and necessary functions to conclude
GUAS for the subsystem denoted by 01 in Section 5.3.
Verify that the the complete system, consisting of the two cascades 1 and 2 satisfies
the conditions related to stability in cascaded systems.
If both tasks above are satisfied, conclude GUAS for the complete system.
Implement the closed-loop system in for instance MATLAB, and execute necessary simulations to verify the theory.
If one are able to complete these tasks, it will be possible to go even further in the sense of;
Perform extensive simulations, using a benchmark model and the proposed time-varying
control laws.
Include disturbance torques like gravity gradient and aerodynamic drag in the model.
Reaction wheels have not been considered in this work. Results in Crouch (1984) states
that attitude stabilization is not possible with momentum exchange devices. What is the
best that can be achieved with such devices?
Tracking and robust attitude control of underactuated spacecrafts are still open problems.
Bibliography
Aeyels, D. and Szafranski, M. (1988). Comments on the stabilizability of the angular velocity
of a rigid body. Systems and Control Letters, 10(1):pp. 3539.
Andriano, V. (1993). Global feedback stabilization of the angular velocity of a symmetric rigid
body. Systems and Control Letters, 20:pp. 361364.
Aneke, N. P. I. (2003). Control of underactuated mechanical Systems. Ph.D. thesis, Technische
Universiteit Eindhoven.
Astolfi, A. and Rapaport, A. (1997). Robust stabilization of the angular velocity of a rigid body.
In Proceedings of the 36th IEEE Conference on Decision and Control, pp. 2864 2869.
Behal, A., Dawson, D., Zergerogly, E. and Fang, Y. (2002). Nonlinear tracking control of an
underactuated spacecraft. In Proceedings of the 2002 American Control Conference, pp.
4684 4689 vol.6.
Brockett, R. W. (1983). Asymptotic stability and feedback stabilization. In Brockett, R.,
Millman, R. and Sussmann, H. (eds.), Differential Geometric Control Theory. Birkhauser,
Boston.
Brockett, R. W. (1985). Asymptotic stability and feedback stabilization. Differential Geometric
Control Theory, 6(1):pp. 5963.
Byrnes, C. I. and Isidori, A. (1991). On the attitude stabilization of rigid spacecraft. Automatica, 27(1):pp. 8795.
Conway, J. B. (1978). Functions of One Complex Variable. Springer Verlag, New York.
Coron, J.-M. (1992). Links between local controllability and local continuous stabilization.
Proc. 1992 Nonlinear Control Syst. Design Symp., pp. 165171.
Coron, J.-M. (1995). On the stabilization in finite time of locally controllable systems by
means of continuous time-varying feedback law. SIAM Journal of Control and Optimization,
33(3):pp. 804833.
Coron, J.-M. and Kera, E.-Y. (1996). Explicit feedbacks stabilizing the attitude of a rigid
spacecraft with two control torques. Automatica, 32(5):pp. 669677.
46
BIBLIOGRAPHY
Coron, J.-M. and Rosier, L. (1994). A relation between continuous time-varying and discontinuous feedback stabilization. Journal of Math. Syst. Estimation, and Control, 4(1):pp. 6784.
Crouch, P. E. (1984). Spacecraft attitude control and stabilization: Applications of geometric
control theory to rigid body. IEEE Transactions on Automatic Control, 29(4):pp. 321331.
Dalsmo, M. and Egeland, O. (1997). State feedback H suboptimal control of a rigid spacecraft. IEEE Transactions on Automatic Control, 42(8):pp. 11861189.
Egeland, O. and Godhavn, J. M. (1994). Passivity-based adaptive attitude control of rigid
spacecraft. IEEE Transactions on Automatic Control, 39(4):pp. 842845.
Egeland, O. and Gravdahl, J. T. (2002). Modeling and Simulation for Automatic Control.
Marine Cybernetics, Trondheim, Norway.
Fauske, K. M. (2002). NCUBE Attitude control. Project report. Department of Engineering
Cybernetics, NTNU.
Fossen, T. I. (2002). Marine Control Systems. Guidance, Navigation, and Control of Ships,
Rigs and Underwater Vehicles. Marine Cybernetics, Trondheim, Norway.
Godhavn, J.-M. and Egeland, O. (1995). Attitude control of an underactuated satellite. In
Proceedings of the 34th IEEE Conference on Decision and Control.
Hughes, P. C. (1986). Spacecraft attitude dynamics. John Wiley & Sons, New York.
Kane, T. R., Linkins, P. W. and Levinson, D. A. (1983). Spacecraft Dynamics. McGraw-Hill,
Inc.
Kaplan, M. H. (1976). Modern spacecraft dynamics and control. John Wiley & Sons, New
York.
Khalil, H. K. (1996). Nonlinear systems. Prentice-Hall, Upper Saddle River, New Jersey,
second ed.
Kolmanovsky, I. and McClamroch, N. (1995). Developments in nonholonomic control problems. IEEE Control Systems Magazine, 15(6):pp. 2036.
Krishnan, H., Reyhanoglu, M. and McClamroch, H. (1994). Attitude stabilization of a rigid
spacecraft using two control torques: A nonlinear control approach based on the spacecraft
attitude dynamics. Automatica, 30(6):pp. 10231027.
Lefeber, E. (2000). Tracking Control of Nonlinear Mechanical Systems. Ph.D. thesis, Eindhoven University of Technology.
Loria, A. (2001). Cascaded nonlinear time-varying systems: analysis and design. Minicourse
at the Congreso Internaicional de Computacion Cd. Mexico.
Mazenc, F. (2003). Strict Lyapunov functions for time-varying systems. Automatica, 39(2):pp.
349353.
Mazenc, F. and Astolfi, A. (2000). Robust output feedback stabilization of the angular velocity
of a rigid body. Systems and Control Letters, 39:pp. 203210.
BIBLIOGRAPHY
47
Mazenc, F., Pettersen, K. and Nijmeijer, H. (2002). Global uniform asymptotic stabilization
of an underactuated surface vessel. IEEE Transactions on Automatic Control, 47(10):pp.
17591762.
Morin, P. (1996). Robust stabilization of the angular velocity of a rigid body with two controls.
European Journal of Control, 1:pp. 5156.
Morin, P. and Samson, C. (1997). Time-varying exponential stabilization of a rigid spacecraft
with two control torques. IEEE Transactions on Automatic Control, 42(4):pp. 528534.
Morin, P., Samson, C., Pomet, J. B. and Jiang, Z. P. (1995). Time-varying feedback stabilization
of the attitude of a rigid spacecraft with two controls. Systems and Control Letters, 25:pp.
375385.
Murray, R., Li, Z. and Sastry, S. (1994). A Mathematical Introduction to Robotic Manipulation.
CRC Press.
Narheim, B. T., Eriksen, T., Hye, G. K. and Wahl, T. (2001). A novel concept for monitoring
of maritime traffic by micro-satellites. In Fifteenth annual AIAA/USU conference on small
satellites.
Outbib, R. (1994). On global feedback stabilization of the angular velocity of a rigid body. In
Proceedings of the 33rd Conference on Decision and Control. Lake Buena Vista, Florida.
Panteley, E. and Loria, A. (2001). Growth rate conditions for uniform asymptotic stability of
cascaded time-varying systems. Automatica, 37:pp. 453460.
Pettersen, K. Y. (1996). Exponential stabilization of underactuated vehicles. Ph.D. thesis,
Norwegian University of Science and Technology, Department of Engineering Cybernetics.
Prussing, J. E. and Conway, B. A. (1993). Orbital mechanics. Oxford University Press, New
York.
Reyhanoglu, M. (1996). Discontinous Feedback Stabilization of the Angular Velocity of a
Rigid Body with Two Control Torques. In Proceeding of the 35th Conference on Decision
and Control. Kobe, Japan.
Samson, C. (1991). Velocity and torque feedback control of a nonholonomic cart. In AdvancedRobot-Control. Proceedings of the International Workshop on Nonlinear and Adaptive Control: Issues in Robotics, pp. 125151. Springer Verlag.
Schaub, H., Tsiotras, P. and Junkins, J. L. (1995). Principal rotation representations of proper
N N orthogonal matrices. International Journal of Engineering Science, 33(15):pp. 2277
2295.
Sellers, J. J. (2000). Understanding space. An introduction to astronautics. McGraw-Hill,
second ed.
Sepulchre, R., Jankovic, M. and Kokotovic, P. (1997).
Springer-Verlag, Berlin.
48
BIBLIOGRAPHY
Sordalen, O., Egeland, O. and de Wit, C. C. (1992). Attitude stabilization with a nonholonomic
constraint. In Proceedings of the 31st IEEE Conference on Decision and Control, pp. 1610
1611.
Sussmann, H. (1987). A general theorem of local controllability. SIAM Journal of Control and
Optimization, 25:pp. 158194.
Sussmann, H. and Jurdjevic, V. (1972). Controllability of nonlinear systems. Journal of Differential Equations, 12:pp. 95116.
Tsiotras, P., Chen, H. and Hall, C. (2001). Satellite Attitude Control and Power Tracking with
Energy/Momentum Wheels. Journal of Guidance, Control, and Dynamics, 24(1).
Tsiotras, P., Corless, M. and Longuski, J. M. (1995). A Novel Approach to the Attitude Control
of Axi-Symmetric Spacecraft. Automatica, 31(8):pp. 10991112.
Tsiotras, P. and Doumtchenko, V. (2000). Control of Spacecraft Subject to Actuator Failures:
State-of-the-Art and Open Problems. Journal of the Astronautical Sciences, 48(2):pp. 337
358.
Tsiotras, P. and Longuski, J. (1995). A New Parameterization of the Attitude Kinematics.
Journal of the Astronautical Sciences, 43(3):pp. 243262.
Tsiotras, P. and Longuski, J. M. (1994). Spin-axis stabilization of symmetric spacecraft with
two control torques. Systems and Control Letters, 23:pp. 395402.
Tsiotras, P. and Longuski, J. M. (1996). Comments on a new parametrization of the attitude
kinematics. In Astrodynamics Specialists Conference.
Tsiotras, P. and Luo, J. (1996). A reduced-effort control law for underactuated rigid bodies. In
Proceedings of the 35th IEEE Decision and Control, pp. 495496.
Tsiotras, P. and Luo, J. (2000). Control of underactuated spacecraft with bounded inputs.
Automatica, 36:pp. 11531169.
Walsh, G. C., Montgomery, R. and Sastry, S. S. (1994). Orientation control of the dynamic
satellite. In Proceedings of 1994 American Control Conference, pp. 138142.
Wertz, J. R. (ed.) (1978). Spacecraft Attitude Determination and Control. Kluwer Academic
Publishers, London, third ed.
Wertz, J. R. (ed.) (1999). Space mission analysis and design. Kluwer Academic Publishers,
London, first ed.
Wisniewski, R. and Blanke, M. (1999). Fully magnetic attitude control for spacecraft subject
to gravity gradient. Automatica, 35:pp. 12011214.
Zabczyk, J. (1989). Some comments on stabilizability. Applied Mathematics and Optimization,
19:pp. 19.
Appendix A
Theory
A.1
Mathematical preliminaries
1p<
(A.1)
In the following some other important inequalities are defined. Together with the triangle inequality these can be very useful when developing Lyapunov proofs.
An important result concerning p-norms is the Holder inequality
!1/p n
!1/q
n
n
X
X
X
1 1
|ak bk |
|ak |p
|bk |q
,
+ =1
p q
k=1
k=1
ak
bk
k=1
(A.2)
k=1
k=1
(A.3)
k=1
Another important relation is the Minkowski inequality, which for a general p norm in fact
can be shown to be the triangle inequality, written as
!1/p
!1/p
!1/p
n
n
n
X
X
X
p
p
p
|ak + bk |
|ak |
+
|bk |
(A.4)
k=1
k=1
k=1
50
Theory
Finally we include Youngs inequality, which is deduced from Youngs integral. This inequality
plays an important role in the theory of inequalities. In its most general form it is given as
ab
ap bq
+ ,
p
q
where
a, b 0, p > 1,
1 1
+ =1
p q
(A.5)
a2 b2
+
2
2
b
2 2
1
a + 2 b2
2
2
(A.6)
(A.7)
A.2
Lyapunov stability
(A.9)
where f : [0, ) D Rn .
Theorem A.1. (Khalil (1996), Theorem 3.8) Let x = 0 be an equilibrium for (A.9) and D
Rn be a domain containing x = 0. Let V : [0, ) D R be a continuously differentiable
function such that
W1 (x) V (x, t) W2 (x)
V (x, t) V (x, t)
+
f (x, t) W3 (x)
t
x
(A.10a)
(A.10b)
t t0 , x D where W1 (x), W2 (x) are continuous positive definite functions and W3 (x)
is a continuous positive semidefinite function on D. Then, x = 0 is locally uniformly asymptotically stable.
Corollary A.1. Suppose that all the assumption of Theorem A.1 are satisfied globally (for all
x Rn ) and W1 (x) is radially unbounded. Then, x = 0 is globally uniformly asymptotically
stable.
Definition A.3. A Lyapunov function satisfying (A.10) is called a strict Lyapunov function
A.3
(A.11)
A.4 Controllability
51
Assumption A.1. A Lyapunov function V (x, t), periodic in time and of period T > 0, a
positive definite function W (x) and a nonnegative function p(t), periodic and of period T ,
such that
V
V
(x, t) +
(x, t)f (x, t) p(t)W (x)
(A.12)
t
x
and two functions i (), i = 1, 2 of class K such that
1 (|x|) V (x, t) 2 (|x|)
(A.13)
are known.
Assumption A.2. The constant
RT
0
Theorem A.2. (Mazenc, 2003) If Assumptions A.1 and A.2 are satisfied by the system (A.11),
one can determine the explicit expressions of a continuously differentiable function () of
class K and of a positive definite function () continuously differentiable, with a positive
first derivate, such that the function
U (x, t) = V (x, t) + P (t) V (x, t)
(A.14)
with
Z
P (t) = t
Z
p(s) ds + T
p(s) ds
(A.15)
A.4
Controllability
m
X
gi (x)ui
u = (u1 , . . . , um ) Rm
(A.16)
i=1
52
Theory
If F is a family of C vector fields on a manifold M , then L(F) denotes the Lie algebra
of vector fields generated by the elements of F. The family F is said to satisfy the Lie algebra
rank condition (LARC) at p if L(F)(p) is the whole tangent space of M at p. If satisfies
LARC, the system is locally accessible.
Let Y = (Y0 , . . . , Ym ) be a finite sequence of indeterminates. We let A(Y) denote the free
associative algebra over R generated by Yj , and L(Y) denote the Lie subalgebra of A(Y)
generated by Y0 , . . . , Ym . We define Br(Y) to be the smallest subset of L(Y) that contains
Y0 , . . . , Ym and is closed under bracketing. Let f be denoted by g0 . We are given a C manifold M and (m + 1)-tuple g = (g0 , g1 , . . . , gm ) of C vector fields on M . Each gj is therefor
a member of D(M ), the algebra of all partial differential operators P : C (M ) C (M ),
where C (M ) denotes the space of C real-valued functions on M . There are therefor a well
defined evaluation map Ev(g) : A(Y) D(M ) obtained by substituting the gj for the Yj ,
so that
!
X
X
aI gI
(A.18)
Ev(g)
aI YI =
I
where, if I = (i1 , . . . , ik ) then gI = gi1 gi2 . . . gik . Evp denotes the evaluation map at p.
Define the degree of the bracket B Br(Y) to be the sum
m
X
1
(B) = 0 (B) +
i (B)
(A.19)
i=1
where i (B) is the number of times that Yi occurs in B. We say that a bracket B Br(Y) is
bad if 0 (B) is odd and 1 (B), . . . , m (B) are even.
P
Let (B) be the symmetrization operator given by (B) =
(B) where Sm ,
Sm
and Sm is the group of permutations of {1, . . . , m}. For Sm ,
is the automorphism of
L(Y) which maps Y0 to Y0 and Yi to Y(i) .
Theorem A.3. (Sussmann 1987) Consider a system
x = f (x) +
m
X
gi (x)ui
xM
|u| 1
(A.20)
i=1
and a point p M such that f (p) = 0. Assume that g = (f, g1 , . . . , gm ) satisfies the LARC at
p. Assume that there is a [1, ] such that whenever B Br(Y) is a bad bracket, then
there are brackets C1 , . . . , Ck in Br(Y) such that
Evp (g)((B)) =
k
X
i Evp (g)(Ci )
(A.21)
i=1
for some 1 , . . . , k R, and (Ci ) < (B) for i = 1, . . . , m. Then (A.20) is STLC in p.
A.5 Stabilizability
A.5
53
Stabilizability
u Rm
(A.22)
The condition given in the next theorem is often referred to as Brocketts necessary condition
or Brocketts theorem. It is a necessary condition for stabilizability by continuous pure-state
feedback was presented. It was originally presented by Brockett (1985) for C 1 pure-state feedback, and shown by Zabczyk (1989) to also hold for continuous pure-state feedback. It can be
formulated as follows (Aneke, 2003)
Theorem A.4. Assume that there exists a continuous pure-state feedback law u : Rn Rm ,
that renders the origin of asymptotically stable. Then the function f : Rn Rm Rn is
locally surjective, i.e., the function f maps an arbitrary neighborhood of (0, 0) Rn Rm
onto a neighborhood of 0 in Rn .
Remark A.5.1. If Brocketts necessary condition is not satisfied for a system, the system cannot be asymptotically stabilized by continuous dynamic feedback either, in the sense that any
extended system
x = f (x, z) Rn z = v Rm
(A.23)
where v is a new control, and z is a new state variable, will still not satisfy the necessary
condition.
The following theorem shows a relation between stabilizability by means of discontinuous
pure-state feedback laws and stabilizability by means of the continuous time-varying and continuous pure-state feedback laws.
Theorem A.5. (Coron and Rosier (1994)) Assume that can be locally (resp. globally)
asymptotically stabilized by means of a discontinuous feedback law. Then for ant T > 0,
can be locally (resp. globally) stabilized by means of a continuous time-varying feedback law
of period T; If, moreover is an affine system, as in (4.8), then can be locally (resp. globally)
asymptotically stabilized by means of a continuous feedbacl law (independent of t; u = u(x)).
It is proven in Coron (1992) that the Sussmann sufficient condition for STLC at p = 0 implies
that the origin of is locally continuously reachable in small time. The following corollary
is then easily deduced from Coron (1995), theorem 1.4.
Corollary A.2. Assume that f in (A.22) is analytic and that n 4. If the system satisfies
Sussmann sufficient condition for STLC at the origin, then is locally stabilizable in small
time by means of almost smooth periodic time-varying feedback laws.
54
Theory
Appendix B
Equations of motion for a rigid body can be derived by summing up the equations of motion
for individual mass elements dm with velocity ~vp . A rigid body B with a mass element dm is
shown in Figure B.1. The point c is the center of mass, while o is the point where we want to
express the equations of motion about. Later it will be assumed that the two points coincide.
The material in this chapter is based on Egeland and Gravdahl (2002).
dm
rm
r
o
rg
ro
rc
Inertial frame
B.1
Translational motion
(B.1)
(B.2)
(B.3)
56
Combining (B.1) and (B.3) gives the force equation with reference to the point o:
f~o = m ~ao +
~ ib ~rg +
~ ib (~
ib ~rg ) .
(B.4)
The translational motion of a spacecraft can be controlled using thrusters. For a spacecraft in
orbit the motion is governed by the laws of orbital mechanics. Such a law is the restricted
two-body equation of motion:
~r
~a = 3
(B.5)
|r|
where ~r is the spacecrafts position and is the gravitational parameter for Earth. For more
details see a textbook in orbital mechanics, for instance Prussing and Conway (1993).
B.2
Angular motion
The Newton-Euler equations are derived from Eulers First and Second Axioms:
f~c = m~ac
~c = ~hc
~o
= ~c + ~rg f~c
(B.6)
(B.7)
(B.8)
(B.9)
(B.10)
(B.11)
S 2 (~rd )dm
(B.12)
(B.13)
(B.14)
57
1
m
vp dm.
B~
(B.15)
(B.16)
(B.17)
Insertion of (B.17) in (B.8) and using (B.7) gives the angular equation of motion
~ o
~ o
~o = ~rg m~ao + M
~ ib +
~ ib (M
~ ib ).
B.3
(B.18)
Model summary
The equations (B.4) and (B.18) can be simplified by letting o coincide with the center of mass
~o = M
~ c . The simplified equations are
c, meaning r~g = ~0 and M
f~ = m~a,
~
~
~ = M
~ ib +
~ ib (M
~ ib ),
(B.19a)
(B.19b)
(B.20)
b
b
b
= b.
M ib
+ S(ib
)Mib
(B.21)
At a first glance the translational and angular motion seems decoupled. A closer inspection
reveals that this is not the case. The reason is that disturbance torques, ~d , and forces, f~d acting
on a spacecraft are usually dependent of the spacecrafts position and attitude. However, for
our purposes the translational and angular motion can be assumed decoupled.
For more details about the derivation refer to Egeland and Gravdahl (2002)
58
Appendix C
Mathematica printouts
Mathematica printouts of the calculations for checking wether or not the satellite model satisfies the LARC conditions and if it is STLC are given on the following pages.
60
Mathematica printouts
H* Checking to see if accessiable, C = 8g1,g2,@f,g1D,@f,g2D,@f,@f,g1DD,@f,@f,g2DD< *L
X = MatrixForm@88w1<, 8w2<, 8w3<, 8w1<, 8w2<, 8z<<D
0
y
i
z
j
z
j
z
j
0
z
j
z
j
z
j
z
j
z
j
e w1 w2
z
j
z
j
z
j
2
2
z
j
1
z
j
H1
+
w1
w2
L
w1
+
w1
w2
w2
+
w2
w3
z
j
2
z
j
z
j
z
j
2
2
1
z
j
w1
w2
w1
+
H1
w1
+
w2
L
w2
w1
w3
z
j
z
j
2
z
j
-w2 w1 + w1 w2 + w3
{
k
g1 = 881<, 80<, 80<, 80<, 80<, 80<<
881<, 80<, 80<, 80<, 80<, 80<<
<< LinearAlgebra`MatrixManipulation`
H * ------- X f -- -- -- - * L
Df = AppendRows@w1 f, w2 f, w3 f, w1 f, w2 f, z fD
1
980<, 80<, 8-e w2<, 9 H-1 - w12 + w22 L=, 8-w1 w2<, 8w2<=
2
61
1
980<, 80<, 8-e w1<, 8-w1 w2<, 9 H-1 + w12 - w22 L=, 8-w1<=
2
Dad1fg2 = AppendRows@w1 ad1fg2, w2 ad1fg2, w3 ad1fg2, w1 ad1fg2, w2 ad1fg2, z ad1fg2D
880, 0, 0, 0, 0, 0<, 80, 0, 0, 0, 0, 0<, 8-e, 0, 0, 0, 0, 0<,
80, 0, 0, -w2, -w1, 0<, 80, 0, 0, w1, -w2, 0<, 80, 0, 0, -1, 0, 0<<
H * ------- @g1, fD -- ----- * L
ad1g1f = Df.g1 - Dg1.f
1
980<, 80<, 8e w2<, 9 H1 + w12 - w22 L=, 8w1 w2<, 8-w2<=
2
Dad1g1f = AppendRows@w1 ad1g1f, w2 ad1g1f, w3 ad1g1f, w1 ad1g1f, w2 ad1g1f, z ad1g1fD
880, 0, 0, 0, 0, 0<, 80, 0, 0, 0, 0, 0<, 80, e, 0, 0, 0, 0<,
80, 0, 0, w1, -w2, 0<, 80, 0, 0, w2, w1, 0<, 80, 0, 0, 0, -1, 0<<
H * ------- @g2, @f, g1DD -- ----- * L
ad1g2ad1fg1 = Dad1fg1.g2 - Dg2.ad1fg1
880<, 80<, 8-e<, 80<, 80<, 80<<
H * C = 8g1, g2, @f, g1D, @f, g2D, @f, @f, g1DD, @f, @f, g2 DD< * L
ControllabilityMatrix = AppendRows@g1, g2, ad1fg1, ad1fg2, ad1g2ad1fg1, ad1fad1g1ad1fg2D
981, 0, 0, 0, 0, 0<, 80, 1, 0, 0, 0, 0<,
1
80, 0, -e w2, -e w1, -e, 0<, 90, 0, H-1 - w12 + w22 L, -w1 w2, 0, w2 e=,
2
1
2
2
90, 0, -w1 w2, H-1 + w1 - w2 L, 0, -w1 e=, 80, 0, w2, -w1, 0, e<=
2
62
Mathematica printouts
MatrixForm@ControllabilityMatrixD
1
i
j
j
j
0
j
j
j
j
0
j
j
j
j
j
j
0
j
j
j
j
j
0
j
j
j
k0
0
1
0
0
0
0
0
0
-e w2
0
0
-e w1
-w1 w2
w2
0
0
-e
-w1 w2
H-1 + w1 - w2 L
-w1
2
0
0
0
y
z
z
z
z
z
z
z
z
z
z
z
z
w2 e z
z
z
z
z
-w1 e z
z
z
z
e {
0
0
0
DeterminantC = Simplify@Det@ControllabilityMatrixDD
2
1
- H1 + w12 + w22 L e2
4
0
y
i
z
j
z
j
z
j
0
z
j
z
j
z
j
z
j
z
e w1 w2
j
z
j
z
j
z
j
2
2
z
j
1
z
j
H1
+
w1
w2
L
w1
+
w1
w2
w2
+
w2
w3
z
j
2
z
j
z
j
z
j
2
2
1
z
j
w1
w2
w1
+
H1
w1
+
w2
L
w2
w1
w3
z
j
z
j
2
z
j
-w2 w1 + w1 w2 + w3
{
k