A self-calibration algorithm for satellite sensors based on vector observations

https://doi.org/10.1016/j.ast.2021.106759Get rights and content

Abstract

The advance of space technology allowed small satellites to accomplish missions that were once only possible with big and expensive platforms. The quality and accuracy of small sensors have also improved, leading to a better knowledge of the spacecraft attitude. However, the integration and assembly process of such platforms has constraints that often hinder a high accuracy placement and calibration of the equipment. This translates into the three most common errors in sensor measurements: bias, misalignment, and non-orthogonality. This work proposes a new algorithm designed to estimate and correct those three error sources for any sensor based on vector observations. The algorithm is based on the same principle used by inertial navigation systems with non-inertial information. A propagator computes the attitude based on the gyro readings with the initial estimation provided by the other sensors. Concurrently, a Kalman filter estimates the attitude and sensor errors. After filter convergence, the estimation is used to correct the attitude knowledge. An observability analysis is carried out, showing in which conditions the filter can correctly estimate the error state. Afterward, the proposed technique is tested, employing a Monte Carlo simulation in a validated satellite simulator. The results show that the algorithm can significantly improve attitude estimation accuracy during different satellite operating modes. At last, the filter robustness is assessed by simulating the system with huge errors. This test shows that the filter can converge even in such a challenging scenario, providing excellent accuracy.

Introduction

The recent development of small satellite technology allowed such spacecraft to accomplish missions that were once only delegated to big and expensive platforms. Today, there are examples of CubeSats gathering scientific data [1] and recording Earth images for many applications [2]. This kind of system is only justified if its price can be kept low. If attitude estimation is necessary, a set of Sun sensors and magnetometers is usually employed, since high precision devices such as star trackers are still too expensive [3], [4], [5]. It is also possible to include a low-cost MEMS-based gyro that can maintain the attitude during a small period [3], [4], [5].

The integration process for small satellite sensors and actuators, especially CubeSats, usually does not have the same accuracy as the conventional space missions due to budget and physical constraints. Sometimes this leads to relatively high sensor misalignment and calibration errors [3]. For example, reference [6] mentions that alignment checks for CubeSats are only partially applicable, being required only for those more accurate sensors such as star trackers. Hence, it is paramount to the success of such missions with stringent pointing requirements that those error sources are mitigated through software processing of the measurements [3], [7].

The problem of estimating sensor misalignment and biases has been studied for quite a long time. Reference [8], for example, proposed an algorithm to compute the misalignment between sensors that provide vector measurements, but the performance is reduced if other errors such as bias or non-orthogonality are present. Reference [3] showed the improvements obtained by in-orbit calibration of sensors using ground-processing of the data. References [9], [10], [11], on the other hand, analyzed the problem of estimating the bias, scale-factor, and misalignment but only for magnetometers. Reference [7] provided an in-depth analysis of how Sun sensors and magnetometer measurements can be conditioned using a Kalman filter to estimate the spacecraft attitude accurately but neglected effects such as misalignment and non-orthogonality.

More recently, reference [12] proposed a hybrid approach in which an Unscented Kalman filter (UKF) is used with the TRIAD algorithm to simultaneously estimate the magnetometer errors and the satellite attitude. The estimation scheme was capable of reducing the attitude estimation error down to 0.5° using a magnetometer, a Sun sensor, and a gyro. However, the authors did not consider the misalignment between those sensors, which is often introduced by the integration process and can lead to significant errors [3]. Furthermore, they considered a very accurate Sun sensor to obtain an initial coarse attitude estimation using TRIAD and did not test the performance in different control modes. The latter is important because of the versatility of small satellites. The same platform can be used for different types of missions, requiring good performance for the attitude estimation when the satellite is pointing to Earth, inertial direction, or executing a maneuver.

This work extends the previous ones in the literature by providing a novel algorithm to perform the online, in-orbit calibration of the most common sensor errors added by the assembly and integration process: bias, misalignment, and non-orthogonality. The system is versatile since it calibrates any sensor based on vector measurements, such as Sun sensors and magnetometers, using measurements from a gyro and also provides an estimation of the attitude determination error. The new algorithm, called VASCO (Vector Alignment System for Calibration in-Orbit), uses the same principle as implemented in inertial navigation systems (INS) to correct the estimated attitude using non-inertial sensors [13], [14], [15], [16], [17]. It is essential to mention that the technique proposed here can be applied to any satellite with sensors based on vector measurements. However, the kind of errors we are dealing with is usually introduced by the integration process, and it is more prominent in small satellites when activities such as precise sensor alignment and calibration are difficult or even impossible to perform [3].

The attitude is determined by propagating the gyro measurements with an initial estimation obtained from the other sensor readings. Concurrently, the system error state model, which describes the dynamics of the selected errors, is estimated using a Kalman filter. When the filter converges, the error information is then used to correct the computed attitude. One significant advance over past algorithms is that the system can be linearized since the error dynamics is much slower than the attitude dynamics itself [18]. Thus, it is possible to use a standard Kalman filter, reducing the computational burden so that it can be embarked on the onboard computer, and the algorithm provides good accuracy even during attitude maneuvers. In this case, the linearization errors are reduced by using the updated attitude information to reset the linearization point in specific instants. Another improvement is that an attitude estimation is always available, even if the filter has not converged or during data shortages from the non-inertial sensors [19].

The system observability is analyzed with the assumption of piece-wise constant dynamics [20]. We provide geometrical requirements that, when satisfied, leads to a fully observable state. Under this condition, VASCO can successfully estimate the sensor errors and correct the spacecraft attitude estimation [21].

VASCO performance was numerically tested through a Monte Carlo simulation using a validated satellite simulator designed at the National Institute for Space Research (INPE). In this simulation, we used a gyro, a magnetometer, and a Sun sensor composed of six solar cells, each one positioned in one of the satellite panels, which is the most common configuration for CubeSats [3], [5], [22]. The sensor measurements were corrupted by noise, bias, misalignment, and non-orthogonality when applicable. The statistical results show that it significantly improves the attitude estimation even in scenarios with high sensor errors. We also verified that the additional computational workload required by VASCO considering all the attitude control functions is within the acceptable ranges to be embedded in computers usually found in small satellites.

Finally, the contributions of this work can be summarized as follows: 1) propose a new algorithm to estimate the most common sensor errors generated by the assembly and integration activities of a satellite; 2) analyze the system observability to obtain the necessary conditions that allow the filter to estimate the errors; and 3) verify the algorithm performance using a validated satellite simulator and considering realistic and worst-case scenarios.

Section snippets

Notations and abbreviations

AOCSAttitude and orbit control subsystem
CSSCoarse solar sensor
DCMDirection cosine matrix
GCRFGeocentric celestial reference frame
IGRFInternational geomagnetic reference field
LTDNLocal time at descending node
RMSERoot-mean-square error
ETHControl mode Earth pointing
MANControl mode maneuver
Inn × n identity matrix
0nn × n zero matrix
0n×mn × m zero matrix
[v]×xMatrix representation of the cross product v × x
vaVector v represented in the reference frame a
DbaDCM that rotates the reference frame a into

Algorithm description

We propose an algorithm to estimate the attitude errors and the bias, misalignment, and non-orthogonality of any satellite sensor based on vector measurements when the information about the angular velocity is available from a gyro. The approach is similar to the inertial navigation problem aided by non-inertial sensors [13], [14], [15], [16], [17]. Fig. 1 shows the schematic of the VASCO algorithm.

A propagator computes the coarse satellite attitude estimation using the measurements of a gyro (

Observability analysis

Although some of the cited references mentioned observability issues, to the authors' best knowledge, a theoretical study about the observability of the attitude estimation problem with sensor errors has not been found. Reference [32] also mentioned the lack of study about the observability of this kind of application. The authors in [32] provided an observability analysis of the attitude estimation using Sun sensors and magnetometers when there are uncertainties in the spacecraft inertia.

Simulation and results

VASCO was tested using a validated simulator of the attitude and orbit control subsystem (AOCS) developed at INPE. The simulation scenario consisted of a satellite with a set of Sun sensors, a magnetometer, and a gyro.

The simulated satellite has two distinct operation modes. In the first one, called maneuver or MAN, the satellite attitude and orbit control system (AOCS) periodically changes the angular velocity, as shown in Fig. 5. This mode simulates attitude maneuver that some satellite must

Conclusion

The assembly process of a satellite introduces errors that degrade the attitude estimation performance. For big satellites with large budgets, the thorough integration process reduces such errors. However, for small satellites with a low budget, those activities may be prohibitive due to cost or physical constraints. Thus, those error sources must be estimated by software processing so that this kind of satellite can accomplish missions with stringent pointing requirements.

This work proposes a

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Acknowledgements

W.J.S. Marques thanks to CAPES/MEC (grant 88882.444545/2019-01).

T.A.M. de Carvalho thanks to CAPES/MEC (grant 88882.444549/2019-01).

G.M.C. Hott thanks to CAPES/MEC (grant 88882.444542/2019-01).

References (34)

  • R. Alonso et al.

    TWOSTEP: a fast robust algorithm for attitude-independent magnetometer-bias determination

    J. Astronaut. Sci.

    (2002)
  • R. Alonso et al.

    Complete linear attitude-independent magnetometer calibration

    J. Astronaut. Sci.

    (2002)
  • C. Hajiyev

    In-orbit magnetometer bias and scale factor calibration

    Int. J. Metrol. Qual. Eng.

    (2016)
  • I.Y. Bar-Itzhack

    Corrections to navigation computation in terrestrial strapdown inertial navigation system

    IEEE Trans. Aerosp. Electron. Syst.

    (1978)
  • Y. Bar-Shalom et al.

    Estimation with Applications to Tracking and Navigation

    (2001)
  • J. Waldmann

    Feedforward INS aiding: an investigation of maneuvers for in-flight alignment

    Sba Contr. Autom. Soc. Bras. Automat.

    (2007)
  • R.A.J. Chagas et al.

    Observability analysis for the ins error model with GPS/uncalibrated magnetometer aiding

  • Cited by (6)

    • Global exponential angular velocity estimation of rigid-body spacecraft from quaternion and vector measurements

      2021, Aerospace Science and Technology
      Citation Excerpt :

      Therefore, many researchers [8,13] are interested in a much simpler solution, that is, estimating angular velocity directly from vector measurements, which certainly saves time and numerical efforts, thus more easily to be implemented from an engineering perspective. Another explanation [13,22,23] of such motivation is that static attitude determination methods are more likely to be influenced by measurement noises, and they are not as efficient as dynamic attitude determination methods which invoke the outputs from gyros [24–26]. However, employing attitude determination is often more reliable for space applications because vector measurements may not always be consistent, e.g., the star tracker starts to blur with relative large angular velocity, and sun sensors may not provide correct readings in the eclipse.

    • A New Optimization-Based Attitude Estimator with a Closed form Solution Using Magnetometer and Gyro Data

      2023, Iranian Journal of Science and Technology - Transactions of Mechanical Engineering
    • An optimal calibration method for gyro and star sensor based on observability analysis

      2023, Proceedings of the Institution of Mechanical Engineers, Part G: Journal of Aerospace Engineering
    View full text