服务商:刘工Magey
¥4000
基于 ESP32-S3 的有限空间作业安全综合监测终端
本人具备 PCB Layout、嵌入式硬件设计及软硬件联调经验,能够根据项目需求完成器件选型、原理图设计、PCB设计、样机焊接、底层驱动开发、通信调试及技术文档整理。
在校期间参与过多项电子设计、智能硬件及工程实践项目,曾获全国大学生物理实验竞赛一等奖、工程实践与创新能力大赛一等奖等荣誉。参与及完成过环境安全监测终端、ESP32无线采集设备、LED点阵控制系统、传感器数据采集装置、电机驱动控制板等项目。
熟悉 ESP32-C3、ESP32-S3、CH32V003 等主控平台,能够完成 UART、I²C、SPI、ADC、Wi-Fi、蓝牙及蜂窝通信模块的硬件接入和程序调试。熟悉嘉立创EDA专业版及 Cadence Allegro 等 PCB 设计工具,具备从功能需求到硬件样机落地的完整项目实践经验。
多类型环境参数同步采集
系统集成温湿度、气压、空气质量、PM1.0、PM2.5、PM10及多路声音信号采集,可对有限空间作业环境中的多类风险因素进行集中监测。
本地显示与远程监护相结合
设备通过彩色液晶屏和双OLED屏显示实时数据,同时利用通信模块将关键监测数据上传至远程端,便于现场人员和外部监护人员同时掌握环境状态。
多串口设备扩展
通过串口扩展芯片解决 ESP32-S3 外设接口数量有限的问题,使颗粒物传感器、通信模块及其他串口设备能够协同工作。
多级报警机制
当监测数据超过设定阈值,系统可触发蜂鸣器、屏幕提示及远程告警;同时设置独立应急按钮,使现场人员在突发情况下能够主动触发求助信号。
模块化软硬件架构
将传感器采集、数据显示、报警判断、通信上传和人机交互分别设计,方便后续更换传感器、调整报警阈值或增加新的通信方式。
有限空间作业常见于地下管廊、储罐、污水井、隧道、密闭设备及地下工程等场景。此类场所通常存在空气质量异常、颗粒物浓度升高、通风不足、噪声异常及人员求助不及时等风险。
本项目设计了一套基于 ESP32-S3 的有限空间作业安全综合监测终端,用于对作业现场的多种环境参数进行实时采集、显示、判断和上传。
系统主要具备以下功能:
该项目目前完成了原型机设计、硬件连接、传感器驱动、显示界面、报警逻辑及通信功能验证,可用于有限空间安全监测、实验室环境监测、厂区辅助监测及物联网数据采集终端等场景。
建议在本段后面插入一张“整机正面运行照片”和一张“实际测试场景照片”。
系统总体由传感器采集层、主控制层、人机交互层、报警执行层和远程通信层组成。
环境传感器
├─ BME680温湿度/气压/空气质量
├─ PMS5003颗粒物传感器
└─ 四路模拟声音采集
↓
ESP32-S3主控制器
├─ 数据滤波与处理
├─ 阈值及故障判断
├─ 数据缓存与状态管理
└─ 外设通信控制
↓ ↓ ↓
LCD/OLED显示 蜂鸣器报警 DTU远程上传
↑
按键与应急按钮
系统工作过程如下:
本项目以 ESP32-S3 为核心控制器。主控负责多传感器数据采集、显示控制、报警判断、人机交互和远程通信。
系统使用 BME680 采集温度、湿度、气压及空气质量相关数据。传感器通过 I²C 总线与 ESP32-S3 通信,能够在占用较少引脚的情况下实现多参数采集。
颗粒物监测部分采用 PMS5003,通过串口输出 PM1.0、PM2.5 和 PM10 等颗粒物浓度数据。主控对接收到的数据帧进行帧头识别、长度判断和校验处理,避免异常数据影响显示和报警结果。
设备设置四路模拟声音采集通道,通过 ESP32-S3 的 ADC 对声音传感器输出进行周期性采样。程序对多次采样结果进行统计处理,用于显示各通道的相对声音强度,并辅助判断现场声音状态。
考虑到颗粒物传感器、DTU和其他外设均需要串口通信,系统增加 WK2124 多通道串口扩展芯片。主控通过同步串行接口控制 WK2124,从而扩展多个独立UART通道。
主显示屏采用 ST7789 驱动的 172×320 彩色液晶屏,用于显示主要环境参数、通信状态和报警信息。
设备同时配置两块 SSD1309 OLED 屏,用于分区显示声音通道、设备状态或辅助监测信息。系统设置功能按键和应急按钮,便于现场人员切换界面、调整操作状态或主动触发告警。
系统设置蜂鸣器作为本地声音报警装置。当环境数据超过阈值、传感器异常或应急按钮被触发时,主控控制蜂鸣器报警,并在显示屏上突出显示异常项目。
远程通信部分采用 DTU 模块,主控通过串口向模块发送整理后的监测数据,实现环境数据和报警状态的远程上传。
硬件设计过程中对主控、传感器接口、显示接口、串口扩展、通信模块、电源及按键报警电路进行了分区设计。
PCB设计重点考虑:
EDA工具:嘉立创EDA专业版。
| 器件名称 | 主要作用 |
|---|---|
| ESP32-S3 | 系统主控制器,负责采集、处理、显示、报警和通信 |
| BME680 | 温度、湿度、气压及空气质量参数采集 |
| PMS5003 | PM1.0、PM2.5及PM10颗粒物检测 |
| WK2124 | 多通道UART扩展 |
| ST7789液晶屏 | 主要参数及报警信息显示 |
| SSD1309 OLED×2 | 辅助数据及设备状态显示 |
| 四路模拟声音传感器 | 环境声音信号采集 |
| DTU通信模块 | 监测数据及报警状态远程上传 |
| 蜂鸣器 | 本地声音报警 |
| 按键及应急按钮 | 人机交互及主动求助 |
系统软件采用 C/C++ 编写,按照驱动层、数据采集层、数据处理层、显示交互层、报警控制层和通信层进行划分。
软件主要包括:
软件工作流程
系统上电
↓
初始化主控、传感器、显示屏及通信模块
↓
检查各模块是否正常
↓
循环采集环境与声音数据
↓
数据校验、滤波及格式转换
↓
更新LCD和OLED显示
↓
判断是否超过报警阈值
├─ 否:继续采集并上传数据
└─ 是:启动蜂鸣器、显示报警并上传异常状态
↓
检测按键、应急按钮及通信状态
↓
进入下一次循环
为改善界面刷新效率,显示程序采用局部数据更新思路,减少不必要的整屏重绘。针对串口通信,程序加入数据帧校验、超时判断和异常恢复处理,提高多外设同时运行时的稳定性。
