Top Banner
Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform Ostiz L., Pita C., Doggen J.*, Dams T., Van Houtven P. *[email protected] September 25, 2012
57

Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

May 14, 2015

Download

Technology

Jeroen Doggen

The paper presents an Arduino-based wireless sensor network to monitor parking lots using a non-standard low-power energy-balanced system. The event-driven routing protocol follows the hierarchical clustering philosophy. Energy is saved by minimising the number of transmissions needed to forward information to the base station. The smart sensor platform is build using the popular Arduino development platform, Sharp IR distance sensors and nRF24 low-power radio modules. Our practical results show that this platform is easy to use, but not the most appropriate platform to develop low-power wireless sensor network applications.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Wireless Sensor Network Protocol for Smart

Parking Application

Experimental Study on the Arduino Platform

Ostiz L., Pita C., Doggen J.*,Dams T., Van Houtven P.*[email protected]

September 25, 2012

Page 2: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

2/27

Page 3: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

3/27

Page 4: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Wireless Sensor Networks

I A wireless sensor network is a set of small autonomous sensornodes which cooperate to solve a common application usingsome kind of perception of physical parameters.

4/27

Page 5: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino Development Platform

I The Arduino development platformallow designers to develop electronicprototypes.

I The platform been gaining inpopularity over the last years.

I The open-source community has70000 registered users and anabundance of user submittedlibraries.

I Ease of use is the main selling point.

5/27

Page 6: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Why?

I Typical WSN application require:I Specialised software knowledge: e.g.

TinyOS, ContikiI Specialised hardware: TelosB,

Z-Wave, XBee, DASH7

I The Arduino platform provides:

I Many well-documented softwarelibraries for hardware interfacing

I A big existing user communityI Many options to share your own

hardware and software designs

I Question: “Can we build a competitiveWSN using the Arduino platform?”

6/27

Page 7: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Why?

I Typical WSN application require:I Specialised software knowledge: e.g.

TinyOS, ContikiI Specialised hardware: TelosB,

Z-Wave, XBee, DASH7

I The Arduino platform provides:I Many well-documented software

libraries for hardware interfacingI A big existing user communityI Many options to share your own

hardware and software designs

I Question: “Can we build a competitiveWSN using the Arduino platform?”

6/27

Page 8: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Why?

I Typical WSN application require:I Specialised software knowledge: e.g.

TinyOS, ContikiI Specialised hardware: TelosB,

Z-Wave, XBee, DASH7

I The Arduino platform provides:I Many well-documented software

libraries for hardware interfacingI A big existing user communityI Many options to share your own

hardware and software designs

I Question: “Can we build a competitiveWSN using the Arduino platform?”

6/27

Page 9: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

7/27

Page 10: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

8/27

Page 11: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Envisioned Application

9/27

Page 12: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

10/27

Page 13: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Hardware Specifications

I Seeeduino development board: Atmel AVR ATmega328PI nRF24L01 wireless interface: Nordic SemiconductorI Sharp GP2Y0A21YK infra-red distance sensor

11/27

Page 14: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Sensing

I Our nodes are based on the Arduinocompatible Seeeduino board.

I Sensing:

I A sensor node detects cars in parkingspots using an IR distance sensor.

I The values coming from the distancesensors is interpreted using our ownsensor library.

I Multiple measurements are combined toconfirm the presence of a car.

12/27

Page 15: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Sensing

I Our nodes are based on the Arduinocompatible Seeeduino board.

I Sensing:I A sensor node detects cars in parking

spots using an IR distance sensor.

I The values coming from the distancesensors is interpreted using our ownsensor library.

I Multiple measurements are combined toconfirm the presence of a car.

12/27

Page 16: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Sensing

I Our nodes are based on the Arduinocompatible Seeeduino board.

I Sensing:I A sensor node detects cars in parking

spots using an IR distance sensor.I The values coming from the distance

sensors is interpreted using our ownsensor library.

I Multiple measurements are combined toconfirm the presence of a car.

12/27

Page 17: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Sensing

I Our nodes are based on the Arduinocompatible Seeeduino board.

I Sensing:I A sensor node detects cars in parking

spots using an IR distance sensor.I The values coming from the distance

sensors is interpreted using our ownsensor library.

I Multiple measurements are combined toconfirm the presence of a car.

12/27

Page 18: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Communication

I The radio module: nRF24L01 (NordicSemiconductor)

I Ultra low power 2.4GHz RF TransceiverI Approximately half the power of a typical

XBee RF Transceiver

I Only Physical layer on-chipI Partial Link-layer through an existing Arduino

library (RF24 by Maniacbug)I We implemented collision avoidanceI We implemented a cluster based Layer 3

protocol, very similar to the popular LEACHprotocol.

13/27

Page 19: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Communication

I The radio module: nRF24L01 (NordicSemiconductor)

I Ultra low power 2.4GHz RF TransceiverI Approximately half the power of a typical

XBee RF TransceiverI Only Physical layer on-chip

I Partial Link-layer through an existing Arduinolibrary (RF24 by Maniacbug)

I We implemented collision avoidanceI We implemented a cluster based Layer 3

protocol, very similar to the popular LEACHprotocol.

13/27

Page 20: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Communication

I The radio module: nRF24L01 (NordicSemiconductor)

I Ultra low power 2.4GHz RF TransceiverI Approximately half the power of a typical

XBee RF TransceiverI Only Physical layer on-chipI Partial Link-layer through an existing Arduino

library (RF24 by Maniacbug)

I We implemented collision avoidanceI We implemented a cluster based Layer 3

protocol, very similar to the popular LEACHprotocol.

13/27

Page 21: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Communication

I The radio module: nRF24L01 (NordicSemiconductor)

I Ultra low power 2.4GHz RF TransceiverI Approximately half the power of a typical

XBee RF TransceiverI Only Physical layer on-chipI Partial Link-layer through an existing Arduino

library (RF24 by Maniacbug)I We implemented collision avoidance

I We implemented a cluster based Layer 3protocol, very similar to the popular LEACHprotocol.

13/27

Page 22: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino meets WSN: Communication

I The radio module: nRF24L01 (NordicSemiconductor)

I Ultra low power 2.4GHz RF TransceiverI Approximately half the power of a typical

XBee RF TransceiverI Only Physical layer on-chipI Partial Link-layer through an existing Arduino

library (RF24 by Maniacbug)I We implemented collision avoidanceI We implemented a cluster based Layer 3

protocol, very similar to the popular LEACHprotocol.

13/27

Page 23: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

14/27

Page 24: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino Libraries

I Arduino software libraries make it straightforward for anyone tostart embedded development.

I Used Arduino librariesI Sharp GP2Y0A21YK infra-red distance sensorI Maniacbug RF24 libraryI Low-Power library

I Developed Arduino librariesI Cluster network libraryI Detecting car libraryI Node energy library

15/27

Page 25: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino Libraries

I Arduino software libraries make it straightforward for anyone tostart embedded development.

I Used Arduino librariesI Sharp GP2Y0A21YK infra-red distance sensorI Maniacbug RF24 libraryI Low-Power library

I Developed Arduino librariesI Cluster network libraryI Detecting car libraryI Node energy library

15/27

Page 26: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Arduino Libraries

I Arduino software libraries make it straightforward for anyone tostart embedded development.

I Used Arduino librariesI Sharp GP2Y0A21YK infra-red distance sensorI Maniacbug RF24 libraryI Low-Power library

I Developed Arduino librariesI Cluster network libraryI Detecting car libraryI Node energy library

15/27

Page 27: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

16/27

Page 28: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

17/27

Page 29: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Low Energy Adaptive Cluster Hierarchy

(LEACH)

1. Divide the network in clusters

2. Election a temporary Cluster Head (CH)

3. The CH aggregates all sensor data andforwards it to the sink

I During operation we have two phases:

I CH selectionI Normal operation

18/27

Page 30: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Low Energy Adaptive Cluster Hierarchy

(LEACH)

1. Divide the network in clusters

2. Election a temporary Cluster Head (CH)

3. The CH aggregates all sensor data andforwards it to the sink

I During operation we have two phases:

I CH selectionI Normal operation

18/27

Page 31: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Low Energy Adaptive Cluster Hierarchy

(LEACH)

1. Divide the network in clusters

2. Election a temporary Cluster Head (CH)

3. The CH aggregates all sensor data andforwards it to the sink

I During operation we have two phases:

I CH selectionI Normal operation

18/27

Page 32: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Low Energy Adaptive Cluster Hierarchy

(LEACH)

1. Divide the network in clusters

2. Election a temporary Cluster Head (CH)

3. The CH aggregates all sensor data andforwards it to the sink

I During operation we have two phases:

I CH selectionI Normal operation

18/27

Page 33: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Low Energy Adaptive Cluster Hierarchy

(LEACH)

1. Divide the network in clusters

2. Election a temporary Cluster Head (CH)

3. The CH aggregates all sensor data andforwards it to the sink

I During operation we have two phases:I CH selection

I Normal operation

18/27

Page 34: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Low Energy Adaptive Cluster Hierarchy

(LEACH)

1. Divide the network in clusters

2. Election a temporary Cluster Head (CH)

3. The CH aggregates all sensor data andforwards it to the sink

I During operation we have two phases:I CH selectionI Normal operation

18/27

Page 35: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Cluster Head Selection

1. CH broadcasts an Energy Request message.

2. SNs measure their energy level and send it to the CH.

3. CH collects replies and compares energy levels.

4. Node with the most energy is selected as the new CH.

5. CH broadcasts the new CH ID to all SNs.

6. SNs update the CH ID at the same time.

19/27

Page 36: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Cluster Head Selection

1. CH broadcasts an Energy Request message.

2. SNs measure their energy level and send it to the CH.

3. CH collects replies and compares energy levels.

4. Node with the most energy is selected as the new CH.

5. CH broadcasts the new CH ID to all SNs.

6. SNs update the CH ID at the same time.

19/27

Page 37: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Cluster Head Selection

1. CH broadcasts an Energy Request message.

2. SNs measure their energy level and send it to the CH.

3. CH collects replies and compares energy levels.

4. Node with the most energy is selected as the new CH.

5. CH broadcasts the new CH ID to all SNs.

6. SNs update the CH ID at the same time.

19/27

Page 38: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Cluster Head Selection

1. CH broadcasts an Energy Request message.

2. SNs measure their energy level and send it to the CH.

3. CH collects replies and compares energy levels.

4. Node with the most energy is selected as the new CH.

5. CH broadcasts the new CH ID to all SNs.

6. SNs update the CH ID at the same time.

19/27

Page 39: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Cluster Head Selection

1. CH broadcasts an Energy Request message.

2. SNs measure their energy level and send it to the CH.

3. CH collects replies and compares energy levels.

4. Node with the most energy is selected as the new CH.

5. CH broadcasts the new CH ID to all SNs.

6. SNs update the CH ID at the same time.

19/27

Page 40: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Cluster Head Selection

1. CH broadcasts an Energy Request message.

2. SNs measure their energy level and send it to the CH.

3. CH collects replies and compares energy levels.

4. Node with the most energy is selected as the new CH.

5. CH broadcasts the new CH ID to all SNs.

6. SNs update the CH ID at the same time.

19/27

Page 41: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Sensing and Communication

I Sensor node:

1. Check for parking lot status change2. Send changes to the CH3. Go to sleep

I Cluster head:

1. Aggregate all sensor data.2. Forward data to the sink.3. Go to sleep

20/27

Page 42: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Sensing and Communication

I Sensor node:

1. Check for parking lot status change2. Send changes to the CH3. Go to sleep

I Cluster head:

1. Aggregate all sensor data.2. Forward data to the sink.3. Go to sleep

20/27

Page 43: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

21/27

Page 44: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Experimental Study

Evaluation and solutions to practical problems.I Energy consumption

I Minimise energy consumption by maximising sleep timeI Power down external sensors

I Packet Loss RatioI Evaluation of packet loss ratio to ensure proper system operation

I SynchronisationI ATmega328P internal oscillator: significant error margin

between individual sensorsI Software based solution: recalibration in reference to CH

22/27

Page 45: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Experimental Study

Evaluation and solutions to practical problems.I Energy consumption

I Minimise energy consumption by maximising sleep timeI Power down external sensors

I Packet Loss RatioI Evaluation of packet loss ratio to ensure proper system operation

I SynchronisationI ATmega328P internal oscillator: significant error margin

between individual sensorsI Software based solution: recalibration in reference to CH

22/27

Page 46: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Experimental Study

Evaluation and solutions to practical problems.I Energy consumption

I Minimise energy consumption by maximising sleep timeI Power down external sensors

I Packet Loss RatioI Evaluation of packet loss ratio to ensure proper system operation

I SynchronisationI ATmega328P internal oscillator: significant error margin

between individual sensorsI Software based solution: recalibration in reference to CH

22/27

Page 47: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

23/27

Page 48: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Future Work

I Further development of the proof-of-concept applicationI Server-side data managementI Mobile phone application to search for vacant parking spotsI Embedded display module for in-car placement

I Protocol enhancementI Better scalability and securityI Location aware cluster head selection

I Clean up the code and allow other people to use itI Better documentationI Easy and working examples

24/27

Page 49: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Future Work

I Further development of the proof-of-concept applicationI Server-side data managementI Mobile phone application to search for vacant parking spotsI Embedded display module for in-car placement

I Protocol enhancementI Better scalability and securityI Location aware cluster head selection

I Clean up the code and allow other people to use itI Better documentationI Easy and working examples

24/27

Page 50: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Future Work

I Further development of the proof-of-concept applicationI Server-side data managementI Mobile phone application to search for vacant parking spotsI Embedded display module for in-car placement

I Protocol enhancementI Better scalability and securityI Location aware cluster head selection

I Clean up the code and allow other people to use itI Better documentationI Easy and working examples

24/27

Page 51: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Outline

Introduction and Problem Statement

System DesignEnvisioned ApplicationHardware SpecificationsSoftware Libraries

WSN Protocol DesignSystem Operation

Experimental Study

Future Work

Conclusion

25/27

Page 52: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Conclusion

I We implemented an event-driven, hierarchical WSN clusteringprotocol with an energy-aware CH selection algorithm similar tothe LEACH protocol.

I We used Seeeduino development boards, nRF24L01 low-powerRF modules and Sharp IR distance sensors.

I Our synchronisation mechanism solves the problems caused bythe inaccuracy of the Arduino internal Timer.

I Preliminary measurement results show that the hardwarechoices were not optimal for this WSN Application.

I Although Arduino is easy to use as an experimentalopen-source platform, it is currently not the most appropriateplatform to develop low-power WSN applications.

26/27

Page 53: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Conclusion

I We implemented an event-driven, hierarchical WSN clusteringprotocol with an energy-aware CH selection algorithm similar tothe LEACH protocol.

I We used Seeeduino development boards, nRF24L01 low-powerRF modules and Sharp IR distance sensors.

I Our synchronisation mechanism solves the problems caused bythe inaccuracy of the Arduino internal Timer.

I Preliminary measurement results show that the hardwarechoices were not optimal for this WSN Application.

I Although Arduino is easy to use as an experimentalopen-source platform, it is currently not the most appropriateplatform to develop low-power WSN applications.

26/27

Page 54: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Conclusion

I We implemented an event-driven, hierarchical WSN clusteringprotocol with an energy-aware CH selection algorithm similar tothe LEACH protocol.

I We used Seeeduino development boards, nRF24L01 low-powerRF modules and Sharp IR distance sensors.

I Our synchronisation mechanism solves the problems caused bythe inaccuracy of the Arduino internal Timer.

I Preliminary measurement results show that the hardwarechoices were not optimal for this WSN Application.

I Although Arduino is easy to use as an experimentalopen-source platform, it is currently not the most appropriateplatform to develop low-power WSN applications.

26/27

Page 55: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Conclusion

I We implemented an event-driven, hierarchical WSN clusteringprotocol with an energy-aware CH selection algorithm similar tothe LEACH protocol.

I We used Seeeduino development boards, nRF24L01 low-powerRF modules and Sharp IR distance sensors.

I Our synchronisation mechanism solves the problems caused bythe inaccuracy of the Arduino internal Timer.

I Preliminary measurement results show that the hardwarechoices were not optimal for this WSN Application.

I Although Arduino is easy to use as an experimentalopen-source platform, it is currently not the most appropriateplatform to develop low-power WSN applications.

26/27

Page 56: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Conclusion

I We implemented an event-driven, hierarchical WSN clusteringprotocol with an energy-aware CH selection algorithm similar tothe LEACH protocol.

I We used Seeeduino development boards, nRF24L01 low-powerRF modules and Sharp IR distance sensors.

I Our synchronisation mechanism solves the problems caused bythe inaccuracy of the Arduino internal Timer.

I Preliminary measurement results show that the hardwarechoices were not optimal for this WSN Application.

I Although Arduino is easy to use as an experimentalopen-source platform, it is currently not the most appropriateplatform to develop low-power WSN applications.

26/27

Page 57: Wireless Sensor Network Protocol for Smart Parking Application Experimental Study on the Arduino Platform

Questions & Answers

27/27