Transcript 05cs321

Tracking Mobile Nodes
Using RF Doppler Shifts
Branislav Kusy
Akos Ledeczi, Xenofon Koutsoukos
Computer Science Department
Stanford University
Institute for Software Integrated Systems
Vanderbilt University
Published in Sensys 2007, Best paper Award
Presenter: ahey
• Problem Definition
• Mechanism
• Doppler Effect
• Tracking as optimization problem
Experimental Evaluation
Simulation Evaluation
Tracking Mobile Objects
Problem definition: keep track of location and velocity
of “cooperating” moving objects continuously over
Doppler Effect
• Assume a mobile source transmits a signal with
frequency f, and f’ is the frequency of received signal
f’ = f + Δf
Δf = - v / λf
v is relative speed of
source and receiver
Jose Wudka,
λf is wavelength of the
transmitted signal
Utilizing Doppler Effect
• Single receiver allows us to measure relative speed.
• Given frequency(wavelength) of transmitted signal
• f = c/λf we can compute the relative speed v by measuring the
received frequency f’
• If T is the traced node, Si is the anchor node, the above method
can only determine to the relative speed v (projecting the
velocity vector v on the TSi line), no bearings
• Multiple receivers allow us to calculate location and
velocity of the tracked node.
• By measuring sufficiently many relative speeds
Can we Measure Doppler Shifts?
Acoustic signals
Typ. freq
Dopp. Shift (@ 1 m/s)
1-5 kHz
3-15 Hz
Radio signals (mica2) 433 MHz
Radio signals (telos)
2.4 GHz
1.3 Hz
8 Hz
Problems with resource constrained hardware:
• Not adequate for frequency domain analysis
(takes 15 seconds to calculate 512-point FFT
using 8MHz processor)
Can we Measure Doppler Shifts?
• Time domain analysis requires relatively small
signal frequency due to sampling rate limitations.
• Doppler shift is proportional to frequency of
measured signal. It cannot be too small for
enough accuracy.
• Solution: Radio Interferometry
Measuring Doppler shift
We use radio interferometry to measure Doppler
frequency shifts with 0.21 Hz accuracy.
300Hz + Δfi,T
• 2 nodes T, A transmit sine waves
@430 MHz
fT, fA (let fT> fA)
• Node Si receives interference
signal (in stationary case)
Signal freq: fs = (fT + fA)/2
Envelope freq: fi = fT – fA
• T is moving, fi is Doppler shifted
fi = fT – fA + Δfi,T
(one problem: we don’t know the value
fT –fA accurately)
Beat frequency is estimated using the RSSI signal.
We want to calculate location
and velocity of node T from the
measured Doppler shifts.
• Location(x,y) of moving object T
• Velocity(vx,vy) of T
• f^=fT -fA
define a parameter vector
Knowns (constraints):
• Locations (xi,yi) of nodes Si
• Doppler shifted frequencies fi
define an observation vector
c=(f1,…,fn) T
Function H(x)=c:
f4 = fT – fA + Δf4
= fT – fA + v4/λT
Tracking as Optimization Problem
• Tracked node T with velocity v transmits a signal.
• Sensor Si measures the Doppler shift of the signal
which depends on vi, the relative speed of T and Si.
fi = Hi(x) = f^ – vi /λt
Non-linear system of equations!
Tracking as Optimization Problem
Non-linear Least Squares (NLS)
• Minimize objective function ||H(x) – c||
• Start with initial approximation x0 and iteratively update this x
until it converges to a local minimum of an objective function
• 1 mobile transmitter
• 8 nodes measure fi
Figure shows objective
function for fixed (x,y)
Tracking as Optimization Problem
Constrained Non-linear Least Squares (CNLS)
• In tracking, constrain the area where the tracked node located
• Modify objective function by adding a barrier function,
introduce positive penalty outside region of interest
Problems with NLS
• Depending on starting point x0 and measurement errors that
corrupts c, it may fail.
• Multiple local minima exist, need Constrained NLS
• Global minimum is still not accurate (as large as 5.6m location
State Estimation:
Extended Kalman Filter
Extended Kalman Filter
• Noise corrupted observations degrade performance of CNLS
• Assume measurement error is Gaussian
• Model dynamics of the tracked node (constant speed)
• Update state based on new observations
• KF prediction phase:
• EKF update phase:
:predicted new state:
:previous state:
F models system dynamics
(state transition matrix)
Q : process noise covariance
P : error covariance matrix
Kk: kalman gain
R : measurement noise
• Accuracy improves, but maneuvers are a problem
Improving Accuracy
• tracked node moves on
a line and then turns
• KF requires 6 rounds to
converge back.
Resolving EKF Problems
Combine Least Squares and Kalman Filter
• Run standard KF algorithm
• Detect maneuvers of the tracked node
• Update KF state with CNLS solution
Tracking Algorithm
Infrastructure nodes record Doppler
shifted beat frequency.
Doppler shifted frequencies
Calculate location and velocity using
Kalman filter.
Kalman filter
Location & Velocity
& Velocity
Run a simple maneuver detection
algorithm. (Since velocity error is
least squares
small, maneuver can be detected by
speed estimate)
NLS Location
& Velocity
Update EKF
Updated Location
& Velocity
If maneuver is detected, calculate
NLS solution and update EKF state.
Show location on the screen.
• Platform
• TinyOS
• Mica2 mote (8MHz CPU, CC1000 Chipcon radio)
• Create Interference Signal
• f^=fT –fA is unknown due to 4kHz errors at 400MHz
• Measuring Doppler Shiftsl
• RSSI circuit applies a low pass filter, only beat frequency
(envelope of interference signal) is visible in RSSI signal
• Apply a moving average filter to smooth incoming signal
• Find all peaks in the filtered signal
Experimental Evaluation
Vanderbilt football stadium
• 50 x 30 m area
• 9 infrastructure ExScal nodes
• 1 ExScal mote tracked
• position fix in 1.5 seconds
• ExScal:Mica2 compatible
motes enclosed in a
weather-proof packaging
Non-maneuvering case
Experimental Evaluation
Vanderbilt football stadium
• 50 x 30 m area
• 9 infrastructure ExScal nodes
• 1 ExScal mote tracked
• position fix in 1.5 seconds
Only some of the tracks are shown for clarity.
Maneuvering case
Experimental Evaluation
• Non-maneuver case : error is normally distributed around
mean error
• Maneuver case : frequent large errors due to Kalman filter
diverging from the ground truth
Simulation Evaluation
• Experimental evaluation is limited due to its complexity
and is also time consuming
• The parameters of the simulation engine are:
1. 2D coordinates of infrastructure nodes Si
2. the track of the mobile node (a set of time-stamped 2D
3. the wavelength λt of the transmitted signal
4. σm standard deviation of the measurement noise
5. σf standard deviation of the change of the interference
frequency (f) for consecutive measurements
6. the measurement update time tm
• For every measurement round, the location and the
velocity of tracked node is recalculated based on track
data, the relative speeds vi are calculated and
converted to the frequencies fi.
Simulation Evaluation
In general,
1.adding more receivers
2.limiting the maximum
speed of the tracked node
3.increasing the temporal
resolution of the collected
help to improve the
• Introduce a novel tracking algorithm that utilizes
Doppler shift measurements only
• Doppler shifts can be accurately measured using
radio interferometry
• Improve EKF performance in maneuvering case
• Evaluate the algorithm both experimentally and
in simulation