"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Data fusion with kalman filtering
1. Sensor Data Fusion Using
Kalman Filters
Antonio Moran, Ph.D.
amoran@ieee.org
2. Kalman Filtering
Estimation of state variables of a system
from incomplete noisy measurements
Fusion of data from noisy sensors to improve
the estimation of the present value of state
variables of a system
3. Kalman Filtering
Given a System
x = A x + B u + w
.
y = Cx + n
where
x = nx1 state vector
y = mx1 measurement vector
w = nx1 process noise
system disturbance
n = mx1 measurement noise
Q = w covariance matrix
R = n covariance matrix
System
u
w
n
y
w and n are white gaussian
noises
5. Kalman Filtering
System
x = A x + B u + w
.
y = Cx + n
Kalman Filter (Estimator)
x = A x + B u + L (y – C x)
.
^^
w and n are not included. Their
present values are unknown.
L: filter gain. nxm matrix.
Filter gain L ensures that the estimation error e
converges to zero
lim e(t) 0
t ∞
e = x - x^
7. Kalman Filtering
Computing the Filter Gain L
x = A x + B u + L (y – C x)
.
^^
L = S CT
R-1
S is a positive matrix solution of the Riccati equation:
A S + SAT
- S CT
R-1
CT
S + Q = 0
Matrixes A, C, Q and R are known
Estimator:
8. Data Fusion Using Kalman Filter
Problem Formulation
Fuse the noisy signals of three sensors to
improve the estimate of a variable (temperature,
distance, position, etc.)
11. Sensor Data Fusion with Kalman Filter
Sensor 1
Sensor 2
Sensor 3
Sensor Data
Fusion with
Kalman Filter
Improved
Estimation of
Measured Variable
12. Kalman Filtering
System
x = A x + B u + w
.
y = Cx + n
x = w
.
y1 = x + n1
y2 = x + n2
y3 = x + n3
x = air temperature
Changes in temperature are
modeled as a gaussian process
Sensor 1
Sensor 2
Sensor 3
Noisy measurements
Determining matrixes:
A = 0 B = 0 C =
1
1
1
Q = 1.21 R =
0.64 0 0
0 0.64 0
0 0 0.64
13. Estimation Using One Sensor
The Kalman filter significantly reduces the noise
but does not eliminate the bias
First sensor with noise and bias
14. Estimation Using Two Sensors
Sensor fusion through Kalman filtering
significantly improves the estimation reducing
the effect of sensor noise and bias
First and Second sensors with noise and bias
15. Estimation Using Three Sensors
No significantly improvement with the third sensor
(respect to when using first and second sensors)
Three sensors. Third sensor only with noise
16. Estimation Error
Higher error when using only the first sensor with bias.
e = x - x^
Lower error when using two and three sensors.
17. Estimation Error
Mean Value Standard Deviation
e = x - x^
First Sensor
First and Second
Sensors
Three Sensors
-0.00035 0.082111
-0.00051 0.072695
-0.39896 0.097506
Higher estimation error when using only the first
sensor (noise and bias).
Estimation error significantly reduces with two and
three sensors. Bias is almost eliminated.
18. Estimator Performace for Non-
Gaussian Processes
The estimator performs well even if the process
is not gaussian.
Temperature changes behave as a uniform
(non-gaussian) process with zero mean
19. Conclusions
Sensor data fusion can be easily implemented using
Kalman filters.
For filter design, changes in temperature are modeled as a
gaussian process. However, the filter performs well even
when used in other probabilistic processes.
Sensor fusion through Kalman filtering significantly
improves the on-line estimation reducing the effect of
sensor noise and bias.
Research goes on for the simultaneous estimation of
several variables.