Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10模糊控制由于不依赖对象的数学模型而受到广泛的重视,计算机仿真是研究模糊控制系统的重要手段之一。由MathWorks公司推出的Matlab软件,为控制系统的计算机仿真提供了强有力的工具,特别是在Matlab4.2以后的版本中推出的模糊工具箱(FuzzyToolbox),为仿真模糊控制系统提供了很大的方便。由于这样的模块都是由相关领域的著名学者开发的,所以其可信度都是很高的,仿真结果是可靠的。在Simulink环境下对控制系统进行建模是非常方便的,而模糊控制系统与常见控制系统的结构基本相同,仅仅是控制器不同。所以,对模糊控制系统的建模关键是对模糊控制器的建模。Matlab软件提供了一个模糊推理系统(FIS)编辑器,只要在Matlab命令窗口键入fuzzy命令就可进入模糊控制器编辑环境。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10一、模糊推理系统编辑器(Fuzzy)模糊推理系统编辑器用于设计和显示模糊推理系统的一些基本信息,如推理系统的名称,输入、输出变量的个数与名称,模糊推理系统的类型、解模糊方法等。其中模糊推理系统可以采用Mandani或Sugeuo两种类型,解模糊方法有最大隶属度法、重心法、加权平均等。打开模糊推理系统编辑器,在MATLAB的命令窗(commandwindow)内键入:“fuzzy”命令,弹出模糊推理系统编辑器界面,如下图所示。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10首先确定输入、输出变量的个数,在Edit菜单中,选AddvariableÆinput,加入新的输入input;选AddvariableÆoutput,加入新的输出output。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10修改名称Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10二、隶属度函数编辑器(Mfedit)该编辑器提供一个友好的人机图形交互环境,用来设计和修改模糊推理系中各语言变量对应的隶属度函数的相关参数,如隶属度函数的形状、范围、论域大小等,系统提供的隶属度函数有三角、梯形、高斯形、钟形等,也可用户自行定义。双击任一个输入或输出模块,进入成员函数编辑界面。在成员变量编辑界面中,“Range”Æ确定变量的论域;“Name”Æ确定隶属函数的名称;“Type”Æ确定隶属度函数类型;如果显示的曲线数量不够(曲线的数量等于模糊集中),点击Edit菜单,选AddCustomMSÆ继续填入相应参数即可。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10三、模糊规则编辑器在确定输入输出变量和隶属度函数之后,接下来就是编写模糊规则。模糊规则采用“IFATHENB”的形式。多输入多输出的模糊规则:“IFAANDBAND···THENCAND···”。选择菜单“Edit”Æ“Rules”,打开模糊规则编辑器,如图所示:Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10在模糊规则编辑完成之后,点击菜单“View”Æ“Surface”即可查看右图所示图形。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10完成上述工作后,将编写好的模糊控制器存盘。(1)保存到磁盘上在菜单上选择“File”Æ“Export”Æ“Todisk”,选择保存路径,即可以*.fis文件的格式保存。(2)保存到工作空间在菜单上选择“File”Æ“Export”Æ“ToWorkspece”即可。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10四、在simulink中使用模糊控制在模糊工具箱将模糊控制器编写完成后,就可以在simulink中使用该模糊控制器来进行仿真了。在simulink中新建一个文件,然后在“fuzzylogictoolbox”中选择“fuzzylogicController”模块。双击此模块,在弹出的对话框中添加所用的模糊控制器的名称,(即刚才保存到工作空间的模糊控制器,名称后不加后缀)。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10上图是一个模糊控制器在simulink下的一个仿真框图,采用2输入3输出的结构,为一个参数可调整的模糊PID控制器模型。k1和k2是量化因子,其选择非常重要,是保证输出落入所定义的输入变量的论域的关键因素,量化因子选择不好,模糊控制器不进起不到较好的控制效果,甚至比不用模糊更差。输出端也应该添加一个比例因子,使模糊的输出对应实际的输出。Matlab模糊工具箱使用长安大学电控学院杨盼盼2009.7.10以上就是对Matlab中模糊工具箱使用的简单介绍,使用这个工具箱比通过.m文件来编程实现模糊控制要方便很多。Matlab中模糊工具箱的使用比较简单,关键是模糊控制理论的理解和应用,以及系统的建模等。