Sensor Data Fusion Using Kalman Filter: August 2000
Sensor Data Fusion Using Kalman Filter: August 2000
net/publication/3859405
CITATIONS READS
75 4,739
2 authors, including:
J. Z. Sasiadek
Carleton University
222 PUBLICATIONS 1,652 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Navigation and control of a space robot capturing moving target View project
All content following this page was uploaded by J. Z. Sasiadek on 09 April 2015.
Abstract - Autonomous Robots and Vehicles need variables on the vehicle. The examples of these sensors
accurate positioning and localization for their guidance, are encoders, gyroscopes, accelerometers and compasses.
navigation and control. Often, two or more different External sensors measure relationships between the robot
sensors are used to obtain reliable data useful for control and its environment, which can be natural or artificial
system. This paper presents the data fusion system for objects. The examples of external sensors are sonar
mobile robot navigation. Odometry and sonar signals are sensor, radars and laser range finders.
fused using Extended Kalman Filter (EKF) and Adaptive Both of these sensors have advantages and
Fuzzy Logic System (AFLS). The signals used during disadvantages. For short period of time, measurements
navigation cannot be always considered as white noise using internal sensors are quite accurate. However, for
signals. On the other hand, colored signals will cause the long-term estimation, the measurements usually produce a
EKF to diverge. The AFLS was used to adapt the gain and drift. On the contrary, external sensors do not produce the
therefore prevent the Kalman filter divergence. The fused drift, however, the measurements from these sensors are
signal is more accurate than any of the original signals usually not always available [7].
considered separately. The enhanced, more accurate To get the optimal result, both sensors are usually
signal is used to guide and navigate the robot. combined. Because the results of both measurements
contain errors, a special method has to be used to combine
Keywords: Autonomous Robots, Guidance, Navigation the results. The commonly used method is fusing those
and Control, Sensor fusion, Kalman Filter, Adaptive two measurements so it will produce the best desire
Fuzzy Logic System estimation by using the Extended Kalman Filter (EKF)
[6], [8], [9], and [10]. Internal sensors can be used to
estimate the position of the vehicle during a particular
period. External sensors are then implemented to correct
Introduction the errors that come from internal sensors.
To follow the designed path, an autonomous vehicle The type of internal sensors that are widely used in
has to be equipped with three systems: navigation, navigation is odometry sensor. It is mounted on the
guidance, and control system [1], [2]. Navigation system robot’s driving wheels and register angular movements of
is used to provide estimation of position and velocity of the wheels. These angular movements are then translated
the vehicle. Guidance system is used to determine the into linear movements. This process has limited accuracy,
optimal trajectory from a current position and velocity to a for example, if slip has occurred on the wheel, the
desired position and velocity. Control system is used to odometry would register the movement, but in fact, the
determine the commands for vehicle’s actuators to drive vehicle may stay on its position. In the long period, the
the actual velocity and attitude of the vehicle to the value incremental motion of odometry will cause the
commanded by the guidance scheme. accumulative error in positioning process. On the other
There are two basic position-estimation methods hand, the advantage of using odometry is that the
applied in navigation system, i.e. absolute and relative measurement signal is always available.
positioning. [3], [4], [5], [6]. Absolute positioning is based Beside the typical drift error in odometry, other
on navigation beacons, active or passive landmark, map errors can also occur in odometry sensors [11]. One
matching, or satellite-based navigation signal, where important error is systematic error. This error will cause
absolute positioning sensors interact with dynamic the bias in one direction of the movement of the vehicle,
environment. Relative positioning is usually based on so the final position of the vehicle will deviate from the
odometry sensors, or inertial sensors designed path. One method used to reduce this error is by
Internal and external sensors are usually used in conducting a benchmark experiment prior to regular
positioning problems. Internal sensors measure physical operation of the vehicle [3]. This experiment can find the
systematic error and, subsequently, this error is applied to πD n
correct the control system parameters. However, if the ∆S L , R = N L, R (1)
nC e
systematic errors occur frequently, this method may not be
sufficient. For example, if the vehicle uses elastic tires, the where
benchmarking process has to be performed each time the D n = nominal wheel diameter
unequal diameter occurs. It is beneficial if the error C e = encoder resolution
correction can be done in real time operation. n = gear ratio between the motor and drive wheel
Sonar sensor is one type of external sensor. It N = pulse increment shown by encoder.
measures absolute position of the vehicle based on pre-
defined environment. If the sonar sensor is implemented
on the vehicle with odometry sensor, it can be used to C’
correct the systematic error by fusing both measurements
B’
using EKF.
When using EKF to fuse the signal, it is widely A’
known that poorly designed mathematical model for the ∆S R
∆ S L ∆S
EKF will lead to the divergence. If the plant parameters
are subject to perturbations and dynamics of the system
are too complex to be characterized by an explicit
mathematical model, an adaptive scheme is needed.
∆θ
The adaptation scheme that usually used is based on O A B C
fuzzy logic. Many methods have been implemented using R d
this logic. Two recent paper that explain about this
method are the paper presented by Jetto [6] and Sasiadek Figure 1. Two-wheeled vehicle model.
[10]. Jetto used Fuzzy Logic Adapted Kalman Filter
(FLAKF) to prevent the filter from divergence when If the sampling interval of encoder is T , the linear
fusing measurement from odometry and sonar sensors. In and angular velocity of the incremental movement of the
this method, the ratio of innovation and covariance of vehicle can be shown as:
innovation is used as input to the fuzzy logic, and the
output is used to weight the process noise covariance in ∆S R + ∆S L
EKF. Sasiadek used exponential data weighting to prevent v= (2)
2T
the divergence. Mean value and covariance of innovation
are used as the input of the Fuzzy Logic Adaptive ∆S R − ∆S L
ω = (3)
Controller (FLAC). The output is then used to weight dT
process noise and measurement noise covariance in EKF. where d is the distance between the odometry encoder.
This FLAC is implemented on the flying vehicle If the sampling period is made to limit to zero, the
navigating in three-dimensional space. Both those kinematic model of this vehicle then can be described by
methods have shown improvement in the estimation of the the following equations:
vehicle position in comparison with the EKF only.
In this paper, the systematic error in odometry x (t ) = v(t ) cos θ (t ) (4)
sensor is corrected during real-time operation of the
vehicle by using measurements result from the sonar y (t ) = v(t ) sin θ (t ) (5)
sensor. EKF is applied to fuse those two signals to find the
best estimation of position. Adaptive Fuzzy Logic System θ(t ) = ω (t ) (6)
(AFLS) is used to prevent the filter from divergence. The If we denote the state variable of the vehicle as
model of vehicle used in this experiment is based on a x(t ) = [ x(t ) y (t ) θ (t )]T , and the vehicle control input
differential-drive. This type vehicle can be steered by
differentiating the wheels angular velocity. The objective as u(t ) = [v(t ) ω (t )]T , the kinematic model in Eqs. (4 -
of this paper is to develop an efficient method for signal 6) can be written in the form of stochastic differential
fusing to get accurate positioning. equation as:
x (t ) = f (x(t ), u (t )) + w (t ) (7)
Two-Wheeled Vehicle where w (t ) is a zero-mean Gaussian white noise with
The configuration of the two-wheeled vehicle is
covariance matrix Q(t ) , which represents the model
presented in Figure 1. This configuration has two opposed
drive wheels mounted on the left and right sides of the inaccuracies.
vehicle. The motion of the midpoint of the axis represents
the movement of the vehicle.
The incremental movement of the left and right
drive wheel can be formulated as:
Exponentially Weighted EKF y (x k , Π ) = [ x k yk θk d1k d 2k d nk ]T (20)
Linearizing Eq. (7), and making the sampling period where d nk is the measurement of sonar nth at time k.
is small enough, the equation of EKF can be found. By
There are many methods that can be implemented to
assuming that during this time sampling, the linear and
fuse the signals using EKF. Four methods are described
angular velocities are constant, and that the vehicle is
here. The first method is direct pre-filtering method,
following an arc path (see Wang [12]), then, the equations
which was presented by Green and Sasiadek [13]. In this
for Extended Kalman Filter can be expressed by:
method, both measurement signals are filtered prior of
x −k +1 = x k + B k u k (8) comparison process. The error of those signals is then
used to correct the measurement signal. The scheme of
Pk−+1 = A k Pk A Tk + Q k (9) this method is shown in Figure 2.
(α )
5m
1 1.02 1.1 1.2
Figure 9. MF of α
S G
Table 1. Rules table for AFLS
Innovation process mean value
α 5.15m
4.8m
0 1 2 3 4 5 6
x Position (meter)
7 8 9 10
References
[1] Gai, Eli (1996). Guidance, navigation, and control
Figure 11. Simulation experiment result using EKF with
from instrumentation to information management. Journal
only odometry measurement
of Guidance, Control, and Dynamics 19(1), 10-14.
Position of the vehicle [2] Kaminer, I., Pascoal, A., Hallberg, & E., Silvestre, C.
(1998). Trajectory tracking for autonomous vehicles: An
3
integrated approach to guidance and control. Journal of
2 Guidance, Control, and Dynamics 21(1), 29-38.
[3] Borenstein, J., & Feng, L. (1996). Measurement and
1 correction of systematic odometry errors in mobile robots.
y Position (meter)