ESP32太阳能气象站

2018-10-252.3万
AI 快速预览详细 收起
本项目介绍了一个基于ESP32的太阳能气象站,用于检测温度、湿度和气压,并将数据上传到Thingspeak平台。主要组件包括DFRobot FireBeetle ESP32开发板、BME280环境传感器、太阳能电池板和聚合物锂电池。通过详细的步骤指导,用户可以轻松完成硬件组装和代码上传,实现气象数据的无线传输。
ESP32太阳能气象站图1
我的第一个物联网项目想法是建立一个气象站,并将数据发送到data.sparkfun.com

需要稍微调整的一点是,我原先想在Sparkfun上开设账户,但由于该平台不愿意新增连接,所以我选用了另一个物联网数据收集平台thingspeak.com


继续……

该系统将放在我的阳台上,用于检测温度、湿度和气压。

请前往DFRobot产品资料库页面了解更多关于此微控制器的信息以及如何使用Arduino软件 (IDE) 上传代码。

所有物理参数均由BME280传感器提供。请前往产品资料库页面了解更多信息。

为完全实现“无线”运作,系统所需电力将由两块6V太阳能电池板提供,其可产生功率为2W的电流。电池为并联连接。所产生的电能将储存于一个容量为+/- 1000mAh3.7V聚合物锂电池 (Polymer Lithium Ion Battery) 中。

DFRobot的太阳能锂电池充电器 (Solar Lipo Charger) 模块将用于电量管理。

第1步:组件

ESP32太阳能气象站图2
ESP32太阳能气象站图3

本项目需要:
2x - 6V 1W太阳能电池板
1x -万能电路板
1x - 排母
1x - 外壳/盒子
电线
螺丝

还需要以下工具:
热胶枪
烙铁
钻孔机


第2步:组装


ESP32太阳能气象站图4
ESP32太阳能气象站图5
ESP32太阳能气象站图6
ESP32太阳能气象站图7


FireBeetle ESP32物联网微处理器由3.7V电池提供电力,该电池通过电池输入口与太阳能锂电池充电器相连接。太阳能电池连接到PWR In端口。 FireBeetle ESP32物联网微处理器的VccGND端口则与太阳能锂电池充电器的Vout端口相连接。
BME280的电力来自于 FireBeetle ESP32物联网微处理器的3.3V端口。通过I2C总线(数据线SDA/时钟线SCL)进行数据传输。
为将所有组件固定于盒子之中,我使用了一块万能电路板和若干排针、电线。
至于太阳能电池,我只是用热胶将其粘于盒子的顶盖上。由于盒子本身有孔,因此无需额外打孔 :)


第3步:代码

ESP32太阳能气象站图9ESP32太阳能气象站图8


ESP32太阳能气象站图10
ESP32太阳能气象站图11

ESP32太阳能气象站图12

在使用我的代码之前,需要做一些改动。
首先,规定你的wifi网络名称和密码。然后,从Thingspeak.com获取一个API密钥。我会在下文进行解释。此外,如果你愿意的话,可以规定一个新的睡眠间隔。

Thingspeak.com
前往www.thingspeak.com进行注册。


验证完电子邮件后,你可以前往通道 (Channels) 页面创建一个新的通道。添加你想要上传的变量。本项目上传的是温度、湿度和气压数据。

向下滚动并点击“保存通道 (Save Channel)”。之后,点击API密钥 (API Keys) ,获取API写入密钥。然后将其添加到你的代码文件中。

若各步操作无误,那么你的气象站就可以开始向你的通道发送数据了。

第4步:小结

ESP32太阳能气象站图13

一直以来,我都会为我的项目预留改进空间,这次也不例外。

在开发过程中,我开始注意到系统的能耗问题。即使在ESP32BME280处于休眠状态的情况下,系统能耗也达到将近2mA!!!由于BME280能耗最大,因此我可能需要一个可以在休眠模式下完全关闭这个模块的开关。


另一个引起我注意的地方是电池电压读取问题。经过对ESP32部分内部功能的调查与测试,我发现这些功能都不适用。因此,我可能会添加一个分压器,并将其连接到模拟输入 (Analog Input) ,直接读取电压信息。如果你有更好的解决方案,请与我分享。

如果你发现任何错误或有任何建议、改进及疑问,请告诉我。

“不要厌烦,动起手来”


注:本项目制作人为Tiobel,他是一位才华横溢、勤勉努力的创客。

了解更多ESP32/ESP8266教程、项目,请点击 : ESP32教程 汇总贴

截图201810251606131786.png (484.27 KB, 下载次数: 5432)

ESP32太阳能气象站 · 物联网项目入门_image_3.webp

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(7)
诩
八错八错
20060606
20060606
哈哈哈,好创意
PCB制作
PCB制作
不错
gada888
gada888
不错,不错
GZ-LHW
GZ-LHW
用UNO也做了一个,不过是用RF24传输,考虑到esp8266或32太耗电,并且隔一段时间检测并传送,非活跃时间进入休眠,最大化省电。



GZ-LHW
GZ-LHW回复luna
期中考完了后可能会有机会
luna
luna
作者
回复GZ-LHW
666 ,你可以发个教程出来~
dsweiliang
dsweiliang
还以为是你自己做的呢
luna
luna
作者
回复dsweiliang

嘻嘻,我看着教程是会做的~可惜我缺一块esp32
rzyzzxw
rzyzzxw
高手,赞一下。
- 没有更多了 -