一种自动规划路径AGV机器人的设计_第1页
一种自动规划路径AGV机器人的设计_第2页
一种自动规划路径AGV机器人的设计_第3页
一种自动规划路径AGV机器人的设计_第4页
一种自动规划路径AGV机器人的设计_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一种自动规划路径AGV机器人的设计作者:赵连强 柳国良 李鹏远 来源:科技风2021年第32期奈貌硬件细.成枢图摘要:本文以在室内环境工作的移动机器人自主导航为应用背景,构建基于ROS平台并 具有自动规划路径功能的AGV机器人。在建立机器人导航用环境地图方面,对只依赖激光雷 达数据的Hector SLAM地图创建进行了改进,将激光雷达、里程计及惯导(IMU)等多个传 感器数据进行融合,通过里程计辅助的方式改进ICP配准精度,有效降低了 HectorSLAM建图 打滑现象产生的影响,并进行基于A*算法和行为动力学的路径规划研究。实验结果表明,本 AGV机器人能够完成室内环境的路径自动规划。关键词

2、:AGV;路径规划;建图;环境本系统采用树莓派4B处理器为主控制芯片,利用惯性测量单元(IMU)、轮式编码器以 及激光雷达作为导航数据源,进行了相关的硬件设计。软件部分基于机器人开源操作系统(Robot Operating System,ROS)平台,对机器人的环境建模和路径规划进行了研究。主要完 成基于ROS的移动机器人平台构建、基于多传感器信息融合的HectorSLAM环境地图创建、 基于A*算法和行为动力学方法的路径规划研究、基于ROS的移动机器人导航实验等。一、硬件结构(一)控制器机器人控制器采用树莓派4B,运行Ubuntu Mate或Raspbian系统,安装ROS机器人操作 系统,

3、作为机器人端ROS节点控制器。硬件组成框架图如下:树莓派4B对比3B+升级明显,主要功能包括高性能Cortex-A72 64位四核处理器,2路 micro-HDMI端口支持分辨率高达4K的双显示屏,高达4KP6 0的硬件视频解码及4GB的 RAM,双频 2.4/5.0GHz无线局域网,蓝牙5.0,千兆以太网,USB3.0和POE功能(通过单独 的POE HAT插件)。树莓派主要负责获取激光雷达、IMU等传感器数据并发布相应话题来供虚拟机订阅,并 订阅虚拟机发出的速度信号控制小车移动。(二)电源供电该机器人的电源为电池模块,由两块锂离子电池组成,内置电池保护板。一块8.4V 2400mAh给树莓

4、派、激光雷达、IMU、编码器供电,一块12V 6000mAh给减速电机供电。(三)通信链路Ros机器人主机以50ms为周期发布速度、位置等控制信息,树莓派接收速度控制信号并 将采集到减速电机的位置信息发布出去。(四)电机参数工作电压:12V。额定功率:4W。额定电流:0.36A。堵转电流:3.2A。减速比:1:30。减速后空载转速:36626RPM。额定扭矩:1KGCM。该电机全金属减速箱,可靠性更高。(五)传感器激光雷达:激光雷达是以发射激光束来探测目标位置、速度等特征参数的雷达系统。雷达 向目标发射激光束,将接收到的目标回波与发射信号进行比较,作适当处理后,可获得目标的 相关参数,如目标方

5、位、距离、高度、速度、姿态以及形状等,从而对周围的物体进行识别。机器人上的激光雷达可以感知环境二维平面的深度信息。程序可以通过环境深度信息来判 断障碍物距离小车的远近借此来达到避障的目的。Ros中的slam开源包gmapping可以通过获 取激光雷达的数据对周围环境建立地图。通过对激光雷达数据的处理,可以实现对机器人的定 位、计算机器人所在二维平面的姿态、计算机器人的速度等。本机器人用的LDS1.5激光雷达是地面移动机器人常用的一种传感器,其工作原理是用一 个高速旋转的激光测距探头将周围360。的障碍物分布状况测量出来,形成障碍物轮廓的俯视 二维点阵输入ROS系统里。供电电压:5V。测量距离:

6、120 3500mm。扫描频率:1.8kHZ。扫描角度:360。分辨率:1。陀螺仪和加速度计:IMU MPU6050分别为陀螺仪和加速度计提供了三个16位的ADC, 将被检测的模拟量转化为可输出数字量。传感器的测量范围是用户可控的,陀螺仪的可测范围 为250, 500, 1000, 2000/秒 (dps),加速度计的可测范围为2, 4, 8, 16g,可以 精确跟踪快速和慢速的运动。通过对加速度计积分可以计算车速,对角速度积分可以计算小车 的欧拉角。角速度积分算出的俯仰角、翻滚角可以通过重力加速度在车模x, y, z轴的分量来 辅助校正。IMU在小车上可以比较精确地感知小车当前的状态。二、建

7、图导航算法(一)ROS的通信机制ROS系统中的通信方式有三种,分别为话题(msg)、服务(srv)和动作(action),其 中话题属于基本的发布/订阅通信方式,适用于单个节点发布消息,一个或多个节点接受消息 的情况;服务属于实时获取结果的情况,应用于请求/响雁式的应用环境,适用于基本功能的调 用或者状态的查看。ROS是一种分布式软件框架,节点可以运行在不同的计算平台上,节点之间以松耦合的 方式进行组合,通过Topic、Service进行通信。ROS的分布式十分强大,在不同计算机上运行 不同的节点就如同在一台计算机上运行。(二)SLAM 建图SIAM按传感器分类可以分为两大类:视觉SLAM和激

8、光SLAM。视觉SLAM对环境有较 高要求,需要环境有丰富的纹理,且计算量大。视觉SLAM在重定位和场景区分上有着极大 优势。激光SLAM对环境要求较低,计算量小,且激光雷达本身带有几何信息,建立出来的 地图更直观精确。本次我们采用的是激光SLAM。Gmapping是应用最为广泛的2D slam方法,主要是利用RBPF (Rao-Blackwellized Particle Filters)方法,所以需要了解粒子滤波的方法(利用统计特性描述物理表达式下的结果)。 Gmapping在RBPF算法上做了提议分布和选择性重采样的改进,可以实时构建室内环境地 图,所需计算量较小且精度较高。相比Hect

9、or SLAM,其对激光雷达的频率要求低、鲁棒性高 (在机器人快速转向时Hector容易发生错误匹配,地图发生错位,主要原因是优化算法容易 陷入局部最小值);而相比Cartographer,在小场景地图构建时,不需要太多粒子且没有回环检 测,计算量小且精度相差不大。随着场景的增大所需粒子增加,每个粒子都会携带一幅地图, 所需的内存和计算量都会增加,不适合构建大场景地图。因为没有回环检测,回环闭合时可能 会造成地图错位,虽然增加粒子数目可以使地图闭合但要以增加计算量和内存为代价。所以 Gmapping不能像cartographer那样构建大的地图。优点:在长廊及低特征场景中建图效果好; 缺点:依

10、赖里程计(odometry),无法适用不平坦区域;无回环。综合以上考虑,本机器人采用 gmapping 算法。(三)机器人的定位里程计是机器人定位的重要组成部分。以小车的起始点建立坐标系(odom坐标系),记 录小车移动的里程,可以得到小车在odom坐标系下的坐标,以此来推算出小车的位置。激光里程计(rf20)编码器里程计和视觉里程计是自控中应用较多的两种里程计类型。电机编码的里程计在低 速情况下比较可靠,但不可避免地会出现因为轮子打滑等因素造成的漂移问题而视觉里程计 对于运动估计问题来说是一个比较灵活的解决方案,能适用不同的机器人,缺点在于计算量 大,占用较大资源空间,对传感器要求较高。激光

11、里程计吸收了上述两种方法的优点,能快速 而精确地从连续范围扫描中估计激光雷达的平面运动,且运算成本低。表现取决于激光的分辨 率和环境因素,转换评估准确。rf20是一种快速而精确的方法,用于从连续范围扫描中估计激光雷达的平面运动。对于每 个扫描点,根据传感器速度制定范围流约束方程,并最小化所得几何约束的鲁棒函数以获得运 动估计。与传统方法相反,该方法不搜索对应关系,而是以密集测距法的方式基于扫描梯度执 行密集扫描对准。最小化问题以粗到精的方案解决以应对大位移。实际测试中,激光里程计在小车做直线运动时比较准确,但是在遇到长直道,激光雷达采 集不到任何特征点的时候无法准确地测量小车移动。由于激光雷达

12、本身是在旋转的,所以当小 车在做快速旋转运动的时候激光里程计测量出来的旋转数据也有较大的误差。当小车做在做直线运动的时候,激光里程计是比较准确的,但是当小车在做旋转运动的时 候,由于激光雷达自身的旋转,会导致激光里程计的旋转不准确。所以使用ekf功能包来将激 光里程计的数据与IMU的数据融合出一个较为准确的数据。这个包用于评估机器人的3D位姿,使用了来自不同源的位姿测量信息,它使用带有6D (3D position and 3D ori-entation)模型信息的扩展卡尔曼滤波器来整合来自轮子里程计,IMU 传感器和视觉里程计的数据信息。基本思路就是用松耦合方式融合不同传感器信息实现位姿估

13、计。实际测试中,在小车低速运行时可以比较准确地得到小车的位姿态,但是由于IMU计算 出来的速度受车模加速度的影响,在车模做频繁的加减速运动时,融合后的里程计消息还是有 一定程度的漂移。编码里程计为了精确地控制车模的速度,我们根据采集到的编码器数据测量车子的速度,并且对这个 速度积分可以得出车模运行的里程。在通过IMU传感器便可以计算出车模的里程。在实际应 用中更多的还是通过轮式里程计来进行测量小车的位移。我们经过测试,这样计算出来的里程 计信息有着较高的精度,使得车模在运行时的定位精度有着很大的提升。通过对里程计信息的推算可以得出小车在地图上的位置,但是里程计定位会带来很多误 差。amcl是根

14、据已知地图配合激光雷达的数据进行定位,不存在误差累计的问题,所以我们 在里程计定位的基础上引入了 amcl功能包来进行机器人在地图上的辅助定位,可以消除里程 计在运动过程中的累计误差。三、路径规划机器人在得到目标点后,同样会以传感器作为眼睛,来获取道路信息,并思考分析如何行 走才不会与其他物体相撞,并用较少的时间正确到达目的地。这就称之为路径规划。路径规划主要涉及了三大问题:明确起点与终点,规避障碍物,尽可能做到路径优化。而我们根据对环 境信息掌握的程度的不同,将机器人的路径分为了两个部分:全局路径规划与局部路径规划。全局路径规划global_planner与navfn;两种全局路径规划都拥有

15、自己的插件,在move_base调用时只需要 将插件名字以参数的形式传人便可以直接调用。全局路径规划的算法主要包括A*与Dijkstra 算法。Dijkstra算法是典型的最短路径算法,用于计算一个节点到其他所有节点问的最短路径。 其特点是以起始点为中心向外层层扩展,直到终点为止。A*算法是Dijkstra算法的升级版。f (n) =g (n) +h (n),其中估价值h (n)的邀取是保 证找到最优解的条件。估价屋实际值的情况,搜索的点数多,范围大,效率低,但能得到最 优解。估价值实际值的情况,搜索的点数少,范围小,效率高,但不能保证得到最优解。估 价值与实际值越接近,估价函数取得就越好。局部路径规划机器人在获得目的地信息后,先经过“全局路径规划”规划出一条大致可行的路线;再调用 局部路径规划器,根据costmap的信息及路线规划出在局部时做出的具体行动策略。DWA (Dynamic Window Approach)算法:其原理是在速度空间(v,w

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论