Professional Documents
Culture Documents
Karl Reichard
Applied Research Lab, The Pennsylvania State University, University Park, Pennsylvania 16802
e-mail: kmr5@arl.psu.edu
Received 31 January 2014; accepted 4 February 2014
This paper presents a kinematic extended Kalman filter (EKF) designed to estimate the location of track instantaneous centers of rotation (ICRs) and aid in model-based motion prediction of skid-steer robots. Utilizing an
ICR-based kinematic model has resulted in impressive odometry estimates for skid-steer movement in previous
works, but estimation of ICR locations was performed offline on recorded data. The EKF presented here utilizes
a kinematic model of skid-steer motion based on ICR locations. The ICR locations are learned by the filter
through the inclusion of position and heading measurements. A background on ICR kinematics is presented,
followed by the development of the ICR EKF. Simulation results are presented to aid in the analysis of noise
and bias susceptibility. The experimental platforms and sensors are described, followed by the results of filter
implementation. Extensive field testing was conducted on two skid-steer robots, one with tracks and another
with wheels. ICR odometry using learned ICR locations predicts robot position with a mean error of 0.42 m
over 40.5 m of travel during one tracked vehicle test. A test consisting of driving both vehicles approximately
1,000 m shows clustering of ICR estimates for the duration of the run, suggesting that ICR locations do not vary
C 2014 Wiley Periodicals, Inc.
significantly when a vehicle is operated with low dynamics.
1.
INTRODUCTION
Skid-steering is a commonly utilized locomotion mechanism for mobile robots and large industrial and agricultural
vehicles. A skid-steer system has no steering mechanism
and instead changes vehicle direction by adjusting the speed
of the left and right side wheels or tracks. The simplicity, robustness, and zero-radius turn capability of skid-steering
make it an excellent choice for all-terrain and teleoperated
vehicles, but the complex track/terrain interaction developed during a skid-steer maneuver is difficult to model.
Hence, when compared to steered or two-wheel robots, it is
quite difficult to predict the future position of a skid-steer
robot.
The number of unmanned ground vehicles utilized by
civilian and military organizations has increased significantly in the past decade, the vast majority of which utilize skid-steer mobility. Most unmanned ground systems
currently fielded are teleoperated and have limited or no
autonomous functions, and one of the largest obstacles to
Direct correspondence to Sean Brennan, e-mail: sbrennan@psu.edu
C
456
in Vinh Ha, Ha, & Lee (2013), where a Kalman filter formulated to estimate slip runs in parallel with a navigation EKF
algorithm. The algorithm performs well on recorded data,
but was not implemented on the vehicle. Burke presented
a least-squares method of estimating slip implemented in
conjunction with a kinematic model (Burke, 2012). The estimator is guaranteed to converge, but simulation results do
not generally show convergence when slip values are constantly changing. No implementation is presented. Moosavian presented a method of estimating slippage by fitting
exponential functions of turn radius to experimental data
(Moosavian and Kalantari, 2008). The slip models are utilized to control a skid-steer vehicle along a path with good
results. Research presented in Martnez et al. (2005) utilizes
the same kinematic model presented in this paper, but ICR
locations are learned offline using a genetic algorithm operating on recorded data. Error values are not provided,
but figures show impressive odometry over approximately
30 m of travel.
The research presented here is different in that the previously mentioned works relied on analysis of recorded data
to calculate certain track/terrain interaction parameters or
estimated slip coefficients rather than ICR locations. In this
work, an EKF is used to learn ICR locations during operation
using track speed, heading, and position measurements.
Learned ICR locations are then used to estimate movement
of the vehicle when external position measurements are
absent. ICR locations are modeled as constant values disturbed by random noise. The constant value assumption
stems from previous work where ICR locations are shown
to remain within small bounded regions for robots operating at low speeds on hard, flat terrain (Martnez et al., 2005).
Thus, the low speed and hard, flat terrain assumptions apply to the work presented here as well. Experimental results
show convergence of ICR estimates within 515 s of driving,
depending on the movement of the vehicle.
The ICR locations estimated by the EKF provide a mapping from vehicle wheel or track speeds to vehicle forward
and angular velocity. This enables more accurate odometry when external position systems fail or become inaccurate; one example of this is when GPS signals are blocked,
or when there are multipath GPS signals. This use of the
ICR EKF as a GPS backup is explored through extensive
field-testing in this work. Other possible applications of estimated ICR locations include modeling power usage in
skid-steer wheeled and tracked vehicles, controlling skidsteer vehicles by calculating needed track or wheel speed
from desired vehicle movement, and in the detection of pure
slip and vehicle immobilization.
The remaining sections are organized as follows.
Section 2 gives an introduction to ICR kinematics, and
Section 3 describes the EKF developed to estimate ICR location. Section 4 provides details on the skid-steer robots used
during testing. The simulation used during evaluation of the
Figure 1.
(1)
Vxl vx
,
z
(2)
yICRr =
Vxr vx
,
z
(3)
where yICRl and yICRr are the ICR locations for the left- and
right-hand tracks, respectively, Vxl is the velocity of the lefthand track relative to the body of the robot, and Vxr is the
Journal of Field Robotics DOI 10.1002/rob
yICRv =
457
algorithm is described in Section 5, and details of fieldtesting are provided in Section 6. Finally, a discussion of the
results and conclusions are given in Section 7.
2.
vy
,
z
(4)
Vyl vy
z
(5)
vy
.
z
(7)
Thus, the three ICR locations, those of the vehicle, left track,
and right track, lie along a straight line parallel to the bodyfixed Y axis.
It should be noted that the values of yICRv range within
depending on vehicle motion. However, the values of
yICRr , yICRl , and xICRv remain bounded. As vehicle motion
approaches that of driving in a straight line, the numerators
and denominators of Eqs. (2)(4) are infinitesimals of the
same order, resulting in finite values for the ICR locations
(Martnez et al., 2005).
Equations (2)(4) can be solved to express body frame
velocities in terms of input track velocities and track ICR
locations. The resulting kinematic model,
458
vx =
(8)
(9)
Vxl Vxr
,
yICRl yICRr
(10)
vy =
wz =
forms the basis for the EKF described in the next section.
The denominator of Eqs. (8)(10) consists of yICRl yICRr , so
the possibility of division by zero must be addressed. Due
to slippage, the ICR locations must lie outside the track
centerlines (Martnez et al., 2005). Thus, to have division
by zero, the tracks or wheels would need to lie along the
same line, a physical impossibility for a skid-steer mobile
robot. It is also interesting to note that values of yICRl and yICRr
approach infinity when the robot is stationary but the tracks
are spinning. This may occur when the vehicle operates on a
low friction surface or becomes stuck in some way. Rapidly
increasing values of yICRl and yICRr could be used to detect
occurrences of pure slip such as these.
3.
(11)
E = vx sin + vy cos ,
(12)
x
y
N
N
vx sin + vy cos + wE
E
V l V r
z
y x y x + w
(13)
ICRl
ICRr
,
y ICRr
wr
y ICRl
wl
x ICRv
wx
where wN -wx are additive zero-mean Gaussian process
noises. Previous work in ICR kinematics has shown that
the ICR locations remain within a small bounded region for
robots traveling at low speeds on hard, flat terrain (Martnez
et al., 2005). These criteria apply to the majority of testing
in this work, so the ICR locations are modeled as constants
disturbed by random noise, and results presented later confirm that ICR locations remain bounded to the same region
regardless of maneuver type. Additional testing to explore
the variation of ICR locations with increasing speed is presented in Section 6.6. The kinematic model is discretized
using the Euler method, with the result
Nk
Ek
k
yICRr
k
yICRl
k
xICRvk
k1 + tz + tw
k1
=
,
yICRr k1 + twr
yICRl k1 + twl
xICRvk1 + twx
(14)
(15)
where x
k is the propagated state at the current time step,
x+
k1 is the propagated and updated state from the previous time step, uk1 is the vector of control inputs consisting of left and right track velocity, and the third entry in
f(x+
k1 , uk1 , 0) denotes setting the process noise to zero for
propagation. Throughout this paper, a superscript denotes a value propagated but not updated with measurements, and a superscript + denotes a value propagated
and updated with measurements.
The state covariance, P, is propagated using
+
T
T
P
k = Fk1 Pk1 Fk1 + Lk1 Qk1 Lk1 ,
(16)
(17)
k1
Lk1 =
fk1
= tI66 ,
w x+
(18)
k1
NGPS
.
(19)
yk = EGPS
V
k
These direct measurements of states result in the measurement equations
N + vN
,
(20)
hk = E + vE
+ v k
where vN -v represent additive measurement noise. The
filter gain is calculated using
T
T
T 1
Kk = P
k Hk (Hk Pk Hk + Mk Rk Mk ) ,
1 0 0 0 0 0
hk
Hk =
= 0 1 0 0 0 0
x x
0 0 1 0 0 0
k
Mk =
hk
= I33 .
v x+
(21)
(22)
(23)
3.1.
x+
k = xk + Kk [yk hk (xk , 0)],
(24)
P+
k = (I66 Kk Hk )Pk .
(25)
N2
N E
T
P k Hk =
N y
ICRr
N yICRl
N xICRv
N E
E2
E
E yICRr
E yICRl
E xICRv
459
,
yICRr
yICRl
xICRv
(26)
where is the variance of the estimator error for the subscripted state at the current time step. The final three rows
of the Kalman gain will become zero when the covariances
between the estimate errors of robot pose and ICR locations
are zero. The state error covariance matrix P is initialized to
be a diagonal matrix, and the process noise is assumed to be
T
additive and uncorrelated, leaving the term Fk1 P+
k1 Fk1 in
Eq. (16) as the only contribution to the estimate error covariance between robot pose and ICR location. The linearized
kinematic model matrix, Fk1 , can be split into four parts as
FK33 FI33
,
(27)
Fk1 =
033 I33
where FK33 and FI33 are the Jacobians of the first three rows
of Eq. (14) with respect to the estimated robot pose and ICR
locations, respectively. When the state error covariance P is
a diagonal matrix, such as when it is initialized, the only
nonzero terms in the calculation of covariance between estimate errors of robot pose and ICR locations, computed by
Eq. (16), consist of terms in FI33 multiplied by ICR location estimate error variances. Therefore, estimation of ICR
locations depends on the values of FI33 being nonzero.
Two examples of the terms in FI33 are
(Vr yICRl Vl yICRr ) cos
Nk
= t
yICRr
(yICRl yICRr )2
(Vl Vr )xICRv sin
Vl cos
(28)
yICRl yICRr
(yICRl yICRr )2
and
Nk
t(Vl Vr ) sin
=
.
xICRv
yICRl yICRr
(29)
460
Figure 3.
learned ICR information is retained when the vehicle momentarily stops moving.
4.
TESTING PLATFORMS
The two skid-steer robots shown in Figure 3 were used for all
testing in this research. The tracked vehicle on the left was
designed and built at The Pennsylvania State University,
and the wheeled vehicle on the right is the RMP400 from
Segway Robotics. The same real-time kinematic (RTK) GPS
and attitude heading reference system (AHRS) were utilized
on each robot. Final drive shaft speeds on the tracked robot
were measured using optical encoders. Encoders were unnecessary on the RMP 400 because the integrated motor controllers report measured wheel speeds at 100 Hz. High-level
computation and data recording are done on an embedded
computer running the open-source robot-operating-system
(ROS) architecture (Quigley et al., 2009).
The optical encoders on the tracked robot produce
2,048 pulses per resolution, and the interface chip provides
quadrature encoding, producing a change of 8,192 counts
for one revolution, or 0.0439 degrees per count. The encoder
count update rate is approximately 100 Hz. The Xsens MTiG AHRS provides roll, pitch, and yaw data at 100 Hz with
dynamic accuracy of 1 degree root mean square (rms) and a
resolution of 0.05 degrees. The Hemisphere A325 Smart Antenna RTK GPS system communicates with a base station
through a radio serial modem and provides position and velocity updates at 20 Hz with an accuracy of 0.01 m rms. On
the tracked vehicle, the embedded computer communicates
commanded rpm values for each track to a commercial dc
motor controller at 10 Hz. The encoder signals are made
available to the motor controller, which regulates track
speed using proportional-integral-derivative (PID) control.
The integrated motor controllers on the RMP 400 accept
5.
0
0.012 0
(31)
R = 0 0.012 0 ,
1 2
0
0 ( 180
)
where the values of 0.01 m in the position measurement
variances represent the accuracy of the GPS system, and the
1
) radians represents the accuracy of the AHRS
value of ( 180
system, both described in Section 4.
A comparison of the EKF position estimate and true
position is given in Figure 4. The accurate position and
heading measurements enable the filter to match the true
path while quickly learning the correct ICR locations of
yICRr = 0.5, yICRl = 0.75, and xICRv = 0.25, as shown in
Figure 5. Some modifications to the kinematic equations
were necessary to avoid divergence of the filter estimate in
the presence of noise and disturbances. The next phase of
simulation focused on this area.
5.1.
It was found in initial testing that filter estimates of ICR locations diverged during a significant number of simulation
Journal of Field Robotics DOI 10.1002/rob
2
0
True
EKF
START
North (m)
2
4
6
END
8
10
2
Figure 4.
robot.
4
6
East (m)
10
12
3
y
ICRr
yICRl
ICRv
2
0
0
0
0
0
0.2
2
0
0
0
0
0
0.2
5 2
0
0
(
)
0
0
0
180
.
(30)
Q=
0
0
0
0
0
0.012
0
0
0
0
0
0.012
0
0
0
0
0
0.012
461
1
0
1
2
3
10
Time (s)
runs. The simulation was repeated with initial ICR location estimates ranging from 2 to 2. The results, shown in
Figure 6, indicate that yICRr converges only when the initial
condition is greater than zero. A similar plot for yICRl shows
convergence only when yICRl is initialized with a negative
number.
The kinematic modeling equations, given in Eqs. (4)
(10), were modified to ensure filter convergence. With respect to the defined body frame, shown in Figure 1, the left
ICR location will always be negative and the right ICR location will always be positive. To enforce this knowledge of
ICR location, the kinematics were modified to be
462
10
yICRr (m)
ICRr
(m)
15
20
25
30
20
40
60
80
100
Time (s)
20
40
60
80
100
Time (s)
Figure 6. Plot of yICRr estimate during tracked vehicle simulations for initial conditions ranging from 2 through 2 using
kinematic equations (8)(10).
vx =
(32)
Vxl Vxr xICRv
,
y y
(33)
V l Vxr
x
yICRl yICRr
(34)
Figure 7. Plot of yICRr estimate during tracked vehicle simulations for initial conditions ranging from 2 through 2 with
modified kinematic equations (32)(34).
vy =
ICRl
wz =
ICRr
such that the difference value yICRl yICRr will always have
the correct negative sign. With this change, the filter converges regardless of initial condition or variation after initialization. The result is that for any initial condition, the
ICR location converges to the correct value as shown in
Figure 7.
5.2.
The system model used in the ICR EKF, given in Eq. (14),
assumes the ICR locations are constant values disturbed
by random noise. It is important to investigate how this
assumption affects the ability of the ICR EKF to estimate
changing ICR locations, which may occur when a robot
drives from one terrain to another. This scenario was examined in simulation, with the results shown in Figure 8. The
times at which the ICR locations changed are also labeled in
Figure 8. The convergence time for the filter after a change
in ICR location ranged from 100 to 140 s. In this work, the
definition of rise time (Kuo and Golnaraghi, 2003) is used to
define the convergence rate, e.g., the time from 10% change
in ICR estimate to when the estimate is within 90% of the
final value. The time of convergence in Figure 8 is slow,
463
0.6
Encoder
0.5
Motor Controller
0.4
0.3
0.2
0.1
0
0.1
20
40
60
80
100
Time (s)
Figure 9. Simulation run with changing ICR locations and inflation of ICR location estimate error covariance at ICR change.
Times of ICR changes are labeled with vertical lines at 175 and
350 s.
1.5
0.5
0.5
1
Radius of Turn (m)
1.5
5.3.
Vxr + Vxl
,
2
l
Vx Vxr xICRv
vy =
,
2yICRl
wz =
Vxl Vxr
.
2yICRl
(35)
(36)
(37)
464
0.02
1
y
ICRr
ICRl
0.5
xICRv
0.5
0.02
0.04
y
0.06
xICRv
0.08
0.1
0.1
0.2
0.3
0.4
Standard Deviation of Input Noise (m/s)
0.5
ICRr
yICRl
0.1
0.2
0.3
Bias on Input Velocities (m/s)
0.4
0.5
Figure 12. Error in ICR location estimate as a function of increasing input noise on the simulated tracked robot.
Figure 13. Error in ICR location estimate as a function of increasing input bias on the simulated tracked robot.
6.
VNS =
Vxr + Vxl
,
2
(38)
NS =
Vxl Vxr
,
b
(39)
Table I.
465
Speed (m/s)
Test name
Table II.
yICRl (m)
xICRv (m)
Traversal (m)
42.7
40.5
1,089.7
0.37
0.39
0.45
0.08
0.12
0.15
0.18
0.27
0.41
0.04
0.02
0.14
0.45
0.38
0.41
0.02
0.02
0.05
0.11
0.04
0.14
0.03
0.08
0.08
Circular path
Curved path
Long distance
Speed (m/s)
yICRl (m)
xICRv (m)
Traversal (m)
63.6
30.7
983.9
0.47
0.40
0.44
0.05
0.11
0.14
0.63
0.57
0.63
0.02
0.04
0.02
0.76
0.81
0.76
0.03
0.05
0.03
0.02
0.08
0.06
0.06
0.06
0.06
Circular path
Curved path
Long distance
The distance traversed by the vehicle in these tests is summarized along with the mean and standard deviation
of the vehicle speed and estimated ICR locations in Table I
for the tracked vehicle and Table II for the wheeled vehicle.
Section 6.4 presents the results of utilizing the ICR EKF
for odometry predictions when GPS is unavailable, and
Section 6.5 presents performance results of the ICR EKF
when a conventional GPS solution is used for position
measurements. Section 6.6 presents experimental results
for the performance of the EKF with increasing vehicle
speeds.
Circular Path
Tracked Robot
4
START
6
North (m)
Test name
6.1.
END
8
GPS
ICR EKF
10
ICR Odometry
NoSlip Odometry
12
18
20
22
24
East (m)
26
28
Figure 14. Plot of GPS position measurement, EKF position estimate, ICR kinematic odometry, and no-slip kinematic odometry for a circular run with the tracked robot.
466
Figure 15. Plot of ICR estimates during a circular run with the
tracked robot. The run was 114 s long, but the plot has been
scaled to show details of the initial estimation of ICR locations.
Convergence times (10%90%) for each ICR location estimate
are also shown on the graph.
Wheeled Robot
GPS
ICR EKF
ICR Odometry
NoSlip Odometry
6
8
10
END
15
ICR Estimate (m)
4
North (m)
Figure 17. Plot of ICR estimates during a circular run with the
wheeled robot. The run was 145 s long, but the plot has been
scaled to show details of the initial estimation of ICR locations.
Convergence times (10%90%) for each ICR location estimate
are also shown on the graph.
START
12
8
10
East (m)
12
14
16
8
9
Time (s)
10
11
12
Figure 16. Plot of GPS position measurement, EKF position estimate, ICR kinematic odometry, and no-slip kinematic odometry for a circular run with the wheeled robot.
The ICR EKF was initialized with ICR location estimates of yICRr = 1.0 m, yICRl = 1.0 m, and xICRv = 1.0 m for
both the tracked and wheeled vehicle circular runs. The
large amount of variation in the ICR estimates at the beginning of the circular runs, from 0 to 7 s in Figure 15 and from
0 to 2 s in Figure 17, appear to be products of the filter learning process. Specifically, the variations do not appear when
the filter is allowed to retain previous ICR information be-
Tracked Robot
GPS
ICR EKF
ICR Odometry
NoSlip Odometry
10
467
GPS
ICR EKF
5
ICR Odometry
NoSlip Odometry
North (m)
5
North (m)
10
START
END
15
5
END
START
10
10
20
25
East (m)
30
35
40
10
Figure 19. Plot of GPS position measurement, EKF position estimate, ICR kinematic odometry, and no-slip kinematic odometry for driving on a curved path with the tracked robot.
1
Wheeled Robot
20
15
Tracked Robot
0
East (m)
10
Figure 21. Plot of GPS position measurement, EKF position estimate, ICR kinematic odometry, and no-slip kinematic odometry for driving on a curved path with the wheeled robot.
1
Wheeled Robot
ICRr
yICRl
ICRr
yICRl
xICRv
0.5
xICRv
0.5
0.5
0.5
1
20
40
60
Time (s)
80
100
120
6.2.
20
40
Time (s)
60
80
Curved Path
during the circular runs, and the estimate of xICRv varies significantly, possibly due to the more dynamic nature of the
run over that of the circular movement.
The position results of the wheeled robot traveling on a
curved path are shown in Figure 21 and also show a similar
performance to the circular run. The ICR odometry provides a good estimate of vehicle motion, and the mean and
maximum errors over 30.7 m of travel are 0.78 and 1.49 m.
Figure 22 shows the ICR estimates for the wheeled robot on
a curved path. The estimates of yICRr and yICRl are similar to
the estimates for the circular path test. As with the tracked
vehicle, the estimate of xICRv varies significantly, again
468
Wheeled Robot
START
Tracked Robot
START
END
10
10
North (m)
North (m)
END
20
20
30
30
GPS
40
GPS
40
ICR EKF
ICR EKF
50
20
10
10
East (m)
20
30
30
40
10
0
10
East (m)
20
Wheeled Robot
ICRr
ICRr
yICRl
20
ICRv
15
10
0.5
0
ICR Location (m)
0.5
30
Tracked Robot
20
yICRl
30
xICRv
25
20
15
10
5
0.5
0
0.5
ICR Location (m)
1.5
Figure 24. Clustering of ICR location estimates during a longdistance run with the tracked robot.
Figure 26. Clustering of ICR location estimates during a longdistance run with the wheeled robot.
suggesting that the longitudinal location of the ICRs depends more on the dynamics than the lateral position.
6.3.
Long-distance Traversal
30
469
Tracked Robot
0
Tracked Robot
START
North (m)
10
GPS
ICR EKF
15
Dropout Start
Dropout End
20
Percentage of Occurrences
25
20
15
10
5
END
25
10
5
10
East (m)
15
20
6.4.
2
3
Error in Odometry Estimate (m)
470
12
40
Percentage of Occurrences
8
6
4
95% of Occurences
Below 3.8 m
35
10
30
Tracked Robot
20
15
10
5
4
6
Error in Odometry Estimate (m)
10
10
15
GPS Dropout Length (m)
20
7
6
35
Percentage of Occurrences
40
Tracked Robot
4
3
95% of Occurences
Below 10.4 m
30
25
Wheeled Robot
20
15
10
1
5
5
10
15
Error in Odometry Estimate (m)
20
10
15
GPS Dropout Length (m)
20
10
Tracked Robot
Tracked Robot
GPS
ICR Odometry
NoSlip Odometry
471
GPS
ICR EKF
START
END
10
North (m)
North (m)
10
20
20
30
30
40
40
50
30
20
10
0
10
East (m)
20
30
40
Figure 33. Two examples of ICR and no-slip odometry performance over 15 m distances with the tracked robot.
10
Wheeled Robot
North (m)
10
20
30
40
50
30
20
10
0
East (m)
10
20
30
Figure 34. Two examples of ICR and no-slip odometry performance over 15 m distances with the wheeled robot.
10
10
East (m)
20
30
6.5.
GPS
ICR Odometry
NoSlip Odometry
20
472
Table III.
speeds.
25 Tracked Robot
y
Percentage of Time at ICR Estimate
ICRr
yICRl
20
Test speed
(m/s)
ICRv
15
0.4
1.6
4.0
10
15
5
yICRr (m)
yICRl (m)
xICRv (m)
0.65
0.49
0.49
0.01
0.02
0.01
0.64
0.56
0.61
0.01
0.02
0.04
0.04
0.02
0.21
0.01
0.13
0.14
Wheeled Robot
10
0.5
0
ICR Location (m)
0.5
START
END
5
10
30
25
ICR EKF
ICR Odometry
15
NoSlip Odometry
20
Tracked Robot
30
20
20
10
East (m)
Figure 38. Plot of GPS position measurement, EKF position estimate, ICR kinematic odometry, and no-slip kinematic odometry when driving the wheeled robot on asphalt at 0.4 m/s.
15
10
5
10
15
GPS Dropout Length (m)
20
6.6.
GPS
40
North (m)
0
1
50
70
Wheeled Robot
Wheeled Robot
xICRv
30
20
10
0.5
0
0.5
ICR Location (m)
20
yICRl
x
50
40
30
20
10
0.5
START
0.5
ICR EKF
ICR Odometry
North (m)
North (m)
END
0
ICR Location (m)
GPS
60
NoSlip Odometry
40
10
ICRv
GPS
ICR EKF
ICR Odometry
NoSlip Odometry
30
60
0
1
1.5
Wheeled Robot
40
473
yICRr
ICRr
yICRl
Wheeled Robot
20
END
START
10
20
20
40
30
60
40
20
20
East (m)
Figure 40. Plot of GPS position measurement, EKF position estimate, ICR kinematic odometry, and no-slip kinematic odometry when driving the wheeled robot on asphalt at 1.6 m/s.
40
20
0
East (m)
20
40
60
Figure 42. Plot of GPS position measurement, EKF position estimate, ICR kinematic odometry, and no-slip kinematic odometry when driving the wheeled robot on asphalt at 4.0 m/s.
474
7.
35
Percentage of Time at ICR Estimate
Wheeled Robot
yICRr
30
25
xICRv
ICRl
20
15
10
5
0
1
0.5
0
ICR Location (m)
0.5
0.35
0.4 m/s
1.6 m/s
4.0 m/s
0.3
0.25
0.2
0.15
0.1
0.05
0
20
40
60
80
Percentage of Mission Completion
100
475
steer vehicles when driven by experienced operators. A significant ICR EKF assumption is that the robots operate at
low speeds, below 1 m/s, and this work has quantified to
a limited extent how position estimates degrade with increasing speed of operation for current skid-steer robots up
to 4 m/s for a wheeled platform. It is reasonable to expect
that teleoperated skid-steer vehicles will continue to operate at low speeds the majority of the time due to difficulties
in perceiving and manipulating the environment during
operation. However, future work remains to develop simple models for accurate robot pose estimation during highslip and/or high-force ground maneuvering that is likely at
speeds higher than 4 m/s.
ACKNOWLEDGMENTS
This work was supported by the Exploratory and Foundational Research Program, administered by the Applied Research Laboratory, The Pennsylvania State University. No
official endorsement should be inferred.
REFERENCES
Almeida, J., & Santos, V. M. (2013). Real time egomotion of a
nonholonomic vehicle using lidar measurements. Journal
of Field Robotics, 30(1), 129141.
Angelova, A., Matthies, L., Helmick, D., & Perona, P. (2006).
Slip prediction using visual information. In Proceedings
of Robotics Science and Systems Conference.
Anousaki, G., & Kyriakopoulos, K. J. (2004). A dead-reckoning
scheme for skid-steered vehicles in outdoor environments.
In Proceedings of the 2004 IEEE International Conference
on Robotics and Automation (pp. 580585).
Botterill, T., Mills, S., & Green, R. (2011). Bag-of-words-driven,
single-camera simultaneous localization and mapping.
Journal of Field Robotics, 28(2), 204226.
Burke, M. (2012). Path-following control of a velocity constrained tracked vehicle incorporating adaptive slip estimation. In Proceedings of the 2012 IEEE International
Conference on Robotics and Automation (pp. 97102).
Chuy, O., Jr., Collins, E., Jr., Yu, W., & Ordonez, C. (2009). Power
modeling of a skid steered wheeled robotic ground vehicle.
In Proceedings of the 2009 IEEE International Conference
on Robotics and Automation (pp. 41184123).
Dar, T. M., & Longoria, R. G. (2010). Slip estimation for smallscale robotic tracked vehicles. In Proceedings of the 2010
American Control Conference (pp. 68166821).
Ferretti, G., & Girelli, R. (1999). Modelling and simulation of an
agricultural tracked vehicle. Journal of Terramechanics, 36,
139158.
Kozlowski, K., & Pazderski, D. (2004). Modeling and control of
a 4-wheel skid-steering mobile robot. International Journal
of Applied Math and Computer Science, 14(4), 477496.
476