Funpack2-3:FireBeetle ESP32-E的甲醛监测
基于FireBeetle ESP32-E的甲醛监测终端,实现甲醛传感器检测、数据展示和数据上云等功能。
标签
Funpack活动
ESP32-E
甲醛
onenet
PORTB
更新2023-01-03
380

Funpack2-3:FireBeetle ESP32-E的甲醛监测 零.Motive

        看到这一期活动,主要是有两个原因想要参加,一是因为看到FireBeetle ESP32-E发布,板载充电和显示屏深得我心,对于环境监测来说这两赋能设备以独立运行的可能。二是刚好家里最近装修,甲醛是避不开的话题。

一.需求

根据以上客户(bushi 的输入,首先明确一下需求:

  1. 硬性要求

    任务二:lvgl图形库和应用 用FireBeetle-E开发板作为控制单元,搭配显示屏移植lvgl图形库,动态显示任意一个及以上传感器采集到的数据,或者使用触摸屏对执行器进行控制。

    建议搭配:温湿度传感器/CO2传感器/CO传感器/PM2.5 等一个及以上传感器 + 屏幕等硬件配合完成。

     

    (后来到货后发现屏幕太小了,lvgl没有心情去弄了,就换个任务吧

     

    任务六:开放性题目

    用FireBeetle ESP32-E开发板,再任选一个及以上传感器 + 一个屏幕搭配完成任务,难度不低于以上题目难度。

  2. 细化

    • 甲醛传感器数据采集:这是根本

    • OLED数据显示:拿着传感器要能看到数据

    • 数据上云:想要长时间的查看数据得有个后台,而且测甲醛的地方往往不适合人长时间呆着

二.实现 1.硬件 1).采购

        根据活动页推荐,结合项目需求,做出了以下选择:

2).组装

        到手后一周内都没有装起来,主要原因是没有接不上,又没买拓展板,母头对母头。一气之下直接白嫖一个打板,倒不一定谁能用(毕竟傻傻买甲醛的估计也没谁了),参考下尺寸,可以结合自己的设计打个板。线剪掉,直接飞到板上。

FnZEAcyYvIXw1eO4cbKe1Rb1KLIT

        连线就很简单了,甲醛三根线

Fj7ynvd1zfmjL3SbEZ2Xa4oXkma5

        参考例程,使用UART模式,甲醛传感器的TX接到另一个UART2的RX(PIN16)上,然后巧了吗不是,手一抖,连到PIN17上去了。

FlIXEA_fXFj5Y5Tv-VzRuXDbm9eR

        不过小问题,飞线是基操。把PIN17的排针噶掉,PIN17和PIN16一坨锡。就像这样

Fjge4zP_ik2S45ML6AHgPfXrxolv

        显示四根线,I2C引脚对应接到PIN21、PIN22即可。这个地方其实另外就是电源线,粗粗的来两根,反正这么大的空间。

FmG_p678LdSgNs70LI93SKyFPrdO

2.软件

Fi5OeZjlmcIE8KEnMKMcKnCJJ2_w

        相对来说软件开发的速度就要快很多,整体分为三大块,分别是甲醛数据采集、数据显示和无线数据传输。这里简单的介绍一下,具体看代码吧。

        甲醛数据采集直接接收串口数据,使用官方的库就可以了,没什么问题。参考《室内空气质量标准》,2002年版本写是1小时平均值≤0.10mg/m3,直接把数据写在屏幕上,方便查看。(写稿的时候,刚好看到新闻说2023年2月1日起执行2022年版本,这一数值被修改为了0.08mg/m3)

FmrxY3VFUdmL9xX_yoTv65WK_9vn

        数据显示,开始准备移植LVGL的,后来看这个屏幕的尺寸实在是小,就放弃了,u8g2拿过来,改吧改吧就能用了。因为甲醛数据采集有一个反应时间,特别是在室内环境下,数据变化较小,为了显示每次数据是否刷新,做了一个进度条,数据若有刷新就归零。需要注意的是,这里写了个0~5ppm是传感器的量程,不代表后面的数字是以ppm为单位(主要是写不下了),在标况下,1 ppm 甲醛= 0.746 mg/m3。

FnMcKg5IJv9ud_HnH2xSATVrPf_c

        MQTT连接与数据上报就是面向搜索引擎和文档编程啦,固定流程没什么好说的。

Ft-LQNT3fYN-yKzIdXNp58khxPVt

3.测试

        本来准备在这里仔细做两组对比试验的,因为众所周知的原因,一直被困在同一个房间,没法进行下去。那就简单说一下效果吧。对于现在一直居住的房间正常情况下,基本稳定在0.3以下。但是某些气体干扰比较大,比如下面这个曲线。

FjyZ7mZJATr0gmayp_bK4RX2okc8

        可以看到变成一条直线了,当然并不是说稳定在了3.73,而是前面我们可以看到5ppm的时候对应就是3.73mg/m3。后来回想并测试了一下,应该是因为众所周知的原因在室内使用酒精消毒导致的。

FiuIHYtadQ7rqJNg1kilxrLbcsaU

        从以上规格书也可以看到干扰气体里面第一项就是酒精,而生活中这两个很容易出现在一起我想这也是电化学类气体传感器一个主要的痛点吧。

另一个就是去新装修的房间实测,长时间通风的房间,甲醛水平跟普通室内差不多,但是很少打开的新装好的柜子内部可以很轻松的突破国标。所以装修完了还是老老实实的开窗通风吧。

软硬件
电路图
附件下载
sketch_nov14a_onenet_oled.ino
团队介绍
评论
0 / 100
查看更多
目录
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2023 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号