基于产生式规则控制实现移动机器人自主避障
王奇志1,徐德 2
(1. 北京交通大学 计算机与信息技术学院,北京,100044;
2. 中国科学院自动化研究所 复杂系统与智能科学重点实验室,北京,100080)
摘 要:
制实现在未知动态环境中移动机器人自主避障,同时给出在未知动态环境中沿墙走算法,实现机器人依靠声纳传感器实时避障导航。研究结果表明:所提出的方法具有省时、高效的特点;所提出算法具有有效性和可靠性。
关键词:
中图分类号:TP242 文献标志码:A 文章编号:1672-7207(2011)S1-0493-05
Rules-based autonomous obstacle avoidance for mobile robots
WANG Qi-zhi1, XU De2
(1. School of Computer Science and Information Technology, Beijing Jiaotong University, Beijing 100044, hina;
2. Key Laboratory of Intelligent Control of Complex Systems, Institute of Automation,
Chinese Academy of Sciences, Beijing 100080, China)
Abstract: A real time and autonomous obstacle avoidance method based on rules for mobile robots was presented. Wall- along algorithm was dynamically implemented in unknown environment without collision. The results show that this algorithm is time saving and no disturbance. The approaches proposed has effectiveness and reliability.
Key words: mobile robot; autonomous obstacle avoidance; rules control
目前移动机器人的运动控制技术已被广泛地应用到服务机器人、危险环境作业机器人以及侦察探测机器人等应用研究领域。运动控制和运动规划是移动机器人导航中的关键技术。在上述有障碍物的环境中,实现机器人基于传感器感知周围环境,在线实时避障与自主导航成为服务机器人最核心的问题。机器人通过传感器感知周围环境,而声纳传感器具有成本低,信息处理简单,距离测量装置简单,精度能够满足导航要求等优点,因而在移动机器人上得到了广泛应用。目前一些学者对移动机器人自主避障问题进行了深入研究。Rahman等[1-3]都提出基于模糊控制策略实现移动机器人动态避障,但模糊控制需要模糊规则的合成与规则的选取,比较耗时;Lee [4]针对声纳传感器在走廊环境中移动提出拓扑导航方法, 这种方法要求对环境的拓扑结构进行细分;Huang等[5]采用神经网络实现机器人自主避障, 而神经网络学习和训练过程相对耗时;Khatib[6]采用人工势场法进行避障,但此方法无法通过狭长的通道,而且运动产生震荡;Shoual等[7]采用矢量域图示法实现移动机器人实时避障。本文作者提出基于规则控制,解决在不确定、动态和未知环境中机器人自主避障的策略与算法,实现机器人在线实时避障与自主导航。该算法无需规则合成, 节省时间,实时性好,而且适合狭长的通道,不会产生震荡。在存在类似墙体的任何动态未知环境中,移动机器人都可以动态实时漫游。基于规则的控制策略实现了移动机器人的自主避障,实现利用声纳传感器在非结构的环境中机器人实时动态自主的避障功能。通过实验,随意将机器人放在未知的环境中,机器人均能自主避障完成沿墙走的功能,验证了算法的有效性及可靠性。研究结果可以应用到危险的作业环境中,如井下巷道。如果在移动机器人身上装有监测瓦斯浓度、温度等传感器装置,移动机器人可以采用沿墙走的方式自主在井下巷道中漫游,可实时探测环境,对危险情况进行预报,克服固定传感器探测能力不足的缺陷。
1 声纳传感器辨识物体的处理
P3-DX机器人在结构设计上有16个声纳被分为前后两部分,前后对称。每个声纳传感器之间的阵列分布是不均匀的,其前半部分分布如图1所示(pioneer操作手册[8]),可以完成对周围360°范围内障碍物的测量。
图1 P3-DX前半部声纳分布图
Fig.1 P3-DX sonar array
由于结构设计上声纳之间有间隔,当细长障碍物落在2个声纳中间时,声纳无法探测到障碍物,存在盲区。另外,由于声纳传感器自身精度的限制,实验测量到P3-DX移动机器人有时检测不到直径小于或等于5 mm的细长障碍物,如细的椅子腿。如果检测不到物体,机器人就会与该物体碰撞。
为此,本研究在控制设计中,当某个声纳或相邻两个声纳的测量值突然发生大的变化时,在机器人运动的过程中降低其行驶速度,令其转动一定的角度,同时并行测量其声纳的测量值来判断其是否为障碍物。如果确定为障碍物,那么采取避障措施。
2 移动机器人运动学模型与控制
移动机器人运动控制系统为差动驱动。建立运动学模型:
(1)
其控制输入与轮速,;
其中:表示机器人的位置;表示机器人的方位;v和ω分别表示机器人的线速度与角速度;l表示机器人的双轮之间距离;vR和vL分别为机器人左、右轮速度。
在实际控制中采取控制机器人左右轮速度实现运动控制,图2为精确运动控制的效果图。图中实验采用P3-DX机器人,在其身后固定1个自制的简易沙漏,即用矿泉水瓶倒置,再在瓶口扎1个小孔,沙子可以漏出。机器人中心点的运动轨迹即为机器人的运动轨迹,由于在中心线上所有点作圆周运动时,其运动轨迹都是半径相等的圆,故采用其代替机器人中心点的运动轨迹。 所以,采用在其身后的沙漏来标记其运动轨迹。从图2可以看出:P3-DX机器人从初始点走1周后很好地回到初始点。而精确运动控制是机器人进op行路径规划的基础和保障。
图2 P3-DX机器人运动控制精确走圆
Fig.2 P3-DX mobile robot accurate motion control
3 基于规则避障的控制策略
移动机器人通过装备的声纳传感器获得机器人到障碍物距离的信息。以声纳读取的数据为依据,以与前面物体的距离、和墙的距离、与墙的角度这3个要素的叉集作为机器人当前的状态空间。避障的控制策略如下:Frontok 表示机器人前面有无物体的相关参数;Walldisok 表示机器人和墙之间距离的相关参数;Poseok 表示机器人和墙之间角度的相关参数;Goodtogo表示环境是否处于安全的变量。距离深度 信息分3个层次:第一,规定安全距离,即机器人与障碍物的最小距离,再近机器人就可能与障碍物发生碰撞,机器人在此距离以内机器人要停止不动; 第 二,避障区域;第三,远离机器人,对于在此范围的前方障碍物不构成对机器人的威胁,考虑机器人的运行速度在下一个采样周期仍然不会碰撞,无需考虑避障。Poseok的状态与判定如下:Poseok有5个参数即-2,-1,0,1,2,表示机器人与墙壁之间的关系,0表示机器人基本与墙平行,判断依据是0号声纳和15号声纳读数的差值,当差值小于10 mm时,判断Poseok=0,可以看做0号声纳和15号声纳的连接线基本平行于墙壁了。Walldisok的状态与判定如下:Walldisok有6个参数即-2,-1,0,1,2,3,分别表示机器人和墙之间距离“太近”、“近”、“标准”、“远”、“太远”、“无”。 Poseok和Goodtogo的状态与判定与上述类似。建立相应的规则集,规则集的建立要求满足如下3个条件:
(1) 完备性:任何一种状态都有一条规则与之对应。
(2) 非奇异性:同一状态只有唯一规则可以应用。
(3) 非相悖性:应用规则不会产生矛盾的结果。
机器人行走过程中,机器人根据其声纳数据和自身的运动状态修正运动位姿, 并进行运动参数设置或状态变换。当机器人所处的状态与相应的规则匹配,启动该规则变换状态,基于规则控制策略实现移动机器人自主避障。
(1) 将机器人与前方障碍物距离定义为DF,其取值定义为:
{LF:远(DF>3 000),F:中(600<DF<3 000),N:近(DF<600)}分别表示远、中、近,且论域为[0, 2],对应数值为:frontok:{LF:2,F:1,N:0}
DF规则见表一:
(1) If DF为F then speed=100
(2) Else If DF为LF then speed=150
(3) Else DF为N then frontok=0。
(2) 将机器人左边2个声纳0号声纳和15号声纳测得与障碍物距离的差值定义为DL,它们的模糊子集为(见表2):
{LF:(DL<-100),LN:(-100<DL<-10),Z:(-10<DL<10),RN:(10<DL<100),RF:(DL>100)},且论域为[-2, 2]
对应的数值为:Poseok:{LF:-2,LN:-1,Z:0,RN:1,RF:2}
表1 DF规则表
Table 1 DF rules table
表2 Poseok 下DL规则表
Table 2 DL rules table at Poseok
(3) 将机器人左右轮速度大小定义为V,模糊子集为(见表3):
{RL:(speed-120, speed+120),RS:(speed, speed+ 60), LS:(speed-60, speed),LL:(speed+ 120, speed- 120),LT[微软用户1] (-50, 50)}
表3 V规则表
Table 3 V rules table
(4) 将墙的距离定义为WD,模糊子集为:{N0:(200<WD<370),N1:(370<WD<430),N2:(430<WD<700),N3:(700<WD<2 000),N4:(WD>2 000)},且论域为[-1, 3]。对应取值walldisok:{N0:-1,N1:0,N2:1,N3:2,N4:3 }。见表4。
表4 WD规则表
Table 4 WD rules table at Walldisok
机器人运动规则集如表5所示,当DL取值为Z时,进一步采用由WD与DF生成的规则控制机器人的运动。如果每个声纳测到的数据都小于50,机器人停止前进,否则按照表5中的规则进行运动。
表5 机器人运动规则表
Table 5 Robot motion rules table
4 沿墙走算法实例
移动机器人规则的状态空间SS=(WR, PR, FO),其中,SS(State Space)为机器人的状态空间;WR为机器人与墙的距离信息;PR为机器人的姿态;FO为前方障碍物与机器人的距离。
机器人在MobileSim仿真环境中沿墙走算法仿真效果图如图3和图4所示,实现了如下功能:
在存在墙体的未知环境中,将移动机器人任意放置一个位置,机器人可以自主实时动态沿墙走,算法与机器人初始位置设置无关。图3中机器人的初始位置为S。
算法可以走出U型区域,不会陷入局部区域。机器人可以自主走出图4中右下角的U型区域以及右上角的U型区域。
机器人通过声纳传感器实现实时动态避障,而且仅靠声纳传感器实现沿墙走。
机器人可以根据与障碍物的远近调节其行进速度。
图3 沿墙走算法实现效果图
Fig.3 Wall along algorithm accomplishment
图4 复杂环境机器人自主避障与沿墙走
Fig.4 Robot autonomous obstacle avoidance and wall along algorithm in complex environment
图3和图4所示是一个结构复杂,几何形状不规则的环境,机器人对其工作的环境事先一无所知。利用声纳传感器,自主在其环境中行走。本研究也给出极端的机器人避障测试结果,在机器人周围不断添加障碍物以至于最终将其堵在没有任何可以逃脱的空隙,实验中机器人最终停下来没有与任何障碍物碰撞。实验表明在不确定、动态和未知环境中机器人自主避障的有效性和可靠性。
5 结论
(1) 依据某个声纳或相邻2个声纳的测量值突然发生大的变化时,确定是否是障碍物,解决了P3-DX通过声纳传感器对细长障碍物的识别问题。
(2) 提出基于规则自主避障控制策略,实现移动机器人自主避障功能,在此基础上实现沿墙走算法,算法具有实时性适用未知动态的环境,计算省时效率高。
(3) 通过实体机器人P3-DX 验证,表明了自主避障的有效性和高可靠性。
参考文献:
[1] Rahman N, Jafri A R. Two layered behaviour based navigation of a mobile robot in an unstructured environment using fuzzy logic, [C]// Proceedings of the IEEE International Conference on Emerging Technologies. Islamabad, 2005: 230-235.
[2] Thongchai S. Behavior-based learning fuzzy rules for mobile robots[C]// Proceedings of the American Control Conference.
Anchorage AK, 2002: 995-1000.
[3] 陈华志, 谢存禧. 移动机器人避障模糊控制[J]. 机床与液压, 2004, 11: 77-79.
CHEN Hua-zhi, XIE Cun-xi. Fuzzy control of obstacle avoidance for mobile robot[J]. Machine Tool & Hydraulics, 2004, 11: 77-79.
[4] Lee K. Topological navigation of mobile robot in corridor environment using sonar sensor[C]// Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems. Beijing, 2006: 2760-2765.
[5] HUANG Bing-qiang, CAO Guang-yi, GUO Min, Reinforcement learning neural network to the problem of autonomous mobile robot obstacle avoidance[C]// Proceedings of the Fourth International Conference on Machine Learning and Cybernetics. Guangzhou, 2005: 85-89.
[6] Shoval S, Borenstein J, Koren Y. Mobile robot obstacle avoidance in a computerized travel aid for the blind[C]// Proceedings of the 1994 IEEE Robotics and Automation Conference. San Diego, 1994: 2023-2029.
[7] Pioneer 3 Operations Manual January[M]. Amherst: Mobilerobots Inc, 2006: 1-69.
(编辑 何运斌)
收稿日期:2011-04-15;修回日期:2011-06-15
基金项目:北京市自然科学基金资助项目(4082032)
通信作者:王奇志(1967-),女,辽宁沈阳人,副研究员,硕士生导师,从事机器人、智能控制、人工智能研究;电话:18610551319;E-mail: wangqzh@hotmail.com
摘要:采用基于规则控制实现在未知动态环境中移动机器人自主避障,同时给出在未知动态环境中沿墙走算法,实现机器人依靠声纳传感器实时避障导航。研究结果表明:所提出的方法具有省时、高效的特点;所提出算法具有有效性和可靠性。