动态多障碍场景下轮式机器人目标可达性优化算法研究_第1页
动态多障碍场景下轮式机器人目标可达性优化算法研究_第2页
动态多障碍场景下轮式机器人目标可达性优化算法研究_第3页
动态多障碍场景下轮式机器人目标可达性优化算法研究_第4页
动态多障碍场景下轮式机器人目标可达性优化算法研究_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

绪论1.1课题背景及研究的目的和意义随着近几年来全球工业以及制造业进入迅猛发展的阶段,机器人作为集人工智能、机械、传感器等技术于一体的重要载体,机器人产业也如雨后春笋迅速崛起,正在深刻改变着人类社会的产业形态和社会格局。我国在《“十四五”机器人产业白皮书》中规划推进“机器人+”应用行动,以此来推动机器人在工业及服务业智能应用发展。两院院士宋健曾说:“机器人学的进步和应用是当代最高意义上的自动化。”REF_Ref31151\w\h[1]。在我国,《十四个五年计划和2035年远景目标纲要》REF_Ref5293\w\h[2]中重点强调创了新驱动发展战略的重要性并且指出要进一步加快科技创新,机器人作为高新技术产业的重要组成部门,发展机器人产业对推动智能制造发展有重要作用。2017年,党的十九大报告页提出了大力发展制造业与工业的倡议,要将机器人作为一个可持续发展的产业REF_Ref578\w\h[3]。机器人已经广泛应用于工业、医疗、教育、农业、服务业等领域REF_Ref4097\w\h[4]。其中,移动机器人作为能够自主执行任务的智能化机械设备,它不仅能完成人工指令的实时接收,还能够按照预定的程序自动执行复杂任务。与普通工业机器人相比,他们之间的主要区别在于移动机器人配备了移动平台,使其具备在指定空间内自由移动的能力REF_Ref5783\w\h[5]。想要实现高效可靠的自主导航功能,移动机器人需要在导航系统方面有出色的表现,机器人的导航系统按功能模块可分为三个模块:环境感知模块、定位模块和路径规划模块REF_Ref30161\w\h[6]。环境感知是通过机器人装配的传感器来采集环境信息,并且经过一系列相关算法处理后实现的,能够构建与实际环境中几何特征、障碍物分布等方面相匹配的数字地图模型。定位功能是基于已构建好的地图模型,通过实时传感器得到的数据,与地图模型中的特征进行对比,进一步确定机器人的具体位置。路径规划功能在已知环境模型和定位信息的基础上,运用一定算法,规划得到从给定起点到终点的综合最优轨迹,并驱动机器人沿着路径移动。目前移动机器人应用最成功、最广泛的是物流行业,在实际中具体的应用包括分拣机器人、仓储机器人、配送机器人、AGV机器人等REF_Ref8899\w\h[7]。移动机器人根据其移动方式,可以分为轮式、履带式、足式以及混合式配合运动REF_Ref7967\w\h[8],其中轮式机器人是移动机器人的一个很重要的分支,在轮式机器人的实际应用中,所处环境大多是室内且处于动态多障碍场景中,这些障碍物不仅位置会不断发生变化,而且其形态和种类也可能发生变化,这给轮式机器人的导航与路径规划带来了极大的挑战。如图1.1所示,这里展示的四种机器人都能够在酒店、医院、商场等动态多障碍环境下执行引导、清洁、物流等任务,然而目前轮式机器人在室内动态多障碍环境中的主要问题是基于事先预定好的编程导航难以完成真实环境中的实时动态任务,比如对行走中的人类意图的识别和对偶然出现的障碍物的处理等。如今将轮式机器人投入到室内复杂场景的需求越来越多,尤其是在酒店导引、商场导购等存在大量人员的室内环境中,因此其对路径导航的准确性提出了更迫切的需求。当出现偶然障碍或者环境发生变化时,必须要求轮式机器人在确保安全的前提下及时改变路线。但由于硬件设备的改进是有成本限制的,所以提高导航性能可以基于算法提升。(a)酒店服务机器人(b)仓储轮式机器人(c)送餐机器人(d)消毒机器人图1.1各种功能的机器人近些年,路径规划技术已经不再局限于传统工业,逐步应用到地图导航服务、自动驾驶以及物流调度等多种领域REF_Ref26876\w\h[9]。随着智能化进程的加速,路径规划技术的价值也逐渐显现出来,在个体应用层面,该技术可以减少人们花费精力与时间寻找到达目的地的路径;在企业运营方面,路径规划可以实现资源调度优化,进而达成运营成本压缩与服务效能提升的双重目标REF_Ref26908\w\h[10]。当前路径规划方案仍存在一些不足之处,一方面,主流大算法都仅仅针对静态环境设计,当面对密集的障碍物或者动态干扰物时,路径规划算法的规划效率与生成路径质量就有些不足;另一方面,由于路径规划过程中需要对周围环境做出准确且快速的识别与更新,这就对传感器精度与响应速度有较高要求,当前传感器技术的性能存在一定瓶颈,为了更好支持机器人的路径规划,需要提高传感技术的可靠性与准确性REF_Ref26938\w\h[11]。1.2路径规划算法的国内外研究现状路径规划算法通常被分为全局路径规划与局部路径规划两大类型。其中移动机器人全局路径规划的目标是找到从起点到目标点的无碰撞路径,并根据一定的准则进行优化REF_Ref23243\w\h[12]-REF_Ref23249\w\h[13],此类算法虽能保证路径最优性,但在动态场景中难以实时响应环境变化。局部路径规划算法是指移动机器人通过传感器传递相关数据感知周围环境从而规划出移动机器人躲避障碍物的路径,主要运用于需要动态避障等场合,应对静动态障碍物的干扰REF_Ref27036\w\h[14]。局部路径规划具有较高的实时性,但容易陷入局部最优解REF_Ref27904\w\h[15]。全局与局部路径规划的优点与缺点正好进行了相互弥补,因此越来越多的研究人员采用全局融合局部路径规划算法,使得路径规划的效率与质量大大提升。1.2.1全局路径规划算法的研究现状全局路径规划算法不会去处理运行过程中动态出现的障碍物,因此这类路径规划也被称作静态路径规划算法REF_Ref23390\w\h[16]。如图1.2所示,全局路径规划方法主要包括基于图搜索、基于采样的算法和元启发式算法等REF_Ref30455\w\h[17]。图1.2全局路径规划算法分类(a)基于图搜索的路径规划算法Dijkstra算法是最先提出来的基于图搜索的算法,从理论层面它看具有完全遍历特点,能够保证搜索到符合路径评价指标的最优路径。然而该算法在实际应用中存在明显缺陷,由于路径规划过程中会进行盲目搜索,需要对所有可能节点进行遍历,特别是在复杂环境中会产生大量冗余计算,导致算法效率低下REF_Ref24193\w\h[18]。1968年,P.EHart等人REF_Ref10434\w\h[19]提出了A*算法,其中引入了启发式搜索机制,在算法搜索效率与路径最优性之间实现平衡,成为了全局路径规划中最常用的经典方法。2017年,Chaari等人REF_Ref17408\w\h[20]提出了松弛A*算法,大大缩短了路径搜索时间。2021年,魏博闻等人REF_Ref11985\w\h[21]提出了优化搜索临近栅格的方法,降低路径搜索过程中对存储资源的占用,优化节点选择过程,提高搜索效率。2022年,Huang等人REF_Ref24278\w\h[22]提出一种改进的A*算法,通过改变启发式函数的比例性,优化评价函数以提高搜索效率。并且,利用三次B样条曲线对路径进行平滑处理,提高路径的平滑度。2022年,Zhao等人REF_Ref10950\w\h[23]针对传统混合A*算法在路径规划中存在的临近障碍物时会出现不必要的倒车和冗余转弯等问题,提出了一种基于混合A*算法的多目标约束方法,对启发函数进行动态加权,设计整体路径代价函数。2023年,潘富强等人REF_Ref12485\w\h[24]提出提取关键路径点时依照障碍物的类型,优化了路径规划质量。(b)基于采样的路径规划算法基于采样的路径规划算法是在全局地图上进行撒点采样,获得一些随机的节点,最终根据这些节点进行路径规划。采样类路径规划算法的典型代表包括快速随机搜索树(Rapid-explorationRandomTree,RRT)REF_Ref29500\w\h[25]和概率路线图(ProbabilisticRoadMap,PRM)REF_Ref29533\w\h[26],这两种算法示意图如图1.3和图1.4所示。图1.3RRT算法示意图图1.4PRM算法示意图在此基础上,2020年,Hu等人REF_Ref25124\w\h[27]将轮式机器人的动力学约束纳入考虑,提出了一个基于RRT的框架,使得在复杂的环境中能够快速生成一个平滑的轨迹。2021年,Gan等人REF_Ref25154\w\h[28]基于非完整约束机器人,提出了比传统RRT算法具有更短的计算时间和更短路径的改进RRT算法。2021年,Wu等人REF_Ref25271\w\h[29]提出了一种基于RRT的路径搜索算法Fast-RRT,能快速找到接近最优的路径。2023年,Ding等人REF_Ref25301\w\h[30]为了解决基于RRT*的变体在由长走廊组成的环境中采样效率低,收敛速度慢的问题,在RRT*算法中引入了贪婪启发式搜索策略,提高了节点利用率,加快了收敛速率。2022年,Li等人REF_Ref30467\w\h[31]发现传统PRM算法存在不少问题,比如算法效率不高,路线图在后续使用时的重用率较低,而且在选择采样点的时候缺乏有效的指导方法。针对这些情况,他们设计出一种新的伪随机采样策略,这种策略以空间主轴作为参考轴。通过使用该策略,改进后的PRM算法展现出了一定优势,在构建路线图、进行路径规划以及优化路径长度这些方面,其效果与运行速度存在关联,速度提升时,各方面表现也更出色。(c)元启发式算法元启发式算法中的经典的方法,如遗传算法(GA)REF_Ref20404\w\h[32]、粒子群优化算法(PSO)REF_Ref20453\w\h[33]、蚁群优化算法(ACO)REF_Ref20923\w\h[34]等,常被用于优化问题当中。路径规划问题在给定了初始路径之后,同样可以被视为一个优化问题,所以可以用此类方法来解决。2016年,Alejandro等人REF_Ref21566\w\h[35]将二维网格映射转换为二值图像,并考虑路径平滑、路径安全和路径长度的多目标函数。然后利用MOVNS元启发式算法和NSGA-II算法对路径进行优化。2017年,Wang等人REF_Ref21612\w\h[36]针对传统跳跃点搜索算法生成的路径中转折点过多,导致其存在寻路不最优、路径平滑性差等缺点,提出了一种改进的跳点搜索算法,在二次路径规划过程中采用最短搜索策略回溯生成寻路路径,并剔除仅改变方向的冗余节点。2022年,Meng等人REF_Ref32714\w\h[37]提出了一种新的粒子群粒子群变体来解决单目标数值优化问题,该算法使用了一种具有混合范式的新型排序粒子群,实现了开发和探索的平衡,并且在迭代过程中,针对每个子种群的比率和收缩系数提出了新的适应方案,可以增强每个迭代范式的优势。1.2.2局部路径规划算法的研究现状与依靠预设地图的全局路径规划方法相比较而言,局部路径规划技术借助传感器实时感知环境动态变化,在复杂场景里呈现出了更高的灵活性以及适应性,局部路径规划算法依靠融合多源感知数据来构建局部环境模型,有效地弥补了全局规划对于环境突变响应滞后的缺点,在动态避障领域,基于虚拟力场作用原理的人工势场法以及基于动态窗口评估机制的DWA算法,已然成为实现实时路径优化的典型解决办法。其中,人工势场法示意图如图1.5所示,机器人被等效看作一个具有质量的粒子。在这个模型中,目标点被赋予了吸引特性,如同强大的引力源一般,对机器人产生吸引作用,引导机器人朝着目标点移动。而障碍物则被设定为排斥源,会对机器人施加排斥力,阻止机器人靠近,以此来模拟机器人在实际环境中与障碍物之间的相互作用关系。这种方法结构上比较简便且计算量很小,但存在易陷入局部最优的问题。2022年,Zhang等人REF_Ref28891\w\h[38]通过引入模糊推理机制,并且采用了可变距离斥力函数,打破了传统力场的平衡状态,使算法能够摆脱局部最优。图1.5人工势场法示意图动态窗口法(DynamicWindowApproach,DWA)如图1.6所示,通过动态窗口快速生成平滑且安全的动态避障路径。由于DWA在规划过程中充分考虑了机器人的运动学特性,其生成的路径平滑且速度变化连续,有效提高了机器人在动态环境中的运动稳定性和安全性,但在复杂环境中容易陷入局部最优的状况。2022年,Lai等人REF_Ref4119\w\h[39]为解决移动机器人DWA算法稳定性差、能耗高的问题,提出了一种新颖的增强动态窗口算法,该算法以距离函数作为目标导向系数的权重,提出了一种新的评估函数来优化。图1.6动态窗口法示意图1.2.3混合路径规划算法的研究现状近年来,混合路径规划算法,也就是结合了多种搜索算法的方法,在处理各种路径规划问题中变得越来越常见。2019年,Chen等人REF_Ref1880\w\h[40]提出了一种将蚁群算法与人工势场法相结合的混合路径规划方法。一方面,通过人工势场生成的合力场对蚁群的搜索方向进行动态引导,显著提升了路径规划的效率;另一方面,将蚁群算法中自然形成的聚集点作为关键导航节点。当人工势场法陷入局部最优时,这些节点会被激活为临时引力源,通过施加额外的导向力帮助算法跳出局部极值区域,从而有效提高了全局搜索能力。2022年,Xiong等人REF_Ref7629\w\h[42]提出了一种基于改进A*和DWA的路径规划算法,在满足无人机的安全性和速度要求的同时实现全局路径优化。综上,全局路径规划任务是为给定静态环境中的起点与目标点,设计出从起点到目标点、不存在障碍物冲突的最优轨迹。基于图搜索方法的全局路径规划方法,例如Dijkstra算法和A*算法,其路径的全局最优性是有保障的,但在复杂环境下运行时间过长。基于采样方法的全局路径规划算法,例如RRT算法和PRM算法,能快速完成路径搜索工作并获得路径,但搜索得到的路径无全局最优性和平滑性问题。元启发式方法包含遗传算法、粒子群优化算法、蚁群算法等,这类方法在设计时着重考虑了对环境变化的适应,但是较为突出的不足是搜索效率不够高,在搜索过程中花费的时间和计算资源相对较多。而且,这些方法在寻找最优解时,很容易陷入局部最优的情况,难以找到真正的全局最优解,这在一定程度上限制了它们在复杂路径规划问题中的应用效果。而局部路径规划方法主要以提高其实时性及动态避障能力为目标。人工势场法通过构造吸引力场和斥力场完成对路径的搜索,但是容易陷入局部最优;动态窗口法通过在速度空间采样实现动态避障,其获取的路径较为平滑,速度的变化是连续的,但是当环境较为复杂的时候也会陷入到局部最优状态。在以上路径规划算法中,近年来兴起的是混合式路径规划算法,这类方法可以将不同的搜索算法进行混合设计,达到增强路径算法性能和适应环境变化的效果。这类算法的规划路径更加适用于复杂环境,体现了混合式路径规划算法的优越性,也提供了新的研究路径规划的方法和方向。总的来说,尽管目前国内外路径规划方面开展的研究工作较多,但是尚需努力提高算法效率和改善路径质量和适应性。1.3论文研究内容在动态多障碍的复杂场景中,轮式机器人传统路径规划算法暴露出诸多弊端,像冗余节点过多,会增加计算负担和规划时间;路径不平滑,不符合机器人运动学特性,影响运行稳定性;还有容易陷入局部最优,导致规划出的路径并非全局最优解等问题。为解决这些难题,本研究提出一种改进A*融合DWA算法。研究内容主要分为三个部分,接下来会依次介绍。第一部分是改进A*算法设计。本文在A*算法的启发函数中引入动态权重,根据搜索节点的实时位置改变启发函数的权重,平衡搜索效率与路径最优性,并且采用三次准均匀B样条曲线对路径进行平滑优化。第二个部分是改进DWA算法设计。提出基于模糊控制的动态窗口法,以改进A*生成的全局路径作为局部规划的引导,通过实时调整航向角、避障安全、速度、路径偏差四个子评价函数权重,增强算法在复杂环境中的自适应能力。第三部分是混合算法实现与验证。基于ROS平台搭建轮式机器人导航系统,通过多尺度栅格地图仿真实验验证改进算法的性能。并且在动态多障碍场景下进行实物实验,对比传统算法与改进算法的路径长度、运行时间、平滑度等指标,验证算法的实用性与鲁棒性。1.4论文结构安排本文实现的是在动态多障碍场景下针对轮式机器人目标可达性优化算法的研究,一共分为五章,论文结构图如图1.7所示。接下来是对每一章内容的详细介绍。图1.7本文内容结构图第1章绪论。一开始先论述了轮式机器人路径规划的研究背景与意义,进一步总结分析了全局与局部路径规划算法的国内外研究现状,最后明确本文的研究内容与结构框架。第2章基于改进A*的全局路径规划算法。一开始先详细介绍了传统A*算法的理论基础,接着提出改进启发函数与路径平滑方法,最后通过仿真实验验证改进算法有效性。第3章基于DWA改进的局部路径规划算法。一开始先介绍了传统DWA算法的基本内容,接着将改进后A*算法与DWA算法融合,同时,将局部路径与全局路径的偏差引入DWA算法的评价函数,再设计模糊控制,通过小车与障碍物和目标点距离实时调整各个子评价函数的权重,最后通过仿真验证改进算法的有效性。第4章基于ROS的轮式机器人路径规划实物验证,一开始先介绍了ROS平台与机器人导航系统,接着分别在静态与动态多障碍环境中进行实物实验,证明了改进的有效性。第5章结论与展望,先总结本文的研究成果,接着针对本文没有涉及的方面展望未来研究方向。2基于改进A*的全局路径规划算法重庆大学本科学生毕业论文(设计)2基于改进A*的全局路径规划算法2.1引言全局路径规划算法会为机器人的自主导航提供全局的大方向,所以其优劣一定程度上直接影响移动机器人的性能,同时为赋予混合算法良好的性能,全局路径规划算法应起到奠定牢固基石的作用。因此,本章将对A*算法进行研究改进。2.2传统A*算法基本原理A*算法是一种最常见的全局路径规划算法,当我们在地图已知的情况下,确立出起点与目标点之后,它可以绕开障碍物,综合考虑当前节点的代价值以及通过启发函数计算的预估代价值,自动生成符合评价函数的最优路径。A*算法通常应用于二维栅格地图中,如图2.1所示,其路径搜索如下:初始时将地图分成多个网格节点,路径规划环节,每次迭代筛选子节点之际,均需估量相邻网格的消耗大小,优先选取代价值最小的相邻节点来扩展路径,直至最终确定目标坐标点。图2.1A*算法路径搜索原理图A*算法的关键运作机制是协同运用open列表和closed列表,open列表承担管理已完成扩展但未被选作搜索路径的节点的职责,closed列表用于存储已确定最优路径的节点REF_Ref21319\w\h[43],该算法的迭代过程如下:从起点作为初始路径点开始,逐层次扫描相邻节点,借助启发式评估函数在open列表中挑选评估最优的候选点并转移到closed列表。以这个最优节点为基础进行二次寻优,筛选出符合条件的相邻节点加入待选集合,新节点进入开放列表时要同时契合三个条件:其一,要处于可通行的自由空间范围,其二,不能在历史待选队列中有重复记录,其三,从起点到该节点的实际代价值要小于系统存储的原始路径成本。经过上面分析,传统A*算法的路径搜索过程的伪代码如图2.2所示。图2.2通过学习A*算法伪代码,可以发现A*算法的路径搜索过程充分体现了其核心在于评价函数,具体上来说是启发数的运用。传统A*算法的评价函数如式(2.1)所示。F(n)=G(n)+H(n)(2.1)式中F(n)为A*算法综合评价函数;G(n)为从起点到当前节点的实际代价值;H(n)为当前节点到目标点的预估代价值,也就是启发函数。在A*算法中,启发式函数H(n)的精确度会影响路径规划得到的路径质量与效率,这里有两种极端状况,一方面,当启发式函数H(n)值趋近零值时,算法退化为Dijkstra算法,会遍历所有可能路径节点,但是在动态多障碍物的环境中,规划时间因节点冗余度而增加。另一方面,当H(n)远高于估实际代价时,算法则表现为广度优先搜索特性,虽能快速扩展搜索范围但可能遗漏最优路径。2.3A*算法改进2.3.1启发函数改进由上一节分析可得在A*算法中,启发式函数H(n)的选择对算法的搜索效率和路径质量有重要影响。欧几里得距离与曼哈顿距离是常用的启发式函数,如图2.3所示。图中红色直线与蓝色直线分别代表代表欧氏距离与曼哈顿距离。图2.3A*算法的常见启发式函数示意图当前实际代价值主要用以判断当前路径的优劣,预估代价值则影响节点趋向于目标点的速度。只考虑当前实际代价值,可以保证规划出最优路径,但规划效率可能会很低;只考虑预估代价值,可以快速规划出趋向于目标点的路径,但不一定保证路径最优。经过上述对启发式函数的分析,可以明确在选择启发式函数时,需要根据具体问题进行权衡,设计更适合的启发式函数。本文提出通过实时分析当前节点与目标点的位置关系,对启发式函数权重进行动态调节。其核心思想为在路径搜索的初始阶段,当节点距离目标点较远时,优先强化启发式函数的导向作用,通过提升预估代价H(n)的权重系数,引导搜索过程快速趋向目标区域,从而提高全局搜索效率;当节点进入目标邻近区域时,则逐步增强实际代价G(n)的权重占比,使算法聚焦于局部路径质量的精细化评估,确保最终路径的完备性和最优性。本文引入权重因子w,合理分配实际代价值与预估代价值比重,优化评价函数,提高传统A*算法性能,如式(2.2)所示。w=1+a⋅(r/R)(式中,R是起点到目标点的距离,r是当前节点到目标点的距离,a为固定权值。改进后的评价函数如式(2.3)所示。F(n)=G(n)+w⋅H随着A*算法向前推进,节点的位置不断变化,在改进后的评价函数中,影响启发函数权重值的权重因子w会进行动态变化。在路径规划开始的初期,当前节点距离目标点较远时,权重因子w较大;在节点不断朝着目标点靠近的过程中,权重因子w会逐渐减小;当临近目标点时,权重因子较小。通过对启发式函数施加权重因子,能够动态调节评估模型对候选节点的筛选机制,进而影响移动机器人在动态障碍物环境或复杂地形中的全局路径规划效果。2.3.2路径平滑改进在二维栅格地图中,传统A*算法完成路径规划得到的是一个一个的栅格节点,再将其依次相连,得到最终路径规划的轨迹,所以在生成的轨迹中会存在大量的拐点,造成路径不平滑现象。这种几何特性与轮式机器人的运动学约束存在显著偏差,可能引发运动控制误差并降低作业效能。均匀与非均匀B样条曲线优化路径时不覆盖首尾端点,二次B样条曲线存在同类问题,分段贝塞尔曲线内部控制点平滑但不连续。为了获得包含首尾端点的平滑路径,本文运用三次准均匀B样条曲线来对路径实施局部调整,对已有路径关键点作插值处理,这样做可以使曲线变得更为平滑,同时还可以在一定程度上降低被撞的风险,较好地契合轮式机器人的运动学约束。三次准均匀B样条曲线示意图如图2.4所示,三次准均匀B样条曲线的经过首尾端点。图2.4三次准均匀B样条曲线示意图设给定区间内(k+1)个控制点,k次B样条曲线方程如式(2.4)所示。pk式中:pj为曲线控制点的坐标向量;j为控制点索引值;m为B样条基函数阶数,0≤x≤1,基函数JJj,m(x)=1m!将m=3代入,可得三次B样条插值基函数如式(2.6)所示。J02.4仿真实验对比与分析为了验证改进A*算法的优越性,本章节设计了20*20、30*30、50*50三种不同规模的栅格地图,对上文所改进的算法进行仿真实验,其中上文提到的固定权值a设置为0.4。在20*20的栅格地图上,得到仿真结果的路径对比如图2.5所示,搜索域对比如图2.6所示,仿真实验数据如表2.1所示。图2.520*20地图中改进A*路径对比图传统A*算法搜索域改进A*算法搜索域图2.620*20地图中改进A*搜索域对比图表2.120*20地图中仿真实验数据算法路径长度运行时间/s传统A*算法28.04160.042改进A*算法28.01250.018改进A*平滑算法28.28970.018在30*30的栅格地图上,得到仿真结果的路径对比如图2.7所示,搜索域对比如图2.8所示,仿真实验数据如表2.2所示。图2.730*30地图中改进A*路径对比图传统A*算法搜索域改进A*算法搜索域图2.830*30地图中改进A*搜索域对比图表2.230*30地图中仿真实验数据算法路径长度运行时间/s传统A*算法53.45580.176改进A*算法53.25640.090改进A*平滑算法53.89150.090在50*50的栅格地图上,得到仿真结果的路径对比如图2.9所示,搜索域对比如图2.10所示,仿真实验数据如表2.3所示。图2.950*50地图中改进A*路径对比图(a)传统A*算法搜索域(b)改进A*算法搜索域图2.1050*50地图中改进A*搜索域对比图表2.350*50地图中仿真实验数据算法路径长度运行时间/s传统A*算法82.08330.535改进A*算法82.06990.121改进A*平滑算法82.37410.121图中的黑色部分为障碍物区域,黑色折线对应传统A*算法规划出的路径,蓝色折线是通过改进启发函数得到的改进A*算法规划出的路径,红色曲线为改进后的A*算法加上平滑处理后规划出的曲线。黑色阴影部分为传统A*算法搜索时遍历的节点,紫色阴影部分为改进后A*算法搜索时遍历的节点。由图2.5、图2.7、图2.9,结合表2.1、表2.2、表2.3分析可得,从路径规划的长度上来看,分别在规模大小、障碍物设置均不同的地图下,改进A*算法的路径规划的路径长度均有略微减小,证明了改进A*算法对优化路径长度的有效性。虽然,在对A*算法加入平滑处理后,路径长度最长,这是因为在每个拐点处,将折线变化为圆弧时,会不可避免使路径长度变长,相当于牺牲了部分路径长度得到了更加平滑的路径曲线,更加符合实体机器人的运动学约束。接着从运行时间上来看,无论是改进A*算法还是加入平滑处理后的A*算法,运行时间都显著优于传统A*算法,其中,加入平滑处理后得到的规划时间并没有明显变化,可以得到平滑处理未额外增加计算负担,未影响核心搜索过程。改进后A*算法想比与传统A*算法运行时间平均下来减少了60%,这表明了改进后的A*算法在提高路径规划效率方面具有显著优势。再由图2.6、图2.8、图2.10分析可得,改进A*算法的遍历节点数明显少于传统A*算法遍历的节点数,这是由于传统A*路径规划算法在搜索过程中容易产生冗余节点扩展,尤其在启发式方向与目标点存在偏差时更为显著。产生这种情况的根本原因在于传统A*算法的优先级判定准则为当多个节点具有相同综合评估值时,系统默认选择历史代价最小的节点进行扩展。这种机制导致搜索过程过度偏向起始区域,引发无效区域的节点遍历。而改进后的A*算法,在路径规划前期,遍历节点数较少,也符合在前期启发函数的动态权重因子较大,引导路径搜索过程快速趋向目标区域的预期;在路径规划后期启发函数的动态权重因子较小,搜索域逐渐变大,使算法对局部路径质量精细化评估。这表明改进后的A*算法大大提高了全局的搜索效率。经过上述的对比分析,可以表明通过引入动态权重因子不仅可以保持路径最优性还大大提搞了规划效率。本文引入三次准均匀B样条对轨迹进行了平滑处理,虽然以轻微路径长度为代价,但是换取了更平滑的路径,适合轮实际情况下式机器人在自主导航过程且规划与搜索效率优势得以保留。2.5本章小结本章主要论述了基于A*算法的全局路径规划算法,先介绍了传统A*算法的基本原理,分析了传统A*算法的启发函数对算法性能方面的影响,在此基础上,引入动态权重因子对启发函数进行改进,并且采用三次准均匀B样条对轨迹进行了平滑处理,接着针对上述算法分别在不同规模与障碍物的地图上进行仿真实验,主要从路径规划长度、时间、搜索域三个方面进行分析,验证了对A*算法的改进是有效果的。3基于DWA改进的局部路径规划算法重庆大学本科学生毕业论文(设计)3基于DWA改进的局部路径规划算法3.1引言轮式机器人在实际工作过程中,很少会出现当前地图是完全已知并且完全不变的状态,并且,在轮式机器人移动过程中,往往会出现动态障碍物的干扰,此时光靠全局规划算法,由于环境更新较慢、路径搜索时间过长等原因,很难完成动态避障的效果,可能导致机器人撞上障碍物。为了增强轮式机器人对环境的适应性,通常都引入局部规划算法进行动态避障。于是本章将对局部规划算法中最常见的DWA算法进行研究与分析。3.2DWA算法基本原理分析不同于上一章节介绍的A*算法可以直接根据地图得到轨迹,DWA算法是基于机器人的运动模型,在满足约束条件的前提下计算一个有效的速度搜索空间的方法。DWA算法流程图如图3.1所示。DWA算法主要包括移动机器人运动学模型的建立、速度采样空间的建立、对模拟轨迹进行评价,最优轨迹的生成等阶段,需要注意的是,速度采样空间的建立有机器人自身性能、最大速度、最大加速度等限制,会在符合条件的速度范围内,以设定的采样频率,完成对速度的采样。而对模拟轨迹的传统评价函数是由速度大小、与障碍物的距离、与目标点的方向角这三个指标构成,综合三个指标得出一个分数,最终通过分数的大小选取出最优的轨迹,并驱动机器人沿着最优轨迹前进。当生成的轨迹到达目标点时,算法结束;若未到达目标点,则重复上述步骤,继续进行规划并选取最优路径,直到轨迹到达目标点至此结束DWA算法。图3.1DWA算法流程图3.2.1轮式移动机器人运动学模型的建立在应用DWA算法生成模拟轨迹之前,需要构建移动机器人的运动学模型,以便准确提取机器人的速度组合和运动学参数。出于简化移动机器人模型表达的意图,假设驱动系统达成线速度与角速度的分别控制,在给定的时间区间当中,机器人的移动路径可等效为直线和圆弧的组合形态,规划算法仅处理相邻时刻的状态差异状况。如图3.2所示。这种设定既能很好模拟出机器人的运动学规律,又能清晰展示出避障的全过程。图3.2移动机器人运动学模型移动机器人的完整轨迹是由n个采样周期的n条小轨迹组成的,而采样周期较短,因此可以假设移动机器人在一个采样周期内的运动为直线运动,在采样周期内机器人在单位时间内沿着坐标系移动了vtΔt段距离,将速度vt向x轴和Δx=vtΔt其中,Δx、Δy分别表示在坐标系中两个方向上的位移,vt表示移动机器人在t时刻的速度,θt为移动机器人在t时刻的航向角,∆t表示采样周期,wt表示移动机器人在t设t时刻机器人的位置为(x,y),,那么t+1时刻的机器人位置为t时刻的位置加上∆t的位置和角度增量,则t+1xt+1=xt其中(xt+1,yt+1)为t+1时刻机器人的位置,θt+1移动机器人为t+1时刻的航向角度。需要注意的是根据上面分析,我们可以得出移动机器人的运动状态转移过程如图3.3所示。图3.3运动状态转移过程3.2.2DWA算法的速度采样空间确定了移动机器人的运动学模型之后,根据移动机器人当前的运动状况,估计其速度范围。由移动机器人运动学分析可知,机器人自身存在最大速度和最小速度的限制,因此采样的速度如式(3.3)所示,约束在一定范围之间。Vm=ν,ων∈ν移动机器人电机的功率限制了机器人在一个采样时间内∆tVd=其中νc、ωc分别表示机器人当前线速度和角速度,νa、ωa分别表示最大线加速度和最大角加速度,同时,机器人需要保证能够安全避开障碍物,且在撞上障碍物之前速度必须降到0,所以采样速度如式(3.5)所示,约束在一定范围之中。Va=ν,ω≤其中Dν依据上文所述三方面的约束条件,要同时满足这三条限制条件,于是取三种速度约束的交集,最终速度采样约束Vr,Vr=Vm在实际生成速度采样空间过程中,会先对速度向量空间Vr中的线速度ν和角速度ω分别进行离散化,得到一系列离散速度ν,ω。接着,根据机器人运动学模型模拟出一段时间内所有速度对应的路径。速度采样空间如图3.4所示,其中,轨迹1和轨迹5是就对应着最大线减速度νb和最大角加速度ωa下形成的轨迹,该轨迹的特点是轨迹长度最短、最弯曲;而轨迹2和轨迹4则是在最大线加速度νa和最大角加速度ωa图3.4速度采样空间图3.2.3DWA算法的评价函数在上述所有约束条件下采样得到的速度空间中含有若干条可行的模拟轨迹,所以DWA算法还需要构建评价函数来对这些可行的模拟轨迹进行筛选,以得到最优轨迹,实现路径规划。传统DWA算法的评价函数如式(3.7)所示。Gν,ω=σα·Hν,ω其中Hν,ω为航向角评价函数、Dν,ω为避障安全性评价函数、Vν,ω为速度评价函数;σ为平滑系数;航向角评价函数Hν,ω是用来评估模拟轨迹中的末端位置点的运动方向朝向目标点的程度,如图3Hν,ω=180°−θ(其中,红色箭头为末端位置点朝向目标点方向,蓝色箭头为当前模拟轨迹的运动方向,所以θ为模拟轨迹的末端位置点的航向与该点朝向目标点方向的夹角。夹角θ越小,Hν,ω函数值就越大,移动机器人的运动方向越朝向目标点方向图3.5航向角示意图避障安全性评价函数Dν,ω是利用模拟轨迹上的点距离最近障碍物的最短距离,来证明生成轨迹是处于安全状态的,其中避障安全性示意图如图3.6Dν,ω=mindmin其中,dmin是模拟轨迹上的任意一点中,距离最近障碍物的最短距离,dset是提前设定的传感器能够检测到的最大距离值,当距离移动机器人dset范围,也就是传感器能检测的范围内没有障碍物时,函数值取dset值,在传感器检测范围内有障碍物时,函数值取dmin值。模拟轨迹距离障碍物距离越远或者当前传感器检测不到障碍物时,Dν,ω函数的值图3.6避障安全性示意图(3)速度评价函数VVν,ω用来评估模拟轨迹上移动机器人的移动效率,Vν,ω=vl其中,vl为当前由于上述三个子评价函数的物理意义不同,量纲也不同,比如移动机器人最大速度可能只有3m/s,但其航向角评价函数的值最大可达到180。,这样会导致各项的比重严重不均,影响对轨迹的准确评价。所以为了消除不同评价子函数之间的量纲影响,同时也避免这三个子评价函数中某一项值出现过大或过小的情况,需要对它们做归一化处理,使他们的值被归一化在[0,1]。三个子评价函数的Hnormalizei=HDnormalizei=DVnormalizei=V其中,Hi、D(i)、3.3DWA算法改进3.3.1传统DWA算法的缺陷传统的DWA算法虽然能够在简单障碍物环境中实现实时有效的路径规划,但是由于其评价函数中采用固定的权重组合,在多障碍物的复杂环境中进行路径规划时就时常会出现路径规划不合理的情况,可能会出现这几种情况:1、当避障安全的权重过大时,移动机器人可能就会选择从障碍物密集区域的外围绕行,从而使规划出来的路径变长;2、航向角权重过大会导致移动机器人无法绕开障碍物,而权重过小时会导致移动机器人在目标点周围绕行而无法到达目标点;3、移动机器人的速度和安全无法同时做到最优,例如为了保证移动机器人的前进速度,常常会选择过大的速度,从而导致移动机器人与障碍物的距离过近,安全性降低。除此之外,陷入局部最优是传统DWA算法中最容易出现的问题,如图3.7所示。(a)局部最优解(b)理想路径图3.7DWA问题示意图图3.7(a)所示路径为算法在遇到两个障碍物时,受评价函数的影响,机器人会放慢速度优先选择远离障碍物的路径,最终陷入局部最优问题,左右徘徊行走到障碍物的中间位置最终停滞下来。当调小避障权重因子时,会产生图3.7(b)所示理想路径,但是此时机器人距离障碍物过近,安全性大减折扣。3.3.2引入全局规划算法经过上一小节的分析,针对于传统DWA算法的缺陷,本小节结合上一章的改进A*算法和局部规划DWA算法的优势,将改进后的A*算法与DWA算法进行融合,实现高效、安全的路径规划。混合路径算法的流程图如图3.8所示。图3.8混合算法流程图接下来重点分析一下A*算法与DWA算法融合的算法,本文将混合路径算法的流程主要分为三个,全局路径规划部分、局部路径规划部分、轮式机器人位置实时更新部分。对于全局路径规划部分,是在接收到起点与目标点的位置信息后,使用A*算法先在已知地图生成一条从起点到终点的全局最优路径以及最优路径经过的栅格节点(xi,yi图3.9局部目标点选择示意图一方面,全局路径使DWA算法避免出现局部最优导致的徘徊停滞不前;另一方面,滚动窗口机制确保了路径规划的实时性,为A*算法提供全局纠偏能力。3.3.2评价函数改进由于在上一小节我们选择引入了全局规划A*算法,以A*算法得出的全局路径上的栅格节点作为局部规划DWA算法的局部目标点,为了让A*生成的最优全局路径更具有参考性,即让DWA算法生成的路径最好一路沿着最优全局路径走,不会太偏离全局路径,以免出现走入死胡同的现象,于是本文将距离修正函数C(ν,ω),即DWA算法待选轨迹上末端的节点到最优全局路径的最小欧式距离的倒数,引入总体评价函数Gν,ω之中,并附以距离修正权重λG3.3.3模糊控制DWA权重由上文分析,DWA算法在固定权重的状态下,面对复杂的环境会陷入局部最优或者安全性无法保障,无法适应环境的变化,严重影响了路径规划的性能。据此,本文引入了引入模糊控制器,对评价函数的权重进行实时自适应调整。整个模糊系统输入为与障碍物的距离D_obs和与目标点的距离D_goal,输出为评价函数的各个权重。这样就可以通过机器人当前位置与障碍物的距离和与目标点的距离实时调整DWA算法中每个子评价函数所对应的系数,更好适应不同场景。比如,当距离障碍物过近时,而目标点较远,优先考虑不会撞上障碍物,会选择较大的避障安全性评价函数Dν,ω的系数β;相反如果与障碍物较远,则更注重是否快速到达目标点,会选择较大的航向角评价函数Hν,ω的系数α和距离修正函数C(表3.1模糊控制规则序号输入输出D_obsD_goalαβγλ1VSVSSSMS2VSSSMMS3VSMSMMS4VSBSBBS5SVSMVSMM6SSMSMM7SMSMMM8SBSBBM9MVSMVSMVS10MSMVSMS11MMMVSMM12MBMVSBB13BVSBVSSVS14BSBVSSVS15BMBVSMS16BBBVSBB表中输入变量的模糊集为,对应距离的很近、近、适中和远;输出变量的模糊集为,对应输出权重数值的极小,小,适中和大。以规则3举例,当机器人距离障碍物很近、终点适中时,应在一定程度上放弃跟踪全局路径及目标点,优先完成避障,以保证自身安全,由定义的输出规则可知此时航向权重α选取极小值、避障权重β选取最大值、速度权重γ选取中值、距离修正权重λ选取极小值,满足机器人在速度适中的基础上,优先避障的任务。子评价函数权重的具体输出隶属度函数如图3.10所示(a)α输出(b)β输出(c)γ输出(d)λ输出图3.10评价函数权重的输出隶属度函数图3.4仿真实验对比与分析为了验证改进DWA算法的优越性,本章节设计了不同障碍的栅格地图,对上文所改进的算法进行仿真实验,并与传统DWA算法,以及其他全局规划算法混合DWA算法做出比较。第一种地图主要针对传统DWA易陷入局部最优的陷阱问题,专门在距离最近的对角线上设置“U”型陷阱,仿真路径规划结果与一些相关参数图如图3.11、3.12所示,具体数据对比如表3.2所示。图3.11传统DWA仿真路径图(a)仿真路径图(b)线速度输出图(c)角速度输出图(d)航向角输出图图3.12改进A*融合DWA路径仿真结果图表3.2仿真实验数据算法路径长度运行时间/s拐点/个拐角/deg传统DWA算法改进DWA算法21.96236.2484126.4图中黑色栅格为障碍物,白色栅格为可通行区域,粉色星号为起点,红色星号为终点,蓝色实线为DWA局部规划路径,粉色虚线为改进A*所规划全局路径。由实验结果可得,改进后的DWA算法可以有效跳出局部最优解及“U”形陷阱情况,且与障碍物保持一定距离,顺利达到终点。而传统DWA算法无法到达终点,证明了改进的有效性和可行性。接下来设置障碍物覆盖率均为20%但障碍物分布不同的两种的栅格地图,将传统DWA算法、传统A*融合DWA算法、改进后A*融合DWA算法、RRT*融合DWA算法、PSO融合DWA算法拿来进行仿真对比,从而证明本文使用的改进算法的有效性。在地图1中的仿真结果图如图3.13、3.14、3.15、3.16、3.17所示,仿真实验数据如表3.3所示。图3.13地图1中传统DWA路径图(a)仿真路径图(b)线速度输出图(c)角速度输出图(d)航向角输出图图3.14地图1中传统A*融合DWA算法仿真结果图(a)仿真路径图(b)线速度输出图(c)角速度输出图(d)航向角输出图图3.15在地图1中改进A*融合DWA算法(a)仿真路径图(b)线速度输出图(c)角速度输出图(d)航向角输出图图3.16地图1中RRT*融合DWA算法仿真结果图(a)仿真路径图(b)线速度输出图(c)角速度输出图(d)航向角输出图图3.17地图1中PSO融合DWA算法仿真结果图表3.3在地图1中的仿真实验数据算法路径长度运行时间/s拐点/个拐角/deg传统DWAA*融合DWA30.411132.9219351.9改进后A*融合DWA29.21980.9182280.5RRT*融合DWA29.799123.6125180.9PSO融合DWA30.125104.7987150244.6由仿真路径图可知,在地图1中,传统DWA算法并没有能够到达终点,陷入了局部最优的状况,停滞在原地。而与各种全局规划相融合的DWA算法能够顺利到达终点,再一次证明了融合全局规划算法的正确性。接下来重点分析融合不同的全局规划的DWA算法,由表3.3分析可得,改进后A*融合DWA算法与传统A*融合DWA算法相比,路径长度上有一定程度的减少,而且缩减了39%的运行时间,大大提高了路径规划效率,拐点数与拐角也均有减少,表明改进后的A*融合DWA算法生成的路径曲线更加平滑。由图3.14与图3.15中的图(b)速度输出图可以看出,改进后A*融合DWA算法的线速度波动程度明显小于传统A*算法融合DWA算法,使得生成的路径更加适应轮式机器人实际的移动。以上分析都说明了改进后的A*融合DWA算法相比于A*融合DWA算法的优越性。虽然RRT*融合DWA算法与PSO融合DWA算法的平滑性要优于改进后A*融合DWA算法,但改进后A*融合DWA算法在路径长度,与运行时间上都展示出优越性,经过上述分析可得改进后A*与DWA的融合在路径质量、实时性、效率与平滑性上实现了最佳平衡,适合动态复杂环境的应用。在地图2中的仿真结果图如图3.18、3.19、3.20、3.21、3.22所示,仿真实验数据如表3.4所示。图3.18地图2中传统DWA路径图(a)仿真路径图(b)线速度输出图(c)角速度输出图(d)航向角输出图图3.19地图2中传统A*融合DWA算法仿真结果图(a)仿真路径图(b)线速度输出图(c)角速度输出图(d)航向角输出图图3.20在地图2中改进A*融合DWA算法图3.21地图2中RRT*融合DWA算法仿真结果图图3.22地图2中PSO融合DWA算法仿真结果图表3.4在地图2中的仿真实验数据算法路径长度运行时间/s拐点/个拐角/deg传统DWAA*融合DWA28.604145.3203277.5改进A*融合DWA28.043103.8122165.8RRT*融合DWAPSO融合DWA由每一种算法的路径仿真图可得,在地图2中,故意设置“U”型陷阱时,局部最优解的问题更加显著,传统DWA算法、RRT*融合DWA算法与PSO融合DWA算法均陷入了局部最优的状况,未到达终点,表明这三种算法在解决局部最优问题中还有缺陷。A*融合DWA算法与改进后A*融合DWA算法能够达到终点,同在地图1中的表现一致,在路径长度、运行时间、拐点数、拐角和速度波动程度方面,改进后的A*融合DWA算法都明显优于A*算法融合DWA算法,这进一步证明了在前文所示本文所做的改进是有一定效果的。经过两种不同地图的分析,都展现出了改进后的A*融合DWA算法的优越性,于是在后面实物验证过程,本文也选择改进后的A*融合DWA算法部署到实物小车上,完成本论文的任务。3.5本章小节本章首先介绍了传统DWA算法,接下来指出的传统DWA算法的缺陷,针对这些缺陷从融合全局规划算法、评价函数、模糊控制三方面进行改进,最后用仿真证明了改进的A*融合DWA算法的有效性,并且将此算法作为下一章实物验证所用算法。4基于ROS的轮式机器人路径规划实物验证重庆大学本科学生毕业论文(设计)4基于ROS的轮式机器人路径规划实物验证4.1引言上一章实现了基于改进A*与DWA融合算法的路径规划算法,并通过仿真实验在二维平面验证了算法的有效性。本章将在上一章的基础上,将设计的混合路径规划算法基于ROS平台实施到轮式机器人之中,验证在动态多障碍场景下,本文算法对于轮式机器人目标可达性的性能。4.2ROS介绍ROS(RobotOperatingSystem)是基于Linux系统的著名开源机器人开发平台,为机器人的研究和应用提供了灵活的软件开放环境。该操作系统由斯坦福实验室研发,诞生于2007年,后面由WillowGarage接手后逐渐发展成现在一个完善的系统。ROS的出现是为了提高机器人研发中的软件复用率,它具有点对点设计、多语言支持、架构精简且集成度高、组件化工具包丰富和免费并且开源的五个特点。具体就这些特点展开来说,其中点对点示意图如图4.1所示,每一个运行进程都以一个节点的形式运行。ROS能以C++、Python、C、Java等语言实现功能开发,各类模块均能采用多种语言来开发具体功能,不论使用何种语言编码,所有节点都可借助通用接口实现跨语言的交互。ROS构成的框架简洁且高集成度,一方面一个项目中的每个节点都可以单独编译,而另一方面由于它的接口要求统一,大大提高了软件的复用性。ROS中功能库非常齐全,比如rosbag用来记录数据、gazebo用来物理仿真环境和rviz用来可视化等,可以快速完成搭建任务,方便数据的采集、处理和分析。ROS不是一个单独的软件,它集通信机制、开发工具、应用功能和生态系统为一体。图4.1ROS点对点示意图ROS的核心功能包括消息传递、参数服务器、服务调用、管理包等。其中消息传递在使用ROS中很重要也是最常用的一个通信机制,使得节点之间可以发生和接收相关代码、命令或数据等。而关于节点,在ROS中,机器人的传感器、执行器等硬件设备会被抽象为节点,因此可以进行合理配置与交互。节点与节点之间通过交换数据页不需要建立直接的联系,通常也是通过一方发布主题,另一方订阅主题来完成。正是这种通信方式使得节点可以扩展和独立运行。ROS的整体结构如图4.2所示,可以清楚看到ROS的层次性结构,最小的为节点,最大的为开源社区。软件设计普遍采用多功能集成策略,一个ROS开源社区通常由多个软件仓库组成,多个节点经过整合能够完成既定功能目标,形成实现专项功能的功能集合,元功能包是功能耦合的多个功能包集成体,若干元功能包可进一步整合到软件仓库。图4.2ROS整体结构图接下来重点介绍一下后面会用到的可视化平台Rviz,如图4.3为运行Rviz时的可视化界面。它是一款强大的可视化工具,可以让用户直观得观察机器人的运动状态、传感器得到的一些数据以及整体环境。Rviz本身是一个3D界面,可以得到机器人的轨迹、点云数据、地图等信息,这可以帮助软件开发者进行可视化分析,比起肉眼观察更可靠,进一步发现优化成果并梳理以后优化方向。于是,在导航实验中,Rviz是必不可少的工具,它能清晰为我们展示路径规划的结果,以便我们评估自主导航算法的性能,及时针对实验结果做出相应的调整。图4.3Rviz运行图4.3路径规划实物验证4.3.1基于ROS的移动机器人导航框架通常情况基于ROS的导航框架都如图4.4所示。在整个导航体系里,move_base功能包在机器人系统中具有核心地位,这一模块订阅着激光雷达数据、map地图信息以及amcl定位数据等各类输入。通过move_base功能包进行处理,路径规划任务分为全局层面与局部层面两个维度,最终输出控制指令转化为速度指令可被机器人执行,机器人的自主导航功能由此得以实现。图4.4ROS导航框架图本文ROS移动机器人的具体导航框架如图4.5所示。具体步骤如下:(1)首先启动gmapping算法,完成松灵小车定位并且建立起室内地图,通过map_server的指令将地图保存起来;(2)将已知栅格地图载入移动机器人之中,使用AMCL的全局定位和重定位功能进一步明确在当前已知地图的具体位置;(3)配置move_base节点以执行全局路径规划,获取初始点到目标点的最优全局轨迹,随后将全局路径传至局部规划器;(4)当局部规划器接收到全局路径后,对全局路径进行局部目标点采样,根据局部规划的结果制定速度指令并发送到执行端;(5)将生成的速度消息传递给松灵小车的底盘,驱动机器人沿着预期路径进行移动,直到到达目标点完成导航任务。图4.5本文具体导航框架图其中,需要注意的是自己设计的改进算法要通过nav_core接口集成进move_base功能包之中,具体上来讲要将改进算法通过pluginlib插件的形式生成路径规划控制器并将其注册到nav_core之中,这样才能在move_base直接调用对应的插件实现预期的算法。4.3.2在动态多障碍环境下实物导航实验实验中使用的轮式机器人是松灵机器人开发的四轮移动机器人SCOUTMINIPro,也被简称为松灵小车,其实物图如图4.6所示。SCOUTMINIPro是基于ROS进行编程操作,具有强大的越野性能和灵活的控制系统,集成了激光传感器、视觉传感器、IMU传感器等各种丰富的传感器,适合完成轮式机器人路径规划算法的验证和作为自动驾驶平台进行开发与改进。图4.6轮式机器人SCOUTMINIPro实物图本文进行实物验证选取的场地为重庆大学卓越工程师学院的教学楼五楼,并人为将屏风、凳子、桌子作为障碍物,构成多障碍环境,实地场景如图4.7所示。首先使用gmapping算法,对整个场地进行扫描并建立全局地图进行保存,所建立的全局地图如图4.8所示。可以清晰的看见图中所示的所以障碍物都被识别得到,以白色部分表示。但其中地图的构建中出现了一些外射溢出现象,是由于在构建封闭场景时,用屏风挡住过道,但因为屏风结构情况依然会有错位挡不住的现象,加上我们使用的是激光雷达,

温馨提示

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

评论

0/150

提交评论