Example 42: IR tracking sensor
About 2 min
Example 42: IR tracking 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.
示例42:红外寻迹传感器
实验概述
红外寻迹传感器通过检测地面反射率差异来识别黑线(低反射)和白色背景(高反射)。适用于巡线小车、路径跟踪等应用。
硬件接线
| 开发板标识 | GPIO引脚 | 连接设备 |
|---|---|---|
| OUT_L | GPIO4 | 左路寻迹模块 DO |
| OUT_R | GPIO15 | 右路寻迹模块 DO |
在黑线上方时输出高电平(无反射),在白色地面时输出低电平(有反射)。
JSON 配置示例
{
"peripherals": [
{
"id": "track_left",
"name": "寻迹-左",
"type": 11,
"enabled": false,
"pins": [4],
"params": {}
},
{
"id": "track_right",
"name": "寻迹-右",
"type": 11,
"enabled": false,
"pins": [15],
"params": {}
}
]
}外设执行联动
场景:巡线控制(定时触发+脚本)
功能:根据左右传感器状态控制电机转向,沿黑线行驶
Web界面配置步骤
步骤1:确保已配置电机外设
- 电机IN1:
motor_in1(GPIO输出) - 电机IN2:
motor_in2(GPIO输出)
步骤2:创建规则
- 点击左侧菜单 外设配置 → 切换到 外设执行管理 标签
- 点击 新增规则 按钮
- 填写基础配置:
- 规则名称:
巡线控制 - 上报数据:✅ 启用
- 启用:✅ 启用
- 规则名称:
步骤3:配置触发器(定时触发)
点击 添加触发 按钮
填写触发器配置:
字段 填写内容 说明 触发类型 选择 定时触发 定时检测 定时模式 选择 固定间隔 按毫秒间隔 间隔时间 5050ms(快速响应)
步骤4:配置动作(脚本控制)
点击 添加动作 按钮
填写:
- 动作类型:选择 命令脚本
- 动作参数:
var l=gpioRead('track_left'); var r=gpioRead('track_right'); if(l==1&&r==0){ gpioWrite('motor_in1',0); gpioWrite('motor_in2',1); } else if(l==0&&r==1){ gpioWrite('motor_in1',1); gpioWrite('motor_in2',0); } else { gpioWrite('motor_in1',1); gpioWrite('motor_in2',1); }点击 保存 按钮
巡线控制逻辑
| 左传感器 | 右传感器 | 状态 | 动作 |
|---|---|---|---|
| 1(黑线) | 0(白地) | 偏左 | 右转 |
| 0(白地) | 1(黑线) | 偏右 | 左转 |
| 1(黑线) | 1(黑线) | 正中 | 直行 |
| 0(白地) | 0(白地) | 脱线 | 直行/停止 |
注意事项
- 安装高度:传感器距地面 1-2cm 效果最佳
- 黑线宽度:建议黑线宽度 2-3cm,与传感器间距匹配
- 环境光:强光可能影响检测,建议加遮光罩
- 多路扩展:可用 3-5 路传感器提高巡线精度
