SLIDE 1 Waves
Slides adapted from Nirupam Roy
SLIDE 2
Sound WiFi signal Physical vibrations Visible light Ripples in water Infrared … …
SLIDE 3
Sound WiFi signal Physical vibrations Visible light Ripples in water Infrared … … Mechanical Wave Electromagnetic Wave
SLIDE 4
Waves made this possible
SLIDE 5
Waves made this possible
SLIDE 6
Equation of waves in time and space
SLIDE 7
Equation of waves in time and space
Temporal variation of the wave’s amplitude
SLIDE 8
Equation of waves in time and space
SLIDE 9
Frequency, Amplitude, and Phase
SLIDE 10 Time
Frequency, Amplitude, and Phase
𝑔 𝑑𝑧𝑑𝑚𝑓𝑡 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 2𝜌 𝑏𝑜𝑚𝑓𝑡 𝑞𝑓𝑠 𝑑𝑧𝑑𝑚𝑓
SLIDE 11
𝚺
A . sin(𝜄(𝑢))
A
= = A . sin(2𝜌𝑔𝑢)
time = t second
Frequency, Amplitude, and Phase
𝑔 𝑑𝑧𝑑𝑚𝑓𝑡 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 2𝜌 𝑏𝑜𝑚𝑓𝑡 𝑞𝑓𝑠 𝑑𝑧𝑑𝑚𝑓
Phase
Ψ(t) = A . sin(2𝜌 𝑈 𝑢)
𝑃𝑜𝑓 𝑔𝑣𝑚𝑚 𝑑𝑧𝑑𝑚𝑓 𝑗𝑜 𝑈 𝑡𝑓𝑑𝑝𝑜𝑒𝑡 i.e., 𝑔 =
! "
SLIDE 12
Equation of waves in time and space
SLIDE 13
Equation of waves in time and space
SLIDE 14
Equation of waves in time and space
SLIDE 15
Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓
SLIDE 16
Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓 Amplitude here is a delayed version of the amplitude here.
SLIDE 17
Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓 Amplitude here is a delayed version of the amplitude here.
SLIDE 18 Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓 Amplitude here is a delayed version of the amplitude here. The delay depends
SLIDE 19 Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓 Amplitude here is a delayed version of the amplitude here. The delay depends
= A . sin(2𝜌𝑔𝑢) Ψ(t) = A . sin(2𝜌 𝑈 𝑢)
SLIDE 20 Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓 Amplitude here is a delayed version of the amplitude here. The delay depends
= A . sin(2𝜌𝑔𝑢 − 𝜄(𝑦)) Ψ(t, x)
Why is this negative?
SLIDE 21
Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓
= A . sin(2𝜌𝑔𝑢 − 𝜄(𝑦)) Ψ(t, x)
w𝑏𝑤𝑓𝑚𝑓𝑜𝑢ℎ = λ
SLIDE 22
Equation of waves in time and space w𝑏𝑤𝑓𝑚𝑓𝑜𝑢ℎ = λ 𝑔 𝑜𝑣𝑛𝑐𝑓𝑠 𝑝𝑔 𝑑𝑧𝑑𝑚𝑓𝑡 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 𝐷 𝑛𝑓𝑢𝑓𝑠𝑡 𝑝𝑔 𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 (𝑡𝑞𝑓𝑓𝑒 𝑝𝑔 𝑢ℎ𝑓 𝑥𝑏𝑤𝑓) 𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑞𝑓𝑠 𝑑𝑧𝑑𝑚𝑓 = λ = 𝐷 / 𝑔
SLIDE 23
Equation of waves in time and space w𝑏𝑤𝑓𝑚𝑓𝑜𝑢ℎ = λ 𝑔 𝑜𝑣𝑛𝑐𝑓𝑠 𝑝𝑔 𝑑𝑧𝑑𝑚𝑓𝑡 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 𝐷 𝑛𝑓𝑢𝑓𝑠𝑡 𝑝𝑔 𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 (𝑡𝑞𝑓𝑓𝑒 𝑝𝑔 𝑢ℎ𝑓 𝑥𝑏𝑤𝑓) 𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑞𝑓𝑠 𝑑𝑧𝑑𝑚𝑓 = λ = 𝐷 / 𝑔 2𝜌 𝑠𝑏𝑒𝑗𝑏𝑜𝑡 𝑝𝑔 𝑏𝑜𝑚𝑓 𝑗𝑡 𝑑𝑝𝑤𝑓𝑠𝑓𝑒 𝑞𝑓𝑠 𝑑𝑧𝑑𝑚𝑓
SLIDE 24
w𝑏𝑤𝑓𝑚𝑓𝑜𝑢ℎ = λ 𝑔 𝑜𝑣𝑛𝑐𝑓𝑠 𝑝𝑔 𝑑𝑧𝑑𝑚𝑓𝑡 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 𝐷 𝑛𝑓𝑢𝑓𝑠𝑡 𝑝𝑔 𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑞𝑓𝑠 𝑡𝑓𝑑𝑝𝑜𝑒 (𝑡𝑞𝑓𝑓𝑒 𝑝𝑔 𝑢ℎ𝑓 𝑥𝑏𝑤𝑓) 𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑞𝑓𝑠 𝑑𝑧𝑑𝑚𝑓 = λ = 𝐷 / 𝑔 2𝜌 𝑠𝑏𝑒𝑗𝑏𝑜𝑡 𝑝𝑔 𝑏𝑜𝑚𝑓 𝑗𝑡 𝑑𝑝𝑤𝑓𝑠𝑓𝑒 𝑞𝑓𝑠 𝑑𝑧𝑑𝑚𝑓 Equation of waves in time and space 2𝜌 λ 𝑠𝑏𝑒𝑗𝑏𝑜𝑡 𝑝𝑔 𝑏𝑜𝑚𝑓 𝑗𝑡 𝑑𝑝𝑤𝑓𝑠𝑓𝑒 𝑞𝑓𝑠 𝑣𝑜𝑗𝑢 𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓
SLIDE 25
Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓
= A . sin(2𝜌𝑔𝑢 − 𝜄(𝑦)) Ψ(t, x)
w𝑏𝑤𝑓𝑚𝑓𝑜𝑢ℎ = λ
= A . sin(2𝜌𝑔𝑢 − 2𝜌 λ 𝑦)
SLIDE 26
Model for a signal (frequency, amplitude, and phase)
𝑓𝑘 2πft
SLIDE 27
Presenting real signal with the complex model
𝑑𝑝𝑡 2πft
=
𝑓𝑘 2πft 𝑓
_𝑘 2πft
+
2
𝑡𝑗𝑜 2πft
=
𝑓𝑘 2πft 𝑓
_𝑘 2πft
−
2j
𝑑𝑝𝑡 2πft + 𝑘 sin 2πft =
𝑓𝑘 2πft
𝑑𝑝𝑡 2πft − 𝑘 sin 2πft =
𝑓
_𝑘 2πft
SLIDE 28
Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓
Ψ(t, x)
w𝑏𝑤𝑓𝑚𝑓𝑜𝑢ℎ = λ
= A . sin(2𝜌𝑔𝑢 − 2𝜌 λ 𝑦)
SLIDE 29
Equation of waves in time and space
𝑒𝑗𝑡𝑢𝑏𝑜𝑑𝑓 𝑔𝑠𝑝𝑛 𝑢ℎ𝑓 𝑡𝑝𝑣𝑠𝑑𝑓 (𝑦) 𝑡𝑞𝑏𝑑𝑓
Ψ(t, x)
w𝑏𝑤𝑓𝑚𝑓𝑜𝑢ℎ = λ
= A . e 𝑘(2𝜌𝑔𝑢 − 2𝜌
λ 𝑦)
SLIDE 30 Time and space
Cycles per sec = frequency = f Hz Distance per second = speed = C meters/sec Distance per cycle = wavelength = λ meters
C = f . λ
Speed of sound in air: 343 m/s Speed of sound in water: 1493 m/s Speed of sound in iron: 5130 m/s Speed of electromagnetic waves: 3*108 m/s (~ a million times faster than sound)
SLIDE 31
Time and space
A . sin(2𝜌𝑔𝑢)
SLIDE 32 Time and space A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 33 Time and space
Distance = d meter
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 34 Distance = d meter
Time and space A . e
𝑘(2𝜌𝑔𝑢 − 2𝜌 λ 𝑒)
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 35 Distance = d meter
d meter
Time and space A . e
𝑘(2𝜌𝑔𝑢 − 2𝜌 λ 𝑒)
A . e
𝑘(2𝜌𝑔𝑢 − 2𝜌 λ 𝑒)
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 36 Distance = d meter
d meter
Time and space A . e
𝑘(2𝜌𝑔𝑢 − 2𝜌 λ 𝑒)
A . e
𝑘(2𝜌𝑔𝑢 − 2𝜌 λ 𝑒)
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 37 Time and space A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 38 Time and space A . e
𝑘(2𝜌𝑔𝑢)
X meters
SLIDE 39 𝚺
Time and space
X meters
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 40 𝚺
X.sin(𝚺)
Time and space
X meters
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 41 d = X.sin(𝚺)
𝚺
Time and space
X meters
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 42 d = X.sin(𝚺)
𝚺
Time and space
X meters
A . e
𝑘(2𝜌𝑔𝑢)
SLIDE 43
Reflection of waves
SLIDE 44
Reflection
SLIDE 45
𝚺 𝚺
Reflection
SLIDE 46
𝚺 𝚺
d1 d2
Reflection
SLIDE 47
echo
Absorption + Reflection
Reflection
SLIDE 48
Time = t1
Reflection
SLIDE 49
Time = t1
Absorption + Reflection
Reflection
SLIDE 50
t2 Time = t1 echo
Absorption + Reflection
Reflection
SLIDE 51
Sound travelled (2d) distance d t2 Time = t1 echo
Absorption + Reflection
Reflection
SLIDE 52
Sound travelled (2d) distance d t2 Time = t1 C.(t2-t1) = 2d echo
Absorption + Reflection
Reflection
SLIDE 53
Sound travelled (2d) distance d t2 Time = t1 C.(t2-t1) = 2d echo
Echolocation
Absorption + Reflection
Reflection
SLIDE 54
Echolocation in nature
Bat
SLIDE 55
Echolocation in nature
Beluga whale
SLIDE 56
Waves for gesture detection [Project Soli]
SLIDE 57 57
LiDAR (Light Detection and Ranging)
SLIDE 58 58
LiDAR (Light Detection and Ranging)
SLIDE 59
Acoustic imaging
SLIDE 60
Acoustic imaging
Sonogram
SLIDE 61
Acoustic imaging
Sonogram
SLIDE 62
Multipath
SLIDE 63
Multipath
SLIDE 64
Multipath
SLIDE 65 Multipath: Convolution
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
SLIDE 66 Multipath: Convolution
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Direct path
SLIDE 67 Multipath: Convolution
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Direct path Echo
SLIDE 68 Multipath: Convolution
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Direct path Echo
SLIDE 69 Multipath: Convolution
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Direct path Echo
SLIDE 70 Multipath: Convolution
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
Amplitude
0.25 0.50 0.75 1.00 1.25
Time (sec)
0.00
SLIDE 71 Multipath: Convolution
Amplitude
0.75
Time (sec)
0.00
SLIDE 72 Multipath: Convolution
Amplitude
0.75
Time (sec)
0.00
SLIDE 73 Amplitude Time (sec) Impulse/ Dirac delta function
Impulse response
a 𝜀(x-a)
Environment (reflections, absorption, attenuation etc.) Impulse Response
SLIDE 74
Linear Time Invariant (LTI) System
SLIDE 75 Linear Time Invariant (LTI) System
Amplitude
0.75
Time (sec)
0.00
+ + =
SLIDE 76
Impulse response
SLIDE 77 SYSTEM Impulse Response Impulse
Impulse response
SLIDE 78 SYSTEM Impulse Response Input Input
* Impulse response
Convolution
SLIDE 79
Convolution operator
SLIDE 80
Convolution operator: Definition
SLIDE 81
Convolution operator: Properties
SLIDE 82
Convolution operator
SLIDE 83
A simple acoustic ranging technique
BeepBeep – SenSys 2007
SLIDE 84 Device A Device B Distance = d
SLIDE 85 Device A Device B Distance = d
Time = t1
SLIDE 86 Device A Device B Distance = d
Time = t1 Time = t2
SLIDE 87 Device A Device B Distance = d
Time = t1 Time = t2 Time = t1
Bluetooth/WiFi
SLIDE 88 Device A Device B Distance = d
Time = t1 Time = t2 Time = t1
Bluetooth/WiFi
d = C . (t2-t1)
SLIDE 89 Device A Device B Distance = d
Time = t1 Time = t2 Time = t1
Bluetooth/WiFi
d = C . (t2-t1)
Problem: Clock synchronization
SLIDE 90 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
time
SLIDE 91 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
- Sending uncertainty
time
SLIDE 92
Sound production and recording
SLIDE 93 Sound
Sound recording with microphone
SLIDE 94 Sound Analog signal (voltage) ADC
Sound recording with microphone
ADC = Analog-to-Digital Converter
SLIDE 95 Sound Analog signal (voltage) ADC Audio Sample Buffer S6 S5 S4 S3 S2 S1 S0
Sound recording with microphone
ADC = Analog-to-Digital Converter
SLIDE 96 Audio Sample Buffer S6 S5 S4 S3 S2 S1 S0
Sound production with speaker
SLIDE 97 Audio Sample Buffer S6 S5 S4 S3 S2 S1 S0 DAC Analog signal (voltage)
Sound production with speaker
DAC = Digital-to-Analog Converter
SLIDE 98 Audio Sample Buffer S6 S5 S4 S3 S2 S1 S0 DAC Analog signal (voltage) Sound
Sound production with speaker
DAC = Digital-to-Analog Converter
SLIDE 99 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
- Sending uncertainty
time
... t0 = wall_clock(); write(sound_dev, signal); ...
software issuing command
SLIDE 100 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
- Sending uncertainty
time
... t0 = wall_clock(); write(sound_dev, signal); ...
software issuing command sound leaves speaker
unknown delays (software, system, driver, hardware, …)
?
SLIDE 101 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
- Sending uncertainty
time
... t0 = wall_clock(); write(sound_dev, signal); ...
software issuing command sound leaves speaker
unknown delays (software, system, driver, hardware, …)
?
SLIDE 102 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
- Sending uncertainty
time
... t0 = wall_clock(); write(sound_dev, signal); ...
software issuing command sound leaves speaker
unknown delays (software, system, driver, hardware, …)
?
sound reaches mic
SLIDE 103 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
- Sending uncertainty
time
... t0 = wall_clock(); write(sound_dev, signal); ...
software issuing command sound leaves speaker
unknown delays (software, system, driver, hardware, …)
?
sound reaches mic
unknown delays (hardware, interrupt, driver, scheduling, …)
?
SLIDE 104 The root cause of inaccuracy – three uncertainties
- Clock synchronization uncertainty
- Sending uncertainty
time
... t0 = wall_clock(); write(sound_dev, signal); ...
software issuing command sound leaves speaker
unknown delays (software, system, driver, hardware, …)
?
... read(sound_dev, signal); t1 = wall_clock(); ...
software aware of arrival sound reaches mic
unknown delays (hardware, interrupt, driver, scheduling, …)
?
SLIDE 105 Beepbeep’s basic procedure
Device A Device B
A’s recording B’s recording
ETOAA ETOAB
while both recording
- 2. Device B emits another
beep while both continue recording
- 3. Both devices detect TOA
- f the two beeps and
- btain respective ETOAs
- 4. Exchange ETOAs and
calculate the distance
SLIDE 106 Dx,y is distance between x’s speaker to y’s microphone