1、LD14激光雷达介绍
(1)、LD14激光雷达主要事由测距核心、无线传电单元、无线通讯单元、角度测量单元、电机驱动单元和机械外壳组成。
(2)、LD14激光雷达采用三角测量法技术,可进行每秒2300次的测量。每次测距LD14会从一个固定的角度发射红外光线,激光遇到目标物体后会被反射到接受单元。通过激光、目标物体、接受单元形参三角关系、从而解算出距离数据后,LD14会把获取到的距离数据结合角度测量单元测量到的角度值组成点云数据。再把数据发送到外部接口。电机驱动单元会驱动电机,可用PWM控制到指定转速,默认转速为6HZ,输入PWM频率为15-30K,推荐24K;占空比在(45%,55%区间内,不包含45%与55%),且最少100ms持续时间。注:不使用外部控速,必须将PWM引脚接地或悬空。
(3)、角度分辨率为1度,测量的最大量程8米,最小量程为15厘米。
如图所示:
图片如下(整体框图):
(我的工位哈哈哈哈)
视频如下:
激光雷达工作视频
LD14激光雷达外形与接口:
LD14的数据通讯采用标准异步串口(UART)单向发送,数据参数如下表所示,而且LD14采用单向通讯,上电稳定后,便开始发送测量数据,不需要发送任何指令
LD14使用左手坐标系,选择中心为坐标原点,选择中心与主动轮中心连线方向为零度方向,旋转角度沿顺时针方向增大,如图所示:
2、LD激光雷达通讯协议
一、数据包格式
LD14 采用单向通讯,稳定工作后,即开始发送测量数据包,不需要发送任何指令。测量数据包格式如下图所示。
每个测量数据点由 2 个字节长度的距离值和 1 个字节长度的置信度值组成,如下图所示:
距离值的单位为 mm。信号强度值反映的是光反射强度,强度越高,信号强度值越大;强度越低,信号强度值越小。每个点的角度值是通过起始角度和结束角度线性插值得来,其角度计算方法:
step = (end_angle – start_angle)/(len – 1);
angle = start_angle + step*i;
其中 len 为一个数据包的测量点数,i 的取值范围为[0 , len )
雷达使用的是串口通信,波特率为115200dps,(每一个数据包输出47个字节的数据),输出协议具体情况如下:
1、Byte_0:为帧头,固定为 0x54。
2、Byte_1:为表示帧类型,目前固定为 1,低五位表示一个包的测量点数, 目前固定为 12,所以改字节固定为 0x2C。
3、Byte_2-Byte_3:雷达转速,单位为度每秒,低八位在前,例如Speed_L=0x68,Speed_H=0x08
为0x0868=2512度/s。
4、Byte_4-Byte_5:一帧数据的起始角度,低位在前,是实际角度的 100 倍,例如:Start_Angle
=0xAB,Start_Angle_H=0x7E,即 0x7EAB=32427(10进制)=324.27 度
5、Byte_6-Byte_41:点云数据:每个数据包括 2 字节距离和 1 字节强度信息。低位在前,距离
为mm例 如 : Distance_1_L=0x64 , Distance_1_H=0X00 ,PEAK_1=0x64,表示距离0x64=10
0mm,强度100。(要转换成10进制)0x64=01100100(二进制)64+32+4=100(复习哈进制算法哈哈哈)
6、Byte_42-Byte_43:一帧数据的结束角度,低位在前,是实际角度的 100 倍,例如Stop_Angle
_L=0xBE,Stop_Angle_H=0x82,即 0x82BE=33470=334.70 度。
7、Byte_44-Byte_45:时间戳,单位为 ms,最大为 30000,到达 30000 会重新开始计数。
8、Byte46:从 Byte_0 到 Byte_45 数据和校验值。CRC = byte0+byte1+…+byte56。
参考数据案例分析(重点):
LD14激光雷达的数据角度分辨率是 1 度,所以雷达转一圈那么会输出 360 个数据,但雷达一包数据包输出的点是 12 个点,按此可知,雷达一圈能输出差不多 30 个数据包,输出一包数据包的角度范围大概是 12 度(Byte_6-Byte_41(一共36个字节除以3个字节&