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 Outline • Problem Definition • Mechanism • Doppler Effect • Tracking as optimization problem • • • • Implementation Experimental Evaluation Simulation Evaluation Conclusion Tracking Mobile Objects Problem definition: keep track of location and velocity of “cooperating” moving objects continuously over time. 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 source Jose Wudka, physics.ucr.edu λ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. 430MHz+300Hz 430MHz A T Si 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. Tracking We want to calculate location and velocity of node T from the measured Doppler shifts. Unknowns: • Location(x,y) of moving object T • Velocity(vx,vy) of T • f^=fT -fA define a parameter vector x=(x,y,vx,vy,f^)T 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 Experiment: • 1 mobile transmitter • 8 nodes measure fi Figure shows objective function for fixed (x,y) coordinates 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 error) 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 5 6 4 3 1 2 Experiment: • 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. Extended Kalman filter Location & Velocity Maneuver detection Yes No Location & Velocity Run a simple maneuver detection Non-linear 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. Implementation • 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 17 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 18 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 19 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 20 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 points) 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. 21 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 data help to improve the accuracy. 22 Conclusions • 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