模糊控制.docx
《模糊控制.docx》由会员分享,可在线阅读,更多相关《模糊控制.docx(12页珍藏版)》请在冰豆网上搜索。
模糊控制
《模糊控制》大作业
王光辉自123121001
水箱液位模糊控制系统的设计
一、目的:
1、掌握利用matlab进行模糊控制系统设计与仿真的方法
2、深入理解模糊控制器的设计过程和设计方法
3、深入理解模糊控制系统的设计过程
二、设计内容
已知一水箱中液体的流出是随机变化的。
通过人工控制进液阀门开度大小,能够调节水箱内液位的高低,使液位保持恒定。
根据人工操作经验,总结出如下的操作规则:
如果液位偏低,则快开阀门
如果液位正好,则阀门开度不变
如果液位偏高,则快关阀门
如果液位正好而液位变化慢,则慢开阀门
如果液位正好而液位变化快,则慢关阀门
设计一个模糊控制系统,使水箱液位保持恒定。
三、设计过程(alt+印屏幕键,可以复制当前窗口)
1、模糊控制器的设计
利用FIS编辑器设计mamdani型模糊控制器
(1)模糊控制器的结构
输入变量:
液位level进液流速rate
输出变量:
阀门开度valve
(2)模糊化
输入输出变量的模糊论域、覆盖变量论域的模糊子集的名称、隶属函数
及拐点的参数见表1。
表1覆盖输入输出变量的模糊子集设定值
变量名称
变量模糊论域
覆盖的模糊子集名称
模糊子集类型
模糊子集拐点的参数
液位
level
[-11]
negative(偏高)
高斯型
[0.3-1]
zero(正好)
[0.30]
positive(偏低)
[0.31]
液位变化率
rate
[-0.10.1]
negative(偏慢)
[0.03-0.1]
zero(正好)
[0.030]
positive(偏快)
[0.030.1]
阀门开度
valve
[-11]
closefast(快关)
三角型
[-1-0.9-0.8]
closeslow(慢关)
[-0.6-0.5-0.4]
nochange(不变)
[-0.100.1]
openslow(慢开)
[0.20.30.4]
openfast(快开)
[0.80.91]
(3)编辑模糊规则
模糊控制规则如表2所示,利用规则编辑器编辑语言型模糊规则。
表2液位模糊控制规则
Levelrate
none(无)
negative(偏慢)
zero(正好)
positive(偏快)
none(无)
negative(偏高)
closefast(快关)
zero(正好)
nochange(不变)
openslow(慢开)
closeslow(慢关)
positive(偏低)
openfast(快开)
(4)模糊逻辑推理
按表3选择模糊逻辑推理算法,并利用5种清晰化算法,分别求出模糊控制器在level=0.3和rate=0.08时的输出。
表3模糊逻辑推理算法
模糊逻辑选项
Andmethod
Ormethod
Implication
Aggregation
defuzzification
选定算法
min
max
min
max
(5)保存
注意:
在设计过程中随时保存。
2、模糊控制系统的仿真
利用simulink建立水箱液位模糊控制系统的模型并仿真。
系统模型见tank_fc.mdl文件,理解系统模型(双击模块可查看模块属性),
嵌入上面设计好的模糊控制器,仿真运行,分析结果。
图1水箱模糊控制系统模型
面积中心法
面积平分法
最大隶属度法(平均值法)
最大隶属度法(最大值法)
最大隶属度法(最小值法)
总结:
运用不同的模糊算法得到的输出结果不同,就本系统来说,面积中心法比面积平分法来说,输出波形更稳定一些,波动要小一些。
当液位及液位变化率选择不同的模糊集合隶属函数,会使输出产生极大的变化,甚至使系统不稳定。
3、选做:
改变模糊集合的隶属函数类型、模糊规则数目、清晰化算法等,分析对控制效果的影响。
参见P211~P217