Example 18: DS18B20 temperature sensor
Example 18: DS18B20 temperature 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.
示例18:DS18B20 温度传感器
实验概述
DS18B20 是单总线(OneWire)数字温度传感器,测量范围 -55°C~+125°C,精度 ±0.5°C。FastBee 内置 ONE_WIRE 外设类型(type: 44)直接支持 DS18B20。
硬件接线
| 开发板标识 | GPIO引脚 | 连接设备 |
|---|---|---|
| DATA | GPIO4 | DS18B20 数据线(需4.7kΩ上拉电阻) |
DS18B20 三线接法:VCC→3.3V, GND→GND, DATA→GPIO + 4.7kΩ上拉到VCC。
JSON 配置示例
{
"peripherals": [
{
"id": "ds18b20_01",
"name": "DS18B20温度",
"type": 44,
"enabled": false,
"pins": [4],
"params": {}
}
]
}外设执行联动
场景1:定时采集温度(定时触发)
功能:每5秒读取一次DS18B20温度值
Web界面配置步骤
步骤1:创建规则
- 点击左侧菜单 外设配置 → 切换到 外设执行管理 标签
- 点击 新增规则 按钮
- 填写基础配置:
- 规则名称:
温度采集 - 上报数据:✅ 启用
- 启用:✅ 启用
- 规则名称:
步骤2:配置触发器
点击 添加触发 按钮
填写触发器配置:
字段 填写内容 说明 触发类型 选择 定时触发 定时采集 定时模式 选择 固定间隔 按毫秒间隔 间隔时间 50005秒
步骤3:配置动作
点击 添加动作 按钮
填写:
- 动作类型:选择 读取传感器
- 目标外设:选择
ds18b20_01 - 数据字段:
temperature
点击 保存 按钮
场景2:温度超限报警(轮询触发)
功能:每5秒检测温度,当温度超过40°C时触发蜂鸣器报警
Web界面配置步骤
步骤1:确保已配置蜂鸣器外设
- 外设ID:
buzzer_gpio - 类型:GPIO输出
步骤2:创建规则
- 点击 新增规则
- 填写基础配置:
- 规则名称:
高温报警 - 上报数据:✅ 启用
- 启用:✅ 启用
- 规则名称:
步骤3:配置触发器(轮询触发)
点击 添加触发 按钮
填写触发器配置:
字段 填写内容 说明 触发类型 选择 轮询触发 定时检测条件 目标外设 选择 ds18b20_01温度传感器 轮询间隔 50005秒 条件表达式 temperature > 40温度大于40°C
步骤4:配置动作(需要2个动作)
动作1:蜂鸣器报警
- 点击 添加动作 按钮
- 填写:
- 动作类型:选择 高电平
- 目标外设:选择
buzzer_gpio
动作2:发送报警事件
再次点击 添加动作 按钮
填写:
- 动作类型:选择 发送事件
- 事件类型:
alarm - 事件消息:
温度过高
点击 保存 按钮
DS18B20特性说明
| 特性 | 参数 | 说明 |
|---|---|---|
| 测量范围 | -55°C ~ +125°C | 宽温度范围 |
| 精度 | ±0.5°C | 高精度 |
| 分辨率 | 9-12位可调 | 默认12位 |
| 转换时间 | 750ms(12位) | 自动等待 |
| 总线类型 | OneWire单总线 | 可挂载多个设备 |
注意事项
- 上拉电阻:必须在数据线和 VCC 之间接 4.7kΩ 电阻
- 总线长度:短距离(<5m)使用 4.7kΩ,长距离需降低阻值
- 多设备:同一总线可挂载多个 DS18B20(每个有唯一 64位ID)
- 转换时间:12位精度下约 750ms,FastBee 内部自动等待
- 寄生供电:支持两线(DATA+GND)寄生供电模式,但推荐三线
- 防水:可使用不锈钢封装的防水 DS18B20 探头
