Matlab模糊控制器的设计以及simulink下对模糊控制器系统的仿真

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Matlab模糊控制器的设计以及simulink下对模糊控制器系统的仿真

————————————————————————————————作者:————————————————————————————————日期:

Matlab模糊控制器的设计以及simulink下对模糊控制器系统的仿真

首先,在Matlab的命令窗口(command window)中输入fuzzy,回车就会出来这样一个窗口:

接下来在上述窗口中进行模糊控制器的设计:

1.双输入,单输出:点击Edit----Add Variable---input

2.为E添加隶属度函数,E的论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},

E的模糊集合为{NB,NM,NS,NZ,PZ,PS,PM,PB},Edit—Membership Function edit,如下图所示:

3.为EB添加隶属度函数,EB的论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},

EB的模糊集合为{NB,NM,NS,ZE,PS,PM,PB},Edit—Membership Function edit,如下图所示:

4.为U添加隶属度函数,U的论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},

U的模糊集合为{NB,NM,NS,ZE,PS,PM,PB},Edit—Membership Function edit,如下图所示:

其中E,EB,U均为模糊量。

5.为模糊控制器设计模糊规则,由于E的语言变量有8个,EB的语言变量有7

个,所以模糊控制器的模糊规则总共有8*7=56条,接下来为模糊控制器添加规则:双击untitled,则有下面的表格:

制定完成后,会形成模糊规则矩阵,系统会根据模糊输入量E,EB,经过模糊控制规则[56条],进而确定输出量U。

6.对输入量模糊化以及对输出量清晰化,我们采取最小最大重心法。

7.点击export—to file. ***#$.fis文件就是所设计的控制器。

8.下面对我们设计的模糊控制器进行检验,所构建的系统如下:

系统分析:

模糊控制器:双输入单输出,输入为误差以及误差的变化率的模糊量,输出为控制量的模糊量,模糊控制器中有56条规则。

给定的信号:给定信号为阶跃响应,给定为100,整个系统是+反馈系统。

实际范围与模糊论域之间的比例关系,又叫量化因子,分别为三个增益:误差0.06,误差变化率0.0005,输出量10,增益必须认真选取,增益必须认真选取,增益的选取对模糊控制器的控制效果有很大的影响。

9.对系统进行仿真结果如下:

仿真结果分析:

由仿真结果可以看到,问题1,系统在14s时已趋于稳定,给定的阶跃信号是100,最终系统却稳定在了83左右;问题2,系统的超调偏大,快速性不好。

问题1,分析原因,这和我们预先设定的规则有关系,在80+时已经默认达到PB,模糊控制器便不再调节,继而稳定在83左右,这也验证了模糊控制器是有差控制。

问题2,分析原因,这和系统的控制规则以及输入输出的增益有关系,具体的改善,可以调节增益值以及修改相关规则改善,但是不能完全消除。

相关文档
最新文档