QMRPF-UKF Master-Slave Filtering for the Attitude Determination of Micro-Nano Satellites Using Gyro and Magnetometer
Abstract
: In this paper, the problem of estimating the attitude of a micro-nano satellite, obtaining geomagnetic field measurements via a three-axis magnetometer and obtaining angle rate via gyro, is considered. For this application, a QMRPF-UKF master-slave filtering method is proposed, which uses the QMRPF and UKF algorithms to estimate the rotation quaternion and the gyro bias parameters, respectively. The computational complexicity related to the particle filtering technique is eliminated by introducing a multiresolution approach that permits a significant reduction in the number of particles. This renders QMRPF-UKF master-slave filter computationally efficient and enables its implementation with a remarkably small number of particles. Simulation results by using QMRPF-UKF are given, which demonstrate the validity of the QMRPF-UKF nonlinear filter.1. Introduction
Spacecraft attitude is important for attitude control in many space missions. In the last four decades, a great number of research works have been devoted to the problem of estimating spacecraft attitude based on a sequence of noisy vector observations, resolved in the body-fixed coordinate system and in a reference system [1–7].
For the attitude sensor, the sun sensor, Earth sensor, star tracker, three-axis magnetometer, and gyro etc, are often used. The attitude estimation problem possesses an undesirable strong nonlinearity. The filtering-based methods that were developed in the 1980s embedded the attitude determination problem in the framework of stochastic filtering. The mostly used filtering method is the extended Kalman filter (EKF) [2,8]. Nevertheless, poor performance or even divergence arising from the linearization implicit in the EKF has led to the development of other filters [3,9,10]. Another often used method is the unscented Kalman filter (UKF), also known as the sigma-point filter [4]. Unscented filters are essentially based on second or higher-order approximations of nonlinear functions, which are used to estimate the mean and covariance of the state vector. In [4], an unconstrained three-component vector is used, based on the generalized Rodrigues parameters to represent an attitude error quaternion. The state vector includes the attitude error and bias vectors. UKF, as a Kalman filter mechanization, is sensitive to the statistical distribution of the stochastic processes driving the dynamic model: non-Gaussian distributions guarantee nonoptimality of the estimates. Recently, a new method using the particle filtering (PF) technique has been proposed for a spacecraft’s attitude estimation [1,5–7]. Based on the concept of sequential importance sampling and the use of Bayesian theory, particle filtering is particularly useful in dealing with nonlinear and non-Gaussian problems. However, the most notorious disadvantage of a particle filter is its formidable computational complexity, since hundreds even thousands of particles are usually needed to achieve required approximation accuracy, and then it is difficult to achieve real time performance. A particle filtering algorithm [1] copes with the curse of computational complexity related to PFs by using an efficient initialization procedure, along with an importance weight cooling schedule and particle set portioning. This method is applicable to gyroless attitude determination setting, and the state vector is composed of a unit norm quaternion and a three-element angular-rate vector. In [5], particle filtering for attitude estimation using a minimal local-error representation (MLERPF) is proposed. The main character of MLERPF is that it does not work well when the number of particles is not large enough, which brings limitation to some applications.
This paper develops a QMRPF-UKF master-slave filter and gives its implementation in the case of a three-axis stabilized micro-nano satellite, obtaining noisy geomagnetic field measurements via a three-axis magnetometer and obtaining the noisy angle rate via gyro. In order to reduce the computational cost rising from the increased state dimensions, the quaternion multiresolution particle filter (QMRPF) algorithm is used as the master filter to estimate the attitude quaternion, and the unscented Kalman filter algorithm is used as the slave filter to determine the gyro bias parameters. On the other hand, the new estimator copes with the curse of computational complexity related to the particle filtering technique by introducing multiresolution approach that permits a significant reduction in the number of particles [11]. This renders the QMRPF-UKF master-slave filter computationally efficient and significant computational savings of QMRPF master filter is achieved by drastically reducing the needed number of particles. The performance of QMRPF-UKF in various scenarios is studied and compared with MLERPF method, which demonstrates the validity of QMRPF-UKF nonlinear filter.
This paper is organized as follows. In Section 2, the system model of the attitude determination of a three-axis stabilized micro-nano satellite by using gyro and magnetometer is given. In Section 3, the QMRPF-UKF master-slave filter is described in detail. In Section 4, the QMRPF-UKF master-slave filter for the attitude determination problem is verified on the basis of its estimation accuracy and computational time. We draw some conclusions in Section 5.
2. System Model
2.1. Quaternion Process Model
It is known that the body angular motion can be described in terms of the attitude quaternion by the following equation:
Assuming that ωk is constant during the sampling time interval Δt, the orthogonal transition matrix Ω(ωk) is expressed using ωk and computed as follows:
2.2. Rate Sensor Measurement Model
A common sensor that measures the angular rate is a rate-integrating gyro. For this sensor, a widely used model is given by:
2.3. Observation Model
A widely used attitude measurement model is given by:
3. QMRPF-UKF Master-Slave Filter
In this Section, the QMRPF-UKF master-slave filtering method is proposed, which uses the QMRPF and UKF algorithms to estimate the rotation quaternion and the gyro bias parameters, respectively. Section 3.1 formulates a detailed process of QMRPF master-filter. Section 3.2 describes the UKF slave-filter process. The flow chart of the QMRPF-UKF master-slave filter with multiresolution approach embedded at time k = M is shown in Figure 1, where ① denotes the master filter, and ② denotes the slave filter.
3.1. QMRPF Master-Filter
QMRPF master-filter is provided to estimate the quaternion from pairs of vector observations, and computational efficiency of quaternion particle filter (QPF) is achieved by using the spatial-domain multiresolutional approach. This section is divided into three parts: QMRPF master-filter mathematical model, the complete step sum-up of QMRPF master-filter, quaternion particle filter with multiresolution embedded.
A. QMRPF Master-Filter Mathematical Model
Taking attitude quaternion as state variable, the mathematical model of QMRPF master-filter is built. State equation is
Measurement equation is Equation (9). From Equation (11), it can be seen that, the gyro bias estimation at time k – 1 will be used for estimating the attitude quaternion at time k.
B. Complete Step Sum-up of QMRPF Master-filter
The time is supposed to be k = M when the multiresolution approach is embedded into the quaternion particle filter.
Initializing the quaternion particles and setting quaternion weights as i = 1, ..., N.
For k < M, quaternion particle filter is used to estimate the attitude quaternion q̂k at time k, and the quaternion particles and are also obtained.
For k = M, QMRPF algorithm is adopted to determinate the rotation quaternion q̂k at time k, the number N of particles is reduced to be Ñ. and are derived at time M.
For k > M, the basic step is the same as step 2, but the number of quaternion particles is Ñ.
C. Quaternion Particle Filter with Multiresolution Embedded
In the following, we will show how q̂k is estimated when the multiresolution approach is embedded into the quaternion particle filter at time k = M.
(1) Particle weights multiresolution decomposition
A partition of N samples into N/2L blocks is used where L is the level number of multiresolution decomposition, and then particle weights of every block are decomposed into lowpassed and highpassed components.
(2) Thresholding the highpass-filtered particle weights
A simple thresholding is carried out on the highpass-filtered particle weights of every block:
(3) Quaternion particles selection
The thresholded weight Wm,lh,k−1 corresponds to quaternion particles . Therefore, we can just propagate the elements in which corresponds to the distinct elements in Wm,k–1 = TTWm,lh,k–1. For the repeated elements of Wm,k–1, we can propagate one corresponding representative element in , The number of quaternion particles is selected to be Ñ by the thresholding operation, which can significantly reduce the computation in propagation while maintaining performance. Some detailed information about the multiresolution process can be referenced to [11].
Now let and denote Ñ independent quaternion particles and their associated weights, Ñ denotes the number of quaternion particles selected.
(4) Time update
The prediction values are obtained from Equation (11), where βk–1 is the estimation of the gyro bias at time k – 1 via UKF algorithm.
(5) Measurement update (the update of weight):
(6) Quaternion estimation
At time k, Ñ weighted quaternion samples are available. To obtain the filtered quaternion via minimum mean square error (MMSE) approach, the following minimization problem is solved [6]:
Letting:
As in Davenport’s well-known q-method, the quaternion that solves the maximization problem of Equation (18) is the normalized eigenvector corresponding to the largest eigenvalue of K:
Then the attitude quaternion estimation q̂k at time k = M is obtained.
3.2. UKF Slave-Filter
The gyro output can’t be used for attitude estimation directly for the reason that the gyro has a bias vector, and thus the gyro bias is considered in the estimation process. The UKF slave-filter is designed to estimate the gyro bias vector. Taking gyro bias as state variable, the state space model of slave filter, UKF, is built on the basis of gyro bias model and vector observation model. State equation is Equation (6), and observation equation is:
The noise variance matrix of state model and observation model are supposed to be Qσu2 and Rδb, respectively. .
It can be seen that, the state equation is linear and the observation equation is nonlinear. Moreover, the attitude quaternion at time k – 1 will be used to estimate the gyro bias at time k. The steps of gyro bias estimation using UKF is as follows:
Initialization
Calculating sigma points
Calculating the weights of sigma points
The weights corresponding to the sigma points are given by:
Time update
The predicted mean and error variance matrix of the gyro bias at time k are given by:
Measurement update
The prediction mean of the measurement vector at time k is calculated using a weighted sum of the points b̂k|k–1(i), which is given by:
The measurement variance and cross correlation between β̂k̄ and b̂k̄ are computed by:
4. Simulation Results and Analysis
In our simulation, the micro-nano satellite orbit is in sun synchronization orbit with 900 km altitude. Gyro and magnetometer are integrated for attitude determination. The magnetic field reference is modeled using a 10th-order International Geomagnetic Reference Field model. Magnetometer noise is modeled by a zero-mean Gaussian white-noise process with a standard deviation of 50 nT. The gyros’ output is contaminated with measurement noise having two components: white, zero-mean Gaussian process with intensity and gyro bias modeled as integrated Gaussian white noise with intensity . The initial attitude error angle is 0°, the initial gyro bias is 0.2(°/h) on each axis, the gyro bias variance matrix is [0.2(°/h)]2 × I3×3, the measurement noise matrix of magnetometer is 502 I3×3 (nT)2, the sampling frequency is 10 Hz, simulation time is 3,000 s. The initial particle number of QMRPF-UKF method is 600. The threshold is 0.5 × 10−4. The starting time of performing multiresolutional transform is the 1,000 s. QMRPF-UKF master-slave filtering is used to perform the attitude determination of this micro-nano satellite. The codes are run on a computer, the processor speed of which is 2.5 GHz and memory is 2 Gbyte. In testing the filter, we look for two filter attributes: computational cost and accuracy.
The estimation error of gyro/magnetometer integrated attitude angle estimation is shown in Figure 2. In Figure 3, the gyro bias estimation error is given. It can be seen that the attitude angle estimation error is smaller than 0.1°, and the gyro bias estimation error is smaller than 0.01°/h.
Here, we run QMRPF-UKF algorithm in 50 runs of Monte Carlo simulation with different thresholds to validate the effectiveness and complexity of QMRPF-UKF for the attitude determination of a micro-nano satellite. The performance is measured via RMS (root mean square) estimation error of Monte Carlo simulation. The smaller the RMS estimation error resulting from the filter is, the better the filter performance is. Figure 4 gives the selected particles numbers after performing multiresolution particle filter with different thresholds. RMS error and the computational cost of QMRPF-UKF with different thresholds are given in Table 1. It can be seen that, the larger the threshold is, the smaller the number of surviving particles is. With the increase of threshold, the computational time is decreased, and the filtering varies in estimation precision.
QMRPF-UKF is compared with the existing method, MLERPF, in terms of RMS error and computational cost, as shown in Table 1. It can be seen that, QMRPF-UKF outperforms MLERPF significantly in terms of computational cost and QMRPF-UKF is comparable to MLERPF in terms of estimation precision. For MLERPF, the state dimension of performing particle filter is six, which is larger than that of QMRPF-UKF. Moreover, in the calculating process of MLERPF, the particle number is invariant. For QMRPF-UKF master-slave filter, the filtering performance is improved from two aspects. On the one hand, in order to reduce the computational cost rising from the augment of the state dimensions, QMRPF algorithm is used as the master filter to estimate the attitude quaternion, and UKF is used as the slave filter to determine the gyro bias parameters. On the other hand, QMRPF copes with the curse of computational complexity related to the particle filtering technique by introducing multiresolution approach that permits a significant reduction in the number of particles.
Three simulation scenarios are carried out to verify the convergence performance of QMRPF-UKF. The first one is that, the initial attitude error angle is 50°, 50°, and 50° for each axis, respectively. The second one is that, the initial attitude error angle is −70°, 40°, and 100° for each axis, respectively. The third one is that, the initial attitude error angle is −60°, 30°, and 130° for each axis, respectively. These are added into the initial condition of attitude estimation. For each simulation scenario, other parameters are same as the above mentioned ones. QMRPF-UKF convergences in each simulation. The attitude angle estimation error is smaller than 0.1°, and the gyro bias estimation error is smaller than 0.01°/h.
5. Conclusions
We have developed a computationally efficient QMRPF-UKF master-slave filtering method, to solve the problem of gyro/magnetometer integrated attitude determination of a three-axis stabilized micro-nano satellite. Computational efficiency of the proposed filtering is achieved by combining the master-filter with slave-filter and by adopting the spatial-domain multiresolutional approach to reduce the needed number of particles while maintaining comparable estimation accuracy. The larger the threshold is, the fewer the number of surviving particles, and the filtering varies in estimation precision.
Acknowledgments
The authors would like to thank the anonymous reviewers for their comments, which improved the presentation of this paper. This research has been supported by National Natural Science Foundation of China under grant 60704010, 61004140, the National Basic Research Program (973 Program) of China under grant 2009CB72400204, National High Technology Research and Development Program (863 Program) of China under Grant 2008AA12A216.
References and Notes
- Carmi, A; Oshman, Y. Fast particle filtering for attitude and angular-rate estimation from vector observations. J. Guid. Contr. Dynam 2009, 32, 70–78. [Google Scholar]
- Markley, FL. Attitude error representations for Kalman Filtering. J. Guid. Contr. Dynam 2003, 63, 311–317. [Google Scholar]
- Choukroun, D; Bar-Itzhack, IY; Oshman, Y. Novel quaternion Kalman Filter. IEEE Trans. Aerosp. Electron. Syst 2006, 42, 174–190. [Google Scholar]
- Crassidis, JL; Markley, FL. Unscented Filtering for spacecraft attitude estimation. J. Guid. Contr. Dynam 2003, 26, 536–542. [Google Scholar]
- Cheng, Y; Crassidis, JL. Particle filtering for attitude estimation using a minimal local-error representation. Proceedings of AIAA Guidance, Navigation, and Control Conference, Chicago, IL, USA, 2009. AIAA 2009-6309..
- Oshman, Y; Carmi, A. Attitude estimation from vector observations using a genetic algorithm-embedded quaternion particle filter. J. Guid. Contr. Dynam 2006, 29, 879–891. [Google Scholar]
- Carmi, A; Oshman, Y. Robust spacecraft angular rate estimation from vector observations using interlaced particle filtering. J. Guid. Contr. Dynam 2007, 30, 1729–1741. [Google Scholar]
- Crassidis, JL; Junkins, JL. Optimal Estimation of Dynamic Systems; Chapman & Hall/CRC: Boca Raton, FL, USA, 2004; Charts 2 and 5. [Google Scholar]
- Psiaki, ML. Backward-smoothing extended Kalman Filter. J. Guid. Contr. Dynam 2005, 28, 885–894. [Google Scholar]
- Haupt, GT; Kasdin, NJ; Keiser, GM; Parkinson, BW. Optimal recursive iterative algorithm for discrete nonlinear least-squares estimation. J. Guid. Contr. Dynam 1996, 19, 643–649. [Google Scholar]
- Hong, L; Wicker, D. A Spatial-domain multiresolutional particle filter with thresholded wavelets. Signal Process 2007, 87, 1384–1401. [Google Scholar]
Threshold of QMRPF-UKF | MLERPF | |||||||
---|---|---|---|---|---|---|---|---|
1 × 10−5 | 5 × 10−5 | 7 × 10−5 | 1.3 × 10−4 | 1.7 × 10−4 | 1.9 × 10−4 | 5 × 10−4 | ||
RMS error (°) | 0.0115 | 0.0137 | 0.0128 | 0.0108 | 0.0134 | 0.0124 | 0.0126 | 0.020 |
Computational cost (s) | 223 | 221 | 219 | 194 | 180 | 171 | 160 | 1840 |
© 2010 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/.)
Share and Cite
Cui, P.; Zhang, H. QMRPF-UKF Master-Slave Filtering for the Attitude Determination of Micro-Nano Satellites Using Gyro and Magnetometer. Sensors 2010, 10, 9935-9947. https://doi.org/10.3390/s101109935
Cui P, Zhang H. QMRPF-UKF Master-Slave Filtering for the Attitude Determination of Micro-Nano Satellites Using Gyro and Magnetometer. Sensors. 2010; 10(11):9935-9947. https://doi.org/10.3390/s101109935
Chicago/Turabian StyleCui, Peiling, and Huijuan Zhang. 2010. "QMRPF-UKF Master-Slave Filtering for the Attitude Determination of Micro-Nano Satellites Using Gyro and Magnetometer" Sensors 10, no. 11: 9935-9947. https://doi.org/10.3390/s101109935
APA StyleCui, P., & Zhang, H. (2010). QMRPF-UKF Master-Slave Filtering for the Attitude Determination of Micro-Nano Satellites Using Gyro and Magnetometer. Sensors, 10(11), 9935-9947. https://doi.org/10.3390/s101109935