Simulink模糊控制教程_第1页
Simulink模糊控制教程_第2页
Simulink模糊控制教程_第3页
Simulink模糊控制教程_第4页
Simulink模糊控制教程_第5页
已阅读5页,还剩49页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MATLAB应用技术清华大学出版社1整理课件6MATLAB与模糊控制系统2整理课件6.1模糊系统的MATLAB实现6.1.1模糊集简介模糊集是一种边界不分明的集合,模糊集与普通集合既有区别又有联系。2模糊集的表示1模糊概念模糊集菜用隶属度来表示,论域X上的一个模糊集A,对于任意,都指定了一个数,叫做x对A的隶属程度称做A的隶属函数。隶属度函数有以下11种:(1)高斯型隶属度函数

(2)双侧高斯型隶属度函数(3)钟形隶属度函数3整理课件(4)Sigmoid函数型隶属度函数(5)差型sigmoid隶属度函数(6)积型sigmoid隶属度函数(7)Z形隶属度函数(8)Ⅱ形隶属度函数(9)S形隶属度函数(10)梯形隶属度函数(11)三角形隶属度函数4整理课件3模糊逻辑运算与运算

或运算

非运算

直积

逻辑与(AANDB)

逻辑或(AORB)逻辑非(NOTA)

普通逻辑:模糊逻辑5整理课件4模糊规则模糊推理系统工程中,模糊规则以模糊语言的形式描述人类的经验和知识,规则是否正确反映人类专家的经验和知识更新,是否能反映对象的特性,直接决定了模糊推理系统的性能,通常通过模糊规则的形式是“if…then”,前提由对模糊语言变量的语言什描述构成,如“温度较高”,“压力较低”等,结论由对输出模糊语言变量表示成输入量的精确什的组合,模糊规则的这种形式化表示的符合人们通过自然对许多知识的描述和记忆习惯的。模糊规则的建立①总结操作人员工、专家的经验和知识。②基于过程的模糊模型。③基于学习的方法。6整理课件最简单的if…then规则的形式是:“如果x是A,则y是B。”复合型的if…then规则的形式很多,例如:“

ifm是A且x是Btheny是C,否则z是D”

;“

ifm是A且x是B且y是C,thenz是D”

;“

ifm是A或x是Btheny是C,或z是D”

;“

ifm是A且x是Btheny是C,且z是D”

;这里A,B,C,D分别是论域M,X,Y,Z,中模糊集的主义值,if部分是前提或前件,then部分是结论或后件。输入模糊化确定出if…then规则前提中每个命题或断言为真的程度(即隶属度)。应用模糊算子召唤果规则的前提有几部分,则利用模糊算子可以确定出整个前提为真的程度(即整个前提的隶属度)。应用蕴含算子由前提的隶属度和蕴含琥子,可以确定出结论为真的程度(即结论的隶属度)。7整理课件5模糊推理模推理是采用模糊逻辑由给定的输入到输出的映射过程。模糊推理包括五个方面:(1)输入变量模糊化,即把确定的输入转化为由隶属度描述的模糊集。(2)在模糊规则的前件中应用模糊算子(与、或、非)。(3)根据模糊蕴含运算由前提推断结论。(4)合成每一个规则的结论部分,得出总的结论。(5)反模糊化,即把输出的模糊量转化为确定的输出。8整理课件6模糊控制在自动控制理论中,控制器的分析与综合依赖于精确的数学模型。而系统在实际运行过程中,人们将观察到的过程输出与设定值比较,得到过程输出偏离设定值程度的模糊语义描述或过程输出偏离设定值变化快慢的模糊语义描述,经逻辑推理得出控制量的模糊量:“适量减少燃料”,经反模糊化且,转化为一精确的控制量,实现整个控制过程,以模糊集和模糊推理为基础,对上述手工操作过程进行建模,即可得到期模糊控制器。9整理课件6.1.2模糊推理系统与MATLAB的应用1模糊推理系统结构最常见的模糊推理系统的三类:1、纯模糊逻辑系统2、Sugeno型模糊逻辑系统3、Mamdani型模糊系统10整理课件2Mamdani型模糊逻辑系统构建Mamdani型是典型的模糊逻辑系统,MATLAB模糊逻辑工具箱中的模糊推理系统有五个过程:输入变量的模糊化、模糊关系运算、模糊合成运算、不同规则结果的综合、去模糊化。(1)输入模糊化(2)输入模糊集合的合成运算(3)模糊蕴含方法(4)输出的合成Aggregation(5)逆模糊化(解模糊化)11整理课件6.1.3模糊推理系统的MATLAB模糊工具箱的图形界面实现

模糊推理系统可通过MATLAB模糊工具箱的图形界面工具来实现,方法简单并且直观,也可利用MATLAB提供的命令行方式的模糊逻辑函数编辑实现,有利于比较复杂的模糊推系统。1图形界面工具箱简介MATLAB模糊工具箱提供的图形化工具有五类:模糊推理系统编辑器Fuzzy;隶属度函数编辑器Mfedit;模糊规则编辑器Ruleedit;模糊规则观察器Ruleview;模糊推理输入输出曲面视图Surfview。12整理课件2模糊推理系统编辑器(Fuzzy)执行Fuzzy命令13整理课件3.隶属度函数编辑器(Mfedit)命令窗口键入”mfedit”

14整理课件4.模糊规则编辑器(Ruleedit)15整理课件5.模糊规则观察器(Ruleview)命令窗口键入“ruleview”

16整理课件6.模糊推理输入输出曲面视图(Surfview)命令窗口键入“surfview”

17整理课件6.1.4模糊逻辑工具箱与Simulink的接口1MATLAB的模糊的图形化系统建模和仿真工具Simulink

当在模糊逻辑工具箱中建立了模糊推理系统后,首先,对模糊逻辑工具箱中建立的模糊推理系统后生成FIS文件,然后,在MATLAB命令窗口键入命令Simulink或是直接点击工具栏上的Simulink图标,可以打开Simulink模块库浏览环境,在Simulink模块库浏览环境里通过选择菜单【File】、【New】、【Model】或直接点击工具栏上的相应图标来创建一个新的模型。在新的仿真模型编辑主窗口中搭建仿真控制系统模型。18整理课件例设计典型二阶环节,

的模糊控制器,使系统输出尽快跟随系统输入。19整理课件设系统输入为R=10,系统输出误差为e,误差导数为de,则可根据系统输出的误差和误差导数设计出模糊控制器(FC)。FC的输入为e和de的模糊量,输出为u的模糊量,论域分别为:[-11]、[-11]、[-1010],其模糊语言分别为:E:“大B”;“小S”de:“正P”“零Z”、“负N”;u:“负大NB”、“负小NS”、“零ZR”、“正小PS”、“正大PB”。20整理课件使用MATLABL图形界面工具设计模糊控制器FC:确定隶属度函数确定模糊控制器规则将编制好的文件生成FIS文件上述过程按前面讲解完成,该例子的文件名为GH.fis;在MATLAB下的Simulink环境中建立二级系统的仿真模型如下:21整理课件将MATLAB下的GH.fis文件导入Simulink模型中,作为的模糊控制器FC的参数:步骤:(1)选取择上图中的模糊模块控制器(双击其图标),打开对话框并给导入到仿真系统中的模糊控制器命名为gh.fis(2)在MATLAB环境下使用命令:gh=read(‘GH.FIS’)执行即可(3)模型中变量修改使用FIS中的Wizard模块将编制的模糊控制器标准化

22整理课件

模糊控制器参数类型转换图23整理课件系统输出24整理课件6.2MATLAB模糊逻辑工具箱命令行函数应用6.2.1MATLAB模糊逻辑工具箱函数GUI(图形用户界面)工具函数功能anfisedit打开ANFIS编辑器的GUI(图形界面)fuzzy调用基本功的FIS编辑器mfedit隶属度函数编辑器ruleedit规则编辑器和解析器ruleview规则观测器和模糊推理框图surfview输出曲面观测器25整理课件隶属度函数函数功能dsigmf由两个S形隶属度函数的差构成的隶属度函数gauss2mf联合高斯型隶属度函数gaussmf高斯型隶属度函数gbellmf广义钟形隶属并函数pimfⅡ形隶属度函数psigmf由两个S形隶属度函数的积构成的隶属度函数smfS状隶属度函数sigmfS形隶属并函数trapmf梯形隶属度函数trimf三角形隶属度函数zmfZ形隶属度函数26整理课件FIS数据结构管理函数功能addmf隶属度函添加到FIS(模糊推理系统)addrule在FIS中添加规则addvar在FIS中添加变量defuzz反模糊化的隶属度函数evalfis完成模糊推理计算evalmf普通隶属度函数的计算gensurf产生FIS输出曲面getfis获取模糊系统的特性mf2mf在隶属度函数之间进行参数变换newfis建立新的FISparsrule模糊规则解析plotfis绘图表示FISplotmf绘制出给定变量的所有隶属度函数readfis从磁盘中装入FISrmmf从FIS中删除隶属度函数rmvar从FIS中删除变量setfis设置模糊系统的特性showfis显示带注释的FISshowrule显示FIS规则writefis将FIS结构保存到磁盘文件中27整理课件

先进技术函数功能anfisSugeno型的训练程序fcm模糊C均值聚类genfis1从示加聚类的数据中产生FIS结构genfis2利用减法聚类从数据中产生FIS结构subclust找出减法聚类的聚类中心28整理课件Simulink仿真方框函数功能fuzblock模糊逻辑控制器框图仿真sffisSimulink中和模糊推理S函数29整理课件其余函数函数功能convertfisFIS结构的版本变换findcluster模糊C均值和减法聚类的交互聚类GUIfuzarith完成模糊算术运算mam2sug将Mamdani型的FIS变换成Sugeno型FISfuzdemos模糊逻辑工具箱演示程序列表helpfuzzy30整理课件

模糊系统演示程序函数功能defuzzdm去模糊方法fcmdemoFCM聚类方法演示(二维)gasdemo使用减法聚类的ANFIS演示juggler魔球演示invkine机械臂的倒置irisfcmFCM聚类演示(四维)noisedm自适应噪声对消slbb球棒控制slcp倒立摆控制sltank水位控制sltankrule水位控制(得用规则观测器)sltbu卡车倒车控制31整理课件6.2.2MATLAB命令行函数使用1、隶属度函数(1)dsigmf功能:由两个S形隶属度函数的差构成的隶属度函数。格式:y=dsigmf(x,[a1c1a2c2])(2)Gauss2mf功能:联合高斯(Gaussian)型隶属函数格式:y=gauss2mf(x,[sig1c1sig2c2])(3)gaussmf功能:高斯(Gaussian)型隶属度函数。格式:y=gaussmf(x,[sigc])32整理课件(4)gbellmf功能:广义钟形隶属度函数。格式:y=gbellmf(x,params)(5)primf功能:Ⅱ形隶属度函数。格式:y=pimf(x,[abcd])(6)psigmf功能:由两个S形隶属度函数的积成的隶属度函数。格式:y=psigmf(x,[a1c1a2c2])(7)smf功能:S状隶属度函数。格式:y=smf(x,[ab])33整理课件(8)Sigmf功能:S形隶属度函数。格式:y=sigmf(x,[ac])(9)trapmf功能:梯形隶属度函数。格式:y=trapmf(x,[abcd])(10)

trimf功能:三角形隶属度函数。格式:y=trimf(x,params)y=trimf(x,[abc])(11)zmf功能:Z形隶属度函数。格式:y=zmf(x,[ab])34整理课件2.FIS数据结构管理(1)addmf功能:隶属度函数添加到FIS(模糊推理系统)。格式:a=addmf(a,´varType´,varIndex,´mfName´,´mfType´,mfParams)(2)addrule功能:在FIS中添加规则。格式:a=addrule(a,ruleList)(3)addvar功能:在FIS中添加变量:格式:a=addvar(a,´varType´,´varName´,varBounds)35整理课件(4)defuzz功能:反模糊化的隶属度函数。格式:out=defuzz(x,mf,type)(5)evalfis功能:完成模糊推理计算。格式:output=evalfis(input,fismat)Output=evalfis(input,fismat,numPts)[output,IRR,ORR,ARR]=evalfis(input,fismat)[output,IRR,ORR,ARR]=evalfis(input,fismat,numPts)(6)evalmf功能:普通隶属度函数的计算。(7)gensurf功能:产生FIS输出曲面。36整理课件(8)getfis功能:获取模糊系统的特性。(10)newfis功能:建立新的FIS.格式:a=newfis(fisName,fisType,andMethod,orMethod,impMethod,aggMethod,defuzzMethod)(9)mf2mf功能:在隶属度函数之间进行参数变换。格式:outParams=mf2mf(inParams,inType,outType)(11)parsrule功能:模糊规则解析。格式:fis2=parsrule(fis,txtRuleList)fis2=parsrule(fis,txtRuleList,ruleFormat)fis2=parsrule(fis,txtRuleList,ruleFormat,lang)37整理课件(12)plotfis功能:绘图表示FIS。格式:plotfis(fismat)(13)plotmf功能:绘制出给定变量的所有隶属度函数。格式:plotmf(fismat,´varType´,varIndex)(14)readfis功能:从磁盘中装入FIS。格式:fismat=raedfis(´filename´)(15)rmmf功能:从FIS中删除隶属度函数。格式:fis=rmmf(fis,´varType´,varIndex,´mf´,mfIndex)38整理课件(16)rmvar功能:从FIS中删除变量。格式:[fis2,errorStr]=rmvar(fis,´varType´,varIndex)fis2=rmvar(fis,´varType´,varIndex)(17)setfis功能:设置模糊系统的特性。格式:a=setfis(a,´fisPropname´,´newfisProp´);a=setfis(a,´varType´,varIndex,´varPropname´,´newvarProp´);a=setfis(a,´varType´,varIndex,´mf´,mfIndex,´mfPropname´,´newmfProp´);(18)showfis功能:显示带注释的FIS。格式:showfis(fismat)39整理课件19.Showrule功能:显示FIS规则。格式:showrule(fis)showrule(fis,indxList)showrule(fis,indexList,format)showrule(fis,indexList,format,Lang)40整理课件3、先进技术(1)anfis功能:Sugeno型FIS的训练程序。(2)fcm功能:模糊C均值聚类。格式:[center,U,obj_fcn]=fcn(data,cluster_n)(3)genfis1功能:从未加聚类的数据中产生FIS结构。格式:fismat=genfis1(data)(4)genfis2功能:利用减法聚类从数据中产生FIS结构。格式:fismat=genfis2(Xin,Xout,radii)fismat=genfis2(Xin,Xout,radii,xBounds)fismat=genfis2(Xin,Xout,radii,xBounds,options)41整理课件(5)Subclust功能:找出减法聚类的聚类中心。格式:[C,S]=subclust(X,radii,xBounds,options)42整理课件4、Simulink仿真方框(1)fuzblock功能:模糊逻辑控制器框图仿真。格式:fuzblock(2)sffis功能:Simulink中的模糊推理S函数。格式:output=sffis(t,x,u,flag,fismat)43整理课件5、其余函数(1)Convertfis功能:FIS结构的版本变换。格式:fis_new=converfis(fis_old)(2)findcluster功能:模糊C均值和减法聚类的交互聚类GUI。格式:findcluster(3)fuzarith功能:完成模糊算术运算。格式:C=fuzarith(X,A,B,operator)44整理课件(4)mam2sug功能:将Mamdani型的FIS变换成Sugeno型FIS。(5)fuzdemos功能:模糊逻辑工具箱演示程序列表。格式:fuzdemos45整理课件6.2.3MATLAB模糊逻辑工具箱命令函数应用实例设计典型二阶环节:

的模糊控制器,使系统输出尽快跟随系统输入。46整理课件隶属度函数误差隶属度函数误差变化率隶属度函数47整理课件输出隶属度函数48整理课件FC的模糊推量规则表u edeNBNSZRPSPBNBPBPBPSPSZRNSPBPSPSZRZRZRPSPSZRZRNSPSPSZRZRNSNSPBZRZRNSNSNB49整理课件MATLAB程序如下num=20;den=[1.64.41];[a1bcd]=tf2ss(num,den);x=[0;0];T=0.01;h=T;N=250;R=1.5*ones(1,N);参考输入%定义输入输出变量与隶属度函数a=newfis('Simple');a=addvar(a,'input','e',[-66]);a=addmf(a,'input',1,'NB','trapmf',[-6,-6,-5,-3]);a=addmf(a,'input',1,'NS','trapmf',[-5,-3,-2,0]);a=addmf(a,'input',1,'ZR','trimf',[-2,0,2]);a=addmf(a,'input',1,'PS','trapmf',[0,2,3,5]);a=addmf(a,'input',1,'PB','trapmf',[3,5,6,6]);a=addvar(a,'input','de',[-6,6]);a=addmf(a,'input',2,'NB','trapmf',[-6,-6,-5,-3]);a=addmf(a,'input',2,'NS','trapmf',[-5,-3,-2,0]);a=addmf(a,'input',2,'ZR','trimf',[-2,0,2]);a=addmf(a,'input',2,'PS','trapmf',[0,2,3,5]);a=addmf(a,'input',2,'PB','trapmf',[3,5,6,6]);a=addvar(a,'output','u',[-3,3]);a=addmf(a,'output',1,'NB','trapmf',[-3,-3,-2,-1]);a=addmf(a,'output',1,'N

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论