Netidee Blog Bild
Evaluating the Feasibility of SenseReduce
A Prototype Deployment on a Raspberry Pi for Indoor Temperature Monitoring (04.02.2023)
Förderjahr 2022 / Stipendien Call #17 / ProjektID: 6424 / Projekt: Energy-efficient IoT by Continual Learning for Data Reduction

In the previous article, we discussed the architecture of our proposed framework to reduce data and increase energy efficiency in IoT (Internet of Things) systems. The framework, which we now call SenseReduce, uses prediction to minimize the amount of data that needs to be transmitted. We've now implemented the first version of this framework and made it available on GitHub for others to use. We've also tested it in various scenarios to evaluate its efficiency in different deployment scenarios. The results of this parameter study will be analyzed and discussed in the thesis.

This article, however, will focus on our prototype evaluation of SenseReduce. We put it to the test by using it on a Raspberry Pi to monitor indoor temperature. This proof of concept shows that SenseReduce can be used in real-world situations to help manage data in IoT systems. Our goal is to make IoT systems more energy efficient, and our testing with the Raspberry Pi is an essential step towards achieving that goal.

Setup

The prototype setup consisted of a Raspberry Pi 4 Model B with 2GB RAM and an HP ZBook 14U G4 laptop. We connected a DS18B20 sensor to the Raspberry Pi (RPi) to measure the temperature. We joined the required components using this tutorial, but one can find many other guides with a quick Internet search. The script for reading the sensor measurements is contained in the open-source repository (link).

We tested different neural network-based prediction models, one of them being the Long Short-Term Memory (LSTM) network. However, the TensorFlow framework only supports LSTM networks starting from version 2.5, which is not readily available for the RPi. To overcome this issue, we applied the instructions provided in this open-source repository to install TensorFlow 2.10.

Reducing Energy Consumption

We reduced the idle energy consumption of the Raspberry Pi by turning off unnecessary onboard features such as Bluetooth, USB, and Ethernet, following online guidelines (link1, link2). Communication within the SenseReduce framework is always initiated by a sensor node. Therefore, we can turn off the Wi-Fi between message transmissions (also called duty cycling), resulting in even more energy savings. In total, we were able to decrease the energy consumption by about 20%, resulting in an average energy consumption of 1.9W as measured by a GW Instek GPM-8213 power meter.

We trained a univariate prediction model for indoor air temperature forecasting using the publicly available Intel Berkeley Research Lab dataset. This model was then used in the SenseReduce framework for prediction-based data reduction. We deployed a TensorFlow Lite version on the RPi and let it run for five days, observing its energy consumption and the correctness of the measurements.

Our findings show that the SenseReduce framework does not significantly increase energy consumption. Although computing predictions using a neural network requires a significant amount of computation, the overall energy consumption is not affected as it only occurs a few times a day with a model with sufficient prediction accuracy. Overall, SenseReduce is a viable solution for increasing energy efficiency in IoT systems.

 

Tags:

Raspberry Pi TensorFlow Sensor Machine Learning

Alexander Falzberger

Profile picture for user alexander.falzberger
I am a master's student in "Software Engineering & Internet Computing" at TU Vienna and currently working on my thesis at the HPC Research Group with Prof. Ivona Brandić. The emphasis of my studies lies on Edge Intelligence, combining my interests in IoT, AI, and Distributed Computing.
CAPTCHA
Diese Frage dient der Überprüfung, ob Sie ein menschlicher Besucher sind und um automatisierten SPAM zu verhindern.
    Datenschutzinformation
    Der datenschutzrechtliche Verantwortliche (Internet Privatstiftung Austria - Internet Foundation Austria, Österreich) würde gerne mit folgenden Diensten Ihre personenbezogenen Daten verarbeiten. Zur Personalisierung können Technologien wie Cookies, LocalStorage usw. verwendet werden. Dies ist für die Nutzung der Website nicht notwendig, ermöglicht aber eine noch engere Interaktion mit Ihnen. Falls gewünscht, können Sie Ihre Einwilligung jederzeit via unserer Datenschutzerklärung anpassen oder widerrufen.