A System Architecture for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister

Slides:



Advertisements
Similar presentations
1 UNIT I (Contd..) High-Speed LANs. 2 Introduction Fast Ethernet and Gigabit Ethernet Fast Ethernet and Gigabit Ethernet Fibre Channel Fibre Channel High-speed.
Advertisements

David Culler, Jason Hill, Robert Szewczyk, Alec Woo U.C. Berkeley 2/9/2001 TinyOS Programming Boot Camp Part IV – Tiny OS 4.3 Component Overview.
How to use TinyOS Jason Hill Rob Szewczyk Alec Woo David Culler An event based execution environment for Networked Sensors.
Phil Buonadonna, Jason Hill CS-268, Spring 2000 MOTE Active Messages Communication Architectures for Networked Mini-Devices Networked sub-devicesActive.
A System Architecture for Tiny Networked Devices
Towards System Architecture for Tiny Networked Devices Jason Hill U.C. Berkeley.
Telos Fourth Generation WSN Platform
Mehdi Naghavi Spring 1386 Operating Systems Mehdi Naghavi Spring 1386.
Sensor Network Platforms and Tools
Impala: A Middleware System for Managing Autonomic, Parallel Sensor Systems Ting Liu and Margaret Martonosi Princeton University.
An Energy-Efficient MAC Protocol for Wireless Sensor Networks
Steven Koelmeyer BDS(hons)1 Reconfigurable Hardware for use in Ad Hoc Sensor Networks Supervisors Charles Greif Nandita Bhattacharjee.
CotsBots: An Off-the-Shelf Platform for Distributed Robotics Sarah Bergbreiter and Dr. Kris Pister Berkeley Sensor and Actuator Center October 29, 2003.
System Architecture Directions for Networked Sensors Jason Hill, Rober Szewczyk, Alec Woo, Seth hollar, David Culler & Kristofer Pister Presented by Israel.
Towards System Architecture for Tiny Networked Devices David Culler U.C. Berkeley Wireless hoo-hah 5/30/2000.
System Architecture Directions for Networked Sensors Qiuhua Cao Computer Science Department University of Virginia.
Mica: A Wireless Platform for Deeply Embedded Networks Jason Hill and David Culler Presented by Arsalan Tavakoli.
Jason Hill, Robert Szewczyk, Alec Woo Spring 2000 TinyOS Operating System for Networked Sensors Networked SensorsSystem Structure Composing Components.
TinyOS Meets Silicon Jason Hill NEST Retreat Summer 2002.
Reconfigurable Sensor Networks Chris Elliott Honours in Digital Systems Charles Greif and Nandita Bhattacharjee.
Generic Sensor Platform for Networked Sensors Haywood Ho.
Tiny OS Optimistic Lightweight Interrupt Handler Simon Yau Alan Shieh CS252, CS262A, Fall The.
Integrated  -Wireless Communication Platform Jason Hill.
Generic Sensor Platform for Networked Sensors Haywood Ho.
A System Architecture for Tiny Networked Devices Jason Hill U.C. Berkeley 9/22/2000.
1 TinyOS Mohammad Rahimi CSCI599-Spring Motivation  The new class of distributed tiny devices  The new generation of software.
TinyOS Software Engineering Sensor Networks for the Masses.
2008EECS Embedded Network Programming nesC, TinyOS, Networking, Microcontrollers Jonathan Hui University of California, Berkeley.
A Framework for Patient Monitoring A. L. Praveen Aroul, William Walker, Dinesh Bhatia Department of Electrical Engineering University of Texas at Dallas.
TinyOS – Communication and computation at the extremes Jason Hill U.C. Berkeley 1/10/2001.
Introduction to TinyOS. Networking Open Experimental Platform Small microcontroller 8 kB code 512 B data Simple, low-power radio 10 kbps ASK EEPROM (32.
1 EE249 Discussion System Architecture Directions for Networked Sensors (J. Hill, et al) Presented By: Sarah Bergbreiter EE249 Discussion Section October.
A Transmission Control Scheme for Media Access in Sensor Networks Alec Woo, David Culler (University of California, Berkeley) Special thanks to Wei Ye.
Empirical Analysis of Transmission Power Control Algorithms for Wireless Sensor Networks CENTS Retreat – May 26, 2005 Jaein Jeong (1), David Culler (1),
Source : System Architecture Directions or Networked Sensors - Jason Hill, Robert Szewcyk, Alec Woo, Seth Hollar, David Culler, Kristofer Pister The Mica.
1 Energy Efficient Communication in Wireless Sensor Networks Yingyue Xu 8/14/2015.
RaPTEX: Rapid Prototyping of Embedded Communication Systems Dr. Alex Dean & Dr. Mihai Sichitiu (ECE) Dr. Tom Wolcott (MEAS) Motivation  Existing work.
Spring 2000, 4/27/00 Power evaluation of SmartDust remote sensors CS 252 Project Presentation Robert Szewczyk Andras Ferencz.
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
MICA: A Wireless Platform for Deeply Embedded Networks
A System Architecture for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister
A Transmission Control Scheme for Media Access in Sensor Networks Alec Woo and David Culler University of California at Berkeley Intel Research ACM SIGMOBILE.
DESIGN & IMPLEMENTATION OF SMALL SCALE WIRELESS SENSOR NETWORK
Tufts Wireless Laboratory School Of Engineering Tufts University “Network QoS Management in Cyber-Physical Systems” Nicole Ng 9/16/20151 by Feng Xia, Longhua.
Wireless Sensor Networks Based On MICA Platform Wei Zhou Sep 8, 2004.
Extreme Networked Systems: Large Self-Organized Networks of Tiny Wireless Sensors David Culler Computer Science Division U.C. Berkeley Intel
Mate: A Tiny Virtual Machine for Sensor Networks Phil Levis and David Culler Presented by Andrew Chien CSE 291 Chien April 22, 2003 (slides courtesy, Phil.
Embedded Runtime Reconfigurable Nodes for wireless sensor networks applications Chris Morales Kaz Onishi 1.
Overview of: System Architecture Directions for Networked Sensors John Kerwin CSE 291 Sensor Networks Paper by: Jason Hill, Robert Szewczyk, Alec Woo,
Dhanshree Nimje Smita Khartad
System Architecture Directions for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister Presented by Yang Zhao.
Energy conservation in Wireless Sensor Networks Sagnik Bhattacharya, Tarek Abdelzaher University of Virginia, Department of Computer Science School of.
Power and Control in Networked Sensors E. Jason Riedy and Robert Szewczyk Presenter: Fayun Luo.
System Architecture Directions for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister Presenter: James.
Xiong Junjie Node-level debugging based on finite state machine in wireless sensor networks.
A Dynamic Operating System for Sensor Nodes Chih-Chieh Han, Ram Kumar, Roy Shea, Eddie Kohler, Mani, Srivastava, MobiSys ‘05 Oct., 2009 발표자 : 김영선, 윤상열.
Active Message Application: CONNECT Presented by Xiaozhou David Zhu Oommen Regi July 6, 2001.
Autonomous prototype sensors (motes) 4 MHz, 8bit MCU, 4 KB RAM, 8KB ROM short-range (1-10ft.) radio light and other sensors LED and serial port outputs.
System Architecture Directions for Networked Sensors.
TinyOS By Valliappan Annamalai. Hardware Mica motes (Mica2 and Mica2Dot) Hardware –Radio –Microcontroller –Flash memory –ADC –Sensor Board (MTA310)
Building Wireless Efficient Sensor Networks with Low-Level Naming J. Heihmann, F.Silva, C. Intanagonwiwat, R.Govindan, D. Estrin, D. Ganesan Presentation.
Final Presentation Smart-Home Smart-Switch using Arduino
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Why does it need? [USN] ( 주 ) 한백전자 Background Wireless Sensor Network (WSN)  Relationship between Sensor and WSN Individual sensors are very limited.
Software Architecture of Sensors. Hardware - Sensor Nodes Sensing: sensor --a transducer that converts a physical, chemical, or biological parameter into.
MAC Protocols for Sensor Networks
- Pritam Kumat - TE(2) 1.  Introduction  Architecture  Routing Techniques  Node Components  Hardware Specification  Application 2.
Implementing Context Aware Applications Class 5. Agenda Review of TinyOS execution model Tutorial on TinyOS Code walk through Code quiz Assignment 2.
INTRODUCTION TO WIRELESS SENSOR NETWORKS
MAC Protocols for Sensor Networks
Presentation transcript:

A System Architecture for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister U.C. Berkeley 11/13/2000

Computing in a cubic millimeter: Advances in low power wireless communication technology and micro- electromechanical sensors (MEMS) transducers make this possible How do you combine sensing, communication and computation into a complete architecture What are the requirements of the software? How do you evaluate a given design?

Ad hoc sensing Autonomous nodes self assembling into a network of sensors Sensor information propagated to central collection point Intermediate nodes assist distant nodes to reach the base station Connectivity and error rates used to infer distance Routing Tree Link Connectivity Base Station

Organization The Vision Hardware of today Software Requirements TinyOS system architecture System evaluation

Todays Hardware Assembled from off-the-shelf components 4Mhz, 8bit MCU (ATMEL) 512 bytes RAM, 8K ROM 900Mhz Radio (RF Monolithics) ft. range Temperature Sensor & Light Sensor LED outputs Serial Port 1.5 x 1.5

No dedicated I/O controllers Bit by bit interaction with Radio Software must process bit every 100µs No buffering missed deadline lost data Must time share on granularity of 2x sampling rate

Key Software Requirements Capable of fine grained concurrency Small physical size Efficient Resource Utilization Highly Modular

TinyOS system architecture

State Machine Programming Model System composed of state machines Command and event handlers transition a module from one state to another Quick, low overhead, non-blocking state transitions Many independent modules allowed to efficiently share a single execution context

Simple State Machine Logic bit_cnt++ bit_cnt==8 Send Byte Event bit_cnt = 0 Done No Yes Bit_Arrival_Event_Handler State: {bit_cnt} Dont you have to do computational work eventually? Tasks used to perform computational work Start

TinyOS component model Component has: Frame (storage) Tasks (computation) Command and Event Interface Constrained Storage Model allows compile time memory allocation Provides efficient modularity Explicit Interfaces help with robustness Messaging Component Internal State Internal Tasks CommandsEvents

TinyOS – The Software Scheduler and graph of components constrained two-level scheduling model: tasks + events Provides a component based model abstracting hardware specifics from application programmer Capable of maintaining fine grained concurrency Can interchange system components to get application specific functionality

Composition into a Complete Application RFM Radio byte Radio Packet i2c Temp photo Messaging Layer clocks bit byte packet Routing Layer sensing application application HW SW ADC messaging routing

The Application The single node application is just another state machine A network of devices is just another collection of state machines Message_Handler(incoming_message){ if(sender_is_better_parent()){ my_parent = sender(); }else if(I_am_parent_of_sender(){ forward_message(my_parent, incoming_message); } Clock_Event_Handler(){ check_expire(my_parent); if(my_parent != null){ send_data(my_parent); }

Analysis Lets take apart Space, Power and Time

Space Breakdown… Code size for ad hoc networking application Scheduler: 144 Bytes code Totals: 3430 Bytes code 226 Bytes data

Power Breakdown… But what does this mean? Lithium Battery runs for 35 hours at peak load and years at minimum load! Thats three orders of magnitude difference! A one byte transmission uses the same energy as approx cycles of computation. ActiveIdleSleep CPU5 mA2 mA5 μA Radio7 mA (TX)4.5 mA (RX)5 μA EE-Prom3 mA00 LEDs4 mA00 Photo Diode200 μA00 Temperature200 μA00 Panasonic CR mAh

Time Breakdown… 50 cycle thread overhead (6 byte copies) 10 cycle event overhead (1.25 byte copes) Components Packet reception work breakdownCPU UtilizationEnergy (nj/Bit) AM 0.05%0.20%0.33 Packet 1.12%0.51%7.58 Ratio handler 26.87%12.16% Radio decode thread 5.48%2.48%37.2 RFM 66.48%30.08% Radio Reception Idle-54.75%- Total %

How well did we meet the requirements? Capable of fine grained concurrency Small physical size Efficient Resource Utilization Highly Modular

Conclusions People are working on shrinking sensors and communication, we need to focus on what brings them together TinyOS is a highly modular software environment tailored to the requirements of Network Sensors, stressing efficiency, modularity and concurrency We now have a whole new set of tradeoffs need to investigate

Hardware Kits Two Board Sandwich Main CPU board with Radio Communication Secondary Sensor Board Allows for expansion and customization Current sensors include: Acceleration, Magnetic Field, Temperature, Pressure, Humidity, Light, and RF Signal Strength Can control RF transmission strength & Sense Reception Strength

How to get more information:

Real time operating systems QNX context switch = 2400 cycles on x86 pOSEK context switch > 40 µs Creem -> no preemption

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 CommandsEvents //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(); };

Assembling Components Assemble overall system structurally using either textual tools or structural VHDL Allows for compile time resolution of event handlers Eliminates need for registration mechanisms and dynamic dispatch Automatically allows events to be handled by multiple components. (Power, Init,…) Significantly more flexibility than library based component models Less runtime overhead than OOP Allows for more aggressive in-lining

Ad hoc networking Each node needs to determine its parent and its depth in the tree Each node broadcasts out when parent is known At start, Base Station knows it is at depth 0 It send out Individuals listen for minimum depth parent 0 Base

Easy Migration of the Hardware Software Boundary TinyOS component models hardware abstractions in software Component model allows migration of software components into hardware Example: Bit level radio processing component could be implemented as specialized FIFO with complex pattern matching Could reduce CPU utilization while sending by more than 50%

Panasonic CR mAh Sample tradeoffs

Hardware Kits Two Board Sandwich Main CPU board with Radio Communication Secondary Sensor Board Allows for expansion and customization Current sensors include: Acceleration, Magnetic Field, Temperature, Pressure, Humidity, Light, and RF Signal Strength Can control RF transmission strength & Sense Reception Strength

TOS Component Messaging Component Internal State Internal Tasks CommandsEvents

Energy It turns out energy is your most valuable resource Traditional notions of resources – memory, CPU, I/O become expenses, not resources All components must support low power modes

How well did we meet the requirements? Small physical size Complete applications in 3.5 Kbytes Useful applications developed for 4Mhz, 8-bit CPU Efficiency Demonstrated by our ability to use a single controller to manage multiple RAW I/O sources State Machine programming model allows efficient use of CPU and memory Support multiple simultaneous flows of data though single node 50 cycle thread overhead, 10 cycle event overhead Modular Component model allows efficient composition of task specific applications Model allows multiple applications to run side-by-side

What does it take to do this with… 4 MHz embedded microcontroller 512 bytes of RAM 8K of ROM Radio with bit-by-bit interface Milliamps of power

Emerging Themes Growth rates… data > storage > CPU > communication > batteries Graph of ^

Future Goals: Short Term Deploy sensor net for week long trials Target Civil Engineerings and The Center For the Built Environments needs for a real world deployment. Determine algorithms for aggregation and analysis of data inside the network. Support applications where data is picked up by roaming data collection nodes. Long Term Deploy networks of 1000s of nodes Year long, unattended deployments

What is performance Physical Size? Power consumption? Overhead? Data Throughput? Total network battery life? Measurement accuracy? Data Latency? Reconfigurability?

Dynamics of Events and Threads Message Send Transition Timing diagram of event propagation

Cut from energy slide. How do you allocate your power? Communication, computation, sensing or actuating What new tricks can you play to conserve it Duty cycle Lower accuracy Data compression, aggregation, filtering

State machine example n++ Byte Arrive Event Bit Arrive Event Bit Level State Machine Bit Count = n if(n == 8)