Differences

This shows you the differences between two versions of the page.

Link to this comparison view

iothings:proiecte:2023:solar_powered_weather_station_with_esp32 [2024/01/15 00:36]
tudorel.tibrea [Hardware Description]
iothings:proiecte:2023:solar_powered_weather_station_with_esp32 [2024/01/15 14:13] (current)
tudorel.tibrea [Solar powered weather station with ESP32]
Line 4: Line 4:
   * Master: ACES   * Master: ACES
   * Academic year: 2023-2024   * Academic year: 2023-2024
-  * Source code:+  * Source code:[[https://​gitlab.cs.pub.ro/​tudorel.tibrea/​iot/​-/​tree/​main]] 
 +  * Demo + presentation:​ [[https://​drive.google.com/​drive/​folders/​1EvvDwn7LklOQQSkhjKmbFAPYsgpyLujw]]
 ===Project Description=== ===Project Description===
 This project aims to design and build a truly autonomous weather station by leveraging solar energy harvesting. The weather station will monitor the temperature,​ the humidity, the atmospheric pressure and the state of charge of the Li-Po battery. The project will use MQTT communication protocol with ESP32 to publish messages and subscripe to topics, making the data accessible for various applications. This project aims to design and build a truly autonomous weather station by leveraging solar energy harvesting. The weather station will monitor the temperature,​ the humidity, the atmospheric pressure and the state of charge of the Li-Po battery. The project will use MQTT communication protocol with ESP32 to publish messages and subscripe to topics, making the data accessible for various applications.
Line 12: Line 13:
   * **BME 680** - The BME680 is a small, integrated environmental sensor developed by Bosch Sensortec. It can measure barometric pressure, humidity, and ambient temperature; ​   * **BME 680** - The BME680 is a small, integrated environmental sensor developed by Bosch Sensortec. It can measure barometric pressure, humidity, and ambient temperature; ​
   * **Pololu 3.3V Step-Up/​Step-Down Voltage Regulator S7V8F3** -  This is a compact, efficient voltage regulator capable of outputting a fixed 3.3V from input voltages between 2.7V and 11.8V. It's ideal for powering 3.3V electronic devices from various battery types or power sources; ​   * **Pololu 3.3V Step-Up/​Step-Down Voltage Regulator S7V8F3** -  This is a compact, efficient voltage regulator capable of outputting a fixed 3.3V from input voltages between 2.7V and 11.8V. It's ideal for powering 3.3V electronic devices from various battery types or power sources; ​
-  * **Solar panel 6V, 160mA, 0.96W** -  A small solar panel capable of converting sunlight into electrical energy. With a power output of 0.96 watts and a current output of 160mA at 6 volts, it's suitable for small-scale energy harvesting applications,​ such as powering low-power electronic devices or charging small batteries. It was used because the board has an integrated LDO that can't work with voltages under 3.6 V; besides that, once the drop-out voltage is getting smaller, the LDO will become more and more inefficient,​ consuming more energy. This buck-boost has a very low quiescent current ​and since it's a switching power supply, it has very low quiescent current; it also provides short circuit protection.+  * **Solar panel 6V, 160mA, 0.96W** -  A small solar panel capable of converting sunlight into electrical energy. With a power output of 0.96 watts and a current output of 160mA at 6 volts, it's suitable for small-scale energy harvesting applications,​ such as powering low-power electronic devices or charging small batteries. It was used because the board has an integrated LDO that can't work with voltages under 3.6 V; besides that, once the drop-out voltage is getting smaller, the LDO will become more and more inefficient,​ consuming more energy. This buck-boost has a very low quiescent current since it's a switching power supply; it also provides short-circuit protection.
   * **MPPT SOLAR BATTERY CHARGING MODULE, 3.7V, CN3791** - This module is designed for charging single-cell Lithium batteries using solar power. It incorporates Maximum Power Point Tracking (MPPT) technology, which optimizes the power output from the solar panel to efficiently charge the battery. It's specifically designed for 3.7V batteries and is commonly used in portable solar charging systems;   * **MPPT SOLAR BATTERY CHARGING MODULE, 3.7V, CN3791** - This module is designed for charging single-cell Lithium batteries using solar power. It incorporates Maximum Power Point Tracking (MPPT) technology, which optimizes the power output from the solar panel to efficiently charge the battery. It's specifically designed for 3.7V batteries and is commonly used in portable solar charging systems;
   * **Li-Po battery 1050 mAh** - used for energy storage;   * **Li-Po battery 1050 mAh** - used for energy storage;
Line 19: Line 20:
  
  
-**The following electric schematic represents the project’s hardware.** \\+**//The following electric schematic represents the project’s hardware//**\\
 {{:​iothings:​proiecte:​2023:​schematic.png?​800|}} {{:​iothings:​proiecte:​2023:​schematic.png?​800|}}
  
-**The prototyping board can be seen bellow.** \\+**//The prototyping board can be seen bellow//**\\
 {{:​iothings:​proiecte:​2023:​breadboard.jpg?​800|}} {{:​iothings:​proiecte:​2023:​breadboard.jpg?​800|}}
  
 ======Software Description====== ======Software Description======
-The code flowchart can be seen bellow+//**The code flowchart can be seen bellow**//
  
 {{:​iothings:​proiecte:​2023:​solarweatherstationflowchart.jpg?​200|}} {{:​iothings:​proiecte:​2023:​solarweatherstationflowchart.jpg?​200|}}
Line 216: Line 217:
 ======Results====== ======Results======
 {{:​iothings:​proiecte:​2023:​results12345.png?​800|}} {{:​iothings:​proiecte:​2023:​results12345.png?​800|}}
 +Above we can see a prolonged use time with a lot of data entry points.*
 +
 +{{:​iothings:​proiecte:​2023:​exemplu2.png?​800|}}
 +As you can see, the ADC reading for the battery are not that precise. We can think of at least 2 culprits in this case. First would be the ESP32 ADC's poor performance and the second one, the method chosen; because the ESP wakes from deep sleep, the energy draw increases very drastically and the battery voltage might vary.*
 +
 +*For data visualization and plotting, **MQTT Explore** was used.
 ======Conclusion====== ======Conclusion======
-In conclusion, the proposed solution demonstrates how an ESP32, combined with a BME280 sensor, can be used to create a power-efficient,​ wireless weather station capable of continuously monitoring environmental conditions and transmitting the data in real-time via Wi-Fi and MQTT, showcasing the potential of IoT in remote sensing and data communication.+In conclusion, the proposed solution demonstrates how an ESP32, combined with a BME280 sensor, can be used to create a power-efficient,​ wireless weather station capable of continuously monitoring environmental conditions and transmitting the data in real-time via Wi-Fi and MQTT, showcasing the potential of IoT in remote sensing and data communication. Further improvements will be to find a way to get precise and constant readings of the battery state of charge, although the literature says it isn't quite correct to calculate it based on voltage; the most correct way to solve this problem from an strictly engineering standpoint is to use an dedicated IC such as a fuel gauge or a coulomb counter.
 ======Bibliography====== ======Bibliography======
 [[https://​ocw.cs.pub.ro/​courses/​iothings]] [[https://​ocw.cs.pub.ro/​courses/​iothings]]
iothings/proiecte/2023/solar_powered_weather_station_with_esp32.1705271801.txt.gz · Last modified: 2024/01/15 00:36 by tudorel.tibrea
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0