CO2、TVOC浓度检测仪·基于AIR001
简介
通过AIR001获取SGP30测量的TVOC与CO2浓度数据,并显示在四位PCB数码管上。 支持常亮
简介:通过AIR001获取SGP30测量的TVOC与CO2浓度数据,并显示在四位PCB数码管上。 支持常亮开源协议
:CC BY-NC-SA 4.0
(未经作者授权,禁止转载)描述
项目说明&相关功能
主控使用AIR001
通过SGP30测量的TVOC与CO2浓度数据
使用IP5407充放电芯片(这芯片5v常开,不用担心因为功耗低被断电)
成本50左右(SGP30传感器就要28,应该没有更便宜的能测CO2的传感器了……)
使用led显示电池状态、四位(CO2或TVOC)读数,还有四个指示灯(预热、TVOC显示、CO2显示、测量值超标警告),可自行按偏好或丝印说明焊接相应颜色。
led下方的这四个电阻可自行选择500R-1K阻值焊接,电阻越大,亮度越低。
此处可在GND TX RX焊接3p排母,并在3V3焊一根带母头的杜邦线 可直插DAPlink烧程序
3V3右边的焊盘是RST,注意不要连锡。BOOT键在板子左上方(U14)
建议如图放平焊接,少用点锡,烧完程序可以直接把排母掰下来
IP4057及其外围电路建议烧完程序,验证co2测量功能正常之后再焊
中间焊盘(GND)开了个孔,如果没有加热台或风枪可以拿烙铁加热并从背面灌锡进去(如果用加热台或风枪建议把这个大孔删了以防虚焊)
ip4057详细数据可以去看文档,这里复制了8-9页led的显示说明
开源协议
本项目遵守 CC-BY-NC-SA 4.0 协议
代码中引用了Adafruit_SGP30库,用于获取SGP30读数及校准SGP30
原理图中IP5407外围电路部分改自项目”5V充放电模块IP5407“
SGP30转接板借鉴了@yanshimi的随身WIFI转接板
项目属性
本项目为首次公开,为本人原创项目。项目未曾在别的比赛中获奖。(该项目没参加过别的比赛)
项目进度
2024.4.2及以前:
创建该页面,并完成原理图绘制、PCB设计、第一版焊接
代码均能正常运行
2024.4.7:
外壳画完了,这里放一些渲染图(等打样)
2024.4.10:
更新实物图
2024.6.20:
完善说明
增加亚克力面板
设计原理&软件说明
通过AIR001获取SGP30测量的TVOC与CO2浓度数据,并显示在四位PCB数码管上。
启动后每秒检测一次TVOC与CO2浓度,若任意一值过高会亮警告灯与对应超标项指示灯(如CO2超标则会使CO2指示灯与警告灯每秒同时闪烁一次)
启动后若短摁键在板子左上方(U14)BOOT键会显示当前测量值5秒,并点亮对应数值指示灯,此时每秒仍会刷新数值及显示内容。若在第2、3、4秒再次短摁BOOT则会切换至另一数值显示(如短摁BOOT后显示了CO2浓度测量值并点亮CO2指示灯,2秒后再短摁一次切换显示TVOC浓度测量值,此时TVOC指示灯点亮)
启动后若长摁BOOT超过4秒可以开启常亮,并保持测量值刷新。再次短摁可关闭常亮。
每次启动时都需要预热SGP30传感器(大概半分钟),因此做了个开机动画,启动后将传感器在空气较好的地方放一会可获得更准确的读数。
使用电池供电时接通外部供电不会使主控重启(但拔掉外部供电大概率会重启,IP4057特性)
实物展示
第一代-待机状态(电量指示灯太亮,所以往上面抹了一堆阻焊油来遮光)
第一代-显示CO2浓度 (476ppm)
注意事项
IP4057尽量找好点的渠道买,我一开始买的tb上的芯片用一会就不工作了,换上立创商城的就好了
亚克力面板略贵,可选择性下单或者拼进其他的大板子里,或者用pcb替代(效果会差一些)
其他
源代码在附件中,请使用arduino自行烧写
评论