一.激光的主要参数
激光雷达的主要参数包括测距范围、扫描频率、角分辨率、精度等几方面。
1.扫描频率
扫描频率表示一秒内雷达进行多少次扫描。扫描频率越大,设备对外界环境的感知的速度越快,系统实时性可以更高。
2.角分辨率
角分辨率表示两个相邻测距点的角度步进。角分辨率大小决定了一次扫描能返回的样本点数以及该激光雷达所能检测的最小障碍物大小。
如下图所示:角分辨率为a,障碍物距离为h,则该距离可以检测的障碍物最小宽度为len = 2*tan(a/2)h
若使用角分辨率为1°的雷达,1米距离可以检测的最小物体宽度为len = 2tan(1/2)*1 = 0.0175m
3.精度
精度表示雷达可以感知的距离最小变化值。
4.可视范围
可视范围包括距离、角度测量范围,在可视范围之外即为盲区。
距离测量范围,即能有效检测的最近和最远距离;
角度测量范围:即有效扫描角度,在该角度范围内物体可检测到,如180°、270°
二.激光雷达常见测距原理
1.三角测距
其原理是:激光信号以一定的入射角照射到被测物体表面后产生反射,反射光斑经过光学透镜成像在CCD传感器上。当被测物体沿激光方向发生移动时,CCD上的光斑产生移动,可由光斑移动距离计算出被测物体与基线的距离值。由入射光、反射光构成一个三角形,基于三角关系,可结算出目标物体与雷达的距离值、相对方位角度值。
2. TOF测距
激光器发射一个激光脉冲,并由计时器记录下发出的时间,回返光由接收器接收并距离下时间,两个时间相减,得到“飞行时间”,再由光速计算出距离。
从原理上来讲,三角雷达在近距离下精度可以很高,但随着测量的物体越远,在CCD上的位置差别越小,角度差异越来越小,故三角雷达在标注精度时常采用百分比的标注法(如精度1%),当测量值超过某一距离后,CCD几乎无法分辨,因此不适合远距离测量。TOF采用脉冲激光采样,依赖飞行时间,时间精度并不会随着长度增加而变化,同时TOF能严格控制视场以减少环境光的影响。相比三角测距法,TOF雷达可以测量的距离更远,并且可以在长距离范围内保持较高精度。
三. ROS 中激光数据的消息类型
在ROS中激光雷达的topic一般为/scan,其数据类型为LaserScan。
LaserScan消息结构如下:
std_msgs/Header header
uint32 seq //扫描顺序增加的id
time stamp //时间戳
string frame_id //扫描的参考系名称,逆时针从正前方开始
float32 angle_min //开始扫描角度(rad)
float32 angle_max //结束扫描角度(rad)
float32 angle_increment //每一次扫描增加的角度(rad)
float32 time_increment //测量时间间隔(s)
float32 scan_time //扫描时间间隔(s)
float32 range_min //距离最小值(m)
float32 range_max //距离最大值(m)
float32[] ranges //距离数据
float32[] intensities //强度数据