energy-aware strategies for environmental monitoring with the micaz

Post on 13-Jan-2016

34 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

SIS Project 2011. Energy-aware strategies for environmental monitoring with the MICAz. Cordier David & Fäh Isabelle – SIE Bachelor 6. TA : Adrian Arfire. Outline. 1 - Goal of the Project 2 - Material & Installation 3 - Method & Strategy 4 – Implementation 5 - Experiments & Results - PowerPoint PPT Presentation

TRANSCRIPT

1

Energy-aware strategies Energy-aware strategies

for environmental for environmental

monitoringmonitoring

with the MICAzwith the MICAz

Cordier David & Fäh Isabelle – SIE Bachelor 6 TA : Adrian Arfire

SIS Project 2011

2

Outline

1 - Goal of the Project

2 - Material & Installation

3 - Method & Strategy

4 – Implementation

5 - Experiments & Results

6 – Conclusion

7 – References

3

1 - Goal of the project

Implementing an adaptive method for light measurement

Saving energy Keep enough data to be consistent

Test different scenarios

4

2 – Material & Installation

2 MICAz mote;

4 AA batteries ;

2 USB serial cable;

2 MIB510 interface board ;

2 MTS300CA sensor board ;

A camera to take these

beautiful pictures ;

2.1 – Material

5The two MICAz

2 – Material & Installation2.2 – Installation

Ready to be used !

And all together :

6

3 - Method & Strategy

Discrete event method

Illustration of intermittent method

Threshold method

Intermittent method

3.1 – Method

3.2 – Strategy

Control test

Step scenario

Smooth scenario

Fast smooth scenario

7

4 - Implementation4.1 – C code

// Event called when a new reading is done event void Read.readDone(error_t result, uint16_t data) { message_t new_msg; DataMsg *data_msg; // YOU CAN DECLARE LOCAL VARIABLES HERE

if (result == SUCCESS){ call Sounder.beep(10); // build message payload data_msg = (DataMsg*)(call Packet.getPayload(&new_msg, sizeof(DataMsg))); data_msg->value = data; data_msg->time = tstamp;

call Packet.setPayloadLength(&new_msg, sizeof(DataMsg)); call AMPacket.setType(&new_msg, AM_DATAMSG); call MessageQueue.enqueue(new_msg); post send_next_message();

// YOUR CODE STARTS HERE // you need to implement a method for deciding on the sampling interval dt

if (data<300) {dt=1000;

}else {

dt=100;}

// YOUR CODE ENDS HERE call Timer.startPeriodic(dt);

} }

The threshold value is changed here

The time step can be modified here

8

4 - Implementation4.2 – Matlab code

function [outu, outa, Ainterp, M] = readLog(logFile, logFile2) log = load(logFile);out = log(:,2:3);log2 = load(logFile2);out2 = log2(:,2:3); plot(out(:,1)/1000,out(:,2),'.r');hold on;plot(out2(:,1)/1000,out2(:,2),'o');xlabel('Time [s]');ylabel('Light sensor value');title('Logged Signal');xlim([0 30]);x=([0:0.1:30]);plot(x,300,'k'); Ainterp=interp1(out2(:,1), out2(:,2), out(:,1));plot(out(:,1)/1000, Ainterp, 'k')legend('uniform method', 'adaptive method','location','best')plot(out(:,1)/1000,out(:,2),'r'); for i=1:length(out) if out(i,1)<=30000 outu(i,:)=out(i,:); endendfor j=1:length(out2) if out2(j,1)<=30000 outa(j,:)=out2(j,:); endend long_u=length(outu);long_a=length(outa); th=300;alpha=0.5;beta=0.5;t=30;Edet=0;Etot=0; for k=1:long_a if outa(k,2)>th Edet=Edet+1; endendfor l=1:long_u if outu(l,2)>th Etot=Etot+1; endend M=alpha*0.5*((Edet/Etot)+1)+beta*(1-long_a/(long_u*t)); return

Extracting the data from the logFile containing the measurements

Plotting the data for both curves and the threshold in the given range of time

This value is the threshold (changes depending on the scenario)

At this point, we keep only the values comprised in the time limit (30 seconds)

Here, we count the number of event detected by the two methods

Finally, we can calculate the performance metrics

9

5 – Experiments & Results5.1 – Step scenario

dt = 1000 ms Threshold = 100

dt = 200 ms Threshold = 300

10

5 – Experiments & Results5.2 – Smooth scenario

dt = 500 ms Threshold = 100

dt = 500 ms Threshold = 300

11

5 – Experiments & Results5.3 – Fast smooth scenario

dt = 1000 ms Threshold = 100

dt = 1000 ms Threshold = 300

12

5 – Experiments & Results5.4 – Performance metrics

200 500 1000

1000.96845 0.95845 0.95265

0.96025 0.93840 0.91625

0.91475 0.92310 0.86870

2000.98125 0.96150 0.95085

0.92555 0.92335 0.94510

0.91100 0.90040 0.89725

0.96225 0.95690 0.92455

0.92880 0.92080 0.86525

0.87025 0.88075 0.83010

Threshold dt

Mean of the performance metrics for each caseIn red, the step scenario ; In orange, the smooth scenario ; In yellow, the fast smooth scenario.

α, β : coefficients that set the importance of each term (their sum needs to be equal to 1)

S : the number of measurements taken by the node whose

performance we evaluate

T : the duration of the experiment

Fmax

: the maximum sampling frequency (this should be equal

to the fixed sampling frequency of the uniform strategy in

your case)

: the number of events reported

: the total number of events

: the number of false positives reported

13

6 - Conclusion

Project with real implication

Small implementation but significant results

Best parameters depends on the task

Some errors due to the MICAz

Further tests to be done for more accurate results

Note : no arrow was mistreated during the preparation of this presentation

14

7 - References

C. M. Cianci, Distributed intelligent algorithms for robotic sensor

networks monitoring discontinuous anisotropic environmental fields,

Lausanne, 2009, pp.51-52,73-94.

A Djafari Marbini, L. E. Sacks, Adaptive Sampling Mechanisms in

Sensor Networks, University College London, 2003.

top related