当前位置:首页 期刊杂志

一种提高SLAM-AGV末端对接精度的方法研究

时间:2024-07-29

高 颖

(苏州市职业大学 机电工程学院,江苏 苏州 215104)

随着智能制造业的不断发展,在生产自动化物流系统中,具有高效、灵活、柔性的AGV小车逐渐取代人工,广泛应用于大型工厂的生产线上。AGV小车可根据生产线的需要在原材料、半成品和成品区域往返搬运,且对其与生产设备的对接精度要求也越来越高。AGV是在未知的环境中移动,通过携带的激光雷达和视觉摄像机等传感器件构建SLAM(simultaneous localization and mapping)算法,完成地图构建从而实现自主定位[1]。SLAM以其能准确测量障碍点的角度与距离、无须预先布置场景、可融合多个传感器、在光线较差的环境工作、能够生成便于导航的环境地图等优势,成为目前定位方案中不可或缺的新技术[2]。

SLAM激光导航的算法框架有卡尔曼滤波、粒子滤波、高斯牛顿法和图优化等。图优化算法框架下的Cartographer是开源算法,可采用成本较低的激光雷达进行2D环境大空间移动建图,具有较高精度的实时定位功能,支持机器人操作系统(ROS),非常适用于大型室内环境下大规模SLAM-AGV的应用[3]。

1 SLAM激光导航

地图的构建是AGV自主导航和定位实现点对点运行的基础,表达了运行空间环境及其包含的特征。SLAM机器人运行地图由多层地图构成:栅格地图、特征地图和拓扑地图。栅格地图是2D环境下对环境描述最常用的一种。它通过激光雷达扫描将静态环境和物体映射到网格中,网格的大小决定着地图的分辨率,分辨率越小地图精度越高。网格被占据赋值为1,代表墙、物体或障碍物;网格未被占据赋值为0,表示无障碍物。特征地图是矢量图的一种,它将空间环境中特殊的点、线在图层中标识。拓扑地图用于设置保存机器人运行特殊节点和路线的属性信息。

SLAM激光导航的Cartographer算法把局部和全局的方法融合到2D SLAM中,能够实时建立精度为5 cm的地图并使用分支界定法进行实时回环检测。首先激光雷达连续扫描生成子图,局部SLAM通过扫描匹配,将新的数据帧插入到已生成子图的最优位置并构建一系列子图。然后,全局SLAM通过插入轨迹节点,将所有子图重新排列对齐形成一个连贯的全局位姿地图,并寻找节点与子图之间的闭环约束进行回环检测,消除累积误差。所有子图和当前扫描都会作用于回环检测,实现精准的当前位姿估算。

2 现有SLAM激光导航AGV与设备的对接精度

2.1 理想环境下的精度

SLAM激光导航AGV之所以广泛应用于室内生产环境,主要有四个方面的原因:①光源可调节且稳定,因此激光雷达提取数据的效果不随室内光源强度和角度的变化而变化;②设备摆放固定,因而2D地图建立后所表示的障碍物位置长时间不变,故与实际环境匹配;激光雷达扫描得到的距离数据与地图数据匹配,置信度高;③室内环境灰尘少,故激光雷达表面因被灰尘覆盖而引起噪声的概率较小;④地面平整度高,使得惯性测量单元和里程计提供的数据信息可靠,从而能保证导航定位的精度。

在理想环境下,对AGV与设备的对接精度进行测试。测试采用Cartographer的SLAM算法,遥控搭载nanoScan3激光雷达AGV进行扫描并建立栅格地图,共有5个对接设备,如图1所示。设置三条AGV在设备间运的行路径,对SLAM导航定位精度在稳定环境中进行测量。首先记录建图时AGV在设备对接点的位姿坐标(Xi,Yi,θi);其次在系统中设置同一辆AGV分别在三条路径各循环运行100次;最后系统导出对接的点坐标与原始坐标进行比较。测量数据统计如表1所示。

图1 测试环境地图和路径示意图

表1 测试环境对接精度统计

2.2 实际环境下的精度

相对于理想环境,实际AGV运行环境是动态变化的,不稳定因素包含人、暂存物体、光源、其他运行的AGV和不同的地面环境等。在复杂的运行环境中实时激光雷达数据输入偏差会导致AGV绝对位姿不准确、定位精度超出范围,从而影响绝对定位精度。在设备对接过程中定位精度不稳定更加明显,主要影响因素如下:①在激光雷达靠近设备的过程中扫描环境特征减少,噪声干扰变大;②地面和负载变化等不确定因素造成机器人打滑;③激光雷达安装精度和自身存在测量精度偏差[4]。

结合实际使用环境,对AGV与设备的对接精度进行测试。测试环境如下:某大型万级洁净度车间,百台SLAM-AGV同时工作;车间占地面积约25 000 m2,整体地面平整度±5 cm,局部2 m×2 m范围内平整度±5 mm;地面采用防滑环氧地坪;照明采用节能荧光灯作为普照式光源,照度稳定在750 Lx。激光雷达安装高度平面无透光障碍物。

地图构建精度栅格大小的选取是影响对接精度的关键因素之一,栅格粒越小环境分辨率越大,但地图存储信息量就越大,进而导致系统闭合回环速度慢。测试选择5 cm精度的栅格进行实际场景建图,AGV扫图运行速度设置为0.5 m/s,旋转速度0.5 r/m。SLAM-AGV在扫描起始点保证姿态与空间横坐标平行,以保证所建立的栅格地图与实际空间不产生角度偏差;扫描地图操作过程反复进行大循环和小循环确保回环检测,大小循环路线如图2所示;SLAM-AGV扫描完成后最终位姿回到起始位姿,做到扫描闭环。

图2 地图扫描路径示意图

测试选取如图3所示的A、B、C三条AGV运行路径进行定位精度测量。设置AGV空载直线运行速度0.8 m/s,旋转速度0.5 r/min,沿三条路径各循环运行100次执行点对点对接任务。测试过程中AGV定位精度明显降低,个别出现偏航和避障现象,启动和急停频繁,到对接点位置减速时间短且位姿调整不充分。测试数据如表2所示。对比表1可知实际环境下的各项精度指标均有明显的降低。

图3 实际环境AGV精度测试路径示意图

表2 实际环境对接精度统计

3 提高末端对接精度的优化设计

3.1 地图构建优化设计

实际环境中测试数据表明末端绝对定位精度不高。为了提高与设备对接精度,首先对SLAM导航的地图构建进行改进,在构建栅格地图的基础上,在末端设备上增加反光条进行特征点标识,以增加空间环境中特殊点标识。通常,反光条上返回激光点的反射强度比普通障碍物高很多,因此可根据反射强度分离反光条上的激光点[5]。基于Cartographer算法在构建环境栅格地图过程中将反光条作为位姿图优化的一个节点,在后端与子图数据帧进行匹配优化。反光条反射率不同于周围环境,可分离数据帧中的反光条点并设置权重作为特征点,存储在特征地图图层。

融入反光条的混合地图由栅格地图、特征地图和拓扑地图组成。地图构建和编辑过程流程如下:①完成整场环境闭环扫描建立栅格地图,擦除图1中的临时障碍物,如图4所示;②手动或遥控调整车辆位姿,使其正对设备,打开激光雷达高精点扫描,将感知反光条设为高精特征点,在地图中标识为黑色圆点,如图4所示;③设置此时机器人位置为设备对接点,同时系统记录全局坐标和姿态,将所有的反光条作为特征标识保存在地图里,地图编辑完成后保存导入至AGV。

图4 测试环境地图

3.2 位姿导航优化设计

单纯的绝对位姿导航精度基本由栅格粒的大小决定,定位过程很容易受到环境变化的影响而变差。因此,可将单纯的绝对位姿导航优化为相对位姿与绝对位姿导航相结合的方式。在设备末端对接处引入相对位姿导航,编辑拓扑地图中AGV运行轨迹,设置相对位姿导航切换点。AGV到达该切换点后,采用Cartographer纯定位模式降低运行速度,不断检测特征点并调整姿态,再采用相对导航运行至对接点。同时引入局部到点PL-ICP(pointto line-iterative closest point)算法,利用激光雷达采样点提取直线,测算点到直线的距离来减少误差。并融入IMU(inertial measurement unit)、里程计和时间戳等数据信息辅助提高末端的定位精度。

优化后的末端对接流程示意图如图5所示,SLAM-AGV通过绝对位姿导航由A点运行到相对导航切入点B点;到B点后,AGV调整位姿将激光雷达对准反光点,同时系统切换成相对位姿导航模式;激光雷达开启高精对接模式,提取反光条的数据和设备表面的扫描数据,采用最近邻算法和PL-ICP算法计算激光帧匹配误差及其距离,调整AGV到达对接点C,并使其处于相对定位位姿。

图5 末端对接流程示意图

3.3 运行测试

优化后,进行SLAM-AGV与设备对接精度测试。测试环境如下:某工厂内设备安装总数240台,投入使用AGV 150台,设备对接点940个,24 h平均任务数17 000个左右。在建图过程中系统导入AGV在每个对接点的全局坐标(Xi,Yi,θi),作为初始值。记录AGV执行任务到达对接点的坐标(xi,yi,θi'),两者相减得出对接精度。系统导出某月任务对接数据如表3和表4所示。

表3 任务对接成功率统计表

表4 任务对接精度统计表

数据显示X轴平均对接精度为7.16 mm,Y轴平均对接精度为7.81 mm,角度误差平均对接精度为0.72°,对比表2的数据可知优化后的精度提高了一倍左右。一次对接成功率达到99%以上。

4 结论

本文介绍了通过对末端设备增加反光特征标识,采用绝对位姿导航与相对位姿导航相互结合的模式,优化SLAM导航地图构建和位姿导航过程,解决了SLAM-AGV绝对位姿导航在设备末端定位精度不足的问题,实现了SLAM-AGV末端的高精度对接,在某工厂的实际运行测试数据表明该方法可靠有效。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!