34
06-Nov-06 Deployment and Validation of Sensor Network Applications Jan Beutel Computer Engineering and Networks Lab, ETH Zurich

Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

06-Nov-06

Deployment and Validation of Sensor Network Applications

Jan BeutelComputer Engineering and Networks Lab, ETH Zurich

Page 2: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

2

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

Page 3: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

3

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

Prototypes, Experiments and Research Demos

WSN Community

Page 4: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

4

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

ProductionApplications

Prototypes, Experiments and Research Demos

WSN CommunityOtherPeople

Page 5: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

5

Argo – Global Ocean Observation StrategyGlobal array of temperature/salinity profiling floats

Satellite data relay to data centers on shoreOperational since 2000Developed and maintained mainly by oceanographers

Page 6: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

6

Anti-Submarine Surveillance

Distributed acoustic monitoring and surveillanceAdvanced signal processingMostly wireline and analogFixed installations and mobile unitsMilitary development since the cold war

Page 7: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

7

Globally Networked Weather Stations

Page 8: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

8

Deployment-support networksOperational conceptSensor Network Maintenance ToolkitApplications exampleField experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingDesign of hard- and software based on standardized interfaces and event driven interactionBTnode platform success

Page 9: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

9

Deployment-support networksOperational conceptSensor Network Maintenance ToolkitApplications exampleField experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingDesign of hard- and software based on standardized interfaces and event driven interactionBTnode platform success

Page 10: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

10

The BTnode Platform

Prototype

IO/Peripherals

2nd Generation 3rd Generation

Communication Computation

Page 11: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

11

58 mm

BTnode rev3 Architecture Details

32.5

mm

System coreAtmel ATmega128256 kB SRAMGeneric IO/PeripheralsSwitchable power supplies

Dual radio system

Bluetooth radio2.4 GHz Zeevo ZV4002

Low-power radio433-915 MHz ISMChipcon CC1000

Page 12: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

12

BTnode In-situ Power Profiling Function

0 100 200 300 400 500 600 700 800 900 100010

15

20

25

30

35

40

45

50

Slave sniff

Master sniff

Slave active

Master active

mA

samplesStandby

[Negri2005/2006]

Page 13: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

13

BTnut System Software

Versatile and flexible fast-prototypingLightweight operating system support in plain CLinux-to-AVR embedded emulationDemo applications and tutorial

simulate

emulate upload

compile

Built on top of multi-threaded Nut/OS frameworkNon-preemptive, cooperativemulti-threadingEvents, timersPriorities for threadsDynamic heap allocationPOSIX style device driversOS tracer (usec resolution)

Page 14: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

14

BTnut Software & Embedded DevelopmentBTnodes are not targeted at ultra low-power…

… but target versatile and flexible fast-prototyping.

Multi-threaded OS frame in CStandard open-source toolsLightweight software distribution(8.2 MB binary, 27.3 MB source)

Rapid prototypingHW emulation on Linux PC

Demo applications and tutorial Lab for embedded systems lecture

simulate

emulate upload

compile

Page 15: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

15

Industrial technology transferCommercialization with ETH spin-off “Art of Technology”Commercial replicas resulting from open source policy

BTnodes in EducationDifferent labs and demosGraduate lab in embedded systems (120 participants)30-40 successfully completed student projects

BTnodes in Research Domains25+ wearable and ubiquitous computing applications and demosWireless (sensor) network research40+ scientific publications based on or related to BTnodes

BTnode Platform Success

0 100 200 300 400 500 600 700 800 900 100010

15

20

25

30

35

40

45

50

Slave sniff

Master sniff

Slave active

Master active

mA

samplesStandby

BTnode dev kit € 500

Page 16: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

16

Deployment-support networksOperational conceptSensor Network Maintenance ToolkitApplications exampleField experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingDesign of hard- and software based on standardized interfaces and event driven interactionBTnode platform success

Page 17: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

17

WSN Development Reality

It is hard to deploy anywhere beyond 10-20 nodes today.

Coordinated methods and tools are missing today.

Page 18: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

18

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Test GridsmoteLab [Werner-Allen2005]

Emstar arrays [Cerpa03/04]

Kansei [Dutta2005]

Closing in on the“real” experience

Specializedsimulation tools for WSN applications

Fast-prototyping in a controlled environment

Page 19: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

19

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Test GridsmoteLab [Werner-Allen2005]

Emstar arrays [Cerpa03/04]

Kansei [Dutta2005]

DeploymentIn-network reprogramming [Levis2004,Hui2004]

Calibration and Verification[Szewczyk2004]

Trial-and-error [Mainwaring2004,Hemingway2004,Cerpa2001]

Dependence on infrastructure[Szewczyk2004]

Page 20: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

20

“Proof-of-Concept” Deployment Experience

[Koe

n La

ngen

doen

, TU

Del

ft]

[Gilm

ann

Tolle

, UC

Ber

kele

y]

[Pra

balD

utta

, UC

Ber

kele

y]

[Pra

balD

utta

, UC

Ber

kele

y]

Page 21: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

21

From Proof-of-concept to Real-world WSNs

Traditional test gridWiredImmobileNot scalable

In-network toolsUnreliable

Self-organizing backbone network

with deployment-support

services

Deployment-Support Network

Page 22: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

22

Target Sensor Network

Next-Generation Deployment-Support

Developer Workstation

Deployment-Support NetworkTemporary, minimal invasiveVirtual connections to nodesReliable, wireless, scalable

Page 23: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

23

WSN TargetApplication

JAWS – Application Partitioning

JAWS ApplicationTopology Control

Connection Management

Data Transport

Caching

Node Management

Target AdapterTarget ControlProgrammingLogging

MonitorThreads/IRQsHigh level context

Codesize 100 kB

4 kB

2 kB

Page 24: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

24

Target Sensor Network

JAWS – Sensor Network Monitoring Toolkit

A suite of services based on the JAWS deployment-support network

Remote logging and event detectionBTnut OS tracing facilityLong-term logging and analysisRemote programmingGeneric DSN accessPower and status monitoringCoordinated fault injection

Page 25: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

25

JAWS – Target Devices

Siemens A80

BTnode

Tmote SkyTinyNode

Page 26: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

26

JAWS – DSN Architecture Details

Page 27: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

27

JAWS – DSN Network Control

Page 28: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

28

JAWS – Topology Field Experiments

Deployment using 70+ nodes on an office floor

Largest connected Bluetooth Scatternet

Page 29: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

29

JAWS – Application Example

Test Setup: 20+ nodes Distributed Event TracingTime-synchronizedContext switchesInterrupts

Page 30: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

30

JAWS – Application Fire Sensor Networks

Test Setup Development&

Analysis

0

1 2 3

4 5 6

7

8 9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

3-Phase Deployment

Field Testing

0 100 200 300 400 500 600 700 800 900 100010

15

20

25

30

35

40

45

50

Slave sniff

Master sniff

Slave active

Master active

mA

samplesStandby

Page 31: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

31

JAWS – Automated Test Case Generation

Page 32: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

32

Target Sensor Network

Deployment-Support – Closing the Loop…

Page 33: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

33

Acknowledgements

BTnode Core TeamOliver Kasten, Matthias Ringwald, Kay Römer, Friedemann MatternPhilipp Blum, Matthias Dyer, Kevin Martin, Lennart Meier, Luca Negri, Martin Hinz, Lothar Thiele

MICS Algorithms CollaborationRegina O’ Dell-Bischoff, Fabian Kuhn, Aaron Zollinger, Roger Wattenhofer

Related publicationsL. Negri, J. Beutel and M. Dyer. The Power Consumption of Bluetooth Scatternets. CCNC 2006.J. Beutel, M. Dyer, L. Meier, and L. Thiele. Scalable topology control for deployment-sensor networks. IPSN 2005.J. Beutel. Robust Topology Formation using BTnodes. Computer Communications 2005.J. Beutel, M. Dyer, M. Hinz, L. Meier, M. Ringwald. Next-Generation Prototyping of Sensor Networks. SenSys 2004.J. Beutel, O. Kasten, F. Mattern, K. Römer, F. Siegemund, and L. Thiele. Prototyping wireless sensor network applications with BTnodes. EWSN 2004.J. Beutel, O. Kasten and M. Ringwald. BTnodes - A Distributed Platform for Sensor Nodes. SenSys 2003.

Page 34: Deployment and Validation of Sensor Network Applications · BTnut System Software Versatile and flexible fast-prototyping Lightweight operating system support in plain C Linux-to-AVR

34

To probe further…

http://www.btnode.ethz.ch