超声波距离告警场景
大约 3 分钟
超声波距离告警场景
场景描述
使用 HC-SR04 超声波传感器周期测距,当检测到物体距离低于安全阈值时触发蜂鸣器报警,并通过 MQTT 上报告警数据。
所需外设
| 外设 | 类型 | 说明 |
|---|---|---|
| ultrasonic1 | SENSOR(38) | HC-SR04 超声波传感器 |
| buzzer | GPIO_DIGITAL_OUTPUT(12) | 报警蜂鸣器 |
完整配置流程
方式1:Web界面配置(推荐)
本场景需要先添加 HC-SR04 和报警蜂鸣器,再用外设执行规则做距离采集、阈值判断和告警动作。
第一步:配置外设
步骤1:进入外设管理页面
- 打开浏览器访问 ESP32 IP 地址
- 登录后点击左侧菜单 外设配置
步骤2:添加HC-SR04超声波传感器
点击 新增外设 按钮
填写配置:
字段 填写内容 说明 外设ID ultrasonic1超声波测距 名称 超声波测距显示名称 外设类型 通用传感器 (type: 38) HC-SR04驱动 引脚配置 5,18Trig=GPIO5, Echo=GPIO18 传感器类别 ULTRASONIC超声波 采集间隔 500500ms(最小100ms) 点击 保存
💡 提示:pins[0]=Trig引脚,pins[1]=Echo引脚
步骤3:添加报警蜂鸣器
再次点击 新增外设 按钮
填写配置:
字段 填写内容 说明 外设ID buzzer报警蜂鸣器 名称 报警蜂鸣器显示名称 外设类型 GPIO数字输出 (type: 12) 蜂鸣器控制 引脚配置 4IN对应GPIO4 初始状态 0默认关闭 点击 保存
第二步:配置外设执行规则
规则1:定时测距并上报
切换到 外设执行管理 标签
点击 新增规则 按钮
填写基础配置:
- 规则名称:
定时测距 - 上报数据:✅ 启用
- 启用:✅ 启用
- 规则名称:
配置触发器:
- 触发类型:选择 定时触发
- 定时模式:选择 固定间隔
- 间隔时间:
5(5秒)
配置动作:
- 动作类型:选择 传感器读取
- 目标外设:选择
ultrasonic1
点击 保存
规则2:距离过近报警
创建规则,名称:
距离过近报警触发器配置:
- 触发类型:选择 平台触发
- 目标外设ID:填写
ultrasonic1 - 运算符:选择
小于 (<) - 阈值:
30(30cm)
动作配置:
- 动作类型:选择 闪烁
- 目标外设:选择
buzzer - 闪烁间隔:
200(200ms快速鸣叫)
点击 保存
规则3:距离恢复关闭报警
创建规则,名称:
距离安全解除触发器配置:
- 触发类型:选择 平台触发
- 目标外设ID:填写
ultrasonic1 - 运算符:选择
大于 (>) - 阈值:
50(50cm)
动作配置:
- 动作类型:选择 低电平
- 目标外设:选择
buzzer
点击 保存
💡 提示:
- 报警阈值30cm,解除阈值50cm,形成20cm迟滞区间
- 超声波最小采样间隔100ms,建议≥500ms避免回波干扰
- HC-SR04需要5V供电,Echo输出5V需注意ESP32 GPIO耐压(建议分压)
方式2:JSON配置文件导入
测距原理
- Trig 引脚输出 10μs 高电平脉冲
- 传感器发射超声波并等待回波
- Echo 引脚输出高电平,持续时间 = 往返时间
- 距离(cm) = 持续时间(μs) × 0.034 / 2
- 有效测量范围:2cm ~ 400cm
注意事项
- 迟滞区间:报警阈值(30cm)和解除阈值(50cm)之间有迟滞,防止抖动
- 采样间隔:超声波最小采样间隔 100ms,建议 ≥500ms 避免回波干扰
- 盲区:HC-SR04 近距离(< 2cm)测量不准确
- 安装角度:传感器需正对被测物体,偏角过大会导致无回波
- 电源:HC-SR04 需要 5V 供电,Echo 输出为 5V 需注意 ESP32 GPIO 耐压(建议分压)
