The study of particle filter for satellite angular rate estimation without rate sensor measurement

This paper studies particle filter algorithm to estimate the angular rate of a satellite without the rate sensor measurements. In this work, the performance of the algorithm is studied in terms of capability to estimate the angular rate by using the Euler angles attitude information only. The effects of the number of particles on the algorithm performance are also investigated in terms of accuracy and computational aspects. The performance of the particle filter algorithm is verified using real flight data of Malaysian satellite.


Introduction
Satellite attitude determination is one of the important aspects in Attitude Determination and Control System (ADCS) of a satellite.Satellite attitude is important to be determined in a satellite to be fed back to controller in accomplishing a specific satellite mission such as Earth observation, communication, scientific research and many other missions.However not all states are directly available may be due to malfunction sensor or as a way to obtain a substantial reduction of sensors which represents a cost and hardware complexity reduction.
In most practical implementations of ADCS, the angular rate and attitude information of a spacecraft are obtained respectively from measurement of rate sensor such as gyroscopes and also attitude sensor such as sun sensor, star sensor, or magnetometer.However, gyroscopes are generally expensive and are often prone to degradation or failure [1].Therefore, as an alternative or backup system to circumvent the problem of rate sensor measurement absence, an estimation to provide the information of angular rate by using only the Euler angles attitude information is designed.
Since decades, a great number of research works have been devoted to the problem of estimating the attitude of a spacecraft based on a sequence of noisy vector observations such as [2][3][4] [5].Different algorithms have been designed and implemented in satellite attitude estimation problem.Early applications relied mostly on the Kalman filter for attitude estimation.Kalman filter was the first applied algorithm for attitude estimation for the Apollo space program in 1960s.Due to limitation of Kalman filter which work optimal for linear system only, several famous new approaches have been implemented to deal with the nonlinearity in satellite attitude system including extended Kalman filter (EKF) [6][7] [4], unscented Kalman filter (UKF) [8][9][10], particle filter [11][12] [13], and predictive filtering [14] [15].EKF is an extended version of Kalman filter for nonlinear system whereby the nonlinear equation is approximated by linearized equation through Taylor series expansion.UKF, an alternative to the EKF uses a deterministic sampling technique known as the unscented transform to pick a minimal set of sample points called sigma points to propagate the non-linear functions.EKF and UKF approaches is restricted assume the noise in the system is Gaussian white noise process.While, particle filter is a nonlinear estimation algorithm that approximates the nonlinear function using a set of random samples without restricted to a specific noise distribution as EKF and UKF.
In the open literature, spacecraft attitude estimation use different attitude representation either Euler angles, Rodrigues parameter, or quarternion parameter as their kinematic model [16].Each kinematic model of different parameter is governed by different differential equation [17].The researchers also studied the performance of estimated states by varying different type of sensor measurement such as gyroscope, magnetometer, sun sensor or star sensor.
To the best of authors' knowledge, there is no study that estimates the satellite's angular rate by implementing particle filter algorithm using nonlinear Euler angles attitude kinematics model.Particle filter is opted in this study because it is still infancy estimation algorithm in gyroless satellite attitude application and is believed or claimed by some researchers that beyond the EKF is the particle filter [21].The Euler angles attitude representation is preferred in this work rather than quaternion because it can provide direct physical interpretation for analysis, contrary to quaternion.Hence, in this work the particle filter algorithm is studied in this application and is verified using real flight data of Malaysian satellite, RazakSAT.The organization of this paper proceeds as follows.Section 2 presents the nonlinear satellite attitude dynamics model.Section 3 describes briefly the particle filter algorithm used in this work.Section 4 presents and discusses the results of the estimation system and Section 5 provides the paper's conclusions.

Nonlinear satellite attitude dynamics model
Satellite attitude dynamics model is described by both the dynamics equation of motion and kinematics equation of motion [18].
Dynamic equation of motion relates the satellite's angular rate to the exerted torque as defined by Euler's Moment Equation [18][17] ̇ (1) or similarly is written in component-wise with ] is space environmental disturbances torque vector.
For low Earth orbit satellite, gravity gradient torque must be taken into consideration as part of external torque since it is continuously acting on the spacecraft body and influence the satellite's attitude motion.The external torque dominated by gravity gradient torque is written as [17] While, kinematic equation of motion relates the attitude parameter to the satellite's angular rate.In this work, Euler angles parameter is preferred to represent the satellite's attitude as its straightforward physical interpretation for analysis.Euler angles are defined as the rotational angles about the body axis as follows: is rotational angle about X-axis (roll); is rotational angle about Y-axis (pitch); and is rotational angle about Zaxis (yaw).The kinematic equation of Euler angles parameter using (or some literature use notation 3-2-1) sequence rotation is where c, s and t denote cosine, sine, and tangent functions, respectively.While, is the orbital rate of the spacecraft.
A complete formulation of the satellite attitude dynamics for low Earth orbit satellite is obtained by combining both the dynamics equation of motion under influence of gravity gradient torque with the kinematics equation of motion such that with

Particle filter algorithm
Particle filter or also known as Sequential Monte Carlo (SMC) is an on-line, recursive algorithm trying to estimate the true state of a nonlinear system where only some noisy measurements are available.Particle filter does not require any assumption about the state-space or the noise of the system to be Gaussian as restricted in conventional methods EKF and UKF.The underlying idea behind the approach is to approximate the posterior density using a set of particles.Particle filter was developed in 1993 by Gordon et al [20] under the name of the 'bootstrap filter algorithm' by including the resampling technique to reduce the degeneracy problem of the existing Monte Carlo approach.Particle filter algorithm is described as follows [18].Given the nonlinear system dynamics and measurement described by continuous-time model [19] ̇ ( ) with is the state vector and is the output vector, and denote the noise or uncertainty vector in the state and measurement respectively.Then the continuous-time model in Equation ( 17) and ( 18) is transformed into the discrete-time model such that

Result and discussion
In this section, the performance of particle filter as an estimation algorithm to estimate the angular rate without the rate sensor measurements is investigated.The performance of the estimation using particle filter algorithm is validated using real sensors data from the RazakSAT satellite.RazakSAT is a Malaysian satellite which was launched into low Earth orbit near Equatorial in 2009.In the mission, the quaternion attitude was provided by using sun sensor, one of the attitude sensor, while the angular rate was provided by gyroscope sensor.The available measurements are for about six orbits sequentially, available to the ground system at a sampling rate of about 1 minute.The sample of RazakSAT's telemetry data is shown in Fig. 1, while the satellite's characteristics of RazakSAT are given in Table 1, which was provided by Astronautic Technology Sdn Bhd (ATSB), the Malaysian company that responsible for RazakSAT's mission.The first study is to validate the capability of particle filter to estimate the angular rate by using measurement Euler angles attitude roll, pitch and yaw only.The accuracy of the estimated states is assessed by comparing the estimated states with the real states provided by sensor data of RazakSAT.Figs. 2, 3, and 4 show comparisons between the estimated angular rates using particle filter algorithm and the real angular rates measurement provided by gyroscope sensor in RazakSAT mission, respectively around X-axis, Y-axis, and Z-axis.From all the three figures, it is observed that the behaviour of estimated states does not scattered at random, otherwise they seem deviate from the approximately zero values of the real states as measured by gyroscope.This deviation is due to mis-modeling and the influence of other unmodeled space environmental disturbance torques including aerodynamic, solar radiation pressure and Earth magnetic torques.However as overall, the trendlines of the estimated states are still within 0.1 deg/s ranges which are suitable for moderate accuracy attitude determination mode such as during housekeeping and detumbling task, but unsuitable for pointing mode that requires more precise accuracy such as during imaging task.The accuracy of the estimated states is validated using Root Mean Squared Error (RMSE) with The RMSE is a frequently used measure of the differences between values estimated by an estimator and the values actually observed.It is a representative of the size of an average error.The RMSE value of the estimated angular velocity is tabulated in Table 2. From the table, the average error between the estimated and the real states are 0.0339 deg/s, 0.0371 deg/s, 0.0387 deg/s respectively for angular rate around X-axis, Yaxis, and Z-axis.As overall it can be deduced that the particle filter algorithm is able to provide the information of angular rate in less than 0.1 deg/s average error which is a quite good performance filter.The second study is to investigate the effects of number of particles, on the particle filter algorithm performance in terms of accuracy and computational aspects.The accuracy and computational aspects are assessed respectively using norm of error and CPU time.Norm of error and CPU time generated for different values of the number of particles are tabulated in Table 3.The divergence tracks are resulted for the number of particles .This is because very small number of particles is not enough to represent the density hence gives divergence result.Fig. 5 plots the norm of error as a function of the number of particles for .It is observed that the norm of error is drastically decreased until values about 0.07 deg/s at the number of particles .However, note that as is increased beyond 100, there are insignificant changes of the norm of error values.This is because if the particle numbers are fewer, the importance distribution is not accurate enough to represent the real distribution hence affect the estimation accuracy.While the plot of the CPU time as a function of the number of particles for is shown in Fig. 6.It is observed that CPU time increase linearly as the number of particles increased.This is because the intensive memory and computational effort is required when the number of particles is increased.Hence it is concluded that the optimal value of number of particles is for efficient implementation in this problem.
All the studies was performed by using Matlab R2013(a) in Windows 7 operation system with the specification of Intel Core i7, 2.0GHz CPU and 4GB RAM.

Conclusion
In this paper, particle filter estimation algorithm to provide the angular rate information during the absence of rate sensor circumstances was studied.The capability of the algorithm to provide the angular rate information using Euler angles attitude only is validated using real flight data of RazakSAT, the Malaysian satellite.The results show that the algorithm is able to provide the information of satellite angular rate within 0.1 deg/s accuracy, which is suitable for moderate accuracy attitude determination such as during housekeeping and detumbling mode.Besides, the effects of number of particles on the particle filter algorithm performance are also investigated in terms of accuracy and computational aspects through assessment of the error norm and CPU time.The results show that it is important to determine the optimal value of number of particles for efficient implementation.This work can be used as an alternative or backup attitude determination system of a low Earth orbit satellite during the absence of angular rate measurement due to unexpected sensor failure or for cost reduction.Future work will compare the PF algorithm with the extended Kalman filter (EKF), the most widely employed algorithm in spacecraft community both in real practice and theoretical study.

Fig. 2 .
Fig. 2. Comparison between estimated and real angular rate around X-axis.

Fig. 3 .
Fig. 3. Comparison between estimated and real angular rate around Y-axis.

Fig. 4 .
Fig. 4. Comparison between estimated and real angular rate around Z-axis.
rate Z-axis (deg/s) THE REAL AND ESTIMATED ANGULAR VELOCITIES AROUND Z-AXIS Real Estimated
) Here the subscript of the variables denotes the time step,

Table 2 .
RMSE of estimated angular rate.

Table 3 .
Norm of error and CPU time with different values of the number of particles.