IoT Based Smart Monitoring and Optimization of Individual Solar Panels Using Wireless Sensor Network
Currently in most of the large-scale solar power production systems, only aggregated power of solar panels is acquired and monitored. There is a need to individually monitor each solar panel to optimize its efficiency. Therefore, power generated from solar panels is acquired and monitored individual
2025-06-28 16:28:18 - Adil Khan
IoT Based Smart Monitoring and Optimization of Individual Solar Panels Using Wireless Sensor Network
Project Area of Specialization Internet of ThingsProject SummaryCurrently in most of the large-scale solar power production systems, only aggregated power of solar panels is acquired and monitored. There is a need to individually monitor each solar panel to optimize its efficiency. Therefore, power generated from solar panels is acquired and monitored individually. The power is then managed and optimized to maximize solar power generation. Generally, solar plants are built at locations which people can’t visit on daily basis. Hence this approach will help them to virtually monitor their systems from faraway places. Our system will monitor each panel load by using the IoT based wireless sensor network and manage the data which is received from each panel, send it to cloud through internet and ultimately be displayed on mobile application. It also helps the remote users to monitor the large-scale solar farm’s individual and combined energy production. The user can get relative information about the current, temperature, light intensity, humidity and dust of the solar panels using sensors, aggregate it on a wireless sensor gateway and send it to an online database. This will help the user to detect fault in any of these panels and adapt timely preventive measures for the maintenance of the solar panel. We have used a mobile application and Internet of thing (IoT) to monitor the solar power. This system is designed to solve the problems that occur in efficient solar power generation, like management of panels by detecting the faulty panel, maintenance of the faulty panel and to reduce the time it takes to get repaired. By using this technology, the production cost of solar energy will be reduced. This also provides real time data to the user which helps them to monitor the system with high accuracy. The main purpose of this project is to monitor each solar panel individually and efficiently.
Project Objectives- To monitor the power of individual Solar panel by using voltage and current sensors.
- To detect the faulty panel.
- To deploy a wireless sensor network to individually gather data from each solar panel.
- To deploy irradiance sensor in the network.
- To access data from cloud and retrieve it on mobile application.
- To rapidly shutdown the system
System Implementation on Hardware
The hardware of our project is composed of 2 ESP32 DevKit v1 microcontrollers, 4 DC voltage sensors, 4 current sensors and a pyranometer. One of the microcontroller acts as a slave that has two solar panels attached to it, and each solar panel is connected to a voltage and current sensor to measure the values of voltage and current. The slave sends the values obtained from all the four sensors to the master following specific network ids and http. The other microcontroller acts as a master. It has 1 solar panel attached to it which is connected to a voltage and current sensor to measure the values of voltage and current. The master has an additional set of current and voltage sensor that is used to calculate the overall current and voltage of all the three panels. The data obtained on the master is then sent to cloud database and eventually to the mobile application.

Figure : Hardware Design Technical
System Implementation on Arduino Software
To implement the entire system, we use C language to code in Arduino IDE. The code is written in Arduino IDE. Serial monitor of Arduino is used to test the system. There are several built in libraries used to interface different components to the system.
Arduino Libraries
ThingProperties.h: To use cloud variables internet connectivity is important. For this purpose this library is used to access cloud variables. There are two further sub libraries in thingProperties.h which are:
- ArduinoIoTCloud.h: This library is used to synchronize or map the local sketch variables with the IoT cloud properties.
- Arduino_ConnectionHandler.h: This library is used to manage the connection to the WiFi seamlessly. const char SSID [] = SECRET_SSID const char PASS [] = SECRET_PASS These values are extracted from the Secret Tab to connect to the WiFi.
- Wireless network that will finish the use of many wires for data transfer.
- Efficient management of solar power production.
- Maximum power obtained from panels.
- Fault detection via movile application.
- Portable analysis of panel parameters using mobile application.
The ESP32 DevKit v1 is one of the development board created to evaluate the ESP-WROOM-32 module. It consists of a 32-bit Tensilica Xtensa LX6 microprocessor in both Single and Dual-core variations [1]. This microcontroller operates on a voltage of 3.3V. It is based on the ESP32 microcontroller that boasts Wi-Fi, Bluetooth, Ethernet and Low Power support all in a single chip. This board is used with 2.4 GHz dual-mode Wi-Fi and Bluetooth chips by TSMC 40nm low power technology, power and RF properties best, which is safe, reliable, and scalable to a variety of applications. e. It allows the implementation of serial communication protocols such as UART, SPI, and I2C [2]. It has numerous other features that makes it suitable for this project. Following table shows some major specifications of this microcontroller:
Table 1: Specifications of ESP32 DevKit v1 [37]The ESP32 DevKit v1 is developed with two different variations related to pins i.e. 30 and 36 pins respectively. We are using the microcontroller comprised of 30 pins. Following is the pinout of ESP32 DevKit v1 with 30 GPIOs.
3.2.2 ACS712 Current SensorThe ACS712 current sensoris used tomeasure current using the Hall Effect principle. It can measure both AC and DC current ranging from +5A to -5A, +20A to -20A and +30A to -30A [5]. This modules outputs Analog voltage (0-5V) based on the current flowing through the wire; hence it is feasible to interface this module with the microcontroller we are using i.e. ESP32 DevKit v1.
3.2.3 DC Voltage SensorThe voltage sensor module is a 0-25 DC voltage sensing device that is based on a resistive voltage divider circuit. It reduces the input voltage signal by the factor of 5 and produces a corresponding analog output voltage. This is the reason that we are able to measure voltage up to 25V using the 5V analog pin of any microcontroller.
3.2.4 PyranometerConstruction
We used a solar cell that is integrated in commonly used calculators. A resistor of 10 ohm is connected parallel to the solar cell across which a voltage is produced. We calculated the area of solar cell in square meter by measurement scale. Now, as we have obtained both the current and voltage across the resistor, hence, the power is attained in watts. So we have measured the irradiance in watts per square meter (W/m²). To display the result of the pyranometer we have used 16×2 LCD.
3.2.5 Channel Relay2-Channel 5V Relay Module is a relay interface board. This module is comprised of two relays that are electrically isolated from the controlling input. The relays can be used to switch higher voltage and current loads than a microcontroller can usually accomplish [9].It can be controlled directly by a wide range of microcontrollers such as Arduino, AVR, PIC, ARM and so on. It uses a low level triggered control signal (3.3-5VDC) to control the relay [8].
Final Deliverable of the Project HW/SW integrated systemCore Industry ITOther Industries Telecommunication Core Technology Internet of Things (IoT)Other TechnologiesSustainable Development Goals Affordable and Clean Energy, Industry, Innovation and InfrastructureRequired Resources| Item Name | Type | No. of Units | Per Unit Cost (in Rs) | Total (in Rs) |
|---|---|---|---|---|
| Total in (Rs) | 38784 | |||
| Male to male wires | Equipment | 1 | 120 | 120 |
| Male to female wires | Equipment | 1 | 100 | 100 |
| PC to oppo charger | Equipment | 1 | 200 | 200 |
| POT 10k | Equipment | 5 | 20 | 100 |
| ESP32 NODE MCU | Equipment | 3 | 800 | 2400 |
| CURRENT SENSOR ACS712 5A | Equipment | 5 | 220 | 1100 |
| JM8101 TOOL KIT | Equipment | 1 | 450 | 450 |
| XL7015 MODULE | Equipment | 1 | 230 | 230 |
| Solar panels(30 watts) | Equipment | 3 | 4000 | 12000 |
| Solar panel stand(30 degree angle) | Equipment | 1 | 2500 | 2500 |
| Voltage sensor | Equipment | 4 | 3366 | 13464 |
| Pyranometer | Equipment | 1 | 4000 | 4000 |
| Printing | Miscellaneous | 1 | 2000 | 2000 |
| 12 2 side jac | Equipment | 1 | 120 | 120 |