空气质量监测系统
airquality-monitoring
ESP32
⭐☆☆☆☆ (1/5)
🧩 软硬件结合
已发布
项目简介
开源空气质量监测平台,含ESP32设备、多传感器校准及REST API服务器。
开源空气质量监测平台,包含ESP32物联网设备、多传感器校准和REST API服务器。从硬件到云端部署的完整解决方案。
标签
项目特点
**完整的数据管道**:从传感器数据采集、串口通信、数据校准到REST API服务器,提供端到端解决方案
**多传感器集成**:支持SPS30(×3)、SGP30、SHT30等多种传感器,通过TCA9548A I2C多路复用器实现多通道并行处理
**高级数据校准**:实现多传感器交叉验证、异常值自动校正(3传感器平均)、滚动平均计算(1小时/24小时)和数据压缩(99.4%)
**实时数据处理**:1Hz采样率,中值-卡尔曼滤波算法,滤波延迟<2.5秒
**3D打印外壳**:包含可3D打印的外壳设计文件(STL格式),方便硬件部署
**可视化指示**:WS2812 RGB LED提供直观的空气质量状态指示
**RESTful API**:基于Google App Engine的REST API服务器,支持设备管理、数据存储/检索和用户认证
技术规格
| 微控制器 | |
|---|---|
| 传感器 | |
| I2C多路复用器 | |
| 采样率 | |
| 传感器数据处理量 | |
| 数据压缩比 | |
| 并发传感器处理 | |
| API响应时间 | |
| 滤波延迟 | |
| 多传感器精度 | |
| 编程语言 | |
| 构建工具 | |
| 服务器平台 | |
| 通信协议 | |
| 数据格式 | |
| 日志框架 | |
| 滤波算法 |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| ESP32开发板 | 1 | — | 如RA200型号 |
| SPS30颗粒物传感器 | 3 | — | PM2.5/PM10检测 |
| SGP30气体传感器 | 1 | — | VOC和CO2检测 |
| SHT30温湿度传感器 | 1 | — | 温湿度检测 |
| TCA9548A | 1 | — | 多传感器I2C通信 |
| WS2812 RGB LED | 1 | — | 空气质量状态指示 |
| 4.7kΩ上拉电阻 | 2 | — | I2C上拉 |
| 3.3V/5V电源模块 | 1 | — | 为ESP32和传感器供电 |
| 3D打印外壳 | 1 | — | STL文件包含在项目中 |
| 杜邦线/排线 | 若干 | — | 传感器连接 |
3D 模型
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| 3D打印机 | 打印外壳和结构件 | ✅ 是 |
| 焊台 | 焊接电子元件和传感器 | ✅ 是 |
| 计算机 | 开发、编译和部署 | ✅ 是 |
| Arduino IDE | 编写和上传ESP32固件 | ✅ 是 |
| Java 8 SDK | 运行后端服务 | ✅ 是 |
| Maven | 构建Java项目 | ✅ 是 |
| USB数据线 | 连接ESP32到计算机 | ✅ 是 |
| 万用表 | 电路测试和故障排查 | ▢ 推荐 |
能力画像
记忆与知识检索
2/5
逻辑推演
3/5
表达与交流
1/5
感知与观察
2/5
数理与计算
4/5
动手与操作
4/5
狂热与坚持
3/5
创造与创新
3/5
项目图库
所需技能
🔧 **动手能力**:需要焊接传感器和电子元件,组装3D打印外壳,连接I2C总线(包括上拉电阻),以及使用万用表进行电路测试
💻 **编程能力**:需要Java 8编程经验(Maven构建、Servlet API、REST客户端),Arduino C++编程(ESP32固件开发),以及环境变量配置和命令行操作
⚡ **电子电路**:需要理解I2C通信协议、传感器数据手册、电源管理(3.3V/5V)、以及基本的电路故障排查能力
适用场景
**室内空气质量监测**:在家庭、办公室或教室中部署,实时监测PM2.5、PM10、VOC、CO2和温湿度
**科研数据采集**:用于环境科学研究,收集长期空气质量数据,支持多传感器交叉验证和校准
**智慧城市项目**:作为城市空气质量监测网络的一部分,通过REST API集成到更大的物联网平台
**教育实验平台**:用于大学或职业学校的物联网、嵌入式系统和环境监测课程教学
**开源硬件开发**:作为ESP32多传感器集成的参考设计,供开发者学习和扩展