2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

42
1 ght © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved. SMART SANTANDER Experimentation with SmartSantander Daniel Bimschas E-mail: [email protected] Palic, 2 nd September 2013

description

Tutorial slides about how to run interactive node-level experiment on the wireless sensor network SmartSantander/WISEBED experimental facility. Held at the Senzations Summer School in Palic, Serbia 2013.

Transcript of 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

Page 1: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

1Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

SMART SANTANDER

Experimentation with SmartSantanderDaniel Bimschas

E-mail: [email protected]

Palic, 2nd September 2013

Page 2: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

2Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

NODE-LEVEL EXPERIMENTATIONExperimentation with SmartSantander

Page 3: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

3Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

Outline

1. Experimentation lifecycle2. Overview of experimentation tools

1. TMON2. WiseGui3. Experimentation Scripts

3. Designing and running your own experiment4. Accessing data streams from EDAS5. Challenges of user centric experimentation

Page 4: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

4Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

1. Experimentation Lifecycle

• Register -> Reserve -> Connect -> Interact

Page 5: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

5Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

1. Architectural Planes

UART

[1..*]

Sensornodes

WiseGui

802.15.4

[1..*]

Management Plane

Experiment / Data Plane

flash(), reset(), …

send(), receive(), …

SmartSantanderTestbed Runtime

Experimentation Scripts /Custom Clients Direct connection

(with e.g.,IPv6 <-> 6LoWPAN

conversion)

Client Plane

REST

API

SOAP

API

Page 6: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

6Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

TMONLIVE-DEMO (SCREENSHOT WALK-THROUGH)

Experimentation with SmartSantander

Page 7: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

7Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.1 TMON

• TMON Slides here

Page 8: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

8Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

WISEGUILIVE-DEMO (SCREENSHOT WALK-THROUGH)

Experimentation with SmartSantander

Page 9: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

9Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui

• Web-based front end for WSN testbeds based on the SmartSantander/WISEBED REST API

• Used for the following SmS deployments:– Santander– Lübeck– Patras– Guildford

• Lübeck Deployment:http://wisebed.itm.uni-luebeck.de

Page 10: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

10Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Testbeds Overview

Screenshot taken from: http://wisebed.itm.uni-luebeck.de

Page 11: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

11Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Testbed Map View

Page 12: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

12Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Testbed Node Table

Page 13: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

13Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Login

Page 14: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

14Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Making a Reservation

Page 15: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

15Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Making a Reservation

Page 16: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

16Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Select Reservation

Page 17: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

17Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Live Data View

Various filter/conversionoptions

Page 18: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

18Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Live Data View

Page 19: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

19Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Live Data View

Page 20: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

20Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Live Data View

Page 21: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

21Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Live Data View

Page 22: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

22Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Flashing Nodes

Page 23: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

23Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Resetting Nodes

Page 24: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

24Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Sending Messages

Hex Bin Dec

Page 25: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

25Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Scripting Environment

• JavaScript scripting environment for execution in browser

• Allows users to automate / script experiments in JavaScript without any software installation

• Program against REST API(using wisebed.js client library)

• Scripting environment pre-initialized with– WebSocket to sensor nodes serial ports, and– reservation data (reserved nodes, timespan, …)

Page 26: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

26Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Scripting Editor

Page 27: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

27Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Scripting Editor Demo

• Demo shows a scripted application– Periodically, sensor nodes ping other nodes– 6LoWPAN packets are dumped to serial port– Dump is forwarded to WiseGui scripting

environment– Concurrent transmissions distinguished with label– Output: live visualization of packet trajectory in

wireless network• Libraries used: wisebed.js, jquery, d3.js

Page 28: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

28Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Scripting Editor Demo

Page 29: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

29Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui – Scripting Editor Demo

Demo Video

Page 30: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

30Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.2 WiseGui - Summary

• Completely based on HTML5/JavaScript• Runs on client side (Browser)• WebSocket-based bi-directional

communication with nodes• Integrated scripting environment

• Uses REST API and wisebed.js• Open Source

https://github.com/wisebed/wisegui

Page 31: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

31Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

EXPERIMENTATION-SCRIPTSLIVE-DEMO (SCREENSHOT WALK-THROUGH)

Experimentation with SmartSantander

Page 32: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

32Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Experimentation Scripts

• Set of command line scripts to execute, control and interact with your experiment

• Allows you to– Execute basic operations (flash, reset, …)– Automate your experiments (e.g., to explore parameter space)– Automatically repeat experiments– Programmatically analyze, convert and process output of

nodes

• Download: https://github.com/wisebed/experimentation-scripts/

• Documentation: https://github.com/wisebed/experimentation-scripts/wiki

Page 33: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

33Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Experimentation Scripts

1 https://github.com/wisebed/scripting-client 2 https://github.com/wisebed/api-wsdl 3 https://github.com/wisebed/api-java

Scripting Client1 execution environment

Experimentation ScriptsBeanShell Script

(97% Java)

SOAP API client libraryand helper classes

uses

BeanShell Interpreter

interprets

Experimentation ScriptsBash Script

invokes (passing BeanShell script as argument)

Page 34: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

34Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Live Presentation

1. List node URNs of type „isense“wb-list-node-urns luebeck.properties csv isense39export NODES=…

2. Reserve nodes (20 minutes, starting from now)wb-reserve luebeck.properties 20 0 $NODESexport RESERVATION=…

3. Check livelinesswb-are-nodes-alive luebeck.properties $RESERVATION

4. Flash nodeswb-flash luebeck.properties $RESERVATION binary-images/example_app.bin

5. Listen to node outputwb-listen luebeck.properties $RESERVATION

6. Reset nodeswb-reset luebeck.properties $RESERVATION

Page 35: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

35Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Testbed Properties File

Page 36: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

36Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Printing Available Nodes

filter by node type

output mode

testbed properties filescript name

Page 37: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

37Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 "Pro” Tip: Use Environment Variables

Page 38: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

38Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Reserving Nodes

testbed properties file

duration + offset

isense39 nodes“secret” reservation key

script name

Page 39: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

39Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Checking Liveliness

script name

testbed properties file“secret” reservation key

Page 40: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

40Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Listening to Node Outputs

Page 41: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

41Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Resetting Nodes

Page 42: 2013 09-02 senzations-bimschas-part2-smart-santander-experimentation

42Copyright © SmartSantander Project FP7-ICT-2009-5 257992. All Rights reserved.

2.3 Flashing Nodes

image file