1. 项目概述
这个智能家居安防系统是我去年为一个社区安全改造项目设计的解决方案。当时业主们反映最头疼的就是煤气泄漏和入室盗窃问题,特别是那些经常出差的家庭。传统监控系统不仅安装成本高,而且无法主动预警。于是我就想到了用STM32单片机搭配几个常见传感器,做一套经济实用的安防系统。
系统采用主从机架构,主机放在客厅作为控制中心,从机安装在各个房间。最让我自豪的是,整套设备的硬件成本不到300元,却实现了商业安防系统80%的功能。下面我就把这个项目的完整实现过程分享给大家,包括硬件选型、电路设计、程序逻辑和实际调试中的各种坑。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 系统设计与硬件选型
2.1 整体架构设计
系统采用1主机+N从机的分布式架构,这个设计有几个关键考虑:
- 主机:负责集中显示和模式控制,使用LCD1602显示屏,通过ZigBee与从机通信
- 从机:每个房间部署一个,集成多种传感器和执行机构
- 通信方式:对比了蓝牙、WiFi和ZigBee后,选择ZigBee主要因为:
- 传输距离适中(室内30-50米)
- 功耗低于WiFi
- 自组网能力优于蓝牙
- 抗干扰能力强
2.2 核心器件选型
2.2.1 主控制器
选用STM32F103C8T6最小系统板,理由很实在:
- 72MHz主频足够处理传感器数据
- 内置ADC方便读取模拟传感器
- 丰富的GPIO接口(本项目用了15个)
- 价格仅15元左右
注意:市面上有些便宜的"STM32"其实是国产兼容芯片,建议购买正版核心板,我曾在调试阶段因为这个问题浪费了两天时间。
2.2.2 传感器模块
-
MQ-2气体传感器:检测一氧化碳
- 灵敏度高(0.1-10ppm)
- 预热时间约20秒
- 需要定期校准(每月一次)
-
火焰传感器:
- 检测波长760-1100nm的红外线
- 探测角度约60度
- 有效距离0.8m(打火机火焰)
-
HC-SR501人体红外:
- 探测距离7米
- 延时可调(本项目设为2分钟)
- 温度补偿功能
2.2.3 通信模块
ZigBee选用常见的XBee S2C模块,主要参数:
- 传输速率250kbps
- 室内传
