Improved Planetary Rover Inertial Navigation and Wheel Odometry Performance through Periodic Use of Zero-Type Constraints

by   Cagri Kilic, et al.
West Virginia University

We present an approach to enhance wheeled planetary rover dead-reckoning localization performance by leveraging the use of zero-type constraint equations in the navigation filter. Without external aiding, inertial navigation solutions inherently exhibit cubic error growth. Furthermore, for planetary rovers that are traversing diverse types of terrain, wheel odometry is often unreliable for use in localization, due to wheel slippage. For current Mars rovers, computer vision-based approaches are generally used whenever there is a high possibility of positioning error; however, these strategies require additional computational power, energy resources, and significantly slow down the rover traverse speed. To this end, we propose a navigation approach that compensates for the high likelihood of odometry errors by providing a reliable navigation solution that leverages non-holonomic vehicle constraints as well as state-aware pseudo-measurements (e.g., zero velocity and zero angular rate) updates during periodic stops. By using this, computationally expensive visual-based corrections could be performed less often. Experimental tests that compare against GPS-based localization are used to demonstrate the accuracy of the proposed approach. The source code, post-processing scripts, and example datasets associated with the paper are published in a public repository.



There are no comments yet.


page 2

page 3

page 6


WM-INS: A Wheel Mounted IMU Based Integrated Navigation System for Wheeled Robots

Microelectromechanical systems (MEMS) based inertial navigation systems ...

Slip-Based Autonomous ZUPT through Gaussian Process to Improve Planetary Rover Localization

The zero-velocity update (ZUPT) algorithm provides valuable state inform...

Resource-aware Online Parameter Adaptation for Computationally-constrained Visual-Inertial Navigation Systems

In this paper, a computational resources-aware parameter adaptation meth...

Experimental Comparison of Visual and Single-Receiver GPS Odometry

Mobile robots rely on odometry to navigate through areas where localizat...

Inertial Odometry on Handheld Smartphones

Building a complete inertial navigation system using the limited quality...

LSTM-Based Zero-Velocity Detection for Robust Inertial Navigation

We present a method to improve the accuracy of a zero-velocity-aided ine...

Efficient Attitude Estimators: A Tutorial and Survey

Inertial sensors based on micro-electromechanical systems (MEMS) technol...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

The Mars Sample Return (MSR) mission was identified as the highest priority planetary science objective in the Planetary Science Decadal Survey [1]. To meet the requirement of the sample return missions, a mobile rover should be able to traverse the terrain safely, quickly, and autonomously to reach its desired targets. In particular, highly accurate real-time localization performance is one of the most demanding abilities for autonomous driving [2], which is especially challenging for planetary rovers with limited energy resources and computational power due to radiation hardened hardware requirements.

Previous Mars rovers have exhibited large onboard localization errors and have had to rely primarily on human-in-the-loop operations [2]. The Mars Exploration Rovers (MERs) and Mars Science Laboratory (MSL) use a similar approach for localization. When moving, the rover’s attitude angles are propagated through the integration of angular-rate measurements [3]

. When the rover is stopped, the rover’s pitch and roll angles are estimated based on the gravity vector which is measured using tri-axial accelerometers

[3]. Rover position is estimated from wheel encoder-based odometry and inertial measurement unit (IMU) integration [4]. Stereo vision-based visual odometry (VO) [5]

is also used whenever a high probability of wheel slippage is anticipated. Due to limited onboard computational resources, to refine rover position estimates, incremental bundle adjustment is performed on Earth by post-processing downlinked images

[6] .

Wheel slippage is one of the most critical issues to be dealt with for mobile robots driving across loose soil [7]. For example, MERs both became embedded into the soft surface of Mars [8, 9],due to the significant amount of slip. In May 2009, Spirit became permanently entrapped in soft soil [10]. Moreover, Curiosity had to stop to avoid sinking because of severe wheel slippage [11].

One of the most common techniques for estimating rover slip is based on VO [7] [12]. Although VO is an accurate source of information for slip estimation, it is computationally expensive. For instance, each step required 2–3 min of computation time on the MER’s 20-MHz CPU [4]. Although MSL’s 200-MHz CPU has reduced the onboard processing time to under 40 seconds per step [13] [14], the other limitation of VO arises on low-feature terrains (e.g., sand dunes, shadowed areas). A low number of detected and tracked features can lead to poor accuracy of motion estimate [15].

For the proposed future MSR mission [16], the rover may be required to traverse up to 20 km from the lander to the cached samples and back to its landing area in less than 99 sols. This required traversal rate is much faster than Curiosity, which has traveled 19.75 km in 6 years [17] and Opportunity that had traversed 45.16 km in 15 years [18] on Mars before the Planet-Encircling Dust Event. It is possible that the MSR rover will need travel up to 1 km per day to the cached sample, which is well beyond the capability for the current daily operations planning. This increased rover autonomy requirement, in turn, requires more accurate and computationally efficient on-board rover localization capabilities.

Zero-type updates (i.e., zero velocity and zero angular rate) are widely used to aid inertial pedestrian navigation[19, 20, 21]. Observability characteristics of zero-type updates on a land vehicle is also detailed in [22]. Zero velocity detection and application in standard road conditions is shown in [23]. Similarly, the method in [24] demonstrates decreased growth in state errors for a land vehicle when stationary updates are used; e.g., stopping at traffic light.

Fig. 1: This figure presents a graphical depiction of the proposed navigation system when all the algorithm components are utilized. Within the proposed algorithm, the IMU observations are used to propagate the current state estimate. Wheel odometry observations in conjunction with non-holonomic constraints are leveraged to reduce the unbounded error growth of the un-aided inertial navigation system. The zero-type updates can be triggered by an error observer or manual stops.

NASA’s Mars rovers move slowly (e.g., MSL has 0.04 m/s top speed on flat hard ground [25]), stop often, and are also equipped with high quality LN-200S IMUs [26]. These facts point to the potential that rover localization performance stands to be improved by leveraging zero-type updates for the Curiosity rover as well as the future Mars 2020 and MSR rovers without any hardware changes or significant changes in rover operations.

Ii Methodology

The architecture of the proposed approach is given in Fig.1. The proposed approach offers the following contributions: 1) it is demonstrated that zero-type updates, which simply require stopping, can significantly reduce the rate of inertial navigation error growth for wheeled rovers, 2) we show that wheel slip can be detected as velocity discrepancies between wheel odometry measurements and inertial navigation system (INS) solution, and 3) to show the benefit of the proposed approach, we present experimental tests in which dead-reckoning localization estimates are compared to a differential GPS (DGPS) reference solution. As a final contribution, we also make our software, which is designed for use under ROS[27], and presented datasets publicly available.

To improve inertial navigation and provide uncertainty bounds, an error-state extended Kalman filter (EKF) is implemented based on the method detailed in

[28]. In this formulation, a planet-centered, planet-fixed frame is used as the reference frame, while a locally-level-navigation frame (NED) comprises the resolving axes. In the filter, wheel odometry based wheel velocities and heading rate calculations are treated as an aiding sensor for the INS. In addition, zero-type updates and non-holonomic motion constraints are utilized as additional pseudo-measurement updates whenever they are available. Slip is estimated by using a threshold on the difference between the estimated INS solution and estimated wheel odometry velocity vectors. In this paper, navigation stops are triggered with a manual stopping frequency. Finally, during each navigation stop, backward smoothing to the previous navigation stop is used to further refine state estimates.

Ii-a State Updates

The navigation filter implementation is composed of an attitude update, a velocity update, and a position update. We briefly summarize the integration equations here for completeness. Detailed descriptions can be found in [28]. The attitude update is given as


where is the coordinate transformation matrix from the body frame to the locally level frame,

is a 3-by-3 identity matrix,

is the skew symmetric matrix of the IMU angular rate measurement,

is the skew symmetric matrix of the planet’s rotation vector represented in the locally level frame, is the transport term, and is the IMU sampling interval.

Assuming that the variations of the acceleration due to gravity, Coriolis, and transport rate terms are all negligible over the integration interval, the velocity update is given as,


where is the velocity update, is the specific force measurements from the IMU acceleration sensors, is the gravity vector.

Finally, assuming the velocity variation is linear over the integration interval, the position update is given as


where , and are updated position estimates (expressed in terms of height, latitude, and longitude, respectively), is the variation of the meridian, and is transverse radii of curvature.

Ii-B Error State Model

To calculate the INS system matrix, the Jacobian of the error-state equations is determined. After defining the time derivatives of the error-state equations, the system matrix and the state transition matrix (STM) are defined. Then, the errors are transformed into the local navigation frame, and the time derivative of the velocity error is constructed by adding the transport rate term. The error state vector is constructed in a local navigation frame,


where, is the attitude error, is the velocity error, is the position error, is the IMU acceleration bias, and is the IMU gyroscope bias. The position error is expressed in terms of the latitude, longitude, and height, respectively.


The interested reader is referred to [28] for a detailed derivation of the INS error-state model adopted in this work.

Ii-C Non-Holonomic Constraints

A rover is a non-holonomic system if its number of controllable degrees of freedom is less than its total degrees of freedom. A skid-steer rover, such as a Clearpath Robotics Husky

[29], is subject to two motion constraints if the rover is not experiencing side slip and motion normal to the road surface: 1) the velocity of the vehicle is zero along the rotation axis of any of its wheels, and 2) velocity is also zero in the direction perpendicular to the traversal surface [30]. Due to frame rotations, zero vertical and lateral velocity do not mean that acceleration on these directions are zero.

Following the similar process as in [28], it is assumed that the error-state vector is defined by (6) and the total state vector is


The rover velocity constraints can be applied as a pseudo-measurement update, assuming that the axes of the rear-wheel frame are aligned with the body frame. This measurement update may be expressed as


where is body to rear wheel lever arm, and is angular rate measurement. Then, corresponding measurement matrix may be approximated as


where is lateral constraint part. and is the vertical part of the measurement matrix.


Although the non-holonomic constraint measurement update is performed whenever the navigation solution is updated, note that the excessive sideslip invalidates the lateral velocity constraint and this adds extra biases to velocity solution. While turning, the heading rate of the rover can be observed and if it exceeds a threshold, the lateral velocity constraint measurement can be omitted.

Ii-D Zero Type Updates

During stationary conditions, IMU sensor outputs are governed by the planet’s rotation and sensor errors. Since the rover is often stationary during the mission, zero-type updates can be leveraged to maintain the INS alignment. To properly use these updates, stationary conditions must be detected accurately. Otherwise, the rover’s state yields incorrect updates leading to poor navigation performance [24]

. To detect stationary conditions, we used two different indicators, wheel odometry velocity, and the standard deviation of the IMU measurements, which assumes that the rover typically experiences less vibration whenever it is stationary.

Zero-type updates bound the velocity error and calibrate IMU sensor noises[31]. Therefore, the measurement innovation for zero-type update can be given as


where is measurement innovation matrix, is estimated velocity vector, and estimated gyro bias. The measurement matrix is given


It is also important to note that zero-type updates do not provide any position information; however, because the error-state model properly accounts for the correlation between the velocity and position errors in the off-diagonal elements of the error covariance matrix, the cubic error growth of INS positioning is reduced to linear growth [32]. This enables zero-type updates to not only limit the error growth and help determine biases to reduce future error growth, but also to mitigate most of the position drift since the last navigation stop.

Ii-E Wheel Odometry Update

The wheel odometry outputs, wheel forward speed and heading rate, are averaged over the odometry measurement sampling interval. Heading rate is calculated by differencing the average linear velocity values of left and right wheels. It is also assumed that the axes of the rear and front wheel frames are aligned with the body frame.

In our implementation, we adopt a similar procedure as described in [30] and [28] to aid the sensors with an additional vertical velocity constraint as


where ,, and are predicted longitudinal, lateral and vertical rear wheel speed, respectively. The subscript denotes the estimated INS solution, and denotes the wheel odometry measurements. The measurement matrix is





is a 9-by-9 zero matrix,

and are 3-by-3 matrices, and are 1-by-3 row vectors. Note that the coordinate transformation matrix in is from the body to the inertial navigation frame.

Ii-F Slip Detection

Skid steer vehicles rely on differing left and right wheel velocity directions to turn the vehicle. Due to redundant points of contact (i.e., two wheels driven by the same drive-train on each side), slippage is often expected when turning motion is performed[33]. Since the IMU measurements are independent of the wheel odometry, the motion estimates from the EKF can be compared to the computed velocity based on the vehicle kinematics to determine if any statistically significant slippage has occurred. In order to detect the anomalies in velocity, the residuals between wheel odometry measurements and the EKF solution are computed using the Mahalanobis distance and compared against a threshold. Post-fit residuals from the wheel odometry update are used to calculate the Mahalanobis distance as given in (18)


where is the predicted covariance matrix. An empirical threshold on the Mahalanobis distance, , is used to specify whether the velocity anomaly is occurred or not.

The slippage is also monitored with the slip ratio calculation for front and rear wheels with respect to the INS velocity solution. The slip ratio, , is checked to specify if the slip is significant (i.e., ) along with the Mahalanobis distance value at the same time-step. We define the slip ratio, i, as follows:


where is the translational velocity estimated from INS, is the wheel radius, and is the wheel angular velocity estimated from the wheel odometry measurements.

Ii-G Backward Smoothing

To smooth out the estimated state along the traversed path between zero-type updates, we used the Rauch-Tung-Striebel (RTS) backward recursive method [34], which utilizes all the available state information and goes backward in time.

A backward smoothing algorithm can be summarized as


where is the smoothing gain, and are smoothed state vector and error covariance, respectively. Although zero-type updates correct most of the drift when the rover is stopped, the rover’s position solution still drifts while driving. To utilize the backward smoothing algorithm, the estimated states, state transition matrix, and error covariance between zero-type updates are stored in memory. The smoothing algorithm starts from the current navigation stop and goes back to the most recent previous navigation stop. This further mitigates the solution drift between stopping.

After smoothing between stops, the forward filter continues to provide a real-time available state estimate until the next navigation stop. In this scenario, for an error analysis, it is not simple to present the solution that would be available for real-time over a complete trajectory that includes multiple navigational stops. Therefore, in the presented experimental evaluation, solutions that only include the forward filtering mode are shown, so that the impact of smoothing can be assessed.

Iii Experimental Results

For experimental evaluation, a reference solution was determined using integer-ambiguity-fixed carrier-phase DGPS. This set-up consisted of two dual-frequency Novatel OEM-615 GPS receivers [35] and Pinwheel antennas [36], with one set mounted on a static base station and another affixed on top of the test rover platform. During the experiments, 10 Hz raw GPS pseudorange and carrier-phase measurements were recorded on both receivers, and the reference position solutions were then post-processed using the open source software library, RTKLIB 2.4.2 [37]. Post-processed ambiguity-fixed carrier-phase DGPS is expected to provide centimeter-to-decimeter level accuracy [38].

The IMU incorporated on the rover is an ADIS 16495 [39]. This IMU reports to have an in-run bias and angular random walk values are , for the gyroscopes, and a bias-stability and velocity random walk of 3.2 and 0.008 m/sec/ for the accelerometers, respectively. For wheel odometry readings, the ClearPath Robotics Husky’s quadrature encoders with 78,000 pulses/m resolution are used.

Several test runs on different terrain types i.e., concrete, grass, gravel, and sand as shown in Fig.2, were performed on the West Virginia University campus.

Fig. 2: Traversed terrain types to test the developed navigation approach.

To demonstrate the proposed navigation approach, two different scenarios are detailed: 1) “Concrete-Turn”, the rover follows a flat, L-Shaped concrete path. 2) “Rough-Terrain”, the rover traverses a longer path on non-flat, muddy, and grassy terrain with embedded rocks. For both scenarios, navigation stops were periodically commanded. The total distance traversed, Average Driving Time between Stops (ADTS), the number of performed stops, and the total driving time are listed in Table I. The rover has 0.4 m/s commanded velocity while driving in both scenarios.

Additional test scenarios, which are not included in this paper for the sake of brevity, can be found in the public repository associated with this paper.

To assess the relative benefit of each aspect of the approach, many of the update type solution combinations are performed for both test runs. The positioning error values with respect to each of the update combinations are given for each scenario in Tables II, and III, where RMS denotes root mean square, STD denotes standard deviation of the horizontal error, and Max. is the worst case horizontal distance error that rover encounters during each test.

Scenario Type Distance ADTS Stops Driving Time
Concrete-Turn 34m 12s 7 85s
Rough-Terrain 151m 9s 42 406s
TABLE I: Details of Performed Scenarios
Estimation Horizontal Error (m) RMS Error (m)
I O Z N B * Median STD Max. East North Up
I 518.44 494.77 1606.2 783.75 64.75 153.07
I+O 23.73 12.59 34.26 21.80 10.08 7.07
I+O+N 23.69 11.89 32.34 20.57 10.57 7.84
I+O+N+B 23.75 12.25 33.30 21.18 10.45 7.57
I+Z 2.86 6.42 31.09 7.38 4.28 4.46
I+Z+B 0.60 1.58 31.62 1.23 1.46 1.68
I+Z+N 0.58 1.19 8.54 1.28 0.81 0.81
I+Z+N+B 0.63 1.13 7.69 1.28 0.74 0.95
I+Z+O 0.68 0.31 1.33 0.67 0.31 0.67
I+Z+B+O 0.66 0.31 1.33 0.66 0.31 0.69
I+Z+N+O 0.49 0.25 1.20 0.43 0.36 0.71
I+Z+N+B+O 0.48 0.25 1.21 0.43 0.36 0.73
  • I:INS, O:Odometry, Z:Zero-Type, N:Non-Holonomic, B:Backward

TABLE II: Position Error for Concrete-Turn Scenario
Estimation Horizontal Error (m) RMS Error (m)
I O Z N B * Median STD Max. East North Up
I 14253. 20742. 68676. 29200. 6045. 11334.
I+O 21.31 18.69 63.90 23.37 17.45 18.07
I+O+N 30.68 16.30 56.53 29.23 16.94 11.65
I+O+N+B 30.84 16.35 55.71 28.92 17.06 11.97
I+Z 1.77 3.13 31.40 4.02 1.09 2.19
I+Z+B 1.55 1.23 29.75 2.06 0.96 0.86
I+Z+N 0.93 0.99 4.08 1.46 0.73 0.92
I+Z+N+B 1.59 1.07 4.01 1.79 1.09 0.58
I+Z+O 1.36 1.29 4.28 2.16 0.29 1.18
I+Z+B+O 1.21 1.28 4.29 2.13 0.32 0.90
I+Z+N+O 0.47 0.90 2.86 1.25 0.27 1.04
I+Z+N+B+O 0.54 0.93 2.89 1.28 0.41 0.80
  • The same estimation types are used as in Table II.

TABLE III: Position Error for Rough-Terrain Scenario

Without using zero-type updates, the rover navigation performance is inadequate due to the accumulated error of the INS integration and the wheel slippage. Wheel odometry helps to reduce drift along with non-holonomic constraints within the INS solution; however, if the zero-type updates are applied, most of the accumulated error is mitigated as explained in Section II-D. After the application of zero-type updates, non-holonomic constraints further enhance the solution. Note that, in this formulation, backward smoothing is shown to be most effective only if non-holonomic constraints aren’t applied. This could be useful for a holonomic rover.

To better visualize the effects of the zero-type updates, the estimation of the north error for Concrete-Turn case is given in Fig. 3. As shown in this figure, when the rover stops, the zero-type updates quickly reduce the growth of the position error and also correct most of the position drift.

Fig. 3: North error estimate without odometry aiding for Concrete-Turn case. Black line is GPS solution, red line is north position estimate, and gray region is covariance hull. Filter estimation exceeds the covariance bounds while turning with wheel slips. However, zero-type update reduces the cubic error growth to linear for positioning and correct most of the position drift when the rover stops as explained in Section II-D.
Fig. 4: Ground track view of the “Concrete-Turn” scenario. The top subplot shows the position estimation when only the zero-type update is applied which corrects the drifted position when the rover stops. The middle subplot demonstrates the position result when non-holonomic constraint updates are used along with zero-type updates, which corrects the lateral drifts while driving, but gives poor results while turning. The bottom figure is the result of the combination of the non-holonomic, zero-type, and wheel odometry solutions. The slip ratio, is checked to specify if the slip is significant (i.e., ) along with the Mahalanobis distance value at the same time-step. The heading rate is corrected during turning motion by fusing the wheel odometry measurements with INS solution along with the non-holonomic update.

To test the capabilities of the algorithm while turning, the rover was exposed to a high rate of heading change after a forward drive on a flat concrete surface. Moreover, the rover was purposefully exposed to slippage by commanding an instantaneous maximum velocity (0.4 m/s) and braking after and before zero-type updates. This is evident when velocity anomaly detection and zero-type updates overlap as shown in Fig.


Fig. 5: North (top) and east (bottom) error position estimates for Rough-Terrain case. Black line is the GPS solution, red line is the position estimate, and the gray region is the covariance hull. Position is estimated by using all of the proposed measurement updates.
Fig. 6: 3D view of the rover traversal for Rough-Terrain in Latitude, Longitude, Height (LLH) coordinates. The GPS solution and filter estimation are drawn on USGS Digital Elevation Model (DEM) data of the traversed region. The 3D position error at the end amounts to less than 1.5% of the traveled distance.

Although non-holonomic constraints handle most of the lateral motion drift, when the rover heading rate is significant (e.g., it exceeds 0.1 rad/s), lateral velocity constraint measurement updates become less reliable. However, when using wheel-odometry estimated heading rate measurements along with non-holonomic constraints to update the INS solution, less drift in position estimates is noticeable both when driving and when turning. This improvement is illustrated in Fig. 4.

Since the terrain of the “Concrete-Turn” scenario is mostly easy to traverse and less prone to vibration, we also performed another test run on a harsh, non-flat, and diverse terrain. In the “Rough-Terrain” case, the rover traversed a longer path. The estimated east and north position estimation with 3 error covariances are given in Fig.5. A 3D view of the positioning estimation when using all of the proposed updates is given in Fig. 6.

Iv Conclusions

This work presents several approaches for enhancing the accuracy of wheeled planetary rover navigation. When using all of the presented update strategies together, the proposed approach was demonstrated to significantly reduce the rate of the rover navigation error growth. In addition, we showed that slippage can be detected by using a threshold on the velocity residuals and the slip ratio estimate. The primary value of this approach is that it can be used within current and future planetary rovers, as well as many other wheeled robots that frequently stops, to improve onboard localization performance without any hardware changes or major alterations in operations.

The software developed for this paper, which is designed for use under ROS, and the datasets used for experimental validation have been made publicly available at:

Future developments of this work will include the extension of the proposed algorithm to autonomously initiating the navigation stops. Additionally, we are investigating ways to improve the backward smoothing for reprocessing the estimated navigation solution to mitigate the error that comes from slipped wheel odometry updates between zero-type updates and methods to improve the navigation solution by using onboard terrain classification techniques.


  • [1] S. S. Board, N. R. Council et al., Vision and voyages for planetary science in the decade 2013-2022.   National Academies Press, 2012.
  • [2] R. Li, B. A. Archinal, R. E. Arvidson, J. Bell, P. Christensen, L. Crumpler, D. J. Des Marais, K. Di, T. Duxbury, M. Golombek et al., “Spirit rover localization and topographic mapping at the landing site of gusev crater, mars,” Journal of Geophysical Research: Planets, vol. 111, no. E2, 2006.
  • [3] K. S. Ali, C. A. Vanelli, J. J. Biesiadecki, M. W. Maimone, Y. Cheng, A. M. San Martin, and J. W. Alexander, “Attitude and position estimation on the mars exploration rovers,” in Systems, Man and Cybernetics, 2005 IEEE International Conference on, vol. 1.   IEEE, 2005, pp. 20–27.
  • [4] Y. Cheng, M. W. Maimone, and L. Matthies, “Visual odometry on the mars exploration rovers,” IEEE Robotics and Automation magazine, vol. 13, no. 2, p. 54, 2006.
  • [5] L. Matthies, M. Maimone, A. Johnson, Y. Cheng, R. Willson, C. Villalpando, S. Goldberg, A. Huertas, A. Stein, and A. Angelova, “Computer vision on mars,” International Journal of Computer Vision, vol. 75, no. 1, pp. 67–92, 2007.
  • [6] K. Di, J. Wang, S. He, B. Wu, W. Chen, R. Li, L. Matthies, and A. Howard, “Towards autonomous mars rover localization: Operations in 2003 mer mission and new developments for future missions,” International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, vol. 37, no. B1, pp. 957–962, 2008.
  • [7] G. Reina, G. Ishigami, K. Nagatani, and K. Yoshida, “Odometry correction using visual slip angle estimation for planetary exploration rovers,” Advanced Robotics, vol. 24, no. 3, pp. 359–385, 2010.
  • [8] M. Maimone, J. Biesiadecki, E. Tunstel, Y. Cheng, and C. Leger, “Surface navigation and mobility intelligence on the mars exploration rovers,” Intelligence for Space Robotics, pp. 45–69, 2006.
  • [9] R. E. Arvidson, J. F. Bell III, P. Bellutta, N. A. Cabrol, J. Catalano, J. Cohen, L. S. Crumpler, D. Des Marais, T. Estlin, W. Farrand et al., “Spirit mars rover mission: Overview and selected results from the northern home plate winter haven to the side of scamander crater,” Journal of Geophysical Research: Planets, vol. 115, no. E7, 2010.
  • [10] C. T. Leslie, “Electrical and computer architecture of an autonomous mars sample return rover prototype,” Ph.D. dissertation, University of Alabama, 2016.
  • [11]

    L. Xue, Z. Dang, B. Chen, J. Li, and M. Zou, “Pressure-bearing parameter identification for martian soil based on a terramechanics model and genetic algorithm,”

    Journal of Aerospace Engineering, vol. 31, no. 2, p. 04017104, 2017.
  • [12] A. E. Johnson, S. B. Goldberg, Y. Cheng, and L. H. Matthies, “Robust and efficient stereo feature tracking for visual odometry,” in Robotics and Automation, 2008. ICRA 2008. IEEE International Conference on.   IEEE, 2008, pp. 39–46.
  • [13] M. Maimone, “Curiouser and curiouser: Surface robotic technology driving mars rover curiositys exploration of gale crater,” in Robotics and Automation Workshop: on Planetary Rovers (ICRA Workshop), 2013 IEEE International Conference on. IEEE, 2013.
  • [14] M. Maimone, Y. Cheng, and L. Matthies, “Two years of visual odometry on the mars exploration rovers,” Journal of Field Robotics, vol. 24, no. 3, pp. 169–186, 2007.
  • [15] R. Gonzalez and K. Iagnemma, “Slippage estimation and compensation for planetary exploration rovers. state of the art and future challenges,” Journal of Field Robotics, vol. 35, no. 4, pp. 564–577, 2018.
  • [16] E. Klein, E. Nilsen, A. Nicholas, C. Whetsel, J. Parrish, R. Mattingly, and L. May, “The mobile mav concept for mars sample return,” in Aerospace Conference, 2014 IEEE.   IEEE, 2014, pp. 1–9.
  • [17] “National Aeronautics and Space Administration, Curiosity’s Traverse Map Through Sol 2166 ,” (Date last accessed 15-September-2018). [Online]. Available:
  • [18] “National Aeronautics and Space Administration, Opportunity Updates,” (Date last accessed 16-January-2019). [Online]. Available:
  • [19] E. Foxlin, “Pedestrian tracking with shoe-mounted inertial sensors,” IEEE Computer graphics and applications, no. 6, pp. 38–46, 2005.
  • [20] B. Wagstaff, V. Peretroukhin, and J. Kelly, “Improving foot-mounted inertial navigation through real-time motion classification,” in 2017 International Conference on Indoor Positioning and Indoor Navigation (IPIN).   IEEE, 2017, pp. 1–8.
  • [21] A. Norrdine, Z. Kasmi, and J. Blankenbach, “Step detection for zupt-aided inertial pedestrian navigation system using foot-mounted permanent magnet,” IEEE Sensors Journal, vol. 16, no. 17, pp. 6766–6773, 2016.
  • [22] A. Ramanandan, A. Chen, and J. A. Farrell, “Observability analysis of an inertial navigation system with stationary updates,” in Proceedings of the 2011 American Control Conference.   IEEE, 2011, pp. 5292–5299.
  • [23] L. Xiaofang, M. Yuliang, X. Ling, C. Jiabin, and S. Chunlei, “Applications of zero-velocity detector and kalman filter in zero velocity update for inertial navigation system,” in Proceedings of 2014 IEEE Chinese Guidance, Navigation and Control Conference.   IEEE, 2014, pp. 1760–1763.
  • [24] A. Ramanandan, A. Chen, and J. A. Farrell, “Inertial navigation aiding by stationary updates,” IEEE Transactions on Intelligent Transportation Systems, vol. 13, no. 1, pp. 235–248, 2012.
  • [25] “National Aeronautics and Space Administration, Rover - Mars Science Laboratory,” (Date last accessed 18-January-2019). [Online]. Available:
  • [26] J. J. Biesiadecki, P. C. Leger, and M. W. Maimone, “Tradeoffs between directed and autonomous driving on the mars exploration rovers,” The International Journal of Robotics Research, vol. 26, no. 1, pp. 91–104, 2007.
  • [27] M. Quigley, K. Conley, B. Gerkey, J. Faust, T. Foote, J. Leibs, R. Wheeler, and A. Y. Ng, “Ros: an open-source robot operating system,” in ICRA workshop on open source software, vol. 3, no. 3.2.   Kobe, Japan, 2009, p. 5.
  • [28] P. D. Groves, Principles of GNSS, inertial, and multisensor integrated navigation systems.   Artech house, 2013.
  • [29] “Clearpath, Husky, Unmanned Ground Vehicle,” (Date last accessed 11-January-2019). [Online]. Available:
  • [30] G. Dissanayake, S. Sukkarieh, E. Nebot, and H. Durrant-Whyte, “The aiding of a low-cost strapdown inertial measurement unit using vehicle model constraints for land vehicle applications,” IEEE transactions on robotics and automation, vol. 17, no. 5, pp. 731–747, 2001.
  • [31] I. Skog, P. Handel, J.-O. Nilsson, and J. Rantakokko, “Zero-velocity detection—an algorithm evaluation,” IEEE transactions on biomedical engineering, vol. 57, no. 11, pp. 2657–2666, 2010.
  • [32] C. Mather, P. Groves, and M. Carter, “A man motion navigation system using high sensitivity gps, mems imu and auxiliary sensors,” in Proceedings of the 19th international technical meeting of the Satellite Division of the Institute of Navigation (ION GNSS 2006).   INST NAVIGATION, 2006, pp. 2704–2714.
  • [33] B. J. Ebersole, “Skid-steer kinematics for dual-arm mobile manipulator system with dynamic center of gravity,” Ph.D. dissertation, University of Texas at Austin, 2016.
  • [34] A. Gelb, Applied optimal estimation.   MIT press, 1974.
  • [35] OEM615 Receivers Data Sheet, Novatel, 2015, ver.8.
  • [36] Pinwheel L1/L2 Antennas Data Sheet, Novatel, 2015, ver.5.
  • [37] T. Takasu, “Rtklib: Open source program package for rtk-gps,” Proceedings of the FOSS4G, 2009.
  • [38] P. Misra and P. Enge, “Global positioning system: signals, measurements and performance second edition,” Massachusetts: Ganga-Jamuna Press, 2006.
  • [39] ADIS16495 Data Sheet, Analog Devices, 2017, rev. A.