Skip to content

Latest commit

 

History

History
76 lines (59 loc) · 4.42 KB

README.md

File metadata and controls

76 lines (59 loc) · 4.42 KB

Solar Panel Monitoring System

Overview

The Solar Panel Monitoring System is designed to provide real-time monitoring and analysis of solar panel performance. This project integrates both hardware and software components. The hardware involves an ESP32 microcontroller connected to various sensors that measure key parameters of the solar panel, such as voltage, current, temperature, and light intensity. The collected data is sent to an MQTT broker (HiveMQ). On the software side, the backend server, built with Express.js, retrieves the data from the MQTT broker and sends it to the frontend application developed with Vue.js for visualization and monitoring.

Project Map

Note: The ESP32 board starts sending data if it is well configured (from the configuration interface)

Manual Setup

ESP32 board setup

Perform the following steps:

1- Download and install Arduino.
2- Install ESP32 Filesystem Uploader in Arduino IDE.
3- Edit the source Code (update the broker and the firebase settings).
4- Install the libraries used in the arduino code.
5- Upload the configuration interface in spiffs on esp32 board (Go to Tools >ESP32 Data Sketch Upload and wait for the files to be uploaded).
6- Upload the source Code.

You will need to create an account in firebase and HiveMQ to be able to modify the arduino code

7- Connect to the SolPanelMonitor access point.
8- Configure the electronic board from the configuration interface (http://192.168.4.1/).

If the electronic board is well configured you will be redirected to this interface

9- Make the wiring between the sensors and the PV as shown here

Web application setup

Make sure Docker is installed.

You need to update the API file with your settings in web>frontend>src>api and web>backend>src>api

Spin up the containers

docker-compose up -d --build

Running the command will expose 3 services with the following ports:

  • Backend - :3000
  • Frontend - :80
  • Mongodb - :27017

You can now access the server at http://localhost/ .

App preview

Want more details?

For more details or if you want to recommend me for other projects. Just contact me on my email: ranizouaouicontact@gmail.com