Title: Power, Location,
1Power, Location, Time in Wireless Sensor
Networks
- Selected Results from UCLAsDSN, PADS,
SensorWare Research
Collaborators M. Potkonjak (UCLA), C. Chien
(Rockwell),J. Agre (JPL), B. Schott R. Parker
(ISI), M. Jones (Virginia Tech.)
2Networked Embedded Devices
SmartSensorNode
T3
Event
Internet
SmartSensorNode
SmartSensorNode
Gateway
T2
T1
Event
SmartSensorNode
- Nodes coordinate local processing among
neighbors to combine their results - lower network traffic, higher-level sensory tasks
- Application large scale, dynamically changing,
robust sensor colonies
3Example Node Rockwells WINS
- Capabilities vibration, acoustic, accelerometer,
magnetometer, temperature sensing - Features modular, miniature form factor
4Design Trade-offs
Lifetime(power)
Rapidity(latency -1)
Quality(coverage, fidelity)
5Outline
- Power-aware RTOS networking
- Network coverage algorithms
- Low-latency tracking
- Implementation and simulation
6Power-aware Resource Management in RTOSs
- Latencies are critical
- unlike DSP where only rate (sample period)
matters - deadlines important in protocols, target tracking
- Tasks are dynamic
- cannot schedule the tasks statically
- Hardware provides many control knobs for
power-performance trade-off - CPUs with dynamic frequency/voltage
- radios with multiple modes and symbol rate choices
7Fixed Priority Preemptive CPU Scheduling in RTOSs
- Consider task set (period, WCET, deadline)
- (10, 3, 10), (14, 7, 14)
- CPU utilization 3/10 7/14 80
- Obvious power management strategies
- Shutdown when idle
- saves 20 power
- Can we slow CPU by 20 ( reduce V) for more
savings? - NO, as deadlines will no longer be met
- However, can slow by x 14/13 and lower voltage to
still meet deadlines, and shutdown during idle
time - saves 22.5 in power
- Problem uses WCET (worst case execution time)
8Predictive Strategy for Exploiting Execution-time
Variation
- Significant variation in execution time of tasks
- WCETBCET often gtgt 1
- e.g. compressed speech playout task has different
time for talkspurt vs. silence - e.g. on test run, MPEG decoder time range
0.003s, 0.15s with average 0.035s - Obvious shut down or reduce voltage if task
finishes earlier - Even better predict execution time of task
instance and dynamically scale voltage even more
aggressively - task-specific predictor
- but, some deadlines may be missed!
- leads to packet loss another form of noise!
- provides power-quality trade-off
9Sample Simulation Result
10Power-aware NetworkingPath Diversity Node
Redundancy
- Idea combine data from different nodes, and
distribute traffic over alternative paths - increase network lifetime and coverage
- packet disperser and combiner entities
- works with variety of routing approaches
- Evaluation metrics
- time to breakdown
- of depleted nodes
- RMS energy distribution
- A problem do not know which nodes are important
as it depends on future target traffic pattern
and user movement - traditional load balancing is based on only
present activity - goal is stochastic lifetime, but practical
approaches need indirect measures
11Data Combining
- Centralized approach Data combining entity for a
cluster - Distributed approach Data combining entities
created at those nodes that receive packets from
different sources for the same user - soft state new DCE when node with DCE dies
12Spreading Techniques
- Stochastic scheme
- e.g. stochastic GBR where traffic spread among
paths with similar gradients - Energy-based scheme
- e.g. node increases its height when its energy
falls below a threshold to repel traffic - Stream-based scheme
- take action even before a node begins to die
- divert new streams away from nodes that are
handling other streams
13Evaluating Energy Efficiency
Without load spreading
With load spreading
- An approximate way is a histogram
- area of histogram vs. shape of histogram
- but only approximate (cant average over all
futures) - Possible metric to capture the essential
histogram info - RMS of the histogram (measures total as well as
spread)
14A Path Diversity Scenario
B
C
A
F
D
E
user
- A and B generate 1 packet every 100 ms until 5s
- C generates 1 packet every 100 ms from 5s till 15s
15 of Nodes with gt 10 Battery
Packets received by t150 Normal
127 Stochastic 133 Energy Disperse
160 Stochastic ED 161 Divert streams 175
16RMS Battery Energy Consumption
Lower Bound 2
Lower Bound 1
17Coverage and Location Problems
- Queries not just about the target, but also about
the network coverage - Example
- where are the nodes located?
- what is the coverage of the sensor network?
- How do we
- where are the paths for useful metrics such as
- maximal breach
- minimal exposure
- maximal support
- where should additional nodes be located to
improve coverage metrics?
18Example Maximal Breach Path
- Problem find the path of maximal breach of
surveillance between a starting region I and
ending region F through a sensor network
Approximate coverage boundary
Sensor node site
Breach origin
I
Breach destination
F
19Solution Step 1 Generate Voronoi Diagram
By construction, each line-segment maximizes
distance from the nearest point
(sensor). Consequence Path of Maximal Breach of
Surveillance in the sensor field lies on the
Voronoi diagram lines.
20Solution Step 2 Weighted Graph
- Given Voronoi diagram D with vertex set V and
line segment set L and sensors S - Construct graph G(N,E)
- Each vertex vi?V corresponds to a node ni ?N
- Each line segment li ?L corresponds to an edge ei
?E - Each edge ei?E, Weight(ei) Distance of li from
closest sensor sk ?S - Formulation Is there a path from I to F which
uses no edge of weight less than K?
21Solution Step 3 Search for Maximal Breach Path
- Breadth first search to establish the existence
of path from I to F - A combination of repeated binary search and BFS
to find the path of the maximal Weights(ei),
which will have the longest absolute distance
from the sensor nodes - This will be the maximal breach path optimized
for absolute distances
22System Scenario
GATEWAY
COVERAGE SERVER
Network Management
- Coverage service
- Location discovery
- RSSI-based joint location and channel parameter
estimation using iterative multilateration
23Latency in Tracking Tasks
- Sensor nodes viewed by some as tiny database
servers - a user query is answered by aggregating results
- forms of queries
- Do you currently see X?
- Did you see X in the past timer T?
- Inform me when you see X.
- Tell me periodically what you see.
- Problem remote user in the loop
- leads to higher latency for tracking
- also, excessive traffic and wasted power
24Low-latency Proactive Tracking
- Tracking request is a tiny control script sent
to sensor node detecting the target - Script spreads to select nodes in target
vicinity, and organizes them into an active set
for the target - results filtered and combined locally
- Active set for a target is autonomously
updated to minimize latency and traffic to user - nodes woken up and added in advance using
history-based target motion prediction
25Our System Architecture
Transient External User (UAV)
Sensor Scripts
SCRIPT
Applications
APP
Power-ware RTOS
Sensor Middleware
Hardware Abstraction Layer
Sensor Node Hardware
Sensor 1
Sensor 2
26SensorSim Architecture
monitor and control hybrid network (local or
remote)
real sensor apps on virtual sensor nodes
app
GUI
app
socket comm
serial comm
ns
HS Interface
GUI Interface
RS232
Ethernet
gateway Dll (RSC)
V
V
R
V
Gateway Machine
V
R
modified event scheduler
Proxies for real sensor nodes
Simulation Machine
27Conclusion
Lifetime(power)
Rapidity(latency -1)
Quality(coverage, fidelity)
- Task-specific multidimensional quality of service
- Hunt for the best protocol for sensor nets is
futile - e.g. different tasks work best with different
routing - boundary between networking other layers fuzzy
in sensor net - A distributed computing viewpoint is better
suited - application-specific protocols for different
tasks - approach a minimal scriptable substrate with
power, location, and time aware services