ArrayTrack : A Fine-Grained Indoor Location System Jie Xiong, Kyle Jamieson USENIX NSDI ‘13 2013.09.30 Jungmin Yoo (jmyoo@mmlab.snu.ac.kr) *some slides are from author’s slides
Contents Introduction ArrayTrack Evaluation Conclusion
INTRODUCTION
Location system Outdoor : Global Positioning System (GPS) Provides accurate location services Signals fade in indoor environments Precise indoor location system Augmented reality-based building navigation, social networking etc. Known technologies Not accurate enough (WiFi) Require dedicated infrastructure (ultrasound)
Two observations about WiFi Increasing number of antennas on an access point (AP) Improve the capacity and coverage WiFi is ubiquitous and densely deployed On airplanes, subways and buses
OVERVIEW
Overview APs overhear a client’s transmission AP leverages multiple antennas to generate physical angles of arrival (AoA) of a client’s signals AoA spectrum : power versus bearing at one AP (*bearing : 방향) With multiple APs, central server synthesizes AoA spectra to obtain a location estimate for the client
The challenge: multipath reflections Problem #1: Strong multipath reflections indoors Problem #2: Direct path attenuated or completely blocked Direct path signal may not be the strongest
Multipath suppression algorithm Key observation Direct path bearing is more stable than reflection path bearings when client moves slightly
Multipath suppression algorithm Given: AoA spectra from two nearby locations Find the peak bearings in each AoA spectrum Discard any peak not paired with a peak in the other AoA spectrum
ARRAYTRACK
1. Detection and recording Content of packet and modulation type do not matter Works with any part of a packet ArrayTrack utilized the most robust preamble part
1. Detection and recording Very small part (sample) of a packet needed In the absence of noise, one sample works Employ multiple samples for averaging to remove noise
1. Detection and recording Diversity synthesis : Record 10 samples from the first preamble half and another 10 samples from the second preamble half with different antennas
2. AoA spectrum generation How an AP can compute AoA? Analyzing received phase at the AP
2. AoA spectrum generation
2. AoA spectrum generation MUSIC algorithm [Schmidt, 1986] for AoA spectrum estimation MUltiple SIgnal Classification Analyzes received phase from source to each antenna Does not work well for phase-synchronized signals Spatial Smoothing (SS) [Shan et al, 1985] Averages incoming signals across groups of antennas Reduces correlation
3. AoA spectra synthesis N APs generate N AoA spectra For a random position X, the likelihood of being at X is a multiplication of probabilities from multiple Aps Evaluate at each point in a 10cm by 10cm grid
EVALUATION
Implementation AP : two WARPs, each with four radio boards (eight antennas) 4-16 antennas placed in a linear arrangement, spaced at λ/2 Clients : Soekris boxes equipped with 802.11 radios Backend location server : implemented in Matlab (1,000+ LoC)
Testbed environment Backend server has knowledge of each AP’s location
Effects of number of APs No multipath suppression Average error decreases with an increasing number of APs With 6 APs, we can achieve 26cm accuracy
Effects of number of APs Heatmap example of increasing number of APs
Effects of multipath suppression With 6 APs, we can achieve 23cm accuracy The fewer APs, the more important is multipath suppression
Number of antennas at AP With more antennas at each AP, we can achieve a more accuracy
Client-AP differences in height
Conclusion ArrayTrack A robust, precise indoor location system Median accuracy of 23cm (6APs) and 1m (3APs) Novel multipath algorithm and diversity synthesis algorithms Uses only the WiFi infrastructure nearby No cost