Download Attitude and Orbit Control for small satellites

Document related concepts

Error analysis for the Global Positioning System wikipedia , lookup

Spaceplane wikipedia , lookup

StarTram wikipedia , lookup

Gravity assist wikipedia , lookup

Single-stage-to-orbit wikipedia , lookup

Orbital mechanics wikipedia , lookup

Saturn (rocket family) wikipedia , lookup

Non-rocket spacelaunch wikipedia , lookup

Orbit wikipedia , lookup

Polar Satellite Launch Vehicle wikipedia , lookup

Flight dynamics (spacecraft) wikipedia , lookup

Transit (satellite) wikipedia , lookup

CanSat wikipedia , lookup

Anti-satellite weapon wikipedia , lookup

Attitude control wikipedia , lookup

Satellite wikipedia , lookup

Transcript
Attitude and Orbit Control for Small
Satellites
Examensarbete utfort i Reglerteknik
vid Tekniska Hogskolan i Linkoping
av
Jonas Elfving
Reg nr: LiTH-ISY-EX-3295-2003
Linkoping 2002
Attitude and Orbit Control for Small
Satellites
Examensarbete utfort i Reglerteknik
vid Tekniska Hogskolan i Linkoping
av
Jonas Elfving
Reg nr: LiTH-ISY-EX-3295-2003
Supervisors: Albert Thuswaldner
Jonas Elbornsson
Examiner: Anders Helmersson
Linkoping 28th October 2002.
Avdelning, Institution
Division, Department
Datum
Date
2002-11-14
Institutionen för Systemteknik
581 83 LINKÖPING
Språk
Language
Svenska/Swedish
X Engelska/English
Rapporttyp
Report category
Licentiatavhandling
X Examensarbete
C-uppsats
D-uppsats
ISBN
ISRN LITH-ISY-EX-3295-2003
Serietitel och serienummer
Title of series, numbering
ISSN
Övrig rapport
____
URL för elektronisk version
http://www.ep.liu.se/exjobb/isy/2003/3295/
Titel
Title
Attityd och banstyrning för små satelliter
Attitude and Orbit Control for Small Satellites
Författare
Author
Jonas Elfving
Sammanfattning
Abstract
A satellite in orbit about a planet needs some means of attitude control in order to, for instance, get
as much sun into its solar-panels as possible. It is easy to understand that, for example, a spy
satellite has to point at a certain direction without the slightest trembling to get a photo of a certain
point on the earth. This type of mission must not exceed an error in attitude of more then about
1/3600 degrees. But, since high accuracy equals high cost, it is also easy to understand why a
research satellite measuring solar particles (or radiation) in space does not need high accuracy at
all. A research vessel of this sort can probably do with less accuracy then 1 degree.
The first part of this report tries to explain some major aspects of satellite space-flight. It continues
to focus on the market for small satellites, i.e. satellites weighing less than 500 kg.
The second part of this final thesis work deals with the development of a program that simulates
the movement of a satellite about a large celestial body. The program, called AOSP, consists of
user-definable packages. Sensors and estimation filters are used to predict the satellites current
position, velocity, attitude and angular velocity. The purpose of the program, which is written in
MATLAB, is to easily determine the pointing accuracy of a satellite when using different sensors
and actuators.
Nyckelord
Keyword
satellites, attitude, orbit, control, Kalman estimation filters, quaternions, stabilization, pointing
accuracy
Abstract
A satellite in orbit about a planet needs some means of attitude control in order
to, for instance, get as much sun into its solar-panels as possible. The mission of
the satellite may be another reason for both attitude and orbit control. It is easy
to understand that, for example, a spy satellite has to point at a certain direction
without the slightest trembling to get a photo of a certain point on the earth.
This
1 Æ . But,
type of mission must not exceed an error in attitude of more then 3600
since high accuracy equals high cost, it is also easy to understand why a research
satellite measuring solar particles (or radiation) in space does not need high accuracy at all. A research vessel of this sort can probably do with less accuracy
then 1Æ.
The rst part of this report tries to explain some major aspects of satellite spaceight. It continues to focus on the market for satellites, weighing less than 500 kg.
The second part of this nal thesis work deals with the development of a program
that simulates the movement of a satellite about a large celestial body. The program, called AOSP, consists of user-denable packages. The user can dene data,
such as satellite constants and attitude preferences, to simulate the attitude in orbit. Sensors and estimation lters are used to predict the satellites current position,
velocity, attitude and angular velocity. The purpose of the program, which is written in MATLAB, is to easily determine the pointing accuracy of a satellite when
using dierent sensors and actuators so that a craft does not get too expensive nor
too less accurate.
MATLAB 6 Release 13 issues are also briey discussed at the end of this document.
Keywords: satellite, attitude, orbit, control, Kalman estimation lters, quaternions, stabilization, pointing accuracy, MATLAB
i
ii
Acknowledgment
I would start to direct a warm thank you to the persons below, since this nal
thesis work could not have been completed without their help and aid.
Par Degerman { who helped me with the layout of the report as well as assisted
me with the syntax LATEX, in which this nal thesis work is written.
Anders Helmersson { apart from being the examiner of this work, Anders has
also aided me in several other ways, including the quaternion representation and
pure technical support on emacs and LATEXhandling. I have seen him as a last
resort when in need of help.
Albert Thuswaldner { for his assiduously read-through of my report, making
sure that everything in it is well written. Also, he has been, in opposite to Anders
above, my rst resort, when in need of help. Many of the things would not have
been inside this report without Albert pointing out for me that it should.
Jonas Elbornsson { my supervisor at Linkoping Institute of Technology has
helped me with both the report and the program. Mostly, he helped with my
English language, but he has also put some perspective to the actual work and
assisted me with some control issues.
Apart from the mentioned people above, all of whom I owe large gratitude to,
the whole sta at Saab Ericsson Space in Linkoping, and especially my boss JanOlof Hjartstrom, have my sincerest thanks for taking care of we the last 7 months.
Lastly, I must thank my girl-friend Anna Lennarthsson for her mental support.
Once again. Thank you all!
iii
iv
Notation
There are substantial dierences between notations in dierent textbooks. The
ones chosen in this text are stated below. Observe that a few denitions also
can be found in the appendices, such as the denition of the Vernal Equinox in
Appendix C, for instance.
Vectors and Matrices
Boldface letters are used for vectors and matrices.
The boldfaced letter q are specially reserved for Quaternions.
N
Number of samples used for parameter estimation.
Parameter vector.
y^ (tj ) Predictor.
1
Identity matrix.
I
Moment of inertia tensor.
x; X
q
Standard symbols
The letter \t " in all forms are used for time or time intervals, except for the
superscript T , that is used to indicate the transpose matrix.
v
Orbital elements:
Semi major axis.
Eccentricity.
Inclination.
Argument of perigee.
Right ascension for the ascending node.
P Orbit period.
a
e
i
!
Vectors:
L Angular momentum.
F Torque.
A Attitude vector.
x m -dimensional state vector.
y n -dimensional observation vector.
Astronomical Symbols:
Earth.
Sun.
Vernal Equinox.
L
J
Constants
G
Planetary gravitational constant (also known as GM).
Universal Gravity constant (Given by Newton).
Standard notations
0
rf (x)
@f
@x
B @f1
B @x2
B
The nabla operator describing the function B ..
@ .
@f
@xn
1
C
C
C
C
A
Subset.
Function with the property that O(n)=n is bounded as n ! 1.
E [nnT ] the expectation value where n is any vector or matrix.
Quaternion multiplication.
R
Denotes the radius of a body.
r
Denotes the distance from one frame to another.
vi
O(n)
Abbreviations
AOCS
AOSP
ASAP
CDH
CHAMP
COTS
EELV
EO
ESPA
F3A
FH
GALILEO
GEO
GLONASS
GTO
GPS
HEO
ICO
I-Cone
IR
IT
JIT
LEO
LQ
MEO
MEX
NAVSTAR
PID
S/C
S/S
QR
Attitude and Orbit Control System.
Attitude and Orbit Simulation Package.
Ariane Structure for Auxiliary Payloads.
Command and Data Handling.
Challenging Mini-Satellite Payload.
Commercial Of The Shelf (Products).
Evolved Expandable Launch Vehicles.
Earth Observation (mission).
EELV Secondary Payload.
Fast, Frequent, Flexible and Aordable.
Figure Handle (in MATLAB).
A European GPS.
Geostationary Orbit.
A Russian GPS.
Geo Transfer Orbit.
Global Positioning System.
Highly Elliptical Orbit.
Intermediate Circular Orbit.
Intelligent (adapter-) Cone.
Infra Red.
Information Technology.
MATLAB acceleration engine.
Low Earth Orbit.
Linear Quadratic.
Medium Earth Orbit.
MATLAB Eternal code (interface between MATLAB and other program languages).
The US GPS.
Proportional,Inductive and Derivate.
Spacecraft.
Sub System (in spacecraft).
Orthogonal-triangular decomposition.
vii
viii
Contents
1 Introduction
1
1.1 Problem formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Satellites in general
2.1 Modules in a regular satellite . . . . . . . . . . . . .
2.1.1 The bus . . . . . . . . . . . . . . . . . . . . .
2.1.2 The payload . . . . . . . . . . . . . . . . . .
2.2 Movement laws of satellites . . . . . . . . . . . . . .
2.2.1 Orbit laws of motion . . . . . . . . . . . . . .
2.2.2 Attitude laws of motion . . . . . . . . . . . .
2.2.3 Orbit time and velocity . . . . . . . . . . . .
2.3 Disturbances in orbit and attitude . . . . . . . . . .
2.3.1 Solar radiation pressure . . . . . . . . . . . .
2.3.2 Aerodynamic drag . . . . . . . . . . . . . . .
2.3.3 Magnetic disturbance torques . . . . . . . . .
2.3.4 Gravity gradient torque . . . . . . . . . . . .
2.3.5 Micrometeorites . . . . . . . . . . . . . . . .
2.3.6 Oblateness of the Earth . . . . . . . . . . . .
2.3.7 Discussion on the magnitude of disturbances
3 Orbits and missions
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
3
3
3
5
6
6
8
9
10
10
11
12
13
14
14
14
17
3.1 From launch to orbit . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.1 Orbits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 Missions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4 A study of small satellites
4.1
4.2
4.3
4.4
Previously launched satellites .
Tendency in launches today . .
Customers . . . . . . . . . . . .
Potential use . . . . . . . . . .
4.4.1 Dispenser . . . . . . . .
4.4.2 Main vehicle . . . . . .
4.5 Ways to launch small satellites
.
.
.
.
.
.
.
ix
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
27
27
29
29
30
30
31
32
x
Contents
4.5.1 ASAP . . . . . . . . . .
4.5.2 ESPA . . . . . . . . . .
4.5.3 Munin . . . . . . . . . .
4.5.4 I-Cone . . . . . . . . . .
4.6 The need for small satellites . .
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
5.1 Redundancy . . . . . . . . . . . . . . . .
5.2 Sensors and actuators . . . . . . . . . .
5.2.1 Sensors . . . . . . . . . . . . . .
5.2.2 Actuators . . . . . . . . . . . . .
5.3 Stabilization methods . . . . . . . . . .
5.3.1 Why do we need stabilization? .
5.3.2 Passive stabilization . . . . . . .
5.3.3 Active stabilization . . . . . . . .
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
6.1 Requirements . . . . . . . . . . . . .
6.2 Prerequisites . . . . . . . . . . . . .
6.2.1 Development environment . .
6.2.2 Coordinate frames . . . . . .
6.2.3 Model representation . . . . .
6.2.4 Dierential equation solvers .
6.2.5 Linearization . . . . . . . . .
6.2.6 Measurement determination .
6.2.7 Stabilization strategy . . . .
6.2.8 Needed data . . . . . . . . .
6.3 MATLAB issues . . . . . . . . . . .
6.4 Behavior of the AOSP . . . . . . . .
6.4.1 Example run . . . . . . . . .
6.4.2 Program ow . . . . . . . . .
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
5 Orbit and attitude stabilization
.
.
.
.
.
..
..
..
..
..
6 The Attitude and Orbit Simulation Package (AOSP)
..
..
..
..
..
..
..
..
..
..
..
..
..
..
7 Conclusion and suggestions to further work
32
32
32
32
36
37
37
37
38
41
44
45
45
47
51
51
52
52
54
54
57
59
63
64
66
66
67
67
68
75
7.1 Small satellites study . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
7.2 The AOSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Bibliography
Appendix
A AOSP - users manual
A.1
A.2
A.3
How to get started . . . . . . . . . .
A.1.1 What data can be found . . .
Input needed to the program . . . .
A.2.1 Replaceable modules . . . . .
How to work with the user interface
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
79
81
81
81
81
85
85
85
Contents
xi
A.3.1 Load and Save data . . . . .
A.3.2 Print results from simulation
A.3.3 Change parameters . . . . . .
A.4 What is saved in the output le . . .
A.5 Shortcuts . . . . . . . . . . . . . . .
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
B.1 Keplerian Orbital Elements
B.2 Elliptical Orbits . . . . . . .
B.2.1 Orbit period . . . .
B.2.2 Velocity . . . . . . .
..
..
..
..
..
..
..
..
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
B Orbit movements
C Coordinate systems
..
..
..
..
.
.
.
.
..
..
..
..
86
87
87
87
87
89
89
89
90
93
97
C.1 The Geocentric Equatorial coordinate system . . . . . . . . . . . . . 97
C.2 Quaternions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
C.3 Other coordinate systems . . . . . . . . . . . . . . . . . . . . . . . . 99
D The History of Space ight
101
xii
Contents
Chapter 1
Introduction
To explore space is still many peoples dream. But before mankind can enter space
themselves, investigating probes have to be sent out in advance. Their missions
are many, such as communication, global surveillance or planetary research. With
a combined name, these probes are often called articial satellites.
The satellite industry possesses huge possibilities, although the market to date is
a bit slow. Of course, these crafts have to be automatic in the sense that if the
ground control loses communication with the satellite for a couple of hours, it still
should be operational when the communication link is reestablished. Furthermore,
the demand for accuracy and performance might be, depending on the mission,
exceptional. The cost for satellites tend to increase exponentially with the performance; thus it is really tricky to design a craft with high pointing accuracy without
getting a too expensive one. To keep the cost down, expensive measurement and
propulsion instruments must be as simple as possible; while to keep precision up,
they must be as advanced as possible.
But components are not the most expensive part in a satellite. The design, test,
verication and launch procedures are far more expensive, since the rst three take
many man-hours and the last one demands an expensive launch-vehicle. An example of a launch-vehicle that is in use today on the Ocean's is called the Sea-launch,
and can be found in Figure 1.1.
This nal thesis begins with describing the essentials of space ight (especially for
small satellites) in Chapter 2. It continues to describe the market, and trends of
small satellites in Chapter 4. The development of a simulation program to determine the attitude variation when using dierent sensors and actuators in orbit is
nally described in Chapter 6.
1.1 Problem formulation
This nal thesis work is actually two aimed. The rst aim is to nd out where
the market is heading. What demands will there be for small satellites in the
1
2
Introduction
The Odyssey launch platform with the rocket \Sea-launch" | a way
of transporting rockets out on the ocean for launch as near the equator as possible
for countries that do not own land in that region (for instance Russia and Norway
are participants in this project) [25].
Figure 1.1.
future, and what demands are there today? The second aim is to nd out how
good pointing precision can be expected with a certain set of sensors and actuators
when the satellite has a certain mission? These questions will be further explained
and dealt with, but not completely answered. The reason for this is that no one
can accurately predict the future and that there was a time limit to the nal
thesis work. There are, however, some suggestions on further development of the
simulation software discussed at the end of this report.
Chapter 2
Satellites in general
A satellite is an object that moves by itself in orbit about a larger celestial body,
according to [21]. In this denition one can easily understand that moons also
are satellites, in fact; even the Earth itself is one of the Sun's satellites and the
Sun is a satellite in our galaxy, the Milky way. In general though, when talking
about satellites, we refer to articial, i.e. man-made, satellites moving in orbit
around the Earth or any other planet in our solar system. In orbit means that
the satellite has high enough altitude and/or speed to hold it within the celestial
bodies' gravitational eld without falling down onto it. This may seem harder than
it really is. A presentation of the movement laws will be presented in Section 2.2
which will explain this. But before that, a short introduction to satellites should
be in order.
2.1 Modules in a regular satellite
Satellites of today can look virtually every way you could possibly imagine. The
satellite CHAMP, for instance, which was launched in 15th of July 2000 from
Plesetsk in Russia looks like a regular electric guitar (see Figure 2.1 or [9, 20]). As
seen there are no rules at all on how they appear on the outside. The interior of a
satellite, however, has a few similar parts, or at least parts that can be identied.
These parts are called the bus and the payload according to [18].
The payload is the module that completes the mission specic tasks, such as taking
photographs, measuring radiation, relaying TV etc. The bus, on the other hand,
consists of subsystems that work together to help the payload to complete its
mission. This will be further explained in the next two chapters.
2.1.1 The bus
The bus in a satellite is an infrastructural aid for the payload, and is highly mission
specic. Missions are described later in Section 3.2. The aid for the payload consists
in, for instance, keeping the payload at an acceptable temperature, providing the
3
4
Satellites in general
Figure 2.1. The satellite CHAMP (Challenging Mini-Satellite Payload). An
example of an odd shaped spacecraft [20].
payload with power and helping it to navigate and point at specic locations.
Often, the bus is divided into subsystems, or S/S. In the chart below, the most
common classications (according to [18]) of S/S are shown.
Structure: Usually the whole structure is considered to be a S/S of its own. The
actual structure includes the hull and load-bearing walls in the satellites.
Since the structure will be exposed to dierent pressures, solar radiation and
small meteorites, this structure has to be completely thought through so that
it can handle this harsh space environment.
Thermal: In the design of spacecrafts, thermal control is needed in order to maintain structure and equipment integrity over long periods of time, according
to [18]. It has been recognized since the conception and design of the rst
space vehicles that a prime engineering requirement is a system for temperature control that permits optimum performance of many components. In fact,
if it was possible to operate equipment at any temperature, there would be
no need for thermal control. Normal operation temperatures must be within
20 ÆC to +50 ÆC inside the spacecraft in order for the components to
survive.
2.1 Modules in a regular satellite
5
CDH: (Command and Data Handling) This is the brain of the satellite. Here,
all calculations and control of other S/S are done. CDH also works as a
communication handler between dierent S/S. In computer terms this would
be called a master unit, and the other structures for slave units.
AOCS: (Attitude and Orbit Control System) This S/S could be compared with
the human inner ear, i.e. from sensors this S/S determines where the satellite
is and how it is oriented. With this information the AOCS determines how
to navigate (in case its position or attitude is wrong). To summarize, the
AOCS consists of three parts; one that operates sensors, another one that
calculates what to do and a third one that operates actuators with what has
been calculated.
Propulsion: Every satellite needs some means of transportation and some means
of attitude adjustment. These means are called the propulsion S/S. It maintains the fuel consumption and control the output given by, for instance, the
AOCS above.
Electrical Power: This substructure manages the power supply in the satellite.
It provides all the other S/S with electrical power, and recharges the backup
batteries, when the satellite is not within an eclipse. Otherwise, this S/S
makes sure that the satellite stops operating and moves into a \wait" mode
to preserve power. This power-saving mode operates on the backup batteries
until the satellite has come out of the eclipse again.
Communication: It would be rather pointless to send something into space that
cannot communicate. All satellites should have this S/S, although there
might be special cases when this subsystem is not needed. One of the earliest
satellites, for instance, was made of a reective material. Instead of actively
receiving and relaying a signal, as todays communications satellites work, it
reected signals back down again to the Earth, thus not needing any sort of
communication device.
2.1.2 The payload
Apart from the subsystems in the previous section that constitutes the bus, a
is also needed. The payload is where the mission specic tools are located.
There could be cameras that take satellite photos of the Earth, or communication
equipment which enable us to see satellite TV and so on. These dierent elds of
application for payloads are called dierent missions, and will be discussed later in
Section 3.2.
When constructing the payload, the manufacturer has to consider many things,
such as keeping power consumption and weight down. The reason for this is that a
higher demand on the bus makes the whole satellite larger and heavier. The more
power and weight the payload has the more power and propulsion eect the bus
has to give, thus increasing the cost of the bus exponentially.
payload
6
Satellites in general
2.2 Movement laws of satellites
A man-made satellite has to be stabilized due to many disturbance forces. For
instance the pressure from the Sun's photons, the solar wind, other celestial bodies,
space dust and other factors may play a major part in how the satellite actually
moves in space. In addition, the owner of the satellite may want to adjust the
orientation, or attitude, to a certain mission specic task (take photographs of, or
broadcast TV to, the correct location). To be able to meet these requirements the
satellite control systems must consist of at least two separate parts. One control
system that keeps the satellite in a correct orbit, since the disturbances described
in this chapter will tend to degenerate the satellites orbit (i.e. decrease its speed).
The other control system keeps the attitude correct. The control needed for the
latter task does not have to be active control | passive stabilization techniques
might be just as useful. The actual control system is discussed in Chapter 5.
To be able to control the satellite, we have to know its movement laws. The
following sections will deal with orbit and attitude movement laws, as well as
dierent disturbances.
The orbit and the attitude movement are however not uncorrelated, as implied
earlier. This is due to the fact that disturbance torques depends on where we are.
For example, we only get a disturbance from the Sun if the satellite is not in an
eclipse. This will be further discussed in Section 2.3.
2.2.1 Orbit laws of motion
According to [19, 21], there are mainly six laws governing the motion of a satellite.
Three are from Kepler and the rest from Newton. These two wel known physicists
theorem's are described below.
Theorem 2.1 (Kepler's Laws)
I: The orbit of each planet is an ellipse, with the Sun as focus.
II: The line joining the planet to the Sun sweeps out equal areas in equal times.
III: The square of the period of a planet is proportional to the cube of its mean
distance from the Sun.
Theorem 2.2 (Newton's Laws)
I: Every body continues in its state of rest or of uniform motion in a straight line
unless it is compelled to change that state by forces impressed upon it.
II: The rate of change of momentum is proportional to the force impressed and is
in the same direction as that force.
III: To every action there is always opposed an equal reaction.
Furthermore, Newton also introduced another equation in his book Principia where
he rst stated his Theorem's 2.2. This equation is known as the law of gravity, and
2.2 Movement laws of satellites
7
constitutes a way to calculate the force acting between two bodies due to gravity1:
Fg
Gm1 m2 r
r2 r
=
(2.1)
The Equation (2.1) states that the force attracting two bodies to each other is
proportional to their masses (m1 and m2 ) and inverse proportional to the square
of the distance between them (r). G is the universal gravity constant derived
from
the term , often refered to as GM , where M the mass of the planet3 2 . The term
= GM is called the planetary gravitational constant (with unit ms2 ), where G is
2
the universal gravity constant, with the value G 6:67 10 11 Nm
kg2 .
In Equation (2.2), the Newton force described in Equation (2.1) is generalized to
an equation of n bodies:
Fg
=
Gmi
n
X
mj
3 (rji )
j =1;j 6=i rji
(2.2)
This force alone constitutes the greatest force acting on a satellite in orbit at a low
to medium height above the Earth's surface. But there are other forces as well,
such as the solar pressure, the non spherical symmetry of the Earth, aerodynamic
drag due to the Earth's atmosphere and, of course, induced forces like thruster
burns etc. To summarize, we have:
F T OT AL = F g + F DRAG + F T HRUST + F SOLARP RESSURE +
+ F OBLAT EEART H + : : :
(2.3)
If we dierentiate Newton's second law (Theorem 2.2) and nd the distance ri we
get:
d
(m v ) = F T OT AL
(2.4)
dt i i
Keeping in mind that we might use thrusters that expel matter (which makes the
satellite's mass time dependent), Equation (2.4) evaluates to:
F
m_
ri = T OT AL r_ i i
(2.5)
mi
mi
These equations combined (Equation (2.3) and Equation (2.5)) can be solved to
nd any satellite's movement in time.
1 Observe that the inner nature of gravity, i.e. what gravity really is and how it actually works,
still is a puzzle for todays scientists.
2 Since G is derived from for all planets, it is both more common and accurate to use the
term for the planetary gravitational constant instead of multiplying G with the planet's mass,
M.
8
Satellites in general
2.2.2 Attitude laws of motion
Depending on the coordinate frame used to represent the attitude, the movement
equations describing the attitude will look dierent. For explanations of dierent
coordinate systems, study Appendix C. The movement equations for the dierent
coordinate frames have one thing in common though. They are all derived from
the equation of angular momentum (from [27, 4]):
h_ A = r P=A ma + r_ P=A mv
(2.6)
where a = v_ is the acceleration, rP=A is the vector from point A to point P and
hA is as in Denition 2.1.
When utilizing Newton's second law (F = ma, where F is the resulting force) on
the second term, we get:
r P=A ma = rP=A F = M A
(2.7)
Where the last step is the denition of the moment of a force F about point A,
denoted M A, as in [4].
When we apply this, Equation (2.6) evaluates to:
M A = h_ A r_ P=A mv
(2.8)
According to [12] the angular acceleration of a satellite can be derived from Equation (2.8) and from the fact that:
Denition 2.1 (Angular momentum)
(2.9)
Where I is the moment of inertia tensor and ! is the angular velocity. The nal
angular acceleration becomes:
!_ = I 1 (M h_ ) I 1 (I ! + h)
(2.10)
Where M is the applied torque, and h is the internal angular momentum vector
from, for instance, the dierent reaction wheels. h is in other words not the angular
momentum from the satellite itself, as in Equation (2.8) (i.e. hA = I ! + hOthers ).
Equation (2.10) is however not a universal one, since it takes for granted that the
principal and the inertial axes are the same, i.e. it is a symmetric body with
regard to the mass and the shape. Because this evidently seldom is the case, a
more general equation that works with any kind of inertia matrix is (also derived
in [12]):
!_ x = Jx Tx + Pxy Ty + Pxz Tz
!_ y = Pyx Tx + Jy Ty + Pyz Tz
!_ z = Pzx Tx + Pzy Ty + Jz Tz
(2.11)
hA I !
2.2 Movement laws of satellites
where
Tx
Ty
Tz
h
= (Mx h_ x)
h
= (My h_ y )
h
= (Mz h_ z )
9
!z !y (Iz
!x !z (Ix
!y !x (Iy
Iy )
(!y hz
Iz ) (!z hx
Ix ) (!x hy
where
= Dzy !y2 Dyz !z2 + !x(Dzx!y
= Dxz !z2 Dzx!x2 + !y (Dxy !z
= Dyx!x2 Dxy !y2 + !z (Dyz !x
The general inertia matrix is described by:
DX
DY
DZ
0
I
and the inverse by:
=@
0
I 1=@
Ix Dxy Dxz
Dyx Iy Dyz
Dzx Dzy Iz
Jx Pxy Pxz
Pyx Jy Pyz
Pzx Pzy Jz
!z hy ) DX
!x hz ) DY
!y hx) DZ
Dyx!z )
Dzy!x )
Dxz!y )
i
i
i
(2.12)
(2.13)
1
A
(2.14)
1
A
=J
Again, h is the total angular momentum due to reaction wheels etc.
satellite.
(2.15)
within
the
2.2.3 Orbit time and velocity
From Kepler's Theorems (2.1) and Newton's Theorems (2.2) the orbit period, P ,
and the velocity, v, at perigee3 can be calculated. Since the velocity changes
during one lap, a satellite has its maximum speed at perigee and its minimum
speed at apogee, only the velocity in perigee or apogee is really simple to calculate
in advance.
These equations are as follows:
2 3
P = p a 2
(2.16)
v
=
s 2 1
r
a
(2.17)
Where a is the semi-major axis as in Appendix B, and the velocity expression is
given for perigee.
3 For
denitions of perigee and apogee, please see Appendix B.
10
Satellites in general
2.3 Disturbances in orbit and attitude
Disturbances in space could be a rather extensive chapter, since virtually every
existing object will act upon the satellite with gravitational forces and moments.
To keep this chapter to a reasonable level, some smaller disturbances will therefore
be neglected.
How much torques actually will act upon the satellite's attitude depends on the
size-to-mass ratio. If, for instance, the satellite looks like a perfect sphere, there
will probably be only small (not signicant) disturbances to the satellite in attitude
from outer eects. But on the other hand, if the satellite looks like a long at rod
we will get eects to the attitude from disturbance torques.
The main cause to these disturbances might be the Sun, the Earth's atmosphere or
the gravitational elds of dierent celestial bodies, but they have a similar impact
on a non-symmetric spacecraft.
Example 1
If we use the Sun as an example, we can see that the solar wind from the Sun will
put an evenly distributed pressure on the satellite. This pressure will be uniform
on each part that is exposed to the Sun. You could therefore replace all these
small forces with the sum of those on the geometrical middle point exposed to the
Sun, called the center-of-pressure. If this center-of-pressure is not on the same
spot as the center-of-mass, there will be an additional moment. The size of this
moment, or torque, is the force times the distance between the center-of-mass and
the center-of-pressure. In other words, it is not the symmetry of the shape alone,
rather the displacement relative to the mass distribution symmetry, that will cause
this disturbance.
Similar things as in Example 1 happens when dealing with aerodynamic drag.
Gravity gradient, however, is a dierent story. This is a force that will try to align
the satellite with the Earth's magnetic eld. If this seem interesting, the reader
should study [27].
All of these disturbances can be modeled, and a brief explanation on how is given
in the next few sections. For a more investigative examination of these disturbance
models, [19] would be to prefer.
The reader should note that the oblateness of the Earth is no real disturbance
torque since it can be modeled with a good accuracy. Instead of regarding this
anomaly as a disturbance, it should be considered to be an update to the movement
equation, i.e. Equation (2.1).
2.3.1 Solar radiation pressure
The solar radiation pressure is due to photons from the Sun constituting a pressure
on the satellite (where the satellite is not eclipsed). To model this disturbance the
color of the satellite plays a big part since black color, for instance, absorb much
2.3 Disturbances in orbit and attitude
11
more energy then the color silver (which reects most energy).
If we use the geocentric equatorial coordinates (which are explained in Appendix C),
radiation pressure can be modeled.4This is done in [19], but there they have taken
for granted that it is a black body that travels in space. While this is not completely true, a good approximation of the torque due to solar radiation is:
x
y
z
=
=
=
f cos A
f cos i sin A
f cos i sin A
(2.18)
Where
f
A
m
A
i
=
=
=
=
=
4:5 10 10 mA [ sm2 ]:
Cross section of vehicle exposed to the Sun [m]:
Mass of vehicle [kg]:
Mean right ascension of the Sun during computation.
Inclination of equator to ecliptic (= 23:4349):
Observe that the and the signs are common symbols used for the Sun and the
Earth respectively.
The solar radiation eects both the attitude and the orbit of the space craft, since
the result of a pressure at a point apart from the center-of-mass will constitute a
torque. The eect on orbit is normally negligible (if the satellite has not got an
extremely high altitude) since it is rather small compared to other forces.
On the other hand, this is the dominant disturbance force on very high altitudes.
Additionally this force is independent of the distance from the Earth (although it
obviously is dependent on the distance from the Sun ).
2.3.2 Aerodynamic drag
Aerodynamic drag is a disturbance that arises when the satellite move through
the Earth's atmosphere, which (although it is not dense) is enough for a torque to
appear.
Accelerations caused by aerodynamic drag can be described as follows:
r
4 Absorbs
all light.
=
1 CD A Var_ a
2 m
(2.19)
12
Satellites in general
where
Dimensionless drag coeÆcient associated with A.
Cross sectional area of vehicle perpendicular
to the direction of motion [m]:
m
Mass of vehicle [kg]:
Atmospheric density at the vehicle's altitude [ mkg3 ]:
Va
jr_ a j = Speed of vehicle relative to the rotating
atmosphere [ ms1]:
0
_
x_ + y
_x A
r_ a = @ y_
0
1z_
x_
r_
= @ y_ A = The inertial velocity.
z_
_ = Rate of the Earth's rotation [ rads ]:
To simplify the equations, you could use the ballistic coeÆcient for the vehicle, ,
which is dened by:
C A
= D
mg
Obviously g is altitude dependent.
This force both slows the craft down as well as it starts to spin the craft if the
center-of-pressure is apart from the center-of-mass.
The aerodynamic disturbance is the dominant disturbance beneath 500rkm altitude from the Earth, and it depends on the distance from the Earth as e , where
is a constant.
CD
A
=
=
=
=
=
2.3.3 Magnetic disturbance torques
The magnetic disturbance torque is a result from the interaction between the spacecraft residual magnetic eld and the geomagnetic eld. There are three main
sources in the satellite for disturbance torques of this sort, and they are:
1: Spacecraft magnetic momentums
2: Eddy currents (due to spinning motion of craft)
3: Hysteresis (due to spinning motion of craft)
Depending on the material, construction technique and mission, the two latter
sources for disturbance can be made negligible. This leaves the spacecraft magnetic
momentum as the largest source of disturbance, and the instantaneous magnetic
disturbance, N mag , due to the spacecraft eective magnetic momentum, m, is
given by:
N mag = m B
(2.20)
2.3 Disturbances in orbit and attitude
13
where B is the geocentric magnetic ux.
This disturbance is dominant in the region between 3 500 km to about 35000 km,
and it depends on the distance form the Earth as r . To get a complete discussion
on how this disturbance torque can be modeled, please refer to [27].
2.3.4 Gravity gradient torque
The gravity gradient torque is a torque that wants to align the craft with the
Earth's gravitational force eld. Since the forceeld will not be constant over all
non-symmetrical objects in orbit, dierent forces will act on dierent parts of the
satellite. If the gravitational force-eld would be uniform, this disturbance would
vanish.
A conceptual expression of the gravity gradient torque can be expressed as:
N gg
=
Z
ri dF i =
Z
Ri
dmi
Ri3
( + r0i) (2.21)
In Figure 2.2, the denitions of the coordinate frame can be found.
Center
of mass
Geometric
center
r
RS
Body
reference
frame
r i'
ri
R
dm
i
i
Coordinate System for the Calculation of Gravity Gradient Torque
dened in Equation (2.21)
Figure 2.2.
This torque is, like the magnetic disturbance torque, dominant between 500 km
and 35000 km. It depends on the distance from the Earth as r 3 .
Again, a more thorough investigation on this disturbance torque can be found
in [27].
14
Satellites in general
2.3.5 Micrometeorites
Disturbance torque from small fragments in space are rare, and often not taken
into account at all. This text will not be bothered with such random events.
2.3.6 Oblateness of the Earth
Accelerations caused by the asymmetry of the Earth, i.e. the fact that the Earth
is slightly attened by its poles, is rather diÆcult to model. The force in Equation (2.1) will actually not be directed at the center of the Earth as stated before
when assuming Earth to be a perfect sphere, rather slightly more against the equator since the Earth has more mass in that region.
Therefore this anomaly is regarded as an update to Equation (2.1) rather then a
perturbation of its own.
The main resulting update acceleration, still according to [19], to Equation (2.1)
becomes:
a = r
(2.22)
"
#
1
X
r n
=
1
Jn Pn sin L
(2.23)
r
r
n=2
where
Jn
r
Pn
L
=
=
=
=
=
=
(The planetary gravitational constant).
CoeÆcients to be determined by experimental observation.
Equatorial radius of the Earth.
Legendre polynomials.
Geocentric
latitude.
z
GM
sin L
r:
For n = 2 to n = 4 the terms of Jn are experimentally determined to:
J2 = (1082:64 0:03) 10 6
J3 = ( 2:5 0:1) 10 6
J4 = ( 1:6 0:5) 10 6
It is fairly easy to see that these equations, printed in their respective direction,
will be rather large. Therefore they will not be printed here. To see the complete
expressions, consult [19], where one also can nd three more terms of Jn .
The disturbance due to the oblateness of the Earth is a disturbance that can be
completely modeled, and is not one completely consisting of white noise. Therefore
it seldom is regarded as a disturbance at all, but rather as a modeling error.
2.3.7 Discussion on the magnitude of disturbances
According to [27] disturbance forces vary with the altitude. In the lower regions
(near the Earth) the aerodynamic drag constitutes the largest force. But on higher
2.3 Disturbances in orbit and attitude
Disturbance
Aerodynamic
Gravity Gradient
Magnetic torques
Micrometeorites
Solar radiation
Oblate Earth
15
Region of dominance
Distance dependence
. 500 km
e r from the Earth
500 km to 35000 km r 3 from the Earth
500 km to 35000 km r 3 from the Earth
Normally negligible
& 20000 km
r 3 from the Sun
Considered a model error
Table 2.1.
An estimate of disturbances in space
altitudes, where the Earth's atmosphere is less dens, the force and torque caused by
solar pressure dominates. Even the moons gravitational force vary in time. When
the satellite is near the moon, it will obviously be subject to a larger magnitude of
force from the moon compared to when the satellite is on the opposite side of the
Earth.
Every other force, such as gravitational forces from the other planets and the
reected solar pressure from the Earth and the moon, acting on a satellite are
small enough to be completely discarded. The reason for this is that they will
vanish in the systems noise.
To sum this chapter up, a simple table where magnitude of disturbances can be
found is given in Table 2.1. Observe that these gures are representative and not
necessarily completely correct. For further reading, the reader should look into [27].
16
Satellites in general
Chapter 3
Orbits and missions
Before conducting a more thorough investigation on how to stabilize a spacecraft
when it is operational in orbit, something should be said about how a satellite is
put into orbit and what kind of orbits there are. This is what this chapter contains
along with dierent mission denitions.
3.1 From launch to orbit
There are but one way to get a satellite into the correct orbit that we know of
today. And that is by launching it with a rocket, which is separated at a given
altitude. After that, a series of thruster burns has to be made to reach the desired
orbit.
For large satellites this is pretty much what happens. An adapter cone is bolted to
the carrier rocket and the satellite is mounted on top of it. The reason for using an
adapter cone is both the need for a separation system between the rocket and the
satellite and the fact that carrier rockets are manufactured in particular diameters,
and the satellite often has other dimensions. The adapter cone supplies both of
these functionalities.
For small satellites, however, other launch possibilities may be used. If it is really small, it can use a big satellite as a transport, i.e. a large craft has many
small satellites inside, and deploy them at their destined position. Another mean
to travel into space is by hitchhiking with a larger satellite. This is similar with
the previous transport method, except that it does not use the main satellite at
all. Instead it is attached to the rocket, in one way or another, and separates after
the main satellite has separated. This is a good solution to keep cost down, since
carrier rockets often has a capacity to take more weight then it often does. A short
presentation of these dierent methods will be presented in Chapter 4.
Often launches happen near the equator, this is due to the Earth's oblateness. It
is simply not as much gravity near the equator compared to the poles, thus not as
much fuel or as big carrier rockets are needed. The Russians, however, has a launch
17
18
Orbits and missions
site called Plesetsk in northern Russia, for instance. There, the carrier rockets look
very dierent. Instead of only one main rocket, they have attached several booster
rockets to the side of the main one to be able to put the satellite into the wanted
orbit, thus making these launch vehicles one of the most powerful in the world.
There are other ways to launch small satellites into space than the previous mentioned. There are, for instance, old intercontinental rockets that has been rebuild
to take small crafts into space instead of dumping destructive power. These other
methods will not be mentioned any more in this document.
3.1.1 Orbits
When the satellite is positioned into space by its rocket, it sometimes is parked
in the correct orbit directly. But since this seldom is the case, the satellite often
has to make a series of thruster burns to get into the right position. When this
is the case, the satellite is parked into another orbit called a GTO (Geo Transfer
Orbit). This is an orbit that will intersect with either the correct orbit or another
GTO, although the latter is seldom the case. The reason for this is that these kind
of maneuvers are fairly expensive to do, therefore is it protable to separate the
satellite in as good position as possible.
When making a transfer between two dierent orbits a Hohmann transfer is often
Assume that we
begin with a
circular orbit
If you get your velocity
boost here, you'll go from
a circular orbit to an
elliptical orbit
If you give your velocity a
boost here, you can
change your orbit from an
ellipse to a larger circle
A Hohmann transfer from one circular orbit to another in the same
orbit plane using minimum amount of energy.
Figure 3.1.
3.1 From launch to orbit
19
used. A Hohmann transfer uses the minimum energy path between the orbits in
the same orbit plane, and is done in two stages. First a thruster burn changes the
current orbit into a GTO, whose apogee (the orbits maximum distance from the
orbited object) is exactly in the wanted orbits path. Then, when the satellite has
reached the orbits apogee, another thrust is made, and the new orbit is attained
(see Figure 3.1).
To do a transfer between orbits in dierent planes, a Hohmann transfer may not
be the optimal one, but it will still work.
There are four dierent kinds of orbits that are often referred to according to [3],
GEO (Geostationary Orbit), LEO (Low Earth Orbit), MEO (Medium Earth Orbit)
and HEO (Highly Elliptical Orbit). The following sections will describe these types
of orbits in more detail.
Geostationary orbit as well as two Low Earth Orbits; A Polar Orbit
and an ordinary LEO [3].
Figure 3.2.
GEO
Geostationary orbits are circular orbits that are oriented in the plane of the Earth's
equator. In this orbit, the satellite appears stationary, i.e. in a xed position, to
an observer on the Earth. More technically speaking, a geostationary orbit is a
circular prograde1 orbit in the equatorial plane with an orbit period equal to that
of the Earth; this is achieved with an orbit radius of 6:6107 (equatorial) Earth radii,
or an orbit height of 35786 km. A satellite in a geostationary orbit will appear xed
above the surface of the Earth, i.e. at a xed latitude and longitude.
The footprint2, of a geostationary satellite covers almost 1/3 of the Earth's surface.
This means that near global coverage can be achieved with a minimum of three
1 With the
2 The area
same rotational direction as the Earth.
covered.
20
Orbits and missions
satellites in orbit.
This orbit should not be mistaken for the geosynchronous orbit. The denition for
this kind of orbit is:
Denition 3.1 (Geosynchronous orbit) A geosynchronous orbit means that a
satellite makes one orbit every
period of the Earth.
24 h so that it is \synchronized" with the rotation
This will happen at an altitude of approximately 36000 km above the Earth's surface.
This denition does not say anything about the orbits position, thus geostationary
orbit is a synchronous orbit, but not necessarily the other way around. The reason
for this is that the geostationary must be in orbit in the Earth's equatorial plane,
thus being a small subset of the geosynchronous ones.
The orbit location of geostationary satellites is called the Clarke Belt in honor of
Arthur C Clarke who rst published the theory of locating geosynchronous satellites in the Earth's equatorial plane for use in xed communications purposes [6].
See also Figure 3.2 or Figure 3.3.
LEO
LEOs (Low Earth Orbits) are either elliptical or (more usual) circular orbits at
a height of less than 2000 km above the surface of the Earth. The orbit period
at these altitudes varies between 90 min and 2 h. The radius of the footprint of a
communications satellite in LEO varies from 3000 km to 4000 km. The maximum
time during which a satellite in LEO orbit is above the local horizon for an observer
on the Earth is up to 20 min.
In this category, which is the most common orbit type, there are several subtypes
of orbits. 3For instance there is a Polar orbit where the orbit almost has a 90Æ
inclination , and a Sun synchronous orbit where the satellite never is shaded from
the Sun by the Earth.
Most small LEO systems employ polar, or near polar, orbits. A complete global
coverage system using LEO orbits requires a large number of satellites, in multiple
orbit planes, in varied inclined orbits. See example below.
Example 1
The currently in operation Iridium (Motorola) system, utilizes 66 satellites (plus
six in orbit spares) in six orbit planes inclined at 86:4Æ at an orbit height of 780 km
with an orbit period P = 100 min
; 28 sec. Global coverage with this single system
is an astounding 5:9 106 miles2 per satellite.
See also Figure 3.2 or Figure 3.3, where dierent examples of LEOs are given.
3 Inclination is part of the Keplerian Orbital Elements, which is a way to describe orbit planes
of a satellite. In Appendix C, a description of these coordinates are given
3.1 From launch to orbit
21
Usual orbit denitions from the Earth's center and out; Low Earth
Orbit, Medium Earth Orbit, Geostationary Orbit and Highly Elliptical Orbit.
Also two examples of Russian HEO is given (the communication satellite systems
Molnya and Tundra ) [3].
Figure 3.3.
MEO
MEOs (Medium Earth Orbits), also known as ICOs (Intermediate Circular Orbits),
are circular orbits at an altitude of around 10000 km. Their orbit period measures
about 6 h. The maximum time during which a satellite in MEO orbit is above
the local horizon for an observer on the Earth is in the order of a few hours. A
global communications system using this type of orbit, requires a modest number
of satellites in 2 to 3 orbit planes to achieve global coverage. See also Figure 3.3.
Example 2
The US Navstar Global Positioning System (GPS) is a prime example of a MEO
system (see Figure 3.4).
22
Orbits and missions
The US Navstar Global Positioning Systems nominal constellation.
Using 24 satellites in 6 orbit planes with 4 satellites in each plane. The altitude
being 20200 km and the inclination 55Æ , thus laying in a MEO orbit [3].
Figure 3.4.
HEO
HEOs (Highly Elliptical Orbits) for Earth applications were initially exploited by
the Russians to provide communications to their northern regions not covered by
their GEO satellite networks. HEOs typically have a perigee at about 500 km above
the surface of the Earth and an apogee as high as 50000 km. The orbits are inclined
3.2 Missions
23
at 63:4Æ in order to provide communications services to locations at high northern
latitudes.
The particular inclination value is selected in order to avoid rotation of the apses,
i.e. the intersection of a line from the Earth center to apogee, and the Earth surface
will always occur at a latitude of 63:4Æ North. Orbit period varies from eight to
24 h.
Owing to the high eccentricity of the orbit, a satellite will spend about two thirds
of the orbit period near apogee, and during that time it appears to be almost
stationary for an observer on the the Earth (this is referred to as apogee dwell).
A well designed HEO system places each apogee to correspond to a service area
of interest, i.e. which would cover a major population center, for example in the
Russian Molnya satellite system designed to cover Siberia, see Example 3.
After the apogee period of orbit, a switch-over needs to occur to another satellite in
the same orbit in order to avoid loss of communications to the user. Free space loss
and propagation delay for this type of orbit is comparable to that of geostationary
satellites. However, due to the relatively large movement of a satellite in HEO with
respect to an observer on the Earth, satellite systems using this type of orbit need
to be able to cope with large doppler shifts.
Example 3
One HEO systems is the Russian Molnya system, which employs 3 satellites in
three 12 h orbits separated by 120Æ around the Earth, with apogee distance at
39354 km and perigee at 1000 km. With these three satellites, the Russians have
complete coverage with communications over the whole arctic area, including their
own country.
Another example is the Russian Tundra system, which employs 2 satellites in two
24 h orbits separated by 180Æ around the Earth, with apogee distance at 53622 km
and perigee at 17951 km.
In Figure 3.3 two HEOs are shown.
3.2 Missions
There are a variety of missions possible for satellites. A few of them have already
been mentioned, but will be discussed a little more in detail in this chapter. Observe that all of the below mission classications are strictly subjective to my own
opinion, and are drawn from observation of previously launched satellites missions
presented in [14]. Other books may therefore have other classications, but in this
text these ones are used:
Communication: If a commercial companiy own a satellite, it probably belong
to this category. TV broadcasting, some of the Internet traÆc, radio and a
few telephone networks are a few examples of communication satellites.
24
Orbits and missions
69.2 %
Commercial
1.4 %
EO
14.4 %
Science
11.0 %
Tech Demo
2.3 %
Military
1.7 %
Education
Dierent market shares of missions calculated to the year 2000.
(Source is [14]).
Figure 3.5.
Earth Observation: In this category you can nd weather monitoring satellites
as well as environment monitoring satellites. Commercially some companies
sell photographs of the Earth taken from satellites. Also, maps are nowadays
drawn from satellite photos, and lastly tracking airplanes and certain boats
is also a eld of use belonging in this category.
Military: These satellites are for defense and oense use. For instance there are
spy satellites, taking high resolution pictures of the Earth. A few satellites
belonging in this mission prole could also be Earth surveillance satellites,
such as weather satellites, or global positioning satellites. Yet another may
also be some sort of communication satellites. The common ground, however
is that all are used in military purposes.
Education: Some universities have courses that build satellites to send into space.
These satellites are usually small. Links to many of these universities and
courses can be found at [14].
3.2 Missions
25
Tech demo: Companies that want to try their components, and show the con-
sumers that they actually work, send these kinds of satellites into space. They
sometimes also have secondary missions.
Science: This is by far the widest and the most diverse category. These satellites do everything from observing (such as the Hubble Space Telescope) via
research on solar phenomena to research on other planets (such as the Marslander).
Global Positioning: This is, in contrast to the previous item, the most narrow
category. All of the satellites with these missions actually has the same kind
of orbit, a MEO orbit.
The NAVSTAR GPS is a US variant of this system. A European one, called
GALILEO, is on the way, but will probably take at least a few years before
operational (See [8]). There also exist a Russian variant of global positioning,
called GLONASS (Global'naya Navigationnaya Sputnikovaya Sistema Global
Navigation Satellite System), which is the most accurate global positioning
system on the market today. See [22] for further information.
80
70
60
50
40
30
20
10
0
80
19
82
19
EO
84
19
Education
86
19
Science
88
19
90
19
Tech Demo
92
19
94
19
Military
96
19
98
19
Communications
Dierent missions market share divided per year since 1980 to the
year 2000. Source is [14].
Figure 3.6.
Global positioning does not really make up a category by itself, rather it is a
combination between Earth observation and military. But for simplicity they get
their own eld.
In Figure 3.5 one can clearly see what the most common missions for satellites are,
26
Orbits and missions
and in Figure 3.6 a historical aspect of dierent missions are given (observe that
EO stands for Earth Observation). These charts are derived from [14].
It would be an easy guess that there are mostly communication satellites in space,
but tech demo has a surprisingly large share. The probable cause of this could be
that the space industry is extremely conservative, and no one will spend any money
on a satellite that has not been tested in reality at least a few times (except maybe
governments or the military). This has lead to a most peculiar phenomena; old
proven technology is preferred over new and advanced (i.e. a 386 computer would
be preferred over an Intel Pentium 5 computer, for instance).
Chapter 4
A study of small satellites
Nowadays there are several satellites in orbit. Most common are communication
and Earth surveillance satellites, but these are fairly big satellites. Smaller ones,
i.e. with a weight . 500 kg are called small satellites. These are historically few,
but they are growing in numbers as we will see in this chapter.
4.1 Previously launched satellites
Small satellites (i.e. mass . 500 kg plotted per month since 1980. A
steadily growing market. (The data resolved from [14]).
Figure 4.1.
27
28
A study of small satellites
The history of actual space ight is, as almost every one of you probably already
know, extremely short. But, on the contrary, the long road from discovering black
powder to the actual rst launch is a bit more extensive, and is briey described
in Appendix D.
If we just look at small satellites, the main missions usually are global positioning,
weather surveillance and of science nature. If we divide small satellites even more,
into mini (< 500 kg), micro (< 100 kg) and nano (< 10 kg) satellites, we can compare the number of launches that have been historically (that we know of) with
the weight of the launched satellite. This comparison has been done in [14], and
the result is shown in Figure 4.1.
From gures 4.1 and 4.2, one can see that between 1997-1999, when the information
technology had its peak, the increase of launched small satellites was substantial.
80
70
60
50
40
30
20
10
0
81
19
83
19
85
19
87
19
89
19
Mini
91
19
Micro
93
19
95
19
97
19
99
19
Nano
Mass distribution of launched small satellites divided per year. Figure obtained from [14].
Figure 4.2.
4.2 Tendency in launches today
29
4.2 Tendency in launches today
To guess the future in this area is rather diÆcult. There is not much happening
right now, but in the future there will probably be a new \boom". The reason for
this is the lifetime of satellites. Most satellites have some kind of solar panels, which
means that they can restore its power resources. There is one problem though. To
change orbit, or just adjust it, the satellite needs to use thrusters of some kind,
and they all uses resources that are not renewable. Therefore, the satellite will run
out of fuel at a certain age (which ranges from anything between a couple of years
to a couple of decades depending on the propelling system, size and mission etc).1
When it runs out of fuel, it will use its last propellant to do a graveyard burn ,
and burn up.
This problem with fuel running out can be solved in a few ways. Either, the owner
could just replace the satellite with a new one, or they can send a refuel and repair
team to it. There are a lot of communication, weather and positioning satellites
in space now, that are growing very old, therefore there will probably be several
launches in the future, with the aim on renewing the population.
Since the actual launch is among the most expensive parts of a satellite, there will
probably be a lot of companies/scientists that will try to take advantage of others
that want to renew their satellites in space. Because with smaller crafts there is a
possibility to \hitchhike" into space, thus reducing cost tremendously.
4.3 Customers
The market for satellites can be devided into ve main categories (according to [14]):
Military (example type: spy or weather satellite)
Amateur (example type: radio relay satellite)
University (example type: student research projects)
Commercial (example type: TV broadcast or GPS)
Government (example type: research or weather satellites)
Historically the government has been the customers that has been the longest time
in the business (for small satellites), see Figure 4.3. But historically, the commercial
group have increased their market share considerably, as we can see in Figure 4.4.
1 A way to prevent the space to be lled with trash. The procedure is simply to re a series
of thruster burns that will cause the satellite to fall down to the Earth in such an angle that it
burns up.
30
A study of small satellites
5.4 %
University
35.1 %
Military
37.1 %
Commercial
17.3 %
Government
5.1 %
Amateur
Dierent customers market share for historically launched small
satellites. (Source [14].)
Figure 4.3.
4.4 Potential use
This section will discuss how and to what small satellites could be, and are, used.
There are probably more ways to use them than these, and the interested reader
could look into [14, 27].
4.4.1 Dispenser
One way to use these small satellites is as transportation and deployment of even
smaller ones, for instance nano satellites. This kind of satellite is usually called a
dispenser, since it dispense smaller crafts in space. The advantage with doing this
is that many small satellites can share one launch. Since, as stated several times
in this text, the launch is the far most expensive part of a satellites total cost, this
would lower the cost per satellite tremendously.
The use of many small satellites can be motivated by the obvious reason of redundancy. If one large satellite malfunctions, you are smoked, but if a small one
malfunctions, there are others that still work.
Dispensers are increasing in number especially in space research missions, since
many research projects can share the space, and cost, of the launcher and thus
become less expensive.
4.4 Potential use
31
100%
90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
79 981 983 985 987 989 991 993 995 997 999
9
1
1
1
1
1
1
1
1
1
1
1
Government
Commercial
Amateur
Military
University
Market share between dierent customers for small satellites divided
per year. Notice the trend that military is decreasing and commercial is increasing
their market share. (Data derived from [14].)
Figure 4.4.
4.4.2 Main vehicle
As a main vehicle there are some limitations when speaking of small satellites.
Since they are just that, much of the interior will be aimed at controlling the
vehicle, which leaves a \not so big" space left for the payload. The budgets2 for
the payload are also much smaller.
2 There are two types of budgets usually referred to, power and weight budget. Since the craft
is not allowed to run out of either of them, these will be fairly small on a small craft.
32
A study of small satellites
4.5 Ways to launch small satellites
As said before, the main advantage of sending a small satellite into space is that it
can \share" the launch vehicle with other satellites, thus reducing the launch cost
for each satellite. There are but a few ways to hitchhike into space on the market
today, and these ways are briey discussed in the next couple of sections.
4.5.1 ASAP
The ASAP, Ariane Structure for Auxiliary Payloads, is a way to launch several
small satellites at the time, by mounting them on a \rig". The rig is mounted on
the adapter cone, and in space the main satellite separates before the hitchhiking
satellites does. See Figure 4.5. ASAP is meant to be sent by the carrier rocket
Ariane.
ASAP is a fully working system in use. The main drawback is the additional work
before launch that must be done. Test and rocket parameters has to be changed
for this to work.
Further information can be found at [14, 23]
4.5.2 ESPA
Lockheed Martin, Boeing and Alliant Techsystems, three manufacturers of the
launch vehicles called Atlas, Delta and Titan respectively, have developed a standard together for the US government, called EELV (Evolved Expandable Launch
Vehicles) according to [7]. This standard implies that a satellite that can be
mounted on top of one of these carrier rocket also can be mounted on the other
ones. Together they have also developed the Secondary Payload Adapter for EELV,
called ESPA. Here, the small satellites are mounted as in Figure 4.6.
The main drawback with this kind of satellite transport is the placement. Most
of the forces acting on the launcher are in the verical plane, which coincides with
the separation plane for all of these small satellites. This is not good, since the
separation systems is the weakest point and should not be exposed to any stress.
For further information about ESPA, consult [9].
4.5.3 Munin
Munin is an example on how to have but one other satellite hitchhiking. In this
concept, a small satellite resides on top of the main satellite. These two satellites
are separated with a small separation system. For further information about the
Munin project, consult [2].
4.5.4 I-Cone
I-Cone stands for intelligent cone, and is a concept to use the actual adapter-cone
as a separate small satellite (or as a dispenser). Since the main structure of an
adapter-cone must look a certain way to be able to hold the main satellite in place
4.5 Ways to launch small satellites
33
Primary
satellite
Secondary
small
satellites
The rig
Adapter-cone
How small satellites are mounted on a carrier rocket with the ASAP
system. A ring is bolted to the adapter-cone beneath the payload. On this ring,
one can see ve small satellites residing. Figure obtained from [14].
Figure 4.5.
34
A study of small satellites
Small Secondary
Space-craft
Separation plane of
Secondary Spacecraft
Large
Secondary
Space-craft
Primary
Space-craft
EELV
upper
stage
EELV
Standard
Interface
Plane
Small
Secondary
Space-craft
ESPA
Schematic of ESPA mounted to EELV upper stage with one primary
payload and six small satellites. (Reference is [1].)
Figure 4.6.
at take o, the structure of the cone must be very stern. Thus resulting in a
heavy construction, which actually is the main limitation to the I-Cone concept.
In Figure 4.7, a suggestion of how an I-Cone satellite could look like is shown.
F3 A is a SE Space used \slogan" for I-Cone. It stands for four dierent positive
characteristics of the satellite:
Fast: The time to develop an I-Cone from the concept to the complete product
is short.
Frequent: Since a I-Cone can be launched with any kind of launch vehicle, the
satellite can gain a frequent access into space.
Flexible: The I-Cone is built in such a way that it ts many dierent missions,
such as Tech Demo, Commercial or Military for instance. Furthermore is the
I-Cone independent of the main satellite.
Aordable: The most expensive part of a satellite is the launch cost, as said
before. This concept could however dramatically decrease this cost. By
utilizing the launch vehicles over capacity, I-Cone is aordable, compared to
other small satellite launch devices.
4.5 Ways to launch small satellites
35
Suggestion how an I-Cone could look like as a small satellite conguration. Notice the non-symmetric mass distribution over the area of the satellite.
By courtesy of Saab Ericsson Space [24].
Figure 4.7.
There are several potential missions for I-Cone. But in general, certain orbits are
to prefer. It all comes down to the weight of I-Cone. Since it is heavy, relative to
its size, it is diÆcult to move the satellite around to much, thus excluding GEO
orbits which needs a lot of thruster burns to reach. But on the other hand, due
to the weight it also becomes more stable which makes it an excellent choice for
LEO-missions and MEO-missions with high accuracy preferences.
Communication satellite
This could be a eld of interes for the I-Cone unless the orbit is a GEO. The reason
for this is its weight. To get into a GEO, a series of thruster burns has to be done
in order to get the right altitude and speed in the circular orbit, and when a craft is
as heavy as I-Cone, it will consume too much energy to make it a sound alternative.
Positioning systems
This could also be interesting for the I-Cone, since geopositioning systems demand
accurate position, high stability and a lot of satellites. Further more, since the
36
A study of small satellites
position and attitude is important for the satellites,
much fuel is consumed. This
way, if an I-cone was to be used, all four of the F3A atributes are utilized in full.
Main vehicle
The prospect of making I-Cone into a satellite of its own seems to be the most
probable. Then the bus inside I-Cone would take 34 of the space, leaving the rest
for the payload.
Dispenser
This is a highly interesting area for the I-Cone concept, since no other company
as yet has come forth with a good solution how to attach small satellites onto a
rocket in a good manner. I-Cone could be the rst real good solution, since the
main structure is not aected by them at all.
4.6 The need for small satellites
Small satellites is a growing market. But this market could grow even more if a
solution to how they could be launched into space in an easier and cheaper way was
solved. There are four possible ways to hitchhike into space present at the market
today, but all of them have some drawbacks. Since no good solution has been
found, companies launching large satellites (communication satellites for instance)
are not happy to have hitchhikers. SE Space solution, however, might change this,
since the actual small satellites are almost invisible to the main satellite. This
concept, called I-Cone, could therefore have a promising future.
If we look historically on the small satellites development, one can clearly see that
more small satellites are being sent up every year. But when looking at the missions
and costumers, there have been big changes from year to year. At the end of the
period researched in this article, the most usual satellites launched into space were
commercial communication satellites, compared to just a few years earlier when
research and government was in top of the list \most launched". Since the IT
business is bad right now, this has probably changed back to the previous scenario
with science as prime focus of space missions.
In the future however this will probably change again. The reason why this might
be is the expected life-time of satellites. Since they eventually will run out of fuel
and head towards the Earth and burn up, they must be replaced. This means that
satellite launches of communication satellites probably will increase again in a not
too distant future.
What this means for the small satellite industry is diÆcult to predict, but since
launches will increase, so will the possibility to hitchhike with the larger satellites.
Chapter 5
Orbit and attitude
stabilization
In order to interact with other bodies in space in one way or another, the satellite
must have knowledge of a few things. It must know how it is, and how it should be
oriented. This chapter deals with aspects of this matter, and especially it focuses
on the AOCS used to control a spacecraft. It starts by describing ways to determine
if the attitude is correct in Section 5.2.1, and continues with discussing the means
to make changes to a satellite's orientation in Section 5.2.2.
Actual stabilization methods are described in Section 5.3, but rst a short note on
redundancy measures would be in order.
5.1 Redundancy
Since it is expensive to launch a satellite, ss stated above in Chapter 3, it would be
catastrophic if something in the satellite, such as sensors or actuators for instance,
malfunctions. Two things are done to ensure that this never happens. First, all of
the equipment endures heavy tests, and second, many of the sensors and actuators
have a \spare", i.e. if for instance three sensors of one sort is needed, four are used
instead so that if one breaks, the other ones will still be able to complete the task.
For larger networks of satellites, such as GPS for instance, spare satellites are also
orbiting the planet. This kind of redundancy is needed incase one or more of the
satellites malfunctions in one way or another. Then the spare satellite could fast
and easy replace the ase one.
5.2 Sensors and actuators
To control a spacecraft, we need to know three fundamental things; where we are,
where we should be and by what means we can take us there. The rst question
37
38
Orbit and attitude stabilization
has to be solved with some sort of sensors. The second has to be given in advance
(the user has to know where the satellite should point, which orbit the satellite
should have and what the maximum allowed error is). The means by which the
satellite will be controlled are called actuators. All of these three things will be
dealt with in this chapter, starting with sensors and actuators.
The sensors and actuators are very expensive parts on satellites, since the precision,
as well as the durability, of these instruments might be very high (depending on
the mission). Since they have to be able to withstand the climate in space even
the cheapest sensors and actuators must have a certain standard. To keep cost
down, companies that manufactures satellites tries to use COTS1 in as far extent
as possible. Specications, and a short description, for a few of these COTS can be
found for sensors in Table 5.1 and for actuators in Table 5.2. Most of these sensors
can be modeled, and although that will not be done in this text, a more thorough
explanation will be given in the next few chapters. If the reader is interested in
how to model them, [27, 18] is preferable.
5.2.1 Sensors
A sensor is a device that by some mean can determine something about the surrounding environment. It could be a thermometer measuring the temperature, a
Geiger-meter that measures the activity on isotopes or a hydrometer measuring
the dampness in the air etc. In the satellite's bus, actuators are used to direct the
spacecraft if the attitude is erroneous. Hence it needs sensors that can determine
the current attitude. There are many ways to do this, the next few sections constitutes a list of a few of these sensors, and a summary of these can be found in
Table 5.1.
Earth sensors
An Earth sensor measures where the edge of the Earth's atmosphere is. Therefore
this kind of sensors sometimes also are called horizon sensors. Since the atmosphere is warmer then the surrounding space, an IR-sensor2 nds where this edge
is.
By itself this does not give much information, since this kind of sensor only knows if
it points toward the Earth or not. But with additional sensors it might be possible
to determine more about the attitude for the spacecraft. Especially when using
spinning stabilization3 with the spacecraft, this sensor is suitable according to [18].
An Earth sensor is relatively cheap, and has increasing precision the further away
from the Earth it is. Therefore this sensor often is used as a complement to other
sensors, for instance a sun sensor. With a sun sensor and two Earth sensors, the
complete attitude can be determined.
The Earth sensors can also be used as \moon sensors", but this is seldom the case
1 Commercial O The Shelf products, i.e. cheap standard products
2 A sensor measuring heat radiation, i.e. temperature
3 Dierent stabilization techniques are discussed in Section 5.3.
5.2 Sensors and actuators
Earth sensor
39
Sensors
Measures the edge of the Earth's atmosphere (by IR),
to determine the attitude. The output is only a
direction (i.e. only one axis can be established
with these kind of sensors.
GPS
Lets the satellite know its position based on
other satellites position (the geopositioning
system). Dependent on other satellites. Returns
the spacecraft position (the only
sensor that actually determines the satellites
true position). Could also be used to get the
attitude.
Gyros
Notices changes in attitude in one direction per gyro.
Fast sampling, but high drift rate, i.e. needs to be
calibrated often. Not disturbed by other objects.
Magnetometer Determines the crafts attitude by measurement of
the Earth's magnetic eld.
Startracker
Identies the crafts orientation by movement of
the stars relative the craft.
Very expensive and extremely accurate. Returns
attitude in all three directions as well as the
rates. Sampling is slow, and it is useless if any
celestial object such as the Earth, the moon or the
Sun gets in the way.
Sun sensor
Measures the angle in which the light of the Sun
falls on the satellite. Attitude by this can
only be measured in maximum two axes.
Table 5.1.
Sensors used for attitude and, in one case, position determination.
since it is pretty diÆcult to keep track of the Moons position.
GPS
By using the GPS, it is possible for the satellite to determine its exact position
all the time. This is the only sensor that has the ability to determine not just the
attitude, but also the position of the vessel. Actually, the only thing that can be
determined is the position, but by using two GPS sensors apart from one another,
the correct attitude could also be found.
The drawback of this system is, for instance, that it is expensive. Furthermore,
it is only possible to determine the satellites position if its orbit is beneath MEO.
Additionally, the navigation equipment would be dependent on other satellites.
The last point is actually worse than it seems, since its expensive to send something
into orbit, it would be quite disturbing to nd that it crashes due to a glitch in
40
Orbit and attitude stabilization
another satellite.
If the orbit is a LEO, and the mission of the satellite has high demands on the
position, a GPS should be an interesting alternative. But it is far more common
to use ground observations for orbit determination, and sending control signals
directly to the satellite.
Gyros
There are several types of gyros on the market. In this text, two of them will be
discussed and if further information is needed or wanted, consult [18].
First there is the ordinary gyro, also known as a rate gyro, which can determine a
satellites angular acceleration in one axis by using the gyroscopic eect. Second,
there is a gyro called a laser gyro which actually are not a gyro at all. Instead
of using the gyroscopic eect, as \real" gyros, a laser gyro determines the angular
rate by sending two laser pulses in separate directions in a circle. After many
laps in this circle, an angular acceleration would have created a phase shift in the
wavelength. This can be measured, and hence can the angular rate be measured
too.
An advantage of these gyros is that they are not dependent on exterior movements,
such as where other celestial object are, at all. Another advantage is that they can
be relatively cheap, depending on how accurate you want them to be.
One drawback with ordinary gyros is that they have a \drift rate". This means
that they have an error, and that this error is additive. Therefore these gyros have
to be calibrated once in a while. Another drawback is that they only can measure
accelerations in one direction.
Gyros are often used in satellites, and in each satellite there usually are four gyros.
The reason for this is that if one stops working, there are still enough of them left
for all three axis to be determined, i.e. redundancy.
Magnetometers
Earth's magnetic eld varies over the globe. This fact was considered when constructing the sensor called magnetometer. This sensor determines a satellites attitude by measuring the direction
and possibly the strength of the local magnetic
eld. It has a limitation of 0:5Æ in accuracy. Sensing the direction of the Earth's
magnetic eld, however, only gives information of the attitude in two axes.
This kind of sensor does not need exterior sensing. Rather it could be enclosed
into a black box as in Figure 5.1.
Startrackers
A startracker is the most expensive sensor on the market. It is also the one delivering the best approximation of the satellites attitude. There are some drawbacks
with these kind of sensors, though. They are extremely sensitive to light, they do
not work if they are shadowed by another object, and their sample rate is slow
( 1 Hz).
5.2 Sensors and actuators
41
Startrackers are commonly used for three-axis stabilization (see Section 5.3.3),
where they often are used in pairs placed orthogonally to the solar panels and
pointing in separate directions. This way, they will hopefully never get sun light
directly into the sensor opening, and if one is covered, the other one probably is
not.
The advantages with startrackers are that they return data which do not have to
be processed afterwards. Furthermore, one single startracker can give the correct
attitude, angular velocity and rate acceleration with a very high precision. Using
one of these as attitude determination often gives pointing accuracies in the region
of arc seconds.
A typical way that a startracker looks like is presented in Figure 5.1.
Sun sensors
This sensor type, sun sensors, is actually a device measuring the angle in which
the sun beams fall on the satellite. This way, the direction to the Sun can be
determined. The rotation however can not be determined, since another sensor
measurement is needed for this. A sun sensor placed on the solar panels will
always head in the Sun's direction, but need an additional sensor measuring the
angle on the solar panels relative the craft.
Often when using sun sensors, the whole craft has a hemispherical coverage with
them. The reason for this is that many of the components or S/S are dependent
on, or destroyed by the sun. Therefore the sun always needs to be tracked, so that
the solar panels gets sunlight while the startrackers do not, for instance.
5.2.2 Actuators
Actuators are the combined word for the means of attitude adjustment and travel
in space. This means that they actively add a torque or a force to the craft. The
easiest of these two operations is adding a torque. To change the orbit or attitude
with a force, one has to do it by using resources that are not renewable, i.e. with
some sort of fuel. Torque, on the other hand can be added with reaction wheels,
described later in this chapter, which uses renewable electricity as energy source.
The following sections describe dierent often used actuators, which are all outlined
in Table 5.2.
Magnetorquers
Magnetorquers use the Earth's magnetic eld to generate a momentum by adding
an electric eld. It is often used to unload reaction wheels in a LEO orbit, for
instance.
Since the only thing the craft has to do is to generate an electric eld, the energy
source is completely renewable.
One example on how these magnetorquers could look like can be found in Figure 5.1.
42
Orbit and attitude stabilization
Two examples of how dierent sensors and actuators could look like.
The upper one is a sensor, a startracker, and the other sensor is the black box at
the bottom, a magnetometer. The two actuators are located at the sides, where
the ones on the right are reactionwheels and the left ones are magnetorquers (or
torquer rods).
Figure 5.1.
Momentum wheels
Momentum wheels is another way of passive stabilization described in Section 5.3.
It is one or more wheels, which often are a bit larger then reaction wheels, that
spins. When spinning, small disturbance torques are swallowed by the moment of
inertia, thus resulting in that they vanish.
The main dierence between reaction wheels and momentum wheels are that the
latter has a momentum bias, i.e. speed from the beginning, while the reaction
wheels have not4.
4 You
could of course say that reaction wheels have a momentum bias that is zero.
5.2 Sensors and actuators
Magnetorquers
43
Actuators
Uses the Earth's magnetic eld to generate a force
in the direction we want to. Uses renewable
power, which makes it long lasting.
Momentum wheels A large spinning wheel that makes the satellite
work like a spinning craft (passive
stabilization)
Reaction wheels Disturbances is compensated by another
disturbance in the opposite direction. Uses
renewable power, but needs to be unloaded in
case the wheels start to move to quickly. We
also get an internal momentum of inertia.
Thrusters
Disturbances are thrust compensated. Not
renewable.
Table 5.2.
Actuators used for space attitude and orbit determination.
Reaction wheels
These actuators accumulate disturbing torques by adding an opposite torque. This
is done with small wheels inside the craft. If the disturbance is in the same direction
all the time, the wheels keeps spinning faster and faster. At a certain level, an
unload procedure has to be performed. This procedure simply gives the satellite a
torque in a direction which leads the reaction wheels to reduce their speed.
In Figure 5.1 some reactionwheels can be found. Observe that a reaction wheel
could be regarded as a momentum wheel with zero momentum bias, and vice versa.
Propulsion system
Thrusters are, measured in torque, somewhat the last actuator to use if no thoer
technique works. It is most commonly used for big changes in attitude, as a backup
to the magnetorquers or as unloading system for reaction wheels (when using 3-axis
stabilization). There have also been attempts to use these to the actual stabilization. But this is not recommendable, since fuel is the main limitation for the
expected lifetime in space, and to adjust the attitude with thrusters would be fuel
consuming. By combining dierent stabilization methods, on the other hand, this
fuel consumption could be lowered.
The above is of course only true for attitude manouvers. For orbit manouvers,
thrusters are pretty much the only actuator able to use. There are other ways to
change orbit to, such as solar sails, but these are as yet untested.
There are a few dierent sorts of propulsion systems used, and in the following
chart a brief discussion on advantages and disadvantages for the most common
grouping of these propulsion systems are given:
Solid: Solid fuel could be black powder, for instance. The main advantages is that
the system is simple, and that it survives long storage times. Unfortunately,
44
Orbit and attitude stabilization
Propulsion
Multiple Typical
Specic
system
rings force [N ] impulse [ Ns
kg ]
Solid
no
103 105 2400 2700
Hydrazine
yes
0:2 200 1800 2200
Bipropellant
yes
2 400
2800 3000
Cold gas
yes 0:005 0:02 500 900
Electrical (ion) yes 0:005 0:01 20000 30000
Table 5.3. A table of attributes for dierent propulsion systems. Specic impulse measures the impulse applied to a craft divided by the mass of the propellant.
this kind of propulsion system can only be red once.
Hydrazine: This propulsion system is mono-propellant. The only substance
used is the liquid hydrazine, which is an advantage. On the other hand, this
substance is extremely toxic, which makes it diÆcult to handle.
Bipropellant: Bipropellants suer from very complex systems and expensive
handling. A reason for this is the explosion hazard which, for this system, is
relatively high. An advantage is the high specic impulse recieved from these
kind of systems.
Cold gas: The construction of these propulsion systems is very simple, as with
the solids. A advantage with cold gas as propellant is that it does not interfere, or worse destroy, heat sensitive components. The gas, nitrogen for
example, is often compressed. The main disadvatage is the small exchange
of matter in the specic impulse.
Electrical: Although somewhat untested, this kind of propulsion systems has a
promising future. The reason for this is that it is cost eective and partially
renewable in the sense that most of the energy used is electric energy, and less
energy is lost when converting the matter into a force. The main drawback is
the that the force given by these propulsion systems are really small. About
one tenth of a Newton, which is the typichal force given, is as much as a
A4-paper laying in the palm of your hand.
To summarize these dierent propulsion systems, and give a vague description on
some attributes for them, see Table 5.3. Further explanations can be found in [27].
5.3 Stabilization methods
There are two distinct separate ways to stabilize a craft. Either by using physical
laws, such as the gravitational eld or moment of inertia, or by using sensors and
actively controlling the attitude. These two ways of stabilization are refered to as
passive and active respectively.
5.3 Stabilization methods
45
It is pointless to discuss what stabilization technique is most common, or which of
them that is the best, since it depends on the mission, as said before. Furthermore,
satellites can mix the dierent methods in order to get a better pointing accuracy
at a lower cost. This is a good thing to keep in mind, when reading the next two
sections, which will describe these two stabilization methods in more detail. But
st some motivation for stabilization is given.
5.3.1 Why do we need stabilization?
It is not hard to motivate the use of stabilization techniques. First, is the missions
and the orbits. Missions are almost always of types that relay information (communication satellites), that do research or that observes the Earth's environment.
For this the spacecraft needs at least power, which it gets from solar arrays, or
solar panels. To get this power, they will better be pointing towards the Sun, and
that is one reason for using stabilization. To be able to guide the solar panels.
But the satellite could, for instance, look like a sphere covered with solar arrays
so that always at least one third of the satellite is radiated from the Sun. Still, to
complete a certain mission, the craft usually has to interact with something else in
space. And if it must, it has to be stabilized in one way or the other.
To motivate the dierent stabilization techniques, i.e. why we for instance should
not use the best way to stabilize all the time, consider at these to examples.
Example 1
Consider the GPS from Example 2 in Chapter 3. The pointing accuracy for this
system should be pretty high for each satellite to give as perfect geographical
position as possible. In other words, we need a 3-axis type of stabilization and thus
also a control system.
Example 2
Consider a research satellite that is residing in a polar LEO. The actual mission being to measure the eruptions of the Sun causing northern light phenomena. Would
such a satellite really need a good pointing accuracy? Why should there be a
pointing accuracy at all?
Clearly there are possibilities to reduce the cost and development time of such a
vessel.
5.3.2 Passive stabilization
This method of stabilization is very simple and does not use any control laws to
maintain attitude, although control still might be used to complete other tasks.
Instead, they rely on physical quantities. There are several dierent subgroups to
46
Orbit and attitude stabilization
passive stabilization which diers from one another.
Gravity gradient: Satellites stabilized with this method aligns themselves to the
Earth's gravitational eld. This is easiest done by extending a long rod. (For
further information, consult [27]).
Spin stabilized: This method works almost like a gyro. By spinning the spacecraft about its' own axis, the movement will \swallow" disturbances (see [27]
for more information). The main drawback with this method is the large
eort of switching attitude, where the user has to either stop the satellites
rotation before changing point direction or put a lot of energy into the maneuver. Another drawback is the non exibility when using solar panels.
Since it can not point at a single direction, it has to have the solar panels
rotating too, which means that the energy received is only maximum half
of the total capacity. An advantage with spinning satellites is that a single
instrument on the spinning craft can \sweep" a larger area. For instance if
we use an Earth sensor, more could be said about the attitude of the craft
then with a stabilization method that is not rotating.
Dual spin: In order to cope with some of the drawbacks when using a spin stabilized spacecraft is to use a dual-spin instead. These crafts have one spinning
part, and one that is not spinning. This way, one can make better use of the
solar panels, but it is still diÆcult to make maneuvers and some additional
control loops are necessary. Another disadvantage is the wear and tear from
friction between the two satellite parts.
Momentum bias: A, perhaps, more innovative way to manufacture a satellite by
Nutation dampers
Damper
Pendulum
Eddy current
Ball-in-tube
Viscous ring
Magnetic
Gas Jets
Passive dampers
Energy dissipation mechanism
Fluid friction
Eddy current
Rolling and viscous friction
Fluid friction
Active dampers
Magnetism in spinning vessel
propulsion
Libration dampers
Spring damper
Spring force in the Earth gravitational eld
Magnetic/Eddy current Magnetically anchored Eddy current
Eddy current rods
The Earth's magnetic eld creating Eddy currents
in ferromagnetic rods
Table 5.4.
Dierent Representative Dampers
5.3 Stabilization methods
47
using spin technique called momentum bias. Instead of spinning the whole
craft, momentum bias only spins a single wheel inside the craft. This will
obviously have the same result as spinning the whole craft, but the problem
with maneuverability still remains.
All of these stabilization methods by themselves gives a pointing accuracy in the
order of degrees. If you, for instance only use gravity gradient the pointing accuracy error will be in the region of several degrees.
On the other hand, these stabilization methods are relatively cheap both to develop (both in money and time) and to use (low fuel consumption). Although no
control system is required, this kind of systems (especially gravity gradient) often
has some kind of damper. This is used to minimize the oscillation arising from
such stabilization techniques. For a spin-stabilized craft, the periodic motion is
rotational and known as nutation, whereas for gravity gradient stabilized crafts, it
is oscillatory and known as libration. In Table 5.4, a list of some passive and active dampening techniques are shown for both libration and nutation. For further
knowledge, consult [27].
5.3.3 Active stabilization
The main dierence between passive and active control is that in active control,
we use sensor data to determine small disturbance torques and actively control the
output from these sensor readings. In passive control, on the other hand, small
torques are taken care of by, for instance, the rotation of the satellite.
In active control it is most common to speak of 3-axis stabilization, which means
using both sensors, to determine where we are, and actuators to get us where we
should be. Obviously this is the most diÆcult and energy consuming strategy, but
the big advantage is the pointing accuracy achieved. In Table 5.5 approximate values of the pointing accuracy for the dierent stabilization methods, both passive
and active, are given.
The three-axis stabilization technique works as follows;
Method
Cost
Point Accuracy
Gravity-gradient Cheap
5 deg
Spin
Cheap
1 deg
3-axis
Expensive 1 arcsec
Table 5.5.
Cost compared to accuracy for dierent control methods.
1 Determine where we are.
2 Compare this with where we should be.
3 If the value was correct, return to (1), else
48
Orbit and attitude stabilization
4 Apply some sort of control law.
5 Send the resulting steering signal to the actuators.
6 return to 1.
These points are explained below.
Determination
To determine where we are might be done in several dierent ways, depending on
which sensors the satellite is provided with, but one way is this one. Calculate
the predicted position and attitude, by integrating the movement equations, see
Section 2.2, and update this state with the new sensor data, if there are any new
data from the sensors available.
Comparison
Second, we have to compare the sensed data with some reference value. To do this,
the satellite obviously needs to know the reference position and attitude. This can
be done either in advance when creating the ight plan or \in ight" from ground
control.
Apply control law
This part of the program can be everything from a simple PID controller to a
much more sophisticated optimal control using dierent control blocks for dierent
control modes. The latter is to be preferred since often the satellites using 3-axis
stabilizations are the ones with extremely high demands in pointing accuracy, and
a well written control law is cheap in comparison with the launch and sensor cost.
Another advantage by using optimal control, is that you can add conditions to
these kind of control loops, such as moving from one state to another by minimizing the power output used while not exceeding a certain value on the power outlet.
If a LQ control, or optimal control, is used a linearization has to be performed to
calculate the optimal feedback amplication through a Kalman lter. The reason
for this is the nonlinear feature of the system.
Steering
The steering is actually connected to the \apply control law" section, since the
outcome from the control law is the input to the steering. But due to the fact that
actuators have limitations, glitches and restrictions (wheels can not have innite
speed, nor can thrusters give innite thrust), they should also be modeled and
included to the function. This might not be necessary when using a PID controller
5.3 Stabilization methods
49
(although this could lead to resonance oscillation due to the glitches), but it is very
necessary when using other types of control, since the actuators eect the whole
system.
50
Orbit and attitude stabilization
Chapter 6
The Attitude and Orbit
Simulation Package (AOSP)
The main eort on this thesis work has been to make a simulation package for
attitude stability. This chapter will describe how such a program can be built.
The rst section, Section 6.1, will discuss the goals with this program. Section 6.2
will try to motivate and explain the tools needed to complete such a program. One
of the last section in this chapter handles some issues due to the chosen way to
implement the program in Section 6.3, and the complete chapter is then summed
up in Section 6.4.
6.1 Requirements
The goal with the AOSP is simply to give the user an idea what the pointing
accuracy could be, while using a certain set of sensors and actuators for a certain
satellite. Further more, there were some additional requests given by the company
commissioning this nal thesis work, Saab Ericsson Space AB [24].
Below is a short list of the main specications:
Pointing Accuracy How the the pointing accuracy essentially diers when using
dierent sensors and actuators.
Evaluation Time This program should not take too long to simulate. How long
\too long" is, was left for the programmer to evaluate. But a general objective
should be faster than real time.
Module Structure The program should be built on exchangeable modules, such
as:
Satellite module (to change satellite attributes)
Dierential equation solver module
51
52
The Attitude and Orbit Simulation Package (AOSP)
Input data module, dening orbit (to change orbit)
Reference motion module (to change reference attitude)
The reason for doing this is to make the program as general as possible. The
user should be able to change the simulation parameters in an easy way.
Commented Code The code of the program should be well commented. If more
work on the program should be done, it must be easy to understand the code
already written.
Output Validation Some validation of the output should be done. As example
of validations is to compare results of pointing accuracy with known data.
User Friendliness The software should be reasonably easy to use.
6.2 Prerequisites
There are a number of prerequisites needed to create this kind of a program. In
Table 6.1, a list of these things, along with a short explanation, can be found.
In the following sections each of the points in this list will be taken care of. All of
the issues describe one important aspect of the creation of the simulation model,
and hence an important decision by the programmer.
As the issues are written, they belong to each other; to be able to write the program,
the rst point is needed; to represent the movement, some coordinate frame must
be used; to be able to solve the movement equations, we have to determine a model
and so forth.
6.2.1 Development environment
The language in which this program should be implemented was not, as seen,
determined in the specications. The practical options for the programmer could
be for instance C++, since it is fast and fairly simple. But also ADA could be
a good suggestion because then, you could get some real-time aspects into the
simulation and it is also fast. MATLAB could also be used, the reason being its
simplicity while working with control and matrices.
When looking at Table 6.2, where a few dierent languages are listed with their
attributes, the choice does not get any easier. The main problem being to get a fast
execution time while keeping development time down (since this work is maximum
20 weeks long).
Although MATLAB is chosen in the AOSP, because it has a faster development
time, C/C++ or ADA might be a suggestion if the time for the development of
the software in these languages exists. If one of these languages are chosen, there
are some packages to these languages that manages matrices that would ease the
programming. When using any of these two languages, the computation time could
decrease as much as 200 times.
The reason for the slowness of MATLAB might on the other hand vanish, if the
6.2 Prerequisites
Entity
Development environment
53
Explanation
There should be some considerations on what
program language to choose to implement the
program code in.
Coordinate frames
A description on how to represent
data should be investigated.
Model representation
Handles which states to use in the chosen
coordinate frame to describe the movement.
Dierential equations solver Some eort on how to solve the dierential
equations that arise from the model
representation should be handled.
Linearization
Due to the fact that the dierential
equations are nonlinear, there is a
problem when using linear controlstrategy's on the model (such as Kalman
lters for instance). This must be handled
by a linearization.
Measurement determination Since measurement updates are discrete, and
there are many sensors, a strategy on how
to weigh these measurements together must
exist.
Stabilization strategy
How the simulation model of the craft should
be stabilized is an issue that has to be
dealt with, since some of the techniques does
not need additional control.
Needed data
There are data that is essential for the
simulation model to function. These should
investigated further.
Table 6.1.
Dierent aspects of creating a satellite simulation program.
developers, MathWorks [26], continues to accelerate their code in future version
of this program. The newest version, Version 6 Release 13, is already somewhat
accelerated. For further information about MATLAB issues, see Section 6.3.
Another thing to keep in mind is the work put into separating dierent tasks within
the code. The reason for doing this is that MATLAB can run software written in
the language C via a interface called MEX, and thus (by implementing the vital
loops in C instead of in MATLAB) increasing performance. As is pointed out in
Appendix A, the actual simulation does not start until the user tells us to. When
this happens, the control is given to the program and calculations alone, and only
small amounts of data is directed to the graphical interface. This means that no,
or little, communication between the C-code and the MATLAB code via the MEX
interface has to be performed if the user chooses to reimplement the code in C
instead of in MATLAB (where it is implemented right now).
54
The Attitude and Orbit Simulation Package (AOSP)
Programming
language
C/C++
ADA
MATLAB
Pros
properties
Cons
properties
Fast execution. Slow development.
Fast execution. Slow development.
Real-time
DiÆcult to use with
possibilities.
matrices.
Fast development. Slow execution.
Easy to use with
matrices.
A list of dierent programming languages along with their attributes when
creating a pointing accuracy simulation program for satellites.
Table 6.2.
6.2.2 Coordinate frames
There are several dierent ways to represent a satellite system. One way which is
easy to comprehend is to use the Geocentrical Equatorial Coordinate Frame. This
frame is explained in detail in Appendix C.1, but a short explanation would be:
a system with the middle point in the Earth's center, with the axes not rotating
with it.
But in this coordinate frame, we can only represent the position of an object,
and not the attitude. To represent a rotation demands a somewhat more diÆcult
coordinate frame. Often when speaking of rotating systems, Euler Angles are
mentioned. These represent a rotation with three dierent rotations about each
primary axis in the reference frame.
But there are some drawbacks with this system, and therefore another system is
often used, called quaternions or Euler symmetric parameters. They describe the
rotation of one system relative the other with four components instead of three as
it was with Euler Angles. Three of the component describe the axis of rotation,
and the fourth describe the actual rotation. Quaternions will be further described
in Appendix C.2.
6.2.3 Model representation
How the pointing accuracy should be modeled is not an easy task since even the
smallest torque changes a satellites attitude. It is not possible to just guess the size
of disturbances, and apply this to a satellite model as white noise. The reason for
this is that the magnitude of dierent disturbance torques are dependent on both
the physical properties of the spacecraft and where in orbit the spacecraft is.
The only option left is to simulate the whole movement of the craft using the differential equations of motion (derived in Section 2.2). These are also fundamental,
and will work with any craft independent on movement and physical properties.
This is a good thing, because it makes it easier to keep the specications.
The models of dierent disturbances are already discussed in Section 2.3, and will
not be discussed here. However, the state representation of the model chosen for
6.2 Prerequisites
55
this program is explained below. The coordinate frames are the ones discussed in
the previous section.
States
To describe the movement of the satellite, we have to represent the orbit and attitude somehow. A position, and velocity, for both the satellite's true movement and
the estimated movement would suÆce to simulate the actual orbit. But some way
to describe the attitude is also needed. One way to do this is by using Euler angles
which represent dierent rotations in space, but a more sound (and somputational
fast) way is to use the transformation called quaternions previously discussed.
A very common coordinate frame to relate the position and the attitude for a satellite to is the Geocentrical Equatorial Coordinate Frame given in Appendix C. By
using this frame, and quaternions the whole crafts movement can be calculated.
Therefore the following states are used in the AOSP software:
Three states describing the current oset in the position of the satellite, using
the Geocentrical Equatorial coordinate frame described in Appendix C.1:
x-position
y-position
z-position
x
y
z
Three states representing the oset velocity for the satellite:
Velocity in x-direction
Velocity in y-direction
Velocity in z-direction
Vx
Vy
Vz
Four states which represent the transfer function described in quaternions from the inertial
frame (the Geocentrical) to the body frame, see Appendix C.2
0
B
q=B
@
q0
q1
q2
q3
1
C
C
A
Transfer function
Three states representing the angular velocity of the spacecraft, expressed in the
Geocentrical coordinate frame, see Appendix C.1
!x
!y
!z
Angular x-velocity
Angular y-velocity
Angular z-velocity
56
The Attitude and Orbit Simulation Package (AOSP)
To sum it up; the state vector, xbody , becomes:
0
xbody
=
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
@
x
y
z
Vx
Vy
Vz
q0
q1
q2
q3
!x
!y
!z
1
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
A
(6.1)
In order to be able to control the attitude of the satellite, a reference vector, xref ,
that describes the reference movement in attitude must also be present in the
program. Furthermore, since we only know the attitude of the craft from sensor
readings, we have to estimate the attitude. Therefore a vector, xest , that contains
the estimated values should also be included in the state-vector. The xest vector
should contain the four quaternions and the angular velocities. But there might be
some cases when some (but not all) of the quaternions or angular velocities is not
controlled while the others are. This functionality is not yet implemented in this
program, although it should not be too diÆcult to do this.
The only vector left is the reference values to the position. But since orbit movements are expensive due to fuel consumption, the error in position is often allowed
to be x, where x is dependent on the mission but could be some 100 meters.
It is only beyond this point that the control law starts to adjust the orbit, and
when it does it often uses the Bang-Bang 1 control law. To implement orbit control
is left out in the AOSP since the error from a single lap is in the order of meters.
The reference vector has to be given by the user in advance, and is completely
independent of the dierential equations solved in the program. The complete
movement vector on the other hand consists of two movements. One that describes the true movement, and one that is used as the estimated value of the
previous one. The nal state vector becomes:
xbody
=
(6.2)
xest
and has 26 states.
Dierential equations
The system, with the states described in Equation (6.1) and the general movement
Equation (2.5) and (2.11), is described by Equation (6.3) and by Equation (6.4)
1 see
[10] for further information about Bang-Bang control.
6.2 Prerequisites
57
for orbit and attitude respectively.
The position is determined in Geocentrical Equatorial coordinates. Any other coordinate frame would suÆce, but someone must be used, and this frame is often used
in other books. Therefore a X; Y; Z Cartesian system is used, with corresponding
velocities Vx; Vy ; Vz . The movement equations are given in Equation 6.3.
x_1 = x4 (X_ = VX )
x_2 = x5 (Y_ = VY )
x_3 = x6 (Z_ = VZ )
(6.3)
x_4 = X
(V_X )
r
(V_Y )
x_5 = Y
r
Z
x_6 = r (V_Z )
0
X
Y
Z
1
Here, r = @ A.
The movement equations for the attitude are given in Equation 6.4.
2
x_1
0 x5 x6 x7 3 0 x1 1
B
C
x_2 = 1 6
x5 0
x7
x6 7
7 B x2 C
2 64 x6 x7 0
x_3
x5 5 @ x3 A
x7 x61 x5 0
x4
x_4
0
TX
!_
= I 1 @ TY A
(6.4)
TZ
where the Tn-elements can be found in Equation (2.12) and
9
x1 = q0 >
>
x2 = q1 = = q
x3 = q2 >
>
x4 = q3 ;
9
x5 = !X =
x6 = !Y
=!
x7 = !Z ;
All of these equations are derived from [12, 27], and they are implemented in the
le AxisStab in the catalog /SatSim/Prog/.
Since there might be disturbance torques, the forces acting on a satellite are added
to the acceleration for the position, and the angular acceleration are added to
the attitude movement equations. The latter one is fetched from a user dened
position.
6.2.4 Dierential equation solvers
Since we now have a couple of nonlinear rst order dierential equations to solve,
a solver might be in order. MATLAB provides several solvers, but these solvers
58
The Attitude and Orbit Simulation Package (AOSP)
are all non-sti, i.e. the step-size of the solvers are variable. Observe that you can
\set" the step-size in, for example, the ode45 solver in MATLAB. But this will not
make the solver sti. Instead, an extrapolation is done after the solution is found.
To realize the problems that could arise with non-sti solvers, a deeper understanding on how dierential equations are solved numerically is needed.
A dierential equation is on the form x_ (t) = f (x; t). The value of x at time t could
be found by integrating the right hand part of the equation, i.e. x(t) = R f (x; t)dt.
This can not be doneRdirectly numerically.
An approximation has to be performed
by substituting the sign with a P instead. This means that we, instead of
calculating an integral as before, has to calculate the sum, i.e.
X
x(t) = t f (t)
(6.5)
t
This is what is done in a computer when calculating a dierential equation. But
to do this, the size of t, or the step length, has to be determined. When this
step length is x, it is called a sti solver. Certain computations, especially for
dierential equations that changes very little between every step, uses variable step
length instead. When doing this, the program starts at a small step length, and
increases it for every time the sum is calculated until the error reaches a certain
predened value. These kinds of solvers are called non-sti.
When the orbit is evaluated with a non-sti solver, some problems may arise, since
these solvers take larger and larger steps until a certain error is exceeded. In orbit,
this will be a problem, since the satellite sometimes need a large step-size (at the
side of the orbit ellipse) and sometimes need small step-sizes (especially at perigee).
The problem is that non-sti solvers eventually take one step to far, thus creating
an error, and this continuous, so when a whole complete lap is nished, the solver
could be several hundreds of meters o. Therefore, this program needs a sti solver.
Another reason for using sti solvers is that sensor readings only arrive at certain
time intervals, thus needing the step-size to be exactly a multiple of these intervals.
Otherwise will the sensor readings arrive at the wrong instant, which is not good
(just imagine what would happen if the step-size is 10 seconds, and a large error
would have been detected only after half of that time!).
Since this program needs a sti solver (i.e., the loop is in the main program and
not in the dierential equations le), I've implemented the easiest sti solver there
is; a Runge-Kutta solver. How this solver works is explained in the next section.
Sti systems
The simulation environment has to be able to simulate both the orbit and the
attitude. These two systems vary dierently from each other, i.e. the attitude vary
as little as a few arc seconds for every second, while the position vary with a few
hundred meters at the same time interval. This is called a sti system. A sti
system is hard to solve, since the step-length of the \slow" part(i.e. the attitude)
should be short, while the step-length for the \long" part (i.e. the position) should
be long in order to get accurate results.
6.2 Prerequisites
59
Due to the above, the simulations of the attitude and the orbit should be possible
to separate. This way, the orbit could use a bigger step-size while the attitude
could keep its small ones.
There is however one problem with separating the simulation of orbit and attitude
that are already mentioned. The disturbances in attitude is dependent on the
craft's position. This is solved by the programmer by assuming that the orbit is
not dependent on the attitude (which is obviously not correct since orbit maneuvers
demand knowledge of which way the actuators can actuate). Furthermore, to be
able to simulate just the attitude, a simulation of the orbit must have been done
in advance so that the attitude could make use of this data to determine dierent
disturbances.
Runge-Kutta dierential equations solver
According to [13] the sti Runge-Kutta method is an iterative method solving the
problem:
y 0 = f (t; x)
(6.6)
X (t0 ) = x0
with the following iteration sequence:
tn+1 = tn + t
xn+1 = xn + 16 (k1 + 2k2 + 2k3 + k4 )
k1
= tf (tn ; xn)
(6.7)
k2
= tf (tn + 2t ; xn + k21 )
k3
= tf (tn + 2t ; xn + k22 )
k4
= tf (tn + t; xn + k3)
Where f (t; x) is the dierential equations to be solved. The truncation error (i.e.
the error in the answer caused by truncations) will be O(t4 ). t is the wanted
step size, given by the user before the simulation begins.
6.2.5 Linearization
From Section 2.2 we can clearly see that the movement
dierential equations are
linear. The nonlinearity consists of terms like r13 and _ = f (; u), where u is
the control signal. These nonlinearities can be a problem when constructing a control to the problem since control laws are not applicable for nonlinear functions.
To be able to use linear control theory to the steering problem, we have to linearize the nonlinear movement and attitude equations. Since we actually have the
dierential equations, the easiest way to do this is by using a rst order Taylor
series expansion. This will be approximately correct in a vicinity of an equilibrium state. Therefore we have to nd such a state. A simple way is to use the
dierence between the estimated state and the body state as a new state vector,
since this dierence should be zero all the time. This way the state vector, instead
of describing the position and velocity of the body frame, describes this dierence
not
60
The Attitude and Orbit Simulation Package (AOSP)
movement. There are, however, some things to watch out for when doing these
operations.
Quaternions, as described in Appendix C.2, describes a transformation. This means
that ordinary rules of mathematics does not apply to the quaternion vector. One
vector minus another vector is not dened as the dierence between them. The
correct dierence is instead described by quaternion multiplications. This will be
explained in Example 1.
Example 1
Assume that we have two bodies, A and B. They each have a rotation described
by a quaternion, qA and qB , from a reference frame, O. If we let:
0
11
B 0 C
C
qA = B
(6.8)
@ 0 A
0
which denes no rotation between system O and A at all, then one could easily see
that if also qB has no rotation, i.e. qB = qA, that
0
01
B 0 C
C
qA qB = B
(6.9)
@ 0 A
0
which obviously is not dened, since the square sum of a quaternion always has to
be equal to 1.
The correct way to calculate the dierence would be as in Equation (6.10).
0
11
B 0 C
C
q diff (B A) = q A1 q B = B
(6.10)
@ 0 A
0
This result is, of course, expected since the dierence between two non rotations
in rotation is a non rotation.
To further simplify this, look at Figure 6.1, where the inverse of a quaternion is
dened as in Appendix C.2.
Now we have the fundamentals to know the linearization. Before the actual nal
expressions given later in this section, a short description of the general Taylor
series expansion might be relevant (see also [13]).
Denition 6.1 (Multi variable Taylor series expansion) Let f (x) and its n + 1
rst derivatives be continuous in an interval about x = a. Then in this interval:
@f (a)
@f (a)
@f (a)
(
x1 a1 ) +
(
x2 a2 ) + +
(x a ) + O(x2)
f (x) = f (a) +
@x1
@x2
@xm m m
(6.11)
6.2 Prerequisites
61
Frame A
qA
q -1
A
Main frame
qdiff = q -1
qB
A
-1 = q -1 q
qdiff
A
B
q -1
B
qB
Frame B
Transformation between dierent coordinate systems using quaternion transfer functions. Let for instance the main frame be the Geocentrical frame
described in Section C.1, frame A be the estimated movement and frame B be the
true movement of the satellite. Then this system would describe the used system
very well.
Figure 6.1.
When using a linearization, we get the two A-matrices, one for the attitude and
one for the orbit movement, in a vicinity of the true movement. This implies two
things; rst, large errors will cause a false model, thus some control is needed to
keep the orbit and attitude correct; second, since we get the movement equation
in the vicinity we can not calculate x_ directly, rather we get x_ = Ax instead.
This means that to actually approximate the state derivate of the orbit movement,
for instance, we rst have to calculate the dierence between the estimated system
and the true system, multiply this with the linearized A-matrix. Then we get the
62
The Attitude and Orbit Simulation Package (AOSP)
dierence between the derivatives. The last step would be to use the estimated
signal to know the true motions state derivate.
The following subsections describe how to get the A-matrix from the movement
equations and states.
Orbit linearized movement
The linearized orbit movement equations, with the state vector and movement
equations stated in Section 6.2.3 and Section 14, are described in Equation (6.12).
Observe that xOrb describing position and lateral velocity, and that r =
p
X 2 + Y 2 + Z 2.
2
3
0
0
0
1 0 0
6
0
0
0
0 1 0 77
6
6
0
0
0
0 0 1 77
6
6 ( 2X 2 +Y 2 +Z 2 )
3
XY
3
XZ
x_ Orb = 6
0 0 0 777 xOrb
5
5
5
2
6
r2
r2 2 2
r
6
( 2Y +X +Z 2 )
3Y Z
3XY
0 0 0 775
6
5
5
5
2
r
r2
r2 2 2 2
4
( 2X +Y +Z ) 0 0 0
3XZ
3Y Z
5
5
5
r2
r2
r2
(6.12)
where
X = The true movements current X-position
Y = The true movements current Y-position
Z = The true movements current Z-position
Attitude linearized movement
The attitude linearized movement is rather diÆcult to calculate, since every value
depends on all other values. The nal equations are rather long, and looks like
Equation (6.13):
2
0 !X !Y !Z q1 q2 q3 3
6
!x
0
!Z !Y
q0 q3
q2 7
6
7
6
!Y !Z
0
!X q3 q0 q1 7
6
7
!Z !Y !X
0 q2 q1 q0 77 xAtt
x_ Att = 6
(6.13)
6
6
0
0
0
0 k11 k12 k13 77
6
4
0
0
0
0 k21 k22 k23 5
0
0
0
0 k31 k32 k33
where
0
1
k11 k12 k13
k = @ k21 k22 k23 A
= I 1T
0
T
=
@
k31
TXX
TY X
TZX
k32 k33
TXY TXZ
TY Y TY Z
TZY TZZ
1
A
6.2 Prerequisites
and
TXX
TXY
TXZ
TY X
TY Y
TY Z
TZX
TZY
TZZ
and
63
=
=
=
=
=
=
=
=
=
I21 !Z I31 !Y
(I22 I33 )!Z 2I32!Y I31 !X
(I22 I33 )!Y + 2I23!Z + I21 !X
(I33 I11 )!Z 2I31!X I32 !Y
I32 !X I12 !Z
(I33 I11 )!X 2I13 !Z I12 !Y
(I11 I22 )!Y 2I21!X I23 !Z
(I11 I22 )!X 2I12 !Y I13 !Z
I13 !Y I23 !X
0
xAtt =
B
B
B
B
B
B
B
B
@
q0
q1
q2
q3
!X
!Y
!Z
1
C
C
C
C
C
C
C
C
A
6.2.6 Measurement determination
When using sensors as an estimate of position one has to take into account that
sensors gives no continuous values at a certain update interval. For this reason,
we have to weigh sensor values and predictor values together. Especially Kalman
lters deals with this problem in a sound way. This text is derived from [11].
Kalman lters
Kalman lters are linear lters that estimates the state of a linear system based on
measurements, thus the linearization section above. It is optimal if the system to
be estimated is linear, and if disturbances are Gaussian2. The Kalman lter used
in this program is based on a linear state space model:
xt+1 = t xt + w t
(6.14)
where
xt = the state vector at time t
t = the time descrete state transfer matrix
wt = the process noise, or disturbance vector with
covariance Qt = E [wtwTt ]
Each measurement, yn are made by:
y n = C n xn + en
(6.15)
2 White
noise
64
The Attitude and Orbit Simulation Package (AOSP)
where C n is the measurement matrix and en is the measurement noise or disturbance vector with covariance Rn = E [eneTn ].
The Kalman lter equations containsT the state vector estimate, x^ , and the covariance matrix P = E [(x x^ )(x x^ ) ].
The actual lter works in two steps. First the state estimation vector, x^ , and the
covariance, P is calculated. Then, these estimates are updated with the sensor
readings. Thus if there are no readings at all, the state vector is still dened.
These equations constitutes the rst step:
^ (t + 1j) = t x^ (tj)
x
(6.16)
P t+1 = t P t Tt + Qt
Whenever a new measurement becomes available, the following measurement update equations are used:
K = P C Tn (C n P C Tn + Rn ) 1
(6.17)
^ + = x^ + K (y C nx^ )
x
P+ = P
KC n P
where K is the Kalman lter gain.
A numerically more reliable method to calculate the covariance is to replace it with
its square root, SST = P . This improves the condition number. The reformulated
update equations for the square root lter becomes:
^ (t + 1j) = h t x^ (tj) 1 i
x
(6.18)
S t+1 0
= tSt Qt2 T
Where T is a orthonormal
matrix (T T T = 1) and Qt2 is any square root of Q at
T
1
time t such that Qt2 Qt2 = Qt. T can be found by QR-factorization 3 and Given's
rotations. The measurement updates become:
f(C n P C T + R) 21 (y C n x
^ +# = x^ + K
x
^)
n
"
1
1
T
2
(C n P C n + R ) 0 = R 2 C n S T
f
0 S
K
S+
(6.19)
1
6.2.7 Stabilization strategy
According to Chapter 5, there are several ways to stabilize a spacecraft. Which
of these stabilization techniques should be used in this program? If we keep the
dierent techniques apart (it might be useful to mix them too), there are ve to
choose from:
Gravity gradient
3 By
the command QR in MATLAB
6.2 Prerequisites
65
Spin
Dual spin
Momentum bias
3-axis stabilized
A fully functional simulation program would, of course, be able to simulate all of
these stabilization techniques. The AOSP can be expanded to handle all of them,
but there was only time to implement one of them.
If the gravity gradient was to be used, a very simple simulation software could have
been developed. The reason is that gravity gradient stabilization by itself does not
need any sensor readings or actuators to function. To implement this one would,
therefore, not be a good alternative since it would not work to simulate every case
there is.
To have a spin, momentum bias or dual spin stabilized craft would also have some
restrictions on how good they are, and what sensors/actuators they use. To implement these would also be quite simple, but not as simple as gravity gradient
(especially dual spin crafts are hard to model [27]).
The only stabilization method left is the 3-axis one. Therefore this is the one
used in the program as a \sample" stabilization technique. There have been some
eorts, though, to simplify extension to the program with the other stabilization
methods (and mixtures of them both).
Control feedback loop
Ref
Signal
Controlblock
u
System
output
y
Estimated
State
Vector
Sensors
and
Kalmann
A schematic over the control program ow. Observe that the reference signal only is a vector containing the attitude state-vector.
Figure 6.2.
The control loop is an ordinary loop (see Figure 6.2), with the dierence that the
system is non linear (it contains mixed quantities and exponential quantities). Further more, the sensors are discrete which also is a nonlinear feature.
66
The Attitude and Orbit Simulation Package (AOSP)
Prior to running the program, the user has to have set a reference attitude movement. The reason for this is to have something to guide to. Of course this could
be left out, leading to the satellite twisting and turning randomly, but that option
will probably only be used in demonstration purposes.
Which control method to use have been quite a struggle since the program is nonlinear. If the system could be steered with some sort of a PID controller, the control
block would be quite easy, but would this kind of control suÆce? To be completely
sure, two dierent control types are implemented in this system; a PID control and
a LQ control.
With these two control types, a comparison can be made in order to evaluate the
behavior of the program.
6.2.8 Needed data
There are some essential data the simulation needs in order to be able to run.
First, for the attitude movement to function, it must know a few thing about
the satellite. The moment of inertia, mass and shape must be known in order to
function correctly.
In this simulation program, though, the shape has not been taken into account.
The reason for this is purely time based, but should be easy to implement, and is
needed primary for the disturbance torques and the gravity gradient eects to be
correctly modeled.
Second, a reference movement in attitude must exist in order to determine the
pointing accuracy of the satellite. This is due to the fact that dierent missions
demands dierent movement in attitude.
Third, and lastly, some information about start conditions must be applied. Where
the satellite starts, what velocity, what rotation and angular velocity the satellite
has play a major roll in how the orbit looks like and how initial rotational moments
has to be implied.
6.3 MATLAB issues
MATLAB has its good parts and its bad parts. For a long time, loops has been a
huge problem for MATLAB users, since loops usually are 200 300 times slower
then if implemented in, for instance C. This has been a big issue for MATLAB
developers during the last year, and in the current version (Release 13), a solution
is presented. In this version, they have a brand new engine, called JIT, which can
accelerate code. But since it still is in the development, not all types in MATLAB
can be accelerated. To see which types that can be accelerated, and how to increase
performance, please refer to MATLAB help documents or [15].
Another problem with MATLAB is that is only runs in a single thread. This
makes it very hard to manually stop processing once it has started. The problem
is solved in the program in a fairly simple way. Every 5th ight second, a pause
command for 0:01 seconds are launched. In this time, MATLAB can check wither
6.4 Behavior of the AOSP
67
something else has happened. If the user has pushed the escape -button since the
last small pause, a ag will be set in the interface. After the program has paused,
it checks whether this ag is set. If it is, the execution is aborted.
6.4 Behavior of the AOSP
The AOSP has been developed in a way that is easy to change, repair, debug and
use. Further more it has been kept well commented and extremely general. A
certain amount of adjustments had to be done in order to make it simple. The
actual program works well, but far from perfect.
There are a few aws that should be looked upon before someone starts to use this
program. For instance should some validation be made to the program. Furthermore should actuator models be implemented (this is planned in the program in
advance, i.e. only the actual actuator implementation is left to model). Another
thing that should be done is to implement the movements of the celestial objects.
As it is now, the planets gets a xed position and stays there for the whole simulation.
When constructing the program these parts not yet implemented have had a pretty
low priority. The reason for this is, for instance, that the movement of the planets
are small compared to the simulation time of the satellite, hence the need to model
the planets is not totally essential to the behavior of the craft. The moon is an
exception, since it moves pretty fast around the Earth.
Actuators have been neglected both due to the problem of adding their transfer
functions to the open system (both of them are nonlinear, and since the program
should be able to use any actuator given by the user) and due to the reason that
the steering signals are kept low and the assumption that these actuators are completely linear.
Another problem with the AOSP is that the time to simulate is fairly high. Actually it is too high to be really good. There are several reasons why this may
be so, for instance the well known problem of using MATLAB loops and the xed
step-length used with the original Runge-Kutta solver of the dierential equations.
A suggestion to further development is to wait for MATLAB to release a new
version with their whole code accelerated to the MATLAB loop problem. To the
dierential equations solver, a variable length solver should be implemented and
since there is problems using ode45, a solver must probably be implemented from
scratch. This solver should each step calculate the next position, and then which
the next step-size suitable would be.
But if we see to the whole picture, the program works ne even with these \aws"
to the program since they are smaller then the white noise added to the program.
6.4.1 Example run
A test-run of the program, when using no steering at all compared to when using
a LQ controller has bin performed in order to motivate some means of correctness
68
The Attitude and Orbit Simulation Package (AOSP)
of the program. The simulations parameters and results are shown in Example 2.
Example 2
The start-conditions for the movement both controlled and not controlled
Entity
Size
Unit
Perigee at
6.878 1066 meters
Apogee at
8.378 10 meters
Phi angle
0.0
radians
Theta angle
1.0
radians
Psi angle
0.1
radians
Velocity
7.978 103 meters/second
Stepsize
1.0
seconds
Simulation time 6.630 103 seconds
Penalty matrix, Q 1.10 5
to xT Qx
Table 6.3.
Initial parameters of the example run of the program.
is given in Table 6.3, and furthermore were there no rotation nor angular velocity
at startup. The reference attitude consisted of several large quaternion steps, and
they can be found in the output gures, Figure 6.5 or Figure 6.7.
Since the orbit is not controlled at all in this version of the program (but is, once
again, simple to implement), only one of these gures will be printed (one 3D plot
and one that shows the states). This is done in Figure 6.4 for the 3D plot, and in
Figure 6.3 for the plots containing the change in states.
The attitude on the other hand has to be printed both for the controlled and the not
controlled case. This is done in Figure 6.5 and in Figure 6.7 respectively for state
x1 . Observe that the output data contains a lot more information, than stated in
these few gures, and the best thing for the reader would be to print them himself.
All data is relative to the Geocentric Equatorial System, and it is possible to draw
at least some conclusions from the gures.
One obvious conclusion is that the sensor estimates works pretty well and that the
reference signal is followed with control and not followed at all without control.
Furthermore should only small torques be used, since it is diÆcult to stop high
angular velocities. This leads to the fact that large changes in attitude takes a long
time to perform in space if no, or small, over-shoots is wanted.
6.4.2 Program ow
The rst thing the program does is to put all the subdirectories into the MATLAB
path if they are not already there. Then, without loading any variables into memory, the control is given back to the user via a graphical interface. This is done to
simplify and understand how to use the program.
6.4 Behavior of the AOSP
69
4
5000
Time
σ
0
−5
10000
∆ z [m], 3 = 2.2962
z [m]
5
0
6
x 10
0
5000
Time
10000
σ
Vx [m/s]
0.2
0
x
−0.2
5000
Time
10000
−1
4
1
2
0.5
0
−2
0
4
x 10
5000
Time
−0.4
10000 0
σ
0
0
−0.5
5000
Time
10000
5000
Time
10000
5000
Time
10000
0.4
0.2
0
−0.2
y
−0.5
−4
∆ V [m/s], 3 = 0.93339
σ
0
0
−0.5
−4
0
5000
Time
10000
4
−1
0
5000
Time
5000
2
0
−0.4
10000 0
σ
y [m]
0.5
−1
10000
0
−2
0.4
0
−2
0.4
0.2
0
−0.2
z
5000
Time
0.5
x 10
∆ V [m/s], 3 = 0.93338
1
0
7
x 10
∆ y [m], 3 = 2.2962
−1
2
Vy [m/s]
σ
0
−0.5
1
z
x [m]
0.5
4
V [m/s]
∆ x [m], 3 = 2.2962
x 10
∆ V [m/s], 3 = 0.93339
7
1
−4
0
5000
Time
−5000
10000 0
5000
Time
−0.4
10000 0
Simulation results from an one lap orbit without using any sort of
control law. Each row of the plots represent one of the axes movement. First the
position, then the error between the reference and the true position, followed by
the velocity and the error between reference and true velocity.
Figure 6.3.
From this graphical interface, the user will be able to manipulate data, such as
loading package les, changing start parameters etc. The user could also choose to
run a simulation if there is a package le loaded into memory or print a previous
simulation. None of these commands run a substantial amount of code. It only
changes start values in the start vector which is returned from the graphical interface when the user issues a \run" command (see Figure 6.8).
The start vector returned from the interface at the startup of the actual simulation
contains all information needed to evaluate a result of the simulation. Furthermore,
from this point on, no actual contact with the interface is needed. However there
are two exceptions with communication between these two parts. The progress is
printed for every lap in the main loop in the software, and every fth lap is paused,
so that the user can get some response of the program.
The rst exception (the progress report) is needed for the user to know what the
program is doing. Another good thing with the progress report is that a good
estimation on how long the simulation aught to take can be estimated by the user
since the \real-time" also is printed.
70
The Attitude and Orbit Simulation Package (AOSP)
A lap of the simulated satellite about the earth looks like this.
Obviously it is a LEO.
Figure 6.4.
The second exception has to be done due to a MATLAB issue also discussed in
Section 6.3. MATLAB only runs in one thread. This means that MATLAB kind
of works like women believe men does; only with one focus at the time. In other
words MATLAB can not do two things at the same time4 . What happens is that
when MATLAB starts to evaluate code, the whole computer is \locked" until the
simulation is complete. This could lead to some problems, such as the user realizing
that he or she forgot to change a particular start-value when just beginning to run
the simulation must wait four hours for the simulation to nish before being able
to change the false parameter. The solution to this problem can be to pause the
program for a few milliseconds every fth lap in the loop or so, and thus be able to
check if the user has pushed the escape button since the last time this check was
done. This is in other words some kind of \panic" button.
The main loop then works as the lower row in Figure 6.8. Sensors are used to predict the satellites current attitude and, in some case, position. A control system
given by the user is applied. The state vector (given in Section 6.2.3) is advanced
one step in time. This is looped several times until the time reached equals the
4 No program can do two things at the time, but it is emulated in most single processor
machines by using \threads", which contain all computing information for the program assigned
to this thread. Threads are then scheduled at certain intervals to emulate this multi process
operation.
6.4 Behavior of the AOSP
71
1
1
0.95
0.95
0.9
0.9
0.85
0.85
0.8
0.8
0.75
0.75
0.7
0.7
0.65
0
2000
4000
6000
8000
0.65
1
0.03
0.95
0.02
0.9
0.01
0.85
0
0.8
−0.01
0.75
−0.02
0.7
0
2000
4000
6000
8000
−0.03
0
2000
4000
6000
8000
0
2000
4000
6000
8000
A sample of output attitude data for the state x1 (= q0 ) when using a
LQ controller. The left upper graph is the true satellite movement, the upper right
is the estimated movement, the lower left is the reference movement and, nally,
the lower right is the dierence between the estimated and the true movement.
Figure 6.5.
end-time of the simulation given by the user, or the escape-button has been pressed.
When either of this happens, the resulting state vectors for all time intervals are
saved into the output le, and the control is returned to the user graphical interface.
72
The Attitude and Orbit Simulation Package (AOSP)
0.05
0.1
0.05
0
0
−0.05
−0.05
−0.1
−0.15
−0.1
0
2000
4000
6000
8000
−0.15
1
0.04
0.5
0.02
0
0
−0.5
−0.02
−1
0
2000
4000
6000
8000
−0.04
0
2000
4000
6000
8000
0
2000
4000
6000
8000
A sample of output attitude data for the state x3 (= q2 ) when using
a LQ controller. Output from same test-run as in Figure 6.5.
Figure 6.6.
6.4 Behavior of the AOSP
73
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0
2000
4000
6000
8000
0.5
1
0.03
0.95
0.02
0.9
0.01
0.85
0
0.8
−0.01
0.75
−0.02
0.7
0
2000
4000
6000
8000
−0.03
0
2000
4000
6000
8000
0
2000
4000
6000
8000
A sample of output attitude data from the state x1 (= q0 ) when
using no control method at all. Shown is the true, estimated, reference movements
(upper left, upper right and lower left). Also the dierence between the estimated
and the true movements are shown.
Figure 6.7.
74
The Attitude and Orbit Simulation Package (AOSP)
Satsim
Packages
and
Files
Print
SSInterface
Run
Init
No
Quit
Yes
Clean up
Print
Result
Yes
Sensors
Actuators
and
Control
Differential
Equations
Done
No
Disturbance
Flowchart of program evaluation. When the program starts, the
program will move to the SSInterface and wait there for user interactions. Only
after a user has loaded a package will he be able to run the program, which
moves by itself until nished. The program will not be plotted by itself after a
simulation, rather it must be chosen by the user from the SSInterface.
Figure 6.8.
Chapter 7
Conclusion and suggestions
to further work
7.1 Small satellites study
Small satellites has been a growing market since the \birth" of satellites until at
least the year 2000. Although the market today may seem a little slow, the market
will continue to grow in the future. But for small satellites to really make their
breakthrough, a smart solution on how to send them into space cheap is a must.
There are only a few ways to do this as it is today, and of these ways, the I-Cone
project seems to be one of the most promising (although it is not in use yet).
One of the most important tasks is \the window of opportunity" for small satellite
launchers. The rst launcher that actually works several tests will probably have
an immediate breakthrough.
Over history, the mission most used for small satellites are commercial missions,
such as satellite TV or photography taking satellites, for instance. The second
most used one are science missions.
If we look at the customers, the military had the largest market-share until the
IT age (the 90's). After the year 1995, commercial companies has taken over the
market.
Since this examination only extends to the year 2000, it would be a great idea
to extend these to see some tendencies in small satellite launches of today and
tomorrow.
7.2 The AOSP
The attitude and orbit simulation package has been diÆcult, but far from impossible to implement. Although all is not done, a fully working simulation model
has been implemented. There are a few things, though, that aught to implement
before the program functions perfectly.
75
76
Conclusion and suggestions to further work
Coordinates: When a user has loaded the a package, the orbit description will be
in spherical coordinates (as in [13]). This is however not the standard way to
describe an orbit. It is more usually done in Keplerian Orbital Elements. To
this point, the program cannot transform between the quantities completely
| this must be implemented!
Analysis: Some analysis of the program on how it works should be looked upon.
Planetary: As it is right now, no one of the planets, nor the Sun actually moves.
A movement addition to the program should be implemented in the SatSim.m
le.
Modes: No consideration at all has been taken to ensure that all states are observable or that all states are controllable. This might happen when sensors
can not determine all rotational axes, etc. A x for this should be implemented. MATLAB has special commands to nd both non observable and
non controllable modes. These commands should be used in order to remove
the states that cannot be used.
Satellite description: The satellite should be described completely in the satellite description le. As it is now, no information about the structure of the
satellite is taken into account. But this is needed in the solar disturbance
torque, for instance, since this torque is dependent on the area of the satellite
that are actually hit by the sun.
Internal angular momentum: No internal momentum eects at all are taken
into account in the AOSP as it is right now. This must be changed, since
they might cause disturbances that are substantial if, for instance, we are
using reaction wheels.
Actuator: The actuators are only prepared to be modeled. Any attempt to model
them is pointless since all of the actuator models are disregarded in this
simulation program as it is right now. Some work has to be done to model
them and use the models inside the simulation loop.
These are the largest problems and malfunctions to the simulation.
The positive aspects of the AOSP, on the other hand, include many functionalities.
Not only is it easy to expand the simulation model with dierent models of the
surrounding environment, but also the following points works on behalf of the
program:
Exchangeable modules: All of the code that directly eects the behavior of the
satellites movement are exchangeable, making the program a exible tool for
satellite movement analysis.
Torque and Force: Torques and forces added to the satellites movement are
stored for the user to analyze after the simulation has nished.
7.2 The AOSP
77
Reference signal: The reference signal can point at a single object while moving
around, or sweep over a given point in space, thus making every mission for
pointing accuracy possible. Furthermore is the reference signal recorded for
after mission analyze.
Attitude: The attitude is stored both for the true movement and for the estimated
movement based on sensor readings. This way both the Kalman estimation
lter and the pointing accuracy can be evaluated.
Orbit: The position in orbit enables dierent disturbances to act the true way on
the satellite. Also the estimated position is stored for future possibilities to
develop some sort of orbit control to the system.
Combination of sensor readings: Sensor readings are combined in a Kalman
estimation lter in order to get as much out of small data streams as possible.
Both the covariance matrices and the Kalman amplier are stored for later
analysis.
All of the above functionalities makes sure that the program can simulate the
pointing accuracy of a satellite faster than 1 hour, built on a module structured
well commented code for users to easily implement changes to the code.
78
Conclusion and suggestions to further work
Bibliography
[1] ESPA: EELV Secondary Payload Adapter with Whole-Spacecraft
Isolation for Primary and Secondary Payloads. In Smart Structures and Materials:
Passive Damping and Isolation, page 11,
Newport Beach, CA, US, March 2000. CSA Engineering.
www.csaengineering.com/techpapers/technicalpaperpdfs/CSA2000_ESPA.pdf.
[2] Munin. munin.irf.se, Februari 2001. Home page.
[3] Ricardo's geo-orbit. geo-orbit.org, March 2001. Home page.
[4] J. Kiusalaas A. Pytel. Engineering Mechanics: Statics & Dynamics. HarperCollins Publishers, Inc, NY, US, SI-edition edition, 1996.
[5] AAO. The Anglo-Australian Observatory. www.aao.gov.au/images.html,
2002. Home page.
[6] Arthur. C. Clark. Extra Terrestrial Relays. Wireless World, 1945.
[7] US Air Force Space Command. Evolved Expendable Launch Vehicle.
www.spacecom.af.mil/hqafspc/Library/FactSheets/FactsSheets.asp,
2001. Home Page.
[8] The European Commission. GALILEO, european satellite navigation system.
europa.eu.int/comm/dgs/energy_transport/galileo/, 2002. Home page.
[9] CSA Engineering. ESPA: EELV secondary payload adapter with
whole-spacecraft isolation for primary and secondary payloads.
www.csaengineering.com, March 2000. PDF report.
[10] T. Glad and L. Ljung. Reglerteori. Flervariabla och olinjara metoder. Studentlitteratur, Lund, Sweden, 1997. In Swedish.
[11] Anders Helmersson. ODIN: Attitude Estimation Filters.
[12] Jan-Olof Hjertstrom. ODIN: Analysis of the Safe Mode Control Law. Saab
Ericsson Space AB, Linkoping, Sweden, 1995.
[13] B. Westergren L. Rade. Mathematics Handbook. Studentlitteratur, Lund,
Sweden, 4th edition, 1998.
79
80
Bibliography
[14] Surrey Satellite Technology Ltd. SSH, Small Satellites Homepage.
www.smallsatellites.com, 2002. Home page.
[15] MathWorks. MATLAB Release Notes for Release 13. MathWorks, Inc, Natick,
MA, US, 2002.
[16] NASA. Great Images of NASA. grin.hq.nasa.gov, 2002. Home page.
[17] NASA. Mars global surveyor. mars.jpl.nasa.gov/mgs/status/nav/orbparam.html,
2002. Home page.
[18] J. Stark P. Fortescue, editor. Spacecraft Systems Engineering. John Wiley & Sons ltd, West Sussex, England, 2nd edition, 1998.
[19] J. E. White R. R. Bate, D. D. Mueller. Fundamentals of Astrodynamics. Dover
Publications Inc, N.J. USA, 1971.
[20] Die DLR-Hauptabteilung Raumugbetrieb. Dlr. www.weblab.dlr.de/rbweb,
2002. Home page.
[21] Michael. A. Seeds. Foundations of Astronomy. Thomson Learning,
Brooks/Cole, Brooks/Cole, CA, US, 6:th edition, 2001.
[22] Andrews
Space
and
Technology.
GLONASS,
global
navigation
satellite
system
{
summery.
www.spaceandtech.com/spacedata/constellations/glonass_consum.shtml,
2002. Home Page.
[23] Ariane Space. Ariane 5 payloads: The Ariane Structure for Auxiliary Payloads
(ASAP). www.arianespace.com/us/family/a5sap.htm, 2002. Home page.
[24] Saab Ericsson Space. Saab ericsson space. www.space.se, 2002. Home page.
[25] CalSpace Director's Team. California space institute. calspace.ucsd.edu,
2002. Home page.
[26] Inc The MathWorks. The mathworks. www.mathworks.com, 2002. Home page.
[27] James R. Wertz, editor. Spacecraft Attitude Determination and Control.
D. Reidel Publishing Company, Dordrecht, Holland, 1985.
Appendix A
AOSP - users manual
This is the users manual for a simulation program called AOSP, Attitude and Orbit
Simulation Program. The program is located inside the le called \AOSP.tar.gz"
and must be unzipped and untared to fully function. You can do this by using the
free program winzip (Windows). When the program is unpacked, it will create a
directory structure for the program shown in Figure A.1. This is a structure that
has to be maintained.
A.1 How to get started
It is an easy task to get started. Simply open MATLAB, and type \SatSim" at
the command prompt, when standing in the SatSim library. This will open an user
friendly interface which looks like Figure A.2 with the background image enlarged
in Figure A.3. Observe that it is not necessary to add the whole substructure to
the MATLAB path before running the program, this is dealt with within it.
The program will now load an empty user interface. The user now has to open a
package in order to get data within the program. Two example data sets can be
found, a LQ example and a PID example. These will load data into memory which
is predened in those les.
Running the test program will transfer the data from the interface to the main
program.
A.1.1 What data can be found
In the main program, there are ve main structures containing the information in
this program.
ENVIRONMENT which contain environmental data about planets.
CONTROL where all the control parameters are.
FILES is where the user dened les exist.
81
82
AOSP - users manual
SatSim
Actuators
FlData
Control
Packages
Planets
Satellite
OldData
Prog
RefAtt
Sensors
Disturb
Graph
Output
Quat
Figure A.1.
The directory structure of the AOSP
DATA which contain all ight data.
FH is a Figure Handle to the graphical interface.
Environment structure
The environmental structure is easy to use. Every planet that is dened in the
planet folder is named \output.planet.variables". This means that if, for example,
we want to get the sun's radius we simply call environment.sun.R (which stands
for the Radius).
There are a few things when dening a planet that MUST exist. A radius of the
planet, R, a distance from earth to the planet,r , the planets gravitational constant,
GM , the angular velocity, W , start velocity, V , and a variable stating if it is a black
body, i.e. if it is a star. The last variable should be 1 for dierent suns and 0 for
other planets.
Additional parameters can be set, observe the way to implement them (see for
instance the code in Earth.m).
Control structure
The control structure contains any data written in the package le named \output.Control".
These variables are for use in the control law.
Files structure
All les used in the program coincides in this structure as a list, named:
A.1 How to get started
83
How the user interface looks at startup. From here, the letter \o"
should be pushed. Other alternatives could be choosing open from the menu \File"
or printing old data samples. The background picture is resized and explained in
Figure A.3.
Figure A.2.
- FILES.Sensors (substructures within)
- FILES.Actuators (substructures within)
- FILES.DiEq
- FILES.Solver
- FILES.FlData
- FILES.Satellite
- FILES.Control
- FILES.Outputle
All of these les are of course replaceable; i.e. user dened. The alert user probably
recognize the names from the directories.
84
AOSP - users manual
This is one of the rst glimpse of the heavens following the servicing
mission by NASA's Hubble Space Telescope. It is called the Eskimo Nebula.
Courtesy of NASA [16].
Figure A.3.
Data structure
The actual ight data is stored in this structure. It contains all of the state variables
for orbit (in DATA.Orbit) and attitude (in DATA.Attitude). The structure also
contains the force and moment applied from the control law at the time intervals.
Further is the time vector also stored. (which actually is unnecessary, it would
suÆce to know the start time, the stop time and the step size).
Figure handle structure
This variable is not an actual structure, but it contains the handle to the interface.
To get the interface for communication, write:
A.2 Input needed to the program
85
Handles = guihandles(FH);
This will return handles to all the objects in the gure. To get or set a certain
property, use the get and set commands on the handles. If the user by any chance
makes any changes to the gure, it should be save by the command:
guidata(FH,Handles);
which will save the data. One tip when dealing with gure handles is to always
get a new copy of them before manipulating them. It is easy to \forget" to store
or load a new copy, which will generate a false behavior of the program.
A.2 Input needed to the program
The le loaded into memory must look a certain way to work. If the user wants to
write the package le himself, make sure to look at a previous copy and try to do
a similar one.
When loading a package into memory, it will just be the names of used les that
are loaded, and not the actual values within these les. The values in the other
les are loaded when the user has issued a start command. There is however one
exception; the ight data le is also loaded when the package is loaded.
A.2.1 Replaceable modules
There are some replaceable modules, that denes the movement. These are given
in Table A.1. All of these can be found in their own directory under /SatSim/
except the disturbances and the solver with can be found in /SatSim/Prog/ folder.
The easiest way to switch between dierent modules is from within the program.
These are then easily saved to a package le when the changes are made. It is
recommended if you change a model, be sure that you save it as a new le, and
thus not contaminate the sample les (since these give a good example on how to
write such les).
A.3 How to work with the user interface
The interface works in two dierent ways. Either by using the mouse and/or by
using the keyboard. Keyboard commands are given in Section A.5.
The escape key has two dierent functions. The rst function is to escape, quit or
close a window, and the second is to disrupt the simulation if it is running. The
latter may take a few seconds to react since it checks if the button has been pressed
every 5 ight time seconds, so please be patient!
The background to the user interface is really simple to change. It could for instance
look like Figure A.4! To learn how to change this image, see the \read me" le in
the simulation package directory /SatSim/Prog/Graph/.
86
AOSP - users manual
Module
Actuators
Control
Disturbances
Flight Data
Packages
Planets
Ref Attitude
Satellite
Sensors
Solver
Module description
Models of actuators (Not implemented in this version).
Dierent control models.
Disturbance torques acting on the satellite.
Where the reference orbit is dened.
Where the modules that are listed.
Models of planets and suns.
Where the reference attitude is dened.
Satellite properties are dened here.
Sensor models.
The dierential equations solver.
Table A.1.
Dierent modules in the program
The Horse Nebula. A possible background for the simulation interc Anglo-Australian Observatory. Photograph by David Malin [5].
face. Figure A.4.
A.3.1 Load and Save data
To load or save a package le, just press o, to load, or s, to save the data. Alternatively, use the File menu.
A.4 What is saved in the output le
87
A.3.2 Print results from simulation
To print a simulation, just choose \Print simulation" from the menu's, or press P .
A.3.3 Change parameters
To change any parameter values inside the program, just left click on the eld you
want to change, and write the new value. Values can be written
as real numbers,
functions (pi for example) or just as regular fraction, i.e. ab .
The included les can be changed to other les by choosing \Change les" from
the drop-down menu.
When a certain conguration is as wanted, a good thing would be to save the
program.
A.4 What is saved in the output le
These things are saved in the output le.
The attitude calculations
The orbit calculations
The applied moment
The applied force
The time vector
The items with a \" are included in a structure named DATA.
A.5 Shortcuts
Instead of using the mouse and walk through menus, the user can use the keyboard
to do the vital tasks for the program. Therefore a description with the implemented
keys are given (with a short explanation) in Table A.2.
88
AOSP - users manual
Key
Esc
a
b
c
e
f
k
o
p
q
r
s
1-5
left arrow
right arrow
return
Description
Quit program or processing.
Attitude simulation.
Orbit simulation.
Switch between spherical and Kepl Orb Elem
(not a nished function).
Switch between Euler angles and Quaternions
Change user les.
same as c.
Open package
Print simulation data.
Same as e.
Run simulation.
Save data into new package le.
Switches between dierent disturbance
modes.
Decrease step size.
Increase step size.
Choose OK.
Table A.2.
Keyboard commands for the AOSP
Appendix B
Orbit movements
B.1 Keplerian Orbital Elements
Keplerian orbital elements is a common way to describe an orbit. These parameters are given in Table B.1.
The inclination, is the angle between the orbit plane and a reference plane. The
most commonly used reference planes are the equatorial plane (which is used in
this document) and the plane of the Earth's orbit about the Sun, called the ecliptic
(see also Figure B.1).
The intersection between the orbit plane and the reference plane through the center of the planet is called the line of nodes. There are two points where these
meet, and they are called ascending node, where the orbit is going from south to
north, and descending node, where the orbit travels from the north to the south.
Thus is the right ascension of the ascending node the angle in the equatorial plane
measured eastward from the vernal equinox (which is dened in Denition C.1). In
Figure B.2, the ascending node is shown (the line in the back being the reference
equinox direction).
The rotation of the orbit within the orbit plane is dened by the argument of
perigee, or the angle measured in the orbit plane in the direction or the satellite's
motion from the ascending node to perigee. This is shown in Figure B.3.
Finally, to determine where the satellite is in its orbit, the true anomaly is used.
It is the angle between the perigee point and the satellite.
Observe that in these gures above it is important to keep the orbit and the reference orbit planes separated.
B.2 Elliptical Orbits
For elliptical orbits, the period time, P , and the velocity at perigee, v, can be
determined. These orbits has a few standard notation, which can be found in
Figure B.4.
89
90
Orbit movements
=
=
! =
=
i
Table B.1.
Inclination
Right ascension of the ascending node
Argument of perigee
True anomaly
Orbit denition in Keplerian orbital elements.
The inclination of a spacecraft as dened in Keplerian orbital elements in [27], gure derived from [17].
Figure B.1.
B.2.1 Orbit period
If we rst rewrite Equation (2.1), we get:
r =
r
r3
B.2 Elliptical Orbits
91
The ascending node, where the equinox direction is shown in the
back by the equator. Notice that the ascending node is where the satellite is going
from the south to the north [17].
Figure B.2.
As stated in Kepler's Theorem 2.2:II, the angular momentum has to be constant.
This becomes clear if we cross multiply the whole expression with r:
r r + r 3 r = 0
r
and realizes that a vector a a = 0, thus make the second term vanish:
d
r r = (r v ) = 0
dt
Since the denition for the angular momentum is h = r v, one can see that the
angular momentum is preserved (h_ = 0).
But by looking at Figure B.5, we can derive another expression for h:
92
Orbit movements
Vernal equinox
direction
Argument of perigee as seen from above the orbit plane. Observe
that there is a dierence between orbit plane and reference plane. Apoapsis and
Periapsis is other words for Apogee and Perigee. [17]
Figure B.3.
h = rv cos (B.1)
From Figure B.6 and from Equation (B.1) we now can express the specic angular
momentum of a satellite as
r2 d
h=
dt
Finally, if we nd the expression for the dierential element of an area in Figure B.7,
we get:
2
dt = dA
h
which integrated over one full lap becomes:
2ab
P=
h
B.2 Elliptical Orbits
93
a
Direction of
satellites motion
b
Apofocus
(Apogee if
earth orbit)
R
Å
ra
rp
Perifocus
(Perigee if
earth orbit)
a = semimajor axis
b = semiminor axis
e = eccentricity = (r a - rb)/(r a+ rb)
r = Apofocal distance = a(1+e)
r = Perifocal distance = b(1-e)
Apogee height = ra - R Å
Perigee height = rb - R Å
Denitions of dierent parameters in an ordinary elliptical orbit.
These denitions are the most established, and can be found for instance in [27,
19, 18]. Figure obtained from [17].
Figure B.4.
or, since h = pp and b = pap (see the next section for denitions of these
quantities):
2 3
P=p a 2
(B.2)
B.2.2 Velocity
The velocity for a satellite can be derived from the conservation of mechanical
energy stated in Newton's Theorem 2.2:I. If we once again take Equation (2.1), but
this time dot multiply the equation by r_ , we get:
Which leads us to:
r_ r + r_ 3 r = 0
r
vv_ + 3 rr_ = 0
r
94
Orbit movements
v
g
f
l
a
tic
r
a
c
lo
lo
l
ca
on
riz
ho
r
e
lv
Figure B.5.
Flight path angle, where f denotes and g denotes . Since
h = rv, h can be described as h = rv sin . But since and are complementary
angles, h = rv cos .
Which equals:
d v2
dt 2
+c
r
=0
This last term has a name; specic mechanical energy, denoted E. The constant
c is where we put our zero potential, and it is arbitrary. Let us therefore set this
B.2 Elliptical Orbits
95
v
f
r
Figure B.6.
n
The specic angular momentum, where f denotes and n denotes
. The horizontal component of V becomes V cos = r_ .
constant to zero, thus setting our zero reference for potential energy at innity.
If we look at the perigee, a value for the velocity can be evaluated, since (from
geometry) E also equals 2a . The velocity then becomes:
r
2 1
v=
(B.3)
r
a
96
Orbit movements
;;
r
dA =
1 2
r dn
2
dn
Figure B.7.
Denition of a dierential element of an area.
Appendix C
Coordinate systems
One way to describe a satellite's movement is to describe it's translational movement in ordinary coordinates as in the geocentric equatorial coordinate system
below, and describe the rotation in Euler angles. The last method describes the
orientation of the craft with three dierent angles, one for each principal axis (often
called roll, pitch and yaw angles). But by using these angels, we are confronted
with a few problems. For instance, this method demand a lot of computational
resources since it has to calculate a lot of sine and cosine functions. Furthermore,
there will probably be some problems with the transformation matrix, since it will
get at least one sin or cosine in the denominator of each dimension, i.e. there will
be a few singularities! A much more reliable method to determine the attitude is
by using Euler symmetric parameters. Especially one kind, which is built up by
four of these parameters, called quaternions is useful. This is a four dimensional
vector where three of them describes the angle of direction and the fourth describe
the rotation. The advantages with quaternions are no computation with sines and
cosines, no singularities and only addition and multiplication calculations.
C.1 The Geocentric Equatorial coordinate system
The geocentric equatorial system has its origin at the Earth's center. The fundamental plane is the equator and the positive X -axis points in the vernal equinox
direction, according to the following denition below.
Denition C.1 The vernal equinox direction, , is the direction from the center
of the Sun towards the center of the Earth on the rst day of autumn at dawn.
The Z -axis points in the direction of the north pole. There are a few things to
notice about this coordinate system. The XY Z -system is not xed to the Earth
and turning with it, nor does the X -axis point towards the Sun all the time; rather,
the geocentric equatorial frame is non rotating with aspect to the stars.
97
98
Coordinate systems
C.2 Quaternions
Quaternions, which are Euler symmetric parameters, constitutes an easy way to
describe the attitude of a satellite. The only computations needed are additions
and multiplications. Since these parameters are not introduced in many modern
textbooks [27], this text will.
Denition C.2
cos 2
q1 e1 sin
2
(C.1)
(C.2)
(C.3)
(C.4)
q0
q2
q3
e2 sin 2
e3 sin 2
These equations are not independent, but satisfy the constraint equation:
q02 + q12 + q22 + q32 = 1
(C.5)
These four parameters can be regarded as the components of a quaternion, dened
as:
Denition C.3
q q0 + iq1 + jq2 + kq3
where i, j and k are the hyper imaginary numbers satisfying the conditions:
i2 = j 2 = k2 = 1
ij = ji =
k
jk = kj =
i
ki = ik =
j
It is often useful, when computing, to write the quaternions in vector form:
2
q=
6
6
4
q0
q1
q2
q3
(C.6)
3
7
7
5
qq4
(C.7)
This is analogous to expressing the complex number c = a + ib in the form of the
two-vector:
a
c=
b
The direction cosine matrix, i.e. the matrix used to transform a direction in one
coordinate frame to another, which has the transfer quaternion q, is described by:
C.3 Other coordinate systems
2
A(q) = 4
q02
q12 q22 + q32 2(q1 q3 + q0 q2 )
2(q2q3 q0q1)
2(q1q3 q0 q2) q02 + q12 q22 q32 22(q1q22 + q20q3) 2
2(q2q3 + q0 q1) 2(q1q2 q0q3 ) q0 q1 + q2 q3
99
3
5
(C.8)
For further reading, consult [27].
C.3 Other coordinate systems
There are some other coordinate system worth mentioning. In orbit description
there are three. One which is craft oriented, called spacecraft centered, a second
which is orbit xed and a third which is sun oriented. These may very well be
used, since they are probably as good as the Earth bound one. The only bad thing
may be more computations, since most mechanics and forces act on the satellite,
but are caused by celestial object (such as the Earth and the Sun).
It has already been mentioned a few other ways to determine a space crafts attitude
then by using a quaternion, such as Euler angels. A few negatives has also been
said about those, but more negatives can be added such as the way of computation
(which has to be told separate from the angels itself). This has to be done since
there is a big dierence between a roll-yaw movement compared to a yaw-roll
movement. (A more thorough explanation is left out in order for the reader to
investigate it himself)1 . Another way to describe the attitude by Euler symmetric
parameters are by using a Gibbs Vector, dened by [27]:
g1 qq10 = e1 tan 2
g2 qq20 = e2 tan 2
(C.9)
g3 qq30 = e3 tan 2
This vector has the advantage that it is not any sign ambiguity in the denition,
and that the parameters are independent. Despite of this, the Gibbs Vector is
almost never used, because it becomes innite when the rotation angle is an odd
multiple of 180 degrees.
In the following sections we will look a little closer on the AOCS S/S and, if the
reader are interested, the other S/S's can be found in [27, 18, 19] for instance.
1 Hint:
Try it with a book
100
Coordinate systems
Appendix D
The History of Space ight
A short version of the history of space ight can be found in Table D.1.
A short resume to the history of space ight. For a more detailed investigation,
a history book will be more useful, cause although this text doesn't directly lie,
there might be some margin of error!
101
102
The History of Space ight
300 BC
1212 AD
Space ight history
Antonius Diogenes writes a fantasy about a trip
to the Moon.
Rockets used by Chinese to set re to Mongol
encampments; soon after used also in Europe
(where gunpowder was used to invent guns).
18th Century Artillery rockets used against British in India
in the battle of Seringapatam.
1805
Further developed by the British, rockets used
against Napoleon . . .
1814
. . . and against the US
1903
C. Tsiolkovski publishes `Exploration of the
Universe with Rocket Propelled Vehicles", the
rst serious investigation into methods of
leaving the Earth.
1926
Liquid-propelled rockets invented by Robert Goddard.
1920s and 30s Rocketry developed further by Germans and Soviets.
1943
First ballistic missile, the V-2, comes too late
to save Hitler.
1945
German rocket scientists such as von Braun captured
by US and former USSR forces.
1957
Soviets launch Sputnik I, the rst articial
satellite, and Sputnik II, carrying the dog
Laika into orbit. The space race begins.
1958
Creation of NASA.
1961
Yuri Gagarin becomes the rst man to orbit Earth.
1961
Mercury program. US President Kennedy sets goal of
landing a man on the Moon and returning him
safely to Earth by the end of the decade.
1962
John Glenn, rst American to orbit Earth.
1965-66
Gemini. First space walk.
July 20, 1969 Apollo 11. Neil Armstrong rst man to walk on moon.
1970
Near disaster aboard Apollo 13.
1972
6th and last Moon landing.
1973-74
Skylab.
1984
President Reagan calls for a permanent manned space
station.
1986
Challenger disaster.
1986-2001
Mir space station.
1998
First components of International Space Station
launched.
Table D.1.
Short history of space ight
Index
Active stabilization, 47
Actuators, 41
Magnetorquers, 41
Momentum wheels, 42
Propulsion system, 43
Reaction wheels, 43
Table of, 43
Adapter cone, 17
Angular momentum, 8
AOSP
Attitude Linearized movement, 62
Control loop, 65
Dierential Equation Solvers, 59
Dierential Equations, 57
Kalman lters, 63
Language, 52
Obit Linearized movement, 62
Software Flow, 68
Software Flowchart of, 74
Specications, 51
Square Root Filtering, 64
Stabilization method, 65
States in software, 55
Table of Languages, 54
ASAP, 32
Attitude laws of motion
General, 8
Special, 8
Center of Mass, 10
Center of Pressure, 10
Dierential Equation Solvers, 58
Disturbance
Aerodynamic drag, 11
Gravity Gradient Torque, 13
Magnetic disturbance torque, 12
Magnitude of, 15
Micro Meteorites, 14
Oblateness of the Earth, 14
Solar radiation pressure, 10
ESPA, 32
Hohmann transfer, 18
I-Cone, 32
Possible missions, 35
Kalman lters, 63
Kepler Laws of Motion, 6
Launch possibilities for small satellites, 17
MATLAB issues, 66
Mission
Geo Positioning System, example, 21
Missions, 23
Earth Observation, 24
Global Positioning systems, 25
Shares of market, 24
Munin, 32
Newton Laws of Motion, 6
Nutation Dampers, 46
Orbit law of motion, 7
Orbit time, 9
Orbit velocity, 9
Orbits, 18
Geo Stationary Orbit, 19
103
104
Geo Synchronous Orbit, 20
Geo Transfer Orbit, 18
Highly Elliptical Orbit, 22
Intermediate Circular Orbit, 21
Low Earth Orbit, 20
Maneuvers in, 18
Medium Earth Orbit, 21
Polar Orbit, 20
Sun Synchronous Orbit, 20
The Molnya Orbit, 23
Passive stabilization, 45
Planetary Gravitational Constant, 7
Satellite, 3
Bus, 3
Forces acting on, 7
Law of gravity, 6
Laws of motion, 6
Payload, 3, 5
Subsystems in bus, 4
Sensors, 38
Earth sensors, 38
GPS, 39
Gyros, 40
Magnetometers, 40
Startrackers, 40
Sun sensors, 41
Table of, 39
Small Satellites
Denition, 27
Small satellites
Launch possibility, 17
Small Satellites
Customers, 29
Weight of previously launched, 28
Square Root Filtering, 64
Stabilization
Comparison of, 47
Step-size, 58
Universal Gravity Constant, 7
Index
På svenska
Detta dokument hålls tillgängligt på Internet – eller dess framtida ersättare –
under en längre tid från publiceringsdatum under förutsättning att inga extraordinära omständigheter uppstår.
Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner,
skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat för ickekommersiell forskning och för undervisning. Överföring av upphovsrätten vid
en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning av
dokumentet kräver upphovsmannens medgivande. För att garantera äktheten,
säkerheten och tillgängligheten finns det lösningar av teknisk och administrativ
art.
Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman i den
omfattning som god sed kräver vid användning av dokumentet på ovan beskrivna
sätt samt skydd mot att dokumentet ändras eller presenteras i sådan form eller i
sådant sammanhang som är kränkande för upphovsmannens litterära eller konstnärliga anseende eller egenart.
För ytterligare information om Linköping University Electronic Press se förlagets hemsida http://www.ep.liu.se/
In English
The publishers will keep this document online on the Internet - or its possible
replacement - for a considerable time from the date of publication barring exceptional circumstances.
The online availability of the document implies a permanent permission for
anyone to read, to download, to print out single copies for your own use and to
use it unchanged for any non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. All other uses of
the document are conditional on the consent of the copyright owner. The publisher has taken technical and administrative measures to assure authenticity,
security and accessibility.
According to intellectual property law the author has the right to be mentioned when his/her work is accessed as described above and to be protected
against infringement.
For additional information about the Linköping University Electronic Press
and its procedures for publication and for assurance of document integrity, please
refer to its WWW home page: http://www.ep.liu.se/
© Jonas Elfving