0 引 言
智能制造,把工厂当中制造的设备以及生产产品的过程智能化,因此工业自动引导运输车(Automated Guided Vehicle,AGV)便应运而生,工业AGV具有工作效率高、节省管理和人力成本和稳定性高等诸多优点。
文献[1]中,对AGV的导航方式进行了总结,目前,AGV导航方式主要有电磁导航、磁条导航和激光雷达导航。电磁导航优点为成本低,缺点是改变路径困难。磁条导航优点是导引灵活,但长期使用易磨损。相比较而言,激光雷达轮廓导航具有较高的精度,并且可以灵活的指定行驶路径。文献[2]中激光导航系统采用Microsoft Visual Studio2008中作为软件开发平台,但是存在分布式部署困难,代码复用率低的缺陷。
因此,本文通过使用开源的机器人操作系统(Robot Operating System,ROS),设计了采用SICK激光雷达的AGV导航系统并且针对目前A*算法的不足的地方,提出改进的RA*算法,使得AGV优先行驶在环境地图的中间路线和水平路线,并在先锋机器人上利用ROS plugin技术实现了RA*算法,并在实际导航中进行使用。
1 AGV导航系统总体方案设计
基于ROS和激光雷达的AGV导航系统的设计可以划分为硬件部分设计和软件部分设计。软件部分采用ROS机器人操作系统,该系统具有跨平台、代码可重用、分布式部署等诸多优点。硬件部分,激光雷达结合地图信息,融合编码器提供的里程计信息,以及IMU提供转向信息,对AGV进行实时定位以及轨迹规划。AGV导航系统总体方案如1所示。
2 硬件设计
AGV导航系统的硬件设计部分主要由3个部分构成,分别为电源模块、传感器模块和控制器模块,其中传感器模块包含SICK LMS100激光雷达,惯性测量单元、电机(含编码器)以及红外、超声波传感器等。控制器模块包含STM32F407开发板、工控机等。基于ROS和激光雷达的AGV导航系统硬件如图2所示。
暂无评论内容