An Adhoc Deployable FineGrained Localization System Using IPAQs - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

An Adhoc Deployable FineGrained Localization System Using IPAQs

Description:

Mote' low-power microcontroller board: timestamping of radio messages ... by Mote clock (0.25 ... Mote can record its counter value when a start symbol is ... – PowerPoint PPT presentation

Number of Views:84
Avg rating:3.0/5.0
Slides: 30
Provided by: LECS
Category:

less

Transcript and Presenter's Notes

Title: An Adhoc Deployable FineGrained Localization System Using IPAQs


1
An Ad-hoc Deployable Fine-Grained Localization
System Using IPAQs
IPAM Seminar Series Challenges in Distributed
Embedded Systems May 22, 2002
  • Lewis Girod girod_at_lecs.cs.ucla.edu
  • Jeremy Elson jelson_at_lecs.cs.ucla.edu
  • Vladimir Bychkovskiy vladimir_at_lecs.cs.ucla.edu
  • Deborah Estrin destrin_at_cs.ucla.edu

2
What is Localization
  • A mechanism for discovering spatial relationships
    between objects

3
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

4
Fine-grained Localization on IPAQs
  • Why IPAQs?
  • Commodity hardware
  • Built-in sound capability
  • Runs Linux, no significant limitations on CPU,
    RAM
  • Drawbacks
  • Poor speaker quality
  • Speaker and microphone are not co-located

5
System Design
Positioning
  • Several components
  • Audio Server
  • Captures and buffers time series data
  • provides synchronization outputs to time synch
    system
  • Time Synch
  • Collects observations and time references
  • Computes and disseminates conversion metrics

Ranging System
Time Synch
Audio Server
6
System Design
Positioning
  • Several components
  • Audio Server
  • Time Synch
  • Ranging System
  • Emits and detects audible sound, computes time of
    flight
  • Positioning System
  • Central node collects range data from distributed
    nodes
  • Position estimation algorithm uses domain
    knowledge

Ranging System
Time Synch
Audio Server
7
Time Synchronization
  • Time synch critical to acoustic ranging
  • Goal measure distance between mics (X3?X5)
  • Assume perfect time synch
  • Assume speed of sound in air is known, speaker
    and microphones are collinear (well relax this
    next slide)
  • Sensors correlate arriving signal to reference
    signal
  • Difference in arrival times is a linear function
    of additional path length of signal.

X5
X3
X0
X
(T5-T3)330m/S
T0
T
T3
T5
8
Time Synchronization
  • Relaxing collinearity and speed of sound
  • The IPAQ has a full-duplex sound card, and an
    integral speaker and mic Suppose speaker X0 and
    mic X3 are both on the same IPAQ
  • Since distance from speaker X0 to mic X3 is
    known, then if time T0 is known with perfect
    synchronization
  • Speed of sound can be estimated
    Vs(X3-X0)/(T3-T0)
  • Mics need not be collinear Distance
    X5-X0(T5-T0)Vs

X5
X3
X0
IPAQ1
IPAQ2
X
(T5-T3)Vs
T0
T
T3
T5
9
Time Synchronization
  • But what about imperfect time synch?
  • Synch error results directly in range error 28
    uS/cm (worse if result is a bad estimate of Vs)
  • NTP (Network Time Protocol, Mills 1992) is not
    good enough
  • For high-speed, low latency LANs, NTP performs
    well because it can estimate RTT
  • Not true for low speed networks where contention
    causes large (gt30 uS) non-deterministic sending
    latencies
  • Empirical results 802.11 with cross-traffic 50
    of timestamps are off by over 1ms (50 cm)1

X3
X5
X0
X
(T5-T3)Vs
T0
T
T3
T5
1Elson, et al., Fine Grained Network Time
Synchronization using Reference Broadcasts, in
submission to OSDI 2002
10
Inter and Intra-node Synchronization
  • Distributed system of sensor nodes
  • Distinct nodes need inter-node synchronization
  • Uses radio channel to relate local clocks of two
    nodes
  • Multihop synchronization composition of time
    conversions.
  • Within a node, there are often many separate
    clocks that need to be related to each other
  • Ex. DSP sample clock
  • Ex. Mote low-power microcontroller board
    timestamping of radio messages or event detection
  • Important assumption All clocks are locally
    linear

11
Inter-node Synchronization
  • NTP Synchronizing by estimation of RTT

Mote 1
Mote 2
T1
O ? T1(T3-T1-T2)/2
?
O
T3
contention for channel? sender latency in
radio? implementation of MAC? implementation of
radio?
T2
?
  • Why doesnt NTP work? Problems with measuring RTT
    over slow networks
  • Many factors introduce non-deterministic latency
    in transmission channel
  • Some non-deterministic latencies (such as
    contention) are not Gaussian
  • These might be overcome by timestamping close to
    the wire, but this requires intimate knowledge
    of implementation of lower layers

12
Inter-node Synchronization
  • Key to RBS Receiver latency is low-variance
  • Reception of broadcasts are closely correlated in
    real time
  • First bit arrives at receivers some timing
    variation due to
  • propagation delay (1ns/foot)
  • variance in detector rise time (signal str, temp,
    etc) (lt.1uS)
  • time quantization by Mote clock (0.25 uS)
  • outliers caused by RF noise, intermittent system
    delays

010101001
CPU 1
Mote
Mote Sender
CPU 2
Mote
010101001
50kb/S (20uS per bit)
13
Inter-node Synchronization
  • Key idea of RBS Independent of send latency
  • Correlate receptions of broadcast messages at
    different receivers
  • Two receivers can be synchronized with a variance
    determined by the latency of the receive side of
    the system
  • From the last slide, low-variance and Gaussian
  • Least squares reduces error
  • Multihop by composing conversion metrics error
    as sqrt(hops)

Senders
Sync to green nodes
Sync to yellow nodes
Sync to YG nodes
14
Inter-node Synchronization
  • For example
  • Any yellow node (other than the sender) can
    convert its local time to any other yellow nodes
    time, e.g. Y1 to Y2 or Y2 to Y3.
  • Any green node (other than the sender) can
    convert its local time to any other green nodes
    time, e.g. G1 to G2 or G1 to G3.
  • A node receiving from both senders can convert
    among both yellow and green nodes, e.g. G1 to G2,
    Y1 to Y2, or G1 to Y2

Y2
G1
Y1
Senders
Y3G3
Sync to green nodes
Sync to yellow nodes
G2
Sync to YG nodes
Conversion is possible following any path through
the graph.
15
Intra-node Time Synchronization
  • Each node has many clocks

?
CODEC
CPU
  • When was a particular sample received by the
    CODEC?
  • CPU can timestamp CODEC Start command, but
    experiments show that there is sometimes a 200uS
    latency
  • Synchronized Start subject to gradual drift if
    sampling is continuous

?
16
Intra-node Time Synchronization
  • Each node has many clocks

Key Idea Averaging Conversion metrics are
computed from many samples, enabling outlier
rejection and least squares estimation of skew
and offset.
CODEC
CPU
T0S0
T1S1
  • CODEC samples at 48KHz
  • CPU timestamps DMA transfer complete interrupts
  • Very low variance (lt1uS), deterministic 850uS
    queueing latency
  • Most error is quantization error from 1uS CPU
    clock granularity

T1M1
T0M0
CPU
Mote
010101001
010101001
010101001
  • Key Idea No Disciplining
  • Clocks run at natural rate, not disciplined.
  • Time monotonic and linear in the short term
  • Mote free-running counter at 500KHz
  • CPU raises RTS pin, timestamps with CPU clock
  • RTS causes Mote interrupt, Mote saves clock value
    and sends timestamped message to CPU over serial
    port
  • Bimodal Gaussian distribution (from varying
    interrupt latency)

17
Inter and Intra Node Sync
  • Combining the two modalities

Observe signal at T1, CODEC 1 timebase
Observe signal at T2, CODEC 2 timebase
CODEC 1
CODEC 2
Convert to Mote2 (RMS 15uS)1
Convert to CPU2 (RMS 0uS)
Convert to CPU1 (RMS 0uS)
CPU 1
Mote 1
CPU 2
Mote 2
Compare to determine Time Difference of Arrival
Convert to CPU2 (RMS 1uS)
Convert to Mote1 (RMS 1uS)
Synchronized by Sender Mote
1These results from Rene Mote using slower
radio (53uS bit time) and approximate bit
timing. Reported results from the Mica stack
(20uS bits time) indicate 0.25uS packet timing.
18
The Audio Server
  • Useful in general context of time-synched
    distributed audio processing
  • Buffers last N seconds time series data
  • Correlates sample index in buffer to DMA transfer
    times
  • Feeds index/time pairs to timesynch system
  • Enables post-facto retrieval of time series data
  • Samples synchronized across distributed set of
    nodes
  • Buffering reduces system complexity, relaxing
    timing requirements for control traffic
  • Continuous sampling enables detection of passive
    events
  • Allows multiple clients to share audio resources
    (no interference between multiple synchronizers)

19
Acoustic Ranging System
  • Basic idea
  • Sender emits a characteristic acoustic signal
  • Receiver correlates received time series with
    time-offsets of reference signal to find peak
    offset

Degree of correlation as a function of time
offset
Amount of Correlation
T
20
Correlation
  • Green is reference, Red is measured
  • Signals aligned to offset yielding max correlation

Amplitude
Time in Samples (20 uS)
21
Correlation
  • Correlation function low noise, high SNR

Degree of Correlation
Lag in Samples (20uS)
22
Correlation
  • Multipath interference, lower SNR

Degree of Correlation
Lag in Samples (20uS)
23
Modulation Strategies
  • One of the obstacles to implementation on the
    IPAQ is the quality of the speaker
  • Limited frequency response
  • Impulses cause ringing for 100 samples (70 cm)
  • Impulse responses not uniform across IPAQs
  • Fundamental problems
  • Nonlinear response outside limited range
  • Unable to follow phase shifts at high frequencies
  • Unable to follow rapid frequency shifts
  • Poor low frequency response

70cm
Impulse Response
24
Modulation Strategies
In Phase
Ringing
  • Solution
  • Find frequency range that exhibits fairly linear
    response
  • Generate chirps (frequency sweep up and down) at
    the upper end of linear frequency range
  • Encode psuedonoise sequence into inter-chirp gaps
  • Result
  • Speaker reproduces chirps with high phase
    accuracy
  • Some ringing persists, but mostly at lower
    frequencies (and lower energy levels)
  • Compensate for low coding rate with longer
    sequences

Coded Gap
25
Positioning Algorithms
  • Positioning algorithm
  • Converts range data into consistent coordinate
    system
  • So far, positioning algorithm developed in
    simulation
  • IPAQ specific domain knowledge
  • Speaker and microphone not co-located
  • Therefore ranges are not always equal to reverse
    range
  • Acoustics-specific domain knowledge
  • Acoustic error model
  • Major component of error is excess path length
    caused by non-line-of-sight ranges
  • Current implementation uses customized
    mass-spring model to compensate for NLOS

26
Acoustic Error Model
  • Components
  • Gaussian error (lt 2cm variance)
  • Synchronization error
  • Detection error (noise in channel)
  • Quantization error
  • All ranges quantized to CODEC sampling frequency
    (0.71 cm)
  • NLOS error
  • Some ranges have a large offset (often meters)
    caused by paths that travel along surfaces and
    reflected paths
  • NLOS error is usually stationary because it is
    caused by stationary environmental conditions.
  • Often NLOS error is correlated

27
Mass Spring Model
  • Model
  • Nodes are masses
  • Springs are the measured ranges
  • Incremental placement
  • Speeds convergence
  • Avoids unnecessary underconstrained conditions
  • NLOS model
  • NLOS always causes an increase in path length
  • Choose model that favors shorter paths
  • Nonlinear spring model
  • Spring constant larger for stretch direction
  • Result Long springs readily compressed by
    shorter (i.e. more believable) springs

28
Results of Positioning Algorithm on Simulated Data
  • RMS Position error 2.8cm
  • RMS Range error 2.5cm
  • Input noise
  • 2cm variance
  • quantized to 0.71cm
  • 10 NLOS, uniform 0-40cm excess path, uncorrelated

cm
cm
cm
29
Future Work
  • Finish work on tuning detection algorithm for
    IPAQ
  • Link up range outputs to positioning algorithm
  • Deploy on 20-30 node testbed and evaluate
    performance.
  • Investigate
  • Performance under correlated NLOS conditions
  • Effect of orientation of the IPAQs on performance
  • Characterization of points as well-constrained or
    poorly constrained which nodes contribute the
    most to the coordinate system?
  • Algorithm for determining node placement
Write a Comment
User Comments (0)
About PowerShow.com