1. 项目概述这个基于STM32的汽车修理厂环境监测系统是我最近完成的一个实际项目专门针对汽修车间常见的环境问题设计。作为一个经常泡在修理厂的电子工程师我深知焊接烟尘、油漆挥发物和高温高湿环境对工人健康的危害。这套系统通过多种传感器实时监测环境参数并自动控制通风、净化设备有效改善了工作环境。系统采用STM32F103RCT6作为主控芯片搭配DHT11温湿度传感器、MQ2烟雾传感器、VOCs检测模块等实现了对修理厂环境的全方位监控。最让我自豪的是它的智能联动功能——当检测到焊接烟尘超标时系统会自动启动排风扇和加湿器发现火焰和烟雾同时存在时还会触发水泵进行灭火。2. 系统设计与硬件选型2.1 核心控制器选择我选择STM32F103RCT6作为主控芯片主要基于以下几点考虑72MHz主频足够处理多路传感器数据具备丰富的GPIO和ADC接口成本控制在50元以内开发工具链成熟资料丰富在实际使用中这款芯片的性能完全满足需求。我特别利用了它的3个USART接口分别连接ESP8266 WiFi模块、调试终端和预留扩展接口。2.2 传感器模块配置系统集成了6类环境传感器DHT11温湿度传感器测量范围温度0-50℃湿度20-90%RH精度温度±2℃湿度±5%采用单总线协议接线简单MQ-2烟雾传感器检测液化气、丙烷、氢气等模拟量输出需接STM32的ADC引脚加热时需要约1分钟预热ZE08-CH2O甲醛/VOCs传感器测量范围0-5ppmUART输出直接读取浓度值需要定期校准GP2Y1010AU0F PM2.5传感器光学原理检测粉尘浓度需要PWM驱动LED输出模拟电压信号火焰传感器红外接收管检测火焰数字量输出高电平触发检测距离约80cm光敏电阻检测环境光照强度用于自动照明控制提示传感器布局很关键VOCs和PM2.5传感器应靠近工作区域火焰传感器要安装在易燃物附近。3. 系统软件设计3.1 主程序流程系统软件采用模块化设计主程序流程如下初始化硬件外设连接WiFi和云平台进入主循环读取所有传感器数据数据处理和阈值判断执行自动控制逻辑更新LCD显示上传数据到云端检查用户输入while(1){ read_sensors(); process_data(); auto_control(); lcd_refresh(); cloud_upload(); check_buttons(); HAL_Delay(500); }3.2 关键算法实现3.2.1 传感器数据滤波由于工业环境干扰大我采用了滑动平均滤波算法#define FILTER_LEN 5 float filter_data(float new_data){ static float buffer[FILTER_LEN] {0}; static uint8_t index 0; float sum 0; buffer[index] new_data; index (index 1) % FILTER_LEN; for(int i0; iFILTER_LEN; i){ sum buffer[i]; } return sum / FILTER_LEN; }3.2.2 联动控制逻辑系统最核心的是多传感器联动控制以下是部分逻辑void auto_control(){ // 温度控制 if(temp temp_threshold){ fan_on(); }else{ fan_off(); } // VOCs控制 if(vocs vocs_threshold){ plasma_on(); }else{ plasma_off(); } // 火灾检测 if(flame_detected smoke smoke_threshold){ buzzer_on(); pump_on(); } }4. 物联网功能实现4.1 华为云平台对接系统通过ESP8266连接华为云IoT平台主要步骤在华为云创建产品和设备获取设备ID和密钥实现MQTT协议通信定义数据上报格式数据上报采用JSON格式{ temp: 26.5, humi: 45, vocs: 1.2, pm25: 35, smoke: 0.8, flame: 0 }4.2 手机APP开发使用Qt开发跨平台APP主要功能实时数据显示历史数据曲线设备远程控制报警消息推送APP界面采用响应式设计适配不同尺寸屏幕。数据通信通过HTTP API与华为云交互。5. 系统调试与优化5.1 常见问题解决在实际调试中遇到几个典型问题ESP8266连接不稳定解决方法增加重连机制设置心跳包优化后连接成功率99%传感器数据跳变原因电源干扰解决增加滤波电容改进布线继电器误动作原因GPIO驱动能力不足解决增加三极管驱动电路5.2 性能优化措施降低ADC采样频率优化LCD刷新策略采用中断方式处理按键实现数据批量上传优化后系统功耗降低约30%运行更加稳定。6. 安装部署建议根据实际项目经验给出以下部署建议传感器安装位置温湿度传感器远离通风口烟雾传感器天花板中央VOCs传感器靠近喷漆区域火焰传感器面向易燃物设备间距传感器之间至少保持50cm距离避免强电磁干扰源维护周期每月清洁传感器每季度校准一次每年检查线路7. 项目扩展方向这个系统还有很大的扩展空间增加更多传感器类型CO2浓度检测噪声监测气压传感器强化数据分析功能异常预警能效分析报表生成与其他系统集成门禁系统联动安防监控整合能源管理系统在实际使用中这套系统显著改善了修理厂的工作环境。工人反馈空气质量变好了夏天也不那么闷热。最重要的是系统多次及时检测到潜在火灾隐患避免了可能的损失。