Title: NEST Midterm Wireless OEP Demo
1NEST Midterm Wireless OEP Demo
- David Culler
- Eric Brewer, David Wagner
- Shankar Sastry
- NEST PI Meeting
- July 14, 2003
2Role of MidTerm demo in the program
Challenge Application
SW platform
HW platform
sensors actuators processing storage
communication
3Platform Timeline
- 6/01 Start of Program Platform Proposal
- 1/02 Delivered 1000 Micas TinyOS kits to
program projects - 7/02 Projects demo working components OEP demos
NEST-Tracker - 2/03 OEP demos NEST-Tracker composable framework
- Collect services from projects
- SOCOMM and UW demos
- 7/03 Mid-Term Demo on OEP2
- Show feasibility of platform and middleware
-
- Challenge Application
4Outline
- Introduction
- Overview of the Demo
- OEP2 HW/SW Platform
- Component Services
- Mini-demos
- Time synchronization
- Ranging
- Localization
- Sensing
- Routing
- Demo
5Overview of the midterm demo
6Establish active sensor field
- Establish spatial and temporal co-ordinates
- Minimize time-to-deploy
- Self-localization (ultra-sound ranging) from few
Anchor nodes - Functional heterogeneity
- Time synchronization to establish rough clock
7Regionalized Entity Detection
- Local signal processing of magnetometer readings
- Generate local sighting of strength s at time t
- Node with max s over time window elected leader
- Aggregates sightings into entity position
estimate - Communicate entity detect to entity authority (EA)
8Self-Organized Routing Structure
- Sensor nets 1-all bcast all-1 data collection
- Tree construction (bcast, gradient reinforcement,
QoS) - NEST any-to-few mobile
9Entry Detection and Tracking
- Power management, Distributed sensing, sentry
service (UVA), multihop N-1 routing
10Pursuer Challenges
- Multiple entities in the field
- Disambiguation?
- Mobile destination, multicast upward
- Navigation, control,
11Disambiguation and Hierarchy
- Node Heterogeneity
- Stationary sensor field nodes
- uniform, limited resources, short-range
connectivity - Functional specialization
- Anchored vs localized
- Landmark nodes
- Mobile Pursuer Nodes
- Greater computing resources
- Alternative sensing modes localization
mechanisms - Alternative communication channels
- Hierarchy of knowledge
- Sensor field nodes detect entities, maintain
routing state - Pursuer nodes maintain entity relationships
- Map of pursuers and evader
- Inter-pursuer coordination
- Entities disambiguated at high levels in hierarchy
12Routing Service Challenge
- Mobile ad hoc routing (eg, MANET) have focused on
any-to-any independent paths ala internet - Protocols involve extensive discovery and state
maintenance - DSDR, AODV,
- either state proportional to size of net or
partial flood on any new connection - Sensor nets dominated by 1-to-N (broadcast) and
N-to-1(data collection or aggregation) - simple tree routing structures
- cost-based topology formation with data-driven
reinforcement - Simple cases of directed diffusion
- Here, entity leader (any) routes to few pursuers
(anywhere) - Want simple, bounded-state routing structures
- Small mobility cost
13Landmark-based Routing
- Build routing tree (forest) to landmark node(s)
- Entity leader routes up to landmark
- Each Pursuer EA handshakes w/ close sensor node
(crumb) - Path to landmark forms crumb trail
- Routes up to landmark, beam-form down to multiple
EAs - Incremental crumbs
Alternative routing services PARC
14Pursuer Control
- Localizes within field coordinates
- Multiple sources GPS, Ultra-sound, RSSI
- Obtains entity detections from sensor field
- Obtains other pursuer positions
- Pursuer channel or sensor field
- Isolates evader position
- Maintains map
- Tracking and estimation
- Navigates toward evader
- Control loop head-and-run till next update
- Target based on estimate from evader track
- Coordination and collision avoidance with other
pursuer - When close, STOP
Alternative Control Services OSU
15Overall Demo Operation
- Sensor field established coordinate grid and time
- Sensor field waits in quiescent sentry state
- Command/Monitor is stationary EA
- Plus snooping display for visibility of internal
operation - Evader enters field is detected and tracked
- Pursuers enter field
- Entity detection, routed to landmark, beamed to
EAs - Pursuers distinguish evader from self entities
- Navigate in co-ordination to pursuer
- Stop when pursuer gets within 1 cell of evader or
evader leaves field
16OEP2 Hardware Platform
- Main board Mica2 dot
- Atmega microcontroller, Flash, clock
- CC1000 frequency agile FSK radio
- Small form-factor
- Xbow based on Mica
- Sensor Board magnetometer
- Honeywell mag with 2-stage amplification
- Set/reset circuit (5v)
- 4-port digital Pot for biasing and filtering
- Power Subsystem
- Dual-voltage booster/regulator board w/
rechargeable battery - Controllable 5 v
- Adapter board for conventional recharger
- Ranging boards
- UltraSound
- Acoustic
- Enclosure
- Corresponding Micro-climate and occupancy
detector stack
17Power Board
- Dual 3.3V and 5V supply
- independently controlled
- 3550mAh capacity at 1.2V on rechargables
- drawing 25mA constant current (tested in lab)
- operation down to 0.8V
- 50uA current at 1.2V in sleep state with boost
converter on
18Enclosure Design
reflector
Exposed components
Watertight compartment
ultrasound
main
mag sense
power
battery
Collision absorption
19OEP2 Software Platform
- TinyOS 1.1 NesC 1.1
- Rich Component Composition Language
- ChipCon radio stack
- Network Programming
- Race detection
- TOSSIM TinyViz
- Abstract Timer
- Robust Multihop Data Collection
- TinyDB
20Higher-Level Node Service Architecture
appln services
Service Coordination
Network services
routing
Intra-mote services
Hardware abstraction
21TinyOS Core Components
Service Coordination
- Network Stack
- ChipCon
- UART
- I2C
- Magnetometer
- Abstract Timer
- One-shot
- periodic
routing
Timer
messaging
Hardware abstraction
22Configuration Service
Service Coordination
- Query Set variables
- Any service can register config variable
- Late binding
- Limited virtualization
routing
Timer
Config
messaging
Hardware abstraction
23Routing
Service Coordination
- Protocol stack
- Outbound queue
- Multihop
- Broadcast
routing
Timer
messaging
Hardware abstraction
24Neighborhood Tuple Space
var2
var1
var3
id
Service Coordination
routing
nbr-hood
- Data sharing abstraction
- Per-node logical tuple space
- Get/Set field
- Abstract neighbor relation
- Flexible publish/sync policy
Timer
messaging
Hardware abstraction
25Power Control Service
Service Coordination
- Provides start/stop/awake control for each
component - Protocol and sequencing
Power ctrl
routing
Timer
messaging
Hardware abstraction
26Reset and Mgmt Services
Service Coordination
- Service protocol to bring components to a clean,
initialized state - Health and status commands
- Blink
- ping
Reset
Mgmt
routing
Timer
messaging
Hardware abstraction
27Service Coordination
Service Coordination
- Schedule application services and underlying
resources - Provides start/stop
- One AS active at any time
- Additional constraints
- Mag/Msg interaction
routing
Timer
messaging
Hardware abstraction
28Localization Service
Localization
Service Coordination
- Build field-relative coordinate grid
- Range measurements
- Propagate to determine multihop ranges from
anchors - Compute estimated positions
routing
Timer
messaging
Hardware abstraction
29Spanning Tree Service
Span Tree
Service Coordination
- Build routing tree (forest) from Landmark nodes
- Low-contention, signal-strength determined tree
- New bcast
- Collect readings till quiet
- Filter based on RSSI
- Min hop (filtered) with max strength
- Retransmit after delay
routing
Timer
messaging
Hardware abstraction
30Routing Test Service
Route test
Service Coordination
- Route from node A to B via landmark
- Execute mgmt cmd
routing
Timer
messaging
Hardware abstraction
31Mag Service
Mag position
Service Coordination
- Collect mag stream
- EWA into threshold detector
- Bcast in trigger
- Leader election
- Estimate position as center of mass
- Route via landmark to EA
routing
Timer
messaging
Hardware abstraction
32Entity Authorities
- Maintain crumb trail to landmarks
- Collect entity detections via LM routng
- Collection position estimates
- GPS, node RSSI, mag entities, ultrasound
- Collection other pursuer positions
- Alternative channel or LM routing
- Maintain entity map
- Execute navigation control
- Coordinate strategies
33Mini Demos
34TimeSynch Mini-Demo
35Time Sync
- Cross-layer optimization provided by platform
- Eliminates typical large variance on send-delay
- Timestamp outgoing msg after mac delay
- Timestamp incoming
- UCLA demod RBS timesynch
- Vanderbilt provided simple multihop direct method
- Example
- Ring of nodes maintaining exclusive slots
36Sensing Mini-Demo
37Sensing Magnetometer Detection
- Based on a 2 stage amplification with a
potentiometer-controlled bias - Set/Reset circuit
- improved accuracy no drift
- 50 uJ of energy per operation
- 5 mW at 128 Hz
- Improved resolution
- 130 uGauss on a 10-bit Atmel ADC
- Range - 4 gauss
- (Earth's magnetic field 0.5 gauss)
- Software-tunable RC filter
- adaptive sampling and control
- allows for sampling between 5MHz (sensor BW) and
10 Hz without aliasing - Further advances with OSU techniques
HoneyDot
38Ranging and Localization Mini-Demo
39Ranging Board
- Lessons from sounder, UCLA ultrasound, VU ranging
- Dedicated Atmega 8, like motor-control board
- Dual proc TinyOS with UART link
- TX
- Command Processor
- Generate 25 KHz 10v signal (range)
- RX
- Triggered by radio chirp
- Analog switch
- Starts Atmega 8 timer
- Analog compare amplified recv with digital pot
threshold. - Completes timer
- Signals time-stamped event
25 KHz US Transceiver
tone
Atmel 8
digital pot
UART AM channel
Main TinyOS Mote
40 Ultra-Sound Ranger
- UCLA Ultra-sound provides good directional
ranging - High frequency, high amplitude pulse
- PEG requires ranging in the plane
- Rob Szewczyk designed variant of UCLA cone
- Vanderbilt showed good acoustic ranging with high
sample rate and sophisticated processing - Dual TinyOS approach off-loads sampling
- Relatively simple processing
- 5 cm accuracy in the plane
- 5 m range
- Demo display range of roving node
reflector
ultrasound
41Localization for Ease of Deployment
- Few anchor nodes at known positions
- Range between pairs of nodes
- Propagate range estimates to get distance
estimates from anchors - Calculate estimated location from set of anchors
- Least squares fit
- All three of these steps on-mote and entirely
distributed - gt behavior of algorithm
- gt live demonstration on 9-node array outside
42Localization
43Localization Accuracy
44Localization Accuracy
45Localization Accuracy
46Live Localization Demo
Red Anchor Blue Actual Green Estimated
2-hop
47Routing Mini Demo
- Goal route information to the pursuers
- Challenge pursuers are mobile
- Need to route from one mobile entity (motes near
evader) to another (motes near the pursuer) - Two solutions
- Landmark routing -- landmark keeps track of
the pursuer and forwards messages from the evader
motes - Constrained Broadcast multicast to possible
locations of the pursuer (Xerox PARC)
48Routing Mini-Demo
- Any-to-one ? global re-broadcast
- Any-to-mobile ? repeated re-broadcast
49Berkeley Landmark Routing
- Crumb-trail allows landmark to forward to mobile
- Avoids repeated re-broadcast
- Question is this too fragile?
50Statistics
- Bandwidth received/sec
- Delivery Rate received/ sent
- Energy Cost transmissions
- Latency time received time sent
51PARC Constrained Broadcast
- Allow sender to initiate global re-broadcast
- Only requires limited repeated re-broadcast
- Question does this still waste too many messages?
52 Routing Results
Berkeley
PARC
- Bandwidth 5/sec 5/sec
- Delivery Rate 80 90
- Energy Cost 60/sec 100/sec
- Latency .5 sec .5 sec
53Closing The LoopPursuer Control Overview
Mote Data Acquisition
Filtering Object Identification
Evader State Estimator
Pursuer State Estimator
Mote Coordinate Transformation
GPS
Mote
Motor Controllers
Path Planner
Navigation Constraints
54Pursuer Control Goals
- Robust to spurious magnetometer readings
- Adaptive to different levels of sensor noise (
mote network and GPS ) - Accurately correlate magnetometer readings to
self, evader, or disturbances - Plan route to intercept evader using internal
state estimation of self and evader - Apply hard navigation constraints
- Do not leave the field
- Do not crash into the evader
- Information-quality adaptive control
- High-noise gt slower speed
55Snooping Display
- Display / Control Panel represented as stationary
pursuer - For additional detail, snoop on overall network
via high-gain antenna - Simultaneous transmissions may collide only for
display - Spatial reuse within the network
- Visualize
- Node positions
- Routing tree and crumb trail
- Mag fields
- Estimated evader and pursuer positions
56Scale of Todays Demo
- Roughly 1/10th scale
- 100 nodes in sensor field of 400 m2
- 10x10 grid at 2 m spacing
- Radios tx power to give about 4m radius
- Ranging limit about 3m in grass (10m indoor)
- Mag limit about 2 m
- Potentially much greater with OSU signal
processing - Human-driven evader
- Rover
- Single Autonomous pursuer
- Pre-localized
57Questions
58Thanks
- Cory Sharp
- Shawn Schaffert
- Phoebus Chen
- Phil Levis
- Alec Woo
- Chris Karlof
- Fred Jiang
- Naveen Sastry
- Rob Szewczyk
- Kamin Whitehouse
- Rob von Behren
- Joe Polastre
- Jaein Jeong
- Sukun Kim
- Terrence
- Neal