A Process Oriented Development Flow for Wireless System Networks by Bernard Pottier

  • Upload
    esug

  • View
    1.213

  • Download
    0

Embed Size (px)

Citation preview

A Process Oriented Development Flow
for Wireless Sensor Networks

Bernard Pottier*, Guillaume Kremer & Jimmy OsmontUniversit de Brest* LabSTICC, UMR CNRS 3192

WSN and applications

Wireless Sensor Networks (WSN) are an expanding application fieldGreen technology : environment, process control, power saving

Human friendly : assists decisions in number of situations

Driven by progresses in communications, integration technologies

Application examplesParking in San Francisco: 6000 sensors connected to GPS/GSM service reduce car traffic and pollution,

Forest fire detection from mesh connected sensors powered from imbalance in pH between tree and soil (MIT),

Services for disabled persons/ bus transportation.

Farming : cattle, green house, fields monitoring.

Our objectives

To support WSN design as a top-down flow:

Sensor physical distribution and connectivity

Communication layer management

Application level algorithm design

Code generation for sensors

2 stages flowAbstract design ,simulation

Code synthesis

Developped in Smalltalk-80

WSN components

SensorsExecution is a loop including Communications

Local interaction with control and acquisition devices

Low power, when possible local power source, low cost

Practical examplePsoC (Mixed analogue/logic reconfigurable system on chip)

Spread spectrum wireless transceiver (10s to 100s meters)

Temperature, pressure, presence, light, buzzer, ..

Power

WSN organizations

Static Star network, hub to internet (green house)

Mesh connected with routing and gateways (SF parking, forest)

DynamicMobile fleet (roaming cattle)

Mobile in static or fleet (shepherd collecting information on sheep, bus exchanging information together / with bus stop

LAN

hubsensorsensorsensorsensor

sensorsensorsensorsensorsensor

LAN

An evident challenge
is distributed algorithms

Static deployment problemsNetwork connectivity, fault tolerance, adaptive routing, control flow, memory/buffer use,

Control, data collection, dynamic code distribution

Communication scheduling ( idle to bandwidth saturation)

Dynamic behaviour problemsRouting algorithms, managing identities,

Data storing and collection

A Framework for WSN Modelling and Synthesis

Uses a two stage flow:

Behaviour level (design):

Modelling network topologies as communicating processes.

Local interactions (sensing, controlling)

Local contribution to distributed behaviour

Tuning and optimizing design and algorithms from simulations

Synthesis level (implementation)

Dimensioning node characteristics from stage 1 parameters

Target isolation

Native code production, or virtual machine for stage 1 intermediate code.

WSN abstract model

NetworkGraphCollection of nodes

NetworkNodeNodeName (process name)

Input Link collection

Output Link collection

Program/Procedure Name

LinkSource node

Destination node

Algorithms, builders, generators

Syntax based builder

Smalltalk 'methods' described using VW ParserCompiler

methodNamemessages alphabet .

NodeName1 { destNodes1 } ProgramNodeNodeName2 { destNodes2 } ProgramNode

Network is developped from a browser

Random topologies builder

Generate a sensor distribution on a surfaceSurface known as a rectangle

Sensor wireless neighborhood known as a reachable distance

Arbitrary number of sensors

Compute the connectivity between nodes

Build a corresponding network, drawing, text.

Physical deployment builder

FlowRead a map, a photo

Define scales for this background

Define sensor transmit distance

Place sensors and build a network.

Computes network on the fly.

Sandbox for the deployment of a sensor network along bus lines and bus stop

Generators

Graphviz (.dot file)

Occam program: Concurrent organization : process skeleton, channel declaration,

Process skeleton for a synchronous cycle

Occam Generator

Hundred of processes, thousands of channelsFixed behaviour for the synchronous model:

Setup an initial state, prepare initial message output

Loop forever

Send messages on output links

Receive messages on input links

Change the node state according to current state and input messages

Prepare next message output

(c and d) place holders for programmer.

Synchronous model : Why?

Sensor networks are synchronous:Sharing a reference clock

Sensors schedule listening and emitting interleaved with silences

Time division, frequency or channel division

Large number of known algorithms:Retrieving network characteristics diameter spanning trees

Distributed reduction operations, broadcasts

Routing with table exchanges, dynamic routing for mobiles

Can be implemented on top of Occam:Concurrent send and receive operations avoid deadlocks

Simulation of very large networks in native code for multi-cores

Generator Status

Very large process networks generate, compile and execute on multiprocessor

Significant set of algorithms implemented: routing, naming, flow control.

Generator evolutions: VM

Use of Occam intermediate bytecodes (TIS) to program sensors

Virtual machine to execute TIS subset for synchronous model

Channels operations are replaced by scheduled wireless exchanges (TDMA)

Several bytecodes for parallel constructs, loops, operations implemented

Network builderSensor behaviourOccam program

Kroc compiler

Simulation

TIS backend

Sensor VM

Native codeStage 2

Stage 1

Flow alternatives

Use of Smalltalk to describe synchronous behaviour

Methods export blocks for setup and transition

Blocks operate on method temporary variables

A process system is generated with communications operated using SharedQueues

Translations similar to TIS

Network builderSensor behaviourST80 process system

Simulation

Stage 1

(ST80 subset)

backend

Native codeStage 2

Sensor VM

Project Status

Emerging projectAppears as a contribution to PuceCom regional project in Brittany

Cooperation developing with NUST in Pakistan

Contributions of UBO students

Hardware targets : Cypress PsoC and RF circuits, ARM7, GPS,

Contacts with industry : urban transportation, GIS,

VisualWorks NC, KroC (Occam), store 'students' @ as.univ-brest.fr

Wish to contribute to sustainable development

( Oyster-catchers at round-island, bay of Brest )

IWST ESUG'09 Brest

Slide