项目简介
本项目是利用BSides Perth 2018徽章打造的便携式环境监测系统,能够对CO2、温度和湿度进行实时监测。系统配备WiFi连接的仪表盘,支持数据记录与CSV导出功能。代码兼容任何ESP8266微控制器,但如果要适配其他徽章或TFT屏幕,需要进行一定修改。
项目的主要特性和功能
- 高精度测量:借助SCD30传感器实现高精度的CO2、温度和湿度测量。
- 数据可视化:TFT屏幕实时显示当前CO2、温度和湿度读数,同时展示过去90分钟的读数。
- 超标预警:当CO2测量值超过推荐水平时,通过橙色LED进行视觉报警。
- Web应用:基于mDNS的Web应用,具备AJAX自动更新的图表和数据表。
- 数据记录与导出:自动记录过去2小时的读数,并支持将其导出为CSV格式。
- 低成本:主要使用回收物品,总成本约50澳元。
安装使用步骤
购买所需硬件
- 购买Sensirion SCD30传感器。
- 购买2x AA电池座(带开关)。
编译与上传代码
- 为VSCode安装PlatformIO。
- 复制本项目仓库并在VSCode中打开。
- 完善
src/settings.h.tpl
中的详细信息,然后将文件重命名为settings.h
。若想在无SCD30传感器的情况下测试代码,可将FAKE_SENSOR
设为true,此模式下数据记录的采样时间会加快。 - 通过PlatformIO的“项目任务”执行
Build Filesystem Image
和Upload Filesystem Image
操作。 - 编译项目并将其上传到NodeMCU开发板。编译过程中可能会出现一些警告,但应无错误。
- 对开发板进行断电重启操作,以清除TFT屏幕并确保一切正常运行。
传感器校准
SCD30传感器出厂时已校准,若有需要,支持两种校准方法(ASC和FRC)。本监控器支持通过WiFi进行FRC校准,访问http://<hostname>/admin
可找到校准设置,ppm输入值需在400
至2000
之间。
延长电池寿命
若使用AA电池供电,典型情况下续航时间有限。可通过以下方法延长电池寿命: 1. 在设置中禁用WiFi。 2. SCD30默认每2秒进行一次测量,可将测量频率调整至最长30分钟一次,并减少TFT屏幕的刷新次数。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】