# An Extended Kalman Filter-Based Attitude Tracking Algorithm for Star Sensors

^{*}

## Abstract

**:**

## 1. Introduction

## 2. Algorithm Description

#### 2.1. Tracking Models

- ①
- From EKF the attitude quaternion and its error covariance is extrapolated to the next frame in EKF. The expected attitude is used to access onboard partition table and star catalog by spherical polygon approach [1] to determine the centers of the star track windows. Meanwhile, the error covariance is used to determine the radius of the track windows.
- ②
- Get the stars to be measured [10] and evaluated in the track windows of star image. If there is only one star in a reference star’s neighborhood, the star in star image is matched with the star in reference star image. Further, the match can be checked by the inter-star angles between the reference stars and the observed stars.
- ③
- The coordinates of the matched stars in the observation star image are used as the measurements for EKF to estimate the optimal attitude quaternion of current frame and the angular velocity.

#### 2.2. EKF Based Attitude Estimation

_{k}. Formally,

**H**

_{k}is determined as:

**H**

_{k}is a 2n-by-7 matrix where n is the number of matched stars. For each matched star, the partial derivative of each coordinate needs to be computed:

**r**are given below:

**r**with respect to each state variable can be calculated:

**R**with respect to each rotational quaternion variable are:

#### 2.3. Star Catalog Partition

- ①
- The celestial sphere can be divided into twenty equivalent zones by an inscribed icosahedron which is shown in Figure 4a. A pyramid is formed by connecting the center of the celestial sphere with the three vertices on one face of the icosahedron. The pyramids divide the celestial sphere totally into twenty equivalent zones.
- ②
- Each of twenty regions is divided into several congruent equilateral triangles. As shown in the Figure 4b, each edge is divided into N + 1 segments, and each region is divided into ${\left(\mathrm{N}+1\right)}^{2}$ triangles.
- ③
- When projected on the sphere, the vertices of these smaller triangles become the $\mathrm{n}=10{\mathrm{N}}^{2}+20\mathrm{N}+12$ centers of sub-catalogs that completely cover the sphere, called sub-catalog centers. Each star in the catalog is then assigned to the sub-catalog of closest vertex. The sub-catalog centers number is computed as follows:$$\mathrm{n}=12+30\times \mathrm{N}+20\times \mathrm{N}\times (\mathrm{N}-1)/2$$

#### 2.4. Initial Angular Velocity Estimation

#### 2.5. Track Window Radius Determination

## 3. Simulation and Experiment

#### 3.1. Simulation

^{−}

^{9}, 1 × 10

^{−}

^{9}, 1 × 10

^{−}

^{9}, 1 × 10

^{−}

^{9}, 1 × 10

^{−6}, 1 × 10

^{−6}, 1 × 10

^{−6}}, while the off-diagonal terms are zero. The star measurement accuracy is determined by the star signal-to-noise ratio (SNR). The higher the SNR is, the more accuracy a star sensor can achieve. The measurement noise is a Gaussian with a standard deviation ranging from 0.04 to 0.18 pixel [18]. Since the noise for the points is independent with respect to x and y as well as each other, the measurement error covariance matrix is a straightforward diagonal matrix whose diagonal elements are the noise variances while the off-diagonal terms are zero. The simulated sample interval is 0.1 s.

^{−}

^{5}, 2.3 × 10

^{−}

^{5}, 1.3 × 10

^{−}

^{4}rad/s respectively. The accuracy along the boresight of the star sensor (z-axis) is less than the accuracy cross the boresight (x- and y-axis), which is an inherent characteristic of a star sensor. The ratio of the uncertainty along the boresight to the uncertainty cross the boresight spans from 7 to 90 [20]. As can be seen, the estimates track the state variables reasonably well.

#### 3.2. Night Sky Experiments

#### 3.3. Comparison and Analysis

## 4. Conclusions

## Acknowledgments

## Author Contributions

## Conflicts of Interest

## References

- Malak, A.; Samaan, D.M.; Junkins, J.L. Recursive Mode Star Identification Algorithms. IEEE Trans. Aerosp. Electron. Syst.
**2005**, 41, 1–7. [Google Scholar] - Benjamin, B.; Spratling, I.V.; Mortari, D. A Survey on Star Identification Algorithms. Algorithms
**2009**, 2, 93–107. [Google Scholar] - Li, B.; Zhang, Y.; Li, H.; Wang, C. A star tracking algorithm suitable for star sensor. Proc. SPIE
**2007**. [Google Scholar] [CrossRef] - Jiang, J.; Zhang, G.J.; Wei, X.; Li, X. Rapid star tracking algorithm for star sensor. IEEE Aerosp. Electron. Syst. Mag.
**2009**, 24, 23–33. [Google Scholar] [CrossRef] - Shuster, M.D.; Oh, S.D. Three-axis attitude determination from vector observations. J. Guid. Control Dyn.
**2012**, 4, 70–77. [Google Scholar] [CrossRef] - Mortari, D. Second Estimator of the Optimal Quaternion. J. Guid. Control Dyn.
**2000**, 23, 885–888. [Google Scholar] [CrossRef] - Yu, W.; Jiang, J.; Zhang, G. Star tracking method based on multiexposure imaging for intensified star trackers. Appl. Opt.
**2017**, 56, 5961–5971. [Google Scholar] [CrossRef] - Sun, T.; Xing, F.; Wang, X.; Li, J.; Wei, M.; You, Z. Effective star tracking method based on optical flow analysis for star trackers. Appl. Opt.
**2016**, 55, 10335–10340. [Google Scholar] [CrossRef] [PubMed] - Welch, G.; Bishop, G. An Introduction to the Kalman Filter; University of North Carolina at Chapel Hill: Chapel Hill, NC, USA, July 1995. [Google Scholar]
- Liebe, C.C. Accuracy performance of star trackers-a tutorial. IEEE Trans. Aerosp. Electron. Syst.
**2002**, 38, 587–599. [Google Scholar] [CrossRef] - Markley, F.L. Parameterization of the Attitude, Spacecraft Attitude Determination and Control; D. Reidel Publishing Co.: Dordrecht, The Netherlands, 1978; pp. 410–420. [Google Scholar]
- Chou, J.C.K. Quaternion kinematic and dynamic differential equations. IEEE Trans. Robot. Autom.
**1992**, 8, 53–64. [Google Scholar] [CrossRef] - Kreyszig, E. Advanced Engineering Mathematics; John Wiley and Sons: New York, NY, USA, 1983. [Google Scholar]
- Brogan, W.L. Modern Control Theory; Prentice-Hall: Englewood Cliffs, NJ, USA, 1982. [Google Scholar]
- Active Pixel Sensor ASTRO APS. Available online: http://www.jena-optronik.de/en/aocs/astro-aps.html?file=tl_files/pdf/Data%20Sheet%20ASTRO%20APS.pdf (accessed on 17 August 2017).
- AA-STR APS Based Autonomous Star Tracker. Available online: http://www.leonardocompany.com/documents/63265270/65635102/Copia+di+A_STR_Autonomous_Star_Trackers_LQ_mm07786_.pdf?download_file (accessed on 17 August 2017).
- Michaels, D.; Speed, J. New Ball Aerospace star tracker achieves high tracking accuracy for a moving star field. Proc. SPIE
**2004**, 5430, 43–52. [Google Scholar] - Blarre, L.; Perrimon, N.; Airey, S. New multiple head star sensor (HYDRA) description and development status: A highly autonomous, accurate and very robust system to pave the way for gyro-less very accurate AOCS systems. In Proceedings of the AIAA Guidance, Navigation, and Control Conference and Exhibit, San Francisco, CA, USA, 15–18 August 2005; pp. 1–9. [Google Scholar]
- Li, J.; Wei, X.; Zhang, G. Iterative algorithm for autonomous star identification. IEEE Trans. Aerosp. Electron. Syst.
**2015**, 51, 536–547. [Google Scholar] [CrossRef] - Abreu, R. Stellar attitude determination accuracy with multiple-star-tracking advanced star tracker. Space Guid. Control Track.
**1993**, 1949, 216–227. [Google Scholar] - Bar-Shalom, Y. Tracking and Data Association; Academic Press Professional, Inc.: Cambridge, MA, USA, 1987. [Google Scholar]

**Figure 4.**Star catalog partition model. (

**a**) The celestial sphere is divided into twenty equivalent zones by an inscribed icosahedron. (

**b**) Each of twenty regions is divided into several congruent equilateral triangles.

**Figure 5.**Necessary condition for stars to enter the FOV. The dark gray area represents sub-catalog, and the light gray area represents FOV.

**Figure 11.**Root mean square estimation error and square root of the error covariance from the Kalman filter for attitude estimation.

**Figure 12.**Root mean square estimation error and square root of the error covariance from the Kalman filter for angular velocity estimation.

**Figure 13.**Star sensor used for the night sky experiments. (

**a**) Our own star sensor. (

**b**) Night sky experiments.

Parameter | Description |
---|---|

$\varphi $ | The state transition function |

$\mathsf{\Phi}$ | The linear term of the Taylor series expansion of the state transition function |

$\mathrm{Q}$ | The process noise covariance matrix |

$\mathrm{P}$ | The state error covariance matrix |

$\mathrm{K}$ | The extended Kalman filter gain |

$\mathrm{h}$ | The measurement function |

$\mathrm{H}$ | The linear term of the Taylor series expansion of the measurement function |

$\mathrm{R}$ | The measurement noise covariance matrix |

Element Index | Subcatalog Center Direction | Subcatalog Start Address in Guide Catalog | Subcatalog Length | Maximum Angle between the Guide Stars in the Subcatalog and the Center (Degree) |
---|---|---|---|---|

1 | (−0.99244712, 0.06449312, 0.10435207) | 1 | 17 | 8.00 |

2 | (−0.99244712, −0.06449312, −0.10435207) | 18 | 9 | 6.37 |

… | … | … | … | … |

n | (0.99244712, −0.06449312, −0.10435207) | 4324 | 15 | 7.46 |

Quaternion | Angular Velocity | |
---|---|---|

True Initial State | (0.54680, 0.15199, −0.06565, 0.82073) | (−0.03, 0.04, −0.02) rad/s |

Initial State Estimate | (0.54679, 0.15199, −0.06566, 0.82074) | (−0.03115, 0.04046, −0.02086) rad/s |

Error Covariance | (6 × 10^{−7}, 1 × 10^{−8}, 3 × 10^{−8}, 3 × 10^{−7}) | (8 × 10^{−4}, 8 × 10^{−4}, 8 × 10^{−4}) (rad/s)^{2} |

Process Noise | (1 × 10^{−9}, 1 × 10^{−9}, 1 × 10^{−9}, 1 × 10^{−9}) | (1 × 10^{−6}, 1 × 10^{−6}, 1 × 10^{−6}) (rad/s)^{2} |

Parameter | Value |
---|---|

Initial attitude | (0.24383, −0.44028, 0.29841, −0.81095) |

Angular velocity | (0, 0.03491, 0) rad/s |

Focal length | 44.27 mm |

FOV | 14.5 degrees |

Pixel array | 2048 × 2048 |

© 2017 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 (CC BY) license (http://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Li, J.; Wei, X.; Zhang, G.
An Extended Kalman Filter-Based Attitude Tracking Algorithm for Star Sensors. *Sensors* **2017**, *17*, 1921.
https://doi.org/10.3390/s17081921

**AMA Style**

Li J, Wei X, Zhang G.
An Extended Kalman Filter-Based Attitude Tracking Algorithm for Star Sensors. *Sensors*. 2017; 17(8):1921.
https://doi.org/10.3390/s17081921

**Chicago/Turabian Style**

Li, Jian, Xinguo Wei, and Guangjun Zhang.
2017. "An Extended Kalman Filter-Based Attitude Tracking Algorithm for Star Sensors" *Sensors* 17, no. 8: 1921.
https://doi.org/10.3390/s17081921