Federico Cum
A Neural network application for impedance-based plant monitoring: from a development framework towards edge computing.
Rel. Maurizio Martina, Danilo Demarchi, Umberto Garlando. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Elettronica (Electronic Engineering), 2022
|
PDF (Tesi_di_laurea)
- Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives. Download (7MB) | Preview |
Abstract: |
During the 21st century, the world is experiencing the most evident effects of climate change, such as desertification, rising temperatures, higher frequency of extreme meteorological events, rising sea levels, and lack of potable water. Furthermore, the world population is constantly growing and is expected to reach almost 10 billion by 2050. In this scenario, agriculture is severely challenged due to the increasing demand for food and the worsening of environmental conditions: new techniques are needed to improve the yield of plantations by saving as many valuable resources, such as water and energy, as possible. The field of smart agriculture is working in this direction, and it is developing technologies that can make farming more efficient and autonomous. This thesis work aims to develop a baseline technology able to detect the state of the health of a plant autonomously by employing an innovative and promising type of sensor based on plant stem impedance, environmental sensors, and machine learning techniques. The machine learning model chosen for this thesis is the neural network. A suitable topology has to be found to get a low-cost, low-power, and accurate system able to perform edge classification of plants based on their health. The chosen model will be the one that offers a good trade-off between computational cost and the reliability of the predictions. An existing machine learning framework based on the Python library Pytorch was completed to have a tool able to train autonomously many neural network models to be compared. The software can train a single neural network and batch train multiple different neural networks ranking them based on their performances. The designed framework was then employed to analyze which neural network structure gave the best results in terms of trade-off between performance and computational cost. The dataset is composed of four plants; two are watered and can be considered healthy, other two are not watered and considered unhealthy. The training was performed on one healthy and one unhealthy plant to have a balanced dataset; the testing was performed on the remaining plants, both on past and future data. Many simulations have been performed, and the best results were achieved by employing neural networks with one hidden layer and no more than 20 neurons. Several simulations employing more complex topologies showed strong overfitting, so a drastic drop in performance on data of unseen plants. The prediction performances of the classifier are still not optimal; however, the results show that it is possible to employ neural networks, environmental and impedance data to predict the status of a plant. In the last part of this thesis, a possible toolchain for microcontroller implementation is analyzed: the software is distributed by STMicroelectronics, it is called STM32Cube.AI, and it is an expansion package of the STM32CubeMX code generator. STM32Cube.AI allows the user to have a preliminary evaluation of the resources needed by the microcontroller to run the algorithm, such as memory usage, power consumption, computational time, and many others. A network with one hidden layer with 10 neurons was loaded on an STM32F401RE microcontroller showing 11.5 kB of flash memory usage and 1.45 kB of RAM. The STM32Cube.AI tool also automatically generates all the low-level C functions the user needs to implement the neural network without the necessity to program them explicitly and this will be useful for a future implementation of this project. |
---|---|
Relatori: | Maurizio Martina, Danilo Demarchi, Umberto Garlando |
Anno accademico: | 2022/23 |
Tipo di pubblicazione: | Elettronica |
Numero di pagine: | 133 |
Soggetti: | |
Corso di laurea: | Corso di laurea magistrale in Ingegneria Elettronica (Electronic Engineering) |
Classe di laurea: | Nuovo ordinamento > Laurea magistrale > LM-29 - INGEGNERIA ELETTRONICA |
Aziende collaboratrici: | NON SPECIFICATO |
URI: | http://webthesis.biblio.polito.it/id/eprint/24471 |
Modifica (riservato agli operatori) |