Äîêóìåíò âçÿò èç êýøà ïîèñêîâîé ìàøèíû. Àäðåñ îðèãèíàëüíîãî äîêóìåíòà : http://www.eso.org/~rfosbury/tmp/rt-404-98.pdf
Äàòà èçìåíåíèÿ: Sun Nov 22 17:37:11 1998
Äàòà èíäåêñèðîâàíèÿ: Sat Dec 22 02:45:49 2007
Êîäèðîâêà:

Ïîèñêîâûå ñëîâà: ï ï ï ï ï ï ï ï ï ï
Instituto de Sistemas e RobÑtica
PÑlo de Lisboa

Attitude Control Strategies for Small Satellites
Paulo Tabuada, Pedro Alves, Pedro Tavares, Pedro Lima Setembro 1998 RT-404-98

ISR-Torre Norte Av. Rovisco Pais 1096 Lisboa CODEX PORTUGAL

Work carried out under the project "Control and Stabilization of Small Satellites", supported by the PRAXIS XXI Programme (ref. PRAXIS/3/3.1/1942/95).


Attitude Control Strategies for Small Satellites

Notation
Vectors and matrices
A, v c v , o v, I v x vo , v oy , voz matrices and vectors are written in bold type, vector v resolved in Control CS, Orbit CS or Inertial CS respectively, x, y, and z components of vector vo.

List of symbols
cw co ow c oq q, q
c A(o q 4

angular angular angular attitude

velocity of velocity of velocity of quaternion

Control CS w.r.t. World CS, Control CS w.r.t. Orbit CS, Orbit CS w.r.t. World CS, representing rotation of Control CS w.r.t. Orbit CS,

)
o

c vector part and scalar part of o q ,

i o , jo , k o T ho I Ix, Iy, Iz Nctrl Ngg Ndist Ekin Egg Egyro Etot ELyap J m B
^

transformation matrix from Orbital CS to Control CS (direct cosine matrix), unit vector along x-, y-, z-axis of Orbit CS, orbital rate, period of orbit, angular momentum due to satellite revolution about the Earth, inertia tensor of the satellite, moments of inertia about x-, y-, z-principal axis, control torque, gravity gradient torque, perturbations torque, kinetic energy, energy due to gravity gradient, energy due to satellite revolution about the Earth, total energy, Lyapunov energy candidate function, cost function, magnetic moment generated by set of coils, magnetic field of Earth (geomagnetic field), geomagnetic filed predicted by the IGRF model, matrix representation of product B â , sliding variable, sliding manifold, positive membership function for fuzzy logic control, negative membership function for fuzzy logic control, zero membership function for fuzzy logic control, parameter used for controlling the spin angular velocity, discretisation function, matrix representation of quaternion product,

B ~ B s S P N Z Swz d( ) R (q

)

1


Attitude Control Strategies for Small Satellites

c 4â1



co

extension of the three dimensional vector c

h, g, ^ , ,

q

vector c T 0 , co positive constants, derivative of vector w.r.t. time, predicted value for , Roll, Pitch an Yaw angles respectively, angle between the expected geomagnetic field and the z axis of the Orbit CS, angle between the measured geomagnetic field and the z axis of the Control CS, angle between the satellite's boom and the local vertical, positive definite gain matrix, Energy gap, time step, correlation product for rule i.

[

]

co

to a four dimension

T

tot t µi

2


Attitude Control Strategies for Small Satellites

Index
1 Introduction _______________________________________________________ 5
1.1 General _____________________________________________________________ 5 1.2 Related work _________________________________________________________ 5 1.3 Original contributions of this work ______________________________________ 6 1.4 Structure of the work __________________________________________________ 6

2 Satellite attitude dynamics and kinematics _______________________________ 8
2.1 Coordinate systems description__________________________________________ 8 2.2 Dynamics ____________________________________________________________ 9 2.3 Kinematics ___________________________________________________________ 9 2.4 Kinetic energy _______________________________________________________ 10 2.5 Potential energy _____________________________________________________ 10

3 Attitude stabilisation and control ______________________________________ 11
3.1 PoSAT-1 Stabilisation ________________________________________________ 11

3.1.1 Description _________________________________________________ 11 3.1.2 Simulation results ____________________________________________ 12 3.1.3 Discussion of results __________________________________________ 13
3.2 Sliding mode control__________________________________________________ 13

3.2.1 3.2.2 3.2.3 3.2.4 3.3.1 3.3.2 3.3.3 3.3.4 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.6 3.4.7 3.4.8

Description _________________________________________________ PoSAT Restricted actuators ____________________________________ Simulation results ____________________________________________ Discussion of results __________________________________________ Description _________________________________________________ PoSAT Restricted actuators ____________________________________ Simulation results ____________________________________________ Discussion of results __________________________________________ Motivation _________________________________________________ Description _________________________________________________ Stability study _______________________________________________ Global stability ______________________________________________ Ideal actuators (Genetic stabilisation) ____________________________ PoSAT Restricted actuators (Brute force stabilisation) _______________ Simulation results ____________________________________________ Discussion of results __________________________________________

13 14 15 16 17 19 20 25 25 26 27 28 29 29 29 33

3.3 Energy based control _________________________________________________ 17

3.4 Predictive stabilisation ________________________________________________ 25

3.5 Overall comparison of results __________________________________________ 34

4 Attitude stabilisation and spin control __________________________________ 36
4.1 PoSAT Control ______________________________________________________ 36

4.1.1 Description _________________________________________________ 36 3


Attitude Control Strategies for Small Satellites

4.1.2 Simulation results ____________________________________________ 36 4.1.3 Discussion of results __________________________________________ 37
4.2 Energy based control _________________________________________________ 38

4.2.1 4.2.2 4.2.3 4.2.4 4.3.1 4.3.2 4.3.3 4.3.4

Description _________________________________________________ PoSAT Restricted actuators ____________________________________ Simulation results ____________________________________________ Discussion of results __________________________________________ Description _________________________________________________ PoSAT Restricted actuators ____________________________________ Simulation results ____________________________________________ Discussion of results __________________________________________

38 38 39 42 43 45 45 48

4.3 Fuzzy logic control ___________________________________________________ 43

4.4 Predictive control ____________________________________________________ 49

4.4.1 Description _________________________________________________ 49 4.4.2 Simulation results ____________________________________________ 49 4.4.3 Discussion of results __________________________________________ 51
4.5 Overall comparison of results __________________________________________ 51

5 Conclusions ______________________________________________________ 53
5.1 Conclusions _________________________________________________________ 53 5.2 Future work and directions ____________________________________________ 53

6 Bibliography ______________________________________________________ 54 Appendix A ­ Attitude simulator and orbit model __________________________ 55
Simulator ______________________________________________________________ 55 Orbit model ____________________________________________________________ 55

Introduction _____________________________________________________ 55 The propagation models ___________________________________________ 55 Appendix B ­ Simulation's initial conditions _____________________________ 57 Appendix C ­ Controllers performance criteria____________________________ 60 Appendix D ­ PoSAT like actuator restrictions ____________________________ 61

4


Attitude Control Strategies for Small Satellites

1 Introduction
1.1 General
Small satellites are nowadays an easy and cheap way to gain access to space and to all the advantages a satellite can provide (telecommunications, environment monitoring, military information, etc). This class of LEO satellites (Low Earth Orbit) may be controlled by strict interaction with the geomagnetic field. A magnetic moment produced by coils placed on the satellite will produce a resultant torque by interaction with the geomagnetic field, which may be used for attitude control purposes. Nevertheless, this simple, low power consumption approach poses several interesting control difficulties as the geomagnetic field viewed by a satellite, changes along its orbit. Besides this time dependency, this problem's mathematical description is highly non-linear, and new control strategies are needed to solve the attitude and control demands of such a satellite. Several control strategies were implemented and simulated in a realistic environment (see appendix A) in order to choose the most adequate to each mission phase. Both ideal and restricted actuators were considered viewing a possible application of such algorithms to PoSAT-11 and other such satellites. This work has been carried out at Intelligent Control Lab. of ISR/IST, as a final year project for the degree of Aerospace Engineering. This work was also integrated in the ConSat2 project.

1.2 Related work
Several researchers have already begun to explore and solve the control problems imposed by a LEO small satellite. [Ong] proposes us some intuitive control laws to tackle this problem, but the actuation is very restricted and does not take advantage of the time-varying nature of this problem. [Steyn] approaches the control problem by using a Fuzzy Logic Controller that achieves better results than a Linear Quadratic Regulator (LQR) despite considering the constraint of actuating on a single coil at each actuation time. This approach suggests that non-linear control methodologies should be further explored so that a better problem understanding and possible solutions may be found. [Wisniewski] compares two non-linear solutions: sliding mode control and energy based control, achieving better results than LQRs based on linear periodic theory. Some of these ideas and algorithms were implemented or inspired some new controllers proposed in this work. Concepts and theorems of matrix algebra, non-linear theory and spacecraft attitude dynamics and kinematics are used throughout the text without demonstration. Some references are suggested at the end of the work and referred were relevant to complement the exposition.

1

PoSAT-1 is the first Portuguese Satellite in orbit, developed in a technology transfer program between University of Surrey and a Portuguese industrial and educational consortium lead by INETI. 2 Stabilisation and Control of Small Satellites, a PRAXIS XXI programme lead by ISR (IST) and UBI.

5


Attitude Control Strategies for Small Satellites

1.3 Original contributions of this work
Some new solutions for the attitude stabilisation problem are presented in this work. A summarised description follows: · A new attitude stabilisation algorithm is presented for both ideal and restricted actuators at sections 3.4.1 and 3.4.2. · A stability study for this new algorithm is presented at section 3.4.3. · The same algorithm is proved to solve the attitude stabilisation and spin control problem as described at section 4.1.1.

1.4 Structure of the work
This final year project report begins with a summarised mathematical description of the satellite's attitude dynamics and kinematics. The following chapters are devoted to each of the simulated control algorithms. These are grouped according to two different control objectives: attitude stabilisation and attitude stabilisation with spin control. In the first group, the actual PoSAT-1 controller, a sliding mode controller, an energy based controller and a predictive regulator are studied. In the second group the existing spin controller for PoSAT-1, an energy based controller, a fuzzy logic controller and finally a predictive controller are studied. In the sections concerning each of the controllers studied, the algorithm is first described for ideal actuators and an extension is presented for PoSAT like restricted actuators. Finally some conclusions are presented as well as topics for further research on this field. The chapters are organised as follows: · Chapter 2, Satellite attitude dynamics and kinematics This chapter provides definitions of coordinate systems used throughout the report. A summarised description of the satellite motion, based on quaternions, is given. · Chapter 3, Attitude stabilisation and control In this chapter several attitude stabilisation and control algorithms are presented. The following different approaches were studied: PoSAT-1 Stabilisation ­ In this section the actual regulator for PoSAT is described, and simulation results are presented for comparison with the other studied control algorithms. Sliding mode control ­ A sliding mode control approach is studied for both ideal and restricted (PoSAT like) actuators. It is shown that this type of control is not suitable for the restricted actuators. Energy based control ­ An energy based control is studied. Modifications are introduced for restricted actuators. A controller for recovery of an inverted boom situation is presented for both ideal and restricted actuators.

6


Attitude Control Strategies for Small Satellites

Predictive stabilisation ­ In this section a predictive regulator is studied. The essence of the predictive stabilisation is the minimisation of a kinetic energy like cost function. Overall comparison of results ­ The above mentioned algorithms are compared using different performance measures. · Chapter 4, Attitude stabilisation and spin control In this chapter several attitude stabilisation and spin control algorithms are presented. The following different approaches were studied: PoSAT-1 Control ­ In this section the actual controller for PoSAT is described, and simulation results are presented for comparison with the other studied control algorithms. Energy based control ­ An energy based control is proposed for stabilisation of the satellite and simultaneously achieving spin control. Results for both ideal and restricted actuators are presented. Fuzzy logic control ­ Spin control and attitude stabilisation are achieved through fuzzy logic control. Rules and membership functions based on physical insight of the problem are presented. Predictive control ­ Modifications on the chapter 3 predictive regulator algorithm are proposed for attitude stabilisation and spin control of a satellite. Overall comparison of results ­ The above mentioned algorithms are compared using different performance measures. · Chapter 5, Conclusions This chapter contains the concluding remarks and recommendations for future work and directions. · · · · Appendix A, Attitude simulator and orbit model A brief description of the used simulator and orbit model is presented. Appendix B, Simulation initial conditions The initial conditions used for the simulations are presented and explained. Appendix C, Controllers performance criteria Several criteria used for comparison of the algorithms are defined. Appendix D, PoSAT like actuators restrictions The main PoSAT actuation limitations and restrictions are presented.

7


Attitude Control Strategies for Small Satellites

2 Satellite attitude dynamics and kinematics
2.1 Coordinate systems description
Before presenting the any mathematical description, the coordinate systems (CS) used throughout out this work are defined: Control CS: This CS is a right orthogonal CS coincident with the moment of inertia directions, and with the origin placed at the centre of mass. The x axis is the axis of the maximum moment of inertia and Z the minimum. Body CS: This CS is a right orthogonal CS with its origin at the centre of gravity. The z axis is parallel to the boom direction and point toward the boom tip. The x axis is perpendicular to the shortest edge of the bottom satellite body, and points away from the boom canister. The y axis is perpendicular to the longest edge of the bottom satellite body. It is the reference CS for attitude measurements and the magnetorquers. Orbital CS: This CS is a right orthogonal CS fixed at the centre of mass of the satellite. The z axis points at zenith (is aligned with the Earth centre and points away from Earth), the x axis points in the orbit plane normal direction and its sense coincides with the sense of the orbital angular velocity vector. The Orbit CS is the reference for the attitude control system. Inertial CS: This CS is an inertial right orthogonal CS with its origin at the Earth's centre of mass. The z axis is parallel to the Earth rotation axis and points toward the North Pole. The x axis is parallel to the line connecting the centre of the Earth with Vernal Equinox and points towards Vernal Equinox (Vernal Equinox is the point where ecliptic crosses the Earth equator going from South to North on the first day of spring). In this work the satellite is considered to be homogeneous and axisymmetric so the Body CS and the Control CS are assumed to be the same, but that does not need to be the case. Note that these CSs definitions are the same used by [Wisniewski] with the exception that the World CS is now called Inertial CS.

Figure 2.1 ­ a) Definition of the Control CS in the Orbit CS. b) Definition of the Body CS. The Body CS refers to geometry of the satellite main body, its axes are perpendicular to the satellite's facets.

8


Attitude Control Strategies for Small Satellites

2.2 Dynamics
The dynamics of a rigid satellite may be described as [Wertz], [Chobotov], [Thomson], [Wiesel]: I ci =- c ci â I c ci + c N
c · ctrl

+ c N gg + c N

dist

.

(2.2.1)

The control torque is obtained as:
c

N

ctrl

= c m âc B

(2.2.2)

and the magnetic moment as [Alonso and Finn]: m = ncoil i
coil

Acoil

(2.2.3)

hence, given a local geomagnetic field vector the control torque can be changed by regulating the value of icoil . The gravity gradient may be expressed as [Wertz]:
c

N

gg

= 3

2c 0

(

k o âIc k

o

)

.

(2.2.4)

The disturbance torque is due to aerodynamic drag, solar pressure, eccentricity of the orbit, and several other effects.

2.3 Kinematics
The kinematics is expressed in Euler symmetric parameters also known as quaternions, through the integration of the angular velocities:
c o

q=

·

1 R( 2

c 4â1

c co ) o q

(2.3.1)

where the R matrix represents the quaternion product [Wertz], [Chobotov]. The kinematics can also be expressed by two different equations, one for the vector part of the quaternion and another for the scalar part: q= 1 1c co q 4 - c co â q 2 2 · 1 q 4 = - c co q 2
·

(2.3.2)

The use of quaternions in the kinematics description is justified because this redundant representation (4-dimensional vector in a 3-dimensional space) allows for a singularity free model. Nevertheless Euler angles will be used when simulation results are analysed, once they provide a better physical understanding of the satellite attitude. The transformation matrix A (direct cosine) can be parameterised by quaternions or by a 123 series of rotations using Euler angles [Chobotov]. From this relations it is possible to obtain the relations between quaternions and Euler angles: a a
32 33

= -tg, sin = a 31 ,

a 21 = -tg a11

(2.3.3)

which can be solved as: 9


Attitude Control Strategies for Small Satellites

2(q1 q 4 - q 2 q 3 ) = arctg - q2 - q2 + q2 + q 2 3 1 = arcsin (2(q1 q3 + q 2 q 4 )) 2(- q q + q q = arctg 2 12 2 2 3 4 q -q -q +q 2 3 1

2 4

(2.3.4)

)
2 4



different expressions can be obtained by considering other relations between quaternions and Euler angles.

2.4 Kinetic energy
The kinetic energy considered here is only a part of the total kinetic energy. The total kinetic energy has a contribution from the satellite revolution about the Earth, and a contribution from the movement of the Control CS w.r.t. (with respect to) the Orbit CS. The first contribution is constant since 0 is approximately constant (the orbit's eccentricity is very small, e=0.001 for PoSAT-1 orbit). The second contribution is the only one considered here and is given by: E
kin

=

1c T c co I 2

co

(2.4.1)

2.5 Potential energy
The potential energy has a contribution from the gravity gradient and another from the revolution about the Earth, so: E
pot

=E

gg

+E

gyro

(2.5.1)

The gravity gradient potential energy is given by: E
gg

=

3 2

2c 0

(

kT Ic k o - I o

zz

)

(2.5.2)

and the potential energy associated with the revolution about the Earth is given as: E
gyro

=

12 0 (I xx - c i T I c i o 2

o

)

(2.5.3)

10


Attitude Control Strategies for Small Satellites

3 Attitude stabilisation and control
The stabilisation algorithms described in this section aim damp or even eliminate the libration movement (align the Orbital CS z axis with the Control CS z axis) and to eliminate any existing spin velocity. Attitude control algorithms align the Control CS with a desired reference CS in this case the Orbital CS. For the simulation and comparison of the different algorithms it is assumed that the attitude can be determined without any error and that it doesn't exist any perturbation influencing the motion of the satellite (ex. solar pressure, aerodynamic drag, etc.).

3.1 PoSAT-1 Stabilisation
3.1.1 Description The PoSAT attitude stabilisation controller, as described in [Ong], is a simple control law based on the angle () between the expected geomagnetic field (based on the IGRF model) and the z axis of the Orbital CS, = arctan
2 2 o ^x o ^y B + B o ^z B

(3.1.1)

and the angle () between the measured geomagnetic field and the z axis of the Control CS: = arctan

( B ) +(
c x2 c

c

B

y2

)

B

z



(3.1.2)

The algorithm only uses the z coil through the following law:
c

d d m z = k - dt dt

(3.1.3)

and the magnetorquers are fired when the satellite latitude is 23.4º or ­23.4º which corresponds to four firings per orbit. Further details on the algorithm are available in [Ong]'s work. Although this is the algorithm described in the literature, better results were attained with the following modified algorithm:
c

d d c z m z = sign - max( m ) dt dt

(3.1.4)

where max( c m z ) represents the maximum producible magnetic moment with the z coil. Note that this is the same control law as (3.1.3), but the magnetic moment amplitude is now constant and of maximum amplitude producing a faster decay on the satellite total energy. 11


Attitude Control Strategies for Small Satellites

3.1.2 Simulation results The following simulation results were obtained with control law 3.1.4 in the simulation test described in appendix B.
settling time (orbits) >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits >15 orbits for 3 orbits for 5 orbits for 15 orbits (º) (º) (º) 140 45 53 60 54 38 78 54 49 50 46 32 154 158 167 54 50 32 80 70 50 50 42 32 50 51 35 54 54 37 59 53 38 13 8 7 50 42 32 Energy (J) 184476 184476 184476 184476 184476 184476 184476 184476 184476 184476 184476 0 184476

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Best case

Table 3.1.1 ­ Simulation results for the modified PoSAT controller.

Note that in order to produce the average results test 1 and 5 were not taken into account because the satellite moved to an inverted boom configuration.
180 160 140 120 Gamma (º ) 100 80 60 -20 40 20 0 0 2 4 6 8 10 Time (orbit s ) 12 14 16 -30 -40 -50 mz (Am2)
c

50 40 30 20 10 0 -10

0

2

4

6

8 10 Time (orbits )

12

14

16

Figure 3.1.1 ­ Gamma evolution for test 5.

Figure 3.1.2 ­ Control magnetic moment for test 5.

12


Attitude Control Strategies for Small Satellites

x 10 1. 6

-3

1. 4

1. 2

1

0. 8

0. 6

0. 4

0. 2

0 0 2 4 6 8 10 12 14 16

c Figure 3.1.3 - co evolution for th e best case.

Figure 3.1.4 ­ Satellite en ergy evolution for th e best case.

3.1.3 Discussion of results The results obtained with the modified PoSAT controller show that this controller has a very poor performance. After 15 orbits the angle reduced only to 32º in the best case. In test 1 and 5 the algorithm was not capable of maintaining the satellite in a boom up configuration as can be seen in fig. 3.1.1. The angular velocity dissipation is very slow (fig. 3.1.2) and the algorithm is not capable of dissipating the z axis angular velocity as explained in [Ong]. The total energy of the satellite also decays very slowly (fig. 3.1.3) and the performance of this algorithm can only be evaluated in days instead of orbits [Ong]. The only advantages are the low computational needs and the low power consumption (184476 J) as the magnetorquers are only fired 4 times per orbit.

3.2 Sliding mode control
3.2.1 Description The sliding mode control algorithm implemented is very similar to the one proposed by [Wisniewski] so there will not be presented any deductions or stability considerations as they can be consulted in the supra-cited reference. Consider the following sliding variable:
c

s c co +

c qo

q

(3.2.1)

where q is a positive definite gain matrix. The sliding manifold is defined as the subspace of the state space where the sliding variable is zero: S {q, c co : c s = 0} (3.2.2)

[Wisniewski] showed that when on the sliding manifold the solution orbit will Tc T converge to the reference c co = [0 0 0] , o q = [0 0 0] , therefore it is now

13


Attitude Control Strategies for Small Satellites

necessary to find a control law that will make the solution orbit converge to the sliding manifold. The desired torque is defined as:
c c

N

des

= c N eq - s c s 1 - I 2

N eq = c ci â I c ci - 3
q

2c o

(

k o âIc k

o

)

+ o I (c i o â c

co

)

(3.2.3)

(

c

co q 4 - c co â q

)

where the equivalent torque compensates the system dynamics and the term - s c s will make the solution converge to the sliding surface in an exponential way. [Wisniewski] also showed that only the component of c N des that is parallel to the sliding variable vector is responsible for decreasing the distance to the sliding manifold, so the following control law in proposed:
c

m=

c

prl N des â c B c

B

2

(3.2.4)

where
c

N

prl des

=

c

N
c

des

c s
2

c

s.

(3.2.5)

s

Equation (3.2.4) computes the magnetic moment from the parallel component of the desired torque, which is obtained by projecting the desired torque on the sliding variable vector (equation 3.2.5). As can be seen in the work of [Wisniewski] this control law is proved to be locally asymptotically stable. The control law presented at equation (3.2.3), (3.2.4) and (3.2.5) was implemented considering only one restriction: the magnetic moment producible has a lower and upper limit equal to the PoSAT limits. 3.2.2 PoSAT Restricted actuators Due to the nature not possible to use sliding The control torque and can also be expressed
c ~

of PoSAT actuators restrictions (single-coil-actuation) it is mode control with PoSAT actuators as will be shown next. generated by the satellite coils is obtained by equation 2.3.2 in matrix form as: c Bx c By c Bz

N

ctrl

0 - c mz c m y 0 - c mx =c m c B = c mz - c m y c m x 0
~

(3.2.6)

By inspection of the c m matrix we can see that if c m has only one component different from zero the matrix c m will have a line of zeros. This means that the control torque will be zero in one dimension; there will always be a dimension were it will not be possible to compensate the system dynamics, nor make the solution orbit converge to the sliding manifold. This restriction becomes even more severe if we recognise that the dynamical model of the satellite (2.2.1) is a coupled system, 14
~


Attitude Control Strategies for Small Satellites

therefore the perturbation imposed by the actuation constrains will propagate to the other dimensions and the system will become uncontrollable. From the above arguments it is visible that this kind of control is not suited for systems with the referred actuation constraints. 3.2.3 Simulation results As was shown at section 3.2.3 PoSAT can not be controlled by this kind of control, therefore we will only present simulation results for ideal actuators. The simulation results presented here do not correspond to the simulation test described in appendix B because initial conditions are outside stability margins of the Sliding mode controller. Therefore the initial spin velocity had to be decreased from 0.0625 rad s -1 to 0.03 rad s -1 , but even with this reduction there were cases were the algorithm diverged as can be seen in table 3.2.1. The simulations used the following values for the gains: 0 0.002 0 0 0.002 0 , = 0.0001 q = s 0 0 0.010 that were found empirically.
settling time (orbits) 2.03 2.94 2.66 Diverge 3.26 3.43 2.43 Diverge Diverge Diverge 3.43 for 3 orbits for 5 orbits Pointing accuracy (º) (º) (º) 2.1 0.44 0.2e-3 5.4 0.81 0.1e-3 3.8 0.52 0.1e-3 Diverge Diverge Diverge 6.1 0.54 0.1e-3 9.4 0.92 0.1e-3 3.5 0.65 0.1e-3 Diverge Diverge Diverge Diverge Diverge Diverge Diverge Diverge Diverge 9.4 0.92 0.1e-3

(3.2.7)

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Worst case

Energy (J) 32471 55493 46571 Diverge 46571 99894 48923 Diverge Diverge Diverge 99894
-1

Table 3.2.1 ­ Simulation results for Sliding mode control with initial spin of 0.03

rad s

15


Attitude Control Strategies for Small Satellites

The algorithm diverged almost in half of the simulations so average results are not shown as their confidence degree would be very low.
50 Roll (º ) 0 -50 -100 10 Pitch (º )

0

2

4

6

8 10 Time (orbits )

12

14

16

70

60

0
Gamma (º )

50

40

-10 200 Yaw (º )

0

2

4

6

8 10 Time (orbits )

12

14

16

30

20

0
10

-200

0

2

4

6

8 10 Time (orbits )

12

14

16

0 0 2 4 6 8 10 Time (orbit s ) 12 14 16

Figure 3.2.1 ­ Euler angles (123) for the worst case. Figure 3.2.2 -

angle evolution for the
worst case.

20 mx (Am2)
c

0

-20 50 my (Am2)

0

2

4

6

8 10 Time (orbits )

12

14

16

4 3.5 3

x 10

-4

0
2.5 Energy (J)

c

-50 50 mz (Am2)

0

2

4

6

8 10 Time (orbits )

12

14

16

2 1.5 1

0
0.5

c

-50

0

0

2

4

6

8 10 Time (orbits )

12

14

16

0

2

4

6

8 10 Time (orbit s )

12

14

16

Figure 3.2.3 ­ Magnetic moment evolution for the worst case.

Figure 3.2.4 ­ Satellite energy evolution for the worst case.

3.2.4 Discussion of results Although this algorithm has a strong drawback, its local stability properties, it also has an important property: its pointing accuracy. Pointing accuracies of 0.1e-3º (table 3.2.1) shown in almost every simulation and 3 axis stabilisation (fig 3.2.1) are characteristics that may be necessary for mission phases where high pointing accuracy is an essential factor. However in real conditions the pointing accuracy will be degraded due to the errors in the attitude and angular velocities produced by the attitude determination system and due to the errors induced by the magnetorquers 16


Attitude Control Strategies for Small Satellites

which are not able to produce the magnetic moments with the desired precision. Another problematic characteristic of this algorithm is that satellite energy (fig. 3.2.4) increases drastically in the first orbit. This increase in energy is required to force the solution orbit to the sliding surface, once on the sliding surface the energy decreases, and the solution converges smoothly to the reference as can be seen in fig. 3.2.2.

3.3 Energy based control
3.3.1 Description As the description of the previous control algorithm, the energy approach to magnetic attitude control covered in this section is based on [Wisniewski], so we will only present a summarised description of the basic algorithm, and propose a slightly different energy approach to use with the PoSAT-1 restricted actuators. A magnetic generated mechanical torque is always perpendicular to the geomagnetic field vector. The consequence is that the satellite is only controllable in two directions at any single point in time. With the geomagnetic field varying along an orbit this implies, e.g. that in the Earth's polar regions the yaw angle is uncontrollable, whereas it can be controlled again when the satellite is in the equatorial regions. Since the control torque is always perpendicular to the geomagnetic field vector, it is desirable that the magnetic moment is also perpendicular to the geomagnetic field vector, as only this component produces a non-zero control torque. It is concluded that magnetic control moment must include information about the angular velocity of the satellite [Wisniewski], and also about time propagation of the geomagnetic field. A candidate for generation of the magnetic moment is an angular velocity feedback
c

m(t ) =h c co (t )â c B(t )

(3.3.1 )

where h is a positive constant (the velocity feedback can only use scalar gain in order to prove asymptotic stability [Wisniewski]). There are two main reasons to suggest this feedback: l. - It contributes to the dissipation of kinetic energy of the satellite. 2. - It provides four stable equilibrium points. The equilibrium points are such that the z axis of the Control CS (the axis of the minimal moment of inertia) points towards the direction of the z axis of the Orbit CS, and the unit vector of the x axis of the Control CS (the axis of the largest moment of inertia) is parallel to the x axis of the Orbit CS. One of these equilibrium points is the desired reference. Using the total energy as a Lyapunov candidate function it can be proven that control law (3.3.1) is asymptotically stable around four equilibrium points (see [Wisniewski] for the complete demonstration). One other important result in the demonstration is the energy derivative, that will be needed in the next chapter: E tot = c
· Tc co

N

ctrl

(3.3.2)

17


Attitude Control Strategies for Small Satellites

A control law that makes all equilibrium points but the reference unstable will be presented next. The reference considered is:

((

c

co , c k o , c i o ): (0, o k o , o i

o

))

(3.3.3)

The three axis attitude stabilisation can be accomplished when some attitude information is added into the velocity control law.
c

m(t ) = h c co (t )â c B(t ) - q(t )â c B(t )

(3.3.4)

where h and are positive constants. It is proven in [Wisniewski] that the control law (3.3.4), with the proper values for h and , is asymptotically stable about the reference (3.3.3). If the total energy, the sum of Egg, Egyro and Ekin is above the energy level + Ezgyro (the maximum potential energy required for the boom axis to cross the horizontal plane), then the kinetic energy has nonzero bias, and the satellite will tumble, i.e., the boom axis will evolve between upright and upside-down attitude. Whereas if the total energy is below Eygg (the minimum potential energy necessary to cross the horizontal plane), and the initial attitude is such that the boom axis is above the local horizon, then it moves above the horizon forever. The time propagation of the solution trajectory for the energy level between Exgg + Ezgyro and Eygg, where the energy gap tot is Exgg
tot

=E

x gg

+E

x gyro

-E

y gg

32 2 = 20 ( I x - I z ) - 0 ( I y - I z ) 2

(3.3.5)

remains undetermined. A control law taking this uncertainty into account is: Procedure 1 1. If Etot> Exgg + Ezgyro (see 3.3.7) activate the angular velocity controller (3.3.1) 2. Else wait until c k oz changes the sign from negative to positive, then activate the rate/attitude controller (3.3.4) for c k oz >0. The first stage diminishes the total energy using the angular velocity feedback to the level Exgg + Ezgyro, then waits until the boom axis crosses the horizon plane from upside-down to upright to activate the rate/attitude controller. The controller needs only to dissipate a small amount of energy tot in order to keep the boom axis above the horizon forever. Hence, the solution converges asymptotically to the reference. The control law in procedure 1 is locally stable in the sense that if the boom axis is upside-down and the total energy is below Exgg + Ezgyro (more precisely below Eygg) there are no means to turn the boom axis upright. To get over this problem, an alternate procedure for achieving a globally stable controller is devised. The concept is to apply a destabilising control when the gravity gradient boom is upside-down and a stabilising control when it is above the horizon. 18


Attitude Control Strategies for Small Satellites

Procedure 2 1. If the boom axis is upside-down (below the horizon) generate the magnetic moment according to (3.3.6) until c k oz >0 (3.3.6) m = g c i o âc B where g is a positive or negative constant, a design parameter.
c

2. Use procedure 1. There are two reasons to propose this algorithm: · A minimum effort controller is a controller which generates a control torque perpendicular to the local geomagnetic field. The unit vector c i o is approximately perpendicular to cB(t) for all t, since it is perpendicular to the orbit plane. The resultant control generated according to (3.3.6) is parallel to c i o and therefore perpendicular to the local geomagnetic field. The minimum potential energy necessary to turn the boom axis upright is the rotation about the pitch axis, which is at most Ep = E
y gg

·

+E

y gyro

=

22 12 0 ( I y - I z ) + 0 ( I x - I y ) 3 2

(3.3.7)

The potential energy necessary to turn the satellite about the roll axis is at most Ep = E where E
y gyro x gg

+E

z gyro

2 = 20 ( I x - I z )

(3.3.8)

=

12 0 (I x - I 2

y

)

=0

(3.3.9)

Procedure 2 is improved by utilization of the angular momentum due to the satellite revolution about the Earth, h0. The design parameter g is strictly positive, thus the angular momentum h0 acts in the same direction as the control torque, and the necessary effort to turn the satellite upright is decreased. There is a more elegant form of a globally stable controller in [Wisniewski], but the one presented is of simpler implementation and therefore was the one used. 3.3.2 PoSAT Restricted actuators Due to the restrictions associated with the PoSAT actuators, the back-off time, the possibility of using only one coil of the magnetorquer at a time and the only three different currents available to produce the magnetic moment, it is proposed a slightly altered energy control algorithm. The proposed alterations are only in order to maintain the effectiveness and stability of the algorithm in this restricted actuators situation. Since the satellite can only actuate in one direction, cx, cy or cz, is chosen the direction that produces a moment more similar to the one that is proposed by the ideal actuator algorithm. This is done by comparing the magnetic torque attained with each 19


Attitude Control Strategies for Small Satellites

of the restricted actuator coils (already quantified to producible moments), with the magnetic torque that would be obtained with the proposed magnetic moment (ideal actuator). The direction that produces a closer result is the chosen one. The resizing or quantification of the moment is done by using the Euclidean distance definition, where the proposed moment components (ideal moment) is compared with the restricted moment and is chosen the restricted moment magnitude that is closer to the proposed one. The stability of the algorithm is guaranteed because the actuators are activated only when the total energy derivative (3.3.2) is negative. This leads to think that the best actuation is the one that produces the lowest (negative) energy derivative. An energy like control completely thought for the PoSAT's actuators and using the previous concept is presented in the next chapter. The destabilising control algorithm in procedure 2 that turns the satellite from an upside-down to an upright position, doesn't work when the PoSAT actuators are used, again because of the restriction of actuating in just one coil at a time and of the minimum time between actuations. When used with the alterations proposed before this control law makes the satellite spin instead of inducing enough roll or pitch angular velocity to turn the satellite upright. By noting that the only moment that always induces roll or pitch torques is the moment produced by the z coils, is proposed a control law for turning the satellite upright from an inverted position that is:
c c

m z = MAX _ Mz * sgn E ( c N m = m =0
x c y

[

z MAX _ M

)

]

(3.3.10)

Where MAX_Mz is the control law makes the power. The sign of the the sign is positive the is what is wanted. If decrease the satellite's

maximum magnetic moment producible in the z direction. The satellite actuate only with the z coils and with the maximum energy derivative gives the correct sign to the actuation, i.e., if moment produced will increase the satellite's energy, and this the sign is negative, it means that a positive moment would energy and therefore a negative moment will increase it.

3.3.3 Simulation results The following results were obtained using the described algorithm, see Appendix B for further details on the initial conditions for the simulation. The results shown here were attained with a velocity gain h=7*107, an attitude gain =1*105, and a destabilising gain g=1*107. These values for the gains were derived through simulation as they seemed to produce better results. Note that the values for the pointing accuracy are attained for 15 orbits, which means that greater accuracy could be obtained if a longer time was used for the simulation.

20


Attitude Control Strategies for Small Satellites

settling time (orbits) Test 1 3.3 Test 2 3.4 Test 3 3.9 Test 4 2.8 Test 5 1.8 Test 6 3.4 Test 7 3.3 Test 8 3.0 Test 9 2.5 Test 10 2.6 Mean 3.0 Std. Dev. 0.6 Worst case 3.9

for 3 orbits (º) 3.4 4.0 9.1 3.0 1.4 3.7 4.0 5.1 3.2 3.3 4.0 1.9 9.1

for 5 orbits (º) 0.7 0.7 1.1 0.5 0.2 0.7 0.5 0.6 0.6 0.4 0.6 0.2 1.1

Pointing accuracy (º) 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0.1E-03 0 0.1E-03

Energy (J) 29430.3 30811.2 106461.9 25889.0 27909.5 25104.2 34334.8 23362.7 27422.6 27393.6 35812.0 23730.0 106461.9

Table 3.3.1 ­ Simulation results for the Energy control with ideal actuators

Euler angles - Ideal act uators 180 160 140 -200 120 Gama (º ) 100 80 60 40 20 0 0 5 Time (orbits ) 10 15 Pit c h (º ) 0 50 0 -50 -100 200 Yaw (º ) 0 5 10 15 5 10 15 Roll (º ) 200

0

0

-200 0 5 Time (orbits ) 10 15

Figure 3.3.1 - evolution for the worst case (ideal actuators)

Figure 3.3.2 ­ Euler angles for the worst case (ideal actuators)

21


Attitude Control Strategies for Small Satellites

settling time (orbits) Test 1 > 15 Test 2 > 15 Test 3 13.12 Test 4 > 15 Test 5 > 15 Test 6 > 15 Test 7 > 15 Test 8 14.71 Test 9 14.16 Test 10 > 15 Mean N.A. Std. Dev. N.A. Worst case 14.71

for 3 orbits (º) 28.55 29.47 37.76 31.05 35.38 44.30 44.01 36.58 35.26 32.24 35.46 5.2 44.30

for 5 orbits (º) 25.26 21.05 27.32 24.56 30.64 36.97 34.27 27.32 28.45 28.66 28.45 4.4 36.97

Pointing accuracy (º) 7.16 7.45 3.67 7.65 8.11 6.34 7.58 5.00 4.19 6.81 6.40 1.48 8.11

Energy (J) 197022.6 194826.1 207756.7 186837.0 195807.8 194280.8 197054.0 193235.1 198044.7 372479.2 213734.4 53141.7 372479.2

Table 3.3.2 ­ Simulation results for the Energy control with the PoSAT actuators

Euler angles - Res t ric ted ac t uat ors 70 Roll (º ) 50

60

0

50

-50 0 100 Pit c h (º ) 2 4 6 8 10 12 14 16

Gama (º )

40

50 0 -50 0 2 4 6 8 10 12 14 16

30

20 Yaw (º ) 0 2 4 6 8 10 Time (orbits ) 12 14 16

200

10

0

0

-200 0 2 4 6 8 10 Time (orbit s) 12 14 16

Figure 3.3.3 - evolution for the worst case (PoSAT actuators)

Figure 3.3.4 ­ Euler angles for the worst case (PoSAT actuators)

22


Attitude Control Strategies for Small Satellites

Time for Etot>Ethres (orbits) Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case 0.380 0.957 1.080 0.699 0.538 0.863 0.505 0.470 0.736 0.925 0.715 0.225 1.080

Time for c k oz >0 (orbits) 0.159 0.900 1.056 0.448 0.462 0.747 0.456 0.378 0.676 0.747 0.603 0.255 1.056

settling time (orbits) 3.43 6.64 6.64 3.47 5.38 5.68 6.67 2.95 6.16 3.76 5.08 1.44 6.67

Energy (J) 107722.58 629163.48 578843.87 408701.71 578662.93 529788.91 572941.06 390460.73 798304.33 121674.95 471626.45 208224.82 798304.33

Table 3.3.3 ­ Simulation results for the inverted boom test with ideal actuators
Euler angles - Ideal act uators 180 160 140 -200 120 Gama (º ) 100 80 60 40 20 0 0 5 Time (orbits ) 10 15 Pit c h (º ) 0 100 5 10 15 Roll (º ) 200

0

0

-100 200 Yaw (º )

0

5

10

15

0

-200 0 5 Time (orbits ) 10 15

Figure 3.3.5 - evolution for the worst case (ideal actuators)

Figure 3.3.6 ­ Euler angles for the worst case (ideal actuators)

Magnetic moment s - Ideal ac tuat ors 200 mx (Am2)

0

-200 0 200 my (Am2) 5 10 15

0

-200 0 200 mz (Am2) 0 -200 -400 0 5 Time (orbit s) 10 15 5 10 15

Figure 3.3.7 ­ Magnetic moments for the worst case (ideal actuators)

23


Attitude Control Strategies for Small Satellites

Time for Etot>Ethres (orbits) Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case 5.12 5.23 5.20 4.54 5.10 4.45 7.02 4.59 4.81 4.76 5.08 0.70 7.02

Time for c k oz >0 (orbits) 3.25 3.25 3.24 3.29 3.25 3.26 6.20 3.29 3.27 3.26 3.56 0.88 6.20

settling time (orbits) 13.79 N.A. N.A. N.A. 12.90 14.56 N.A. N.A. N.A. 14.53 13.94 0.68 14.56

Energy (J) 800818.85 800711.30 801104.26 800037.41 801153.56 800452.78 860824.06 800023.96 800282.48 799992.59 806540.12 18099.30 860824.06

Table 3.3.4 ­ Simulation results for the inverted boom test with restricted actuators
Euler angles - Res t ric ted ac t uat ors 180 160 140 -200 120 Gama (º ) 100 80 60 40 20 0 0 2 4 6 8 10 Time (orbit s) 12 14 16 Pit c h (º ) 0 100 2 4 6 8 10 12 14 16 Roll (º ) 200

0

0

-100 0 200 Yaw (º ) 2 4 6 8 10 12 14 16

0

-200 0 2 4 6 8 10 Time (orbit s) 12 14 16

Figure 3.3.8 - evolution for the worst case (PoSAT actuators)
50 mx (Am2)

Figure 3.3.9 ­ Euler angles for the worst case (PoSAT actuators)

Magnetic moment s - Res t rict ed ac tuat ors

0

-50 0 50 my (Am2) 2 4 6 8 10 12 14 16

0

-50 50 mz (Am2)

0

2

4

6

8

10

12

14

16

0

-50 0 2 4 6 8 10 Time (orbit s) 12 14 16

Figure 3.3.10 ­ Magnetic moments for the worst case (PoSAT actuators)

24


Attitude Control Strategies for Small Satellites

3.3.4 Discussion of results The strong point of this algorithm is that it is globally stable. As can be seen from figure 3.3.1 the worst case occurred due to unfavourable conditions that induced the satellite into an inverted boom condition, but recovered from it and converged to the reference very fast. The algorithm is also a fast algorithm (with an average settling time of 3 orbits) and presents a very high pointing accuracy (that will be very reduced after introduction of aerodynamic perturbations and of the attitude estimation algorithm in the simulator dynamics). For the PoSAT's actuators the results are poorer, as was expected since it is the same algorithm, but actuating at most 3% of the time of the ideal case. If the other restrictions on the actuators were taken into account the attained results would steel be are within the expected values. From longer simulations values of 2º where obtained for the pointing accuracy with the PoSAT's actuators. The strongest drawback to the algorithm due to the restrictions are the actuations in only one coil at a time, since the direction of the magnetic moment produced by the satellite is very important for the efficiency and stability of the algorithm. For the inverted boom situation it is seen from table 3.3.3 that the algorithm has a very good performance. In the worst case the algorithm goes from an inverted boom attitude to a 5º attitude error in less than 7 orbits. W.r.t. the magnetic moments presented in figure 3.3.7, the values shown are the values requested by the algorithm, depending highly on the destabilising gain g that is desirably high, while the real actuating values are limited to the maximum values of PoSAT-1. Note the difference between the time required for the total energy to become higher than the threshold energy in eq. 3.3.8, and the time for the satellite recover from an upside-down position to a definite upright position (where ckzo>0). For the PoSAT actuators, the results obtained are very good if we take into account the reasons already mentioned relative to the PoSAT actuators. In 4 out of 10 tests, 5º of pointing accuracy is achieved in less than 15 orbits from a 180º inverted boom situation. Note that the transition to an upright position is not very direct, since due to the limited actuations, the satellite in some cases has an angular velocity and energy that makes the satellite just pass through from a down to an upright position and then againto an inverted position. This is the case presented in figure 3.3.7 and 3.3.8.

3.4 Predictive stabilisation
3.4.1 Motivation As was shown in section 3.3.1 the derivative of the Lyapunov function based on the total satellite energy is given by eq. 3.3.2, repeated here for convenience: E tot = c
· Tc co

N

ctrl

(3.3.2) = 0 represents all the control torques that lie on a plane that
· tot

·

The equation E

tot

is perpendicular to c co , therefore imposing E

< 0 is the same as imposing that the

control torque should lie "behind" the plane perpendicular to c co . Further more the control torque is obtained from eq. 2.3.2 also repeated here: 25


Attitude Control Strategies for Small Satellites

c

N

ctrl

= c m âc B

(2.2.2)

which states that the control torque must always be perpendicular to the geomagnetic field. In view of this the solution of this control problem must satisfy this two requirements: c c B
Tc co Tc

N ctrl < 0 N ctrl = 0

(3.4.1)

From eq. (3.4.1) it can be seen that although the solution to these constraints is not a linear space, it is however an unlimited subset of a plan embedded in a three dimensional space, in the general case, or it doesn't exist if c co is parallel to c N ctrl . The same is to say that the solutions to this control problem are infinite in the general case, which points to a control algorithm that would choose the optimum magnetic moment (or at least the best one given all the constrains) at each actuation moment to take advantage of the particular angular velocity and geomagnetic field. This approach differs from the others already considered which use the same control law for all situations when, depending on the current angular velocity and geomagnetic field, an optimum magnetic moment is available from the set of solutions. 3.4.2 Description The control algorithm has to choose the best magnetic moment according to the angular velocity and geomagnetic field configuration at actuation time. Defining a cost function based on the kinetic energy3: J= 1c T co 2
c



co

(3.4.2)

where is a positive definite gain matrix. More insight will be given relative to the choice of the cost function when studding the algorithm stability at section 3.4.3. The dynamical model of the satellite is well known and understood so it can be used to see the influence of the magnetic moment on the angular velocity. The angular velocity of the Control CS w.r.t. the Inertial CS can be written as:
c c ci = c co + c oi = c co + A(o q )o oi = c co + o c i o

(3.4.3)

where is used the fact that small satellites are usually launched into polar orbits with small eccentricities (PoSAT orbit has an inclination of 98º and an eccentricity of 0.001) therefore, the angular velocity of the Orbital CS w.r.t. the Inertial CS is approximately given by:
o

oi = [o 0 0

]T

(3.4.4)

The derivative of eq. 3.4.3 now becomes:
c

ci = co + o c i o â c
c

·

·

co

(3.4.5)

3

The use of

q instead of the inertia matrix was chosen due to the possibility of defining relative 26

weights for the angular velocities.


Attitude Control Strategies for Small Satellites

substituting in the dynamics equation (eq. 2.3.1) and neglecting the disturbance torque we get: I
c · co

=I c ci â c ci + c co â o c i o + c N gg + c N

ctrl

(3.4.6)

To use eq. 3.4.6 to predict the evolution of the angular velocity conditioned by some control torque we discretise it considering a small time step t: c co (t + t )- c co (t ) t t t I -1 (I c ci ()â c ci ()) + I -1 (c co () â o c i o (t )) t t t + I -1 c N gg () + I -1 c N ctrl () (3.4.7 ) which may be written as: 2 c co (t + t )= c co (t ) + t f (t ) + O (t ) (3.4.8) t f () = I -1 (I c ci â c ci ) + I -1 (c co â o c i o ) + I -1 c N gg + I -1 c N ctrl and the prediction equation if given by:

(

)

(3.4.9) co (t + t )= c co (t ) + t f (t ) where the ^ stands for prediction. It can be seen from eq. 3.4.9 that it is possible to predict the effect that a determined control torque will produce on the angular velocity4. For this prediction there is only need to know the current angular velocities (c co ) and attitude (oc q ), readily available from the attitude determination system. Using the prediction equation (3.4.9) and (2.2.2) it is possible to choose from the available magnetic moments the one that minimises the cost function (3.4.2), once the geomagnetic field value is available from the magnetometers. 3.4.3 Stability study The potential energy of the satellite is composed of two terms (eq. 2.6.1), where the term that reflects the satellite revolution about the Earth (eq. 2.6.3) has a T minimum when c i o = ±[1 0 0] , which means that the x axis of the control CS is parallel to the x axis of the orbit system. As we are only aiming at stabilise the satellite (remove the angular velocity of the Control CS w.r.t. the Orbital CS) this component of the potential energy brings no useful information, so it is not considered. The potential energy due to gravity gradient has a minimum when the z axis of the Control CS is parallel to the z axis of the Orbital CS. Once again there is no need to consider the information given by this expression, as the gravity gradient effect will be reflected on the kinetic energy. Consider that all kinetic energy was dissipated, but the z axis of the Control C.S. is not parallel to the Orbital C.S.. A torque is being applied to the satellite caused by the gravity gradient effect (eq. 2.3.4), therefore this torque is being compensated by a control torque, to maintain the kinetic energy at zero. The geomagnetic field is changing in direction and amplitude trough the orbit, but the control torque cannot perfectly match these changes so a residual torque will appear and will impose an angular velocity (kinetic energy) different from zero that will be readily eliminated by the controller. Although the kinetic energy will be zero at these unstable equilibria points, it will not stay at zero for long. As this shows it is enough for our purposes to
4

c

Recall that eq. (3.4.8) corresponds to the Euler method for solving numerically first order differential equations.

27


Attitude Control Strategies for Small Satellites

consider only a kinetic energy like cost function to minimise5, because the only stable T equilibria is c k o = ±[1 0 0] . Having established that a kinetic energy like cost function is enough for stability it is still necessary to show that this minimisation method based on a predictive model will work. Consider a Lyapunov function ELyap as defined in eq. 3.4.2, the kinetic energy based on eq. 3.4.8 may be expressed as: E
Lyap

(t (t (t

+ t ) = E



Lyap

(t

+ t ) + O (t

(

)2

)+ O((t ) )
4

(3.4.10)

If we consider that the minimisation algorithm is working correctly, we will have:


E

Lyap

+ t ) < E + t ) - E

Lyap

(t )
< O (t

(3.4.11)

substituting eq. 3.5.9 in 3.4.10 we get: E
Lyap Lyap

(t )

(

)2

)+ O((t ) )
4

(3.4.12)

dividing by t and assuming t as small as wanted, we can write:
t 0

lim

E

Lyap

(t

+ t ) - E t <0

Lyap

(t )

< lim

O (t

(

)2

)+ O((t ) )
4

t 0

t

(3.4.13)



·

E

Lyap

Therefore global uniform asymptotical stability is ensured towards the T T reference c co = [0 0 0] , and as previously shown also towards c k o = ±[1 0 0] or
c c equivalently to o q1 = o q 2 = 0 .

3.4.4 Global stability For the purpose of achieving global stability towards c k o = [1 0 0] an algorithm similar to the one proposed by [Wisniewski] in the energy based control is employed. As described at section 3.3.1 the energy required to turn the satellite to a boom up configuration is given by eq. (3.3.8), and the control magnetic moment should increase the potential energy when the satellite is on an up side-down configuration. To ensure that the actuation will effectively turn the satellite's boom up only the z coil is employed, this way the control torque will induce a libration movement. The algorithm employed is divided in three steps: z · If c k o < 0 and Etotal < Etreshold chose the magnetic moment that maximises the cost function. z · If c k o < 0 and Etotal > Etreshold wait until the satellite turns up.
T

·

z If c k o > 0 chose the control magnetic moment that minimises the cost function.

5

There is another issue related to minimising the gravity gradient potential energy, eq. 2.3.4 involves attitude information. The prediction of the attitude could be done using the same method as for the angular velocity prediction, but when integrating the angular velocity prediction, we would also propagate its error, which brings convergence problems, and would be computationally more demanding.

28


Attitude Control Strategies for Small Satellites

3.4.5 Ideal actuators (Genetic stabilisation) For ideal actuators the minimisation of the cost function is done on a continuos infinite subset of a plan. Optimum control theory is difficult to apply in this case due to the non-linear time-varying nature of the dynamics equation. An iterative method for the cost function minimisation was an alternative, so a Genetic Algorithm (GA) was implemented. The concept of GA's will not be explained here, as it can be found on many references on that subject, see for example [Goldberg]. The implemented GA uses the standard techniques and a special operator, elitism, this means that the best solution is always preserved and transmitted to the next generation. Cloning has T also been used, by which we insert into the population the solution c m = [0 0 0] , because it has been found through simulation that sometimes the algorithm would converge to magnetic moments parallel to the geomagnetic field after the stabilisation T had been completed. The solution c m = [0 0 0] performs same action (do nothing), but preserves power, as it doesn't use the magnetorquers for that purpose. 3.4.6 PoSAT Restricted actuators (Brute force stabilisation) When considering PoSAT restricted actuators there are only 19 available magnetic moments. Each coil may receive three different currents with two different polarities, which gives 6 moments per coil and 18 moments for the three coils. The T 19th moment is the do nothing solution c m = [0 0 0] . With such a restricted search space it is not necessary to use an iterative minimisation algorithm, because all solutions may be evaluated and the best one (the one that minimises eq. 3.4.2) is chosen. 3.4.7 Simulation results These results were obtained using the described algorithm, see Appendix B for further details on the initial conditions for the simulation. For the genetic regulator a population of 10 solutions was used and evolved during 10 generations. Better results could be achieved with a larger number of generations and/or a larger population of solutions, but those would rise the computational effort. Mutation probability of 30% and crossover probability of 70% was employed, as they seemed to produce better results. The gain matrix used was the identity matrix.

29


Attitude Control Strategies for Small Satellites

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case

settling time (orbits) 2.32 1.20 1.60 1.87 2.36 0.88 1.92 1.92 1.92 1.85 1.78 0.46 2.36

for 3 orbits for 5 orbits Pointing accuracy (º) (º) (º) 2.859 0.034 0.9e-3 0.021 0.005 0.0016 0.639 0.005 0.42e-3 1.960 0.042 0.55e-3 3.413 0.047 0.0024 0.589 0.005 0.84e-3 1.820 0.027 0.81e-3 1.970 0.045 0.0014 1.676 0.037 0.001 1.794 0.060 0.5e-3 1.542 0.030 0.001 1.003 0.021 0.00064 3.413 0.047 0.0024

Energy (J) 849597 330590 629622 509173 808239 460650 635007 468347 918380 669706 627931 189669 918380

Table 3.4.1 ­ Simulation results for Predictive stabilisation (Ideal Actuators).

50 Roll (º )

0

-50 50 Pitch (º )

0

2

4

6

8 10 Time (orbits )

12

14

16

70

60

0
Gamma (º )

50

-50 200 Yaw (º )

40

0

2

4

6

8 10 Time (orbits )

12

14

16

30

20

0
10

-200

0

2

4

6

8 10 Time (orbits )

12

14

16

0 0 2 4 6 8 10 Time (orbit s ) 12 14 16

Figure 3.4.1 ­ Euler angles (123) evolution for worst case and ideal actuators.

Figure 3.4.2 - angle evolution for worst case and ideal actuators.

30


Attitude Control Strategies for Small Satellites

For the brute force controller the matrix.
settling time (orbits) 2.91 3.46 3.30 2.93 2.61 3.45 2.98 3.34 2.61 3.32 3.12 0.29 3.46



gain matrix used was also the identity

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case

for 3 orbits for 5 orbits Pointing accuracy (º) (º) (º) 2.4 0.196 0.1 14.5 0.57 0.16 8.5 0.29 0.16 4.2 0.22 0.079 2.7 0.18 0.12 12.5 0.087 0.11 6.4 0.15 0.14 8.3 0.41 0.11 2.6 0.17 0.13 6.1 0.23 0.05 7.3 0.26 0.12 4.1 0.15 0.04 14.5 0.57 0.16

Energy (J) 499523 611999 580336 506509 470235 603063 544702 615744 470235 532065 543441 56751 611999

Table 3.4.2 ­ Simulation results for Predictive stabilisation (Restricted Actuators).

0.5

q1

0

-0.5 0.5

0

2

4

6

8 10 Time (orbits )

12

14

16
2 1.5

x 10

-4

q2

0

1 0.5

0

2

4

6

1

8 10 Time (orbits )

12

14

16

wz (rad/ s )

-0.5

0 -0. 5

q3

0

-1 -1. 5

-1

0

2

4

6

8 10 Time (orbits )

12

14

16

-2 0 2 4 6 8 10 Time (orbit s) 12 14 16

Figure 3.4.3 ­ Attitude expressed in quaternions for Figure 3.4.4 ­ co evolution for worst case worst case and restricted actuators. and restricted actuators.
c z

31


Attitude Control Strategies for Small Satellites

100 mx (Am2)

0

70

c

-100 0 100 my (Am2) 2 4 6 8 10 Time (orbit s ) 12 14 16

60

50 Gamma (º ) 0

40

c

-100 0 50 mz (Am2) 2 4 6 8 10 Time (orbit s ) 12 14 16

30

20 0 10 -50 0 2 4 6 8 10 Time (orbit s ) 12 14 16

c

0 0 2 4 6 8 10 Time (orbit s) 12 14 16

Figure 3.4.5 ­ Magnetic moment for worst case and restricted actuators.

Figure 3.4.6 - angle evolution for worst case and restricted actuators.

For the inverted boom test the gain matrix used was once again the identity matrix and the available set of magnetic moments was reduced to {- max(c m z ), max(c m z )} when the satellite was on an inverted boom scenario. Also the satellite energy threshold used was not eq. (3.3.8) but E since this value improved the controller efficiency.
treshold 2 = 3 0 (I xx - I yy

)

,

c

z k o > 0 settling time settling time Pointing accuracy Energy (J)

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case

(orbits) 3.2 3.4 3.3 3.3 3.2 3.3 3.3 3.2 3.2 3.4 3.3 0.08 3.4

(orbits)

(º)

7.8 7.4 7.6 7.8 7.8 7.6 7.9 8.1 8.1 7.6 7.8 0.2 8.1

0.15 0.06 0.26 0.06 0.23 0.12 0.12 0.06 0.06 0.03 0.12 0.08 0.26

1367024 1294509 1333790 1317829 1361092 1324934 1386394 1358970 1262172 1292503 1329922 39174 1367024

Table 3.4.3 ­ Simulation results for Predictive stabilisation (Restricted Actuators) on an inverted boom scenario.

32


Attitude Control Strategies for Small Satellites

180 160 140 120 Gamma (º )

4 3.5 3 2.5

x 10

-4

100 80 60 40 20 0 0 2 4 6 8 10 Time (orbit s ) 12 14 16

Energy (J)

2 1.5 1 0.5 0 0 2 4 6 8 10 Time (orbit s ) 12 14 16

Figure 3.4.7 -

typical evolution for a inverted Figure 3.4.8 ­ Energy typical evolution for a inboom configuration. verted boom configuration.

3.4.8 Discussion of results Predictive stabilisation has produced the best results so far. With ideal actuators it is possible to control the satellite such that < 5º is attained in less then 2.5 orbits and after only 5 orbits the attained value is already very small, 0.047º in the worst case. The major drawback of this approach is its computational time which is very expensive for the small computers available on-board of this kind of satellites. For restricted actuators the results are also very impressive: after 3.5 orbits the satellite is already stabilised with a value inferior to 5º, which are very good results considering that the magnetorquers have a back-off time of 100 sec. and a maximum actuation time of 3 seconds. Another interesting property is the smaller computational needs of this algorithm when compared with genetic stabilization. From fig. 3.4.4 it is noticeable that this algorithm is not capable of totally z dissipate the z axis angular velocity ( c co ). This residual small velocity is also evident from fig. 3.4.3 where q3 slowly changes with time, instead of converging to some value. This fact is not a direct consequence of the controller but rather of the limited set of available magnetic moments, which are not enough to produce a precise control. It is also interesting to note that most of the control effort is applied to the z coil, due to the need to damp the libration movement. Energetically, the control effort is similar through the simulations, which shows that the algorithm efficiency is robust w.r.t. different initial conditions. Nevertheless the required energy is considerably larger than, for example, energy based control. This is, however, caused by the restricted set of available moments, since they will rarely be perpendicular to the geomagnetic field. The lower energy consumption of the brute force regulator relatively to the genetic regulator is again a direct consequence of the small set of available magnetic moments. For the inverted boom configuration the results are again very impressive, only 8.1 orbits are required to attain a value inferior to 5º. The power consumption is approximately the double of stability test, which shows that the same amount of energy is required to turn the satellite up as to stabilise it, as can be seen in fig. 3.4.8. 33


Attitude Control Strategies for Small Satellites

This algorithm has proven to be a valid one to achieve global stability towards the desired reference in view of the good performance results.

3.5 Overall comparison of results
Initially PoSAT's attitude controller was implemented as a reference for the other algorithms, but as different controllers were being implemented and simulated, it became apparent the poorer performance of this simple controller. Not being able to attain a value of 30º in 15 orbits is a serious drawback relatively to the other controllers' performance. In view of the already mentioned differences the results attained with this controller can not be properly compared with the remaining algorithms. Sliding mode control is only locally stable, restricting its actuation envelope to a small neighbourhood of the reference. Nevertheless the precision attained with sliding mode control is very good, although in real operating conditions, the accuracy will degrade considerably due to all the errors involved. When considering restricted actuators this kind of control is not appropriate, since the system becomes uncontrollable. With energy based control it is possible to achieve a globally stable controller that is able to recover from an inverted boom configuration. Settling time results for this controller are also very impressive, only 4 orbits are required to achieve a value of 5º. The pointing accuracy is also very good and similar to sliding mode control. For the inverted boom configuration, satellite lock in an upright position is achieved in only 1.1 orbits. The power required by this algorithm is extremely reduced, which is an important factor for small satellites since the energetic resources are scarce. The results for the restricted actuators are poorer. The pointing accuracy is of only of 8º for 15 orbits, though longer simulations (of 25 orbits) reveal that this value may decrease to 2º. The inverted boom controller guarantees an upright position in 6.2 orbits which may be considered fairly good results, despite the actuator limitations. Predictive stabilisation has achieved the best results so far. For ideal actuators predictive stabilisation achieves a value of 5º 1.5 orbits sooner than the energy controller. Pointing accuracy is slightly worse but on a real situation the difference would be attenuated by attitude determination and actuation errors. When using brute force stabilisation (restricted actuators), the settling time values still overcome the ones achieved by energy control (for ideal actuators). Pointing accuracy is worsened to a few tenths of degree, which still is enough for most mission scenarios. The major drawback is the amount of consumed power required to attain the mentioned performance. When recovering from an inverted boom configuration the unstabilisation is not as effective as the energy control unstabilisation, which is reflected on the longer settling time (approximately 1.4 orbits longer). Genetic stabilisation has obtained the overall best results, but its computational demands make it prohibitive for on board implementation. Energy based control and brute force stabilization have a similar performance. Energy control requires ideal actuators to achieve its best performance, while brute force stabilisation is not capable of three axis control. Energy consumption is what makes the difference between the two controllers. Brute force stabilisation is far more energy consuming that energy based control and this factor may be critical for small satellites. Sliding mode control 34


Attitude Control Strategies for Small Satellites

could be an option for high precision three axis stabilisation, but energy control achieves the same results without the drawback of local stability.

35


Attitude Control Strategies for Small Satellites

4 Attitude stabilisation and spin control
The attitude stabilisation and spin control algorithms described in this section aim to damp or eliminate de libration movement (align the Orbital CS z axis with the Control CS z axis) and to attain or maintain a desired spin reference. For the simulation and comparison of the different algorithms it is assumed that the attitude can be determined without any error and that it doesn't exist any perturbation influencing the motion of the satellite (ex. solar pressure, aerodynamic drag, etc.).

4.1 PoSAT Control
4.1.1 Description The PoSAT spin control is based on the following simple control law:
c

mx = s

z

k

d cb dt

x

(4.1.1)

where k is a positive constant, c b x is the x axis measured magnetic field after normalisation and s z {- 1,1}. The s z parameter is used to control the spin velocity assuming the value of 1 to increase the spin velocity and the value of ­1 to decrease the spin velocity. This control law only uses the x coil, therefore according to eq. (2.2.2) the applied control torque will be:
c

N

ctrl

= 0 -cm x c B

[

z

c

mx cB

yT

]

(4.1.2)

and to avoid the disturbance caused by the y axis control torque the magnetorquers are only fired when c B z is close to zero or inferior to some threshold ( c B z < Bthreshold ). Due to implementation factors, the magnetorquers are fired only when another condition is also met, c B x is also close to zero, or inferior to the same threshold ( c B x < Bthreshold ). A slightly different control law was implemented on PoSAT and for simulation [Ong] which is:
c

mx = s

z

d cb x c sign dt max( m

x

)

(4.1.3)

where max( c m x ) represents the maximum producible magnetic moment with the x coil. Note that this simple control law only controls the spin velocity and must be conjugated with attitude stabilisation control law (3.1.3) or (3.1.4) to control both the spin and the attitude. 4.1.2 Simulation results As control law (4.1.3) only controls the satellite spin the simulation results presented refer to spin test B only. The value used for Bthreshold was 5 µT and the value of s z was chosen according to: 36


Attitude Control Strategies for Small Satellites

z - 1 c co > 0.02 + threshold s z = c z 1 co < 0.02 - threshold threshold = 0.0005 rad s -1

c

z co settling time (sec)/(orbits)

c

z co accuracy (rad/s) Energy (J)

Test Test Test Test Test Test Test Test Test Test Best

1 2 3 4 5 6 7 8 9 10 case

16590/2.74 19585/3.24 Diverge 12212/2.02 Diverge 13594/2.25 Diverge 20507/3.39 Diverge Diverge 12212/2.02

0.0197 0.0197 Diverge 0.0196 Diverge 0.0196 Diverge 0.0202 Diverge Diverge 0.0197

14245 14205 Diverge 14144 Diverge 14225 Diverge 14161 Diverge Diverge 14205

Table 4.1.1 ­ Simulation results for the PoSAT Control (Restricted Actuators).

80 60 40

0.03

0.025

0.02 20 m x (Am 2) 0 -20 0.005 -40 -60 -80 0 w z (rad/s) 0 2 4 6 8 10 Time (orbit s ) 12 14 16 0.015

0.01

c

-0. 005

0

2

4

6

8 10 Time (orbit s )

12

14

16

Figure 4.1.1 ­ Control magnetic moment evolution for the best case.

Figure 4.1.2 ­ Spin velocity evolution for the best case.

4.1.3 Discussion of results Simulation results show a fair performance for the PoSAT controller although divergence has occurred in half of the simulations. In the best case only after 2.02 orbits the spin has settled to the desired reference, and the evolution from zero spin to the reference seems a little erratic. This difficulty to attain the desired reference may be attributed to the fact that the controller only uses the maximum available magnetic moment. Another interesting effect of this control law is the low energy consumption, as there only a few magnetorquer firings are required to achieve the desired spin. Nevertheless it this controller must be conjugated with control law (3.1.3) or (3.1.4) to damp libration and stabilise the attitude. 37


Attitude Control Strategies for Small Satellites

4.2 Energy based control
4.2.1 Description By observation of control law (3.3.4) it stands out that for spin control the attitude feedback is unwanted, thus only a control law with angular velocities feedback, as (3.3.1), is considered. In order to achieve spin and attitude control through an energy based control, we propose the following control law:
c

m(t ) =h c ro (t )â c B(t )

(4.2.1)

where c ro = c rc + c co is the angular velocity of the satellite in a reference coordinate system with the local vertical and the xy plane coincident with the local vertical and the xy plane of the Control CS, i.e., the reference CS has a spin relative to T the Control CS. The c rc = 0 0 - spin is a constant vector with the spin (z angular velocity) reference. The motivation for proposing this control law is because it was considered that (4.2.1) would make c ro converge to 0, similarly to c co in. (3.3.1). When

[

]

ro = 0 , the desired result is attained, which is c co = 0 0 spin . achieves both spin and attitude control (in the sense that the boom upright position). Although simulation results suggest that this control law is demonstration is still required and will be considered as future work. With ideal actuators the control algorithm implemented uses in chapter 3.3.2 but with the control law (3.3.1) replaced with (4.2.1).
c T

[

]

Note that (4.2.1) converges to an stable, a formal the procedure 1

4.2.2 PoSAT Restricted actuators The changes for the PoSAT actuators presented in chapter 3.3.3 are the same for this case and therefore won't be repeated here.

38


Attitude Control Strategies for Small Satellites

4.2.3 Simulation results The following results were obtained for the Spin test A using the same gains as presented in chapter 3.3.4.
settling time (orbits) Test 1 2.43 Test 2 3.47 Test 3 2.77 Test 4 3.10 Test 5 1.92 Test 6 3.39 Test 7 2.51 Test 8 3.39 Test 9 2.54 Test 10 2.36 Mean 2.79 Std. Dev. 0.5 Worst case 3.47 for 3 orbits (º) 2.43 4.21 2.78 4.00 2.05 4.95 2.42 6.14 3.84 3.40 3.62 1.2 6.14 for 5 orbits (º) 1.87 1.88 1.80 1.82 1.85 1.90 1.84 2.28 2.07 2.05 1.93 0.1 2.28 Pointing accuracy (º) 1.84 1.83 1.82 1.85 1.83 1.82 1.83 1.82 1.83 1.83 1.83 0.01 1.85

Energy (J) 5762.2 4335.4 5102.2 3909.7 5865.6 3658.3 5560.1 3675.6 4586.5 5277.9 4773.4 810.8 5865.6

Table 4.2.1 ­ Simulation results for the Spin test A with ideal actuators
Magnetic moments - Ideal ac t uat ors 70 mx (Am2) 5

60

0

50

-5 0 5 my (Am2) 5 10 15

Gama (º )

40

0

30

-5 20 mz (Am2) 2 0 -2 -4 0 5 Time (orbits ) 10 15

0

5

10

15

10

0

0

5 Time (orbits )

10

15

Figure 4.2.1 - evolution for the worst case inspintest A
Euler angles - Ideal act uators 20 10 Roll (º ) 0 -10 -20 0 40 20 Pit c h (º ) 0 5 10 15

Figure 4.2.2 ­ Magnetic moments for the worst case
x 10
-3

Angular veloc ities - Ideal ac tuators

2 W x (rad/s)

0

-2 2 W y (rad/s)
-3 0 x 10

5

10

15

-30

0

-2 0.022 W z (rad/s) 0.021 0.02 0.019 0 5 Time (orbits ) 10 15

0

5

10

15

-20 -40 -60

0

5 Time (orbits )

10

15

Figure 4.2.3 ­ Pitch and Roll for the worst case in spin test A

Figure 4.2.4 ­ Angular velocities for the worst case

39


Attitude Control Strategies for Small Satellites

settling time (orbits) Test 1 > 15 Test 2 13.46 Test 3 > 15 Test 4 > 15 Test 5 > 15 Test 6 > 15 Test 7 > 15 Test 8 13.27 Test 9 > 15 Test 10 14.41 Mean N.A. Std. Dev. N.A. Worst case 14.41

for 3 orbits (º) 28.80 40.35 37.76 36.14 31.58 43.42 39.77 37.11 34.74 32.76 36.24 4.2 43.42

for 5 orbits (º) 26.08 28.55 30.29 23.27 32.28 36.02 27.84 29.37 31.58 27.22 29.25 3.4 36.02

Pointing accuracy (º) 7.08 3.56 6.89 7.63 6.57 11.30 6.43 3.54 5.94 4.61 6.36 2.14 11.30

Energy (J) 307310.6 310423.0 311155.1 304287.9 306095.9 298483.1 309949.3 309248.6 305091.8 306632.3 306867.8 3565.7 311155.1

Table 4.2.2 ­ Simulation results for the Spin test A with the PoSAT actuators
Magnetic moments - Rest ric ted ac tuators 70 mx (Am2) 50

60

0

50

-50 0 50 my (Am2) 2 4 6 8 10 12 14 16

Gama (º )

40

0

30

-50 20 mz (Am2) 20

0

2

4

6

8

10

12

14

16

10

0

0 0 2 4 6 8 10 Time (orbits ) 12 14 16

-20 0 2 4 6 8 10 Time (orbits ) 12 14 16

Figure 4.2.5 - evolution for the worst case in spin test A
Euler angles - Res tric ted ac t uat ors 100 50 Roll (º ) 0 -50

Figure 4.2.6 ­ Magnetic moments for the worst case in spin test A
x 10
-3

Angular veloc ities - Res tric t ed ac tuators

2 W x (rad/s )

0

-2 2 0 6 4 Pit c h (º ) 2 W z (rad/s ) 0 -2 -4 0 2 4 6 8 10 Time (orbits ) 12 14 16 2 4 6 8 10 12 14 16 W y (rad/s ) -100
-3 0 x 10

2

4

6

8

10

12

14

16

0

-2 0.03 0.025 0.02 0.015

0

2

4

6

8

10

12

14

16

0

2

4

6

8 10 Time (orbit s)

12

14

16

Figure 4.2.7 ­ Pitch and Roll for the worst case in spin test A

Figure 4.2.8 ­ Angular velocities for the worst case in spin test A

40


Attitude Control Strategies for Small Satellites

The results attained for the spin test B are the following:
settling time (sec) 28.95 26.06 28.95 26.06 28.95 28.95 28.95 26.06 26.06 26.06 27.51 1.45 28.95 accuracy (rad/s) 0.0200 0.0200 0.0200 0.0200 0.0200 0.0200 0.0200 0.0200 0.0200 0.0200 0.0200 4.27E-06 0.0200 Energy (J) 4573.0 4641.3 4516.4 4607.1 4570.0 4545.0 4519.8 4581.9 4639.2 4661.5 4585.5 48.3 4661.51

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case

Table 4.2.3 ­ Simulation results for the Spin test B with ideal actuators

Magnetic moments - Ideal ac t uat ors 6 Gama (º ) 4 2 0 0 0.03 W z (rad/s) 0.02 0.01 0 0.0202 W z (rad/s) mz (Am2) 0 5 10 15 my (Am2) 5 10 15 50 mx (Am2) 20 0 -20 -40 0 5 10 15

0

-50 0.2

0

5

10

15

0.02

0

0.0198 0 5 Time (orbits ) 10 15

-0. 2 0 5 Time (orbits ) 10 15

Figure 4.2.9 ­ Gama and Spin for the worst case in spin test B

Figure 4.2.10 ­ Magnetic moments for the worst case in spin test B

41


Attitude Control Strategies for Small Satellites

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case

settling time (sec) 2055.80 1216.11 4386.67 1114.76 2041.28 1838.65 1288.49 506.71 608.05 506.71 1556.32 1098.19 4386.67

accuracy (rad/s) 0.0200 0.0200 0.0200 0.0198 0.0199 0.0199 0.0201 0.0200 0.0201 0.0199 0.0200 0.0001 0.0201

Energy (J) 322135.7 323649.3 322515.2 325966.7 320992.6 320631.0 303634.5 327066.2 325212.1 326650.9 321845.4 6452.1 327066.2

Table 4.2.4 ­ Simulation results for the Spin test B with the PoSAT actuators
Magnetic moments - Rest ric ted ac tuators 6 Gama (º ) 4 2 0 0 0.04 W z (rad/s) my (Am2) 2 4 6 8 10 12 14 16 50 mx (Am2) 50

0

-50 0 2 4 6 8 10 12 14 16

0.02

0

0 0.025 W z (rad/s)

0

2

4

6

8

10

12

14

16 mz (Am2)

-50 20

0

2

4

6

8

10

12

14

16

0.02

0

0.015 0 2 4 6 8 10 Time (orbits ) 12 14 16

-20 0 2 4 6 8 10 Time (orbits ) 12 14 16

Figure 4.2.11 ­ Gama and spin for the worst case in spin test B

Figure 4.2.12 ­ Magnetic moments for the worst case in spin test B

4.2.4 Discussion of results The results attained (for the ideal actuators) prove that this algorithm has very good spin control capabilities, spinning up or down, as it is a control based on angular velocities. The average values for the settling time are even better than for the case of chapter 3.3. Although its pointing accuracy isn't as good as the referenced case, values of 1.8º are more than enough for most mission phases. For the PoSAT actuators, although the mean values follow the reference spin, the algorithm presents variations on the spin values of as much as 25%. The libration damping results are poorer than the ones in chapter 3.3 because the algorithm makes a bigger effort on controlling the spin than on libration damping, as can be seen on figures 4.2.6 and 4.2.12. The average pointing accuracy obtained with longer simulations is around 5º which is still a reasonable value for much mission phases.

42


Attitude Control Strategies for Small Satellites

4.3 Fuzzy logic control
4.3.1 Description The implemented algorithm is inspired in the work of [Steyn], and it was motivated by the simplicity that fuzzy logic control exhibits when implementing nonlinear controllers based on a set of intuitive rules. The controller is composed by three MISO controllers, one for each coil, and each controller computes the best magnetic moment given the current angular velocity and the attainable torque (computed using the current geomagnetic field through eq. (2.2.2)) values. The highest of the three values is then chosen to be used by the satellite. The variables used by the three MISO controllers are: Input Variables x1 x x x x x
2 3 4 5 6

Corresponding Value c x co
c x k ( c co - c c c



y co

spin

)

N N N

x ctrl y ctrl z ctrl

Table 4.3.1 ­ Input variables for the controller.

The membership functions used are only of three different kinds: P (Positive), N (Negative) and Z (Zero) see fig. 4.3.1.

Figure 4.3.1 ­ Membership functions for xi, i=1..5 and x6.

The rules used in the controller (table 4.3.2) are the ones proposed by [Steyn] and represent intuitive control actions, for example rule 2 states that: x x x If c co is positive and c N ctrl is negative ( c N ctrl negative will tend do damp
x z co ) and c N ctrl is zero ( c N spin velocity) then act. c z ctrl

zero means that there will be no disturbance on the

43


Attitude Control Strategies for Small Satellites

x4 P N P N c x Table 4.3.2 ­ Rules for the m and Rule R1 R2 R3 R4 R5 R6 R7 R8 x1 P P N N x2 P P N N x4 P N P N -

Rule R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12

x1 P P N N -

x2 P P N N -

x3 P P N N

x5 x6 u Z -1 Z +1 Z +1 Z -1 P Z -1 N Z +1 P Z +1 N Z -1 P -1 N +1 P +1 N -1 c y m controllers.

x5 u -1 +1 +1 -1 P -1 N +1 P +1 N -1 c z Table 4.3.3 ­ Rules for the m controller. As stated in [Steyn] work, the rules evaluation is performed using correlationproduct, for example for rule 2: R2 : µ 2 = m P (x1 ) m
N

(x4 )

m Z (x

6

)

(4.3.1)

where mi are the membership functions, the truth value obtained is then used to scale the output: R2 : y 2 = µ2 u (4.3.2)

when the result of all the rules is known the final value is obtained by disjunctively (OR) combining the rules values: y = (y i ) = sgn


i =1

N

y i min1,


i =1

N

yi

(4.3.3)

Stability considerations will not be given here but the reader may consult [Steyn] work for further details.

44


Attitude Control Strategies for Small Satellites

This controller was developed considering the constraint of acting on each coil separately, so for this controller the ideal actuator is the one that is able to produce any magnetic moment for a single coil in specified range. The range considered was the PoSAT range, see section 3.1.1 for further details on PoSAT actuators restrictions. 4.3.2 PoSAT Restricted actuators The approach to implement the already described fuzzy logic controller using restricted actuators was to discretise the magnetic moment values. A discretising function should map the ideal magnetic moments to the available ones as the controller already acts on a single coil at each actuation moment. The developed discretisation d ( c m ) function takes the following form: 0 i A i c d( m ) i B C c i d ( m ) = - d (- 0 c m i < 1i 1i c m i < i 2 cmi < i 3 cmi m
i i 2 i 3

i c

)

i = x, y , z

(4

.3.4

)
i 3

i where Ai , B i and C i are the PoSAT available magnetic moments and 1i , 2 and

i are the threshold values for the discretisation function. Numerical values for 1i , 2 i and 3 were found but the attained results were not encouraging so no further study was performed for restricted actuators.

4.3.3 Simulation results The numerical values for the membership functions, empirically found through simulation, are: a 0.03 0.03 0.04 2.5e-3 2.5e-3 5e-3 b 0.001 0.001 0.003 0.7e-3 0.7e-3 1e-3 c not used not used not used not used not used 1.2e-3

x x x x x x

1 2 3 4 5 6

Table 4.3.4 ­ Numerical values for the membership functions.

45


Attitude Control Strategies for Small Satellites

For the spin test A the following results were obtained:
settling time (orbits) > 15 orbits > 15 orbits > 15 orbits > 15 orbits > 15 orbits > 15 orbits > 15 orbits > 15 orbits > 15 orbits > 15 orbits > 15 orbits -> 15 orbits for 3 orbits for 5 orbits Pointing accuracy (º) (º) (º) 20 15 10.0 25 12 9.2 19 14 9.3 20 9 10.0 20 15 10.1 25 20 11.0 20 16 10.1 28 14 10.3 12 8 10.1 16 9 10.1 20.5 13.2 10 4.6 3.7 0.5 28 14 10.3 Energy (J) 16076 15915 16461 16157 16097 16071 16514 15919 16229 16070 16151 201 15919

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case

Table 4.3.5 ­ Simulation results for Fuzzy logic Control (Spin test A).

For the spin test B the results on table 4.3.6 were found through simulation.
c z co settling time (sec) c z co accuracy (rad/s)

Energy (J) 14245 14205 14231 14144 14250 14225 14240 14161 14171 14109

T T T T T T T T T T

est est est est est est est est est est

1 2 3 4 5 6 7 8 9 10

230 230 230 230 230 230 230 230 230 230

0.0198 0.0198 0.0198 0.0198 0.0198 0.0198 0.0198 0.0198 0.0198 0.0198

Table 4.3.6 ­ Simulation results for Fuzzy logic Control (Spin test B).

46


Attitude Control Strategies for Small Satellites

5 mx (Am2)
c

0

-5 5 my (Am2)

0

2

4

6

8 10 Time (orbits )

12

14

16

60

50

0
Gamma (º )

40

c

-5 2 mz (Am2) 0

0

2

4

6

8 10 Time (orbits )

12

14

16

30

20

10

c

-2 -4
0

0

2

4

6

8 10 Time (orbits )

12

14

16

0

2

4

6

8 10 Time (orbit s)

12

14

16

Figure 4.3.2 ­ Magnetic moment evolution for worst case spin test A.

Figure 4.3.3 - evolution for worst case spin test A.

2 wx (º )

x 10

-3

0
40

-2 2 wy (º )

Roll (º )

0 2 -3 x 10

4

6

8 10 Time (orbits)

12

14

16

20 0 -20 -40

0

0

2

4

6

-2 0. 022 wz (º ) 0. 021 0. 02 0. 019

8 10 Time (orbit s)

12

14

16

0

2

4

6

8 10 Time (orbits)

12

14

16

60 40 Pit c h (º ) 20 0 -20

0

2

4

6

8 10 Time (orbits)

12

14

16

-40

0

2

4

6

8 10 Time (orbit s)

12

14

16

Figure 4.3.4 ­

c

co evolution for worst

Figure 4.3.5 ­ Pitch and Roll angles (123) evolution for worst case spin test A.

case spin test A.

47


Attitude Control Strategies for Small Satellites

50 Roll (º )

0

-50 50 Pitch (º )

0

2

4

6

8 10 Time (orbits )

12

14

16

60

50

0
40

-50 0.022 wz (rad/s )

0

2

4

6

8 10 Time (orbits )

12

14

16

Gamma (º )

30

20

0.02
10

0.018

0

2

4

6

8 10 Time (orbits )

12

14

16

0 0 2 4 6 8 10 Time (orbit s) 12 14 16

Figure 4.3.6 ­ Roll, Pitch (123) and spin for spin test A using restricted actuators.

Figure 4.3.7 ­ evolution for spin test A using restricted actuators.

4.3.4 Discussion of results Simulation results show that although this controller is very effective in controlling the spin velocity, its performance relative to libration damping is rather poor. The controller was not capable of restricting within 5º during 15 orbits although that is not very clear from fig. 4.3.3. Longer simulations revealed that oscillates between 3.8º and 10º. This deficient capability to effectively damp the libration movement does not guarantee enough robustness to external torques or satellite malfunctions, which may (in extreme situations) turn the satellite to an inverted boom configuration. The reduced damping capability is a direct consequence of the small control moments demanded by the controller as can be seen in fig. 4.3.2, which also cause low energy consumption. However, in the long turn the consumed energy will increase considerably as the controller is continuously actuating, trying to attain the desired reference. The lack of controller efficiency can not be fully attributed to the controller architecture once an important factor that contributes to the controller performance is the definition of the membership functions. As it is known, there is no systematic procedure to define fuzzy logic controller parameters, so empirical knowledge and physical insight of the problem must be used to overcome this difficulty. This same controller architecture with different membership functions might produce better results. However these different membership functions could not be found after several rehearsals and simulations. From the attained results using restricted actuators (figs. 4.3.6 and 4.3.7) it is clear that the used approach was not the most effective one. The value stayed above 20º after 15 orbits and the spin oscillates between 0.02 rad s -1 and 0.019 rad s -1 . Instead of trying to map the ideal solutions to the available set a different approach would be to include the knowledge of the available magnetic moments into the controller architecture in order to make the best use of the existing actuators. This approach seems to be a valid one for further research. 48


Attitude Control Strategies for Small Satellites

4.4 Predictive control
4.4.1 Description This controller is similar to the one described at section 3.4 except for the cost function used here, meant to achieve the desired spin. The cost function used was: J=
c

1c T ref 2
c



c



ref



ref

= co - 0 0

[

spin

] =[
T

c



x co

c



y co

c

-
z co

spin

]

(4.3.1)

T

where spin is the desired reference for the spin velocity. As ref = co , global uniform asymptotical stability is also guaranteed as shown at section 3.4.3. Once this control algorithm is the same as the one described at section 3.4 except for the already mentioned differences, only simulation results will be presented. 4.4.2 Simulation results Simulation results are presented for brute force control using for the gain matrix the identity matrix. Genetic control was not deeply studied because interesting results could only be achieved using population size and number of generations grater than 20, and this would rise the computational cost so high that genetic control is no longer an option. This is due to the spin imposed by the controller causes the geomagnetic field to change very fast, so more evolutions of the algorithm are required to find a good solution.
settling time (orbits) 3.05 3.35 3.32 2.82 2.94 3.44 3.27 3.36 2.66 2.57 3.08 0.32 3.36 for 3 orbits for 5 orbits Pointing accuracy (º) (º) (º) 9 1.9 1.9 11.4 1.9 2.3 8.1 2.0 2.4 4.7 1.9 1.9 4.7 1.9 1.9 8.9 1.8 1.9 6.3 1.9 1.9 7.4 1.9 2.0 3.7 1.9 1.9 2.1 1.9 2.0 6.6 1.9 2.0 2.9 0.04 0.19 11.4 2.0 2.4 Energy (J) 552700 597455 573935 498495 479748 599546 528900 560202 446512 479677 531717 53476 597455





Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Mean Std. Dev. Worst case

Table 4.4.1 ­ Simulation results for Predictive stabilisation (Spin test A).

49


Attitude Control Strategies for Small Satellites

c



z co

settling time

c



z co

accuracy Energy (J) 173970 109521 147438 97995 166526 121682 151182 94383 148781 103432 173970

Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Worst case

(sec) 691 460 1152 461 461 1152 461 461 461 1152 1152

(rad/s) 0.0196 0.0200 0.0200 0.0200 0.0201 0.0201 0.0202 0.0199 0.0197 0.0200 0.0197

Table 4.4.2 ­ Simulation results for Predictive stabilisation (Spin test B).

0. 5
60

q1

0
50

-0. 5
Gamma (º )

40

0 0. 5

2

4

6

8 10 Time (orbit s )

12

14

16

30

20

q2

0
10

-0. 5

0

2

4

6

8 10 Time (orbit s )

12

14

16

0 0 2 4 6 8 10 Time (orbit s ) 12 14 16

Figure 4.4.1 ­ q1 and q2 conponents of attitude quaternion for wost case in spin test A.

Figure 4.4.2 - evolution for worst case in spin test A.

50


Attitude Control Strategies for Small Satellites

50 mx (Am2)
c

0
0. 025

-50 50 my (Am2)

0

2

4

6

wz (rad/s)

8 10 Time (orbits )

12

14

16

0. 02 0. 015 0. 01 0. 005 0 0 2 4 6 8 10 Time (orbit s ) 12 14 16

0

c

-50 50 mz (Am2)

0

2

4

6

8 10 Time (orbits )

12

14

16

0. 0205

wz (rad/s)

0. 02

0

c

-50

0. 0195

0

2

4

6

8 10 Time (orbits )

12

14

16

0

2

4

6

8 10 Time (orbit s )

12

14

16

Figure 4.4.3 - Magnetic moment for worst case in spin test B.

Figure 4.4.4 ­

c

z co evolution for spin test B.

4.4.3 Discussion of results Brute force control has once again attained excellent results. After only five orbits the libration was already damped to a value of 2º which were in most cases the final value guaranteed by the controller. The spin control capabilities are also very interesting, in less then 19.2 minutes or 12 actuations the spin had already settled to a vicinity of 0.001 rad s -1 of the desired reference for spin and an accuracy of 0.0197 rad s -1 is guaranteed. The consumed energy is once again almost constant through the different test situations, but its value is extremely large when compared with energy based control. This kind of control, using a small set of possible magnetic moments, is not capable of guaranteeing a value of 0º as can be seen in figs. 4.4.1 and 4.4.2. Once again more this is due to the lack of available moments for producing a finer control. The excellent results attained using a small set of possible values for the magnetic moments and the high computational costs associated with a minimisation algorithm (genetic or a more classic one) suggests the use of time varying brute force control for unrestricted actuators. A future direction of research could be the development of a brute force controller with a time varying set of available moments, so that for each situation the appropriated control could be found. More insight on this idea will be given at section 5.2.

4.5 Overall comparison of results
PoSAT's spin controller results are very poor when compared with the other controllers, the simple control law used is not able of achieving the desired reference in less that 2 orbits and in half of the simulations the algorithm has diverged. Once more PoSAT controller cannot be used as a reference to guide the overall comparison as was first envisaged. Energy based control results show that this controller is very efficient, achieves 5º in less then 3.5 orbits and the desired spin is achieved in less than 29 sec. 51


Attitude Control Strategies for Small Satellites

When the actuation is restricted the results degrade considerably: stabilisation within 5º is not achieved in 15 orbits for most of the simulations; the spin reference is achieved only after 4387 sec. despite of the good accuracy of the spin reference. Fuzzy logic controller results are not much better than energy control when restricted actuators are employed. Stabilisation within 5º is not achieved during the first 15 orbits but the spin reference only takes 230 sec. to be achieved. These results are not so poor as they seem since this fuzzy logic controller only acts on a single coil at each actuation instant. When using predictive control (brute force) the results are very similar to energy based control (ideal actuators). The settling time is slightly inferior (3.36 orbits) but the spin reference settling time is somewhat longer. Also pointing accuracy is a little smaller - only 2.4º can be guaranteed by this controller. These are very good results when considering the actuator limitations. Energy based control and brute force control have clearly produced better simulation results than the other controllers. However these last two are very similar: brute force control has a smaller settling time for , but produces a lower pointing accuracy and achieves the desired spin after longer time. Once again the fundamental factor in this comparison is the lower energy consumption evidenced by energy based control. Clearly these two algorithms were developed considering different actuators but given the similar results both could be used with ideal actuators. For PoSAT like restricted actuators there is no other possible comparison between brute force control and any other studied control algorithm.

52


Attitude Control Strategies for Small Satellites

5 Conclusions
5.1 Conclusions
Several control algorithms were successfully implemented and simulated. Different approaches were employed to solve a difficult problem, which poses interesting theoretical considerations since the satellite is not fully controllable due to the nature of magnetic actuation. If PoSAT like actuators are considered the challenge is even greater, but some interesting solutions have been found. The proposed solution (predictive stabilisation) has proven to be superior to the other control algorithms according to some of the performance criteria. In fact brute force control, which was developed for PoSAT like restricted actuators, has produced better results than most of the other control algorithms developed for ideal actuators. Stability has been proven and an algorithm for global stability was developed. Simulation results show that this type of control is a valid alternative to the controllers proposed in the literature and can be used to stabilise and control the spin of a small satellite using only magnetic actuation.

5.2 Future work and directions
During the course of this work several ideas have shown up, but for lack of time they weren't properly developed and studied. Some of those ideas are now proposed as future work and research directions. Generally when using PoSAT like restricted actuators one different approach is proposed to overcome the difficulty of having a small set of available moments. Instead of using a magnetic moment perpendicular to the geomagnetic field, as expected, a magnetic moment which has a component perpendicular to the geomagnetic field of smaller amplitude is used to produce a smaller torque and this way achieving a precise control. Predictive stabilisation, more specifically brute force stabilisation is not able to accurately control the satellite when on a small neighbourhood of the reference. This is a direct consequence of the small set of available moments. An interesting approach is to use brute force stabilisation with ideal actuators but using a non-stationary set of available moments. If for example the available control moments were proportional to the angular velocity the controller would use large control moments to dissipate large angular velocities and small control moments when the satellite will lie near the reference (small angular velocities). If this time varying set of moments would always be perpendicular to the geomagnetic field, the energetic requirements could be reduced to the levels evidenced by energy based control. Attitude feedback could also be used with predictive stabilisation to try ensuring three axis stabilisation. Some of these ideas provide interesting directions for further research and may contribute for better solutions for attitude stabilisation and control of small satellites using only magnetic actuation.

53


Attitude Control Strategies for Small Satellites

6 Bibliography
· · · Alonso Marcelo, Finn Edward J., "FÌsica ­ Um curso universitÀrio Volume II ­ Campos e Ondas" ,Editora Edgard Blucher, SÖo Paulo, Brasil, 1981. Chobotov Vladimir A, "Spacecraft Attitude Dynamics and Control", ORBIT ­ A foundation Series. Gligic Vladimir, "An Advanced Algorithm Aimed to Improve Stability and Orientation of Small Satellites in Orbit Through Strictly Controlled Interaction with Geomagnetic Field", Universidade da Beira Interior, CovilhÖ, Portugal. Goldberg D, "Genetic Algorithms in search, Optimisation and Machine Learning", Addison-Wesley, 1989. Hodgart M. S., Wright P. S., "Attitude determination, control and stabilisation of UoSAT-2", Journal of the Institution of Electronic and Radio Engineers, Vol. 57, nº 5 (Supplement), September/October, 1987 Hoots Felix R., Roehrich Ronald L., "SPACETRACK REPORT N.º3 ­ Models for propagation of NORAD Element Sets", December 1980. Lee Chuen Chien, "Fuzzy Logic in Control Systems: Fuzzy Logic Controller ­ part 1", IEEE, Transactions on systems, man and cybernetics, Vol. 20, nº 2 March/April, 1990. Ong Wah Thye, "Attitude Determination and Control of Low Earth Orbit Satellites", MSc. Thesis, Dept. of Electronic and Electrical Engineering, University of Surrey, 1992. Sidi Marcel J, "Spacecraft Dynamics and Control - A practical engineering approach", Cambridge Aerospace Series, 1997. Slotine Jean-Jacques E, Li Weiping, "Applied Nonlinear Control", Prentice-Hall. Sousa Bruno, "Simulador da DinÁmica de Atitude de Micro-SatÈlites", TFC, DEEC, Instituto Superior TÈcnico, 1995. Steyn Willem H., "Comparison of Low-Earth-Orbit Satellite Attitude Controllers Submited to Controllability Constraints", Journal of Guidance, Control, and Dynamics, Vol. 17, nº 4, July-August, 1994. Thomson William T, "Introduction to Space Dynamics", Dover Publications, 1986. Wertz James R, "Spacecraft attitude determination and control", Kluwer Academic Publishers, 1995. Wiesel William E, "Spaceflight Dynamics", McGraw-Hill, 1989. Wisniewski Rafal, "Satellite Attitude control using only Electromagnetic Actuation", Ph.D. Thesis, Dept. of Control Engineering, Aalborg University, December 1996.

· ·

· ·

·

· · · ·

· · · ·

54


Attitude Control Strategies for Small Satellites

Appendix A ­ Attitude simulator and orbit model
Simulator
The results presented in this report were obtained with a simulator that implements the dynamics and kinematics of a satellite. This simulator was the result of the last year's final course project of an Aerospace Engineering student [Sousa]. In addition to the existing simulator we improved some of its features, such as the interface that was completely altered to make the results attained immediately accessible to the user, the geomagnetic field model that was upgraded from an 8th order spherical model to an 15th order model. And finally the orbit model where we implemented the commonly used orbit propagator SGP4. A more complete description of this model is described in the next chapter.

Orbit model
Introduction USSPACECOM, former NORAD, maintains general perturbation element sets on all resident space objects. These element sets are periodically refined so as to maintain a reasonable prediction capability on all space objects. In turn, these element sets are provided to users. The most important point to be noted is that not just any prediction model will suffice. The USSPACECOM element sets are "mean" values obtained by removing periodic variations in a particular way. In order to obtain good predictions, these periodic variations must be reconstructed (by the prediction model) in exactly the same way they were removed by USSPACECOM. Hence, inputting USSPACECOM element sets into a different model (even though the model may be more accurate or even a numerical integrator) would result in degraded predictions. All space objects are classified by USSPACECOM as near-Earth (period less than 225 minutes) or deep-space (period greater than or equal 225 minutes). Depending on the period, the USSPACECOM element sets are automatically generated with the near-Earth or deep-space model. We can then calculate the satellite period and know which prediction model to use. The propagation models Five mathematical models for prediction of satellite position and velocity are available. The first of these, SGP, was developed by Hilton & Kuhlman (1966) and is used for near-Earth satellites. This model uses a simplification of the work of Kozai (1959) for its gravitational model and it takes the drag effect on mean motion as linear in time. This assumption dictates a quadratic variation of mean anomaly with time. The drag effect on eccentricity is modeled in such a way that perigee height remains constant. The second model, SGP4, was developed by Ken Cranford in 1970 (see Lane and Hoots 1979) and is used for near-Earth satellites. This model was obtained by simplification of the more extensive analytical theory of Lane and Cranford (1969) which uses the solution of Brouwer (1959) for its gravitational model and a power density function for its atmospheric model (see Lane, et al. 1962). 55


Attitude Control Strategies for Small Satellites

The next model, SDP4, is an extension of SGP4 to be used for deep-space satellites. The deep-space equations were developed by Hujsak (1979) and model the gravitational effects of the moon and sun as well as certain sectoral and tesseral Earth harmonics which are of particular importance for half day and one-day period orbits. The SGP8 model (see Hoots 1980) is used for near-Earth satellites and is obtained by simplification of an extensive analytical theory of Hoots which uses the same gravitational and atmospheric models as Lane and Cranford did, but integrates the differential equations in a much different manner. Finally, the SDP8 model is an extension of SGP8 to be used for deep-space satellites. The deep-space effects are modelled in SDP8 with the same equations used in SDP4. The USSPACECOM two line element sets are currently generated with either SGP4 or SDP4 depending on whether the satellite is near-Earth or deep-space. As the satellite's simulator used in this work is intended for the study of micro-satellites, and these are mainly near-Earth satellites, we have only implemented the SGP4 near Earth-model. More information on the different models and their implementation is available on [Hoots and Roehrich]. At the present time consideration is being given to replacing SGP4 and SDP4 by SGP8 and SDP8 as the USSPACECOM satellite models. In such a case the new USSPACECOM element sets would still give compatible predictions for SGP, SGP4, and SDP4 users and, for SGP8 and SDP8 users, would give agreement with USSPACECOM predictions.

56


Attitude Control Strategies for Small Satellites

Appendix B ­ Simulation's initial conditions
As the model implemented for the orbit propagation uses a date to set the initial conditions for the orbit, random values for initial orbit positions for 10 orbits were obtained from an interval of 24 hours. This interval was chosen because it is the time needed for the orbit plane to pass in the initial Earth position. Also initial values for the Roll attitude were randomly obtained from an interval of 0º to 360º, whereas the initial values for pitch are defined for each simulation test. Year -1997 Month - 1 Orbits Hours Minutes Seconds Roll 1 1 23 21.8 301.7 2 8 28 7.8 7.0 3 19 30 57.6 245.3 4 0 14 12.0 136.6 5 3 20 0.2 299.5 6 4 51 58.9 181.0 7 4 46 9.6 255.4 8 14 29 27.7 154.4 9 6 31 57.0 109.7 10 4 46 17.6 68.3

Some statistical operators are applied to the results attained through simulation. The resulting values are not intend to have any statistical meaning, since there are no random variables involved, instead they are used to allow a faster and simple analysis of the simulation results. For simulation purposes two different mission phases were considered: · · Nominal Operation ­ Where the satellite already has its boom deployed in an upright position but is experiencing a libration movement, and has some residual spin from the launch. Inverted-boom Operation ­ Where the satellite already has its boom deployed but as a result of a strong disturbance torque or from the tumbling movement his boom is upside-down.

For the Nominal Operation phase two different kinds of control are required: attitude stabilisation and spin control. Attitude stabilisation is required after boom deployment to eliminate the libration movement and any spin that may exist due to launching. In order to simulate the attitude stabilisation controllers the following worst case scenario was considered: the launch spin velocity was not dissipated prior to boom deployment, and the libration movement has the maximum allowed amplitude for boom deployment. This can be summarised by the following conditions: Stability Test Initial condition
c

co = [0 0 0.0625] rad s
T

-1

= 60º

57


Attitude Control Strategies for Small Satellites

Desired reference
c



co

= [0 0 0] rad s
T

-1

= 0º where is the angle between the z axis of the Control CS and the z axis of the Orbital CS, = º means that the boom will lie on a cone which makes º with the z axis of the Orbital CS. The angular velocity was obtained from [Technical Report] and the value from [Hogdart]. Spin control is required for thermal reasons, the solar panels cannot be exposed to solar radiation for long time, so spin velocity must be kept around 0.018 rad s -1 (as explained in PoSAT technical documentation), in view of this a spin value of 0.02 rad s -1 was chosen for simulation. Two different kinds of simulations are required to determine the controllers performance w.r.t. two different criteria's: the capacity to damp or eliminate libration and the capacity to attain the desired spin reference. For the first performance criterion test the following initial conditions were used: Spin Test A Initial condition
c



co

= [0 0 0.02

]T

rad s

-1

= 60º Desired reference
c



co

= [0 0 0.02

]T

rad s

-1

= 0º To test the spin control capabilities the following initial conditions were used: Spin Test B Initial condition
c



co

= [0 0 0] rad s
T

-1

= 5º Desired reference
c



co

= [0 0 0.02

]T

rad s

-1

= 0º The value of = 5º, for the initial condition, was used because in practise the controller will begin its actuation when the satellite will have an attitude such that < 5º , once = 0º is very difficult or even impossible to achieve in real situations.

58


Attitude Control Strategies for Small Satellites

For the Inverted-boom phase the following worst case conditions were considered: Inverted-boom test Initial condition
c



co

= [0 0 0] rad s
T

-1

= 180º Desired reference
c



co

= [0 0 0] rad s
T

-1

= 0º

59


Attitude Control Strategies for Small Satellites

Appendix C ­ Controllers performance criteria
In order to evaluate the performance of the controllers we first need to define the following concepts: · Settling time, the time it takes the system transients to decay. · Pointing accuracy, the minimum guaranteed by the system in the worst case, after all the transients have decayed. · Spin accuracy, the worst case guaranteed spin by the controller. · Energy consumption, the electrical energy used to control the satellite. · Flops, Floating point operations. The power dissipated by a current i on a resistor r is given by P = ri 2 and the magnetic moment is obtained from (2.2.3). Assuming that PoSAT values are the same as UoSat-5 values [Ong] we have: x and y coil area: z x x z coil area: ,y and z coils resistance: and y coil turns: coil turns: 0.5 â 0.3 m 2 0.28 â 0.2 m 50 100 170

2

Integrating the dissipated power during the actuation time, we have the following formula to calculate the dissipated electrical energy:
x y E el = E el + Eel + E x E el = z el

50 (c m x ())2 dt t 2 (100 0.5 0.3) 50 y (c m y ())2 dt E el = t 2 (100 0.5 0.3) 50 z (c m z ())2 dt E el = t 2 (170 0.28 0.2) For the Stability Test and the Spin Test A the settling time is measured until enters a vicinity of 5º around the reference of 0º. z z For the Spin Test B the c co settling time is measured until c co enters a vicinity of 0.0005 rad s
-1

of the desired reference.

60


Attitude Control Strategies for Small Satellites

Appendix D ­ PoSAT like actuator restrictions
PoSAT-1 as other satellites of the UoSAT class has reduced control capabilities due to the restricted nature of its actuators. Satellite design factors have restricted the values of icoil (2.2.3) to only three different values of positive/negative polarity. Conjugating this restriction with the single-coil-actuation the available set of magnetic moments is reduced to only 18 different values (6 for the x coils, 6 for the y coils and 6 for the z coils). Power consumption is another serious restriction, which reflects on PoSAT actuation capabilities. For each actuation on a coil there must be at least a back-off time of 100 sec. to recharge the power supplies. This means that the actuators have at most a duty cycle of 3%, since the maximum actuation time is only 3 seconds. The PoSAT reduced control capabilities transform the attitude stabilisation and spin control problem specially difficult since many of the solutions available in literature are not directly applicable.

61