模板: TOF-Laser-Range-Sensor-B-FAQ

来自Waveshare Wiki
跳转至: 导航搜索

Q1. 室外(强光)条件下可以用吗?

  模块可以抵抗一定的自然光影响。可以在室外使用。

Q2. 多个模块是否有干扰?

  没有干扰。当多个模块同时工作时,即使相互之间的红外光线交叉或打到同一个位置,也不会影响实际测量。

Q3. 为什么模块没有数据输出?

  各个模块均经过严格的测试后发货,没有数据时请先自行检查模式、接线(供电电压、线序 是否正确,以及推荐使用万用表测试通信双方两端的引脚是否导通)、波特率等配置是否正确; 对于 IIC 输出模式,需要使用主机通过 IIC 通信向设置的从机地址按照手册的通信时序来读取数 据;对于 I/O 输出模式,请参考 I/O 模式相关章节介绍。

Q4. 安装时需要注意什么?

安装时需避免 FOV 角度内有遮挡。另外需要注意与地面高度,应避免 FOV 内出现地面遮挡 等类似反射面,如果安装高度离地面较近,可以考虑将模块稍微倾斜向上进行安装。

Q5. 模块的 UART、IIC 和 I/O 是同一个接口吗?

模块的 UART、IIC、I/O 接口共用相同的物理接口,针对不同的通讯模式转换对应线序即可。

Q6. 切换到 IIC 或 I/O 模式后,为什么 Waveshare TOFAssistant 软件识别不了模块?如何在不同通讯模式间 进行切换?

目前 NAssistant 软件只支持识别 UART 模式下的模块。在 UART 模式下时,可以通过上位机识别成功后进入设置页面将模块配置为 IIC 或 I/O 通讯模式;在 IIC 通讯模式下,可以按照IIC通信协议通过 IIC 通信向模块发送指令来切换回 UART 或 I/O 模式;此外,在没有IIC 测试环境或者切换到 I/O 模式后可以通过以下方式来切换回 UART 模式:
1、用户需要准备一个支持 921600 波特率的 USB 转 TTL 模块(推荐CP2102)并且安装对应的驱动程序,将 USB 转 TTL 模块的 TX、RX、GND 三根线连接到 TOF 模块的对应引脚,VCC引脚暂时先不连接,然后把 USB 转 TTL 模块插入电脑。
2、打开 NAssistant 软件,点击 图标进入串口调试助手,把波特率改为921600,选择USB转 TTL 模块对应的 COM 口然后点击 连接按钮连接 COM 口(大部分情况下会自动连接),在单项发送的文本框内输入 54 20 00 ff 00 ff ff ff ff 00 ff ff 00 10 0e ff ff ff ff ff ff ff ff ff ff ff 00 ff ff ff ff 7c,在右下角的定时发送栏将发送间隔改为 20ms,然后勾选定时发送。
3、此时将 USB 转 TTL 模块的 5V 接到 TOF 模块的 VCC 引脚,模块会切换到UART模式并开始输出数据,此时取消勾选定时发送按钮,然后拔掉 USB 转 TTL 模块重新给模块上电后点击主页面的 识别按钮即可识别模块。
如果切换失败,将 USB 转 TTL 模块拔掉再重复一下整个步骤,切勿在发送命令的情况下多次插拔 VCC 引脚。如果能够正常识别模块但是串口输出数据异常,可以在设置页面中手动更改到 UART 模式。
PS:如果将 TOF 模块的 VCC 引脚接到 USB 转 TTL 模块的 5V 后出现模块一直发送80 00 8000..类似的协议数据的情况,先点击 连接按钮暂时断开 COM 口,把波特率改为115200 然后点击 连接按钮重新连接 COM 口,如果此时串口调试助手的数据为 b3 b1 开头的数据则需要在单项发送的文本框内输入 de ed 00 00 05 04 3b 01 00 00 10 ,单击发送,然后拔掉USB 转TTL模块重新给模块上电后点击主页面的识别按钮即可识别模块。如果重新插上后数据还是b3 b1 开头,重复一下 PS 的步骤。

Q7. 超量程时模块会输出什么数据?

超过 15 米量程时,在 15 到约 20 米范围时误差较大,超过 20 米最大量程后,距离输出固定 值 0 米,此时可以参考数据手册的距离状态指示来判断数据是否有效。

Q8. 模块是否支持输出点云信息?

模块单次只能输出一个距离,暂时不支持点云信息的输出。

Q9. 模块使用的串口通信端子型号是什么?飞控、单片机上没有这个端子的接口怎么办?

模块使用的是 GH1.25 的端子。可以自行购买 GH1.25 转其他端子的转接线,或者剪断产 品 附带的 GH1.25-GH1.25 接线,自行焊接其他的端子。线序、供电电压、信号线电平等请参 考数 据手册。

Q10. 接收到的 ad 08 00 如何解算为距离值?

协议帧中的数据是小端模式存储的,而且编码时乘了一定的倍率,举例来说 ad 08 00 先恢复 成 16 进制数据 0x0008ad 换算成 10 进制为 2221,除以 1000 为 2.221 米。

Q11. 校验和是怎么计算的?

校验和就是前面所有的字节相加然后取最低字节的数据,比如 55 01 00 ef 03 的校验和就是 0x55+0x01+0x00+0xef+0x03=0x0148,那校验和就是 48,所以这一帧的完整数据是 55 01 00 ef 03 48。

Q12. 为什么 IIC 模式下无法通信?

IIC 模式下,设备的 SDA 和 SCL 引脚推荐使用开漏模式输出,此时总线上需要有上拉电阻。 通信时需要按照标准的 IIC 通信时序来编写起始、终止、读、写、应答等函数,与 TOF 模块通 信时,参考用户手册的 NLink_TOFSense_IIC_Frame0 协议来对寄存器进行读取和写入。特别要 注意 7 位从机地址的移位与增加读写位发送。

Q13. 打开软件报错“由于找不到 MSVC***.dll 文件……”,可能是电脑缺少微软相应运行时组件,选择系统对应位数下载安装通常即可解决?

Visual C++ Redistributable for Visual Studio 2017,若上述安装失败或者 显示成功但打开TOFAssistant程序仍提示缺少dll文件,则尝试安装 KB2999226 补丁程序,注意,请选择电脑系统对应版本补丁程序,详细请参考博客关于 api-ms-win-crt-runtimel1-1-0.dll 缺失的解决方案

Q14. 打开软件报错“由于找不到Qt***.dll……”?

请检查安装文件是否被360等安全软件无声拦截,请退出安全软件后,重新安装。另外以管理员权限运行