模糊控制系统及其MATLAB实现.docx
- 文档编号:27810380
- 上传时间:2023-07-05
- 格式:DOCX
- 页数:15
- 大小:541.49KB
模糊控制系统及其MATLAB实现.docx
《模糊控制系统及其MATLAB实现.docx》由会员分享,可在线阅读,更多相关《模糊控制系统及其MATLAB实现.docx(15页珍藏版)》请在冰豆网上搜索。
模糊控制系统及其MATLAB实现
1.模糊控制的相关理论和概念
1.1模糊控制的发展
模糊控制理论是在美国加州伯克利大学的L.A.Zadeh教授于1965年建立的模糊集合论的数学基础上发展起来的。
之后的几年间Zadeh又提出了模糊算法、模糊决策、模糊排序、语言变量和模糊IF-THEN规则等理论,为模糊理论的发展奠定了基础。
1975年,Mamdan和Assilian创立了模糊控制器的基本框架,并用于控制蒸汽机。
1978年,Holmblad和Ostergaard为整个工业过程开发出了第一个模糊控制器——模糊水泥窑控制器。
20世纪80年代,模糊控制开始在工业中得到比较广泛的应用,日本仙台地铁模糊控制系统的成功应用引起了模糊领域的一场巨变。
到20世纪90年代初,市场上已经出现了大量的模糊消费产品。
近30年来,因其不依赖于控制对象的数学模型、鲁棒性好、简单实用等优点,模糊控制已广泛地应用到图像识别、语言处理、自动控制、故障诊断、信息检索、地震研究、环境预测、楼宇自动化等学科和领域,并且渗透到社会科学和自然科学许多分支中去,在理论和实际运用上都取得了引人注目的成果。
1.2模糊控制的一些相关概念
用隶属度法来定义论域U中的集合A,引入了集合A的0-1隶属度函数,用
A(x)表示,它满足:
A(x)
用0-1之间的数来表示x属于集合A的程度,集合A等价与它的隶属度函数
A(x)
模糊系统是一种基于知识或基于规则的系统。
它的核心就是由所谓的IF-THEN规则所组成的知识库。
一个模糊的IF-THEN规则就是一个用连续隶属度函数对所描述的某些句子所做的IF-THEN形式的陈述。
例如:
如果一辆汽车的速度快,则施加给油门的力较小。
这里的“快”和“较小”分别用隶属度函数加以描述。
模糊系统就是通过组合IF-THEN规则构成的。
构造一个模糊系统的出发点就是要得到一组来自于专家或基于该领域知识的模糊IF-THEN规则,然后将这些规则组合到单一系统中。
不同的模糊系统可采
用不用的组合原则。
用隶属度函数表征一个模糊描述后,实质上就将模糊描述的模糊消除了。
模糊控制系统设计的关键在于模糊控制器的设计。
模糊控制器的设计主要有三个部分:
(1)输入量的模糊化
所谓模糊化(Fuzzification)就是先将某个输入测量量的测量值作标准化处理把该输入测量量的变化范围映射到相应论域中,再将论域中的各输入数据以相应
的模糊语言值的形式表示,并构成模糊集合。
这样就把输入的测量量转换为用隶属度函数表示的某一模糊语言变量。
(2)模糊逻辑推理
根据事先已定制好的一组模糊条件语句构成模糊规则库,运用模糊数学理论对模糊控制规则进行推理计算,从而根据模糊控制规则对输入的一系列条件进行综合评估,以得到一个定性的用语言表示的量,即模糊输出量。
完成这部分功能的过程就是模糊逻辑推理过程。
(3)反模糊化过程
反模糊化(Defuzzification)有时又叫模糊判决。
就是将模糊输出量转化为
能够直接控制执行部件的精确输出量的过程。
模糊控制器的核心部分又在于模糊推理系统(FIS)的建立
2.MATLAB/SIMULIN工具箱的应用
模糊控制作为智能控制的一种,实质是对人脑思维的一种模拟,因此,模糊控制器的设计在很大程度上依赖于设计者的实践经验,若是用一般的编程语言(如C语言)来实现模糊控制系统的设计和仿真,往往非常困难。
使用工具软件MATLA中的SIMULINI工具箱可以方便地对模糊控制系统进行仿真。
SIMULINI工具箱是MATLA软件的扩展,主要用于动态系统的仿真。
SIMULINK模块库中提供了建立系统模型所需的大部分模块。
系统的模型建好后,用户可以
根据系统的不同需要,设置或更改模块的参数,然后打开仿真菜单,设置仿真参数,起动仿真过程,仿真结束后用户可以通过输出示波器或plot绘图函数观察系统的仿真输出。
在MATLA菜单窗口中输入命令fuzzy可进入FIS编辑器,在FIS编辑器中可以设置输入输入变量的模糊隶属度函数和模糊控制规则。
如下图所示:
隶属度函数有三角形、梯形等不同种类。
设置好模糊推理系统FIS后保存设置结果,用菜单项里的File-〉Export-〉toworkspace将它导出到Matlab的工作空间,这样在用SIMULINI仿真的时候FIS才能被调用。
打开SIMULINI工具箱,选择相应的模块,设置好模型参数,在FuzzyLogic
Toolbox中选择FuzzyLogicController,在FISfilesorstructure中填入已经
保存的FIS文件名,建立起系统的动态模型。
点击仿真按钮,就可以在示波器中看到仿真结果。
SIMULINK
FIS(mask)(link)
FIS
Paamelcrs
FISHeorstiudurec
wd1|
FuzzyLogicController设置
3模糊控制在一个二阶环节中的应用
3.1系统模型
许多工业控制对象都可以等效为二阶环节。
以下面的二阶环节为例:
H(s)
20
2
1.6s4.4s1
设计它的模糊控制器,观察其阶跃响应。
3.2语言变量的选取以及隶属函数的确立
假设系统输入为r=1.0,可取系统输出误差e和误差变化de作为模糊控
制器的输入,模糊控制器的输出u作为被控对象的控制输入。
则可根据系统输出的误差和误差变化设计出模糊控制器FC,并根据一系列的模糊推理过程推导出最终的输出控制量u。
其中,误差e误差变化量de以及输出u所对应的模糊语言变量分别为E、DE和ULE和DE的论域范围均为[-6,6],U的论域范围为[-33]。
每个语言变量都取5个语言值:
“正大(PB)”、“正小(PS)”、“零(ZR)”、“负小(NS)”、“负大(NB)”,其隶属度函数图如图所示。
3.3模糊推理规则的定义
定义该模糊
根据前面定义的隶属度函数并且结合以往专家们所取得的经验控制系统的模糊控制规则,如下表所示。
DE
E
NB
NS
ZR
PS
IB
NB
田
田
PS
PS
ZR
NS
PB
PS
ES
ZR
ZR
ZR
PS
P$
ZR
ZR
NS
PS
PS
ZR
ZR
NS
NS
ra
ZR
ZR
XS
NS
NB
在规则编辑器中将以上25条规则加入规则库
1.lf(EisNB)andCDEisMB)then(UisPB)
(1)
2.If(EisNB)andCDEisNS)thenfUisPB)
(1)
3.If(EisNB)and(J)EisHR)then(UisPS)(1j
4.If(EisNB)andCDEisPS)then(UisPS)⑴WIf(EisNB)endCDEisPBJthen(Uis£K)
(1)
6.If(Eis;MS)and(t)EisNB)then(UisPB)
(1)
7.If(EisMS)andCDEisNS)thenfUisPS)
(1)
S3.If(EisMS)andCDE厉ZFQthen(UisPS)(11Is.If(Ei?
NS)andCDEisPS^then(Ui?
ZR)
(1)
R
EisNS)and(DEisPB)1her(pisZRJC)
EisZR)and(DEishE)thsn(UisPS)
(1)
Tlien
3.4在SIMULINI中建立模糊控制系统并进行仿真
取模糊量化因子Ke=5,Kde=0.05,比例因子Ku=2仿真得到的阶跃响应曲线如图所示。
3.5量化因子和比例因子对控制效果的影响
设计模糊控制器除了要有一整套有效的控制规则外,还必须合理地选择模糊控制器量化因子和比例因子系数,大量的实验结果表明,量化因子和比例因子的大小及量化因子之间的大小相对关系,对模糊控制器的控制性能有非常大的影响。
量化因子ke和kde分别相当于模糊控制的比例作用和微分作用;比例因子ku则相当于总的放大倍数。
此外,ke和kde两者之间也相互影响,在选择量化因子时要充分考虑这一点。
ke对动态性能的影响是:
ke越大,系统的调节惰性越小,上升速率越快。
Ke过大,系统上升速率过大,产生的超调大,使调节时间增长,严重时还会产生振荡乃至系统不稳。
Ke过小,系统上升速率较小,系统调节隋性变大,同时也影响系统的稳态性能,使稳态精度降低.
ke=2,kde=0.05,ku=2时
kde对动态性能的影响是:
kec大,反应快,上升速率小,调节时间长,超调量小;kde小,反应较迟钝,调节时间短,超调量大
Q12345578310
ke=5,kde=0.04,ku=2时
ku增大,相当于系统总的放大倍数增大,系统的响应速度加快.ku过大,会导致系统输出上升速率过大,从而产生过大的超调乃至振荡和发散.ku过小,系统的前向增益很小,系统输出上升速率较小,快速性变差,稳态精度变差.
ke=5,kde=0.05,ku=2时
统获得较好的响应特性。
4.自适应模糊PID控制器
PID控制器以其算法简单,计算量小,使用方便,鲁棒性较强等优点而得到广泛应用,并取得了良好的控制效果。
但是对于一些时变和非线性的系统常规PID就显得无能为力了。
同时,在实际控制系统控制过程中,由于噪声、负载扰动和其他一些环境条件变化的影响,受控过程参数,模型结构均将发生变化。
在这种情况下,采用常规PID控制器难以获得满意的控制效果,而模糊控制不依赖被控对象精确的数学模型,是在总结操作经验基础上实现自动控制的一种手段。
,但
输出具有跳跃性,在论域0值附近自振荡.
自适应模糊PID控制器将模糊控制和PID控制器两者结合起来,扬长避短,既具有模糊控制灵活而适应性强的优点,又具有PID控制精度高的特点•它的原理是当误差小于某一阈值e0时,采用PID控制,以提高系统的控制精度;当误差大于某一阈值e0时,采用模糊控制,以提高系统响应速度,加快响应过程,抑制超调。
对如下一个二阶系统使用模糊PID进行控制:
G(s)亠
ss
模糊控制器的输入量为E和EC输出量为U。
输入量E
量化论域:
-6〜6
模糊状态:
NB,NM,NS,NZ,PZ,PS,PM,PB.
输入量EC
量化论域:
-6〜6
模糊状态:
NB,NM,NS,Z,PS,PM,PB.
输出量U
量化论域:
-7〜7
模糊状态:
NB,NM,NS,Z,PS,PM,PB.
由专家经验得到的模糊控制规则表如下所示
ec\
NB
NS
KZ
PZ
PS
PM
PB
NB
XB
NB
NM
NM
NM
NS
Z
Z
NM
XB
NB
NM
NM
NM
NS
Z
z
NS
NB
NB
NM
NS
NS
Z
PM
PM
Z
XB
NB
NM
Z
Z
PM
PB
PB
PS
NM
NXI
Z
PS
PS
Phi
PB
PB
PM
Z
Z
PM
PM
PM
PM
PB
PB
PB
Z
Z
PM
PM
PM
PM
PB
PB
根据模糊控制规则表,在MATLA的FIS编辑器中建立起模糊推理系统,在
SIMULINI中建立系统的仿真图,设置量化因子Ke=3,Kec=0.1,Ku=1,PID参数Kp=15,Ki=1,Kd=2在选择开关的设置中,将参数“Threshold”设置为0.1,这样当偏差|e|>=0.1时,开关Switch只接通Fuzzy控制器;当|e|<0.1时,开关Switch只接通PID控制器。
完成各部分的参数设置后,点击仿真在示波器中观看系统的阶跃响应曲线。
46,If花iiPS)and(ECisPM)ihen(UisPM)
(1)
47.If(EiePM)And(EGnPM)then(UkPfi)
(1)4B.if(EisPBJand(ECisPMJther(Uisp日)0〕49If(EisNB)and(ECisPB)then(Uk口口)5Q.If(E用NIJ)ancKEC冷P6)then(UisZ)
(1)
51If(EisNS)and(ECisPBJther(UisPM)
(1)
52If(EisNZ)and(ECisP6)therQJisPM)⑴
53.If(EisP2Jand(ECisPB)ihcn(Mis円町0)
54.If(EisPS)and(ECisP日)themQJisPI叩⑴
55.if(EisPM)and(ECisPfljihm(UkPBf)⑴尿,If伍怡PB)冃nd(EG呂PR)th”2isPE)〔1)
h
Eis
规则编辑
PID子系统
自适应模糊PID控制的阶跃响应仿真结果
纯PID控制的阶跃响应仿真结果
从仿真的结果可以看到,采用Fuzzy-PID控制器的阶跃响应超调量和调节时间都明显优于单一的PID控制器。
取得了比较好的控制效果。
参考文献
1.Matlab在Fuzzy-PID控制器用于船舶操纵仿真中的应用,《机电设备》,2004
年第3期
2.基于MATLA的两种模糊控制系统的仿真方法,《计算机仿真》,2004年第3
期
3.基于Matlab的自适应模糊PID控制器的设计,《电气传动自动化》,2006年
第3期
4.论模糊控制器中量化因子和比例因子的作用,《内蒙古科技与经济》,2004年第19期
5.Matlab在模糊控制系统仿真中的应用,《自动化与仪表》,2006年第6期
6.基于Matlab的模糊控制系统的设计与仿真,《计算机时代》,2003年第1期
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模糊 控制系统 及其 MATLAB 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)