智能人数统计器:激光+LDR 检测,安卓 App 蓝牙远程控制
项目概述
本项目实现一个基于激光与光敏电阻(LDR)的智能人数统计器,可监测最多三个入口(如两门一窗)的人员通过次数,并通过 HC-06 蓝牙模块与自制安卓 App 通信,实现远程开关激光、启用/禁用报警、查看实时计数及清零等功能。作者最初为外出度假时保护房间安全而设计,后扩展为多入口监控与防闯入报警系统。
核心原理
激光-光敏电阻对射计数
激光模块发射平行光束直射对面的 LDR。当人员遮挡光束时,LDR 检测到光强骤降(模拟读值低于阈值 150),单片机判定为一次通过事件并计数。实测最佳检测窗口为模拟值 150–350 之间。
三通道并行检测
三组激光+LDR 分别连接至 Arduino Uno 的数字引脚 2/3/4(激光控制)与模拟引脚 A0/A1/A2(LDR 读取),可同时监测三个入口,互不干扰。
蓝牙远程控制与安卓 App
HC-06 模块通过软串口(引脚 6/7)与单片机通信。App 使用 MIT App Inventor 开发,包含两个界面:
• Screen1:密码验证(默认 "counter")进入主界面。
• Screen2:主控面板,可单独开关三路激光、切换报警模式、查看各入口计数、一键清零。
App 发送单字符指令('1'–'9', 'r'),单片机解析执行相应动作。
声光报警与状态指示
蜂鸣器(引脚 5)配合 RGB LED(引脚 9/10/11)在报警触发时发出多色闪烁与鸣响;三路指示 LED(引脚 8/12/13)实时显示各激光通道启用状态。
硬件清单
- Arduino Uno ×1
- HC-06 蓝牙模块 ×1
- 激光模块 ×3
- 光敏电阻 ×3
- 蜂鸣器 ×1
- RGB LED 模块 ×1
- 普通 LED ×3(通道指示)
- 电阻:1kΩ ×3(LDR 分压)、221Ω ×3(LED 限流)
- 面包板 ×2、跳线若干、电池供电模块
接线对照表
| Arduino 引脚 | 连接模块 |
|---|---|
| D2 | 激光模块 1 |
| D3 | 激光模块 2 |
| D4 | 激光模块 3 |
| D5 | 蜂鸣器 |
| D6 | HC-06 TX |
| D7 | HC-06 RX |
| D8 | 指示 LED 1 |
| D12 | 指示 LED 2 |
| D13 | 指示 LED 3 |
| D9 | RGB 模块 R |
| D10 | RGB 模块 G |
| D11 | RGB 模块 B |
| A0 | LDR 1 |
| A1 | LDR 2 |
| A2 | LDR 3 |
软件架构
主循环轮询三路 LDR,若任一读值 < 150 则置检测标志,延时 500 ms 后计数+1,防重复触发。蓝牙指令中断处理函数 Commands() 解析字符并执行对应动作。报警函数 Set_Alarm() 在激活且检测到遮挡时驱动蜂鸣器与 RGB 灯循环变色。代码提供完整注释,易于移植扩展。
App 与固件下载
项目提供 .aia 源文件可导入 MIT App Inventor 二次开发,及 .apk 直接安装包。Fritzing 原理图与大量实物接线照片辅助组装。
制造工艺
- 温控风扇DIY:媒体柜散热的继电器驱动方案
- 树莓派手势控制机器人:告别按键,挥手即达
- 树莓派WiFi机器人:手机App远程控制实战
- 3D RGB Arduclock — 蓝牙控制全彩LED时钟带RTC与闹钟
- ESP8266 Wi-Fi 控制 NeoPixel 火焰灯:安卓 App 无线调节特效
- Android 手势遥控车:Raspberry Pi + Arduino 101 + 电机扩展板,I2T 协同控制
- 通过树莓派用 Alexa 控制 LED - 简单分步指南
- MyRiver:基于 Arduino MKR FOX 1200 的河流水质远程监测系统
- Arduino + 模拟摇杆互动游戏:五向 LED 反馈
- 为 Windows 10 UWP 设计 PM2.5 与 PM10 空气质量检测应用
- MobBob:3D 打印智能机器人,Android 手机无缝控制,语音视觉一体
- 情人节礼物:DIY 恋爱天数计数器