213-Localization

advertisement
LOCALIZATION
Distributed Embedded Systems
CS 213/Estrin/Winter 2002
Speaker: Lewis Girod
What is Localization

A mechanism for discovering
spatial relationships between
objects
Why is Localization Important?

Large scale embedded systems introduce many
fascinating and difficult problems…



This makes them much more difficult to use…
BUT it couples them to the physical world
Localization measures that coupling, giving raw
sensor readings a physical context




Temperature readings  temperature map
Asset tagging  asset tracking
“Smart spaces”  context dependent behavior
Sensor time series  coherent beamforming
Variety of Applications

Two applications:
Passive habitat monitoring:
Where is the bird?
What kind of bird is it?
Asset tracking:
Where is the projector?
Why is it leaving the room?
Variety of Application Requirements

Very different requirements!

Outdoor operation





Weather problems
Bird is not tagged
Birdcall is characteristic
but not exactly known
Accurate enough to
photograph bird
Infrastructure:


Several acoustic sensors,
with known relative
locations; coordination
with imaging systems
Indoor operation





Multipath problems
Projector is tagged
Signals from projector tag
can be engineered
Accurate enough to track
through building
Infrastructure:

Room-granularity tag
identification and
localization; coordination
with security infrastructure
Multidimensional Requirement Space









Granularity & Scale
Accuracy & Precision
Relative vs. Absolute Positioning
Dynamic vs. Static (Mobile vs. Fixed)
Cost & Form Factor
Infrastructure & Installation Cost
Communications Requirements
Environmental Sensitivity
Cooperative or Passive Target
Axes of Application Requirements

Granularity and scale of measurements:



Accuracy and precision:



How close is the answer to “ground truth” (accuracy)?
How consistent are the answers (precision)?
Relation to established coordinate system:


What is the smallest and largest measurable distance?
e.g. cm/50m (acoustics) vs. m/25000km (GPS)
GPS? Campus map? Building map?
Dynamics:

Refresh rate? Motion estimation?
Axes of Application Requirements

Cost:



Form factor:



Network topology: cluster head vs. local determination
What kind of coordination among nodes?
Environment:


Baseline of sensor array
Communications Requirements:


Node cost: Power? $? Time?
Infrastructure cost? Installation cost?
Indoor? Outdoor? On Mars?
Is the target known? Is it cooperating?
Returning to our two Applications…

Choice of mechanisms differs:
Passive habitat monitoring:
Minimize environ. interference
No two birds are alike
Asset tracking:
Controlled environment
We know exactly what tag is like
Variety of Localization Mechanisms

Very different mechanisms indicated!

Bird is not tagged




Passive detection of bird
presence
Birdcall is characteristic
but not exactly known
Bird does not have radio;
TDOA measurement
Passive target localization


Requires



Sophisticated detection
Coherent beamforming
Large data transfers
Projector is tagged




Projector might
know it had moved
Signals from projector tag
can be engineered
Tag can use radio signal to
enable TOF measurement
Cooperative Localization

Requires



Basic correlator
Simple triangulation
Minimal data transfers
Taxonomy of Localization Mechanisms

Active Localization


Cooperative Localization


The target cooperates with the system
Passive Localization


System sends signals to localize target
System deduces location from observation of
signals that are “already present”
Blind Localization

System deduces location of target without a priori
knowledge of its characteristics
Active Mechanisms

Non-cooperative



System emits signal, deduces target location
from distortions in signal returns
e.g. radar and reflective sonar systems
Cooperative Target



Target
Synchronization channel
Ranging channel
Target emits a signal with known characteristics;
system deduces location by detecting signal
e.g. ORL Active Bat, GALORE Panel, AHLoS
Cooperative Infrastructure


Elements of infrastructure emit signals; target
deduces location from detection of signals
e.g. GPS, MIT Cricket
Passive Mechanisms

Passive Target Localization



Signals normally emitted by the target are
detected (e.g. birdcall)
Several nodes detect candidate events and
cooperate to localize it by cross-correlation
Passive Self-Localization


Target
Synchronization channel
Ranging channel
A single node estimates distance to a set of
beacons (e.g. 802.11 bases in RADAR [Bahl
et al.], Ricochet in Bulusu et al.)
Blind Localization


Passive localization without a priori
knowledge of target characteristics
Acoustic “blind beamforming” (Yao et al.)
?
Active vs. Passive

Active techniques tend to work best



Signal is well characterized, can be engineered for noise
and interference rejection
Cooperative systems can synchronize with the target to
enable accurate time-of-flight estimation
Passive techniques


Detection quality depends on characterization of signal
Time difference of arrivals only; must surround target with
sensors or sensor clusters


TDOA requires precise knowledge of sensor positions
Blind techniques


Cross-correlation only; may increase communication cost
Tends to detect “loudest” event.. May not be noise immune
Building Localization Systems


Given a set of application requirements, how
do we build a system that meets them?
Outline:






Overview of a typical system design
A quick example
Ranging technologies
Coordinate system synthesis techniques
Spatial scalability
Recent results: the GALORE panel
Localization System Components

Generally speaking, what is involved with a
“localization system”?
Stitching/Merging
This step applies to distributed
construction of large-scale
coordinate systems
Filtering
Coordinate System
Synthesis
Coordinate System
Synthesis
Filtering
Filtering
Filtering
Filtering
Filtering
Filtering
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
This step estimates target
coordinates (and often other
parameters simultaneously)
Parameters might include:
•Range between nodes
•Angle between nodes
•Psuedorange to target (TDOA)
•Bearing to target (TDOA)
•Absolute orientation of node
•Absolute location of node (GPS)
Example of a Localization System

Unattended Ground Sensor and acoustic
localization system, developed at Sensoria Corp.
Each node has 4 speaker/
microphone pairs, arranged
along the circumference of the
enclosure. The node also has a
radio system and an orientation
sensor.
Microphone
Speaker
12 cm
System Architecture



Ranging between nodes based on detection of coded acoustic
signals, with radio synchronization to measure time of flight
Angle of arrival is determined through TDOA and is used to estimate
bearing, referenced from the absolute orientation sensor
An onboard temperature sensor is used to compensate for the effect
of environmental conditions on the speed of sound
System Architecture


Pairwise ranges and angles are transmitted to a cluster-head, where
a multilateration algorithm computes a consistent coordinate system
Cluster heads exchange their coordinate systems, which are then
stitched together into larger coordinate systems
Range,
Angular Data
Range,
Range,Angular
AngularData
Data
Multilat Engine
Merge Engine
Range,
Angular Data
Range,
Range,Angular
AngularData
Data
Multilat Engine
Merge Engine
Localization System Components

Sensing layer: Ranging, AOA, etc.
Stitching/Merging
This step applies to distributed
construction of large-scale
coordinate systems
Filtering
Coordinate System
Synthesis
Coordinate System
Synthesis
Filtering
Filtering
Filtering
Filtering
Filtering
Filtering
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
This step estimates target
coordinates (and often other
parameters simultaneously)
Parameters might include:
•Range between nodes
•Angle between nodes
•Psuedorange to target (TDOA)
•Bearing to target (TDOA)
•Absolute orientation of node
•Absolute location of node (GPS)
Active and Cooperative Ranging

Measurement of distance between two points

Acoustic



RF






Point-to-point time-of-flight, using RF synchronization
Narrowband (typ. ultrasound) vs. Wideband (typ. audible)
RSSI from multiple beacons
Transponder tags (rebroadcast on second frequency),
measure round-trip time-of-flight.
UWB ranging (averages many round trips)
Psuedoranges from phase offsets (GPS)
TDOA to find bearing, triangulation from multiple stations
Visible light

Stereo vision algorithms

Need not be cooperative, but cooperation simplifies the problem
Passive and Non-cooperative Ranging

Generally less accurate than active/cooperative

Acoustic



Reflective time-of-flight (SONAR)
Coherent beamforming (Yao et al.)
RF


Reflective time-of-flight (RADAR systems)
“Database” techniques



RADAR (Bahl et al.) looks up RSSI values in database
“RadioCamera” is a technique used in cellular infrastructure;
measures multipath signature observed at a base station
Visible light

Laser ranging systems


Commonly used in robotics; very accurate
Main disadvantage is directionality, no positive ID of target
Using RF for Ranging

Disadvantages of RF techniques


Measuring TOF requires fast clocks to achieve high
precision (c  1 ft/ns)
Building accurate, deterministic transponders is very
difficult



Temperature-dependence problems in timing of path from
receiver to transmitter
Systems based on relative phase offsets (e.g. GPS) require
very tight synchronization between transmitters
Ultrawide-band ranging for sensor nets?



Current research focus in RF community
Based on very short wideband pulses, measure RTT
May encounter licensing problems
RSSI…? Don’t Bother
RSSI is extremely problematic



Path loss characteristics depend on
environment (1/rn)
Shadowing depends on environment
Short-scale fading due to multipath
adds random high frequency
component with huge amplitude (3060dB) – very bad indoors


Mobile nodes might average out
fading.. But static nodes can be stuck
in a deep fade forever
Possible applications


Path loss
Shadowing
Fading
RSSI

Distance
Crude localization of mobile nodes
“Database” techniques (RADAR)
Ref. Rappaport, T, Wireless Communications
Principle and Practice, Prentice Hall, 1996.
Using Acoustics for Ranging

Key observation: Sound travels slowly!





Tight synchronization can easily be achieved using RF
signaling
Slow clocks are sufficient (v = 1 ft/ms)
With LOS, high accuracy can be achieved cheaply
Coherent beamforming can be achieved with low sample
rates
Disadvantages



Acoustic emitters are power-hungry (must move air)
Obstructions block sound completely  detector picks up
reflections
Existing ultrasound transducers are narrowband
Typical Time-of-Flight AR System


Radio channel is used to synchronize the sender
and receiver (or use a service like RBS!)
Coded acoustic signal is emitted at the sender and
detected at the emitter. TOF determined by
comparing arrival of RF and acoustic signals
Radio
Radio
CPU
CPU
Speaker
Microphone
Narrowband vs. Wideband

Narrowband technique: pulse train at f0





Works with tuned resonant ultrasound transducers
COTS parts implement detection (SONAR modules)
Crosstalk between nodes is a problem, introduces
significant coordination overhead to system design
Used in ORL Active Bat, MIT Cricket, UCLA AHLoS
Wideband technique: pseudonoise burst





Detection requires ~100M FLOPs, ~128K RAM
High accuracy, excellent interference rejection
30m range easily achieved over grass in outdoor environ.
Excellent crosstalk rejection; each xmitter uses diff. code
Used in GALORE Panel, Sensoria Ground Sensor
Wideband Acoustic Detection
Correlation Value
Ringing introduced by speaker
Arrival times at the four channels
Offset in Samples (~0.71 cm)
An Acoustic Ranging Error Model

A useful model for error in acoustic ranges is
Rij = ||Xi – Xj||2 + nij + Nij,
where
 nij is a gaussian error term (=0,=1.3)
 Nij is a fixed bias present only when LOS blocked

Error reduction:



nij can be reduced by repeated observations
Nij cannot because it is caused by persistent features of
the environment, such as detection of a reflection.
The Nij errors must be filtered at higher layers


Cross-validation of multiple sensor modalities
Geometric consistency, error terms during multilateration
Typical Angle-of-Arrival AR System


TOF AR system with multiple receiver channels
Time difference of arrivals at receiver used to
estimate angle of arrival
Radio
Radio
CPU
CPU
Speaker
Microphone
Microphone
Microphone
Microphone
Array
Bearing Calculation and Error


Precision of bearing estimate function of angle of
incidence, baseline, array geometry, and phase
resolution of detector
Phase resolution of a wideband detector is function
of sample rate and channel capacity

In our experiments primary limitation is sample rate
given
B
A
R1  
R2  
XAB  YAB
YAB  XAB

, 
, B  AB
2
2
Want to find   f ( ,  , B)
X
Y
cos(  )  cos(  ) 




  sin 
 2 sin(  ) B 
1

B
Limitations of bearing estimates

Assumption of wavefront coherence


Not valid over large baselines
Position estimates based on bearing


Position error proportional to range and bearing error
Intuition: For the 2D case, what is the “critical range” at
which positional uncertainty exceeds the baseline
R1
B
Rcrit
B2

2
Source: Vlad’s Homework
R2

Use clusters, compute intersection of bearing estimates
(as discussed in the Pottie lecture)
Localization System Components

Coordinate system synthesis layer
Stitching/Merging
This step applies to distributed
construction of large-scale
coordinate systems
Filtering
Coordinate System
Synthesis
Coordinate System
Synthesis
Filtering
Filtering
Filtering
Filtering
Filtering
Filtering
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
This step estimates target
coordinates (and often other
parameters simultaneously)
Parameters might include:
•Range between nodes
•Angle between nodes
•Psuedorange to target (TDOA)
•Bearing to target (TDOA)
•Absolute orientation of node
•Absolute location of node (GPS)
Position Est. and Coord. Systems

Position Estimation, Triangulation




Some of the nodes have known positions
Target’s position inferred relative to known nodes
e.g. Active Bat, single GALORE Panel
Forming a coordinate system, Multilateration




Most nodes have unknown positions
Consistent coordinate system constructed based
on measured relationships between nodes
“Multilateration” is a commonly used term
e.g. AHLoS, multi-panel GALORE system
Optimization Problems

Often implemented as an overconstrained
optimization problem:

Input is set of measurements


Output is estimated node position map


Ranges, angles, other relationships
Environmental parameters often estimated concurrently
Gaussian error  least-squares minimization

Careful filtering required to ensure this property
Simple Example: GALORE Panel

Pythagorean Theorem:
x, y, z 
ri
xi , yi , zi 
x  xi 2   y  yi 2  z  zi 2  ri   i 2
Where

i
is measurement error in the range measurement ri
Object is to find position estimate that minimizes
squared sum of error terms
GALORE Panel Position Estimator

Rewrite to get error as function of position:
x  xi 2   y  yi 2  z  zi 2  ri   i

Problem: error function is not linear

Approximate the error function by a Taylor’s series (where X is
position vector):
f ( X ) | X 0  f ( X 0 )  f ' ( X )  f " ( X )  ...



Neglecting higher-order terms, and choosing an initial “guess” X0,
we have a linear approximation of the error function in that
neighborhood
Iteratively improve X until sufficient convergence
Good results if problem is overconstrained
Ref. Strang, and G, Borre, K, Linear Algebra, Geodesy,
and GPS, Wellesley-Cambridge Press, 1997
AHLoS Iterative Multilateration

Unlike case of single GALORE Panel



Atomic Multilateration


Relative positions of sensors not known a priori
An iterative approach is taken, where each step solves the
position of one or two more nodes
One or two unknown nodes and several known nodes;
similar in approach to the previous slides
Collaborative Multilateration



Several unknown and known nodes
Set of non-linear equations based on pythagorean theorem
Solved using gradient descent or simulated annealing
Ref. A. Savvides, C Han, M. Srivastava, Dynamic Fine-Grained
Localization in Ad-Hoc Netoworks of Sensors, Mobicom 2001.
Localization System Components

Stitching and Network Coordinate Transforms
Stitching/Merging
This step applies to distributed
construction of large-scale
coordinate systems
Filtering
Coordinate System
Synthesis
Coordinate System
Synthesis
Filtering
Filtering
Filtering
Filtering
Filtering
Filtering
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
Parameter
Parameter
Parameter
Estimation
Estimation
Estimation
This step estimates target
coordinates (and often other
parameters simultaneously)
Parameters might include:
•Range between nodes
•Angle between nodes
•Psuedorange to target (TDOA)
•Bearing to target (TDOA)
•Absolute orientation of node
•Absolute location of node (GPS)
Spatially Scalable Coordinate Systems

Consider an infinite field
of sensor nodes


Global optimization of entire
field is not scalable
Locally optimized
“patches”



Simple “stitching” operation:
find transformation that best
matches common nodes
2nd order optimization:
optimize overlap regions
Tie systems down to survey
points to combat cumulative
error
Network Coordinate Transforms

Idea from RBS: transform to local time at every hop


Improves scalability by avoiding need for global time
Similar technique may be useful for localization


Transform to local coordinate system at each hop
However,


Error propagation characteristics not well understood: will
cumulative error result in excessive drift?
Depends a great deal on achieving an upper bound on perhop error; feasibility of this is not yet understood
Recent Results: GALORE Panel

GALORE Panel Localization System


The GALORE panel is designed to provide localization
services for a field of small systems called “motes”
Computational cost of sender is low; Panel does detection
Microphones
Speakers
Each panel has 4 speaker/
microphone pairs, placed in the
corners of the panel. The panel
also has a radio system that is
used to synchronize with other
panels and with the mote field.
61 cm
“Acoustic” Mote adds spkr, amp
on daughterboard (N. Busek)
Current Status




Blue rectangle
incicates position of
panel
Red points are
actual positions of
motes
Green points are
positions estimated
by the panel
Five trials were
taken at each
position
Source: NEST PI Slides,
Feb 2002
Next Steps

Formation of inter-panel
coordinate system




Inter-panel ranging to
accurately estimate relative
position and orientation
Multilateration techniques to
optimize away error among
many panels
RBS + interpanel coordinate
transforms will enable
coherent processing of data
from multiple panels
Problem: Non-LOS paths,
filtering of range data
• Inter-panel coordination
• Mote-panel coordination
• Mote-mote coordination
61cm
Next Steps: Applications

Tracking in a mote field

Acoustic threshold detection in mote field triggers
responses (N. Busek)


Using RBS and the GALORE Localization system, motes will
be able to correlate their observations in time and space
Coherent Signal Processing

One or more panels can collaborate to do passive
localization and beamforming (H. Wang)


RBS provides accurate synchronization
GALORE Localization system determines precise relative
positions of the receivers.
Download