论文部分内容阅读
在当前“工业4.0”的背景下,自动化、智能化成为生产制造业的发展趋势。自动导引运输车(Automated Guided Vehicle,AGV)作为原始人工劳动力的替代工具,在智能制造产业与智慧物流中扮演着不可或缺的角色。定位导航技术是AGV实现自动化的核心技术,决定了AGV系统性能优劣。针对目前室内AGV定位导航技术存在的灵活性低、路径维护繁琐、定位性能较差等问题,本文设计并实现了一种基于视觉辅助定位的AGV激光导航系统。具体开展的研究如下:1.差速轮在移动过程中容易跑偏,因此,本文设计的AGV采用易控制、运行灵活的单舵轮轮系结构,包括一个主舵轮和两个从动轮。本文对该轮系结构进行了运动学模型建立与分析,为AGV的运动控制奠定基础。另外,建立了AGV URDF模型,为后续的定位导航提供车体关键部件所在坐标系之间的变换关系。2.针对传统AGV开发周期长、功能扩展性差、代码复用率低等问题,本文采用开源机器人操作系统(Robot Operating System,ROS)作为AGV的设计开发平台,在ROS规划端实现了AGV的地图构建、自主定位、路径规划、自主导航及网页人机交互五大功能。3.由于不同的导航方法适用于不同的场景,本文在分析比较了AGV常用的几种导航方法的优劣之后,针对室内运输场景选择激光雷达导航方法作为主要导引方式。该导引方式的实现主要包括三个部分:基于激光雷达的同时定位与地图构建(Simultaneous Localization and Mapping,SLAM)、自主定位以及路径规划。其中激光SLAM方案采用了Cartographer算法;自主定位方案采用了自适应蒙特卡洛定位算法(Adaptive Monte Carlo Localization,AMCL);全局路径规划采用了waypoint-global-planner算法作为路径规划器,局部路径规划采用了动态窗口算法(Dynamic Windows Approach,DWA)。4.针对激光SLAM在低特征环境下或环境特征相似时性能表现不佳以及重定位能力较差等问题,提出了利用AprilTags2标签对AGV进行视觉辅助定位的方法。该方法的实质是利用视觉定位位姿来修正里程计的累积定位误差,修正后的定位数据应用于激光SLAM以及后续的定位导航。视觉辅助定位模块采用Kinect1.0相机作为图像采集设备,通过标签检测器实时获取环境中AprilTags2标签的位姿信息,并通过坐标系变换完成对AGV的视觉位姿估计。5.针对如何利用视觉定位位姿来修正里程计以提高定位精度的问题,提出了采用扩展卡尔曼滤波(Extended Kalman Filter,EKF)算法将两种定位数据进行融合,以获得AGV的最优位姿状态估计。6.搭建了AGV硬件平台,在实际场景中进行了激光导航AGV的整机测试,包括激光SLAM、自主定位、路径规划、网页人机交互等功能的测试。同时,在各个站点利用Kinect1.0相机检测AprilTags2标签,通过识别AprilTags2标签获取AGV的当前视觉估计位姿,并以该位姿来修正当前时刻AGV的位姿。测试表明,基于AprilTags2标签辅助定位的定位精度与单纯的激光导航相比显著提高,这对安全高效地完成室内自动化运输任务具有重要的意义。