首页 » 通讯 » 大年夜神手工DIY了一个空气检测仪……_传感器_洞洞

大年夜神手工DIY了一个空气检测仪……_传感器_洞洞

萌界大人物 2025-01-03 06:22:57 0

扫一扫用手机浏览

文章目录 [+]

右边的鸣人是后P上去的,平时可以放个便签、照片什么的。

想做这个东西,实在已经有段韶光了,零件早就买了,然后,由于各种缘故原由,一贯吃灰中。
这次做出来,实在是由于最近韶光比较充裕,闲的无聊。
这个空气检测仪可以说是堆料,有什么用什么,末了就成这个样子了,当然,你也可以根据自己的想法变动零件的摆放位置、删减功能。

大年夜神手工DIY了一个空气检测仪……_传感器_洞洞 大年夜神手工DIY了一个空气检测仪……_传感器_洞洞 通讯

这个检测仪是基于 EspEasy固件的,紧张功能是检测 CO2和 PM2.5,同时还可以检测温度,湿度,气压,光照,但是由于甲醛传感器的结果受各种条件影响较大,没有加入。

大年夜神手工DIY了一个空气检测仪……_传感器_洞洞 大年夜神手工DIY了一个空气检测仪……_传感器_洞洞 通讯
(图片来自网络侵删)
EspEasy是一款免费的开源物联网 MCU固件,最初由 letscontroit. com社区(原名 esp8266. nu社区)开拓。
它运行在基于 ESP8266的硬件平台上,“EspEasy”是指固件, 而不是硬件。
它供应了一个非常大略的操作系统,用户只需连接传感器,便可以通过 Web页面读取和掌握,而无需编写任何代码,并且可以通过 ota更新固件。
刷入 EspEasy固件的设备可以轻松接入智能家庭系统,通过 Web页面配置完成往后,基于 ESP8266的硬件便可以成为无线传感器,或者掌握设备。

本着零根本,少折腾的原则,选件以大略粗暴、方便实用为主,只管即便少留选择的余地,防止给新手挖坑。
如果是新手,最好按推举的型号买,可以无脑接线。
入门级别的,可以按 EspEasy官方支持传感器型号来选件,更多的可以参考官方的插件列表。
高手请直接关闭,全文无技能含量。

新手、入门、高手快速自检:

新手:一看到上面的图就蒙了;入门:用过 EspEasy,理解它的插件;高手:对 EspEasy十分理解(由于是基于 EspEasy完成的,以是这里的高手就这样定义了);

一、准备材料

1、硬件材料

洞洞板

NodeMcu

WeMos D1 mini

SD1306主控,I2C接口 OLED

SenseAir S8 CO2传感器

Plantower PMS 7003 粉尘传感器

BH1750 3.3V光芒传感器

BME280 3.3V温湿度压力传感器

WS2812 RGB LED

有啥用啥的原则

杜邦线

按钮开关,有啥样的用啥样的

洞洞板(只管即便厚点,防止变形,选配。
)NodeMcu(或者 WeMos D1 mini也行,这里是 EspEasy的官方硬件支持列表,有根本的可以随意,没根本的,最好随着脚印走。
)OLED显示屏(驱动芯片 SD1306或者 SH1106,分辨率最好128X64,I2C接口,颜色根据个人喜好,选配。
)SenseAir S8 CO2传感器(根据个人须要选配)Plantower PMS X003(“X”代表数字,我这用的是7003,根据个人须要选配。
)BH1750 3.3V光芒传感器(选配)BME280 3.3V温湿度压力传感器(选配)WS2812 RGB LED(我用的是1颗灯珠的,选配)LED三个(根据个人喜好,最好不要用透明高亮的,选配)母头杜邦线(如果用烙铁可以选配,否则必备)按钮开关(可以从旧鼠标上拆)电阻四个(可有可无)漆包线(可有可无)

2、工具

偏口钳电烙铁(可选,但是,最好有)焊锡丝(如果用烙铁,必备)热熔胶及胶枪(根据个人须要,可能会用到,不必须)

3、软件

串口驱动 (CP2102或CH340,如果其他型号,可以向买家要或自己搜)EspEasy(可以辞官网下载,也可以用我编译的版本,该当是基于11月尾的版本,去掉了一些这里没用的插件。
文章末端有下载连接。
)图片取模软件(用于自己编译固件,修正 OLED的启动画面。

二、软件设置

所用到的软件会在文章最下方供应下载

1、刷写 EspEasy固件

刷写 EspEasy固件非常方便,首先先确定串口芯片型号,安装对应驱动,一样平常常见的便是 CP2102和 CH340,如果不是,可以向商家索取或者百度搜索,我的下载包里供应了 CP2102和 CH340的驱动。

↑最大略的区分方法便是看芯片形状,最准确的便是看芯片上的字

安装完驱动往后,重新插拔下设备,就可以在设备管理器里看到新的串口设备了,记住串口号。

查看方法:桌面→我的电脑→右键属性→设备管理器→端口

不才载的文件夹中打开 EspEasy文件夹,找到里面的 FlashESP8266.exe双击打开。
打开软件后,选择对应的串口,Firmware选择 GeekAir4096.bin,然后点击 Flash,会弹出一个 CMD窗口,显示刷写进度,刷完往后,重新插拔一下,重启 Esp。

文件夹里面的三个 blank文件是用来清空 flash的,尤其是当 EspEasy设置登录密码,而又忘却的时候,用于初始化还原(建议刷固件之前先用 blank清空一下)。

还是习气老版的工具

2、设置 EspEasy

刷完重启往后,就可以搜索 SSID了,手机或电脑都行,搜索 WIFI,找到 Geek_Air_0,链接,密码 configesp,如果链接后没有自动弹出设置页面,就手动访问 192.168.4.1,设备的 IP地址须要是自动获取的,如果不是,先变动自动获取,再链接 Esp。

链接成功后,会看到 Esp的登录地址

担保访问设备和 ESP在同一个路由下,并且可以访问,利用前面得到的 IP地址,登录 Esp,我编译的固件已经打开了 Rules,NTP,时区也设置好了,并且关闭了串口,如果是官方版本,可以手动修正。

参考配置

如果网络中存在 MQTT Broker,可以在 Controllers中添加 Broker信息。

参考配置,我用的是 HomeAssistant平台

打开 EspEasy文件夹下的 rules1.txt和 rules2.txt,分别复制、粘贴到 EspEasy的 rules Set1、Set2里面,别忘提交保存。

文章末端会有干系设置解释

3、添加设备

为了可以少动脑筋,坑越少越好,建议无脑添加,名字不能改,如果哪个传感器没有,可以空过去,前面的编号一定不要变,比如1、2、3、6、7、8,如果有根本,可以自己更改名字和顺序,但是同时须要对应的修正 Rules。

IO口用全了

下面是插件的设置界面

SenseAir S8 二氧化碳传感器

如果没有 Controller,可以不用勾选“Sent to Controller”选项,“Interval”可以自己设定,下同。

BME280 温度、湿度、压力传感器,offset可以根据自己的实际情形调度。

BH1750 光芒传感器

SD1306 OLED屏幕,紧张设置解释,见文章结尾

PLANTOWER PMS7003 粉尘传感器

按键

虚拟设备,用来记录设备状态

三、硬件连接

接口对应表

OLED显示屏----[VCC→3.3V,GND→GND,SCL→GPIO5,SDA→GPIO4]

CO2传感器背面为进气口,不可阻挡

SenseAir S8 CO2传感器----[G+→Vin,G0→GND,UART_RxD→GPIO12,UART_TxD→GPIO13]

PMS 7003转接板

Plantower PMS 7003----[VCC→Vin,GND→GND,RX→GPIO12,TX→GPIO13]BH1750 3.3V光芒传感器----[VCC→3.3V,GND→GND,SCL→GPIO5,SDA→GPIO4]BME280 3.3V温湿度压力传感器----[VCC→3.3V,GND→GND,SCL→GPIO5,SDA→GPIO4]

接3.3V,千万别直接接5V

WS2812 RGB LED----[DI→GPIO14,5V→3.3V,GND→GND]LED三个----[红长脚→GPIO1,黄长脚→GPIO16,绿长脚→GPIO15,三短脚→GND]按钮开关----[按下接通的两脚,一脚GND,一脚GPIO3]

粗体字为 NodeMcu接口,电阻可以串入 led,或者直接做装饰用,不接入电路,可以直接在老旧电器上找,如果想接入电路,直接串入 led看亮度得当就行,不用去管阻值。
漆包线是用来代替导线,紧张也是装饰用,也可以用来制作检测仪的支架。

如果用焊接的办法,接线会比较方便,焊完之后,用偏口钳把长出来的引脚简短。
但是如果想用杜邦线直接插,可能会麻烦点,须要剥线,最好是相同功能针脚用相同颜色,这样接线的时候不随意马虎接错。
如果利用洞洞板,还用杜邦线直插的话,由于洞洞板的厚度,可能会插得不实,须要用偏口钳子把前面的塑料剪掉一点。

四、外不雅观设计

上面有了软件的设置方法,也有了硬件的接线方法,这个空气检测仪就可以事情了,这一步要做的便是您想要它是什么样子了。

可以类似于这样,随便放个地方就行

也可以像积木一样,放在洞洞板上

或者用积木拼个底座

S8的进气口在背面,一定要留出空间,由于它的外壳是透明的,我就把 RGBLed放在它阁下,根据空气质量不同,显示不同颜色。

粉尘传感器的进气出气口也不能阻挡,只管即便透风顺畅,有助于结果的准确性。

外不雅观自己喜好什么风格,可以随意发挥,像这样裸奔,或者淘个俊秀点的 CPU粘上做装饰,一个极客风的检测仪;或者用亚克力板和细漆包线 DIY一个透明的“洞洞板”,板上再雕刻个名字啥的,侧面加个 LED,做个科幻风格的;或者 3D打印个外壳;或者把任务交给孩子,用积木拼个外壳,总之一共就这些东西,您想怎么放置都行,但是把稳透风。
也可以把这个检测仪做身分体的,屏幕分离出来,通过 MQTT吸收数据,传感器放到须要用的地方,随意发挥。

五、功能设计

1、基本功能

开机

手动点亮屏幕

手动关灯,板载 LED不包括在内

手动开灯

OLED用来显示基本的信息,可以自动息屏。
赤色 LED是 WiFi指示灯,当 WiFi断开的时候,红灯闪烁。
黄色 LED是 MQTT指示灯,断开的时候,黄灯闪烁,绿色是模式切换指示灯,长按按钮,绿灯连续闪烁3次,长按事宜触发。
按钮短按时,点亮熄灭的 OLED屏幕,长按时,用于开关 LED灯。
由于没有多余的可用端口,板载 LED在系统运行时会亮,就当个电源灯用吧,如果实在以为碍眼,用烙铁卸了它,或者,偏口钳剪碎,再清理干净。

根据空气质量不同,显示不同的颜色

OLED的启动画面

如果会自己编译的话,可以修正 OLED的启动画面,文件路径为 libesp8266-oled-ssd1306OLED_SSD1306_SH1106_images.h

2、代码修正

这里紧张是对 Rules文件做些解释,方便自己修正配置参数。

Rules1里面的部分代码

解释:

赤色有下划线标记的数值可以根据自己需求修正。
屏幕显示韶光只能在这里修正,不可以在插件里修正 Timeout,插件的自动息屏不会变动虚拟设备里的 OLED状态。
如果没有 MQTT需求,可按图中修正代码,删除黄色高亮代码,添加赤色高亮代码。

Rules2里面的代码

解释:

赤色下划线为空气质量阈值,可根据自己感想熏染变动区间。
黄色高亮代码为不同空气质量区间 RGBLed的颜色值,可根据个人喜好变动。
绿色下划线为光照阈值赤色高亮代码为不同亮度区间,RGBLed的亮度,可按须要变动。
蓝色下划线为定时重启韶光,如果不须要重启,可将蓝色高亮代码删除。

OLED设置界面

解释:

可根据自己需求修正,这里是官方的数值调用解释及分外字符,这里是可调用的系统变量。

六、结语

做这个空气检测仪还是很随意马虎的,建议没有排错能力的新手,完备按照脚印走,防止掉坑;轻微有点根本的,就可以按这个思路随意发挥了;如果是高手,该当看不到这里,前面第一段看完就已经关闭了,末了,欢迎互换,不喜勿喷。

相关文章

介绍4G通信协议,多层架构下的通信奥秘

随着科技的飞速发展,移动通信技术日新月异。4G作为第三代移动通信技术(3G)的升级版,凭借其高速率、低时延、大连接等特点,已经成为...

通讯 2025-01-04 阅读0 评论0