Example 26: tilt sensor
About 2 min
Example 26: tilt 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.
示例26:倾斜传感器
实验概述
倾斜传感器(滚珠开关)内部含有金属滚珠,当传感器倾斜超过一定角度时,滚珠接触触点导通,输出低电平。适用于倾斜检测、防盗报警等场景。
硬件接线
| 开发板标识 | GPIO引脚 | 连接设备 |
|---|---|---|
| TILT | GPIO4 | 倾斜传感器(数字输出) |
倾斜传感器为开关型输出,使用内部上拉,倾斜时输出低电平。
JSON 配置示例
{
"peripherals": [
{
"id": "tilt_01",
"name": "倾斜传感器",
"type": 13,
"enabled": false,
"pins": [4],
"params": {}
}
]
}外设执行联动
场景:倾斜报警(轮询触发)
功能:每100ms检测倾斜状态,当倾斜时触发蜂鸣器报警1秒
Web界面配置步骤
步骤1:确保已配置蜂鸣器外设
- 外设ID:
buzzer_gpio - 类型:GPIO输出
步骤2:创建规则
- 点击左侧菜单 外设配置 → 切换到 外设执行管理 标签
- 点击 新增规则 按钮
- 填写基础配置:
- 规则名称:
倾斜报警 - 上报数据:✅ 启用
- 启用:✅ 启用
- 规则名称:
步骤3:配置触发器(轮询触发)
点击 添加触发 按钮
填写触发器配置:
字段 填写内容 说明 触发类型 选择 轮询触发 定时检测条件 目标外设 选择 tilt_01倾斜传感器 轮询间隔 100100ms 条件表达式 value == 0低电平=倾斜
步骤4:配置动作(需要3个动作)
动作1:蜂鸣器响
- 点击 添加动作 按钮
- 填写:
- 动作类型:选择 高电平
- 目标外设:选择
buzzer_gpio
动作2:延时1秒
- 再次点击 添加动作 按钮
- 填写:
- 动作类型:选择 延时
- 动作参数:
1000
动作3:蜂鸣器停
第三次点击 添加动作 按钮
填写:
- 动作类型:选择 低电平
- 目标外设:选择
buzzer_gpio
点击 保存 按钮
检测方式对比
| 方式 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 轮询触发 | 简单可靠 | 占用CPU | 持续监测 |
| 中断触发 | 响应快、省电 | 可能抖动 | 偶发检测 |
注意事项
- 抖动:滚珠开关在临界角度时会频繁抖动,建议增加消抖逻辑
- 灵敏度:不同型号触发角度不同(通常 15°~45°)
- 安装方向:传感器安装方向决定触发方向
- 中断方式:也可使用 GPIO_INTERRUPT_CHANGE(type: 20)实现中断检测
