Table of Contents Author Guidelines Submit a Manuscript
Mathematical Problems in Engineering
Volume 2012, Article ID 578719, 16 pages
Research Article

Dual-EKF-Based Real-Time Celestial Navigation for Lunar Rover

1Department of Information Science and Electronic Engineering, Zhejiang University, Hangzhou 310027, China
2Zhejiang Provincial Key Laboratory of Information Network Technology, Hangzhou 310027, China
3The Department of Electrical, Computer, Software, and Systems Engineering, Embry-Riddle Aeronautical University, Daytona Beach, FL 32114, USA
4School of Information Science and Technology, East China Normal University, Shanghai 200241, China

Received 27 December 2011; Accepted 14 February 2012

Academic Editor: Carlo Cattani

Copyright © 2012 Li Xie et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


A key requirement of lunar rover autonomous navigation is to acquire state information accurately in real-time during its motion and set up a gradual parameter-based nonlinear kinematics model for the rover. In this paper, we propose a dual-extended-Kalman-filter- (dual-EKF-) based real-time celestial navigation (RCN) method. The proposed method considers the rover position and velocity on the lunar surface as the system parameters and establishes a constant velocity (CV) model. In addition, the attitude quaternion is considered as the system state, and the quaternion differential equation is established as the state equation, which incorporates the output of angular rate gyroscope. Therefore, the measurement equation can be established with sun direction vector from the sun sensor and speed observation from the speedometer. The gyro continuous output ensures the algorithm real-time operation. Finally, we use the dual-EKF method to solve the system equations. Simulation results show that the proposed method can acquire the rover position and heading information in real time and greatly improve the navigation accuracy. Our method overcomes the disadvantage of the cumulative error in inertial navigation.

1. Introduction

In order to conduct scientific exploration on the lunar surface, lunar rover must have the ability to execute tasks in unstructured environment. Its navigation system must have a high degree of autonomy and the capabilities of high-accuracy real-time positioning and orientation. On lunar surface, some commonly used navigation methods on the earth are not applicable. There is no GPS system on the moon. If we use radio navigation, the rover control may fail because of the two-way communication delay. The moon rotation is very slow, so we cannot use north seeking gyro. Also, lunar magnetic field is very weak, so magnetic sensor-based methods are ineffective.

Lunar rover navigation techniques mainly include absolute positioning and relative positioning. For absolute positioning, such as autonomous celestial navigation [1], position and heading errors are bounded and do not accumulate over time, and the output is discrete. The initial positioning is generally absolute positioning, and its accuracy directly affects relative positioning accuracy. Relative positioning, such as inertial navigation, achieves high accuracy of position and heading in short time, but the errors accumulate over time (which may lead to divergence), and the output is continuous. The current trend for lunar rover navigation is integrated navigation, which combines the advantages of celestial navigation and inertial navigation.

The earliest researchers [24] carried out celestial navigation by the altitude difference method through observing the sun, earth, and fixed stars. Kuroda et al. [5] utilized celestial navigation and dead-reckoning-based integrated navigation method to obtain lunar rover’s absolute position and heading, which is achieved by observing the altitude and azimuth of the sun and the earth. However, on the moon, the time period during which the sun and the earth appear simultaneously is very short. Therefore, the application of this method is limited. Altitude difference method is very sensitive to measurement noise, and positioning accuracy [6] is low. Vision-based navigation is often used in robotics (Chen 2012, see [7, 8]), but it has difficulty in determining the absolute location and attitude.

Recent researchers use vector-observations-based quaternion estimation (QUEST) to get the rover heading angle [912]. Ashitey proposed an absolute heading detection method for the field integrated, design and operation (FIDO) rover [9]. When stopped, it uses sun sensor and accelerometer to sense the sun orientation and the local gravity orientation, supply absolute heading for rover with QUEST, and correct the gyroscope cumulative error. Ali described that the US Mars rovers (the “Hope” and the “Spirit”) utilized this method to self-correct the heading information [10]. Some recent technologies used in robotics can be found in the works of Chen et al. [13]. Methods in Chinese literature are similar to the method by Ashitey and they also calculate the heading through QUEST [11, 12]. Thein analyzed the relationship between lunar rover positioning accuracy and astronomical instrument measurement noise [14]. If we want to limit the position error within 50 m, measurement noise should be less than 5.93 arcsec.

The above celestial navigation methods (except [5]) do not combine celestial positioning with orientation and cannot get the absolute heading and location information in real time. Ning established a position and attitude determination method based on celestial observations [15], but its reference frame is moon fixed coordinate system rather than local level coordinate system, and it does not consider the impact of the position and speed changes on the gyro angular rate output. Ning proposed a lunar rover kinematics model-based augmented unscented particle filter (ASUPF) as a new autonomous celestial navigation method for dealing with systematic errors and measurement noise [16]. However, the altitude angle measurements in this method are based on the local level provided by the inertial measurement unit (IMU), assuming the rover is keeping static or in constant motion. When the rover is moving, it needs the support of attitude update algorithm in inertial navigation, because the gyro accumulates error and the local level precision is low. Pei proposed a strapdown inertial navigation and celestial-navigation-based integrated method for lunar rovers [17].

Since lunar rover position change on the lunar surface is very slow, in order to reduce the dimension of the system, we can set position as a gradual system parameter to estimate the rover state, that is, heading and attitude. To correct the position of the lunar rover, the velocity observation is introduced. Meanwhile, in order to obtain real-time navigation output, the output of the gyro is needed in integrated navigation. In this paper, a method of real-time celestial navigation is proposed, in which positioning and orientation are simultaneous. Also, the error bounded sun sensor output and high accuracy rate gyro output are fused, which ensures the navigation output to be both real-time and of higher accuracy when the rover is moving. Because there is no accelerometer in the system, the impact of the accelerometer error and gravity anomaly on navigation is avoided.

The organization of the paper is as follows. Section 1 describes the principles of celestial navigation and attitude quaternion kinematics. Section 2 describes the dual EKF-based real-time celestial navigation method. Section 3 presents the results of computer simulations and compares the accuracy of the results obtained with and without velocity observation. Section 4 presents conclusions and discussions.

2. Celestial Navigation Principle and Attitude Kinematics

2.1. Principle of Celestial Navigation

Set the selenocenter celestial coordinate system as the inertial coordinate system (i), the moon fixed coordinate system as , geographic coordinate system (NED) as , the lunar rover body coordinate system as , the local level coordinate system as l, and the sun sensor coordinate system as . After installation, the sensor coordinate systems and coincide with each other.

Celestial navigation system can detect the rover geographical position and heading provided that the local gravity datum (level posture) is known. The outputs are lunar rover position (latitude and longitude) on the moon and the attitude, including the heading, pitch, and roll. State vector of the system is used to describe the lunar rover position and heading information, in which is the lunar rover longitude and astronomical latitude and is just heading relative to North Pole of the moon.

In Figure 1, the moon fixed coordinate system, after rotating (east longitude is positive) around the axis, becomes coordinate system . After further rotating by (north latitude is positive) around the axis, the navigation coordinate is obtained. The attitude matrix about the latitude and longitude is as follows [18]: The attitude matrix about the navigation coordinate system and the lunar body coordinate system is: Here, is the heading, is the pitch angle, and is the roll. To prevent the risk of rollover, lunar rover pitch and roll should between . The attitude matrix about the moon fixed coordinate system and the local level coordinate system is (called target matrix here). Substituting into the above formula, we get the following equation:

Figure 1: Moon-fixed () and navigation () coordinate system.
2.2. Quaternion Attitude Kinematics

Attitude can be expressed in several mathematical parameters: quaternion, attitude matrix, Euler angles, Rodrigues parameters, and so on. The attitude matrix contains a total of nine parameters, but because it is orthogonal matrix, only three components are independent. One of the most useful parameters is the attitude quaternion, which is a four-dimensional vector, defined as , where and . Here, is the rotation axis and is the rotation angle. When using a four-dimensional vector to describe the three-dimensional rotation, the four parameters of quaternion are not independent, and they are subject to the constraint . The relationship between the attitude matrix and the quaternion from the inertial coordinate system to the body coordinate system iswhere Here is the cross-product matrix, defined as . One advantage of using quaternion is that the attitude matrix is quadratic equation of the parameter and thus does not include any transcendental function. For small angles, the vector part of the quaternion is approximately half of the rotation angle, and therefore , , where the 3-dimensional vector includes roll, pitch, and heading. Therefore, the attitude matrix can be approximated as , which is effective in the first-order approximation.

The attitude kinematics equation is Here, is the angular velocity of the frame relative to frame expressed in coordinates. The quaternion differential equation is where

The main advantage of using the quaternion is that the kinematics equation is linear and there is no singularity. Another advantage is that continuous rotation of coordinate frames can be expressed as the quaternion multiplication. Suppose a continuous rotation can be expressed as

The composition of the quaternion is bilinear, with and the inverse quaternion is defined by . Note that is the identity quaternion.

3. Dual-EKF-Based RCPO Method

Assume the state vector of the navigation system is , the system parameter vector is , and the observation vector is . According to the problem, a continuous-discrete nonlinear state space model can be derived: where are implicit vector functions, is the continuous process noise, and is the discrete measurement noise. In the state vector , is the heading and attitude quaternion in the navigation frame (w) for the lunar rover and is the constant bias for gyro. In parameter vector , is the rover position, which is the latitude and longitude; is the north speed and east speed on the lunar surface.

3.1. System Parameter and State Equations

The lunar rover position and velocity equations constitute the system parameter equations: with the parameter vector , the state transition matrix , the parameters process noise , and the noise covariance .

The lunar rover attitude constitutes the system state equations, and the quaternion differential equation is expressed by Here, is the angular velocity of the frame relative to frame expressed in coordinates. The gyro measurement model is Here, is the angular velocity of the frame relative to frame expressed in coordinates. is the constant bias of the gyro, and are zero mean Gaussian white noise processs, and their spectral density functions are and , respectively.

Because the selenocenter celestial coordinate system is the inertial coordinate system here, so Also, is the angular velocity of the frame relative to frame expressed in coordinates In (3.6), is the angular velocity of the frame relative to frame, and the second expression on the right side is the angular velocity of the frame relative to frame. The angular velocity of the frame relative to frame is In (3.7), is the revolution angular velocity of the moon around the earth, is the moon spin velocity, and is the attitude matrix from the inertial reference frame to the moon fixed frame , which can be calculated after querying ephemeris [18].

3.2. Celestial and Speed Observation Equations

The measurement principle of vector observation attitude sensor can be expressed as . If celestial bodies are observable simultaneously, we can get vector pairs, so the measurement equation at time is where

Set , its variance is , where is the diagonal matrix. In this paper, , , where is the sun unit vector in inertial frame and is the sun unit vector in the body frame.

The speed observation equation of the speedometer is where is speed measurement at time , is the measurement noise, and its covariance matrix is .

3.3. Dual Continuous-Discrete EKF

Dual-EKF algorithm uses two mutual coupling extended Kalman filters working in parallel and a state estimator working between the system parameter time update process and the measurement update process [19]. Dual-EKF can estimate the system state and parameter online. Using the above model, a continuous-discrete extended Kalman filter can be derived (Chen 2012, [20]). The process equation about the system parameter is a continuous linear equation, which can be discretized directly. The process equations about the system state are nonlinear equations, and the Jacobian matrix needs to be calculated. Finally, we get the discrete linear state space model (without considering the control input ):

3.3.1. Linearization of State Process Equations

In order to maintain the quaternion normalization constraint, we use the multiplicative error quaternion in the body frame to express the attitude error: where is the inverse of the quaternion estimate and . If the error quaternion is very small, we can use the small angle approximation. After a series of derivation, the linear kinematic model of the attitude error [21] is obtained: where and . Also, is available by the above gyro model, in which . So the above formula becomes

The remaining error equation can be obtained by similar methods. The state vector, the state error vector, and the process noise vector and covariance in this EKF are defined as

The error dynamics of time update in the EKF is . Here, the state transition matrix and the noise coefficient matrix are

3.3.2. Linearization of Measurement Equations

Next we determine the sensitive matrix of the system state observation equation. The true value and the estimate of the celestial bodies vector in the body coordinate system are

According to (2.6),

From (3.16), we have

Note that , so the sensitivity matrix for all measurements is

Next we determine the sensitive matrix of the system parameter observation equation.

The true value and the estimate of the celestial bodies vector in the body coordinate system are

Function is expanded as a Taylor series, which is where .

Finally, we have

Note that . Combined with the speed observations, the sensitivity matrix of all measurements is

3.3.3. Dual-EKF Algorithm

Finally the proposed algorithm of dual-EKF is shown in Table 1.

Table 1: Dual-EKF algorithm.

4. Simulations and Discussions

4.1. Simulation Conditions

Specific simulation parameters are shown in Table 2.

Table 2: Simulation parameters.
4.2. Simulation of Moving Lunar Rover

In this paper, we carried out lunar rover simulation under various moving conditions described in Table 3, and navigation accuracy with and without the speed observation is compared. The lunar rover movement includes rotational and translational movements, where the former can be sensed by the gyro angular velocity and the latter can be measured by the speedometer line speed.

Table 3: Lunar rover motion.

The simulation results of the lunar rover are shown in Figure 2, with the left diagram on each figure representing the simulation result without speed observation and the right diagram representing the simulation result with speed observation.

Figure 2: Position error and boundary.

Figure 2 shows the position error and its boundary, and we see the latitude and longitude errors in the left diagram diverge at last. After the uniform motion error expands, we mainly have the lunar rover speed changes, so the constant velocity (CV) model is no longer applicable. The navigation error in the right diagram is kept within the boundary, and it does not diverge. Because of the speedometer line speeds information, the absolute position of the rover can be adjusted in real time. The mean of the latitude error is , and the standard deviation is ; the mean of longitude error is , and the standard deviation is . Converted into the line error according to the lunar radius, the error is 35.51 m.

Figure 3 shows the speed error and its boundary. The initial velocity is not accurate. In the left diagram, when uniform motion speed changes cannot be sensed any longer, the error shape exhibits phase steps. While the speed observation is available, the navigation system can sense it after the speed change. We see the two speed changes in the lunar rover movement are in zigzag fashions on the speed error figure and then quickly disappear.

Figure 3: The speed error and boundary.

Figure 4 shows the attitude, heading error, and its boundary, but the heading information is of main interest in the navigation. The mean of the heading error in the left diagram is with a standard deviation of . The mean of the heading error in the right diagram is , with a standard deviation of .

Figure 4: Attitude, heading error, and boundary.

Figure 5 shows the constant gyro bias error and its boundary. As can be seen from the graph, the 3-channel constant bias basically converges in the Motion 1 stage, that is, static, and completes the initial alignment of the gyroscope.

Figure 5: The constant gyro bias error and boundary.
4.3. Discussions and Remarks

From the above analysis and simulation, it can be seen that the significance of this work is to combine celestial and inertial sensor data to obtain the attitude and heading information for the real-time navigation of the lunar rover. The simulation results indicate that the dual-EKF method is valid in this field. To obtain better results, the following two properties are worth of being further investigated in the future work on navigation.Computational accuracy: the technology of imaging processing plays a role in the celestial navigation. The performance of noise filtering and feature extraction for the astronomical images will affect the navigation precision directly (Liao et al., see [22, 23]; Yang et al., see [24, 25]). In addition, the nonlinear properties, such as fractals [26, 27], in the astronomical images can affect the navigation effect also.Computational complexity: though the Kalman filter is the most widely used attitude estimation algorithm for navigation and it offers the optimal recursive solution to the nonlinear estimation problem, the implementation efficiency of the recursive Kalman estimator has been an issue. Correlation is a useful technique in the field. Real-time navigation may use it to help in Kalman filtering [28, 29].

5. Discussion and Conclusions

In this paper, a sun-orientation-and-speed-observations-based lunar rover real-time celestial navigation method is proposed, using dual-EKF to estimate system parameters and state. The method treats the position and velocity as system parameters and establishes a position, velocity differential equation. Further, the rover attitude quaternion is treated as the system state, and the quaternion differential equation is established as the state equation. To establish the measurement equation, the sun direction vector is obtained from the sun sensor and the speed observation is obtained from the speedometer. Finally, the rover position and heading information is obtained in real-time through the dual-extended Kalman filter (Dual-EKF). The proposed system does not use accelerometers and thus avoids the acceleration noises. Also, the system uses a high-precision gyro to improve the navigation accuracy.

Simulation results show that the proposed technique is able to obtain the rover navigation information in real time, and it overcomes the two shortcomings of more traditional navigation methods: the discrete output (of pure celestial navigation) and cumulative error (of inertial navigation).


L. Xie and P. Yang were supported by the National Natural Science Foundation of China (NSFC) under Grant no. 60534070, Zhejiang Provincial Program of Science and Technology under Grant no. 2009C33085, Wenzhou Program of Science and Technology under Grant no. S20100029. M. Li would like to acknowledge the support from the 973 plan under the project no. 2011CB302802 and from the National Natural Science Foundation of China under Project Grant no. 61070214 and 60873264.


  1. U. Henning, “A short guide to celestial navigation,” 2006, Germany,
  2. E. Krotkov, M. Hebert, M. Bufa et al., “Stereo driving and position estimation for autonomous planetary rovers,” in Proceedings of the IARP Workshop on Robotics in Space, Montreal, Canada, 1994.
  3. R. Volpe, “Mars rover navigation results using sun sensor heading determination,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robot and Systems, pp. 460–467, Kyongju, Korea, 1999.
  4. P. M. Benjamin, Celestial Navigation on the Surface of Mars, Naval Academy, Annapolis, Md, USA, 2001.
  5. Y. Kuroda, T. Kurosawa, A. Tsuchiya, and T. Kubota, “Accurate localization in combination with planet observation and dead reckoning for lunar rover,” in Proceedings of the IEEE International Conference on Robotics and Automation (ICRA '04), pp. 2092–2097, New Orleans, La, USA, May 2004. View at Scopus
  6. J. C. Fang, X. L. Ning, and Y. L. Tian, Spacecraft Autonomous Celestial Navigation Principles and Methods, National Defense Industry Press, Beijing, China, 2006.
  7. S. Y. Chen, Y. F. Li, and J. W. Zhang, “Vision processing for realtime 3D data acquisition based on coded structured light,” IEEE Transactions on Image Processing, vol. 17, no. 2, pp. 167–176, 2008. View at Publisher · View at Google Scholar · View at Scopus
  8. S. Y. Chen, Y. H. Wang, and C. Cattani, “Key issues in modeling of complex 3D structures from video sequences,” Mathematical Problems in Engineering, vol. 2012, Article ID 856523, 17 pages, 2012. View at Publisher · View at Google Scholar
  9. A. Trebi-Ollennu, T. Huntsberger, Y. Cheng, E. T. Baumgartner, B. Kennedy, and P. Schenker, “Design and analysis of a sun sensor for planetary rover absolute heading detection,” IEEE Transactions on Robotics and Automation, vol. 17, no. 6, pp. 939–947, 2001. View at Publisher · View at Google Scholar · View at Scopus
  10. K. S. Ali, C. A. Vanelli, J. J. Biesiadecki et al., “Attitude and position estimation on the Mars exploration rovers,” in Proceedings of the IEEE Systems, Man and Cybernetics Society, International Conference on Systems, pp. 20–27, The Big Island, Hawaii, USA, October 2005. View at Scopus
  11. F. Z. Yue, P. Y. Cui, H. T. Cui, and H. H. Ju, “Algorithm research on lunar rover autonomous heading detection,” Acta Aeronautica et Astronautica Sinica, vol. 27, no. 3, pp. 501–504, 2006 (Chinese). View at Google Scholar · View at Scopus
  12. F. Z. Yue, P. Y. Cui, H. T. Cui, and H. H. Ju, “Earth sensor and accelerometer based autonomous heading detection algorithm research of lunar rover,” Journal of Astronautics, vol. 26, no. 5, pp. 553–557, 2005 (Chinese). View at Google Scholar · View at Scopus
  13. S. Y. Chen, Y. F. Li, and M. K. Ngai, “Active vision in robotic systems: a survey of recent developments,” The International Journal of Robotics Research, vol. 30, no. 11, pp. 1343–1377, 2011. View at Publisher · View at Google Scholar
  14. M. W. L. Thein, D. A. Quinn, and D. C. Folta, “Celestial navigation (CelNav): lunar surface navigation,” in Proceedings of the AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Honolulu, Hawaii, USA, August 2008. View at Scopus
  15. X. L. Ning and J. C. Fang, “Position and pose estimation by celestial observation for lunar rovers,” Journal of Beijing University of Aeronautics and Astronautics, vol. 32, no. 7, pp. 756–759, 2006 (Chinese). View at Google Scholar · View at Scopus
  16. X. L. Ning and J. C. Fang, “A new autonomous celestial navigation method for the lunar rover,” Robotics and Autonomous Systems, vol. 57, no. 1, pp. 48–54, 2009. View at Publisher · View at Google Scholar · View at Scopus
  17. F. J. Pei, H. H. Ju, and P. Y. Cui, “A long-range autonomous navigation method for lunar rovers,” High Technology Letters, vol. 19, no. 10, pp. 1072–1077, 2009 (Chinese). View at Publisher · View at Google Scholar · View at Scopus
  18. X. N. Xi, Lunar Probe Orbit Design, National Defense Industry, Beijing, China, 2001.
  19. E. A. Wan and A. T. Nelson, “Dual extended kalman filter methods,” in Kalman Filtering and Neural Networks, John Wiley & Sons, New York, NY, USA, 2001. View at Google Scholar
  20. S. Y. Chen, “Kalman filter for robot vision: a survey,” IEEE Transactions on Industrial Electronics, vol. 59, no. 99, 2012. View at Publisher · View at Google Scholar
  21. S. G. Kim, J. L. Crassidis, Y. Cheng, A. M. Fosbury, and J. L. Junkins, “Kalman filtering for relative spacecraft attitude and position estimation,” in Proceedings of the AIAA Guidance, Navigation, and Control Conference, pp. 2518–2535, San Francisco, Calif, USA, August 2005. View at Scopus
  22. Z. W. Liao, S. X. Hu, D. Sun, and W. Chen, “Enclosed laplacian operator of nonlinear anisotropic diffusion to preserve singularities and delete isolated points in image smoothing,” Mathematical Problems in Engineering, vol. 2011, Article ID 749456, 15 pages, 2011. View at Publisher · View at Google Scholar · View at Scopus
  23. Z. W. Liao, S. X. Hu, M. Li et al., “Noise estimation for single-slice sinogram of low-dose x-ray computed tomography using homogenous patch,” Mathematical Problems in Engineering, vol. 2012, Article ID 696212, 16 pages, 2012. View at Publisher · View at Google Scholar
  24. J. W. Yang, Z. Chen, W. S. Chen, and Y. Chen, “Robust affine invariant descriptors,” Mathematical Problems in Engineering, vol. 2011, Article ID 185303, 2011. View at Publisher · View at Google Scholar · View at Scopus
  25. J. W. Yang, M. Li, Z. Chen et al., “Cutting affine invariant moments,” Mathematical Problems in Engineering. In press. View at Publisher · View at Google Scholar
  26. M. Li, “Fractal time series—a tutorial review,” Mathematical Problems in Engineering, vol. 2010, Article ID 157264, 26 pages, 2010. View at Publisher · View at Google Scholar · View at Scopus
  27. C. Cattani, “Fractals and hidden symmetries in DNA,” Mathematical Problems in Engineering, vol. 2010, Article ID 507056, 31 pages, 2010. View at Publisher · View at Google Scholar · View at Scopus
  28. L. Gottschalk, E. Leblois, and J. O. Skøien, “Correlation and covariance of runoff revisited,” Journal of Hydrology, vol. 398, no. 1-2, pp. 76–90, 2011. View at Publisher · View at Google Scholar · View at Scopus
  29. E. Pardo-Igúzquiza, K. V. Mardia, and M. Chica-Olmo, “MLMATERN: a computer program for maximum likelihood inference with the spatial Maérn covariance model,” Computers and Geosciences, vol. 35, no. 6, pp. 1139–1150, 2009. View at Publisher · View at Google Scholar · View at Scopus