emerging wireless networks - mcmaster university
TRANSCRIPT
178
Emerging Wireless Networks
179
OutlineScope
Wireless sensor networkLower Power Personal area networksWireless mesh networks
FocusTechnology overviewRepresentative projects/solutions
Embedded Networked SensingMicro-sensors, on-board processing, and wireless interfaces all feasible at very small scale
can monitor phenomena “up close”
Will enable spatially and temporally denseenvironmental monitoringEmbedded Networked Sensing reveal previously unobservable phenomena
Seismic Structure response
Interaction between ground motion and structure & foundation response
Contaminant Transport
Understand contaminant transport and fate in real systemsEmergency Medical
Care Ecosystems
Adopted from D. Estrin’s Mobicom’02 tutorial
Develop in situ observation of species and ecosystem dynamics
181
Enabling Technologies
Embedded Networked
Sensing
Control system w/Small form factorUntethered nodes
ExploitcollaborativeSensing, action
Tightly coupled to physical world
Adopted from D. Estrin’s Mobicom’02 tutorial
Adopted from D. Estrin’s Mobicom’02 tutorial
182
RFIDRadio frequency identifierActive
Battery powered Read-write and read only versions available Longer read ranges (25 to 100 feet) Higher tag costs ($20 to $70 per tag) 2D location systems possible Example: toll booths
Passive Powered by reader Read-write and read only versions available Shorter read ranges (Inches to 20 feet) Lower tag costs (at least $1 per tag) Item ID Example: item management
183
SensorPassive elements: seismic, acoustic, infrared, strain, barometer, humidity, temperature, etc.Passive Arrays: imagers (visible, IR), biochemicalActive sensors: radar, sonar
High energy, in contrast to passive elements
184
Networked Sensor Node
Rice GnomeTIMSP430F149 16bit
(7.3728 MHz) 60kB
flash memory and
2kB RAM
900MHz radio, GPS
extension module
MANTIS (U. of Colorado)CC1000 multi-channelradio
ATMEGA 128microcontroller
Intel MoteStrong ARM core, SRAM, FLASH, BT radio
Xbow MoteMICAz 128KB ATMega128Lprogram flash memory512K data memory2.4GHz 802.15.4 Zigbee radio (250 kbps)H/W AES-128
185
Sensor Node Energy Roadmap
20002000 20022002 20042004
10,00010,000
1,0001,000
100100
1010
11
.1.1
Ave
rage
Pow
er (m
W)
• Deployed (5W)
• PAC/C Baseline (.5W)
• (50 mW)
(1mW)
Source: ISI & DARPA PAC/C Program
Sensor Handheld Mobile Desktop Server
100W10W1W100mW10mW1mW100uW
186
Networked Sensor SoftwareTinyOS: a sensor operating system
nesC: even-driven programming modelA graph of components
Maté: virtual machine that allows online reprogrammingTOSSIM: simulator for TinyOS networks
TinyVizTythonPowerTOSSIM
http://www.tinyos.net/
187
TinyOS Overview
CommunicationActuating Sensing Communication
Application
Main (scheduler)
Hardware Abstractions
Concurrency: event-driven architectureModularity:
Scheduler + a graph of components compiled into executables
EfficiencyEvent/command -- function callsFew context switches
FIFO scheduler, non-preemptive
No kernel/application boundary
188
TinyOS Component Model
Component has:Frame (storage)Tasks (computation)Command and Event Interface
Messaging Component
Internal StateInternal Tasks
Commands Events
Image courtesy Jason Hill et al
Each component declares the commands it uses and the events it signals.Statically allocated, fixed sized framesTasks run to completion but can be preempted by eventsNon-blocking requests to lower level components
Cannot signal events
189
TinyOS Component Model (cont’d)Events
Event handlers deal with hardware events (interrupts) directly or indirectlyDeposit information into a framePost tasksSignal higher level eventsCall lower level commands
The scheduler puts the processor to sleep when the task queue is empty.Peripherals keep operating and can wake up the processor.
190
An Example of TOS Component
Messaging Component
AM_SUB_INIT
AM_SUB_POWER
AM_SUB_TX_PACKET
AM_TX_PACKET
_DONE
AM_RX_PACKET
_DONE
Internal State
AM_INIT
AM_POWER
AM_SEND_MSG
AM_MSG_REC
AM_MSG_SEND_DONE
Internal Tasks
Commands Events
//AM.comp//
TOS_MODULE AM;
ACCEPTS{
char AM_SEND_MSG(char addr, char type,char* data);
void AM_POWER(char mode);
char AM_INIT();
};
SIGNALS{
char AM_MSG_REC(char type, char* data);
char AM_MSG_SEND_DONE(char success);
};
HANDLES{
char AM_TX_PACKET_DONE(char success);
char AM_RX_PACKET_DONE(char* packet);
};
USES{
char AM_SUB_TX_PACKET(char* data);
void AM_SUB_POWER(char mode);
char AM_SUB_INIT();
};
Slide courtesy Jason Hill et al
191
Internal Component Graph
Slide courtesy Jason Hill et al
RFM
Radio byte
Radio Packet
UART
Serial Packet
I2C
Temp
Photo
Active Messages
Clocksbit
byte
packet
Ad hoc Routing Applicationapplication
HW
SW
192
The Communications Stack
Calculates CRC.
Retransmit dropped packetsusing Acknowledgement
Sends and receives data in bytesand notifies data arrival
Setting the parameters forCC1000 radio chip
Packet decomposition and reassembly
*:newly made or modified fromexisting network stack
ReliableCommGenericCommAMStandard
RadioCRCPacketRFComm
ChipconSpiByteFifoC
SecDedEncoding
ChannelMonC
Application
Radio
***
*
*
193
RFM
Radio byte
Radio Packet
UART
Serial Packet
I2C
Temp
Photo
Active Messages
Clocksbit
byte
packet
Ad hoc Routing Applicationapplication
Simulation
SW
TOSSIMCompile TinyOS components into native binary
Can experiment directly new application componentsFast and can scale to thousands of nodes
194
TinyViz
TinyViz GUI
NesCNesC
events
commands
TinyViz TOSSIM
MoteApplication
Program
Radio Model
ExternalComm
Event BusPlugins
SimComm
Event Queue
A visualization tool
195
PowerTOSSIMSimulates the energy consumption of each node in a sensor network
Benchmarking power consumption of different modulesOutput power state transition during simulationPosterior analysis of CPU cycles
196
197
CPU Cycle AnalysisTOSSIM compiles application code into a native PC binaryTherefore, difficult to determine how many CPU cycles used on the moteCould simulate at the AVR instruction level
Very slow
Instead, record runtime basic block execution counts, map basic blocks to cycles used on AVR.
This has low overhead
198
Cycle Count Estimation
199
Cycle Count Estimation (2)
200
Cycle Count Estimation
Potential inaccuracies:Need accurate mapping from C basic blocks to binarySome low level components have no mapping
In many cases, active CPU cycles very smallNeglegible effect on total power
201
Sample Sensor ProjectsCaveats: the following slides are mostly taken from the corresponding authors’ presentation
Acoustic localization (UIUC)CotsBots (Berkeley)Great Duck Island (Berkeley)CodeBlue (Harvard)
202
203
Localizing Acoustic EventsIntrusion detectionTracking of objects
Sink/Pursuer
Sensor
Router
Sink/Pursuer
204
Lightning Protocol
Proximity-based localizationFind the “closest” sensor“loudest” is not necessarily “closest”!
Based on the observation that electronic-magnetic wave travels faster than acoustic wave (c = 3e8m/s, v = 340m/s)Implementation
MICA mote
205
206
Open-source hardware and software platform for distributed roboticsSmall, cheap, off-the-shelf, and modular robots
Goals for CotsBots
Emphasize application design software for large (> 50) robot networksReduce startup costs to demonstrate distributed multi-robot algorithms
207
208
Building an Application: Beep Diffusion
Simple algorithm to spread robots apartAdjusting microphone gain adjusts distance robots move apart
Time Slot Manager
Send Msg/Beep
Listen
DriveObstacle
My Slot
Heard Msg
Heard Beep
Hit Obstacle
Done Driving
Done Driving
209
Building an Application: Beep Diffusion
Implementation
5 robots in 10ft x 10ft area3.5 second slot time
Difficulties with buzzer/tone detector hardware lead to inconsistent beep radius
210
Habitat Monitoring on Great Duck IslandQuestions
What environmental factors make for a good nest? How much can they vary?What are the occupancy patterns during incubation?What environmental changes occurs in the burrows and their vicinity during the breeding season?
211
Application architecture
Base-Remote Link
Data Service
Internet
Client Data Browsingand Processing
Transit Network
Basestation
Gateway
Sensor Patch
Patch NetworkSensor Node
212
GDI 2002 deployment
213
http://www.greatduckisland.net/index.php
214
CodeBlueProvide routing, naming, discovery, and security for wireless medical sensors, PDAs, PCs used to monitor and treat patients in a range of medical settings.
Integration of medical sensors with low-power wireless networks Wireless ad-hoc routing protocols for critical care; security, robustness, prioritization Hardware architectures for ultra-low-power sensing, computation, and communication Interoperation with hospital information systems; privacy and reliability issues
215
216
What we have coveredKey difference between wireless and wireline communication
Wireless link quality is highly variableNo physical boundary in wireless connectivityAllows mobility
Some quantitative results in propagation model and modulation
Some quantitative results in propagation model and modulation
How does these characteristics affect the network protocol stack? Or how should the network protocol be (re-)designed differently
•MAC protocols, IEEE 802.11•Routing, Mobile IP•Modification to TCP•Security•Power
•MAC protocols, IEEE 802.11•Routing, Mobile IP•Modification to TCP•Security•Power
Enabling new neworkarchitecture, new services, new applications
Multi-hop wireless networks sensornet, wireless mesh networks etc.• Routing protocol• Mobility model• Location aware applications & mobile services
Multi-hop wireless networks sensornet, wireless mesh networks etc.• Routing protocol• Mobility model• Location aware applications & mobile services
Educational goals:• Familiar with network simulation tool, tcl, C++ programming• Get some hand-on experience• Learn how to do “experiments”, analyze results, and draw observations• Learn how to present technical ideas in writing & verbally• And think critically!
Educational goals:• Familiar with network simulation tool, tcl, C++ programming• Get some hand-on experience• Learn how to do “experiments”, analyze results, and draw observations• Learn how to present technical ideas in writing & verbally• And think critically!