基于改进模糊算法的移动机器人自主避障研究

2018-06-29 02:51胡静波陈定方吴俊峰
自动化与仪表 2018年6期
关键词:移动机器人测距模糊控制

胡静波 ,陈定方 ,吴俊峰 ,梅 杰 ,李 波

(1.武汉理工大学 物流工程学院,武汉 430063;2.湖北科峰传动设备有限公司,黄冈 438000)

对于移动机器人而言,在其执行探测、侦察和导航等任务时,由于所处环境的复杂性,完全通过人工来控制机器人的运动并不现实。因此,机器人在复杂环境下的自主路径规划,逐渐成为当前移动机器人领域中重要的研究方向[1]。移动机器人的路径规划问题是指在一定环境下,规划或寻找一条从起始位姿到目标位姿的无碰安全路径[2]。避障问题是移动机器人路径规划所要解决的问题之一,其关系到移动机器人能否安全到达目的地。在机器人研究中,反应式导航避障是提高移动机器人在未知环境中的实时性与灵活性的重要手段[3]。

随着发展,遗传算法[2]、神经网络[4-5]和模糊逻辑算法[6-7]等许多人工智能算法逐渐应用到移动机器人的避障领域。其中遗传算法在解决大规模问题时编码困难,时空消耗大;神经网络具有很强的学习能力,但缺乏对于模糊信息的处理与描述能力。而模糊逻辑算法运用自然语言地方式,引入人类经验以实现机器人避障,算法所需存储空间小,广泛应用于移动机器人避障中。在此,针对移动机器人的自主避障展开研究,在保持模糊控制原有特性的基础上,设计了一种改进的模糊逻辑控制算法,利用MatLab构建了移动机器人环境地图。

1 移动机器人避障模型

1.1 环境信息获取

具有感知环境与位置信息的能力是移动机器人实现自主避障的前提和基础。激光传感器、红外测距传感器、超声波传感器等都是机器人常用的避障传感器,而其中超生传感器技术成熟、抗干扰能力、强成本低[8],在移动机器人避障中应用较为广泛。超声波测距的基本原理[9]是不断检测超声波发射后遇到障碍物所反射的回波,通过时间渡越法来计算距离,其计算公式为

式中:D为障碍物与超声波测距传感器的距离;T为超声波从发射到返回的时间间隔,即渡越时间;C为声波在介质中的传播速度,在此将其近似为声音在空气中的传播速度,即取C=340 m/s。由式(1)可知,只要测得渡越时间T,即可求得机器人与障碍物之间的距离。

移动机器人在运动过程中会面临转向等问题,如果仅使用单个固定超声波传感器来避障,会产生对障碍物的定位不精确、存在探测盲区、方向性不好等缺陷。但如果采用多路超声传感器来获取机器人周围障碍物信息,要获取较为全面的信息就需要较多的传感器,因而降低了机器人内部空间利用率。另外,超声波传感器波束角在大约30°时,会导致单个超声波传感器在其工作方向上不能准确获得短距离内的障碍物边界信息[10]。

为了解决使用超声波传感器所面临的问题,采用将单个超声波传感器固定于舵机云台,通过舵机驱动实现超声波传感器实现扇形扫描测距的功能,从而实现对机器人周围障碍物信息的获取。扫描测距原理如图1所示,超声波固定于舵机云台上,以固定30°角转动,分别探测7个角度的障碍物距离信息,对每个位置的信息按逆时针方向编号,分别为1~7。

图1 超声波扫描测距角度Fig.1 Ultrasonic scanning ranging angle

对于移动机器人来说,超声波测距传感器只能用来判断机器人本体与障碍物之间的距离,并不具有定位的能力。全球定位系统GPS是一种无线电导航系统,可以用来获取机器人当前时刻及目标点的位置信息,而电子罗盘可实时获取机器人与目标点的夹角信息。超声测距传感器、GPS传感器及电子罗盘的使用,可极大提高移动机器人的对环境及位置信息的获取能力,为移动机器人自主避障功能的实现,奠定了坚实的基础。

1.2 移动机器人运动模型

以两驱动轮移动机器人为例,在二维坐标系下,建立移动机器人运动模型,如图2所示。设移动机器人起始坐标为(x0,y0),目标点坐标设为(xg,yg)。t 时刻机器人坐标位置为(xt,yt),运动速度为 vt,与目标点的夹角为θt。t+1时刻移动机器人处于坐标(xt+1,yt+1)处,此时运动速度为 vt+1,与目标点的夹角为 θt+1。

图2 移动机器人导航避障模型Fig.2 Mobile robot navigation avoidance model

建立图2所示的全局坐标系,在t时刻,移动机器人在全局坐标系下的位姿可表示为

式中:xt,yt分别为移动机器人在全局坐标系XOY下的位置坐标;αt为移动机器人在t时刻的航向角。

令t时刻移动机器人的目标航向角为θt,即移动机器人速度方向与机器人质心与目标点连线之间的夹角;令移动机器人质心在t时刻的速度为vt,则机器人运动学模型为

式中:vt,x,vt,y分别为 t时刻移动机器人质心在 x 方向、y方向上的速度分量;ωt为t时刻移动机器人质心的转向角速度。即有

且有

式中:vtl,vtr分别为t时刻移动机器人左轮、右轮的速度;l为移动机器人左右两轮间的距离。

由式(4)可知,当 vtl=vtr时,有 ωt=0,此时移动机器人做直线运动;vtl>vtr时,移动机器人右转弯;vtl<vtr时,移动机器人左转弯;当 vtl=-vtr时,vt=0,ωt≠0,此时移动机器人将做原地转弯运动。机器人在t+1时刻的位姿为

式中:T为时刻t与时刻t+1的时间间隔。

2 模糊控制系统设计

移动机器人在运动中所处的环境十分复杂,难以建立精确的数学模型来预测障碍物的位置。而模糊控制[11]是以模糊集理论、模糊语言变量和模糊推理为基础的一种智能控制方法,它从行为上模仿人的模糊推理和模糊决策过程,无需建立被控对象的精确模型,因此非常适合于移动机器人的自主避障。

2.1 输入输出及模糊语言描述

设计模糊控制系统的前提是确定系统的输入、输出变量。考虑到超声波测距传感器可以测得周围障碍物的距离信息,移动机器人的速度可以由测速传感器测得。因此,将移动机器人周围障碍物的距离信息和移动机器人的速度信息作为模糊控制系统的输入,将移动机器人左、右两轮的速度作为模糊控制器的输出。

如前所述,所采用的超声波测距传感器可测得7个角度的距离信息。将该距离信息进行编号分组处理,#1和#2为右侧障碍物距离信息,#3、#4和#5为前方障碍物距离信息,#6和#7为左侧障碍物距离信息,分别取各组最小距离值为该方向的障碍物距离信息,即所设计模糊控制系统为多输入/多输出(4输入/2输出)系统。该模糊控制系统如图3所示。

图3 模糊控制系统Fig.3 Fuzzy control system

令超声波传感器测得的左侧、前方、右侧障碍物距离信息分别记为 LD,FD,RD,论域取为[0,3 m],模糊语言集为{近,中,远},对应的语言变量记为{N,M,F};机器人质心移动速度信息V的论域取为[0 cm/s,100 cm/s],模糊语言集取为{慢,中,快},相应语言变量记为{SC,MC,FC};机器人左右两轮速度信息分别记为VL和VR,论域、模糊语言集合均与V一致,相应的语言变量记为{SV,MV,FV}。

2.2 输入输出隶属度函数

对于模糊控制系统,常用的隶属度函数有三角隶属度函数、高斯隶属度函数、梯形隶属度函数、Sigmoid隶属度函数等。其中,高斯型隶属度函数曲线较为平滑,使系统有较好的准确性和简洁性[8],因此文中采用高斯隶属度函数。距离、质心移动速度、左右轮速度的隶属度函数分别如图4所示。

图4 输入、输出的隶属度函数Fig.4 Membership function of inuput and output

2.3 模糊控制规则

模糊控制规则是采用模糊控制实现移动机器人路径规划与避障的核心,在建立模糊控制规则时,将人类的知识经验以算法的形式融入移动机器人的控制系统中,从而实现移动机器人的自主避障。对于移动机器人来说,在未知环境下的运动过程中,障碍物的分布情况大致可以分为8类,如图5所示。

图5 未知环境下障碍物分布情况Fig.5 Obstacle distribution in unknown environment

根据人类的实际经验,移动机器人的避障原则如下:当前方障碍物距离机器人很远时,机器人朝目标方向直线前进;当左方障碍物距离较近,移动机器人向右偏转;当右方障碍物距离较近时,移动机器人向左偏转。

对于模糊控制系统而言,采用IF-THEN条件语言,最大的模糊规则数为Nmax=n1n2n3…nm,其中m为控制器的输入个数;n1,n2,n3,…,nm为各输入的模糊子集数。因此,根据各模糊变量的模糊子集可归纳出N=3×3×3×3条=81条模糊控制规则,其一般形式为

式中:FDi,RDj,LDk,Vl,VLm,VRn分别为定义在 FD,RD,LD,V,VL,VR上的模糊集。建立模糊控制规则库,部分规则见表1。

表1 模糊控制规则库Tab.1 Fuzzy control rule base

在建立好模糊控制规则后,还需要对模糊控制系统进行推理。即在模糊控制器中,根据输入模糊量,由模糊控制规则完成模糊推理以求解模糊关系方程,并获得模糊控制量的功能部分。常用的模糊推理有Zadeh法和Mamdani法2种。Mamdani推理法普遍使用,为一种合成推理方法,故在此采用Mamdani推理法。

2.4 反模糊化

通过模糊推理得到的结果是一个模糊集合,然而在实际模糊控制中,模糊量并不能直接用于控制或驱动执行机构,需要将其转换为确定值,将模糊推理结果转化为精确值的过程即为反模糊化。常用的反模糊化方法有最大隶属度法、重心法和加权平均法等。为了获得准确的控制量,就要求模糊方法能够很好地表达输出隶属度函数的计算结果,而重心法是采用取隶属度函数曲线与横坐标围成面积的重心作为模糊推理的最终输出值,即

左轮速度

右轮速度

式中:∫为输出模糊子集所有元素的隶属度值在连续论域上的代数积分;μL,μR分别为左、右轮速度的隶属度函数。由此便可将模糊控制系统推理计算出的结果直接用于控制或驱动执行机构。

3 仿真试验及分析

设置了一个20×20的二维栅格地图,数值为1的栅格表示有障碍物,数值为0的栅格表示没有障碍物;地图中放置3个矩形障碍物。设仿真步长为 1,机器人行进速度为[0,0.1 m/s],起始点为(0,0),目标点为(20,20);并将机器人起点及目标点的位置信息、障碍物的位置及外边界信息预存在MatLab数据表中,用以模拟机器人导航避障环境。在进行仿真试验时,采用前述移动机器人模糊避障算法进行机器人的避障导航仿真。移动机器人在连续障碍物下的MatLab仿真结果如图6所示。

由图可见,机器人从起始点(0,0)出发,由模糊算法确定移动机器人下一时刻的位置信息,最终顺利到达目标点(20,20)。

4 结语

图6 仿真结果Fig.6 Simulation result

针对移动机器人在未知环境下的自主避障问题,设计了一种改进的模糊算法。在硬件设计上采用单超声波传感器扫描测距的方式实现对周围障碍物的测距行为,节省了移动机器人的硬件空间,降低了机器人控制系统的复杂度。为验证所提算法的有效性,利用MatLab建立移动机器人的运动空间,采用栅格法构建环境地图,实现机器人模糊算法的仿真试验。仿真结果表明,所提出的模糊算法能够有效实现移动机器人在未知环境下的自主避障,对其他类型机器人的避障控制也能起到一定的参考作用。

[1] 熊开封,张华.基于改进型FNN的移动机器人未知环境路径规划[J].制造业自动化,2013(22):1-4.

[2] 董凌艳,徐红丽.基于改进型蚁群算法的AUV路径规划[J].自动化与仪表,2017,32(3):1-4.

[3] 钱夔,宋爱国,章华涛,等.基于自适应模糊神经网络的机器人路径规划方法[J].东南大学学报:自然科学版,2012,42(4):637-642.

[4] 郜园园,朱凡,宋洪军.进化操作行为学习模型及在移动机器人避障上的应用[J].计算机应用,2013,33(8):2283-2288.

[5] Wang Y,Chen W.Path planning and obstacle avoidance of unmanned aerial vehicle based on improved genetic algorithms[C]//Control Conference(CCC)2014 33rd Chinese.IEEE,2014:8612-8616.

[6] 杨小菊,张伟,高宏伟,等.基于模糊控制的移动机器人避障研究[J].传感器与微系统,2017,36(3):51-54.

[7] 刘祖兵,袁亮,蒋伟.基于模糊逻辑的移动机器人避障研究[J].机械设计与制造,2017,38(3):101-104.

[8] Zaki A M,Arafa O,Amer S I.Microcontroller-based mobile robot positioning and obstacle avoidance[J].Journal of Electrical Systems and Information Technology,2014,1(1):58-71.

[9] 彭玉青,李木,张媛媛.基于改进模糊算法的移动机器人避障[J].计算机应用,2015,38(8):2256-2260.

[10] 孔令文,李鹏永,杜巧玲.基于模糊神经网络的六足机器人自主导航闭环控制系统设计[J].机器人,2018,40(1):16-23.

[11] 刘金琨.智能控制[M].4 版.北京:电子工业出版社,2017.■

猜你喜欢
移动机器人测距模糊控制
移动机器人自主动态避障方法
基于变论域模糊控制的Taylor逼近型内模PID算法
类星体的精准测距
基于遗传算法的模糊控制在过热汽温控制系统优化中的应用
基于Twincat的移动机器人制孔系统
浅谈超声波测距
基于模糊控制的PLC在温度控制中的应用
基于PSOC超声测距系统设计
自动离合器起步控制的模糊控制方法研究
相对差分单项测距△DOR