“SIngle ToF”的版本间的差异
来自丢石头百科
Yousimaier17(讨论 | 贡献) (→树莓派) |
Yousimaier17(讨论 | 贡献) |
||
(未显示同一用户的16个中间版本) | |||
第26行: | 第26行: | ||
== 产品参数 == | == 产品参数 == | ||
− | *[[File:SIngle ToF_产品参数.png| | + | *[[File:SIngle ToF_产品参数.png|700px]] |
== 使用说明 == | == 使用说明 == | ||
+ | === 演示示例 === | ||
+ | [[File:SIngle ToF_演示视频.mp4|800px]] | ||
+ | |||
=== Modbus协议 === | === Modbus协议 === | ||
*单点TOF激光测距传感器采用了工业标准Modbus协议,Modbus通信指令分为两种,读命令与写命令, | *单点TOF激光测距传感器采用了工业标准Modbus协议,Modbus通信指令分为两种,读命令与写命令, | ||
第131行: | 第134行: | ||
**将Single ToF接入Arduino的接口,将接好线的Arduino接入电脑。 | **将Single ToF接入Arduino的接口,将接好线的Arduino接入电脑。 | ||
**用Arduino IDE打开代码,并选择对应的板型和串口号。 | **用Arduino IDE打开代码,并选择对应的板型和串口号。 | ||
− | **[[File:SIngle ToF_arduino2.png|400px]] | + | ***[[File:SIngle ToF_arduino2.png|400px]] |
**根据实际传感器与arduino的硬件连接修改传感器连接的串口的IO口编号。 | **根据实际传感器与arduino的硬件连接修改传感器连接的串口的IO口编号。 | ||
− | **[[File:SIngle ToF_arduino3.png|600px]] | + | ***[[File:SIngle ToF_arduino3.png|600px]] |
**根据实际情况修改传感器数量和传感器ID | **根据实际情况修改传感器数量和传感器ID | ||
− | **[[File:SIngle ToF_arduino4.png|800px]] | + | ***[[File:SIngle ToF_arduino4.png|800px]] |
**编译和上传 | **编译和上传 | ||
**打开串口监视器,波特率选择115200,观察结果。 | **打开串口监视器,波特率选择115200,观察结果。 | ||
− | **[[File:SIngle ToF_arduino5.png|600px]] | + | ***[[File:SIngle ToF_arduino5.png|600px]] |
=== 树莓派 === | === 树莓派 === | ||
第145行: | 第148行: | ||
*[[File:SIngle ToF_树莓派1.png|600px]] | *[[File:SIngle ToF_树莓派1.png|600px]] | ||
*使用步骤 | *使用步骤 | ||
+ | **给SD卡烧录好树莓派系统,并将例程拷贝到树莓派的系统文件内。 | ||
**将Single ToF接入树莓派的接口,将烧录好系统的SD卡插入树莓派。 | **将Single ToF接入树莓派的接口,将烧录好系统的SD卡插入树莓派。 | ||
+ | **打开树莓派串口功能。 | ||
+ | '''执行指令''':sudo raspi-config | ||
+ | '''选择''':Interfacing Options | ||
+ | '''选择''':Serial | ||
+ | '''选择''':NO(Would you like a login shell to be accessible over serial?) | ||
+ | '''选择''':YES(Would you like the serial port hardware to be enabled) | ||
+ | '''选择''':YES(The serial login shell is disabled.....) | ||
+ | 重启树莓派 | ||
+ | |||
**根据实际硬件连接情况在PC端修改代码中的传感器数量和传感器ID。 | **根据实际硬件连接情况在PC端修改代码中的传感器数量和传感器ID。 | ||
**[[File:SIngle ToF_树莓派2.png|600px]] | **[[File:SIngle ToF_树莓派2.png|600px]] | ||
− | ** | + | **跳转到例程所在文件的位置,使用gcc编译 |
<pre> | <pre> | ||
sudo gcc vl53_tof.c -o vl53_tof | sudo gcc vl53_tof.c -o vl53_tof | ||
第154行: | 第167行: | ||
:*[[File:SIngle ToF_树莓派3.png|800px]] | :*[[File:SIngle ToF_树莓派3.png|800px]] | ||
:*执行编译生成的可执行文件,观察结果 | :*执行编译生成的可执行文件,观察结果 | ||
− | |||
<pre> | <pre> | ||
sudo ./vl53_tof | sudo ./vl53_tof | ||
</pre> | </pre> | ||
+ | :*[[File:SIngle ToF_树莓派4.png|600px]] | ||
== 产品资料 == | == 产品资料 == |
2024年9月2日 (一) 14:16的最新版本
| ||||||||||||||||||||||
| ||||||||||||||||||||||
| ||||||||||||||||||||||
|
目录
测距原理
TOF是Time of Flight的缩写,即飞行时间。具体是指通过周期性的向外发出红外光调制波,当调制波遇到被测目标后反射,然后用传感器接收从被测目标反射回来的调制波。通过测量调制波往返的相位差,可得到飞行时间,从而计算出传感器与物体目标之间的相对距离。示意图如下所示。
引脚说明
产品参数
使用说明
演示示例
Modbus协议
- 单点TOF激光测距传感器采用了工业标准Modbus协议,Modbus通信指令分为两种,读命令与写命令,
- 读命令(0x03):读取相应寄存器数据。
- 写命令(0x06):向相应寄存器写入数据。
- 具体读写格式如下表:
Modbus寄存器
- 波特率设置
- 系统模式
上位机
- 硬件准备:Single ToF模块、USB转TTL模块、电脑
- 硬件连接:
- 使用步骤
- 将Single ToF接入USB转TTL模块的接口,将接好线的USB转TTL模块插入电脑USB接口,打开上位机软件。
- 点击上位机软件中的 刷新串口 ,然后选择模块对应的端口号,选择好端口号都点击 连接 。此时右侧的对话框内会出现 串口打开成功 字样。
- 点击左下角的 添加设备 ,在出现的对话框内需要输入模块ID(默认ID为0x50),然后点击 OK。
- 设置ID成功后会弹出新的界面出来用来查看测量距离以及对模块进行设置,同时主界面的右侧会出现 添加设备成功 ID:0x50 字样。
- 校准:
- 设置ID:
- 恢复出厂:
- 重启:
Arduino
- 硬件准备:Single ToF模块、Arduino
- 硬件连接:
- 使用步骤:
树莓派
- 硬件准备:Single ToF模块、树莓派
- 硬件连接:
- 使用步骤
- 给SD卡烧录好树莓派系统,并将例程拷贝到树莓派的系统文件内。
- 将Single ToF接入树莓派的接口,将烧录好系统的SD卡插入树莓派。
- 打开树莓派串口功能。
执行指令:sudo raspi-config 选择:Interfacing Options 选择:Serial 选择:NO(Would you like a login shell to be accessible over serial?) 选择:YES(Would you like the serial port hardware to be enabled) 选择:YES(The serial login shell is disabled.....) 重启树莓派
sudo gcc vl53_tof.c -o vl53_tof
sudo ./vl53_tof
产品资料
FAQ
|