180 likes | 349 Views
Dynamic reconfiguration in Wireless Sensor Networks Mihai GALOS, Fabien Mieyeville, David Navarro Lyon Institute of Nanotechnology (INL) Lyon , France. Outline. Introduction to WSN (Wireless Sensor Networks) Dynamic Reconfiguration Existing solutions Motivation Our solution
E N D
Dynamic reconfiguration in Wireless Sensor Networks Mihai GALOS, Fabien Mieyeville, David Navarro Lyon Institute of Nanotechnology (INL) Lyon, France
Outline • Introduction to WSN (Wireless Sensor Networks) • Dynamic Reconfiguration • Existing solutions • Motivation • Our solution • Supported Architectures • Results • Conclusion and Perspecitves
WSN - Introduction Wireless sensor networks (WSNs) are composed of resource-constrained sensor nodes that can cooperatively monitor physical or environmental conditions, such as temperature, pressure, acceleration, … • Applications: • environmental data collection • security or health monitoring • Vehicles • … • Network standards: • IEEE 802.15.4 • ZigBee
Some existing platforms: commercial " lab assembled" WSN - Node • Small size • Low cost • Low energy consumption • Low processing power
WSN Dynamic Reconfiguration • Node, typical application: • Sensing of an analog value • Processing of the read value • Sending it via RF • Dynamic Reconfiguration (firmware update): add, modify or remove functionalities after deployment • Reasons for Dynamic Reconfiguration: • Fine-tuning of algorithms (i.e. : compensating for meteorological conditions) • Adding / remove algorithms • Replacing a failing node
Existing Solutions for Dynamic Reconfiguration • Operating Systems Virtual Machines
Existing solutions : Operating systems • Fall into two categories • Monolithic (whole firmware image has to be sent over RF to reconfigure a node) • Modular (only the functionality in question is transmitted)
Existing solutions: Virtual Machines • Again, two categories • ASVM (Application-specific virtual machines) • General-purpose virtual machines
Our approach: In situ Compilation • Goal: implement solution to dynamically reconfigure a WSN, with the following requirements: • Running Cost: Low • Updade Cost: Low • Support for Heterogenity: Yes • Modularity: Yes • Specifications • Hardware • 8 or 16 bit CPU architecture running on the node • Less than 128kB of Flash • Less than 20Mhz of CPU speed • Less than 16kB or RAM • Lack of a Memory Management Unit • Software • Size of RAM poses limitations on input file for compilation Execution in Native format High-level language, small bytecount + compilation
A new High-level language: MinTax • Name: Minimal Syntax, inspired from C • Small syntax means less radio time to transmit functionality • Strongly typed high-level language • Each clause is delimited from others with the ’;’ delimiter • Functions do not have explicit return types
MinTax: an example • aUk{ • ^i=A2; • ^j=8; • ^u=i; • Wi<99 • Wj>0 • Pi,j; • u=d@k; • j- • # • i+ • # • }u; • Uint8_t a (uint16_t k){ • Uint8_t i = read_analog_pin(pin2); • Uint8_t j = 8; • Uint8_t u = i; • While(i<99){ • While(j>0){ • Pwm_output(i,j); • u=delay(k); • j - -; • } • i++; • } • return u;}
The MinTax Compiler • Analysis Stage • Lexical Analysis: splitting the input file into atoms or tokens – Implemented, generated with re2c • Syntactical Analysis: validation that the input file corresponds to the language’s formal grammar – Not Needed • Semantical Analysis: context evaluation of symbols (Symbol Table) – Implemented, merged with Lexical Analysis to make single-pass compilation • Synthesis Stage - Implemented • Variables are allocated to internal registers • Small functionalities • Faster execution, less energy used when executing generated code • Position independent Code
The MinTax Compiler: Supported WSN Nodes • The WSN world usually comprises solutions around microcontrollers from Atmel and Texas Instruments Mica2 Z1 AVRRaven
Results • Sending of a “Blink” application, Mica2 platform: • Compile, and reprogram:
Conclusion and perspectives • Conclusion • High-level language (MinTax) coupled with in-situ compilation • Energy-efficient solution for dynamic reconfiguration • Perspectives • Heterogeneous network validation • Multi-OS Integration ?