智能控制实验报告
智能控制实验
实验名称 基本模糊控制器设计
电子工程与自动化 学院
智能科学与技术 专业
08003902 班 作者 吴 学号
实验日期 2011 年 12 月 6 日
辅导员意见:
辅导员 成绩 签 名
基本模糊控制器的设计
一、实验目的
1、掌握MATLAB 软件中的模糊工具箱的使用。
2、掌握模糊控制器设计的步骤和要点。
二、实验内容
本实验设计一个含有模糊控制器的控制系统,并对该系统进行仿真,研究模糊控制器的设计方法。在此基础上自己设计5个语言变量的模糊控制器,控制系统的方框图如下:
三、实验原理 1、在Matlab 环境下,使用fuzzy 命令,进入FIS 编辑器,用File\New FIS 菜单创建Mamdani
型Fuzzy 控制器。
2、首先将输入变量1命名ER ,然后增加一个输入变量命名CE ,将输出命名CU ,这样就规定了该控制器为2个输入变量ER 和CE ,一个输出变量CU 。
3、进入隶属函数编辑界面,分别将ER 、CE 和CU 的论域设定为[-2,2]、[-0.2,0.2]和[-2,2],分别对上述3个变量增加3和隶属函数,并以F 、O 、Z 表示变量为负值、零附近和正值。
4、进入规则编辑器界面,添加模糊控制规则,并用规则观察器和曲面观察器,对控制规则的总体情况进行观察。
5、模糊控制器设计完后,将该FIS 存盘,并将它作为一个变量保存到Workspace 中。
6、在Matlab 环境下,进入Simuink 工具箱,建立该控制系统的仿真模型,其中的模糊
控制器从模糊工具箱中取得,并将它的FIS 指定为我们前面 设计完成的模糊控制器变量。
7、对上述控制系统进行仿真,观察控制系统的阶跃响应。
四、实验内容及步骤
1、按上述步骤建立模糊控制系统的模型,进行仿真测试,观察控制系统的阶跃响应。
以下是语言变量为三个的模糊控制模型的设计过程:
其中ER 和CE 为两个输入量,CU 为输出,论域分别设定为[-2,2]、[-0.2,0.2]和[-2,2]。并且在Simulink 的参数选择的Advanced 选项参数中的Optimizations 的各设
置改为off (见实验内容2的最后一个截图)。此处因为所用受控对象为S
S 1
2 有
积分环节所以CU 有正有负。
各个语言变量的设计 模糊推理规则设计
隶属度函数设计 推理规则判别显示(可检查规则设计是否有误)
推理规则surface 显示 系统最后输出
2、将语言变量由3个改为5个,自己建立隶属函数和模糊规则,观察系统控制性能的变化。
其中ER 和CE 为两个输入量,CU 为输出,论域分别设定为[-2,2]、[-0.2,0.2]
和[0,2]。由于这里所用的受控系统为
1
S 5S 61
2
++,没有积分环节所以不CU 为正的。
五语言变量设计
模糊推理规则设计
推理规则判别显示(可检查规则设计是否有误)推理规则surface显示
系统最后输出Simulink的参数选择的Advanced选项参数的设置
五、问题
推理规则中各部分的与控制性能的关系,隶属函数与控制性能的关系,模糊控制器的优点。
推理规则的选择会直接影响到控制性能的优劣,选择合适的推理规则能够使得系统的收敛速度,稳定性等达到较好的效果,隶属度函数的选取则会影响到模糊化的过程,从而影响清晰化的结果,间接地影响了控制信号的优劣。另外,语言变量多可以使得控制的精度更准确,从而使得收敛度加快,但是由于语言变量过多会使得推理规则变得很复杂,多以选取较为合适的语言变量个数也是可以改善系统的控制性能。
六、总结
经本次实验,我掌握了MATLAB软件中的模糊工具箱的使用,掌握了模糊控制器设计的步骤和要点。本次实验需要注意的是模糊规则和隶属度函数的选取会影响到控制效果和性能。如果没有将Fuzzy中设计的模糊控制器保存到workspace中的话simulink无法调用而且simulink的参数设置不对的话也不能够
的出理想的结果,simulink的参数设计除了按上图设置为,还应注意要设计响应时间使得scope能够完整地把输出结果显示出来。