1. Introduction
Remote sensing satellite missions require pointing, so an accurate attitude determination and control system is a dominant factor for mission success. The attitude sensor determines how a given reference vector is oriented in relation to the satellite system [
1]. After processing these vectors computationally, it is then possible to estimate the satellite’s orientation using attitude estimation techniques. With the advancement in technologies, the computational power and energy efficiency of microprocessors enables the use of increasingly computationally heavy models [
2]. This strategy is especially advantageous in space systems.
The main objective of this research is to analyze the feasibility along with the advantages and disadvantages of implementing the EPF for attitude estimation, highlighting and expanding the properties of the filter, showing its advantageous characteristics. In the EPF the nature of the system, composed of dynamics and noises, seeks to deteriorate the state estimate, while at the same time seeking robustness through a coefficient of performance in its respective cost function. These characteristics of the method provide, with a reduced number of particles, a good processing time and good precision without sample impoverishment.
The justification for this research is given by the fact that many spacecraft missions, not only the remote sensing ones such as the CBERS-4 used in this research, necessitate precise sensor pointing and precise determination and attitude control in real time, which entails estimating attitude and gyros bias from attitude measurements provided by sensor outputs. The correct attitude determination directly influences the performance of the attitude control system and adjacent systems on the satellite that need this information. According to [
3], because the determination of attitude is done using sensors, whose measurements always include some noise and non-Gaussian uncertainties, stochastic filters are more suitable approaches. The non-Gaussian uncertainties that appear in the process model are contained in the gyro’s measurements, which present noise and bias due to post-launch sensor misalignment, thermal expansion, fading, electro-mechanical degradation, etc. All these factors cause inaccuracies in the model and deteriorate the attitude estimation process. Thus, the E
PF deals well with this problem as shown in the results of this research.
The E
PF algorithm uses the
robust filter concept so that external interference is overcome [
4]. The
filtering minimizes the worst-case estimation error using the concepts from the famous game theory approach [
5,
6,
7]. The second-order linearization for the
filtering was presented more recently in [
8]. For the
robust filtering, the parameter
has a special meaning for the method; it evaluates the upper threshold level and verifies the robustness of the
robust filtering for the uncertain interference [
3,
4]. The performance is associated with the appropriate choice of the
parameter, which is directly associated with robustness and the average accuracy of the system [
9], where you should always try to find a balance between these method properties. The finding is that with a higher the value of
, the result will be closer to a normal filtering. The lower the associated
value, the more intense the filter robustness [
4,
10].
The CBERS-4 attitude and gyros bias estimation, which makes use of the PROPAT propagator [
11], analyzing and comparing the mean error, standard deviation, root mean squared error (RMSE), and the processing time cost of the estimation methods used is the main aim of this research. The simulations are implemented with orbit and attitude data from 1 September 2015 provided by the Satellite Control Center of the Brazilian National Institute for Space Research (CCS-INPE). The quaternions are used to represent attitude [
12], and two estimation methods are used and compared—PF and E
PF—which are modern methods that consider both the process model and the noisy measurement model. The application of these methods in real missions characterizes the main contribution of this work regarding the state-of-the-art estimation methods.
In aerospace engineering, it is possible to note important contributions related to the application of estimation methods: Ref. [
12] presents a study on the satellite attitude estimation using the EKF; ref. [
13] presents comparisons between two Kalman filters for nonlinear systems; ref. [
14] analyses the results of the EKF in an instant mapping and localization process; ref. [
15] research uses the EKF for attitude and gyros bias estimation but with real data and with a sampling time less than that the one used in this research; refs. [
16,
17] present a spacecraft attitude estimation through UKF, using quaternions and Euler angles; ref. [
18] analyzes the UKF robustness for orbit determination through global positioning system signals; ref. [
19] presents the orbit determination using nonlinear PF and GPS measurements; ref. [
1] makes a comparison between the estimation methods of UKF, regularized particle filter (RegPF), and extended
filter (E
F); and ref. [
20] presents the Rao-Blackwellized particle filter (RaoBPF) attitude estimation and gyros bias for the CBERS 4 satellite, evaluating computational processing time cost and precision.
The structure of the article is as follows:
Section 2 introduces the problem statement for nonlinear state estimation.
Section 3 presents the general concepts of an extended
particle filter (E
PF).
Section 4 presents methods applied to gyros bias estimation and attitude estimation using the CBERS-4 orbit and attitude simulation data. The results are presented, analyzing the precision of the methods and the processing time of each one.
Section 5 presents some conclusions and final comments.
2. Problem Statement
Assume the process model and the measurement model that represent a system of nonlinear equations described by:
where the term
k is the time index,
is the state vector,
is associated with the control input,
is the process noise,
is the measurement vector, and
is the measurement noise. The function
is commonly referred to as process equation, and
is commonly referred to as measurement equation; both functions are time-varying nonlinear vector systems. Both noises
and
are often considered Gaussian white noise and independently presented as a well-defined probability density function.
For applications of estimation methods, the process and measurement model may change from that presented by Equation (
1), in which sometimes the process model is linear and the measurement model is nonlinear, or vice-versa. This happens for attitude estimation depending on the chosen parameterization. In this work, the attitude kinematic equation parameterized in quaternions will be used as a process model, which is a linear system, and the measurement model chosen is a nonlinear system.
2.1. Attitude Representation by Quaternions
The state vector is presented with the attitude representation parameterized in quaternion
and the gyro bias
represented by [
21,
22]:
According to [
23], the bias is an output component that has characteristics of both deterministic and stochastic behavior that is not tied to the input the sensor is connected to.
Then, the linear system that represents the process equation of the problem is given by [
12,
21]:
where
is the angular velocity vector in the body frame, and
is an anti-symmetric matrix formed with the components of angular velocity and has dimension
, given by [
12,
21]:
In this work, the gyros model (rate integration gyros–RIGs) was used that has the classic representation [
21,
22] given by
, where
, the term
is the gyro output vector,
are the components of the gyros bias defined as an output component unrelated to the input to which the sensor is subjected, and
is the white Gaussian noise process, which covers all remaining non-modeled effects other than the random noises.
2.2. Mathematical Models of Attitude Sensors
The nonlinear system that represents the measurement equation of the problem is given by [
24]:
The first and second rows of the column matrix of Equation (
5) contain the information provided by the digital sun sensor (DSS). This sensor provides the coupled
pitch angle (
, first line term) and the coupled
yaw angle (
, second line term); the direct measurement of an attitude angle is not trackable [
16,
17,
24]. The terms
,
,
are the solar vector components in the body frame, and these sensors are Chinese, made where this angle argument is associated with the field of view and resolution data sheet.
The third and fourth rows of the column matrix of Equation (
5) are the information provided by the horizon sensor, commonly referred to as infrared earth sensors (IRES) [
24]. Here, the roll angle measurement is given by
and the pitch angle measurement is given by
.
More information about the process and measurements equations can be found in [
20].
3. The Extended Particle Filter
The theoretical foundation of an
filter is based on a robust filter implementation [
3,
4] with the central goal of estimating the linear combination of the state
, which is given by
where
is a full rank positive definite matrix. Commonly,
is used to perform a direct estimate of the state
, as in the Kalman filter. The state
, when estimated, is represented with the notation
; and the initial state
, when estimated, is represented with the notation
.
The central idea for the design criterion in E
PF is to find
that minimizes
for any
,
, and
. The underlying concept brings the idea of a worst-case scenario; in other words, it is assumed that the nature of the system acts adversely in this estimation method, so it is necessary to find
,
, and
to maximize
[
3,
8]. This extremization problem commonly uses a cost function, where it is more convenient to put the terms
,
, and
in the denominator, represented by [
3]:
where
is the number associated with the filtering range, and
. The notation
is the standard representation of the weighted
norm of
, i.e.,
. The expressions
,
,
, and
are the weighting matrices and, by definition, are symmetric positive matrices associated with the respective problem.
For the robust filter, the direct minimization of
in Equation (
7) is not commonly done; the strategy is to use a performance limit redefining the cost function of the problem to find an estimate
, which results in [
1,
3]
where
is the performance bound. Thus, rearranging the Equation (
7) with this limiting factor results in
The
problem is given by the representation:
since
,
,
and defining
. Thus, Equations (
9) and (
10) can be rewritten as
where
According to [
25], an optimal H
filter is to find an estimate
that minimizes
J, under the condition
. Since the analytical solution is by no means trivial, a suboptimal iterative algorithm is usually used to solve the optimal filter problem H
. In this way, we define a borderline value of performance coefficient
, which meets
since
is the infinity-norm of
J and sup is the supremum of a set [
26].
3.1. Sample
Assuming a system composed of a process model and measurement model, both of which are nonlinear as shown in Equation (
1), the method starts by randomly generating a considerable number
N of state vectors, called particles or sample states, which will be associated with the initial probability density function (pdf) represented by
[
3,
27]. These particles or sample states are represented as
. This start is similar to a PF.
3.2. Prediction Step
The particles must be propagated at every step
, which must be done using the process dynamics equation
.
where the
is called a noise vector, which is randomly generated using the well known pdf of
as seed.
3.3. Update Step
Once all measurements are obtained in time
k, the conditional relative probabilities, also known as likelihood, of each particle
must be calculated by pdf
, which is obtained intrinsically by contributing the measurement model
and the noise measurements
, represented by [
3,
19,
20,
27].
where
is the measurement residues, and the term that weights the residues
is the associated covariance matrix.
As a standard procedure, one should always normalize likelihood obtained by Equation (
15) as follows:
in which it will be guaranteed that the sum of all likelihoods will be unitary.
The update of the covariance matrix and the state vector in this method is done using the extended H
filter measurement update equations presented below.
where
and
are positive matrices defined with full rank; the process and measurement Jacobians are represented by
and
; the performance coefficient
has a borderline value that must satisfy the Riccati inequality represented by Equation (
21), i.e., the optimized value of
will be guaranteed to be a local minimum of the problem’s cost function [
3,
8,
25]:
where Equation (
21) must be positive definite.
Finally, the optimal state estimate and the associated error covariance matrix are calculated as:
A cycle in the E
PF is completed with this logic. In summary, Equations (
13)–(
23) represent the steps used to obtain the a posteriori moments
k from the a priori information
at a given instant of time. However, some important information about the E
PF is listed here:
The E
PF proposed here uses
N particles with different values analyzing a possible sample impoverishment, a common problem for PF under the same conditions [
3,
20]. The idea is to analyze the processing time and the accuracy of the method.
The weighting matrices
,
, and
in E
PF are designed as definite positive symmetric matrices and do not necessarily need to be diagonal, but the weighting matrices
and
in EKF need to be configured as diagonals [
3].
Using the same weighting matrices and , it is observed that EPF has more robust results compared to EKF. According to the theory, the EHPF assumes that the process noise and measurement are both unmodeled, and , respectively, and the initial condition will be chosen to maximize the cost function of the problem, i.e., considering the worst case scenario for the estimation process.
For an
filter, the threshold value of performance bound
controls the unfavorable conditions of the method. According to [
4], in the error estimation of the method, when the restricted projected parameter
is reduced, the robustness characteristic of the filter is found. When the parameter
assumes large values tending to infinity, the
filter has similar results to the standard Kalman filter.
4. Application and Results
The CBERS is a project for the development of remote sensing satellites administratively coordinated by the Brazilian Space Agency (AEB) and the China National Space Administration (CNSA), involving the scientific execution coordinated by the Brazilian National Institute for Space Research (INPE) and the Chinese Academy of Space Technology (CAST), which implements a world-class remote sensing system used by Brazil in strategic applications such as monitoring water resources, mapping the territory of both countries, and controlling deforestation in the Legal Amazon. In a first stage, the CBERS program started with two satellites, CBERS-1 and 2. With an agreement between Brazil and China, in November 2002, three satellites of the same category were built and launched, CBERS-2B, 3, and 4. In May 2015, a protocol for the development and launch of the CBERS 04A [
28] was signed, and, more recently, in April 2023, an agreement was signed with the Chinese government to deepen scientific cooperation and collaborate on the development of the new CBERS-6 satellite. This satellite will have a new technology called synthetic aperture radar (SAR), which will increase and improve the monitoring of the Brazilian territory and biomes.
4.1. Parameters
The CBERS-4 satellite used in this research, the fifth satellite of the CBERS program, was launched on 7 December 2014 in a heliosynchronous and frozen orbit (see
Figure 1). This configuration can provide global coverage: with low resolution cameras every 5 days, with medium resolution cameras every 26 days, and with high resolution cameras every 52 days [
29].
In this work, in order to estimate the gyros bias and attitude, simulated orbit and attitude data from CBERS-4 were used, making use of the PROPAT propagator implemented in MatLab software. The PROPAT functions perform coordinate transformations, time and ephemeris conversion, orbital propagation, attitude transformations in various parameterizations, and attitude propagation [
11]. The initial orbit and attitude conditions can be found in detail in [
20]. In this article, the scope of the problem is expanded using a robust estimation method. This is supported by a series of additional simulations, including method comparison.
Table 1 presents CBERS-4 orbital parameters used for orbit simulation.
Table 2 presents the simulation data for the sampling rate
; the observation time span
T; the quaternions initial state
and the gyros bias initial state
that compose the initial state vector
; the quaternions variance
and the gyros bias variance
that compose the initial covariance matrix
; and
, the user-specific performance bound for E
PF exclusively.
For CBERS-4, the telemetry data from the sensors arrives at the onboard computer in a fixed binary word length that translates into floating point values. The data sampling rates of the sensors are different and come asynchronously: 2 Hz for gyroscopes, 1 Hz for IRES-s, and 0.25 Hz for DSS-s. These telemetries recorded on board are downlinked and made available by the control center. We chose in the simulations to use a common sampling rate for all sensors; we chose gyros sampling rate of 2 Hz or 0.5 s, as shown in
Table 2.
These data are used in all estimation methods of this work. It is important to say that the values of
are typical drifts simulated for the CBERS-4 application. Thus, the initial state vector
and the initial covariance matrix
started in
Table 2 are used in Equations (
24) and (
25) below:
where
means a diagonal matrix.
Table 3 presents the quaternions process noise variance
, the gyros bias process noise variance
, the DSS measurements noise variance
, and the IRES measurements process noise variance
. These variances compose the initial diagonal process noise covariance matrix
and the initial diagonal measurements noise covariance matrix
.
These initial process noise covariance matrix
and the initial measurements noise covariance matrix
are presented in Equations (
26) and (
27) below.
These matrices are used in all estimation methods of this work, and for EPF, the matrices and throughout the simulation, to have the direct estimation of the state vector according to the theory.
4.2. Filter Performance
Two metrics were defined to evaluate filter performance.
4.2.1. Mean Error
The mean error is represented by Equation (
28).
where
Equation (
29) represents the estimation error, the difference between the estimated state and the true state, and has been used to verify the accuracy of each filter’s estimate.
The respective standard deviation of mean error is represented by:
4.2.2. Root Mean Squared Error
The root mean square error is represented by Equation (
31).
These two metrics were calculated for each iteration over a large number M of Monte Carlo simulations. It was employed to obtain the mean error, the standard deviation, and the root mean squared error of the simulation.
4.3. Methodology
The standard PF was implemented using re-sampling in a systematic way to increase particle diversity [
3,
30] with the intention of evaluating and measuring the performance of the proposed E
PF. More details about this estimation method and implementation can be found in [
1,
20,
31]. The mean error, root mean square error (RMSE), and processing time cost of the estimation methods used were analyzed and compared.
In state estimation simulations, the standard PF used and 1000 particles, and the EPF used , and 500 particles (all with the specific performance bound ). However, for the PF, only the results with 500 particles are presented, and for EPF, only the results with 100 particles are presented for the estimation error state. The results with different particles number were used in scenario comparison estimation error and for analyzing the processing time cost.
4.4. Results
The attitude and gyros bias estimation error are presented in
Figure 2a–f. The results were obtained in quaternions and transformed into Euler angles (ZYX sequence using roll
, pitch
, and yaw
angles), for better interpretation.
Figure 2a–c present only the attitude estimation error for the following estimation methods: PF (500 particles) in blue, E
PF (100 particles and
) in red, and the results together with
in yellow and magenta, representing a confidence interval considering the error as a normal probability distribution. In
Figure 2d–f are present only the gyros bias estimation error following the same logic of representation and color code as in
Figure 2a.
It is observed in
Figure 2a–c that the E
PF (100 particles) presents excellent and competitive precision for the attitude estimation error with a mean close to zero with a reduced number of particles compared to the PF, with their results within
standard deviations. For PF (500 particles), the results for attitude errors in roll and yaw extrapolate the reference standard deviation, but the attitude error in pitch visually presents a satisfactory result within the standard deviation considered and with precision superior to E
PF (100 particles and
).
It is noted in
Figure 2d–f that the E
PF (100 particles and
) presents good precision for the gyros bias estimation error with results within
standard deviations. The PF (500 particles) present good results only for the y-axis gyros bias estimation error in the limit of the considered standard deviation; for the x-axis gyros bias estimation error and z-axis gyros bias estimation error, they present results that extrapolate the reference standard deviation.
Figure 2 shows that in the PF process, the estimation error does not decrease with the filter process and eventually converges toward a value outside
. This discrepancy is associated with the number of particles used. Most of the time, for the PF to obtain good results, it is necessary to use a high number of particles, as few particles generate a problem called sample impoverishment.
Monolog graphs (
Figure 3a–f) represent the scenarios that make up the estimation errors between the estimation methods used, facilitating the visualization with the following representation: PF (500 particles) in blue, E
PF (100 particles) in red, E
PF (50 particles) in yellow, and E
PF (10 particles) in purple. All results for the E
PF uses specific performance bound
.
Figure 3a–c show that even with 100 particles, the E
PF achieved a higher attitude determination accuracy in roll and yaw angle when compared to PF (500 particles). The standard PF did not achieve good accuracy even using a considerable number of particles, except for the pitch estimation error.
Comparing
Figure 3d–f at the beginning of the simulation, the PF presents excellent results but it loses precision throughout the simulation. In this way, it is observed that the E
PF with 100 particles reached a higher precision and accuracy for gyros bias estimation error when compared with standard PF.
In general, the E
PF loses efficiency using a reduced number of particles, as can be seen in
Figure 3a–f with 10 and 50 particles. For this attitude estimation application, the E
PF with 100 particles showed, in terms of accuracy, competitive and interesting results.
Table 4 and
Table 5 shows the mean error, standard deviation, minimal error, maximum error shown in
Figure 2a–f, the RMSE, and peak to peak error in the attitude estimation and gyros bias estimation error for the PF (500 particles) and E
PF (100 particles and
).
With the relation results of the estimation error, we found results of the order of
degrees on average (see
Table 5) for the E
PF considered within the design requirements for pointing error [
29].
Table 6 presents the comparative information on data processing time for an Intel
Core
i7 processor with a maximum frequency of 4.10 GHz for the estimation methods used. In summary, PF (500 particles) has a data processing time for state estimation
times greater than E
PF (100 particles).
5. Conclusions
The E
PF based on the
filter is premised on minimizing the worst possible effects and conditions of disturbance signals associated with measurement noise through signal estimation error without a priori knowledge of these perturbations. The non-Gaussian uncertainties that appear in the process model are contained in the gyro’s measurements, which present noise and bias due to post-launch sensor misalignment, thermal expansion, fading, electro-mechanical degradation, etc. All these factors cause inaccuracies in the model and deteriorate the attitude estimation process. The E
PF proved to be effective for estimating attitude and showed greater accuracy when compared with the standard PF and results from previous studies using different estimation methods [
1,
16,
17,
20].
In summary, it is concluded that the EPF algorithm implemented in this work presented an excellent and competitive precision for estimating attitude and gyros bias; the estimation error results are within a proposed confidence interval considering the error with a normalized Gaussian distribution. For EPF with coefficient of performance and with only 100 particles, it presents a low data processing time, times less than the standard PF with 500 particles. This represents an alternative to be used in embedded space systems. Both estimation methods converge without known sample impoverishment even using a reduced sample number, especially for EPF, with robust and fast results, providing a kinematic attitude solution in addition to estimating the gyroscope bias with specified accuracy for the attitude determination control system (ADCS) according to the project requirements.
Other results that could be presented would be evaluating the variation of performance threshold values
as presented in [
4] in order to verify the robustness of the E
PF method, as already stated and theoretically validated. Reduced values of the performance coefficient
would lead to the characteristic robustness of the filter. If the value of performance coefficient
approaches infinity, the E
PF would have results similar to the standard Kalman filter.
In future work, the research group intends to apply the attitude estimation method to other satellites such as the Amazônia I, from the National Institute for Space Research (INPE-Brasil); and in a cubesats scenario as for AlfaCrux [
32] and SPLASH project—the Self-DePloyable FLexible AeroSHell for de-Orbiting and Space Re-entry [
33]. Applications in other aerospace engineering dynamic systems will also be implemented, such as in-orbit estimation using GPS data and in aerodynamic coefficient estimation for unmanned aerial vehicles (UAV), for example. This application will analyze the precision, computational processing time cost, and feasibility to embedded systems.