论文部分内容阅读
近年来物流行业的快速发展和激烈竞争,寻求低成本、柔性程度高的AGV定位导航系统成为行业发展趋势。本文提出一种基于低成本激光雷达自主导航的AGV系统方案,采用国产激光雷达RPLidar和编码器作为主要传感器,利用双轮差速驱动的移动机器人Turtlebot为研究和实验平台,研究了在未知环境中的AGV同时定位与建图的方法,并针对实际场景中出现的编码器不准和重定位问题进行分析,提出相应的改进方法,主要工作如下:分析了基于滤波的SLAM算法框架,针对实际场景中AGV车轮打滑带来位姿估计的误差的问题,本文提出基于点-线邻近匹配算法(PLICP,Point-to-Line based Iterative Closed Point)的AMCL算法。当里程计的误差超过设定阈值时,用激光扫描的相邻的两帧数据匹配的结果作为建议分布,不考虑此时的里程计数据,以此提高定位的精度和鲁棒性。在实际模拟车轮打滑的实验中,将本文算法与以里程计信息为建议分布的AMCL算法进行对比,实验结果验证了改进的AMCL算法的有效性。另外,针对AGV在实际环境中的“机器人绑架”(或“迷失”)而定位失效的问题,本文提出基于视觉特征与激光2D位姿结合的重定位方法。在建图阶段,将激光估计的位姿融合到当前的图像帧信息中,并将相机采集的图像以词袋树的形式存储,加快搜索和重定位过程。在重定位阶段,深度相机将当前获取到的图像信息与在建图阶段维护的词袋树中的图像信息进行匹配,通过相似性判断和策略,得到机器人当前的位姿。在实际环境的重定位实验中,通过对比不同场景的重定位效果,验证了在结构化环境中本文算法的有效性。最后,在ROS和Turtlebot的平台下完成开源激光SLAM的在实际场景中的实现,并在实际场景中测试改进算法的准确度和重定位过程的有效性。实验结果表明,改进后的定位精度能达到实际应用水平,在22m的环形路径,累积误差为0.362m,在环境特征较多的场景,重定位过程识别率达到83.5%,且重定位平均耗时0.21s,在结构化场景中,基本能满足实时准确的重定位要求。