Zanni, Andrea
(2024)
Efficient Support for Deep Sleeping Modes in Embedded Systems: the Case of Zenoh-pico.
[Laurea magistrale], Università di Bologna, Corso di Studio in
Ingegneria informatica [LM-DM270]
Documenti full-text disponibili:
|
Documento PDF (Thesis)
Disponibile con Licenza: Salvo eventuali più ampie autorizzazioni dell'autore, la tesi può essere liberamente consultata e può essere effettuato il salvataggio e la stampa di una copia per fini strettamente personali di studio, di ricerca e di insegnamento, con espresso divieto di qualunque utilizzo direttamente o indirettamente commerciale. Ogni altro diritto sul materiale è riservato
Download (2MB)
|
Abstract
The Internet of Things (IoT) is an ever evolving and ever growing field where plenty of devices communicate with each other and transfer data to/from the Cloud via an infrastructure, usually a pub/sub. In this extensive field comes to rescue Zenoh, a pub/sub/query middleware for Cloud and IoT applications. It supports many interesting functionalities but in this thesis we focus on its lightweight counterpart for embedded devices - Zenoh-Pico. Zenoh-Pico is entirely written using the C pro-
gramming language thus making it extremely lightweight and efficient, perfect for an embedded device. In this work I focus on the support to deep-sleeping mode for Zenoh-Pico on UDP unicast communications. The deep-sleeping modes are typical of embedded devices such as ESP32 or Zephyr boards and they are used to put the board in a kind of energy saving state.
In order to work with Zenoh-Pico I used PlatformIO, ESP-IDF, VSCode, and the board az-delivery-devkit-v4 ESP32. PlatformIO and ESP-IDF are used to manage the toolchain for the creation of a firmware to be put on the ESP32 starting from the code on VSCode. VSCode is used to program the code that will run on the board. I carried out many experiments from my support to deep-sleeping mode on the ESP32. The main and most interesting results being the time and space efficiency of my support to deep-sleeping mode, and the fact that with just 3 seconds of deep-
sleeping on a low duty cycle programme (about 6 seconds of activity - 3 seconds of sleeping) with a 250mAh battery, the battery gains about 2 weeks of autonomy with 3 seconds of deep-sleeping. In conclusion, the deep-sleeping mode is of paramount importance for the embedded system world when those embedded devices are powered from an external battery limited in its capacity thus the importance of a middleware like Zenoh-Pico to support the deep-sleeping mode.
Abstract
The Internet of Things (IoT) is an ever evolving and ever growing field where plenty of devices communicate with each other and transfer data to/from the Cloud via an infrastructure, usually a pub/sub. In this extensive field comes to rescue Zenoh, a pub/sub/query middleware for Cloud and IoT applications. It supports many interesting functionalities but in this thesis we focus on its lightweight counterpart for embedded devices - Zenoh-Pico. Zenoh-Pico is entirely written using the C pro-
gramming language thus making it extremely lightweight and efficient, perfect for an embedded device. In this work I focus on the support to deep-sleeping mode for Zenoh-Pico on UDP unicast communications. The deep-sleeping modes are typical of embedded devices such as ESP32 or Zephyr boards and they are used to put the board in a kind of energy saving state.
In order to work with Zenoh-Pico I used PlatformIO, ESP-IDF, VSCode, and the board az-delivery-devkit-v4 ESP32. PlatformIO and ESP-IDF are used to manage the toolchain for the creation of a firmware to be put on the ESP32 starting from the code on VSCode. VSCode is used to program the code that will run on the board. I carried out many experiments from my support to deep-sleeping mode on the ESP32. The main and most interesting results being the time and space efficiency of my support to deep-sleeping mode, and the fact that with just 3 seconds of deep-
sleeping on a low duty cycle programme (about 6 seconds of activity - 3 seconds of sleeping) with a 250mAh battery, the battery gains about 2 weeks of autonomy with 3 seconds of deep-sleeping. In conclusion, the deep-sleeping mode is of paramount importance for the embedded system world when those embedded devices are powered from an external battery limited in its capacity thus the importance of a middleware like Zenoh-Pico to support the deep-sleeping mode.
Tipologia del documento
Tesi di laurea
(Laurea magistrale)
Autore della tesi
Zanni, Andrea
Relatore della tesi
Scuola
Corso di studio
Ordinamento Cds
DM270
Parole chiave
internet of things,iot,zenoh,zenoh-pico,middleware,deep sleeping,embedded systems,constrained devices,esp32
Data di discussione della Tesi
19 Marzo 2024
URI
Altri metadati
Tipologia del documento
Tesi di laurea
(NON SPECIFICATO)
Autore della tesi
Zanni, Andrea
Relatore della tesi
Scuola
Corso di studio
Ordinamento Cds
DM270
Parole chiave
internet of things,iot,zenoh,zenoh-pico,middleware,deep sleeping,embedded systems,constrained devices,esp32
Data di discussione della Tesi
19 Marzo 2024
URI
Statistica sui download
Gestione del documento: