模糊pid matlab(simulink)仿真详细步骤

2025-07-16 09:18:46

下面用一个简单的例子作介绍:

(本例不是特别针对实现什么功能,只是为了介绍方便)

第一部分 埒摆缥膂创建一个模糊逻辑(.fis文件)

第一步:打开模糊推理系统编辑器

步骤:

在Commond Window 键入fuzzy

回车

模糊pid matlab(simulink)仿真详细步骤

打开如下窗口,既模糊推理系统编辑器

模糊pid matlab(simulink)仿真详细步骤

第二步:使用模糊推理系统编辑器

本例用到两个输入,两个输出,但默认是一个输人,一个输出

步骤:

1、添加一个输入

模糊pid matlab(simulink)仿真详细步骤

添加一个输出

模糊pid matlab(simulink)仿真详细步骤

得如下图

模糊pid matlab(simulink)仿真详细步骤

2、选择Input、output(选中为红框),在Name框里修改各输入的名称

并将And method 改为prod,将Or method 改为 probor

模糊pid matlab(simulink)仿真详细步骤

提示:在命名时’_’在显示时为下标,可从上图看出。

第三步:使用隶属函数编辑器

该编辑器提供一个友好的人机图形交互环境,用来设计和修改模糊推理系中各语言变量对应的隶属度函数的相关参数,如隶属度函数的形状、范围、论域大小等,系统提供的隶属度函数有三角、梯形、高斯形、钟形等,也可用户自行定义。

步骤:

1、双击任何一个输入量(In_x、In_y)或输出量打开隶属度函数编辑器。

模糊pid matlab(simulink)仿真详细步骤

2、在左下处Range和Display Range处添加取值范围,本例中In_x和In_y的取值范围均为[0 10], Out_x和Out_y的取值范围均为[0 1]

3、默认每个输入输出参数中都只有3个隶属度函数,本例中每个输入输出参数都需要用到五个,其余几个需要自己添加:

选中其中一个输入输出参数

点击Edit菜单,选Add MFS…打开下列对话框

模糊pid matlab(simulink)仿真详细步骤

将MF type设置为trimf(三角形隶属度函数曲线,当然你也需要选择其他类型)

将Number of MFs设置为2

点击OK按钮

同样给其他三个加入隶属度函数

4、选中任何一个隶属度函数(选中为红色),在Name中键入名称,在Type中选择形状,在Params中键入范围,然后回车如下图:

模糊pid matlab(simulink)仿真详细步骤

模糊pid matlab(simulink)仿真详细步骤

模糊pid matlab(simulink)仿真详细步骤

5、关闭隶属函数编辑器

第四步:使用规则编辑器

通过隶规则编辑器来设计和修改“IF...THEN”形式的模糊控制规则。由该编辑器进行模糊控制规则的设计非常方便,它将输入量各语言变量自动匹配,而设计者只要通过交互式的图形环境选择相应的输出语言变量,这大大简化了规则的设计和修改。另外,还可为每条规则选择权重,以便进行模糊规则的优化。

步骤:

1、打开规则编辑器

点击Edit菜单,选Rules…

模糊pid matlab(simulink)仿真详细步骤

打开下了对话框

模糊pid matlab(simulink)仿真详细步骤

2、添加规则

选中IXL2,IYL2,OXL2,none(表示不被选中任何隶属度函数),and选项,权重Weight均设为1,然后点击Add rule添加规则,同理添加其他规则。

下图为添加所有role后:

模糊pid matlab(simulink)仿真详细步骤

3、关闭规则编辑器

第五步:保存并查看结果

步骤:

1、保存

模糊pid matlab(simulink)仿真详细步骤

保存为Test.fis

2、View->Rules打开Rule Viewer

模糊pid matlab(simulink)仿真详细步骤

3、View->Surface打开Surface Viewer

模糊pid matlab(simulink)仿真详细步骤

第二部分:将模糊逻辑添加到Simulink中

第一步:创建一个Simulink文件

步骤:

1、打开Simulink

模糊pid matlab(simulink)仿真详细步骤

2、点击新建按钮建立一个新的.mdl文件

模糊pid matlab(simulink)仿真详细步骤

第二步:添加模糊逻辑

步骤:

1、在Simulink Library Brower的搜索框内键入Fuzzy Logic Controller找到Fuzzy Logic Controller,并将其拖拽到新建的mdl文件中

模糊pid matlab(simulink)仿真详细步骤

2、双击Fuzzy Logic Controller,打开如下对话框,比在其内部键入Test

模糊pid matlab(simulink)仿真详细步骤

3、关闭对话框

第三步:添加其他模块

如下图,都是常用模块,请自己添加

模糊pid matlab(simulink)仿真详细步骤

第四步:保存并运行

步骤:

1、保存为Test.mdl

2、初始化模糊逻辑控制器,即在Command Window中键入Test = readfis('Test.fis'),回车

模糊pid matlab(simulink)仿真详细步骤

1、运行Test.mdl

这里可以比较一下结果

模糊pid matlab(simulink)仿真详细步骤

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢