尹力伟,梅志千,谢保春,李向国
(河海大学机电工程学院,江苏常州213022)
智能清洁机器人是家用服务机器人的一种,具有扫地省时,省力、功能多样化、轻便小巧等特点,可大大减轻人的劳动负担,正成为机器人研究的热点,它具有较多的科研价值和广阔的市场前景[1]。
针对清洁机器人在室内的路径规划算法,国内外许多学者进行了大量研究,蒋玉杰等[2]提出在构建的栅格地图下,运用遗传算法搜索策略在起点与目标点之间寻求最优路径,机器人只需在这两点之间的不同路线上进行来回清扫就能达到全区域覆盖的要求。马正华等[3]将工作环境划分为若干个无障碍的小区域,然后以深度优先搜索算法确定每一个区域的连接顺序,最后以该顺序依次以螺旋收缩算法进行遍历。T.Palleja 等[4]提出了往返式梳字型路径和内螺旋式回字型路径等规划式全区域覆盖路径规划方法,无需建立环境模型。但清洁机器人难以适应未知的室内环境,使它的路径规划算法的研究至今仍然是一个难题[5]。
本研究分析机器人相对定位的数学模型,在微软机器人开发平台MRDS 的环境下,以周学益等[6]提出的迂回式路径规划、包围式路径规划算法为基础,仿真迂回式路径规划、回字形路径规划、包围式路径规划和启发式路径规划算法。针对这4 种路径规划算法在MRDS 中进行仿真实验,将启发式路径规划中激光测距仪的返回数据进行处理。通过比较单位时间内各路径规划算法的转弯角度,得出启发式路径规划算法优于其他路径规划算法的结论。
机器人最基本的运动动作是前进,后退,左转,右转,准确地完成这些动作是机器人完成相对定位的基础。本研究使用双驱动式行走机构模型,借助编码器和电子罗盘,对机器人的相对定位进行运动学分析。
首先,提出一些必要的假设和说明,把双驱动轮行走机构模型理想化:
(1)机器人行走轮与地面滚动摩擦系数较大,不打滑。
(2)车身为刚体不变形。两驱动轮纵向方向完全平行,两轮与地面接触点之间距离保持恒定,两轮不变形,半径相同且恒定。
建立绝对坐标系XOY 和相对坐标系uov,清洁机器人由位置1 运动到位置2,相对定位数学模型图如图1所示。机器人自带的激光测距仪0°方向即位u 轴正方向,180°为u 轴负方向。
图1 相对定位数学模型图
式中:W—两轮间距,D—两轮直径,θ—绝对坐标机器人的航向,ΔS—两个位置机器人的移动距离,x—横坐标,y—纵坐标,a—编码器转一圈的脉冲数,ml—左轮编码器返回的脉冲数,mr—右轮编码器返回的脉冲数。
左、右编码器读出返回的脉冲数ml和mr,电子罗盘读取θ+Δθ 的角度值,式(1,2)即为相对定位的坐标计算公式。
清洁机器人的规划式全区域覆盖路径规划算法无需建立环境模型,实际应用很多而且技术成熟[7-8]。常用的有迂回式路径规划、回字型路径规划、包围式路径规划和启发式路径规划算法等。下面本研究对这些路径规划算法进行具体分析,在MRDS 中以这些具体算法为基础进行可视化编程。
迂回式路径规划的算法如下:机器人向前行走,激光测距仪检测到前方有障碍物,机器人左转90°,向前行走0.3 m 后,左转90°,机器人继续往前行走。激光测距仪检测到前方有障碍物,机器人右转90°,向前行走0.3 m 后,右转90°,机器人向前行走,不断循环以上路径,迂回式遍历地图环境,直到仿真时间结束。
回字形路径规划算法如下:初始设置边长X=0.5 m,机器人向前行走X,左转90°,继续向前行走X,左转90°。然后X 增加0.3 m,即X=X +0.3,机器人向前行走X,重复以上循环。行走的过程中激光测距仪判断前方是否有障碍物,一旦检测到障碍物,机器人立即左转90°,并回到循环状态。机器人以回字形算法遍历地图环境,直到仿真时间结束。
包围式路径规划算法如下:首先机器人以充电点位原点,机器人激光测距仪测量右前方50°方向的距离X,设定初始边界探测距离为X=0.3 m,如果激光测距仪检测到右前方50°方向与障碍物的距离大于或等于X,机器人会向右转,向墙靠近,否则,向左转,拉开与墙的距离。机器人返回到充电原点后,激光测距仪的探测距离增加0.2 m,即X=X +0.2,激光测距仪继续检测右前方50°到障碍物的距离,循环以上过程,直到仿真时间结束。
启发式路径规划算法如下:结合图1 中机器人的相对坐标系uov,机器人开始向前运动,激光测距仪的检测到90°方向的距离小于0.5 m,说明前方有障碍物,机器人停下,并判断0°和180°激光测距仪返回的距离,如果激光测距仪0°的距离大于180°的距离,说明右边的距离较大,机器人右转90°,向该位置时u 轴的正方向运动,如果0°的距离小于180°的距离,说明左边的距离较大,机器人左转90°,向此位置时u 轴的负方向运动,选择结束后,机器人继续向前行走,进入循环状态,直到仿真时间结束,效果如图2所示。
图2 启发式路径规划效果图
MRDS 是一种轻量级实时定向服务的、具有高可扩展性和能够广泛应用在机器人技术的应用环境。MRDS 平台运行时,它能够满足大部分机器人应用的需求[9]。MRDS 支持很多机器人硬件平台,它提供了一套可视化编程语言,可视化编程语言是图形化、模块化的语言,用户可以通过图形模块进行编程[10]。
本研究所选软件有Visual Studio 2008,MRDS 2008 R3,ProMRDS 2008,笔者选择仿真机器人为先锋机器人P3DX,在MRDS 中,对以上4 种路径规划算法进行可视化编程。编写的程序和机器人之间的对应关系是通过配置文件manifest 来完成的,选择机器人的manifest 为simulatedlrf SimpleVisionSim.Manifest.xml来调试程序,这4 种路径规划算法使用相同的室内环境。程序运行时,机器人传感器的数据会发送到特定的网页,随着机器人运动传感器的读数不断刷新,将传感器的数据保存并在Matlab 中分析处理。
MRDS 中Simulated Laser Ranger Finder 的服务模拟了先锋机器人的Sick LMS 200 距离传感器。LMS 200 用一个可旋转的镜子控制激光的发射,镜子旋转时,激光扫描的范围从0°~180°,形成一个扇形区域,当有物体在该扇形区域时,将会把激光反射回传感器,机器人根据激光从传感器发出到反射回来的时间长短来计算与障碍物的距离。
在启发式路径规划算法中,把机器人初始位置时0°~180°激光测距仪的数据进行处理,初始位置时激光测距仪的数据如图3所示。
图3 初始位置时激光测距仪的数据
机器人在激光测距仪90°方向距离障碍物0.5 m处停止,激光测距仪数据返回如图4所示。激光测距仪0°的返回值小于180°的返回值,说明机器人右边有障碍,所以机器人接下来向左转90°,向该位置时u 轴的负方向运动。
图4 距离障碍物0.5 m 处激光测距仪的数据
本研究使用简化方式来定义算法的有效性,将机器人从出发到结束所需要的转弯角度的总和作为评价机器人完成任务能力的标准[11]。机器人转弯角度的总和机器人性能有关,为了使转弯准确,转弯时必须使用较小的驱动力。机器人转弯的角度越大,说明机器人行走的直线距离越少,覆盖的路径越小。在仿真环境中,本研究以120 s 为单位,使用相同的速度控制机器人,比较4 种路径规划算法的转弯角度。
在包围式路径规划中,机器人一直在左右转弯,没有直线行走,包围式路径规划路线图如图5所示。本研究对机器人的转弯角度进行估算。由试验可知,左、右轮动力源百分比为20%和10%时,机器人右转1 s约转25°,左、右轮动力源百分比为0%和20%时,机器人左转1 s 约转50°。试验得出机器人右转总度数比左转总度数多750°,总转弯时间为120 s。由此可计算机器人右转时间约为90 s,左转时间约为30 s,机器人总转弯角度约3 750°。
图5 包围式路径规划路线图
本研究将迂回式路径规划、回字形路径规划、启发式路径规划的总转弯角度直接读出,有关数据如表1所示。
表1 不同路径规划下的转弯角度
由表1 可知,在120 s 内,启发式路径算法的转弯角度最小,行走的直线距离最长,覆盖的路径最大,因此,在使用转弯角度的评价标准下,启发式路径规划算法优于其他算法。
经过仿真试验,以上4 种路径规划算法的各有优、缺点。
迂回式路径规划和回字形路径规划的优点是简单实用,无重复路径,具缺点是遍历环境时有死角位置,无法覆盖全部区域,需要通过机器人的定位和建立环境地图实现机器人的全区域覆盖。
包围式路径规划优点是遍历环境无死角位置,无重复路径。缺点是机器人需要处在封闭的环境中,不能有孤岛障碍物的干扰,而且激光测距仪量程有限,无法检测测量范围以外的环境边界。
启发式路径规划优点机器人根据当前的环境信息确定最佳路径,单位时间内行走的路径最长,转弯角度最小。缺点是机器人行走的路径没有规划,可能会走重复路径。
本研究利用MRDS 具有的强大仿真环境搭建能力,为清洁机器人的路径规划提供了良好的仿真平台。实验结论表明,这4 种路径规划算法实用性和可操作性较强,可以应用于多种机器人实验平台,对清洁机器人路径规划算法的实践具有一定的应用价值。
经过比较,启发式路径规划中机器人能够收集尽可能多的环境信息,并根据当前的环境信息确定最佳路径,在相同时间内,能使用更少的转弯角度,算法优于其他路径规划算法,在实际应用中有更大的推广性。
[1]李 航,宋春华,罗胜彬,等.机器人的研究现状及发展趋势[J].微特电机,2013,41(4):49-51.
[2]蒋玉杰,曾 岑.清洁机器人基于遗传算法的全区域路径规划[J].机械制造,2009,47(5):18-20.
[3]马正华,李 敏,章 明,等.智能吸尘器全覆盖遍历路径规划及仿真实现[J].测试技术,2012,31(2):99-102.
[4]PALLEJA T,TRESANCHEZ M,TEIXIDO M,et al.Modeling floor-cleaning coverage performances of some domestic mobile robots in a reduced scenario[J].robotics and autonomous systems,2010,58(1):37-45.
[5]张英杰.清洁机器人控制系统设计及几何地图匹配定位的实现[D].哈尔滨:哈尔滨工业大学机械工程学院,2009.
[6]周学益.清洁机器人全区域覆盖路径算法与避障控制研究[D].重庆:重庆大学自动化学院,2007.
[7]赵晓东,鲍 方.清洁机器人路径规划算法研究综述[J].机电工程,2013,30(11):1440-1444.
[8]郑向华.基于FluidSIM 的清洗机器人柔性自动跟踪清洗功能设计与仿真实现[J].液压气动与密封,2013(2):83-84.
[9]麦晓春,张新征,杨厚强,等.基于微软机器人控制真平台的路径规划仿真[J].计算机应用,2013,33(S1):55-58.
[10]JOHNS K,TAYLOR T.Professional Microsoft Robotics Developer Studio[M].Indiana:Wiley Publishing,2008.
[11]陈以农,陈文智.计算机科学导论基于机器人的实践方法[M].北京:机械工业出版社,2013.