Benewake(北醒) 单点TF系列雷达【通用指令串口助手】使用说明

本文主要是介绍Benewake(北醒) 单点TF系列雷达【通用指令串口助手】使用说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 一、硬件准备
    • 1:连接设备
    • 2:串口连接以及读数
  • 二、通信接口说明
    • 1. UART
    • 2. IIC
    • 3. 485
    • 4. CAN
  • 三、常见问题
    • 1 连接串口后无数据

一、硬件准备

在这里插入图片描述

1:连接设备

连接『TF系列产品』、『TTL - USB 转接板』和『USB 线』,确保无松动,再将『USB 线』与『电脑』连接。

2:串口连接以及读数

打开串口助手,选择对应 COM 口以及波特率后,点击连接。

在这里插入图片描述

二、通信接口说明

北醒激光雷达通信接口
TF-LC02支持 UART 接口(PS:指令编码格式和其他雷达不同,更多详情请参考用户手册)
TF-Luna 、TFmini-S 、TFmini Plus 、TF02-Pro支持 UART 和 IIC 两种接口,默认为 UART 接口,可通过指令切换
TFmini-i 、TF02-i分为 485 版本和 CAN 版本,两种通信接口的硬件不同,不能通过指令切换,采购前请确认产品型号
TF03 、TF350标准串口版本支持 UART 和 CAN 两种接口,默认为 UART 接口,可通过指令切换;工业版支持 RS-485 和 RS-232 两种接口,默认为 RS-485 接口,可通过指令切换
TF02-Pro-W分为串口版本和 RS-485 版本;串口版本支持 UART 和 IIC 接口,默认为 UART 接口,可通过指令切换
TF40支持 UART 接口(PS:指令编码格式和其他雷达不同,更多详情请参考用户手册)

1. UART

默认为上电即测量,上电后打开串口助手可以获得测量数据。

数据结构:数据帧长度为9字节。包含距离信息(Distance)、信号强度信息(Strength)、温度(Temp)、数据校验字节(Checksum)等。数据格式为16进制(HEX)。

标准数据输出格式如下图所示:
在这里插入图片描述
Dist(Distance): 代表测量输出的距离值,默认单位为 cm。实际使用过程中,当信号强度值 Strength<100 或等于 65535(信号过曝)时,Dist 的测量值被认为不可信,默认输出 0。
Strength: 指信号强度,默认输出值会在 0-65535 之间。当测距档位一定时,测距越远,信号强度越低;目标物反射率越低,信号强度越低。当 Strength 大于 100 且不等于 65535 时,认为 Dist的测量值可信,客户可以根据使用场景自行调整。
Temp(Temperature): 表征芯片内部温度值。摄氏度 = Temp / 8 - 256。

发送指令编码格式如下图所示:
在这里插入图片描述
举例,保存设置指令:5A 04 11 6F

2. IIC

通信时序:
在这里插入图片描述
雷达默认地址是 0x10,则通过串口在 IIC 模式下获取测量距离的命令为: 53 20 05 5A 05 00 01 60 50 53 21 09 50
命令解释:
0x53: USB-I²C 转换器的 S 命令,发起 start 信号(详见转接器使用手册);

0x20: 写操作(IIC 协议规定高 7 位代表从节点的寻址地址,最低位代表读/写,0 为写操作,1 为读操作。从机地址 0x10(DEC),0x10 的 2 进制表示 00010000。高 7 位代表地址故先左移一位为 00100000,最低位写为 0,所以是 00100000 即 0x20(DEC));
0x05: 写入 5 个字节数据;
5A 05 00 01 60: 获取测距结果,雷达在 IIC 模式下读取距离的指令

0x53: USB-I²C 转换器的 S 命令,发起 start 信号(详见转接器使用手册);
0x21: 读操作(高 7 位代表地址,最低位代表读/写。从机地址 0x10,0x10 的二进制表示 0001 0000,高七位是地址故先左移一位为 00100000,最低位读为 1,所以是 00100001 即 0x21);
0x09: 读取 9 个字节数据;
0x50: USB-I²C 转接器的 P 命令,发起 stop 信号(详见转接器使用手册);
发送上述指令后,雷达返回 9 个字节的数据,为标准数据输出格式。

在这里插入图片描述

3. 485

RS-485 接口下默认为 Modbus 协议,默认波特率为 115200,默认地址为 0x01。

数据获取指令说明:
Modbus 协议使能时,在串口助手发送获取雷达测量值的指令格式为:01 03 00 00 00 01,点击发送。可以看到雷达返回十六进制表示的测距值。
正确返回值的格式为 01 03 02 DH DL CL CH。DH、DL 分别是 Dist 的高 8bit 和低 8bit;CL、CH 分别是 CRC的低 8bit 和高 8bit。例如,返回 01 03 02 00 CB F9 D3,可知其距离值的十六进制表示为 00CB,转换成十进制为 203cm。
在这里插入图片描述

4. CAN

CAN 协议下的数据格式如下图所示,数据均为16进制数,每帧数据共计 8 字节,数据包含实测距离信息,即 DIST,单位为 cm;信号强度,即 Strength;时间戳信息,单位 ms。
CAN 通信数据格式:
在这里插入图片描述
CAN通信数据说明:
打开 USB_CAN TOOL,进行参数设置。CAN 版本雷达波特率默认为 250kbps,帧格式默认为标准帧,发送和接收 ID 默认为 0x00000003。

在主页面找到“CAN 发送”栏,选择“帧格式”为“标准帧”(帧格式可以选择“标准帧”或“拓展帧”,在实际使用中通常使用“标准帧”),选择“帧类型”为“数据帧”,帧 ID 设置为“00 00 00 03”。

在这里插入图片描述
在上方菜单栏找到“设备操作”,点击“启动设备”。选择波特率为“250k bps”。点击确定,设备启动。

在这里插入图片描述在这里插入图片描述
设备成功启动后,在右侧输出数据栏可以读取实测距离信息及信号强度。输出数据均为 16 进制数,前两个数据位分别为距离值的低八位和高八位,第三、四数据位分别为信号强度的低八位和高八位,最后两个数据位为保留位。例如,输出数据帧为:DD 00 6B 12 26 6D 00 00,则实测距离值为 000000DD,十进制表示为 221;信号强度为 0000126B,十进制表示为 4715。综上,实测距离值为 221cm,信号强度为 4715。

在这里插入图片描述

三、常见问题

1 连接串口后无数据

可能原因:

  • 硬件连线错误
  • 波特率选择不正确(默认为115200)
  • 所选串口号与雷达设备不匹配
  • 雷达切换为IIC模式(默认为串口UART模式)

PS: 更多详情请参考产品规格书及使用说明书
可到官网下载最新的资料:http://www.benewake.com/

这篇关于Benewake(北醒) 单点TF系列雷达【通用指令串口助手】使用说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/394615

相关文章

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

MyBatis ParameterHandler的具体使用

《MyBatisParameterHandler的具体使用》本文主要介绍了MyBatisParameterHandler的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、概述二、源码1 关键属性2.setParameters3.TypeHandler1.TypeHa

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同