当前位置:首页 > 模糊PID控制及其MATLAB仿真
第五章 模糊PID控制器的
第五章 模糊PID控制器的MATLAB仿真
5.1 模糊PID控制的仿真
5.1.1 FIS编辑器
在MATLAB提示符下键入下列名字启动系统“Fuzzy”。打开一个标记为input1的单输入,标记为output1的单输出的一个没有标题的FIS编辑器[10]。打开Edit菜单并选择Add Variable...分别添加输入、输出,并分别命名为E,EC,ΔKP,ΔKI,ΔKD。见图5-1。
图5-1 设置好的FIS编辑器
24
第五章 模糊PID控制器的
5.1.2 隶属函数
在上图所示窗口中,打开View下拉式菜单并选择Edit Membership Functions...通过双击各个变量,设置Range和Display Range。以定义其论域和每支隶属函数的范围。从Edit菜单中选择Add MFs...分别对系统的输入输出变量按照设计书对隶属函数的类型、数量进行定义,见图5-2。
图5-2 隶属函数编辑器
5.1.3 模糊规则库
在上图所示窗口中,点击“Edit”,选中“Rules...”按照任务书中的关于e、ec、ΔKP、ΔKD、ΔKI的模糊规则,参照编辑器的提示,将规则一条一条的录入其中,见图5-3。
25
第五章 模糊PID控制器的
图5-3 模糊规则库
综上,对模糊控制器的各部分设置完成,将其保存为“fuzzpid.fis”。 使用菜单栏中的View->Rules即可观察设计规则,如图5所示。拖动输入变量中间的竖直线,可以看到控制量的变化情况。
图5-4 Rule Viewer
26
第五章 模糊PID控制器的
通过调用曲面观察器,所设计的模糊系统如图5-5。
图5-4 Surface Viewer
通过分析图形特点,可以看到它有明显的梯度分布,说明所设计的模糊系统从误差和误差变化到三个PID参数变化量的模糊映射与理论设计匹配良好。
因而,所设计的模糊控制器合格。
5.2 对模糊控制器编程仿真
设被控对象为
Gp(s)?523500 (式5-1)
s3?87.35s2?10470s采样时间为1ms,采用模糊PID控制进行阶跃响应,在第300个采样时间时控制器输出加1.0的干扰,相应的响应结果如下图所示:
27
共分享92篇相关文档