Skip to main content
  • Research article
  • Open access
  • Published:

Slip-compensated odometry for tracked vehicle on loose and weak slope


Odometry is widely used to localize wheeled and tracked vehicles because of its simplicity and continuity. Odometric calculations integrate the wheel or track’s rotation speed. The accuracy of position thus calculated, is affected by slippage between the ground and the wheel or track. When traveling on a loose slope, the localization accuracy of the odometry decreases remarkably due to slippage. To improve its accuracy in such environments, terramechanics focus on estimating the interaction between a vehicle and the ground. However, because these formulas are complicated and governed by many terrain-specific parameters, they are difficult to use in unknown environments. In this study, we propose slip estimation methods targeted toward use in unknown environments. We consider four types of slippage, based on the slippage direction and maneuver type. Longitudinal and lateral slippage occurring during straight maneuvering are derived by approximating the terramechanics slip model. In contrast, for turning maneuvers, longitudinal slippage is derived from an empirical equation for the relationship between slip ratio and input velocity, and lateral slippage is obtained from a regression function. We also proposed slip-compensated odometry, which applies the slip model to the kinematics of a skid-steering vehicle. To evaluate the proposed slip model and slip-compensated odometry, we conduct several experiments with a skid-steering tracked vehicle on an indoor sandy slope. Experimental results confirmed that position estimation accuracy was improved by introducing slip-compensated odometry compared to conventional odometry.


Robotic volcano explorations aim at reducing the damage caused by volcanic eruptions, and have recently attracted considerable attention from research community. When a volcano erupts once, disaster may be caused by pyroclastic and debris flows [1]. Volcanic observation, therefore, assumes great importance from the viewpoint of reducing the risk of damage by issuing a warning to nearby inhabitants in the likely event of an eruption. However, the area within a few kilometers of a volcano crater is restricted after an eruption on account of measures taken to prevent secondary disasters, limiting the available information regarding such areas. Although fixed observation systems have been established on some active volcanoes, they are prone to severe damage by the shock caused by an eruption. This has given rise to the need of robotic explorations wherein robots traverse into the concerned area and visually survey the current state of active volcanoes.

Implementation of such robotic explorations requires high terrainability and good localization accuracy on part of the ground vehicles. Tracked vehicles are well suited to operations performed on such difficult terrains as volcanic fields. Accuracy of localization is also an important attribute of mobile robots in terms of not only mapping the target area but also controlling themselves. Odometry is a localization method in which a ground vehicle integrates the velocity of its wheel or track, and which guarantees positional continuity, in contrast with other position estimation methods, such as global navigation satellite systems (GNSS) and visual odometry. However, odometry may generate estimation errors owing to slip when the vehicle travels on an uneven terrain. Tracked vehicles typically employ skid-steering, which enables the right and left tracks to rotate at different speeds to change the vehicle’s orientation. Skid-steering tracked vehicles are, therefore, especially prone to slippage when turning.

To estimate this slippage, several studies have adopted terramechanics- [2,3,4,5] and internal measurement unit (IMU)-based [6,7,8] approaches. The terramechanics-based approach considers the interaction between the wheel or the track and the terrain, with parametric values that are dependent on the terrain and the robot [9, 10]. The interaction represents the force acting on the robot and terrain, and the deformation of the terrain surface. Many soil-specific parameters, such as the pressure-sinkage moduli [10], shear deformation modulus, and soil characteristics [11], are necessary when employing the terramechanics-based approach. Generally, parameter determination requires large-scale experimentation; therefore, this method is mainly used in well-known environments.

Internal measurement unit-based approaches, on the other hand, efficiently utilize inertial information, such as angular velocity and acceleration. Theoretically, velocity and motion can be estimated by integrating only the inertial information. However, large errors in the estimated position occur due to noise, IMU bias, and limited sampling rates. Thus, many researchers employ IMU in combination with sensors-based technologies, such as GNSS, encoders, and cameras [12,13,14]. For example, Endo et al. proposed an empirical formula for estimating the longitudinal slippage derived from the robot’s angular velocity, obtained by IMU, and rotational velocity, measured by the encoder [7]. This method can be applied to a skid-steering tracked vehicle during its rotation on rigid ground. However, this approach only targets longitudinal slippage during rotation on rigid ground and does not consider other slippage, such as the lateral slippage that occurs while moving straightly.

Terramechanics models can correctly represent slippage behaviors, but these models are complex, especially when applied to turning maneuvers. However, the terramechanics-based slip estimation is difficult to use in unknown environments because of the number of terrain-dependent variables. In this paper, a simple slip estimation model for tracked vehicles on weak slopes is proposed to be uesd in combination with the terramechanics- and IMU-based approaches. Slippage occurs in longitudinal and lateral directions, and maneuvers include straight and turning motions. We divide slippage into four types, as described below:

  • Longitudinal slippage during straight maneuvers: Longitudinal slippage is estimated based on the terramechanics force interaction model between the track and the terrain. We propose a simplified slippage model that uses approximation to reduce terrain-dependent parameters.

  • Lateral slippage during straight maneuvers: Lateral slippage is also estimated based on the terramechanics force interaction model between the track and the terrain. We propose an approximation slippage model with one terrain and robot dependent parameter.

  • Longitudinal slippage during turning maneuvers: Skid-steering slippage is a complex phenomenon, and it requires many parameters for estimating the terramechanics-based slippage. As mentioned above, the empirical slip estimation formula [7] was confirmed for rigid flat ground. We verify whether the formula can be applied to loose and weak slopes.

  • Lateral slippage during turning maneuvers: To estimate lateral slippage while a robot is turning, regression analysis has been used along with training data obtained from the environment. The training data include inertial information and robot position.

To apply the slip model to the kinematics of skid-steering vehicles, we propose slip-compensated odometry. In this paper, a slip model and slip-compensated odometry for skid-steering tracked vehicle have been described along with a description of various experiments conducted on loose and weak slope to verify the effectiveness of the proposed model. The experimental results have also been discussed.

Slip-compensated odometry including longitudinal and lateral slippage

This section introduces kinematics of a skid-steering mobile robot, including longitudinal and lateral slippage on a plane. Figure 1 shows a skid-steering tracked vehicle traveling on a flat surface with slippage. When the right and left tracks rotate respectively at \(v_r\) and \(v_l\), the longitudinal and lateral translational velocities \(V_x\) and \(V_y\) in robot coordinate system \(\Sigma _r\) are expressed as follows:

$$\begin{aligned} V_x &= \frac{v_r \left( 1 - \alpha _r \right) + v_l \left( 1 - \alpha _l \right) }{2},\end{aligned}$$
$$\begin{aligned} V_y&= V_x \cdot \tan \beta , \end{aligned}$$

where \(\alpha _r\) and \(\alpha _l\) represent slip ratios correspoding to the two tracks, and \(\beta\) is the slip angle. The slip ratio and slip angle represent the longitudinal and lateral slippage, respectively. The slip ratios of the tracks are defined as follows:

$$\begin{aligned} \alpha _r&= 1- \frac{v_r'}{v_r},\end{aligned}$$
$$\begin{aligned} \alpha _l&= 1- \frac{v_l'}{v_l}, \end{aligned}$$

where \(v_r'\) and \(v_r'\) represent ground velocities, and \(v_r\) and \(v_l\) are input velocities that can be measured by encoders. If the robot runs without longitudinal slippage, the ground velocity equals the input velocity, and the slip ratio is zero. Slip angle \(\beta\) is the angle of deviation between the desired transition direction and the actual direction of motion of the robot. In Fig. 1, \(V_x\) and \(V_y\) are ground velocity components of the robot base. The kinematics of the tracked vehicle in coordinate system Σ can, therefore, be derived as follows:

$$\begin{aligned} \dot{x}&= V_x \cos \theta - V_y \sin \theta , \end{aligned}$$
$$\begin{aligned} \dot{y}&= V_x \sin \theta + V_y \cos \theta , \end{aligned}$$
$$\begin{aligned} \dot{\theta }&= \frac{v_r \left( 1 - \alpha _r \right) - v_l \left( 1 - \alpha _l \right) }{2d}, \end{aligned}$$

where \(\theta\) is the angle of rotation, and 2d is the distance between tracks. Slip-compensated odometry is obtained by integrating from the kinematics expressed in Eqs. 57.

Fig. 1
figure 1

Kinematics of a skid-steering tracked vehicle

Slip model for a skid-steering tracked vehicle

The kinematics defined in Eqs. 57 exploit the slip ratio and slip angle to calculate the longitudinal and lateral translational velocities. In this paper, we introduce four slip model types for estimating the slip ratio and slip angle, as mentioned in “Introduction” section.

For translational maneuvers, an approximated force model that considers resistance from terrain deformation has been introduced. Based on this force model, it is assumed that the resistances acting on each track are equivalent. Therefore, only the slip ratio and slip angle at the robot’s center of gravity need to be considered.

For turning maneuvers, the slip ratio is estimated by a previous method [7] that has been verified on a rigid plane; therefore, we confirmed its applicability on loose and weak slopes. On the other hand, a regression function is employed to estimate the slip angle. The regression function is trained by running data offline to identify the partial coefficients.

Slippage during straight maneuvering

Force model of the robot

In order to estimate slippage during straight maneuvers, the interaction between the tracks and the terrain is accounted for. When a tracked vehicle travels along a straight line on weak ground, the vehicle tends to slip owing to motion resistance, as shown in Fig. 2. Resistance from the ground is mainly comprised of bulldozing and compaction resistances [10]. Bulldozing resistance is the force of pushing over or through the soil in front of the track. Compaction resistance, on the other hand, is the force of compacting the soil, which creates ruts in the terrain after the track has passed. In this research, it is assumed that majority of the soil ahead of the track is compacted, and thus, the bulldozing resistance has not been considered.

Fig. 2
figure 2

Forces acting on the robot during straight motion. a Robot traveling on a weak slope, b side cross-section view between A and A’, c rear cross-section view between B and B’

Compaction resistance is determined by calculating the work done in making a rut. The depth of the rut is called the sinkage, which is caused by the static weight of the robot and dynamic rotational motion of the trackbelt. Here, it is assumed that the robot moves with a low velocity, and the influence of dynamic sinkage on account of trackbelt rotation is small. Therefore, no dynamic sinkage has been considered in this study. The sinkage \(z_0\) and compaction resistance \(R_c\) are expressed as follows [10]:

$$\begin{aligned} z_0&= \root n' \of {\left( \frac{p}{k_c/b + k_\phi } \right) }, \end{aligned}$$
$$\begin{aligned} R_c&= b \int _0^{z_0} p dz, \end{aligned}$$

where \(k_c\), \(k_\phi\), and \(n'\) represent pressure-sinkage moduli of the soil based on the static sinkage model; p is the pressure on the bottom of the track; and b is the track width.

Gravitational force on the robot acts as tractive resistance, as shown in Fig. 2b and c. The longitudinal tractive resistance is parallel to the compaction resistance, whereas the lateral tractive resistance acts normal to the compaction resistance. These resistances are governed by the posture and weight of the robot as the following equation describe.

$$\begin{aligned} R_{t,long}&= (W\cos \theta _{roll}) \cdot \sin \theta _{pitch}, \end{aligned}$$
$$\begin{aligned} R_{t,lat}&= (W\cos \theta _{pitch}) \cdot \sin \theta _{roll}, \end{aligned}$$

Here, \(R_{t,long}\) represents longitudinal tractive resistance, \(R_{t,lat}\) is the lateral tractive resistance, W is weight of the track, and \(\theta _{roll}\) and \(\theta _{pitch}\) are roll and pitch angles of the track, respectively.

Therefore, the total resistance acting on the robot comprises the compaction and tractive resistances as follows:

$$\begin{aligned} R_{long}&= R_c + R_{t,long}, \end{aligned}$$
$$\begin{aligned} R_{lat}&= R_{t,lat}. \end{aligned}$$

The compaction and maximum tractive resistances acting on a climbing robot could be calculated by Eqs. 9 and 10, as shown in Fig. 3. The pressure-sinkage moduli used in this analysis correspond to those of sandy soil, snow, load [10], and lunar simulants with properties similar to volcanic ash [15]. Although tractive resistance increases with the slope angle, the compaction resistance remains largely independent with changes in the slope angle. It is, therefore reasonable to assume that compaction resistance \(R_c\) remains constant on homogeneous terrains.

Fig. 3
figure 3

Resistances acting on the robot climbing a slope

Slip model for straight motion

Longitudinal slippage is expressed as a slip ratio, and lateral slippage is expressed as a slip angle. These slips can be derived using the force model and soil mechanics. To generate driving force, the track receives shear stress from the terrain equivalent to the corresponding driving force, as shown in Fig. 4. The corresponding shear stress \(\tau\) can be expressed with the following equation:

$$\begin{aligned} \tau (x) = \left( c + \frac{W}{bl} \tan \phi \right) \left( 1-e^{\frac{-j(x)}{K}} \right) , \end{aligned}$$

where c is the cohesion stress of the soil; b and l are the width and length of the track, respectively; \(\phi\) is the internal friction angle of the soil; j(x) is the shear displacement; and K is the shear deformation modulus. The adhesive force c represents adhesion between the soil and the track. Shear displacement j(x) is slippage at point x of the track, and can be described using slip ratio \(\alpha\) as follows:

$$\begin{aligned} j(x) = \alpha \cdot x. \end{aligned}$$

The shear deformation modulus K is determined by the slope of the shear stress curve at the origin. The value of K is defined by the interaction mechanics between the track and soil.

Fig. 4
figure 4

Shear displacement under the track

Slip ratio for straight motion

The driving force equals the longitudinal resistance for uniform linear motion; therefore, the driving force is derived to calculate the total shear stress beneath the track area. The equation for the driving force \(F_{drive}\) can be expressed as follows:

$$\begin{aligned} F_{drive}&= b \int ^{l}_{0} \tau (x) dx&\end{aligned}$$
$$\begin{aligned}&= \left( Ac + W\tan \phi \right) \left[ 1- \frac{K}{\alpha _{long} \cdot l} e^{\frac{-\alpha _{long} \cdot l}{K}} \right] ,\end{aligned}$$

where A is the contact area of the track. In a homogenous field, the cohesive stress and internal friction angle do not change; thus, the term on the left in Eq. 17 is constant. The term on the right in Eq. 17 can be expressed simply as a second-order approximation [16]. Under steady driving motion, the driving force and resistance are equivalent, and the slip ratio can be derived as follows:

$$\begin{aligned} F_{drive}&= R_{long}\end{aligned}$$
$$\begin{aligned}&= \left( Ac + W\tan \phi \right) \left[ 1- \frac{K}{\alpha _{long}l} e^{\frac{-\alpha _{long}l}{K}} \right]&\end{aligned}$$
$$\begin{aligned}&= C \cdot \alpha _{long},&\end{aligned}$$
$$\begin{aligned} \therefore \alpha _{long}&= \frac{R_{long}}{C} = \frac{R_c + R_{t,long}}{C}\end{aligned}$$
$$\begin{aligned}& \approx \frac{R_c}{C} + \frac{W}{C} \theta _{pitch}, \end{aligned}$$

where C, which replaces \(\left( \frac{Ac + W\tan \phi }{2K}l \right)\), has a constant value, and \(\alpha _{long}\) represents the slip ratio. If each track is subjected to the same resistance, the equivalent slip ratio \(\alpha _{long} = \alpha _r = \alpha _l\). By the small-angle approximation, the slip ratio is linear to the pitch angle of the robot and it has an intercept by the compaction resistance.

Slip angle during straight motion

The slip angle can be derived using a technique similar to that employed to obtain the slip ratio. The lateral resistance acting on the track is caused only by the weight of the robot (Eq. 13). The lateral slip ratio \(\alpha _y\) can then be written as follows:

$$\begin{aligned} \alpha _y = \frac{R_{lat}}{C'}, \end{aligned}$$

where \(C'\), which replaces \(\left( \frac{Ac + W\tan \phi }{2K'}l \right)\), has a constant value. The lateral transition velocity \(V_y\) in Eq. 2 can also be expressed in terms of the total lateral shear displacement \(j_y\) divided by contact time \(t_y\) as follows:

$$\begin{aligned} V_y = \frac{j_y}{t_y} = \frac{\alpha _y \cdot l}{\frac{l}{V_x}}=\alpha _y V_x, \end{aligned}$$

where \(t_y\) is the time at which a point on the track comes in contact with the terrain.

Finally, the following slip angle is derived from Eqs. 2, 23, and 24 using the small-angle approximation:

$$\begin{aligned} \beta&= \arctan { \left( \frac{V_y}{V_x} \right) } = \arctan { \left( \frac{R_{lat}}{C'} \right) } \end{aligned}$$
$$\begin{aligned} & \approx \frac{W}{C'} \theta _{roll}, \end{aligned}$$

Slippage during turning maneuvers

The previous subsections describe the simplified slip ratio and slip angle models for steady straight motion based on force interactions on a weak terrain. In this section, we introduce a slippage estimation method for a robot rotating on a slope. Turning motions are complex phenomena that can cause longitudinal and lateral slippage. Furthermore, the slippage may differ at various points on the track. For instance, the lateral slippage at the front edge of the track is larger than that at its middle. The force model of turning motions is complex and the accurate prediction of its behavior requires several parameters. Therefore, it is difficult to use the force model for a real unknown field. In this research, we introduce a slippage estimation method based on a non-force model during turning maneuvers.

Slip ratio during turning maneuvers

To estimate the slip ratio during rotation, Endo et al. focused on the relationship between the slip ratio and input velocity of the track, and they proposed the following Eq. [7]:

$$\begin{aligned} \frac{\alpha _l}{\alpha _r} = - sgn \left( v_r \cdot v_l \right) \left( \left| \frac{v_r}{v_l} \right| \right) ^n, \end{aligned}$$

where n is a robot-dependent empirical slip parameter. If the angular velocity can be measured using sensors (i.e., gyroscopes), the angular velocity of the robot is equal to Eq. 7. Therefore, the slip ratio can be obtained from Eqs. 7 and 27. Parameter n is known to be constant on a horizontal solid plane. The applicability of this equation is confirmed in next section.

Slip angle during turning maneuvers

The lateral forces acting on the track during turning motion include not only the weight, as described for straight maneuvers, but also rotation resistance owing to the turning force, because a skid-steering track vehicle should slip to turn. The lateral forces consist of the bulldozing resistance acting on the sides of the tracks, shear resistance that rotates the robot and acts on the bottom of the tracks, and the weight of the robot acting parallel to the slope.

The bulldozing resistance is derived from soil parameters, rotation resistance, and angular displacement and posture of the robot. The shearing resistance is obtained from the rotation radius, angular displacement, and configuration of the robot. If the terrain is homogeneous, the values of variables required to derive the lateral force are obtained as internal information from the robot that can be directly measured by sensors, such as the IMU, and encoder. In this study, we introduce multiple linear regression function to estimate the slip angle, using the robot’s posture, yaw angular velocity, yaw angular displacement, slope angle, input velocity, and angular velocity as explanatory variables. Note that the angular displacement is the angle from the initial orientation of the turning movement. The regression function is defined as follows:

$$\begin{aligned} \beta = \sum \limits _{i=0}^{7} a_i X_i, \end{aligned}$$

where \(\beta\) is the predicted slip angle, \(X_i\) is ith explanatory variable, and \(a_i\) is the ith coefficient of the variable. \(X_0\) takes the value 1 and \(a_0\) is an intercept of the linear regression function. In addition, the slope angle \(\phi _{slope}\) can be derived from the posture of the robot as follows:

$$\begin{aligned} \phi _{slope} = \arccos \left( \cos \theta _{roll} \cdot \cos \theta _{pitch} \right) . \end{aligned}$$

The coefficients are identified using a training dataset to minimize the following squared error:

$$\begin{aligned} R = \sum \limits _{i=0}^{k} \left( B_i - \beta _i \right) ^2, \end{aligned}$$

where k is the number of training data points, \(B_i\) is the ith slip angle ground truth measured by an observation instrument, such as a motion capture camera, and \(\beta _i\) is the ith predicted slip angle using Eq. 28.

Verification experiments

As previously mentioned, in this paper, we have proposed slip estimation methods for straight and turning maneuvers. Table 1 shows the slip estimation equation for each maneuver.

Table 1 Slip models for each direction and maneuver

To confirm these slip estimation methods, three experiments were conducted on a loose sandy field, as shown in Fig. 5. The first experiment was conducted to confirm the slip model for straight maneuvering. The robot traveled along a straight line on an inclined slope to the robot’s tilt roll and pitch angles independently. The second experiment was conducted to verify the conventional slip ratio estimation method [7] and the proposed slip angle estimation method during turning motion of the robot. The third experiment was conducted to evaluate slip-compensated odometry using the proposed slip model during turning motion of the robot.

The field was filled with Toyoura sand and had length of 2 m, a width of 1 m, and depth of 0.2 m. The field could be tilted by 0–25\(^{\circ }\) by jacking up one side of the field. The ground truths corresponding to the robot’s movement and orientation were measured using an Osprey motion-capture camera system installed in the corner of the experimental field. For the experiments, a Patako skid-steering tracked vehicle (shown in Fig. 6) was used as a testbed. The testbed had dimensions of 503 × 686 × 522 mm, and a mass of 25 kg. Prior to the experiment, the slip parameter n of the testbed was identified on a rigid linoleum floor (\(n = 0.847\), as shown in Fig. 7). Specifications of the robot are given in Table 2.

Fig. 5
figure 5

Experimental setup

Fig. 6
figure 6

Patako skid-steering tracked vehicle

Table 2 Testbed specifications
Fig. 7
figure 7

Slip parameter n identified on a rigid floor

Experiment I: Slip model verification on straight maneuvers

In order to confirm the slip ratio (Eq. 22) and slip angle (Eq. 26) of the proposed slip model, we conducted a straight maneuver experiment, as shown in Fig. 8 at several slope angles. The robot traveled straight under two slope conditions: with only pitch inclination (climbing) for slip ratio estimation, and with only roll inclination (traversing) for slip angle estimation. In addition, we confirmed the slip ratio in the traversing condition. The input velocity of each track was set to 5 cm/s. The slip ratio and slip angle were derived from measurement data. The tilt angle of the slope field was varied, and tested at \(0^{\circ }, 5^{\circ }, 10^{\circ }, 15^{\circ }, 20^{\circ }\) and \(25^{\circ }\). The experiment was performed three times under each condition.

Fig. 8
figure 8

Experiment description for straight maneuvers

Figures 9, 10, 11 show the results of the slip ratio in the climbing condition, slip ratio in the traversing condition, and slip angle in the traversing condition, respectively, at each inclination angle. In these graphs, the horizontal axis represents the slope angle and the vertical axis represents the slip ratio or angle. Dots are the average result of the three trials, and the error bars represent the standard deviation of each result.

Fig. 9
figure 9

Slip ratio for straight motion (climbing)

Fig. 10
figure 10

Slip ratio for straight motion (traversing)

Fig. 11
figure 11

Slip angle for straight motion (traversing)

Experiment II: Slip model verification for turning maneuvers

This experiment was performed to confirm the method for estimating the slip ratio and slip angle during turning maneuver: whether conventional slip ratio estimation (Eq. 27) can be applied on the weak slope, and regression function for slip angle estimation (Eq. 29). In this experiment, the robot was set parallel to the long side of the field, and rotated through an angle of about \(90^{\circ }\) as shown in Fig. 12. The tilt angle of the field was varied: \(0^{\circ }, 5^{\circ }, 10^{\circ }\), and \(15^{\circ }\). The velocity of the robot was set to 5 cm/s, and the angular velocity was set at \(10^{\circ },/s 20^{\circ }\)/s, and \(30^{\circ }\)/s.

Figure 13 shows the slip ratio results in form of a double logarithmic chart. The horizontal axis indicates the input velocity ratio, and the vertical axis indicates the slip ratio. Slip parameter (\(n=0.873\)) was obtained as the inclination by way of logarithmic approximation.

Fig. 12
figure 12

Experiment description on turning maneuver

Fig. 13
figure 13

Slip ratio and input velocity of each track in a double logarithmic chart

Table 3 summarizes results of the regression analysis trained on the experimentally measured data. In this experiment, p values were confirmed to evaluate significant probabilities of explanatory variables. The p value is the probability that is extremely greater than actual observed results when the null hypothesis is true. Generally, if the p value is less than 0.05, the null hypothesis is rejected and the explanation variable seems to be significant. The results in Table 3 indicate all p-values to be less than 0.05, and the explanatory variables, therefore, play significant roles in predicting the slip angle. Finally, proposed model explains 75.4% of the observation data as shown in Table 4.

Table 3 Result of regression analysis
Table 4 Result of regression analysis

Experiment III: Slip-compensated odometry for turning maneuvers

The coefficients of the slip estimation model were identified in the previous experiment. In this experiment, the slip-compensated odometry during turning maneuvers was evaluated using this slip estimation method verified in the previous experiments. The experimental setup was used as in previous experiments. The slope angle was set to \(8^{\circ }\) and \(15^{\circ }\). The velocity of the robot was set to 5 cm/s, and the angular velocity was set to \(20^{\circ }\)/s and \(30^{\circ }\)/s.

The estimated slip angle result at a slope angle of \(15^{\circ }\) is shown in Fig. 14. The vertical and horizontal axes represent the slip angle and running time, respectively. The blue dots indicate the ground truth of the slip angle obtained from the motion capture camera, and the red line indicates the estimated slip angle.

Figures 15, 16, 17, 18 compare the estimated position results with those obtained from conventional methods. The blue line represents the ground truth, the yellow line represents gyrodometry results [6], the brown line shows the results of the conventional method [7], and the red line shows the results of the proposed slip-compensated method. The root mean square error (RMSE) of the position decreased in all conditions, and the improvement in RMSE was 68.5% on average with respect to conventional odometry.

Fig. 14
figure 14

Result of slip angle estimation

Fig. 15
figure 15

Result of position estimation: slope angle is \(8^{\circ }\), input velocity is 5 cm/s, and input angular velocity is \(20^{\circ }\)/s

Fig. 16
figure 16

Result of position estimation: slope angle is \(8^{\circ }\), input velocity is 5 cm/s, and input angular velocity is \(30^{\circ }\)/s

Fig. 17
figure 17

Result of position estimation: slope angle is \(15^{\circ }\), input velocity is 5 cm/s, and input angular velocity is \(20^{\circ }\)/s

Fig. 18
figure 18

Result of position estimation: slope angle is \(15^{\circ }\), input velocity is 5 cm/s, and input angular velocity is \(30^{\circ }\)/s


The slip ratio during straight maneuvering had linear relationship with the slope angle near the origin. The line was identified by the slope, from \(0^{\circ }\) to \(20^{\circ }\) as shown in Fig. 9, based on the proposed slip model (Eq. 22) by the least-squares method. The slip ratio at \(25^{\circ }\) deviatesd from the model compared to the other results because the proposed slip model was derived from second-order approximation of shear stress near the origin; hence, the result far from the origin deviates away from the expected value. Shear-stress approximation is also used in the slip angle model of straight maneuvers; thus, the error in the slip angle experiment was large at dots far from the origin. On the other hand, slip ratio during traversing remains almost the same at various slope angles. These results indicate that the slip ratio and slip angle can be estimated independently from the posture of the robot.

Slip parameter n in Eq. 13 was linear on the logarithmic graph despite the changing slope angle, and was identified as 0.873 in Experiment II. The value of n on the slope was similar to that on the rigid floor. These results indicate that the parameter does not change in this experiment using the same robot, despite environmental changes.

The slope angle is not an identical parameter because it can be calculated using Eq. 29. However, it is considered that the rotation behavior changes due to the slope angle and that it is important to include slope angle as an explanatory variable. In fact, the coefficient of determination \(R_2\) increased about 10% when including the slope angle as an explanatory variable.

In Fig. 14, the slip angle changes from negative to positive. First, the robot was set in the contour direction. Thus, the lateral slip occurred in the downward direction. One interesting point is that the slip angle was positive, meaning that the robot moved closer to the center of the rotation during movement. Soil was accumulated on the inner side of the left track owing to the bulldozing action, as shown in Fig. 19. In contrast, there was no accumulation of soil beside the right track. Bulldozing resistance increased on the inner side of the left track, therefore, the slip angles in Figs. 15 and 18, indicate that gyrodometry does not consider slippage, and the position gets longer. Likewise, the conventional method only considers longitudinal slippage, and the lateral slippage causes an increase in the position estimation error, especially in Fig. 18.

Fig. 19
figure 19

Accumulated soil on the inner side of left track

Conclusion and future work

In this paper, we proposed a slip model for skid-steering tracked vehicles on loose and weak slopes. Estimation methods in the model were divided by slippage directions and motion types. During straight motion, the slippage model was based on the interaction between the track and terrain, and was linear to the roll and pitch angles of the robot. During turning motions, we verified that a previous empirical formula for slip ratio estimation on rigid ground can be useful for application to weak slopes. The slip angle was estimated using multiple linear regression function; the regression model explained 75.3% of the observed data. To include this slip model in the kinematics of a skid-steering vehicle, we proposed slip-compensated odometry for tracked vehicles, and confirmed that odometry accuracy was improved compared to that of conventional odometry.

In this research, slip model parameters were identified offline using position and velocity information acquired by a motion capture camera. To apply the slip model for odometry to an unknown environment, online parameters estimation should be considered in future work. In addition, the use of sub-tracks could prove effective in improving the terrainability of the vehicle over weak terrains. We intend to investigate the applicability of the proposed method to tracked vehicle with sub-tracks.


  1. Nakada S, Fujii T (1993) Preliminary report on the activity at Unzen Volcano (Japan), November 1990–November 1991: dacite lava domes and pyroclastic flows. J Volcanol Geotherm Res 54(3–4):319–333

    Article  Google Scholar 

  2. Ding L, Gao H, Deng Z, Yoshida K, Nagatani K (2009) Slip ratio for lugged wheel of planetary rover in deformable soil: definition and estimation. In: Proceedings of 2009 IEEE/RSJ international conference on intelligent robots and systems, St. Louis, pp 3343–3348

  3. Yoshida K, Hamano H (2002) Motion dynamics of a rover with slip-based traction model. In: Proceedings of the 2002 IEEE international conference on robotics and automation, vol 3, pp 3155–3160

  4. Muro T (1989) Stress and slippage distributions under track belt running on a weak terrain. Soils Found 29(3):115–126

    Article  Google Scholar 

  5. Ishigami G, Miwa A, Nagatani K, Yoshida K (2007) Terramechanics-based model for steering maneuver of planetary exploration rovers on loose soil. J Field Robotics 24(3):233–250

    Article  Google Scholar 

  6. Borenstein J, Feng L (1996) Gyrodometry: a new method for combining data from gyros and odometry in mobile robots. In: Proceedings of the 1996 IEEE international conference on robotics and automation, vol 1, pp 423–4281

  7. Endo D, Okada Y, Nagatani K, Yoshida K (2007) Path following control for tracked vehicles based on slip-compensating odometry. In: Proceedings of 2007 IEEE/RSJ international conference on intelligent robots and systems, San Diego, pp 2871–2876

  8. Reinstein M, Kubelka V, Zimmermann K (2013) Terrain adaptive odometry for mobile skid-steer robots. In: Proceedings of the 2013 IEEE international conference on robotics and automation, pp 4706–4711

  9. Bekker MG (1962) Theory of land locomotion. University of Michigan Press, Ann Arbor

    Book  Google Scholar 

  10. Wong JY (2008) Theory of ground vehicles, 4th edn. Wiley, Hoboken

    Google Scholar 

  11. Terzaghi K, Peck RB, Mesri G (1996) Soil mechanics in engineering practice, 3rd edn. Wiley, Hoboken

    Google Scholar 

  12. Pentzer J, Brennan S, Reichard K (2014) Model-based prediction of skid-steer robot kinematics using online estimation of track instantaneous centers of rotation. J Field Robotics 31(3):455–476

    Article  Google Scholar 

  13. Angelova A, Matthies L, Helmick D, Perona P (2006) Slip prediction using visual information. In: Proceedings of robotics: science and systems. Robotics: Science and Systems Foundation, Philadelphia

  14. Otsu K, Otsuki M, Ishigami G, Kubota T (2012) Advanced visual odometry for planetary exploration rover. In:Proceedings of international symposium on artificial intelligence, robotics and automation in space, 9a

  15. Arslan H, Sture S, Batiste S (2008) Experimental simulation of tensile behavior of lunar soil simulant JSC-1. Mater Sci Eng 478(1):201–207

    Article  Google Scholar 

  16. Ahmad M, Polotski V, Hurteau R (2000) Path tracking control of tracked vehicles. In: Proceedings of the 2000 IEEE international conference on robotics and automation, vol 3, pp 2938–2943

Download references

Authors’ contributions

GY and KN conceived the ideas underlying this study. GY conducted experiments and data analysis and drafted this article as the corresponding author. KN, TH, and KF analyzed and revised the manuscript. All authors read and approved the final manuscript.

Competing interests

The authors declare that they have no competing interests.

Availability of data and materials

Not applicable.

Consent for publication

Not applicable.

Ethics approval and consent to participate

Not applicable.


This work was supported in part by a Grant-in-Aid for JSPS Research Fellow (26\(\cdot\)3767).

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Author information

Authors and Affiliations


Corresponding author

Correspondence to Genki Yamauchi.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Yamauchi, G., Nagatani, K., Hashimoto, T. et al. Slip-compensated odometry for tracked vehicle on loose and weak slope. Robomech J 4, 27 (2017).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: