Wireless Communication Systems
@CS.NCTU
Lecture 6: Localization
Instructor: Kate Ching-Ju Lin (林靖茹)
1
Wireless Communication Systems @CS.NCTU Lecture 6: Localization - - PowerPoint PPT Presentation
Wireless Communication Systems @CS.NCTU Lecture 6: Localization Instructor: Kate Ching-Ju Lin ( ) 1 Type of Approaches RSSI-based Angle of Arrival (AoA) Time of Flight (ToF) Time Difference of Arrival (TDoA) 2
@CS.NCTU
Lecture 6: Localization
Instructor: Kate Ching-Ju Lin (林靖茹)
1
2
⎻ WiVi (SIGCOMM’13)
⎻ WiTrack (NSDI’14, NSDI’15)
⎻ ArrayTrack (NSDI’13)
3
Tracking people from their reflections
Wall refection is 10,000x stronger than reflections coming from behind the wall How to separate the person’s reflections from the reflections of other objects?
⎻ Leverage multiple antennas to perform interference nulling
⎻ Deem a mobile user as a virtual antenna array reflecting the signals
7
but not moving objects
Wall is static People tend to move disappears detectable
Transmit antennas Receive antenna
Eliminating via Multiple Antennas h2 h1
y = h1 x + h2αx
α = -h1 / h2
αx x
Cancel strong reflections from walls
Eliminating All Static Reflections
Only the reflections from mobile users survive à Why?
Eliminating All Static Reflections
y = h1 x + h2αx
Static objects (wall, furniture, etc.) have constant channels
y = h1 x + h2(- h1/ h2)x
People move, therefore their channels change
y = h’1 x + h’2 (- h1/ h2)x
Not Zero
h2 h1
αx x
⎻ Leverage multiple antennas to perform interference nulling
⎻ Deem a mobile user as a virtual antenna array reflecting the signals
13
θ Antenna Array RF source
Direction of reflection
Direction of motion
θ Antenna Array
At any point in time, we have a single measurement
Direction
θ Antenna Array θ
Direction of motion
θ Antenna Array θ
Direction of motion
Human motion emulates antenna array à Inverse synthetic aperture radar (ISAR)
h[n], …, h[n+w] from time n to (n + w)
given by
18
A[θ, n] =
w
X
i=1
h[n + i]ej 2π
λ i∆ sin θ
θ∗ = arg max
θ
A[θ, n]
spatial separation between successive antennas
How to get Δ given that user location is unknown?
(~1m/s)
⎻ Only need to know whether the user is moving closer
19
negative angle, increasing à moving away
20
user 1 user 2
⎻ WiVi (SIGCOMM’13)
⎻ WiTrack (NSDI’14, NSDI’15)
⎻ ArrayTrack (NSDI’13)
21
Gaming Gesture Control Elderly Monitoring First Responders
Rx Tx
Distance = Reflection time x Speed of light
Tx pulse Rx pulse
Option1: Transmit short pulse and listen for echo
Reflection Time time
time Tx pulse Rx pulse
capturing the pulse needs sub-nanosecond sampling
signal samples reflection time (3.33ns per meter)
Need multi-GHz samplers à expensive and with high noise
Option1: Transmit short pulse and listen for echo
time Frequency
Transmitted
t t+ΔT
Received
ToF ΔF ΔF slope ToF =
Option2: Frequency Modulated Carrier Wave (FMCW)
How to measure ΔF?
1. Use mixer to subtract fTx from the received signal à the signal whose frequency is ΔF 2. Take FFT and identify the frequency with peak power
Mixer
Transmitted received FFT
power ΔF
ΔF à Reflection Time à Distance
How to Deal with Multiple Reflections?
Rx Tx Distance Reflection Power Reflections from different objects à which one is from the person?
⎻ Eliminate by subtracting consecutive measurements
distance power power
@ time t+30ms @ time t
multi-path multi-path 2 meters power distance distance
Why 2 peaks?
Rx Tx
Distance Power Dynamic Multi-path Moving Person
Find the first peak since the direct reflection arrives before other dynamic multipaths
foci are (Tx,Rx)
Tx Rx
d
point is in-beam
taking the intersection of ellipsoids
Tx Rx Rx’
d
in beam
d’
33
time Frequency
Transmitted
t t+ΔT
Received
ToF ΔF ΔF slope ToF =
Bandwidth of 1.69GHz to support a distance resolution of 8.8cm
Cannot be applied in the unlicensed WiFi band
⎻ WiVi (SIGCOMM’13)
⎻ WiTrack (NSDI’14, NSDI’15)
⎻ ArrayTrack (NSDI’13)
34
radio-frequency wave using an antenna array
⎻ The phase of the received signal is determined by the length of a path ⎻ The path lengths to different elements of an antenna array vary slightly ⎻ Leverage TDOA (time difference of arrival) at individual elements of the array to measure AoA
35
36
…
dA dA ≈ d ≈ d ≈ d ≈ d ≈ d Δ 2Δ 3Δ NΔ
Tx Assumption: d ≫ dA! Then, the distance from Tx to the k-th Rx antennas is close do (d+kΔ) Rx
π sin θ
I Q Client λ/2 θ θ
½λ sin θ
Access point 1
2 λ d 2πd/λ x1 x2
Signal received at 1st antenna: Signal received at 2nd antenna: Signal received at Nth antenna: … exp(−2jπd λ ) exp(−2jπ(d + ∆) λ ) = exp(−2jπd λ ) exp(−2jπ∆ λ ) exp(−2jπ(d + N∆) λ ) = exp(−2jπd λ ) exp(−2jπN∆ λ )
38
a(θ) = exp(−j2πd λ ) 1 exp(−jπ sin θ) exp(−jπ2 sin θ) . . . exp(−jπ(N − 1) sin θ)
π sin θ
I Q Client λ/2 θ θ
½λ sin θ
Access point 1
2 λ d 2πd/λ x1 x2
Signal from angle θ:
39
x(t) = [a(θ1) a(θ2) · · · a(θD)] s1(t) s2(t) . . . sD(t) + n Final received signal:
x(t) = e
−j2πd λ
1 1 · · · e−jπ sin θ1 · · · e−jπ sin θD e−jπ2 sin θ1 · · · e−jπ2 sin θD . . . ... · · · e−jπ(N−1) sin θ1 · · · e−jπ(N−1) sin θD s1(t) s2(t) . . . sD(t) + n
⎻ We collect N received signals (N equations) ⎻ Assume there exist only D paths, D ≤ N, (D unknowns) ⎻ Use linear algebra to find the D components from N measures
40
x(t) = [a(θ1) a(θ2) · · · a(θD)] s1(t) s2(t) . . . sD(t) + n
⎻ D components with large eigenvalues à from D paths (angles) ⎻ (N – D) components with near-zero eigenvalues à noise
41
Rxx = E[xx∗] = E [(As + n) (s∗A∗ + n∗)] = AE [ss∗] A∗ + E [nn∗] = ARssA∗ + σ2
nI
source correlation matrix sorted
the arrival direction θ and the noise subspace
subspace of (N - D) noise components
⎻ dist(θ)~0 for the D paths from θ
42
EN = [e1 e2 … eN-D]
P(θ) = 1 dist(θ) = 1 a(θ)∗ENE∗
Na(θ)
AoA = maxθ P(θ)
Distance in the vector space, instead of the distance between Tx-Rx
dist(θ) = a(θ)∗ENE∗
Na(θ)
43
θ1 θ2 θ3 AP1 AP2 AP3
static reflections, but not body reflections?
44