Example 30: rain sensor
About 2 min
Example 30: rain sensor
Synchronized Device Documentation
This page corresponds to the synchronized Chinese source. Commands, JSON examples, API paths, field names, and screenshots are kept aligned with the Chinese device-side source documentation.
What This Page Covers
- Overview
- Wiring
- JSON Configuration Example
- PeriphExec Linkage
- Notes
Source Reference
The detailed operational source is preserved below so implementation details stay exact while the English navigation, titles, and reading path remain available.
示例30:雨滴传感器
实验概述
雨滴传感器通过检测板面上的水滴变化输出模拟信号和数字信号。模拟输出反映湿度程度,数字输出表示是否达到阈值。适用于智能晾衣架、自动雨棚等应用。
硬件接线
| 开发板标识 | GPIO引脚 | 连接设备 |
|---|---|---|
| AO | GPIO34 | 雨滴传感器模拟输出 |
| DO | GPIO4 | 雨滴传感器数字输出 |
模块带有电位器可调节数字输出阈值。
JSON 配置示例
{
"peripherals": [
{
"id": "rain_analog",
"name": "雨量-模拟",
"type": 15,
"enabled": false,
"pins": [34],
"params": {}
},
{
"id": "rain_digital",
"name": "雨滴-开关",
"type": 11,
"enabled": false,
"pins": [4],
"params": {}
}
]
}外设执行联动
场景:下雨报警(轮询触发)
功能:每1秒检测雨滴开关,当检测到雨水时触发蜂鸣器报警
Web界面配置步骤
步骤1:确保已配置蜂鸣器外设
- 外设ID:
buzzer_gpio - 类型:GPIO输出
步骤2:创建规则
- 点击左侧菜单 外设配置 → 切换到 外设执行管理 标签
- 点击 新增规则 按钮
- 填写基础配置:
- 规则名称:
下雨报警 - 上报数据:✅ 启用
- 启用:✅ 启用
- 规则名称:
步骤3:配置触发器(轮询触发)
点击 添加触发 按钮
填写触发器配置:
字段 填写内容 说明 触发类型 选择 轮询触发 定时检测条件 目标外设 选择 rain_digital雨滴开关 轮询间隔 10001秒 条件表达式 value == 0低电平=检测到雨水
步骤4:配置动作(需要2个动作)
动作1:蜂鸣器报警
- 点击 添加动作 按钮
- 填写:
- 动作类型:选择 高电平
- 目标外设:选择
buzzer_gpio
动作2:发送天气事件
再次点击 添加动作 按钮
填写:
- 动作类型:选择 发送事件
- 事件类型:
weather - 事件消息:
检测到雨水
点击 保存 按钮
雨滴传感器数值说明
| 状态 | 模拟值 | 说明 |
|---|---|---|
| 无水 | ~4095 | 干燥状态 |
| 小雨 | 2000-3000 | 少量水滴 |
| 中雨 | 1000-2000 | 较多水滴 |
| 大雨 | <1000 | 大量水滴 |
注意事项
- 腐蚀:长期暴露会导致感应板腐蚀,建议不下雨时断电
- 阈值调节:通过模块上的电位器调节数字输出触发灵敏度
- 模拟值:无水时接近 4095,有水时降低,值越小雨越大
- ADC2 限制:GPIO34 属于 ADC1,WiFi 工作时不受影响
