Tracking Prasun Dewan Department of Computer Science University

  • Slides: 59
Download presentation
Tracking Prasun Dewan Department of Computer Science University of North Carolina dewan@unc. edu 1

Tracking Prasun Dewan Department of Computer Science University of North Carolina dewan@unc. edu 1

Triangulation n Need to solve for x, y, z u Assume n orientation not

Triangulation n Need to solve for x, y, z u Assume n orientation not an issue Need distance to three points with known coordinates u Can solve for x, y, z 2

Issues n n What are three known points? How to determine distances? Expense Privacy

Issues n n What are three known points? How to determine distances? Expense Privacy 3

GPS n Satellites are known points u Their current location known 24 hrs in

GPS n Satellites are known points u Their current location known 24 hrs in advance upto accuracy of a few meters F u n n They also broadcast their position Measure time takes for signal to each receiver u n Used for tuning? Signal frequency 1575. 42 MHz and 1227. 6 MHz Code division multiple access to eliminate interference Time of flight of signal gives distance 4

Clock Synchronization n n Clocks of satellites synchronized Clock of receiver not synchronized Offset

Clock Synchronization n n Clocks of satellites synchronized Clock of receiver not synchronized Offset same for all satellites One more variable Need four satellites 5

Excerpt from Hopper’s Slides n Start of excerpt 6

Excerpt from Hopper’s Slides n Start of excerpt 6

Sentient Computing Ubiquitous Computing vision Computing devices everywhere Access to applications anywhere Whatever is

Sentient Computing Ubiquitous Computing vision Computing devices everywhere Access to applications anywhere Whatever is on hand is available Sentient Computing vision Ubiquitous Computing made contextaware Physical context used for automatic control Sensors and space are part of computing systems 7

Programming With Space The components Notions and representations of physical space Data and computational

Programming With Space The components Notions and representations of physical space Data and computational models Sensor information User interface the real world 8

Components for Programming With Space Sensors Devices +Architecture Networks Conduits Platforms 9

Components for Programming With Space Sensors Devices +Architecture Networks Conduits Platforms 9

Components for Programming With Space Sensors Devices +Architecture Platforms 10

Components for Programming With Space Sensors Devices +Architecture Platforms 10

Sensors: Location Information n Containment GSM, UMTS, broadband radio u Active badge u n

Sensors: Location Information n Containment GSM, UMTS, broadband radio u Active badge u n Proximity Bluetooth, Ir. DA u PICOnet u n Co-ordinate GPS u Active bat u 11

Sensors: Location Information n Containment GSM, UMTS, Broadband Radio u Active Badge u n

Sensors: Location Information n Containment GSM, UMTS, Broadband Radio u Active Badge u n Proximity Bluetooth, Ir. DA u PICOnet u n Co-ordinate GPS u Active bat u 12

Containment: Active Badge Infra-Red Network 10 meter range diffuse room-scale location 13

Containment: Active Badge Infra-Red Network 10 meter range diffuse room-scale location 13

Sensors: Location Information n Containment GSM, UMTS, Broadband Radio u Active Badge u n

Sensors: Location Information n Containment GSM, UMTS, Broadband Radio u Active Badge u n Proximity Bluetooth, Ir. DA u PICOnet u n Co-ordinate GPS u Active Bat u 14

Sensors: Location Information n Containment GSM, UMTS, broadband radio u Active badge u n

Sensors: Location Information n Containment GSM, UMTS, broadband radio u Active badge u n Proximity Bluetooth, Ir. DA u PICOnet u n Co-ordinate GPS u Active bat u 15

Ultrasonic Location System Fixed receivers Ceiling Mobile transmitter (Bat) Active Bats Ultrasonic transponder Measure

Ultrasonic Location System Fixed receivers Ceiling Mobile transmitter (Bat) Active Bats Ultrasonic transponder Measure pulse time-of-flight Radio synchronised 16

DSP Ceiling Array 25, 000 MIPS to cover AT&T Laboratories Cambridge! 17

DSP Ceiling Array 25, 000 MIPS to cover AT&T Laboratories Cambridge! 17

Components for Programming With Space Sensors Devices +Architecture Networks Conduits Platforms 18

Components for Programming With Space Sensors Devices +Architecture Networks Conduits Platforms 18

Representing the Real World Follow-me Phonebook Applications Software objects Sensors n Telephone 217 Telephone

Representing the Real World Follow-me Phonebook Applications Software objects Sensors n Telephone 217 Telephone 241 318 CTI switch Mobile Desktop Computer “Plantain” Computer “Papaya” “Pumpkin” Location service Keyboard monitor Person “Andy” Person “Pete” “Mike” Resource monitor Model real world as collection of objects u Objects maintain state using sensor data u Applications query relevant sets of objects 19

Data Model Visualisation 20

Data Model Visualisation 20

Spatial Monitoring B M A X X ‘X can be seen by camera B

Spatial Monitoring B M A X X ‘X can be seen by camera B but not by camera A’ ‘X is holding the microphone M’ Vague spatial facts formalised as geometric containment and overlapping relationships between spaces 21

throughput (‘ 000 updates s-1) Spatial Indexing 4 non-overlapping spaces 3 over lapp ing

throughput (‘ 000 updates s-1) Spatial Indexing 4 non-overlapping spaces 3 over lapp ing s 2 pace s 1 10 20 30 population (‘ 000) Generates all positive/negative overlapping or containment events 22

Putting It All Together Move user’s desktop to screen in front of them A

Putting It All Together Move user’s desktop to screen in front of them A e. C ibl Vis e ibl s i V Registration +ve Containment (Andy) -ve Overlapping (Andy) Callbacks B ble Visi B”) -ve Overlapping(Andy, ”Visible +ve Containment(Andy, ”Visible. A”) C”) B: IN NOT IN USEA CLEAR DESKTOP FROM MACHINE C: USE B MOVE DESKTOP TO B NO ACTION 23

Example Applications Automatic personalisation Camera field-of-view Corporate memory Record me / what’s around me

Example Applications Automatic personalisation Camera field-of-view Corporate memory Record me / what’s around me Annotate multimedia stream “Plonk-and-play” systems Spatial configuration determines logical configuration No need to know device IDs Flat display Composite display 24

Sentient Computing: New User Interfaces § § Non-user interfaces! Objects and people are cursors

Sentient Computing: New User Interfaces § § Non-user interfaces! Objects and people are cursors in the real-world of icons § § Aural and visual feedback 25

The Cricket Location. Support System Nissanka B. Priyantha Hari Balakrishnan MIT Lab for Computer

The Cricket Location. Support System Nissanka B. Priyantha Hari Balakrishnan MIT Lab for Computer Science http: //nms. lcs. mit. edu/ Anit Chakraborty

Motivation n n Emergence of pervasive computing environments Context-aware applications u Location-dependent n behavior

Motivation n n Emergence of pervasive computing environments Context-aware applications u Location-dependent n behavior User and service mobility u Navigation via active maps u Resource discovery Cricket provides applications information about geographic spaces they are in 27

Design Goals n n n Preserve user privacy Operate inside buildings Recognize spaces, not

Design Goals n n n Preserve user privacy Operate inside buildings Recognize spaces, not just physical position u Good n boundary detection is important Easy to administer and deploy u Decentralized n architecture and control Low cost and power consumption 28

Traditional Approach Controller/ Location database ID = u ? Base stations ID = u

Traditional Approach Controller/ Location database ID = u ? Base stations ID = u ? ID = u Transceivers • Centralized architecture • User-privacy issues • High deployment cost 29

Cricket Architecture Beacon Space A Space B Space C I am at C Listener

Cricket Architecture Beacon Space A Space B Space C I am at C Listener • Decentralized, no tracking, low cost • Think of it as an “inverted BAT”! 30

Determining Distance Beacon RF data (location name) Ultrasound (pulse) Listener • AThe listener measures

Determining Distance Beacon RF data (location name) Ultrasound (pulse) Listener • AThe listener measures the and timean gap between beacon transmits an RF ultrasonic the receipt of RF and ultrasonic signals signal simultaneously n – RF A time gap u carries of x ms roughly correspondsistoa a location data, ultrasound distancepulse of x feet from beacon narrow u Velocity of ultra sound << velocity of RF 31

Uncoordinated Beacons Beacon A Beacon B Incorrect distance RF B n n RF A

Uncoordinated Beacons Beacon A Beacon B Incorrect distance RF B n n RF A US B US A time Multiple beacon transmissions are uncoordinated Different beacon transmissions can interfere u Causing inaccurate distance measurements at the listener 32

Handling Spurious Interactions n Combination of three different techniques: u u u Bounding stray

Handling Spurious Interactions n Combination of three different techniques: u u u Bounding stray signal interference Preventing repeated interactions via randomization Listener inference algorithms

Bounding Stray Signal Interference RF A n US A t RF range > ultrasonic

Bounding Stray Signal Interference RF A n US A t RF range > ultrasonic range u Ensures an accompanied RF signal with ultrasound 34

Bounding Stray Signal Interference S b r v S/b - size of space string

Bounding Stray Signal Interference S b r v S/b - size of space string - RF bit rate - ultrasound range - velocity of ultrasound S b (RF transmission time) r/v (max) t r v (Max. RF US separation at the listener) 35

Bounding Stray Signal Interference RF B US B RF A US A t •

Bounding Stray Signal Interference RF B US B RF A US A t • Envelop ultrasound by RF • Interfering ultrasound causes RF signals to collide • Listener does a block parity error check – The reading is discarded 36

Preventing Repeated Interactions n Randomize beacon transmissions: loop: pick r ~ Uniform[T 1, T

Preventing Repeated Interactions n Randomize beacon transmissions: loop: pick r ~ Uniform[T 1, T 2]; delay(r); xmit_beacon(RF, US); n n Erroneous estimates do not repeat Optimal choice of T 1 and T 2 can be calculated analytically u Trade-off between latency and collision probability 37

Inference Algorithms n Min. Mode Determine mode for each beacon u Select the one

Inference Algorithms n Min. Mode Determine mode for each beacon u Select the one with the minimum mode u n Min. Mean Calculate the mean distance for each beacon u Select the one with the minimum value u n Majority (actually, “plurality”) Select the beacon with most number of readings u Roughly corresponds to strongest radio signal u

Inference Algorithms A B Frequency 5 5 Distance (feet) 10 A B Actual distance

Inference Algorithms A B Frequency 5 5 Distance (feet) 10 A B Actual distance (feet) 6 8 Mode (feet) 6 8 Mean (feet) 6. 14 6. 4 7 10 Number of samples

Closest Beacon May Not Reflect Correct Space Room A Room B I am at

Closest Beacon May Not Reflect Correct Space Room A Room B I am at B 40

Correct Beacon Positioning Room A Room B x x I am at A •

Correct Beacon Positioning Room A Room B x x I am at A • Position beacons to detect the boundary • Multiple beacons per space are possible 41

Implementation n Cricket beacon and listener • Location. Manager provides an API to applications

Implementation n Cricket beacon and listener • Location. Manager provides an API to applications • Integrated with intentional naming system for resource discovery 42

Implementation n Cricket beacon and listener RF RF Microcontroller US US RS 232 •

Implementation n Cricket beacon and listener RF RF Microcontroller US US RS 232 • Location. Manager provides an API to applications • Integrated with intentional naming system for resource discovery 43

Static listener performance Room A Room B Interference I 1 L 2 I 2

Static listener performance Room A Room B Interference I 1 L 2 I 2 Room C L 1 • Immunity to % readings due to interference of RF from I 1 – Four beacons within andeach I 2 with ultrasound others range from. RF beacons – Two interference sources I 1 I 2 • Boundary detection L 1 ability 0. 0% L 2 – L 1 only 0. 3%two feet 0. 4% away from boundary 44

Inference Algorithm Error Rates 45

Inference Algorithm Error Rates 45

Mobile listener performance Room A Room B Room C 46

Mobile listener performance Room A Room B Room C 46

Comparisons Bat System Active badge RADAR Cricket Attribute Track user location? Yes Deployment considerations

Comparisons Bat System Active badge RADAR Cricket Attribute Track user location? Yes Deployment considerations Centralized controller + matrix of sensors Centralized RF signal Space database + mapping and naming wired IR good radios convention sensors Position accuracy Few cm Room-wide No, if client has signal map No ~2 feet for spatial resolution 47

Summary n Cricket provides information about geographic spaces to applications Location-support, not tracking u

Summary n Cricket provides information about geographic spaces to applications Location-support, not tracking u Decentralized operation and administration u n Passive listeners and no explicit beacon coordination u n Requires distributed algorithms for beacon transmission and listener inference Implemented and works! 48

49

49

50

50

u Decentralized 51

u Decentralized 51

52

52

u Preserves user privacy u Good granularity u Component cost U. S. $10 53

u Preserves user privacy u Good granularity u Component cost U. S. $10 53

Beacon positioning Location X Imaginary Boundary X 1 X 2 X 3 • Imaginary

Beacon positioning Location X Imaginary Boundary X 1 X 2 X 3 • Imaginary boundaries • Multiple beacons per location 54

Future work n n Dynamic transmission rate with carriersense for collision avoidance. Dynamic ultrasonic

Future work n n Dynamic transmission rate with carriersense for collision avoidance. Dynamic ultrasonic sensitivity. Improved location accuracy. Integration with other technologies such as Blue Tooth. 55

Inference algorithms n Compared three algorithms u Minimum mode u Minimum arithmetic mean u

Inference algorithms n Compared three algorithms u Minimum mode u Minimum arithmetic mean u Majority 57

Minimizing errors. n Proper ultrasonic range ensures overlapping RF and ultrasonic signals u RF

Minimizing errors. n Proper ultrasonic range ensures overlapping RF and ultrasonic signals u RF data 7 bytes at 1 kb/s bit rate u RF signal duration 49 ms u Selected ultrasonic range = 30 ft < 49 ft u Signal separation < 49 ms 58

Minimizing errors. n n Interfering ultrasound causes RF signals to collide Listener does a

Minimizing errors. n n Interfering ultrasound causes RF signals to collide Listener does a block parity error check u The reading is discarded 59

60

60