Post on 01-Jan-2016
Tracking
Prasun Dewan
Department of Computer Science University of North Carolina
dewan@unc.edu
2
Triangulation
Need to solve for x, y, z Assume orientation not an issue
Need distance to three points with known coordinates Can solve for x, y, z
3
Issues
What are the three known points? How to determine distances? Expense Privacy
4
GPS
Satellites are known points Their current location known 24 hrs in advance
upto accuracy of a few meters Used for tuning?
They also broadcast their position Measure time takes for signal to each receiver
Signal frequency 1575.42 MHz and 1227.6 MHz Code division multiple access to eliminate
interference Time of flight of signal gives distance
5
Clock Synchronization
Clocks of satellites synchronized Clock of receiver not synchronized Offset same for all satellites One more variable Need four satellites
6
Excerpt from Hopper’s Slides
Start of excerpt
7
Sentient ComputingUbiquitous Computing vision
Computing devices everywhere
Access to applications anywhere
Whatever is on hand is available
Sentient Computing visionUbiquitous Computing made context-aware
Physical context used for automatic control
Sensors and space are part of computing systems
8
Programming With Space
The componentsNotions and representations of
physical spaceData and computational modelsSensor information
User interface the real world
9
Components for Programming With Space
Devices
Platforms
Sensors
Networks
+Architecture
Conduits
10
Components for Programming With Space
Devices
Platforms
Sensors
+Architecture
11
Sensors: Location Information
Containment GSM, UMTS, broadband radio Active badge
Proximity Bluetooth, IrDA PICOnet
Co-ordinate GPS Active bat
12
Sensors: Location Information
Containment GSM, UMTS, Broadband Radio Active Badge
Proximity Bluetooth, IrDA PICOnet
Co-ordinate GPS Active bat
13
Containment: Active Badge
Infra-Red Network 10 meter range
diffuse
room-scale location
14
Sensors: Location Information
Containment GSM, UMTS, Broadband Radio Active Badge
Proximity Bluetooth, IrDA PICOnet
Co-ordinate GPS Active Bat
15
Sensors: Location Information
Containment GSM, UMTS, broadband radio Active badge
Proximity Bluetooth, IrDA PICOnet
Co-ordinate GPS Active bat
16
Ultrasonic Location System
Mobile transmitter (Bat)
Fixed receiversCeiling
Active BatsUltrasonic transponder
Measure pulse time-of-flight
Radio synchronised
17
DSP Ceiling Array
25,000 MIPS to cover AT&T Laboratories Cambridge!
18
Components for Programming With Space
Devices
Platforms
Sensors
Networks
+Architecture
Conduits
19
Telephone318
Computer“Pumpkin”
Computer“Papaya” Person
“Mike”
Person“Pete”
Representing the Real World
Model real world as collection of objects
Computer“Plantain”
Person“Andy”
Follow-mePhonebook
MobileDesktop
Telephone241
Telephone217
CTIswitch
Resourcemonitor
Keyboardmonitor
Locationservice
Applications
Software objects
Sensors
Objects maintain state using sensor data Applications query relevant sets of objects
20
Data Model Visualisation
21
Spatial Monitoring
Vague spatial facts formalised as geometric containment and overlapping relationships between spaces
X
M
‘X is holding the microphone M’‘X can be seen by
camera B but not by camera A’
A
B
X
22
Spatial Indexing
Generates all positive/negative overlapping or containment events
thro
ug
hp
ut
(‘00
0 u
pd
ates
s-1)
1
3
2
4
population (‘000)10 20 30
non-overlapping spaces
overlapping spaces
23
Putting It All TogetherMove user’s desktop to screen in front of them
Visible
A
Visib
le
B
Visible
C
Callbacks
Registration+ve Containment (Andy)-ve Overlapping (Andy)
-ve Overlapping(Andy,”Visible B”)
CLEAR DESKTOP FROM B
-ve Overlapping(Andy,”Visible A”)
CLEAR DESKTOP FROM A
+ve Containment(Andy,”Visible B”)
MACHINE B: NOT IN USEMOVE DESKTOP TO B
+ve Containment(Andy,”Visible C”)MACHINE C: IN USE NO ACTION
24
Example Applications
Corporate memoryRecord me / what’s around meAnnotate multimedia stream
Camera field-of-view
Flat display
Compositedisplay
“Plonk-and-play” systemsSpatial configuration determines
logical configuration
No need to know device IDs
Automatic personalisation
25
Sentient Computing: New User Interfaces
Non-user interfaces!
Objects and people are cursors in the real-world of icons
Aural and visual feedback
Nissanka B. Priyantha Anit Chakraborty
Hari Balakrishnan
MIT Lab for Computer Science
http://nms.lcs.mit.edu/
The Cricket Location-Support System
27
Motivation
Emergence of pervasive computing environments
Context-aware applications Location-dependent behavior
User and service mobility Navigation via active maps Resource discovery
Cricket provides applications information about geographic spaces they are in
28
Design Goals
Preserve user privacy Operate inside buildings Recognize spaces, not just physical
position Good boundary detection is important
Easy to administer and deploy Decentralized architecture and control
Low cost and power consumption
29
Traditional Approach
Controller/Location database
Base stations
ID = u
Transceivers
• Centralized architecture• User-privacy issues• High deployment cost
ID = u ? ID = u ? ID = u ?
ID = u ?
30
Cricket Architecture
Beacon
Listener
SpaceA
SpaceB
SpaceC
I am atC
• Decentralized, no tracking, low cost• Think of it as an “inverted BAT”!
31
Determining Distance
A beacon transmits an RF and an ultrasonic signal simultaneously RF carries location data, ultrasound is a
narrow pulse Velocity of ultra sound << velocity of RF
RF data(location name)
Beacon
Listener
Ultrasound(pulse)
• The listener measures the time gap between the receipt of RF and ultrasonic signals– A time gap of x ms roughly corresponds to a
distance of x feet from beacon
32
Uncoordinated Beacons
Multiple beacon transmissions are uncoordinated
Different beacon transmissions can interfere Causing inaccurate distance measurements
at the listener
Beacon A Beacon B
timeRF B RF A US B US A
Incorrect distance
Handling Spurious Interactions
Combination of three different techniques: Bounding stray signal interference Preventing repeated interactions
via randomization Listener inference algorithms
34
Bounding Stray Signal Interference
RF range > ultrasonic range Ensures an accompanied RF signal with
ultrasound
tRF A US A
35
t
S/b
r/v (max)
S - size of space stringb - RF bit rater - ultrasound rangev - velocity of ultrasound
Bounding Stray Signal Interference
(RF transmission time) (Max. RF US separation at the listener)
S r
b v
36
Bounding Stray Signal Interference
• Envelop ultrasound by RF• Interfering ultrasound causes RF signals to
collide• Listener does a block parity error check
– The reading is discarded
tRF A US A
RF B US B
37
Preventing Repeated Interactions
Randomize beacon transmissions:
loop:pick r ~ Uniform[T1, T2];delay(r);xmit_beacon(RF,US);
Erroneous estimates do not repeat Optimal choice of T1 and T2 can be calculated
analytically Trade-off between latency and collision
probability
Inference Algorithms
MinMode Determine mode for each beacon Select the one with the minimum mode
MinMean Calculate the mean distance for each beacon Select the one with the minimum value
Majority (actually, “plurality”) Select the beacon with most number of readings Roughly corresponds to strongest radio signal
Inference Algorithms
Distance(feet)
Frequency A B
5 10
5
A B
Actual distance (feet) 6 8
Mode (feet) 6 8
Mean (feet) 6.14 6.4
Number of samples 7 10
40
Closest Beacon May Not Reflect Correct Space
I am atB
Room A Room B
41
Correct Beacon Positioning
Room A Room B
x x
I am atA
• Position beacons to detect the boundary
• Multiple beacons per space are possible
42
Implementation Cricket beacon and listener
• LocationManager provides an API to applications
• Integrated with intentional naming system for resource discovery
43
Implementation Cricket beacon and listener
• LocationManager provides an API to applications
• Integrated with intentional naming system for resource discovery
Micro-controller
RF
US
Micro-controller
RF
USRS232
44
Static listener performance
Interference
L2
L1
• Immunity to interference– Four beacons within
each others range– Two RF interference
sources
• Boundary detection ability– L1 only two feet
away from boundary
I1 I2
L1 0.0% 0.0%
L2 0.3% 0.4%
I1
I2
% readings due to interference of RF from I1
and I2 with ultrasound from beacons
Room B
Room C
Room A
45
Inference Algorithm Error Rates
Error Rates Measured With Listener At L1
0
5
10
15
20
25
30
35
40
45
10 20 30 40 50 60 70 80 90 100
Number of readings
Err
or R
ate
(%)
MinMean
MinMode
Majority
46
Mobile listener performance
Location Algorithm Error Rates
0
2
4
6
8
10
12
14
16
18
20
2 3 4 5 6
Sampling Interval
Erro
r Rat
e (%
)
MinMean
MinMode
Majority
Room A Room B
Room C
47
ComparisonsBat Active
badgeRADAR Cricket
Track user location?
Yes Yes No, if client has signal map
No
Deploymentconsiderations
Centralized controller +matrix ofsensors
Centralized database + wired IR sensors
RF signal mapping and good radios
Spacenamingconvention
Position accuracy
Few cm Room-wide Room-wide ~2 feet forspatialresolution
Attribute
System
48
Summary
Cricket provides information about geographic spaces to applications Location-support, not tracking Decentralized operation and administration
Passive listeners and no explicit beacon coordination Requires distributed algorithms for beacon
transmission and listener inference Implemented and works!
49
50
51
Decentralized
52
53
Preserves user privacy Good granularity Component cost U.S. $10
54
Beacon positioning
• Imaginary boundaries
• Multiple beacons per location
Location X
X1 X2
X3
ImaginaryBoundary
55
Future work
Dynamic transmission rate with carrier-sense for collision avoidance.
Dynamic ultrasonic sensitivity. Improved location accuracy. Integration with other technologies such
as Blue Tooth.
57
Inference algorithms
Compared three algorithms Minimum mode Minimum arithmetic mean Majority
58
Minimizing errors.
Proper ultrasonic range ensures overlapping RF and ultrasonic signals RF data 7 bytes at 1 kb/s bit rate RF signal duration 49 ms Selected ultrasonic range = 30ft < 49 ft Signal separation < 49 ms
59
Minimizing errors.
Interfering ultrasound causes RF signals to collide
Listener does a block parity error check The reading is discarded
60