1 前言
多输入多输出系统(MIMO)是指当在环境中有障碍物时,路径的重新规划控制系统具有高度的不确定性。对于具有不确定性的MIMO控制系统,传统的控制系统不能达到理想的控制效果。模糊推理控制是将人类驾驶经验融入到控制系统当中,因此可很好地满足控制系统的自适应性、实时性和鲁棒性的要求。模糊控制是采用模糊数学通过推理的方式来实现的控制。模糊逻辑模拟了人思维的模糊性,采用了与人类语言相接近的语言变量来进行逻辑推理,使得控制系统可像有操作经验者一样去进行控制复杂的系统[1-2]。模糊控制具有以下几方面的特点[3]:
(1)易于掌握、便于控制的非线性控制器,是一种编程语言控制器;
(2)响应速快,抗干扰能力强,对控制系统参数变化有很强的鲁棒性;
(3)易于对不确定性的控制系统进行控制,不局限于被控对象的精确数学模型。
2 模糊控制器设计
本文所设计的模糊控制器主要包括四部分:知识库、模糊化、清晰化和模糊推理。首先将控制系统输入的精确量转化成模糊量。知识库中包含了要求进行控制的目标和规则以及具体相关应用领域的知识等。模糊推理是整个模糊控制器的核心,它可模拟人的模糊概念进行推理的能力,输入量再经由模糊推理计算得到相应的模糊控制量;然后再经解模糊变换为用于实际控制的清晰量,直接作用于被控对象。
机器人模糊控制器的主要设计目标是:当红外无线传感器监测到障碍物或目标时,模糊控制器根据监测反馈的信息,从而准确确定机器人的准确位置和方位,然后控制机器人避开障碍物,按从新规划的路径和方位行走。
(1)确定控制系统的输入、输出
设置X1、X2、X3和X4为模糊控制器的输入变量,Y为输出变量。其中:X1、X2、X3分别用于表示机器人距障碍物右侧、左侧及前方的距离;X4则表示机器人的运动目标与方向中心连线的定位;Y表示机器人的转动角。
(2)定义模糊控制的集合
在距离变量中采用如下的模糊集合:{Near,Far}={“近”,“远”},论域的控制范围为(0~6 m);定位变量X4的模糊语言可描述为{LB,LS,Z,RS,RB}={‘‘左大”,“左小”,“零”,“右小”,“右大”},该域的控制范围为(-1800,1800); Y输出变量的模糊语言为{TLB,TLS,TZ,TRs,TRB}={“左大”,“左小”,“零”,“右小”,“右大”},域范围为(-300,300)。
(3)模糊控制规则库建立
3.2传感器的选择和应用
机器人移动时要获得自主行为,需具备能感知周围环境的能力,其主要是通过传感器来实现的。常见的机器人避障传感器有红外传感器,超声波传感器,CCD视觉传感器和激光传感器等。其中,超声波传感器与其他相比具有技术成熟、接口容易实现、成本低等优点,成为避障机器人的首选[4],如图2所示为超声波传感器原理图。
超声波传感器虽然有众多的优点,但也存在不稳定性,超声传感器具有幻影现象。这种现象产生的原因主要是,超声波传感器所发出的超声波信号具有一定方向性的波束,当障碍物与超声传感器存在较大的角度时,声波会发生镜面的反射,从而产生幻影,如图3所示。为了解决幻影所带来的误差,本文使用多个超声波传感器来进行补偿,从而抵消幻影现象所带来的误差。
机器人的前方成扇形排均匀的分布了三组超声传感器,分别用于监测前方,左侧和右侧的障碍物,监测的有效距离为0.3~10米。如图4所示为机器人的基本结构图,每组由2~3只超声波传感器组成,分别测取最小数值作为该测量方向上的障碍物距离。同时,为了保障机器人有方向性的运动,在机器人的中心也安装有一只方位的传感器,测量的范围为(-180°,180°)。用于获取机器人的目标与航向到机器人的连线夹角,从而引导机器人向目标点进行运动。
4 模糊控制器设计
4.1 输入输出的选取
根据模糊控制器输入输出变量应尽量简单的选取原则,又对机器人的避让障碍物和行驶的实际情况进行考虑,并能较好的反应智能机器人的避障过程。因此,本文选取了方位传感器和超声传感器对外部环境信息进行采集并作为模糊控制器的输入,机器人的行进方向通过模糊控制器的输出进行控制。将超声波传感器分成三组(左侧,前方,右侧分别三只),每组测取得最小距离信号作为该行进方向的输入量,dc为机器人前方障碍物距离,dr为机器人右侧障碍物距离,dl为机器人左侧障碍物距离; tg为方位传感器用于测得目标点与航向到机器人的连线夹角。因此可将模糊控制器的输入变量分为四个:tg ,dc,dl和dr;模糊控制器输出的变量只有机器人转向角度sa。
4.2 输入输出量的模糊化
模糊语言值是一个模糊的子集,可通过隶属度函数来对语言值进行描述。在论域连续的条件下,隶属度常用的函数有梯形,三角形,高斯型等[5]。
通常,隶属函数形状越陡,分辨率也就越高,同时,控制的灵敏度也就会越高。因此,进行隶属度函数选择时,误差为零的区域内采用分辨率高的隶属函数,而在误差大的区域,采用分辨率低的隶属函数,从而获取较好的控制鲁棒性。
在通过MATLAB对模糊控制器建立时,可先改变隶属函数观察其对输出变量的影响。如图5 所示为夹角tg的隶属函数。
5 实验仿真
在MATLAB中建立模糊控制系统,首先需建立起各部分的系统,即各个子模块,然后再将它们连接组成一个完整的模糊控制系统。在Matlab软件中Simulink仿真软件是专门对各种动态控制系统进行模型建立、系统仿真和分析的一个软件包,可极大简化控制系统模型。
控制系统程序编制完成后,将程序输入到Matlab中,点击形成m文件,并对程序进行调试。待调试完成后输入程序中障碍物的位置参数、起点坐标、步长及终点坐标,点击star按钮。如图6为仿真实验图。
6 结论
模糊控制器作为一种非线性的控制器,已成为智能控制的一种重要而有效的控制形式。采用模糊推理逻辑进行障碍物的避障设计对智能机器人遇到突发的障碍物后紧急避障控制十分适宜,并且控制方法也很灵活,可根据实验仿真的效果对相应的模糊推理规则和参数进行修改。
参考文献
[1]付宜利,顾晓宇,王树国.基于模糊控制的自主机器人路径规划策略研究[J].机器人,2004,26:548—552.
[2]张建龙,刘晓玉,李立华.基于模糊控制的清洁机器人避障系统[J].机床与液压,2014,(18):92-95.
[3]韩峻峰,李玉惠.模糊控制技术[M].重庆:重庆大学出版社,2003.
[4]刘喜昂,周志宇.基于多超声传感器的机器人安全避障技术[J].测控技术,2004,23:71-73.
[5]陈华志,谢存禧.移动机器人避障模糊控制[J].机床与液压,2004,11:77-78.
作者简介
蔡明学 男 工程师 从事检测技术与测量工作
共0条 [查看全部] 网友评论