Wind Turbines are normally located in non-urban locations, which make monitoring these wind turbines a challenge. This project helps to monitor these wind turbines, this LoRaWAN based system to enable monitoring Wind Turbine Remotely.

This project is a Wind Turbine Monitoring System based on LoRaWAN. The System consist of three Main Parts:
  • End Node:
Represents the Main part of the system where NUCLEO-WL55JC1 boards works as the brain of the node, and used to read data from MPU6050 and the Motor Encoder to be able to read and report the following data to the backend:
  • Vibration status :The NUCLEO-WL55JC1 reads the Acceleration raw data in the 3-axes from the MPU6050, and compares it against the baseline that was calculated during system startup to decide if the system current level of vibration is above the safe threshold.
  • Temperature value : The NUCLEO-WL55JC1 reads the raw data for the temperature from the MPU and converts it to temperature value in celsius. 
  • Wind Turbine Speed : The NUCLEO-WL55JC1 is connected to the Motor Encoder that is used to measure the speed of the Wind Turbine. 
After calculating this data, the NUCLEO-WL55JC1 will send it over LoRaWAN and will be read by the Gateway.
  • Gateway:
The NUCLEO-F746ZG is used along with LRWAN_GS_HF1 as a gateway which is responsible for collecting all the LoRa communication from the End-Nodes and sending it to the configured web server. 
  • Backend Server : 
Loriot” was used as a web server to receive the data from the Gateway, the data received by the web server is raw data which won’t be understandable by the user, that is why I created a GUI to display the raw data received from the End-Node. STM32CubeMonitor was used to create a GUI that read the raw data from the web server, and displayed it in understandable format for the user.
The code for the EndNode and the STM32CubeMonitor project can be found in the following GitHub repo :