1.09k likes | 1.1k Vues
Localization. Vinod Kulathumani West Virginia University. Localization. Localization of a node refers to the problem of identifying its spatial co-ordinates in some co-ordinate system How do nodes discover their geographic positions in 2D or 3D space?
E N D
Localization Vinod Kulathumani West Virginia University
Localization • Localization of a node refers to the problem of identifying its spatial co-ordinates in some co-ordinate system • How do nodes discover their geographic positions in 2D or 3D space? • Model: static and mobile wireless sensor networks
Location Matters • Sensor Net Applications • Environment monitoring • Event tracking • Smart environment • Geographic routing protocols • GeoCast, GPSR, LAR, GAF, GEAR
Outline • Range-based localization • Time of arrival (GPS) • Time difference of arrival (Acoustic) • Angle of arrival • RADAR • Radio interferometric • Doppler shift • Converting estimated range into actual network position • Range-free localization • Centroid • DV-HOP • MDS-MAP • APIT • Localization in Mobile sensor networks
Range-based localization Distances between nodes to nodes/anchors measured wirelessly • TOA (Time of Arrival ) • GPS • TDOA (Time Difference of Arrival) • Cricket • AOA (Angle of Arrival ) • APS • RSSI (Receive Signal Strength Indicator) • RADAR • Radio interferometric • Doppler shift
Time of arrival (TOA) • Example: GPS • Uses a satellite constellation of at least 24 satellites with atomic clocks • Satellites broadcast precise time • Estimate distance to satellite using signal TOA • Trilateration B. H. Wellenhoff, H. Lichtenegger and J. Collins, Global Positioning System: Theory and Practice. Fourth Edition, Springer Verlag, 1997
Sound based TdoA Because the speed of sound is much slower (approximately 331.4m/s) than radio, it is easier to be applied in sensor network. Some hurdles are: • Line of sight path must exist between sender and receiver. • Mono-direction. • Short range.
Cricket • Intended for indoors use where GPS don't work • It can provide distance ranging and positioning precision of between 1 and 3 cm • Active beacons and passive listeners • http://cricket.csail.mit.edu/#technology
Angle of arrival (AOA) • Idea: Use antenna array to measure direction of neighbors • Special landmarks have compass + GPS, broadcast location and bearing • Flood beacons, update bearing along the way • Once bearing of three landmarks is known,calculate position "Medusa" mote Dragos Niculescu and Badri Nath. Ad Hoc Positioning System (APS) Using AoA, IEEE InfoCom 2003
Determining angles • Directional antennas • On the node • Mechanically rotating or electrically “steerable” • On several access points • Rotating at different offsets • Time between beacons allows to compute angles
RADAR • Bahl: MS research • Offline calibration: • Tabulate <location, RSSI> to construct radio map • Real-time location & tracking: • Extract RSSI from base station beacons • Find table entry best matching the measurement
Estimating distances – RSSI • Received Signal Strength Indicator • Send out signal of known strength, use received signal strength and path loss coefficient to estimate distance • Problem: Highly error-prone process – Shown: PDF for a fixed RSSI PDF PDF Distance Signal strength Distance
Problems with RSSI • Sensors have wireless transceivers anyway, so why not just use the RSSI to estimate distances? • Problem: Irregular signal propagation characteristics (fading, interference, multi-path etc.) Graph from Bahl, Padmadabhan: RADAR: An In-Building RF-Based User Location and Tracking System
Radio Interferometric Ranging (RIPS) RIPS: a novel ranging technique that measures distance differences utilizing interfering radio signals φCD= (dAD-dBD+dBC-dAC)modλ Interference: superposition of two or more waves resulting in a new wave pattern q-range
C D A B B Tracking with RIPS We use RIPS because of its high accuracy (cm), long range (200m), and low computation and low power requirements Theory for Tracking: • radio-interferometric range, or q-range involves 4 nodes A, B, C and D: qABCD = dAD-dBD+dBC-dAC • in tracking, we can assume that 3 nodes are anchors, thus we define t-range tACD tACD= dAD-dAC =qABCD+dBD-dBC (qABCD is measured,dBD anddBC are given) • the new equation defines a hyperbola in 2D • note that C,D are receivers t-range q-range hyperbola
φ1CD = qABCDmodλ1 ... φnCD =qABCDmodλn ε1+ φ1CD = qABCDmodλ1 ... εn+ φnCD =qABCDmodλn Tracking with RIPS Theory for Tracking: • RIPS measurement constrains the location of the target to a hyperbola • if the target is a transmitter, a pair of receivers defines unique hyperbola • e.g. using 12 anchors yields 55 hyperbolae from one measurement Mobility Related and Other Ranging Errors: • an artefact of RIPS method is that phase offsets at multiple wavelengths need to be measured • qABCD is the solution of a system of equations Multipath, Measurement Errors:φiCDare not measured accurately, errors are non-Gaussian Mobility:qABCD changes as the target moves Thus solution qABCD minimizes error terms ε1...εn
Tracking with RIPS Localization with Non-Gaussian Ranging Errors • ranging does not return a single q-range qABCD, but a set of q-ranges SABCD, one of them being the true range with high probability • resulting ambiguity needs to be resolved by the localization algorithm Disambiguation: • the true hyperbolae intersect at a single point • improbable that a significant number of the false hyperbolae intersect at a single point • localization algorithm simply finds a region which gets intersected by a large number of hyperbolas refined search
Overview of our Tracking Application • Sensor nodes: • XSM motes • weather protected Mica2 • 7.3 MHz CPU, 4kB RAM, 38kbps radio • TinyOS • PC application: • regular laptop • 1.5 GHz CPU, 512MB RAM • java application calculates target location • target’s location and track are displayed in Google Earth
Evaluation – Vanderbilt stadium • we had Vanderbilt football stadium access • placed 6 anchors on the field (tripods), and 6 anchors in the stands • covered an area of approximately 80m x 90m
Evaluation – Google Earth • we modelled Vanderbilt stadium in Google Earth • we were showing target location and track in real-time • large red balloon is the target, small red balloons are anchor nodes
Evaluation – Results • Results from our test runs: • 148 datapoints • 37cm average and 1.5m maximum 2D error (61cm real error) • target speed up to 2m/s • 2.5 – 3 sec refresh rate
Tracking Mobile Nodes Using RF Doppler Shifts Branislav Kusy Computer Science Department Stanford University • A novel tracking algorithm that utilizes RF Doppler shifts • A technique that allows us to measure RF Doppler shifts using low cost hardware • Mica2: 8MHz CPU and 9kHz sampling rate
Utilizing doppler effect • Single receiver allows us to measure relative speed. • Multiple receivers allow us to calculate location and velocity
f’ = f + Δf Δf = - v / λf v is relative speed of source and receiver λfis wavelength of the transmitted signal Doppler Effect • Assume a mobile source transmits a signal with frequency f, and f’ is the frequency of received signal source Jose Wudka, physics.ucr.edu
Can we Measure Doppler Shifts? Intriguing option: if we can utilize radio signals, no extra HW is required Solution: radio interfereometry
430MHz A 430MHz+300Hz 300Hz Measuring Doppler shift We use radio interferometry to measure Doppler frequency shifts with 0.21 Hz accuracy. • 2 nodes T, A transmit sine waves @430 MHz • fT, fA • Node Si receives interference signal (in stationary case) • 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) T Si + Δfi,T Beat frequency is estimated using the RSSI signal.
f4 = fT – fA + Δf4 = fT – fA + v4/λT Non-linear system of equations! Formalization We want to calculate both location and velocity of node T from the measured Doppler shifts. Unknowns: • Location, velocity of T, and fT-fA x=(x,y,vx,vy,f^) Knowns (constraints): • Locations (xi,yi) of nodes Si • Doppler shifted frequencies fi c=(f1,…,fn) Function H(x)=c:
Experiment: • 1 mobile transmitter • 8 nodes measure fi • Figure shows objective function for fixed (x,y) coordinates Tracking as Optimization Problem • Non-linear Least Squares (NLS) • Minimize objective function ||H(x) – c|| • What’s the effect of measurement errors?
Experiment: • tracked node moves on a line and then turns • KF requires 6 rounds to converge back. Improving Accuracy • State Estimation: Kalman Filter • Measurement error is Gaussian • Model dynamics of the tracked node (constant speed) • Accuracy improves, but maneuvers are a problem
Resolving EKF Problems • Combine Least Squares and Kalman Filter • Run standard KF algorithm • Detect maneuvers of the tracked node • Update KF state with NLS solution • Dilemma: how much to trust our measurements
Calculate location and velocity using Kalman filter. Extended Kalman filter Location & Velocity Maneuver detection Non-linear least squares Run a simple maneuver detection algorithm. Yes No NLS Location & Velocity Location & Velocity If maneuver is detected, calculate NLS solution and update EKF state. Update EKF Show location on the screen. Updated Location & Velocity Tracking Algorithm Infrastructure nodes record Doppler shifted beat frequency. Doppler shifted frequencies
Experimental Evaluation • Vanderbilt football stadium • 50 x 30 m area • 9 infrastructure XSM nodes • 1 XSM mote tracked • position fix in 1.5 seconds Non-maneuvering case 32
Experimental Evaluation • Vanderbilt football stadium • 50 x 30 m area • 9 infrastructure XSM nodes • 1 XSM mote tracked • position fix in 1.5 seconds Maneuvering case Only some of the tracks are shown for clarity.
From ranging to self-localization • Ranging can be wrt anchors • Actual location coordinates received directly • Ranging can be amongst non-anchors • A relative location can be obtained • Can be done centralized or distributed • Consider a centralized scheme [Sensys 2004, Moore et. Al.] • If ranging is precise – rigid localization can be done • If ranging is imprecise • Flip ambiguities can arise • Avoid this using robust quadrilaterals
Trilateration without noise • If three anchors are not on the same line, trilateration with accurate distance measurements gives a unique location
Trilateration with noise • There can be flip ambiguity
Use robust quads • Four nodes with fixed pair wise distances • Smallest rigid graph that can be formed
Robustness • If error is bounded, there can be no flips
Robustness • If error is bounded, there can be no flips
Connecting quads • Robust quads that share 3 nodes can be merged
Summary of steps: step 1 • Each node x gets the distance measurements between each pair of 1-hop neighbors. • Identify the set of robust quadrilaterals. • Merge the quads if they share 3 nodes. • Estimate the positions of as many nodes as possible by iterative trilateration. • Note: Local coordinate system rooted at x.
Step 2: global alignment • Align neighboring local coordinates systems. • Find the set of nodes in common between two clusters. • Compute the translation, rotation that best align them.
Range-free localization Range-based localization: • Required Expensive hardware • Limited working range ( Dense anchor requirement) Range-free localization: • Simple hardware • Less accuracy
Range-free: Centroid • Idea: Do not use any ranging at all, simply deploy enough beacons • Anchors periodically broadcast their location • Localization: • Listen for beacons • Average locations of all anchors in range • Result is location estimate • Good anchor placement is crucial! Anchors Nirupama Bulusu, John Heidemann and Deborah Estrin. Density Adaptive Beacon Placement, Proceedings of the 21st IEEE ICDCS, 2001
Hop-Count Techniques r 4 DV-HOP [Niculescu & Nath, 2003] Amorphous [Nagpal et. al, 2003] 1 2 7 3 1 4 3 5 2 4 8 3 3 6 4 4 5 Works well with a few, well-located seeds and regular, static node distribution. Works poorly if nodes move or are unevenly distributed.
Obtaining a Coordinate System from Distance Measurements: Introduction to MDS • MDS maps objects from a high-dimensional space to a • low-dimensional space, • while preserving distances between objects. • similarity between objectscoordinates of points • Classical metric MDS: • The simplest MDS: the proximities are treated as distances in an Euclidean space • Optimality: LSE sense. Exact reconstruction if the proximity data are from an Euclidean space • Efficiency: singular value decomposition, O(n3)
LOCALIZATION USING MDS-MAP (Shang, et al., Mobihoc’03) • The basic MDS-MAP algorithm: • Given connectivity or local distance measurement, compute shortest paths between all pairs of nodes. • Apply multidimentional scaling (MDS) to construct a relative map containing the positions of nodes in a local coordinate system. • Given sufficient anchors (nodes with known positions), e.g, 3 for 2-D or 4 for 3-D networks, transform the relative map and determine the absolute the positions of the nodes. • It works for any n-dimensional networks, e.g., 2-D or 3-D.
Applying Classical MDS • Create a proximity matrix of distances D • Convert into a double-centered matrix B • Take the Singular Value Decomposition of B • Compute the coordinate matrix X (2D coordinates will be in the first 2 columns) NxN matrix of 1s NxN identity matrix NxN matrix of 1s
Example: Localization Using Multidimensional Scaling (MDS) (Yi Shang et. al) • The basic MDS-MAP algorithm: • Compute shortest paths between all pairs of nodes. • Apply classical MDS and use its result to construct a relative map. • Given sufficient anchor nodes, transform the relative map to an absolute map.