Development Integrated Investigation Laboratory An
Development Integrated Investigation Laboratory An
Development Integrated Investigation Laboratory An
net/publication/260666504
CITATIONS READS
36 318
6 authors, including:
All content following this page was uploaded by Dmitry Roldugin on 22 December 2017.
Abstract
The key problems of design, examination, laboratory and in-flight testing of the attitude
determination and control system (ADCS) of microsatellites are considered. The system consists
of three pairs of reaction wheels, three magnetorquers, a set of Sun sensors, a three-axis
magnetometer and a control unit. The ADCS is subject to the high accuracy and reliability
requirements and, at the same time, power consumption, total mass and volume limitations. It is
meant for a LEO satellite with a mass between 10 and 50 kg. The development problems are
solved in several steps: the preliminary study of satellite dynamics using asymptotical and
numerical techniques, the hardware and software design, and the testing of whole ADCS as well
as each actuator and sensor separately on the test-bench specially designed for such a laboratory
simulation. In this paper both dynamics of the microsatellite with an ADCS and mock-up of
ADCS operation are studied.
Some aspects of the in-flight ADCS exploitation onboard the Russian microsatellite
"Chibis-M" (developed, designed and manufactured by the Institute of Space Research of RAS
and orbited from SC "Progress" on January 25, 2012) are presented. Analytical, numerical and
laboratory study results are in good compliance with in-flight data.
1. Introduction
Low cost and comparatively short period of development, manufacturing and test are
among the most important features of a small satellite. All these advantages are attainable only if
suitable parameters for each satellite component are chosen. Therefore, it is vital to evaluate
attitude determination and control system parameters as soon as possible and make sure that this
system capability is adequate for the technical and other requirements imposed. The following
scheme is proposed to perform this work. First, the actuators are chosen on the basis of the
present requirements. Next, control and attitude determination algorithms valid for the chosen
hardware are constructed. Finally, mathematical model of the system is developed. This model is
the end product of the first phase. It is then analyzed analytically to prove necessary stability
requirements, assess its time-response, choose proper control parameters values and obtain
overall comprehension concerning satellite behavior. This phase is completed by the numerical
simulation with broadened assumptions. The last phase includes laboratory verification using the
mock-up of the proposed ADCS. In-flight satellite behavior may be considered as an ultimate
ADCS verification phase.
This overall scheme is based on the experience obtained by the team in the Keldysh
Institute of Applied Mathematics of the Russian Academy of Sciences (KIAM) under a variety
of projects. Among satellites whose ADCS were designed by the team are Munin,
REFLECTOR, ТNS-0-№1 (Technological NanoSatellite). Now the Institute is involved in the
project dedicated to design, testing and final verification of the ADCS and related algorithms of
the microsatellite “Chibis-M”. The satellite was successfully launched atop the “Progress” cargo
vehicle as a piggyback load on January 25, 2012. “Chibis-M” satellite is devoted to the lightning
in the upper atmosphere research. It is generally designed and built by the Institute of Space
Research of the Russian Academy of Sciences, while its ADCS was developed and designed by
R&DC “ScanEx” together with KIAM.
This paper briefly covers the attitude identification algorithms of the satellite and control
algorithms implemented by reaction wheels and magnetic coils (magnetorquers). According to
the proposed scheme, the ADCS was first generally designed by KIAM under the preliminary
hardware constraints. Analytical and numerical studies were used to choose actuators and
sensors, finalizing system structure [1]. According to the results obtained and recommendations
issued all the actuators and sensors were chosen by the “ScanEx”. All these were verified and
tested using laboratory facility at KIAM [2], [3]. Similar facility was built by the R&DC
“ScanEx” during this work, and final attitude control and determination algorithms verification
was done utilizing this facility. It was also used to assess overall ADCS functioning [4]. In-flight
tracking and maintenance is now carried out by the “Sputnix” LLC.
According to the scientific and overall mission goals, the ADCS should be capable of
handling following problems:
- Initial angular velocity damping after the separation from the launch vehicle and in worst-
case situation;
- Necessary attitude acquisition, the satellite should be stabilized in the orbital reference
frame after its velocity is damped;
- Main mode: three-axis attitude in the orbital reference frame;
- Arbitrary inertial attitude used to reorient solar panels so that the battery is quickly
charged.
Reference frames mentioned above are as follows. Body reference frame centered in the
satellite center of mass O , its axes coincide with the principal inertia axes of the satellite.
Orbital reference frame, the OХ 3 axis is directed along the radius-vector, OХ 2 is normal to the
orbital plane, OХ 1 is directed so the system is right-handed. Inertial reference frame is often
transformed into reference frame with origin located in the satellite center of mass, the first axis
OY1 is pointed to the vernal equinox, OY3 is directed along the Earth’s rotation axis, OY2 is
directed so the system is right-handed.
ADCS functioning mode may be stated from the mission control center, though automatic
switching between the modes using an onboard computer is the main priority. Switching logic
ensures that the satellite maintains the necessary attitude (while orbital and body axes coincide)
most of the time. In case of low charge level this logic may be overridden from the mission
control center to maintain Sun-directed attitude. This logic is considered in the paper after all the
algorithms are discussed.
The ADCS functioning In-flight testing was divided into several parts. First, all attitude
sensors were gradually checked for the proper functioning followed by the same for the
actuators. Next their main parameters were evaluated and compared with those obtained during
the laboratory verification. Finally, attitude determination and control algorithms were tested.
Fig. 3. ADCS control unit with reaction wheels installed (R&DC “ScanEx” courtesy)
Laboratory verification was done in the R&DC “ScanEx”. It was constructed on the basis
of one already built at KIAM. Laboratory facility includes the mock-up of ADCS similar to the
one used on the “Chibis-M”.
Laboratory facility is shown in Fig. 4. It consists of the ADCS mock-up, magnetic field
simulator, air-bearing, Sun simulator, personal computer governing system behavior.
Magnetorquers produce the dipole magnetic moment m . Interaction with the geomagnetic
field with magnetic induction vector B leads to the torque
M mB . (1)
As seen from (1), the torque lies in the plane perpendicular to the local geomagnetic
induction vector. Distributing the current among three coils one can adjust the dipole moment of
the satellite (assuming no disturbances from the batteries and all systems with the current flow)
thus adjusting the value and the direction of the resulting torque. Apart from the underactuation
problem, magnetic attitude control system has less accuracy than reaction wheels or thrusters, so
it is often used with other actuators or solely for the angular velocity damping. In case of the
“Chibis-M” satellite magnetorquers are used for the velocity damping and reaction wheels
desaturation.
A well-known algorithm “-Bdot” [5] is used for the initial angular velocity damping.
Control dipole moment implemented by magnetorquers is
dB
m k , (2)
dt
where the derivative is taken in the body frame.
Satellite dynamics governed by the control (2) was already assessed by the authors [6], the
asymptotical damping of the angular velocity is proven.
Two reference frames are used for the system dynamic. OXYZ is a laboratory reference
frame. OX is directed along the magnetic field vector, which stays constant during the
experiments, OY is directed along the local vertical and OZ is directed so the system is right-
handed. Oxyz is a mock-up body frame. Its axes are the mock-up’s principal axes of inertia.
Direct cosine matrix A represents the transition between these frames. Euler angles , ,
(rotation sequence 2-3-1) are used for the motion description near the equilibrium position.
The mock-up dynamics is described by the following equations
Jω ω × Jω M ext H ω × H . (3)
Here J is an inertia tensor, H is a vector which components are the reaction wheels angular
momentum projections to the mock-up body frame, M ext is the gravity-gradient torque which
appears due to the non-ideal platform balance (the center of mass does not coincide with the
mounting point).
PD-controller [7] based control law providing the asymptotical stability of the ω 0 and
matrix A being the identity matrix when M ext is zero can be written as follows [8]
H ω H ka S k ω ω Jω. (4)
Here S a23 a32 a31 a13 a12 a21 , k 0 , ka 0 are control parameters. In this case
T
Consider the Three Axis Determination (TRIAD) algorithm [9]. Let S , B be a Sun
direction unit vector and a geomagnetic field induction unit vector written in the orbital reference
frame. These can be calculated using corresponding mathematical models. Denote the same
vectors in the body frame as s , b , these can be measured with sensors. One can construct
following matrices in the orbital and body reference frames,
B × S B × B × S b s b b s
G = B , g = b
B × S B × B × S
b s b b s
Relationship between measured and calculated vectors is g = AG . The direction cosine matrix is
therefore expressed by the formulae A = gG T .
If the direction cosine matrix is determined by the local method one can obtain an
estimation of angular velocity vector from the derivative of the direct cosine matrix.
The Kalman filter based on the measurements of the Sun sensor and the magnetometer is
the main algorithm for the attitude determination of the microsatellite “Chibis-M” on the sunlit
part of orbit. During the algorithm laboratory testing special attention is paid to the filter
adjustment that determines important filter characteristics like the convergence time and the
accuracy after. In order to use the Kalman filter it is necessary to have the mathematical model
of the body frame motion. Let us rewrite motion equation of the mock-up (3) as
3
Jω kaq k ω 3 η Jη (7)
R
where q is the vector part of quaternion Λ q q4 representing the transition from the orbital
reference frame to the body frame, η is the local normal unit vector in the body frame, GM e
is the Earth’s gravitational constant and R is the distance from the Earth center to the satellite
center of mass. The last term describes the gravitational torque. Dynamical equations (7) are
supplemented with the kinematic relations.
For the filter based on the measurements of the Sun sensor and the magnetometer the
vector part of the quaternion and the angular velocity of the body frame with respect to the
inertial frame x [q ω]T are taken as the vector of estimated values [10]. Let us linearize the
equations of motion in the vicinity of the current position. We write equations (7) and kinematic
relations as
d
x(t ) F(t ) x(t )
dt
where x(t ) is a small increment of the state vector and F (t ) is the linearized matrix of the
motion equations in the vicinity of x(t ) . We obtain
1
W (t ) E
2
F (t )
J 1 6 F (t ) k E J 1 k
R 3 g a
where E is an identity matrix, W is the skew symmetric matrix introduced in (5),
J diag A, B, C is the inertia tensor of the satellite, Fg is the gravitational torque matrix.
The predicted value of the state vector xˆ k at the step k of the filter operation can be
obtained by integration of equations (7) and kinematic equation [11]. The a posteriori estimate is
constructed as the correction of the a priori estimate after the measurements are obtained. In our
case the measurement vector nonlinearly depends on the state vector, the measurement vector
consists of the magnetic field and Sun direction vectors in the body frame.
4. Laboratory verification
Laboratory verification was held for the control law (2) used in the “Chibis-M” control
scheme. Magnetic field was maintained constant during the experiment. The induction provided
by the simulator was of the order of 105 nТ, thus, prevailing over the geomagnetic one roughly
by the factor of ten. The error due to the hardware currents is no more than 1% of the nominal
field provided by the simulator.
Fig. 6 presents the results for one of the experiments. Initial angular velocity was about 11
deg/s and the velocity vector is directed almost vertically. Damping takes place in about 300
seconds with magnetorquers implementing the dipole magnetic moment of maximum 3.2 A·m2.
Resulting angular velocity is about 0.4 deg/s. The attitude determination phase duration is 2
seconds, while the control phase duration is 3 seconds. Terminal angular velocity oscillations
arise because of the non ideal balancing of the mock-up which leads to the gravity-gradient and
gyroscopic torques. Disturbing currents in the hardware are also contributing to the non-zero
final angular rate. Nevertheless, accuracy and time-response achieved are sufficient for the
“Chibis-M” ADCS and consistent with analytical results [6].
In Figs. 7-9 the reorientation experiment results are presented. In Fig.7 attitude angles
evolution is shown. Fig.8 illustrates the evolution of the angular velocity vector components. In
Fig.9 the reaction wheels angular velocity change is presented.
For the accuracy and convergence of the Kalman filter estimation laboratory testing of the
algorithm performance in the stationary position (the mock-up is fixed in the laboratory frame)
was performed. The magnetic field vector and the vector of the Sun direction (got using the
simulator) were also motionless with respect to the laboratory frame during the experiments. It is
rather easy to trace the process of the filter convergence and evaluate the accuracy of its
estimations under such testing conditions. Fig. 10 and Fig. 11 demonstrate an example of the
system operation for attitude determination during one of the experiments. Fig. 10 shows the plot
of the attitude angles dependence on time. Fig. 11 presents the plot of the angular velocity vector
components dependence on time. From Fig. 10 and Fig. 11 it is seen that during the first 125
seconds the local algorithm operated; this algorithm is characterized by the moderate accuracy of
the attitude determination. Beginning with from 125th second, the algorithm based on the
Kalman filter is switched on; this algorithm uses the measurements of the magnetometer and the
Sun sensor. The state vector determination accuracy becomes much higher compared to the
accuracy of the local algorithm. In the considered example the filter convergence time is
approximately 60 sec which is seen in Fig. 11. The accuracy of the filter operation after reaching
the convergence is determined as the mean square deviation of the state vector from the true one
(in the considered case, it is the zero angular velocity and the given rotation quaternion).
“-Bdot” algorithm is used onboard the “Chibis-M” microsatellite for the initial angular
velocity damping [5]. The control is constructed according to (2). For the algorithm functioning
one only needs magnetometer readings for two close time instants.
“-Bdot” is switched on automatically in three cases. If the ADCS is switched on as a
whole, that is it receives necessary energy after it was shut down, and the system was used for
damping before switching off; if there is no data for the proper ADCS functioning (but
magnetometer readings are available) or the data is too old; and finally if the angular velocity
rate exceeds critical value 0.5 deg/s determined using magnetometer. If the angular velocity rate
is below this critical value and “-Bdot” is functioning, it is switched off and coarse attitude
determination algorithm TRIAD switches on and magnetorquers pass the control to the reaction
wheels.
The data was taken on March 4, 2012 from 14:31:47 till 15:32:05 by Greenwich. From
approximately 14:33:00 till 15:09:00 the satellite was on the shaded orbit side. Each control
cycle consists of a 6-second measurement phase and a 3-second control phase. Telemetry
gathering step is about 30 seconds (usually 30-32 seconds). Two data sets were removed because
of the sensors readings (magnetometer or angular velocity sensor) provided non-realistic values.
Magnetometer data only was used for the control construction.
Fig. 13 introduces angular velocity sensor readings taken during the damping experiment
(actually regular ADCS functioning in this mode). It provides an insight into the effectiveness of
the angular velocity damping. Its rate dropped by the factor of 6 during 12 minutes and by the
factor of 20 during 30 minutes resulting in about 0.1 deg/s.
.
After the satellite is stabilized near the necessary attitude using the TRIAD algorithm
determination routine is passed to the Kalman filter. If the satellite is illuminated the filter uses
Sun sensors and magnetometer data. After the filter is switched on it starts convergence reducing
the covariance matrix, state vector estimation approaches the real state vector.
Kalman filter estimation results are used as an initial data for the reaction wheels control
algorithm. The satellite is then placed to the necessary attitude. Fig. 17 introduces attitude angles
during the stabilization. It is seen from Fig. 17 that the satellite is stabilized in about 10 minutes.
Attitude accuracy is about 0.1 degrees ( ). Fig. 18 introduces the angular velocity rates during
the process.
The satellite can use the Kalman filter based on the magnetometer and angular rate sensors
readings only. This situation takes place on the shaded side or when the sun sensors readings are
unavailable due to the other reason. Attitude determination is then automatically switched to the
Kalman filter without Sun direction. Having only magnetometer readings, it is impossible to
estimate the three-axis attitude. Nevertheless, having an attitude estimation from the last
successful Kalman filter run with the sun sensors data and angular rates from the corresponding
sensor, one can assess the three-axis attitude by propagating the equations of motion (Kalman
filter dynamical model). Here one important problem arises. Angular rates are known with a
constant offset due to the sensors errors. This leads to the estimated attitude drift. As a result, the
ADCS “believes” the attitude to be close to the necessary one, though in fact it is far from this
situation. As the satellite passes to the sunlit orbit side and the Sun sensors reading became
available, the ADCS “discovers” this error and eliminates it. Fig. 19 introduces the attitude
angles during the reorientation with Kalman filter based on the magnetometer and angular rates
sensors data. Since the dynamical system is unobservable slight error arises with time. The same
goes to the angular rates. These errors are valid for the ideal case when the Kalman filter
“considers” the sensors to be almost ideal. The angular rate sensor offset causes real attitude to
drift by about 50 degrees. However, introducing an estimated zero shift to the Kalman filter
measurements model allows to reduce this error to mere 10-15 degrees. The ADCS eliminates
this error in about 10 minutes after passing out of the shade. Note that the Sun sensors are
installed in such a way that some blind zones are present. These zones cover about 20% of the
sphere, and as Sun moves to these zones Sun sensors readings are unavailable. As seen from Fig.
19, even on the sunlit orbit side there are some switches to the Kalman without Sun sensors
measurements.
In this section the algorithms switch logic is considered (Fig. 20). When the system
switches on, it checks the angular velocity magnitude (it is calculated from the magnetometer
measurements) and the attitude estimation. If the angular velocity magnitude is more than some
threshold value or the attitude data is too old or absent the “-Bdot” algorithm switches on. When
the angular velocity magnitude becomes lower and the satellite is on the sunlit part of the orbit
the TRIAD algorithm switches on. This algorithm gives estimates necessary for the reaction
wheels three-axis orbital stabilization algorithm. If the satellite is on the shaded part of the orbit
or the data from the Sun sensor is absent, the “-Bdot” is working until this data appear. When the
stabilization algorithm based on the TRIAD estimates stabilizes the satellite in the vicinity of the
desired position (about 60 degrees), the Kalman filter switches on (it utilizes the Sun sensor and
magnetometer measurements). Attitude information provided by this algorithm is used for the
precise stabilization. If the sun measurements are interrupted (Sun is in the blind zone or the
satellite is on the orbit shaded part), another Kalman filter switches on. It utilizes only the
magnetometer and angular velocity sensor measurements. If the Kalman filter estimates diverge
or the estimated angular velocity shows that the rotation is fast then the ADCS switches to the
TRIAD.
In Fig. 21 the estimations of the satellite attitude angles are shown. Algorithm switching
moments are also highlighted.
Fig. 21. Satellite attitude estimations
Conclusion
Acknowledgements
This work was performed in the framework of the contract with “Sputnix” LLC (contract
№ 1226\11-1) and was supported by the Russian Foundation for Basic Research (Grants no. 12-
01-09318, 12-01-33045), the RF Ministry of Science and Education (Projects no. 14.132.21.1588
and 8182) and the Portuguese Foundation for Science and Technology (FCT). Authors are
grateful to Mr. S. Trofimov for valuable remarks on the paper.
Bibliography
[1] D.S. Ivanov, S.O. Karpenko, M.Yu. Ovchinnikov, Kalman filter attitude parameters
estimation, KIAM preprint (48) (2009).
[2] D.S. Ivanov, S.O. Karpenko, M.Yu. Ovchinnikov, S.S. Tkachev, Small satellite sensors
calibration, KIAM preprint (28) (2010).
[3] D.S. Ivanov, S.O. Karpenko, M.Yu. Ovchinnikov, Laboratory testing of magnetic coils with
a core, KIAM preprint (29) (2010).
[4] D.S. Ivanov, S.O. Karpenko, M.Yu. Ovchinnikov, D.S. Roldugin, S.S. Tkachev, Testing of
attitude control algorithms for microsatellite “Chibis-M” at laboratory facility, Journal of
Computer and Systems Sciences International 51 (1) (2012) 106-125.
[5] A.C. Stickler, K.T. Alfriend, Elementary Magnetic Attitude Control System, Journal of
Spacecraft and Rockets 13 (5) (1976) 282-287.
[6] M.Yu. Ovchinnikov, D.S. Roldugin, V.I. Penkov, Asymptotic study of a complete magnetic
attitude control cycle providing a single-axis orientation, Acta Astronautica 77 (2012) 48-60.
[7] B. Wie, P.M. Barba, Quaternion feedback for spacecraft large angle maneuvers, Journal of
Guidance Control, and Dynamics 8 (3) (1985) 360-365.
[8] M.Yu. Ovchinnikov, S.S. Tkachev, S.O. Karpenko, A study of angular motion of the chibis-
m microsatellite with three-axis flywheel control, Cosmic Research 50 (6) (2012) 431-440.
[9] M.D. Shuster, S. Oh, Three-axis attitude determination from vector observations, Journal of
Guidance, Control, and Dynamics 4 (1) (1981) 70-77.
[10] E.J. Lefferts, F.L. Markley, M.D. Shuster, Kalman filtering for spacecraft attitude
estimation, Journal of Guidance, Control, and Dynamics, 5 (5) (1982) 417-429.
[11] P. Maybeck, Stochastic models, estimation, and control, New York Academic Press, 1979.