自动化论文 (2).doc

上传人:yyf 文档编号:3967595 上传时间:2019-10-11 格式:DOC 页数:42 大小:958KB
返回 下载 相关 举报
自动化论文 (2).doc_第1页
第1页 / 共42页
自动化论文 (2).doc_第2页
第2页 / 共42页
自动化论文 (2).doc_第3页
第3页 / 共42页
自动化论文 (2).doc_第4页
第4页 / 共42页
自动化论文 (2).doc_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《自动化论文 (2).doc》由会员分享,可在线阅读,更多相关《自动化论文 (2).doc(42页珍藏版)》请在三一文库上搜索。

1、武汉工业学院 毕 业 设 计(论 文)设计(论文)题目:基于模糊推理的自主移动机器人避障控制姓 名 殷定明 学 号_060408511_院(系)_电气信息工程系_专 业_ 自动化_指导教师_ 张柱华_2010年06月02日基于模糊推理的自主移动机器人避障控制摘要自主避障的能力是移动机器人智能化程度的重要指标,也是智能型车辆安全行驶的重要保障。自主避障算法是避障功能的灵魂所在,传统的控制算法通常依赖于被控对象精确的数学模型和完整全面的环境信息。当控制过程相对复杂,参数众多,环境信息不全,被控对象的数学模型难以确定时,避障效果往往不能令人满意。基于上述情况,本文进行了自主避障系统的研究和设计。利用

2、超声波传感器对机器人周围环境进行探测,得到障碍物和目标信息。通过设计模糊控制器,把得到的信息模糊化,建立模糊规则进行模糊推理,输出结果解模糊得到控制量,是机器人有效地躲避障碍物。并且针对模糊算法存在的死锁问题提出改进,提高了控制性能。关键词:模糊控制,超声波测距,移动机器人Obstacle Avoidance Control of Automatic Mobile Robot Based on Fuzzy ReasoningAbstractThe ability to avoid the obstacles automatically measures the intellectualizti

3、on of robots, as well as guarante safe travel for intelligent vehicles. Effective algorithm is the core of this ability. Traditional control algorithms always rely on accurate mathematical models of the controlled object and integrity environment information. So they are not quite satisfying, while

4、the control process is relatively complex, or mathematical models are difficult to gain. During this thesis,a fuzzy control method is designed.Useing ultrasonic sensors to detect the surrounding environment will get the information of obstacles and goals.Through the design of fuzzy controller ,fuzzy

5、 the obstacle and target location information,the eatablishment of fuzzy rules and fuzzy solution can make the robot obstacle avoidance in the end,and fuzzy algorithm solve the existence of deadlock problem,to achieve mobile robot path planning.Key words:fuzzy control,ultrasonic distance measuring,

6、mobile robot目录摘要1 Abstract2 正文 1 绪论 4 1.1 研究背景及目的 4 1.2 研究现状5 1.3 研究方法和理论基础6 2 本论7 2.1模糊控制理论7 2.2.避障算法设计8 2.2.1参考坐标系8 2.2.2 传感器的选择和应用9 2.2.3算法说明10 2.3.模糊控制器的设计11 2.3.1 输入输出量的选择11 2.3.2 输入输出量的模糊语言描述及模糊分割11 2.3.3 输入输出量的模糊化12 2.3.4 建立模糊控制规则13 2.3.5 模糊推理152.3.6 解模糊17 2.4 利用Matlab模糊逻辑工具箱建立和分析模糊控制器17 2.5

7、仿真实验22 2.7 系统优化改进24 2.7.1 改变隶属函数24 2.7.2 陷阱的克服253 结论29 谢辞30 参考文献31 附录(程序清单)32 1 绪论1.1研究背景及目的 传统控制理论经历过经典控制理论和现代控制理论两个具有里程碑意义的重要阶段,但他们的共同特点都是要基于被控对象的清晰数学模型,即控制对象和可能存在的干扰都必须用严格的数学方程式或函数来表示。常见的描述方式如微分方程,传递函数和状态方程。传统控制的任务和目标一般都较为直接明确,控制对象的不确定性和外界的干扰只允许在较小的范围内发生。因此传统控制方法大多用于解决线性的、时不变的等相对简单的控制问题,这类问题完全可以用

8、线性、常系数、集总参量的微分方程予以描述从而得到解决1。但是,许多实际的控制对象和控制目标常常都并非如此理想,特别是遇到系统的规模庞大、结构复杂、变量众多,加之参数随机多变、参数间又存在强耦合或系统存在大滞后等错综复杂的情况时,传统控制理论的纯粹数学解析结构则很难对其进行表述和处理2。由于研究对象和实际系统具有非线性、时变性、不确定性、不完全性或大滞后性等特性,无法建立起表述他们运动规律和特性的数学模型,于是便失去了进行传统数学分析的基础,也就无法设计出合理的理想经典控制器。况且,在建立数学模型是一般都要经过理想化假设和处理,即把非线性理想化为线性,分布参数化为集中参数,事变转化为定长的,等等

9、。因此数学模型和这些实际系统也存在着巨大的差距,使之很难对其实现有效地传统自动控制3。然而大量的生产实践表明,有许多难以建立起精确数学模型的复杂系统和繁复的工艺过程,可以由熟练技术工人、工程师或领域专家的手工操作,依靠人的经验和智慧,能够获得较为满意的控制效果。例如注塑机的温度和压力控制,随着塑料件的形状,原料材质、颗粒大小,甚至是环境温度和湿度的改变,注塑机的压力和和温度都要相应的改变,以防止出现流纹、气泡等现象。这一控制过程涉及的变量众多,不确定性较大,且对调教精度要求较高,因此难以通过精确地数学模型来描述。但是一名熟练的技工往往能在十套左右的开模后完成对注塑机的调教,使产品达到质量要求。

10、类似的问题使人们自然地想到,能否在传统的控制系统中加入人类的认知、手动控制事物的经验、能力和逻辑推理等智能成分,充分利用人的操作技巧、控制经验和直觉推理,把人的因素作为一个有机部分融入到控制系统中?能否根据系统的实际输入、输出类似于熟练技工那样结合知识和经验实时的进行控制,甚至是机器人也具有人类的学习和自适应能力,进而实现对复杂对象和系统的实时控制。因此便产生了某些仿人智能的工程控制与信息处理系统,产生和发展了智能控制。所谓智能控制,就是通过定性和定量想结合的方法,针对被控制对象和控制任务的复杂、不确定性和多变的特性,有效地实现繁杂信息的处理、优化和判断,最终达到控制被控对象的目的4。本文的研

11、究对象自主机器人避障控制就是一个较为复杂的控制过程,障碍物的位置和形状均是未知的,机器人通过传感器也仅能获得有限的环境信息,难以建立起描述这一控制过程的数学模型。因此采用了智能控制的一个重要分支模糊控制来解决这一问题,把模糊控制本身所具有的鲁棒性与基于生理学的“感知动作”结合起来,为自主机器人在未知环境中的导航控制提供了新的思路。1.2 研究现状1974年,伦敦大学E.H.Mamdani博士利用模糊逻辑开发了世界上第一台模糊控制的蒸汽机,从而开创了模糊控制的历史;1979年,L.P.Holnblad和Ostergard先后在瑞典石灰重烧窑、丹麦水泥窑等工业设备上用到了模糊控制;1989年,日本

12、将模糊控制应用于电冰箱、洗衣机、微波炉等家用消费产品上,吧模糊控制的应用推向了高潮5。模糊应用很快得到了广泛的应用,在炼钢、化工、家用电器、人文社科、经济系统以及医学心理等领域都可以见到它的应用。在这些领域中,想要对控制对象建立精准的数学模型都是相当困难的,但是却具有大量语言表述的控制规则和只能用语言描述的性能指标,因此难以运用传统控制方法来实现自动控制,但运用模糊控制理论的方法却可以很容易的处理和解决,这也促进了模糊控制理论的发展。同时,随着计算机及其相关技术的发展和模糊控制的广泛应用,出现了许多模糊硬件系统,进一步推动了模糊控制的发展和应用。模糊控制也有最初的经典模糊控制发展到自适应模糊控

13、制、专家模糊控制和基于神经网络的自学习模糊控制。1992年在美国召开了第一届IEEE模糊控制国际会议,从此模糊控制也成为了智能控制的一个重要的分支。避障控制一直都是机器人路径规划中的难点,是机器人智能化的体现。由于环境条件的有限,障碍物信息通常是未知的,很难建立精准的数学模型来实现避障控制。而采用模糊控制算法则能非常容易地实现这一控制要求,很多学者也对这一具有重要意义的课题进行了研究。例如,Takeshi采用三层模糊控制的方法调节机器人运动速度和方向,实现了动态实时避障6;Tang等将一段时间内的动态障碍物看作静止的,用栅格法搜索最优路径并通过该路径来实现动态避障;Rude采用空间时间坐标将二

14、维环境转化为三维空间的静态环境,解决了避障问题;Fiorinio提出速度障碍的观点,根据相对速度在线规划路径,实现动态环境下的避障和导航控制问题7。这些研究成果,都为模糊控制应用于机器人避障控制提供了思路,指明了方向。1.3 研究方法和理论基础 随着控制对象的复杂性、非线性、滞后性和耦合性的增加,人们获得精确知识的力量相对减少,运用传统精确控制的可能性也在减小。这时就要用到模糊控制8。反映人的思维的自然语言,是带有模糊性的,是计算机所不能理解的。模糊控制是以模糊集合理论和模糊逻辑推理为基础的,把专家用自然语言表述的知识和控制经验,通过模糊控制理论转换成数学函数,再利用计算机进行处理。模糊理论形

15、式上是利用规则进行逻辑的推理,但其逻辑值可取0,1间连续变化的任意值,因此可以采取数值计算的方法予以处理。这样,就很容易把模糊理论表述的人类智能和数学表述的物理系统向结合加以利用,从而实现智能化的控制。 模糊控制把控制对象做为“黑箱”,先把人队“黑箱”的操作经验用语言表述成模糊规则,让机器根据这些规则模仿人来进行操作以实现自动控制9。为此模糊理论给出了一套系统有效的方法,将用语言表述的规则或知识转换成函数,让计算机能够识别和处理。 本设计中,首先根据系统的控制要求,选取恰当的输入输出变量,并通过模糊化,得到输入输出模糊子集;再根据人的驾驶经验得到一系列的控制规则,编成模糊控制规则表;输入量经过

16、模糊推理后即可得到输出模糊集,经过去模糊后就可作用于执行机构,实现避障控制了。2 本论 自主避障的算法是自主避障系统的灵魂所在,是实现机器人自主避障的有效手段。只有采用准确可行的避障算法,才能及时地发现行进过程中的障碍物,寻求最佳避让方案,实现无碰撞避让,保障整个过程的快速性和连续性。在自动控制理论中(包括现代控制理论),控制器的分析与综合均要依赖于相对精确地数学模型。然而,在被控对象的过程的非线性,有较大随即干扰、过程错综复杂及现场仪器仪表条件不足等情况下,通常无法建立被控对象的精数学模型,此时传统控制方法往往不能达到令人满意的效果。就本设计而言,避障过程比较复杂,参数众多,且存在多传感器所

17、带来的随机误差,难以建立对应的精确数学模型。在本课题的研究中,采用模糊控制理论能够较好的解决前面所提到的问题,这是由于模糊控制主要是模仿人的控制经验而不是依赖于被控对象的数学模型;将被控过程用模糊性的定性或半定量的语言和规则来加以描述,经由逻辑推理得到控制量的模糊量,再经过清晰化转换为精确的控制量,来实现整个控制过程。在自主避障的控制当中,模糊语言和规则的制定多是基于人的驾驶经验。 2.1模糊控制理论模糊控制理论是在L.A.Zadeh教授于1965年创立的模糊集合理论的数学基础之上发展起来的,它包括模糊集合理论,模糊逻辑,模糊推理和模糊控制等方面的内容,是智能控制领域的一个重要分支。模糊控制是

18、模糊理论的一个重要方面。其基本思想是把人类专家对被控对象或过程的控制策略总结成一系列语句的形式表示控制规则,再通过模糊推理得到控制量的集合,作用于被控对象或环境10。(一) 模糊集合的概念在模糊集合理论中,对于给定论语X,A=x是X中的模糊集合的含义是: :一个元素隶属于某个集合的程度,采用隶属度来定义。若(x)接近1,表示X属于A的程度高,(x)接近0,表示X属于A的程度低。(二) 模糊控制的基本原理模糊控制系统结构如图2.1所示,其与传统控制系统最大的区别在于采用了模糊控制器(图2.2)。A/D模糊控制器D/A执行机构被控对象给定量被控量变送器 图2.1模糊系统结构图模糊控制器主要有模糊化

19、、知识库、模糊推理和清晰化这四部分组成。首先把输入的精确量转换成模糊量。知识库包含了具体应用领域的知识和要求的控制目标和规则等,由数据库和模糊规则库两部分组成。模糊推理是模糊控制器的核心,它具有模拟人的模糊概念推理能力,输入量经由模糊推理得到模糊量控制量;再经过解模糊变换为用于实际控制的清晰量,作用于被控对象。模糊化模糊推理解模糊知识库被控对象参考输入输出 模糊控制器 图2.2模糊控制器的结构2.2避障算法设计2.2.1参考坐标系 建立被控对象和行驶环境的二维参考坐标系(图2.3),为计算方便,假设车轮与地面无滑动,能绕其质心转向。xoy为固定的全局坐标系,设定目标点坐标为(XG,YG),在任

20、一时刻,小车位置为(x(t),y(t)),航向为,步长为step,当前航向与小车质心到目标连线的的夹角为tg,转向角为sa。障碍物OYXT时刻位置(x(t),y(t))t+1时刻位置(x(n+1),y(n+1)目标点(XG,YG)steptg 图2.3 参考坐标系2.2.2传感器选择和应用移动机器人要获得自主行为,就需要有能感知周围环境信息的能力,其主要是通过传感器来实现的。常用于避障机器人的传感器有超声波传感器,红外传感器,激光传感器,CCD视觉传感器等。其中,超声波传感器具有技术成熟,成本低,接口容易实现等优点,成为避障机器人的首选11。超声波传感器的基本原理是不断检测超声波发射后碰到障碍

21、物反射的回波,测得发射和接受回波的时间差,计算之间的距离。计算公式为:D=CT/2;其中,D为距障碍物的距离,C为声波在介质中传播速C=331.4,k为绝对温度。控制器调节器计时器振荡器接收检测换能器障碍物 图2.4超声波传感器原理图虽然超声波传感器有众多优点,但也存在一定的不稳定性,超声传感器的幻影现象。产生这种现象的原因是,超声传感器发出的超声波信号是具有一定方向性的波束,当传感器与障碍物形成较大角度时,会发生镜面反射,从而产生幻影,如图2.5所示。为了解决这种现象所带来的误差,本设计使用多个传感器来补偿,抵消幻影现象带来的误差。传感器障碍物障碍物幻影前方传感器右侧传感器前轮左侧传感器方位

22、传感器图2.5幻影现象示意图 图2.6机器人基本结构 如图2.6,机器人前方成扇形排分布三组超声波传感器,分别用于探测左侧,前方和右侧的的障碍物,有效距离为0.3至10米。每组传感器由两支三只超声波传感器组成,分别取测得最小数值作为该方向上障碍物的距离。同时,为了保证机器人的运动有方向性,在机器人中心有一只方位传感器,测量范围是(-180,180)。用于获得机器人航向与目标到机器人连线的夹角,引导机器人向目标点运动。2.2.3算法说明小车自起始点出发,四组传感器开始工作,探测环境信息。若超声波传感器未探测到障碍物信息或探测到的障碍物距离较远时,则根据方位传感器探测到的机器人航向和目标到机器人连

23、线的夹角tg进行转向,控制机器人向目标点移动。运动过程中,若超声波探测到有较近距离的障碍物时,则根据障碍物相对机器人的方位和目标点方位进行转向控制,避开障碍物;障碍物距离越近,则转向角sa越大,以免发生碰撞。躲开障碍物后,继续根据方位探测器测得夹角tg控制机器人向目标点移动。算法流程如图2.7。开始根据超声传感器探测信息判断是否有障碍物根据障碍物方位和目标点方位躲避进行避障Y根据方位传感器探测的方位角tg向目标点移动N判断是否到终点结束YN 图2.7算法流程图 2.3模糊控制器的设计2.3.1输入输出量的选取模糊控制器的输入输出语言变量的选取应该尽量的简单,又要考虑机器人行驶和避让障碍物的实际

24、情况,较好的反应机器人避障的过程12。因此,我们选取超声传感器及方位传感器采集的外部环境信息作为模糊控制器的输入,模糊控制器的输出则是机器人的方向控制。根据上节介绍,将九只超声波传感器分为三组(前方,左侧,右侧各三只),每组取其最小距离信号作为该方向的输入,dr为右侧障碍物距离,dc为前方障碍物距离,dl为左侧障碍物距离;方位传感器则测得航向与目标点到机器人连线的夹角,为tg。因此模糊控制器输入变量为四个,分别是:dr,dc,dl和tg;模糊控制器的输出变量有一个,即机器人转向角sa。2.3.2输入输出量的模糊语言描述及模糊分割 模糊语言的确定包括由语法规则生成适当的模糊语言值,根据语义规则确

25、定语言值的隶属度函数以及确定语言变量的论域等。这里使用连续型论域,采用简单线性化处理方法,对个输入量进行模糊语言描述,如下: 距离输入变量:d=近,远=near,far; 目标方位输入变量:tg=左大,左中,左小,前,右小,右中,右大=lb,lm,ls,zo,rs,rm,rb; 输出转向角变量:sa=左转,左中转,左稍转,直走,右稍转,右中转,右转; =tlb,tlm,tls,tz,trs,trm,trb;模糊分割是指模糊语言对所在论域的划分,决定了模糊控制的精细化程度。模糊分割的越多,控制越精细,但对应控制规则数目也就越多;模糊分割太粗,则难以对控制性能进行细致调整。所以,模糊分割的数目并无

26、指导性的方法,主要根据具体情况和经验来划分。例如上面对距离输入变量的划分,通常情况下对距离变量划分为近,中,远,但如此一来,模糊规则的数量共有条,较难实现。因此将距离变量简单划分为近,远,模糊规则数减少到条。模糊规则数大幅减少,既容易实现,又未过多降低控制精度。2.3.3 输入输出量的模糊化模糊语言值只是一个模糊子集,语言值要通过隶属函数来描述。在论域连续是的情况下,隶属度常用函数的形式来进行描述,常见的有隶属函数有三角形,梯形,高斯型等。通常,隶属函数的形状越陡,分辨率就越高,控制灵敏度也就越高;相反,若隶属函数变化缓慢,则控制特性也平缓,对应的系统稳定性好。因此,在选择语言值的隶属度函数是

27、,一般在误差为零的附近区域采用分辨率较高的隶属函数,而在误差较大的区域,可采用分辨率较低的隶属函数,以获得较好的鲁棒性13。此外,大多数情况下,隶属函数的选取具有较大的随意性,对同一模糊集不同的人肯能选取不同的隶属函数去表述,并无绝对的对错。因此,在利用MATLAB建立模糊控制器时,可通过改变隶属函数来观察其对输出的影响。各输入输出变量隶属函数如下图所示。图2.8(a)dl、dc和dr的隶属函数 图2.8(b) 夹角tg的隶属函数 图2.8(c)输出转向角sa的隶属函数2.3.4建立模糊控制规则 模糊规则的建立是模糊控制的核心问题14。模糊控制系统是用一系列基于专家知识的语言来描述的,用一系列

28、模糊条件描述的模糊控制规则就构成了模糊控制规则库。根据模糊控制理论,控制规则反映了输入输出变量间的关系。本设计中包含四个定性输入信号,一个定性输出信号。机器人移动路径是根据障碍物距离和目标点方位共同决定的。当检测到有障碍物靠近时,机器人改变行进方向。机器人转向的基本原则是:当探测到机器人左(右)和前方有障碍物靠近时,机器人应及时转向右(左)方。转向角度的大小则视障碍物距离和航向与目标点到机器人连线的夹角而定:障碍物距离越近,转向角越大;夹角越大,转向角越小。根据前面所确定的输入输出集,模糊规则的一般表述形式为“If(条件)Then(结果)”。以下将选取典型情况讨论对应模糊规则的制定。(A) 一

29、侧有障碍物时机器人一侧有障碍物是最基本的情况,这里仅以右侧有障碍物的情况来说明。当机器人右侧近距离内有障碍物,而左侧和前方近距离内均无障碍物时(图2.9),根据人的驾驶经验,可编写如表2.1的控制规则。tgdlblszorsrbdl,dc为fardr为neartlbtlstztrstrbLC障碍物RfarfarnearO 图2.9右侧有障碍物 表2.1 右侧有障碍物时规则表(B) 左右障碍物对称时在某些情况下,模糊规则的方法存在着“对称无法确定”现象。如机器人左右两侧障碍物完全对称时,根据基本规则,机器人讲无法确定行进方向而在两障碍物间来回转向,形成死锁。在这种情况下,目标方位角tg则会决定机

30、器人的转向,这就是局部最优选择。用模糊逻辑表示如下:如果dc为近,dr为远,dl为远,且目标标点在机器人左侧,则机器人左转;如果dc为近,dl为远,dr为远,且目标点在机器人右侧,则机器人右转。按照同样的方法,针对不同方位的障碍物和目标方位角,可制定完备的控制规则。这样的规则制定方法是基于控制器行为特征的方式,将动作分为若干的基本行为,对于较复杂的行为,则分由几个较简单的行为依次构成。这样可简化模糊规则的制定,减少模糊股则的条数,避开被控对象特征的建模。模糊控制规则经简化后,放入模糊规则库,供模糊控制器查询。以下为全部56条模糊规则表(为方便列表,将障碍物组合情况制成表2.2,再结合目标点方位

31、得到模糊控制表2.3。如第ls行第d4列的tlb,对应的模糊规则为:if(dr is near)and(dc is near)and(dl is near)and(tg is ls),then(sa is tlb).)。编号drdcdl障碍物组合1farfarfard12farfarneard23farnearneard34nearnearneard45farnearfard56nearfarfard67nearnearfard78nearfarneard8 表2.2 障碍物情况组合d1d2d3d4d5d6d7d8lbtlb(1)tz(8)trs(15)tlb(22)tlb(29)tlb(36

32、)tlb(43)tls(50)lmtlm(2)tz(9)trs(16)tlb(23)tlm(30)tlm(37)tlb(44)tz(51)lstls(3)tz(10)trs(17)tlb(24)tls(31)tls(38)tlb(45)tz(52)zotz(4)tz(11)trs(18)tlb(25)tls(32)tz(39)tls(46)tz(53)rstrs(5)trs(12)trb(19)trb(26)trs(33)tz(40)tls(47)tz(54)rmtrm(6)trm(13)trb(20)trb(27)trm(34)tz(41)tls(48)tz(55)rbtrb(7)trb(1

33、4)trb(21)trb(28trb(35tz(42)tls(49)trs(56) 表2.3 模糊控制规则表(括号内数字为规则编号)2.3.5 模糊推理 模糊控制规则实际是一组多重条件语句(因果关系的集合描述)。上节模糊规则基本形式为:if(dr is )and(dc is )and(dl is)and(tg is ),then(sa is ).其中dr、dc、dl、tg和sa代表系统状态和控制语言变量,、和分别是对应的语言值,各变量对应的论域分别为DR、DC、DL、TG和SA。每条模糊规则的蕴涵关系为: 若考虑全部56条控制规则的总蕴涵关系,用连接词“also”进行取并的方法得到,即 最后求

34、得的推理结论为。合成运算“”采用了Mamdani最大-最小法。 虽然总的蕴涵关系R由全部56个蕴涵关系构成,但每一组输入量并不能把他们全部激活。为减少计算量,只根据输入量用被激活的控制规则进行近似推理,而不用计算由1到56的全部。例如,对于某一组输入:dr=0.5,dc=0.5,dl=1.2,tg=20。根据各变量隶属函数可知,dr=0.5模糊化后映射到模糊子集near(dr)上,dl模糊化后映射到模糊子集near(dc)上,dl=1.2模糊化后映射到模糊子集near(dl)和far(dl)上,tg=20模糊化后映射到模糊子集zo(tg)和rs(tg)上。从模糊规则表上可知,这组输入量共激活了

35、4条模糊规则,如下:If(dr is near)and(dc is near)and(dl is near)and(tg is zo)then(sa is tlb(25),;If(dr is near)and(dc is near)and(dl is near)and(tg is rs)then(sa is trb(26),;If(dr is near)and(dc is near)and(dl is far)and(tg is zo)then(sa is tls(47),;If(dr is near)and(dc is near)and(dl is far)and(tg is rs)then

36、(sa is tls(48),;下面计算由上述每条规则推得的输出模糊量。(1)对于规则25,其输出为。由于near(0.5)=1,near(1.2)=0.8,far(1.2)=0.2,zo(20)=0.33,rs(20)= 0.67,于是输出 (0.33tlb)(t)是数值0.33和模糊子tlb(t)的数积,依然是一个模糊子集。(2)对于规则26,同理输出为, (3)对于规则47,输出为, (4)对于规则48,输出为, 最后总输出的模糊子集U(t),是4个模糊子集的并:U(t)= =2.3.6 解模糊通过模糊推理得到的结果是一个模糊集合,不能直接作用于被控对象。实际控制中过程中,必须要有一个确

37、定值才能控制或驱动执行机构。这一把模糊推理结果转换为确定数值的过程就是解模糊,或是清晰化15。解模糊的作用就是将输出的模糊集合映射到一个个确定的点,其方法与隶属函数的选择及模糊推理方法有关。在Matlab中提供了五种解模糊的方法:面积重心法、面积等分法、最大隶属度平均法、最大隶属度取小法和最大隶属度取大法。本设计选取了重心法,该方法也称为质心法或面积中心法,是所有解模糊方法中较为直观合理较为流行的方法,其数学表达式为: 其中,A(u)是论域U上集合A的隶属函数,表示输出模糊子集所有元素的隶属度值在连续论域上的代数积分,而得取之是表示左右两边的面积值相等。这种方法计算较为复杂,但它包含了输出模糊

38、子集的所有元素信息,较为精确。输出模糊量经上述方法解模糊后,再经过线性制度变换后即可输出到直流电机,对机器人进行转向控制。2.4利用Matlab模糊逻辑工具箱建立和分析模糊控制器 Matlab软件是由美国Math Work公司推出的,该软件提供了丰富的数值分析、矩阵运算、图形绘制、数据处理等功能。此外,Matlab还包含有大量的工具箱,如控制系统工具箱、系统辨识工具箱、神经网络工具箱等,极大地丰富了软件的功能。模糊逻辑工具箱(Fuzzy logic Toolbox)提供了模糊逻辑系统的命令行(在Command Window中使用)和图形用户界面(Graphical User Interface

39、,GUI)两种仿真方式,两者均可方便地建立、编辑、观察、分析和设计模糊推理系统(Fuzzy Inference System,FIS),进行模糊推理系统的仿真。工具箱中提供了生成和编辑FIS的长用工具函数,如newfis、addvar、addmf、addrule、setfis等,用户可以通过调用这些函数生成和编辑模糊推理系统。模糊逻辑工具箱还提供了5个带有GUI的基本工具,用于建立、编辑和观察模糊推理系统。它们分别是模糊推理系统编辑器、隶属度函数编辑器(Mfedit)、模糊规则编辑器(Ruleedit)、模糊规则观察器(ruleview)和曲面观察器(Surfview)。这五个图形化工具操作简

40、单,相互动态联系,可以用来快速、直观地构建余户设计的模糊系统。根据前面的设计,本系统是根据障碍物距离和目标到机器人连线的夹角来控制机器人的转向,共有4个输入:左侧、前方、右侧障碍物距离和目标夹角;一个输出:转向角。因此系统属于四维模糊控制器。在Matlab主窗口中键入fuzzy,回车,即弹出FIS编辑器的界面。工具箱默认的模糊控制器时单输入单输出的。因此,点击菜单EditAddVAriableInput,增加三个输入变量,得到四维Mamdani型FIS编辑器界面,如下: 图2.10 FIS编辑器界面 在FIS界面中,依次点选各输入输出方框,为其命名。在左下角区域,单击个编辑框,选择恰当的模糊逻

41、辑算法。如Defuzzification(解模糊)一项,根据前文分析,选取为centroid(面积中心法)。右下角区域则可看到点选的变量的相关信息。双击任一输入输出变量模框,弹出隶属度函数(MF)编辑器。左上部分显示了已命名过的输入输出变量模框。点击任一模框,其隶属函数显示于右侧,默认有三个三角形隶属函数。以输入变量夹角sa为例,根据前面设计,其模糊子集共有五个。因此点击EditAdd MFs,增加两个模糊子集。然后依次点选各图线,在右下角可以该模糊子集进行命名,赋值和改变隶属函数等操作。左下角区域可对各变量的范围进行编辑。完成后情况如下图: 图2.11 MF编辑器界面 在任一编辑器界面中,依

42、次单击菜单EditRules,或双击FIS界面的模糊规则模框,即可打开模糊控制规则编辑器界面。其上方为规则显示区,编辑好的模糊规则将以“if(条件)then(结果)”的形式逐条显示出来,直观方便。在其下方为编辑区,各输入变量和输出变量区内,已列出了在上一步所编辑的个变量的模糊子集名称。依次点选各输入输出子集名称,即可完成一条模糊规则的编辑,点击Add rule,模糊规则即添加到上面的显示区。参照上一节制定的模糊规则表,依次将56条模糊规则输入到规则显示区。如下图所示: 图2.12 模糊规则编辑器界面 至此,模糊控制器的就已经设计完成。其后,可以通过规则观测窗和输出曲面观测窗对模糊推理过程进行观测,它们均是图形化界面,较为形象直观。 在FIS界面顺序点击菜单EditRules,即可弹出规则观测窗,以变量图框的形式显示每条模糊控制规则。小图框先输出覆盖输入、输出变量的模糊子集,并显示有模糊子集的隶属函数图线。在变量图框区最后一行右下角有一个输出量小框图,表示的是各条规则所得结论综合后的总输出:蓝色部分是每条规则最终输出的模糊子集隶属函数,红线则是模糊输出“解模糊”后的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1