1. 项目概述
厨房油烟一直是困扰现代家庭的环境问题。传统抽油烟机需要手动操作,经常出现忘记开启或关闭的情况,不仅影响厨房空气质量,还造成能源浪费。这个基于单片机的智能控制系统,正是为了解决这些痛点而生。
我花了三个月时间,从硬件选型到软件调试,完整实现了这套系统。它能够自动检测油烟浓度,智能调节风机转速,还能通过手机APP远程控制。实测下来,相比传统抽油烟机,节能效果能达到30%以上,排烟效率提升明显。
2. 系统设计思路
2.1 核心功能需求
这个系统的设计初衷是要实现三个核心功能:
- 实时油烟检测:通过传感器准确感知厨房油烟浓度
- 自动调速控制:根据油烟浓度自动调节风机转速
- 远程监控:支持手机APP查看状态和手动控制
2.2 硬件架构设计
整个系统采用模块化设计,主要包含以下几个部分:
- 主控模块:选用STM32F103C8T6单片机
- 传感器模块:MQ-2烟雾传感器+温湿度传感器
- 执行模块:可控硅调压电路驱动风机
- 通信模块:ESP8266 WiFi模块
- 人机交互:OLED显示屏+按键
提示:MQ-2传感器需要预热3-5分钟才能稳定工作,设计时要考虑这个特性。
3. 硬件实现细节
3.1 传感器电路设计
烟雾检测采用MQ-2传感器,其输出电压随烟雾浓度变化。为了获得稳定信号,我设计了以下电路:
- 比较器电路:将模拟信号转换为数字信号
- 滤波电路:消除环境干扰
- 分压电路:适配单片机ADC输入范围
实测发现,厨房环境下MQ-2的输出电压范围在0.8-3.2V之间,对应PPM值约200-2000。
3.2 风机驱动电路
风机控制采用BT136可控硅,通过PWM调压实现无级调速。关键设计点:
- 过零检测电路确保同步触发
- 光耦隔离保护单片机
- 散热片设计防止过热
调试时发现,风机启动电流较大,需要增加缓启动电路避免冲击。
4. 软件系统实现
4.1 主控程序流程
系统软件采用状态机设计,主要工作流程:
- 初始化各外设
- 读取传感器数据
- 根据算法计算目标转速
- 输出PWM控制信号
- 处理通信请求
c复制void main() {
hardware_init();
while
