Odometry Error Estimation for a Differential Drive
Robot Snowplow
Edward J. Kreinar*" and Dr. Roger D. Quinn!
*Depariment of Electical Engineering and Computer Science, Case Westem Reserve University
‘National Security Solutions Division, ENSCO, Inc.
!Department of Mechanical Engineering, Case Western Reserve U
Abstract —This paper presents a velocty-augmented Extended
Kalman Filter (EKF) which can estimate both systematic and
non-systematic odometry errors for a differential drive mobile
robot. The proposed EKF is validated both within simulation and
using postprocessed robot snowplow data from the Institute of
Navigation's 2013 Autonomous Showplow Competition. Potential
sensor configurations are explored using EKF Monte-Carlo
simulations with Global Positioning System (GPS) sensors or
‘multilateration ranging sensors.
1. Intropuction
‘Wheel encoders provide a precise and inexpensive measure-
ment of wheel rotation which, when solved for mobile robot
velocity, constitutes odometry. Wheel odometry is used within
typical mobile robot systems to implement localization and
filtering algorithms [1]. Odometry error characterization and
estimation is important in cases where a robot may experi
ence wheel slip or where hardware dependent parameters are
uncertain. Odometry errors can become a driving factor of
localization error within an integrated multisensor navigation
solution,
Due to the increased availability and lower price of high-
precision localization sensors including real-time kinematic
(RTK) Global Positioning System (GPS) receivers and small-
area location systems,
Precision sensors allow filters to over-constrain robot ve-
locity and use the additional information to estimate odometry
errors. A robot snowplow must account for potentially extreme
wheel slip in all operating scenatios. The robot position
solution will be corrupted if odometry is believed as a perfect
velocity measurement. Estimating wheel slip is also especially
useful fora robot snowplow in order to understand its physical
behavior in a challenging environment.
Odometry errors are characterized in literature as either
“systematic” or “non-systematie” errors [2]. A systematic
error typically results from incorrectly calibrated odometry
parameters, such as the encoder ticks-per-meter conversion
(wheel diameter) or the robot track width, A non-systematic
error, on the other hand, represents error from the robot
environment, such as whee! slip, extemal forces, etc.
‘A variety of approaches to systematic odometry error esti-
‘mation have been proposed, Autocalibration tests determine
systematic odometry error parameters using a dedicated a
priori procedute [2|[3]|4]. Such autocalibration approaches ate
relatively well-explosed. Filter-based estimation approaches
versity
from Martinelli [5] and Caltahiano [6] implement an aug-
‘mented Kalman Filter (AKF) with dedicated states for each
‘odometry calibration parameter (rightleft wheel ticks-per-
‘meter and track width); When fused with other sensors (e.g
GPS or Lidar), the AKF estimates odometry calibration during
localization.
Non-systematic odometry error has been addressed with
varying degrees of success. An early approach [7] attempted to
use redundant sensor data in a unique robot featuring a sepa
rate encoder trailer wheel to better estimate non-systematic
codometry errors. A 2006 study on slip-compensated path
driving for a Mars rover [8] uses an error-state EKF with an in-
dependent statistical threshold filter based on wheel edometry
and visual odometry, An approach from Martinelli etal. [9],
presents a framework for estimating both systematic and non-
systematic errors for a differential drive robot, implementing
two separate fiters, an AKF for systematic error estimation,
and an “observable filler” which stochastically monitors the
‘output of the first AKF. Experimental results show better than
1% error filtering systematic odometry error, yet 90% extor
filtering non-systematic odometty error. A unified EKF solving
for robot velocity, systematic, and non-systematic errors has
not been proposed so far.
Previous work using the CWRU Cutter robot platform
demonstrates successful non-systematic odometty error esti-
‘mation during operation in & high whee! slip environment (10]
using an AKF, but does not present a solution for systematic
‘odometry parameter estimation. In this paper, the procedure
in [10] is expanded to include both systematic and non-
systematic odometzy errors
Section I intwoduces the localization approach adopted
here for a differential drive mobile robot. Section IL builds
fon the differential drive odometry measurement update us-
ing augmented states for both systematic and non-systematic
‘odometry error parameters, Simulation results in Section IV
demonstrate filter convergence in a nominal sirmulation case,
Experimental results using postprocessed data from the CWRU
Cutter robot lawnmower/snowplow are shown and discussed
in Section V. Monte carlo results using various sensors are
presented in Section VI
IL, DIFFERENTIAL DRIVE EXTENDED KALMAN FILTER
‘The Extended Kalman Filter (EKF) is used to estimate two-
dimensional differential drive robot postition and velocity. For
122background and theory of the EK, sources [1] and [11] both
provide concise and detailed information. The chosen robot
state and GPS/gyroscope measurement updates are consistent
with prior work in [10]. The EKF state vector of interest for
differential drive robot (without odometry error states) is:
ez=[r y @v wl” a
‘Where 2, y refers to the origin coordinates in the world frame,
0 refers to the robot heading, and v,. refers to the velocity
and angular velocity of the origin. For a differential drive
robot, the origin is typically defined as the midpoint of both
drive wheels. Many common approaches for mobile robot
localization do not include », « states [1][12], electing instead
to use wheel odometry as system inputs to propagate the
robot slate, However, including »,. in the EKF provides a
significant benefit. Additional sensors may supplement wheel
odometzy to achieve a best estimate of the true robot velocity
Individual velocity states are very helpful for odometry error
estimation because they allow for an elegant and straightfor-
ward odometry measurement update.
‘This section reviews the chosen robot state, system update,
and measurement updates (GPS, gyroscope, and multilatera-
tion ranger). Odomelry measurement updates are discussed in
Section I
A. Stem Update
The following system model describes the transition for
each individual state
fe)=[f fy fo f& BI"
Where the differential drive equations of motion can be
approximated (13][14) as:
@
femme 1 HU Ateos( ea +
Som ve ma bm a Atsin(Gea +
fo =O =O 1 wt
fo =e = 4 (C)
fa =k = Wha o
Here, At represents the discrete timestep between suc-
cessive system updates. The Jacobian Fs. is calculated with
respect to the state vector a8 a typical EKF system update,
Refer to [10] for a full solution of the system update matrix.
B. GPS Measurement Update
The GPS measwement (ie, dvect position measurement)
assumes the robot position is measured at an arbitrary offset
fom the origin in the local robot frame (2, yf) . termed
the “leverarm offset”
ment function hyp,(z) is then expressed as
for this discussion. The GPS measure-
m4 + 3h cosh — uh, sine
et ak yysin Oy + ykpy 008 Op
Mgpe(aee) =
Lvs
®
And the measurement update Tacobian Hp, is calelated with
respect tothe state vector
0 at), indy —ylyy cost, 0 0
1 00
%)
Hyp. (20)
fi
[o 1 2k osdy — why indy
C. Gyroscope Measurement Update
‘An inertial measurement unit (MU) gyroscope measures
rotational velocity along the z-axis, w. The stale vector =
is augmented to include a single gyroscope bias term in the
zeaxis, Grarw. The bias term will be ignored throughout the
remainder of this discussion because the bias only appears in
the gyroscope measurement update
Bijwalze) = [ou + 8 ao)
mo]
Han(es) = [0 0 0 0 1 | 1]
an
D. Musitateration Measurement Update
‘A muliaterstion measurement update is defined a8 a single
range between known location on the robot to a known
location in the world, (2%, yf). For simplicity, we assume
bere thatthe range measureneat is performed dicetly at the
robot origin with no leverarm offset. Similar to the GPS
‘measurement, the equations can be expanded to accommodate
an arbitrary offset in the local robot frame. A single range is
expressed as
Branoe(@) = Vell. 2) + (uv? 2)
‘And the corresponding linearized Jacobian is:
Hyange(te) = [He Hy 9 0 0] ayy
My = —— ay
VG — 2)? + GR — uv)?
Hy = ——— et as)
Vi — 2? + ik — uP
(16)
III, ODOMETRY ERROR FILTERING
FFor differential drive mobile robots, and the CWRU Cutter
robot specifically, each wheel uses an encoder to directly
‘measure its rotation as an integer number of encoder “ticks.”
‘Three systematic parameters are necessary to convert from
pure encoder measurements (in ticks) to origin velocity vw
{in meters per second and radians per second, respectively),
‘The parameters are a ticks per meter scaling for each wheel,
tpmy, and tpmg, and the track width between the wheels,
4, The velocity of each wheel can be approximated over a
timestep Al using a ticks per meter conversion for each wheel:
an
as)
= At(ticks:)/tom,
At(ticksz) /tpmy
1123Furthermore, the velocity of the robot origin v,w is expressed.
in terms of the velocities of the left and right wheel using the
twack width b
(19)
v
oe 20)
Tn a typical case with no odometty errors, the EKF measure-
rent function hex(#) solves equations 19 and 20 for the
velocities of the left and right whee!:
Donel) = [PE fark] en
‘he Jacobian matrix for the encoder measurement is
tay- [9 0 91 -F "
2) = : ¢
‘The established EKF will perform well for a two-
séimensional differential drive robot when there are no odome-
try errors, However, systematic and non-systematic odometry
errors introduce measurement faults that are not handled using
genetic EKF models.
Both systematic and non-systematic errors can be estimated,
because the state vector includes the origin velocity (v,). In
addition, handling odometry errors in the EKF is convenient,
Odometry cxror is isolated to the odometry measurement
only, while all other system updates and measurement updates
remain the same,
A. Non-Systematic Error
Due to the nature of non-systematic error, estimation is
implemented as a “catch-all” solution where the measured
wheel velocity (vj and vf) does not equal the true wheel
velocity (vf"** and vf"). Non-systematic error estimation
follows the approach in [10]. The encoder measurement is,
now expressed as the sum ofthe true velocity v"™* and some
unknown error velocity 0"
vin = uf" + uf 2)
UR SUR UT ey
B. Systematic Error
Systematic odometry error estimation is based on an ap-
‘roach suggested in [9], Systematic odometry errors are treated
as scale factors 3%, 8%, and 4°, Systematic scale factors
multiply the presumably incorrect odometty parameters tpn,
tym, and 5 to determine the true odometry parameters.
tomig = 54pm, 05)
tpmit* = 3% tpmp. (26)
ree = 5h
C. Systematic and Non
To estimate both types of odometry errors, the EKF is
augmented to include both wheel velocity error states and
systematic scale factor states.
Systematic Error Update
eof yoy or og ot a ol? aw
‘The combined measurement update includes behavior from
both types of odometzy errors in the measurement function:
[ap uy — Be
oe Ho buy
neces) = [En] = : | 29)
RI Lae (4 Se
‘The corresponding linearized Jacobian matrix is
HES) G0)
po 01 -H 6 0 Hk, 0 HE
ooo1 & o ff 0 HR, HR
Hey, = v4 ~ Hoan + 08h 31)
ogg =n — Han + OEE cy
Boys Roos vet
Him = et aon + OE 62)
eget 5
uf ‘pe os)
HE = 8B 5 34)
The concent ofoneey meant a sown
here is used throughout the rest of the paper for both simula-
Sind CRU Ce pes
it's ey tach een help eer ad
‘prune ain ee RE ny nh Sg
Fonks Hower vient psc mth cove
Tan KE necro pedo! ae ed
iScoweu coms ne
1 Nima wl ey er eer mes
wel
2) Syren dome ses mes + cas: sa
tow fe shel ip
fo
°
| 38
1124“The systematic odometry pseudoupdate follows a similar mea-
surement function and sensitivity mauix:
aE) [se
Wee ale) = [8] = Joss | 61
a] [se
9 000000100
H,(2)- {0 0 0 0 0.0001 0} 8
0000000001
Use of pseudoupdates may be informed by external knowl-
edge of the situation, While a snowplow robot is plowing
snow, for example, it would be appropriate to estimate non-
systematic odometry parameters because wheel slip is assumed
to be prevalent. Or, if the robot is known to be in a convenient
low wheel slip scenario— high traction, low velocity, ete—
it may be a good time to estimate systematic odometry
‘parameters,
IV. SIMULATION
‘A proof-of-concept differential drive robot simulation
demonstrates sequential odometry estimation of both system-
atic and non-systematic errors, The simulation generates a
“true” robot trajectory and sinmulated noisy measurement data
from GPS, gyroscope, and encoders. The GPS is simulated
with a leverarm offset where zor is -OAS m, similar to the
CWRU Cutter robor’s physical configuration, Also, simulated
‘measurement data introduce both systematic and nonsystem-
atic odometry errors
‘Measurements are processed in an EKE, which estimates
the full robot state including position, heading, and odometry
errors. To converge on both types of odometry errors, the
division of labor for systematic and nonsystematic estimation
follows the procedure’
)) Time 0 to 20 seconds: Apply a pseudo-update coercing
wheel slip to 0. Allow the EKF to converge on system-
atic odometry parameters.
2) Time 20 seconds to end: Apply a pseudo-update en-
forcing systematic parameters remain constant, Estimate
non-systematic wheel velocity errors, assuming the sys-
tematic scale factors are now known,
An overall view of the robot path is shown in figure 1
demonstrating the EKF position and beading states success-
fully converge.
Figures 2 and 3 show nonsytematic and systematic odom-
etry error states with 3a bounds plotted with the true (sim-
tulated) values. Both wheels experience a wheel slip of 0.5
ans at different points throughout the simulation. Also, the
simulated systematic odometty parameters are scaled from
‘unity, introducing systematic errors. In both cases, wheel
velocity error states and systematic scale factor states converge
fon the true values after a brief delay, which is generally
adjustable using typical EKF system and measurement noise
tunings.
‘Sequential adometry error estimation is clearly visible by
inspecting state covariance values in Figures 2 and 3. For
1. esimated robot poston and heading
Let net sore Ear
iT
a 70
Pitt hel Oxmety Ene
i
4 afney
a
“Tes
0
ig. 2, Simulation results: Nonsystematc velocity enor
the first 20 seconds, during the zero whee! slip pseudoupdate,
velocity error states are assumed known at 0 ms (figure 2),
‘Aller the first 20 seconds, the filler switches to velocity error
filtering and the systematic seale factor states become “locked”
‘with small covariance estimates (figure 3)
‘An interesting note is that the track width parameter co-
variance is not monotomically decreasing. Rather, the observ
ability of the track width parameter is mherently related to
the npe of robot motion. Around t=10 s, the track width
covariance decreases dramatically. which physically comre-
sponds with the robot pivoting. Because the GPS is offset
{rom the origin, a pivot ot rotation significantly helps robot
tack width estimation converge. Such intuition may be useful
when generating a procedute or path for systematic odometry
parameter estimation.
A variant of this simulation is used later for Monte-Carlo
12spT np arsenate
“inate
Fig 3. Simslation ese Systematic velocity enone
sensor testing
V. IMPLEMENTATION RESULTS
Iimplementaton results demonstrate use of the velocity
augmented EKF in a realistic robot system. First, data from
the CWRU Cutter robot are recorded over various robot tests
to exercise several anecdotal scenarios. Then, an appropriate
cdometry error filter is shown to converge in postprocessing
Which allows the robot to robustly estimate and reject odom-
etry errors
‘Onboard sensors used for data processing are Novatel RTK
GPS, Christa IMU, and wheel encoders. Sensor measurement
noise is chosen to reflect the noise levels of each sensor
Raps = Oya = 0.05% 39)
Royo = Faye = 00M rad/s (40)
Rene = (0+ FuWene|)* = (0.005 +0.01|vene|)*m/s
ay
‘Two scenarios are used to show the velocity-augmented
EKE converges for both systematic and non-systematic errs
Firsi, CWRU Cutter leisurely drives over a typical grass
field. Second, CWRU Cutter competes in the 2013 ION
Autonomous Snowplow Competition
A. Grass Driving
Here, CWRU Cutter is driven manually both forward and
backward on a typical grass Geld. No significant wheel slip
‘occurs in this collection.
‘The ticks-per-meter and track width constants are well
known due to a priori testing. However, during post process-
ing, the ticks-per-meter and track width constants are scaled
to introduce a systematic odometry error, Table T shows the
measured odometry parameters on the robot, the simulated
‘parameters which introduce a systematic odometry error, and
the “ground truth” scale factor to be estimated by the velocity
augmented EKF.
TABLE
‘Systeatarie Opoutay ERnons (Test 1)
a
EE wight 24940 29910 on
Hekwan 0s? oes ot ast
Bp eee reer pene eneg
oa oa
Tine)
geet clea
3
a a)
“ack Sa
1
Eas
#09
O85 aa aa
Fig. 4 Odomety scale factor esination duing a CWRU Cater dataset
fo a grasy eld. Odamexy is intnonlly sealed to simulated «systematic
‘elometry cor
To serially estimate both systematic and non-systematic,
‘odometry errors, the fist 40 seconds (approximately half of the
dataset) estimate systematic errors only. The implementation
uses pseudoupdates to enforce sequential odometty estimation,
After the first 40 seconds, systematic scale factors are assumed
known, so the EKF switches to wheel velocity error estimation,
Figures 4 and $ show odometry scale factor states and
wheel velocity errors states respectively. Similar to earlier
simulation results, pseudoupdates coerce the desired states 10
known values. Figure 4 demonstrates the systematic odometry
error filler converges on the simulated scale factors using
true robot data (GPS, gyroscope, and odometry). The final
estimated values for lefvight ticks per meter and track width
are shown in Table I. The odometry scale factor errors are
‘within the bounds of uncertainty for each state after 40 seconds
of processing, After allowing systematic odometry parameter
states to converge, estimated wheel slip experiences RMS error
(of 3.3 cm/s and 3.6 ems for left and right wheels respectively.
B. Snowplow Competition 1/27/2013
In this collection, CWRU Cutter runs autonomously in
the 2013 ION Autonomous Snowplow Competition, Postpro-
cessing filters non-systematic errors in order to demonstrate
successful wheel slip estimation, For a challenging wheel
slip environment such as plowing snow, estimating only non-
systematic errors is a realistic operating case; correct system-
atic odometry parameters are assumed to be known using @
1126Lem Wheel Odomeny Eror
Let Wes! Odemeny Enor
Eos £05
2 e 3
B of —___ijmpisraboiatseadtve 8 A=
ho a0 ao aS 08 ae 30 3a a0
Tinga Times)
Right neo! Soinety ror Fight nee! Odomety Err
1
Eos Eos]
2 2
Bo} pnp go
04 os 5
0 20 40 CDT a aoa SC
Time) Time(s)
Fig 5. Odometry whee! velocity enor duting a CWRU Cuter dataset on a Fg. 6. Odomctry wheel velociy enor ding the 2013 TON Autonomous
assy el
priori estimation
Results show approximately 60 seconds of particularly dra-
satic whee! slips, during which the snowplow robot repeatedly
pushes into a pile of snow without success. Figure 6 shows
estimated wheel slip during the collection. To compare filter
zesults between EKF output with and without odometry esti-
ration, Figure 7 shows position error between the projected
GPS position and the measured GPS positon.
“The EKF with odometry error estimation remains converged
fn the GPS position throughout whee! slip faults. Figure 6 dis
plays the estimated wheel behavior at each timestep. Inchuding
wheel velocity error states for this collection highlights two
practical benefits of using an odometry estimation EKF: 1)
Even with a precise GPS, unhandled odometry errors may
cause the filer (o diverge beyond the bounds of uncertainty
2) Using error estimation, the robot has a more comprehen-
sive view of its physical behavior and may now act on the
information to execute better driving contel
VI. MonTE Carto Resutts
‘A drawback of implementing the velocity-augmented EKF
{s that simultaneous estimation of velocity and edomety error
requires sufficient observability of robot velocity using sensors
other than wheel rotation (¢.g., position sensors, angular rate
sensors, etc). To quantify the sensor precision required to
successfuly estimate odometry errors, Monte-Carlo simula-
tions test a set of possible robot measurements with various
precisions to determine configurations which allow position,
velocity, and odometry errors to converge. The sensors tested,
in the Monte-Carlo simulations here are:
1) Raw position measurements (¢.g., GPS)
2) Angular velocity measurements (e-g., gyroscope)
3) Supplemental velocity measurements (e.g., visual odon
tty provides both forward and angular velocity)
4) Range measurements for multiateration
Stowplow Coapestion|
__Intaarsve Dstance tna ott Sate an PS aon
“0 20)
ig. 7. EKF position deviation witwithout wheel veloiy erat estimation
Position measurements and velocity measurements are already
‘mainstream robot measurements for both indoor and outdoor
‘mobile robots. Improving technology in the field of RF range
‘measurements may yield reseatch-oriented and commercially
oriented local positioning systems in the near future. A 2010
prototype ranging system, for example, demonstrates standard
deviation as low as 2.5 cm in a benign line-of-sight environ-
‘ment [15] {16}
In the Monte-Carlo tests, measurement standard deviation
is distributed uniformly throughout the desired range. EKF
system noise is generated randomly. For each measurement
setting, we run 50 randomly-generated system noise values.
‘To quantify results, we find the median RMS erzor for each
of the systematic wheel velocity parameter states
A. Configuration 1: GPS and Gyroscope
‘The first configuration uses GPS (position measurements)
and gyroscope (angular Velocity measurements), similar to the
127Fig. 8. Monte Calo Simulation Rests, Configuration 1
CWRU Cutter onboard sensors, Measurement rate and noise
levels are chosen to reflect the CWRU Cotter capabilities in an
‘optimistic case and also to test EKF capability while relaxing
sensor precision. Table I shows tested sensor precision. GPS
is simulated with a lever arm offset of 0.45 meters.
Figure 8 shows results as a function of both position
measurement and angular velocity measurement standard de-
viation, A summary of results from the simulation:
+ The track width state appears sensitive to gyroscope
precision, Track width seriously degrades once gyroscope
standard deviation increases above approximately 0.05
rads
+ The ticks per meter states do not diverge with increasing
gyroscope noise. A possible explanation is that absolute
position measurements help constrain forward velocity
+ As GPS standard deviation degrades from 0.05 m to LS
im, ticks per meter estimation degrades by approximately
a factor of two.
Throughout all tested settings in Configuration 1, the ticks
per meter RMS error remains below approximately 5-10% of
the true state, Because ticks per meter and non-systematic
wheel slip filtering are closely related in performance, we
also expect similar results estimating non-systematic odometry
cxtor states.
TABLE I.
Mowre-Canio Sixes ation PARAMETERS, CONFIGURATION 1
Postion Tay
Angular Vel fas)
B. Configuration 2: GPS and Visual Odometry
‘The second configuration uses position measurements
(GPS) and forward/angular velocity measurements (visual
odometry), External forward and angular velocity measure-
ments are simulated at § Hz, Maximom and minimum noise
levels for forward and angular velocity are relatively lov,
Which reflects a more precise velocity measurement than
fa gyroscope. Table IIT shows tested sensor precision and
‘measurement rate
Fig. 9. Monte Calo Simblation Results, Confguston 2
Figure 9 shows results as a function of both position
‘measurement precision and velocity measurement precision,
Ticks per meter results are clamped to the maximum view.
High noise settings cause the EKF to diverge at extents.
+ Odometry errors are dominated by velocity measurement
precision, GPS precision has little to no impact on the
chosen states
+ Track width errors are significantly lower compared to
Configuration 1
+ Ticks per meter errors ate also lower than in Configura-
tion 1 as long as velocity standard deviation is less than
0.2 ays and 0.2 rads for forward and angular velocity,
respectively
Overall, wheel odometry error estimation is greatly improved
by using a precise supplemental measurement of forward and
angular velocity, even with a measurement rate as low as 5
Hy,
MONTE CARLO SIMULATION PARAMETERS, CONFOURATION 2
Trae
Fwd, Angular Vel mis nds) Sot OS
C. Configuration 3: Range Measurements and Gyroscope
‘The final configuration uses ranging measurements and
angular velocity measurements, Ranging measurements are
tweated here as a GPS replacement. Three “beacons” with
known locations are placed around the simulated wack. Three
new measurements are generated every 20 Hz; one range
‘measurement to cach beacon. Range precision is chosen to
reflect state-of-the-art RF ranging capabilities, which typically
fall somewhere between 1 cm and 2 m standard deviation [16]
‘Table TV shows tested sensor precision, Range measurements
are generated assuming zero lever arm offset from the robot
origin,
Figure 10 shows results as a function of both ranging
‘measurements and velocity measurements. Overall, ranging
‘measurements provide similar results as GPS (Configuration
1128os = nS pe
‘Range at enti mee Oa a
Fig. 10, Monte Carlo Simmltion Rests, Consiguttion 3
1), The state estimates are slightly improved— this is ikely
due to the higher measurement rate of a local position system
vs GPS.
Mow Te-CARL0 SIMULATION PARAMSTERS, CORFGURATION 3
i
Range a
Angus Velicidsy 250010
VIL. Conciuston
Both whee! slips and systematic odometry errors can be esti-
mated for a differential drive mobile robot using an extended
Kalman filler with augmented robot velocity and odometry
certor states. This work builds on a previous filter design [10]
by adding systematic odometry error estimation to the EKE.
EKF pseudoupdates may enforce sequential systematic and
non-systematic odometry error estimation to allow all states
to converge. The filter is demonstrated both in simulation
and using actual data from the CWRU Cutter autonomous
lawnmower/snowplow robot, After a 40 second collection
using CWRU Cutter postprocessed sensor data with faulted
systematic odometry parameters, the estimated ticks per meter
and track width scale factors converge within 1% of the true
values.
‘Monte-Carlo tests reveal insights regarding the impact of
sensor precision on systematic odometry error estimation. As
rule of thumb, a GPS precision improvement from 1.5 m to
0.05 m results in approximately a factor of two improvement
in forward velocity odometty estimation. Given sufficiently
precise velocity measurements, sensitivity to absolute position
measurements may be reduced. A high-precision supplemental
velocity measurement (e.g., gyroscope or visual odometry) is
best suited for correctly estimating wheel odometry errors
ACKNOWLEDEMED
‘The author would like to thank the CWRU Cutter team for
their dedication and contsibutions to the robot platform used
in this research. Also, special thanks to the project sponsor
MTD, Inc. for supporting the CWRU Cutter lawnmower for
nearly one decade, helping students learn engineering through
hands-on experience.
REFERENCES
1) 8, Toran, W. Bangad, and D. Fox, Probate Roboce. Insligent
robots and autonomous agens, The MIT Press, Aug. 2005
(2) J Borenstein aud Feng, "Unbmarke A benchmark test for measuring
domeuy errors in mobile robot 1995,
(3) T Abbi, M. Ad and W. Almed, *Meautement and comection
of astemiie odomcty sors cased by Kinematics inpefectons in
tmobile robots” in SICELICASE, 2008. Inernaional lint Conference,
pp. 2073-2078, 2006,
4] KS, Chong and I, Kleeman, “Accurate odometry and ero modelling
for a mobil rbot” in Robuies and Audamation, 1997. Proceedings
1997 IEEE Intemational Confrence on. vol. 9p. 2783-2788 vol
locahzation and odomety caibrton for mobile robo” ia Ineligent
Robots and Satems, 200% (ROS 2003). Procedings. 2008 IEBERS?
Inerational Conference on, vl. 2. pp. 1499-1804 val 2, 2003,
(6) D. Caltbiano, G- Muscat, and FRws0, “Localization and Sele
Calton of Robot for Valeano Exploration,” a International Com
Jerence om Robotics and Automation, vo. 1, pp. S85-391, 2008
man encoder tle” International Conference om Intelligent Ratt
fand Systems, vol 1 pp. 127-134, 1994
8) DIM Heimick, SL Rounliois, ¥.Cheag. D. S. Clouse. M. Bae
sacha, and LH. Mathes, "Slig-eompentated pu following for
Planetary exploration rovers” ddaneed Robotics, vel. 20, 2008
nd odomeary sl elation for mobile abot" Auton Robt, vol. 22
0.1 pp. 75-85, 2007,
10) E. 1. Kreinar, “Filer-Based Slip Detection for a Complete-Coverage
Robot! Maver’ thesis, Case Westra Reserve Universi 2013.
11) A. Gelb, Applied optimal esumation. MET Press, 1974
12) FE Kiiy and M. Buchles “Three extended Kalan Ser fr mobile
robot localization,” 2002
15] P Bootifat and G. Garcia, “A muliseasor localization algorithm for
mobile robots and i realtime experimental validation” ia Int Conf
fn Robotice and Automation, 1996, vl. 2. pp. 1395-140 vol2. 1996
1M) C. Wang, ‘Location estimation and neeriaty analyis fr mobile
robots In Con on Robotics and Automation 1988, pp 1231-1235,
15] D.W. A. Tylor, W-7 Pastner, and B, D. Farnsworth, ‘Preison
ranging 2s an aid to integrate navigation systems” in Proceeds of|
‘he 25d Intemational Technical Meeting of The Sele Dssin of the
Insite of Navigation (ON GNSS 2010), yp. 2S08-2512, September
20,
16) B.D. Faraoworth and D.W. A. Taylor, “High precision narow-band x
ranging” in Proceeding of the 2010 International Technol Meeting of
The Intute of Sovigation, pp. VSI-195, Jay 2010,
1129