




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.6 模糊控制器设计实例1、单输入模糊控制器的设计【例5.12】已知某汽温控制系统结构如图5.10所示,采用喷水减温进行控制。设计单输入模糊控制器,观察定值扰动和内部扰动的控制效果。图5.10 单回路模糊控制系统按表5-2确定模糊变量E、U的隶属函数,按表5-3确定模糊控制规则,选择温度偏差e、控制量u的实际论域:,则可得到该系统的单输入模糊控制的仿真程序如FC_SI_main.m所示,仿真结果如图5.11所示。设温度偏差e、控制量u的实际论域:,选择e、u的等级量论域为量化因子。选择模糊词集为NB,NS,ZO,PS,PB,根据人的控制经验,确定等级量E,U的隶属函数曲线如图5-8 所示。根据
2、隶属函数曲线可以得到模糊变量E、U的赋值表如表5-3所示。图5-8 E,U的隶属函数曲线表5-3 模糊变量E、U的赋值表()等级量E、U-3-2-10123PB000000.51PS000010.50ZO000.510.500NS00.510000NB10.500000依据人手动控制的一般经验,可以总结出一些控制规则,例如:若误差E为O,说明温度接近希望值,喷水阀保持不动;若误差E为正,说明温度低于希望值,应该减少喷水;若误差E为负,说明温度高于希望值,应该增加喷水。若采用数学符号描述,可总结如下模糊控制规则:若E负大,则U正大;若E负小,则U正小;若E为零,则U为零;若E正小,则U负小;若E
3、正大,则U负大。写成模糊推理句:if E=NB then U=PBif E=NS then U=PSif E=ZO then U=ZOif E=PS then U=NSif E=PB then U=NB由上述的控制规则可得到模糊控制规则表,如表5-4所示。表5-4 模糊控制规则表ENBNSZOPSPBUPBPSZONSNB模糊控制规则实际上是一组多重条件语句,它可以表示从误差论域E到控制量论域U的模糊关系R。按着上述控制规则,可以得到该温度偏差与喷水阀门开度之间的模糊关系:计算模糊关系矩阵R的子程序如F_Relation_1.m所示。%模糊关系计算子程序F_Relation_1.cfuncti
4、on R,mfe,mfu,ne,nu,Me=F_Relation_1%#输入模糊变量赋值表(表5-3)#ne=7;%等级量e的个数nu=7;%等级量u的个数Me=0 0 0 0 0 0.5 1;0 0 0 0 1 0.5 0;0 0 0.5 1 0.5 0 0; 0 0.5 1 0 0 0 0;1 0.5 0 0 0 0 0;Mu=Me;%#定义模糊变量及其语言值 1=PB,2=PS,3=O,4=NS,5=NB,并输入模糊控制规则表(表5-4)#mfc=5;%模糊变量E的语言值个数,控制规则表列数 E=5 4 3 2 1;UC=1 2 3 4 5;%#计算R=E×U#R=zeros(
5、ne,nu);for i=1:mfc iu=UC(i); ie=E(i); for k=1:ne for l=1:nu if Me(ie,k)<Mu(iu,l) Reu(k,l)=Me(ie,k); else Reu(k,l)=Mu(iu,l); end end end for k=1:ne for l=1:nu if Reu(k,l)>R(k,l) R(k,l)=Reu(k,l); end end endend运行结果如下:由此,可以得到各种输入时,模糊控制器的输出:单输入时: (5-5)双输入时: (5-6)三输入时: (5-7)例如:单输入时,设,根据前面的等级量划分原则,其
6、等级量,由表5-2可以查出。根据式(5-5)可以得到:其模糊决策子程序如F_Deduce_1.m所示。%单输入时模糊决策子程序F_Deduce_1.mfunction FU=F_Deduce_1(fe,R,ne,nu)for i=1:nu for j=1:ne if fe(j)<R(j,i) feu(j)=fe(j); else feu(j)=R(j,i); end end FU(i)=max(feu);end%单输入模糊控制仿真程序FC_SI_main.m,被控对象W(s)=-1.1/(35s+1)4)clear allDT=1;ST=1500;LP=ST/DT; A1=exp(-DT
7、/35);B1=1-A1;x(1:4)=0;ur=0;%#设置e、u的初始论域及其等级量论域,计算量化因子及比例因子#em=1.5;EM=3;Ke=EM/em;UM=3;um=1.5;Ku=um/UM;%#调用计算模糊关系矩阵R的子程序F_Relation_1.m#R,mfc,ne,nu,Me=F_Relation_1;%#for k=1:LP %#计算FC的输出# e=1-x(4);%计算偏差量e e1=round(Ke*e);%把e转化成等级量 if e1>EM;e1=EM;end if e1<-EM;e1=-EM;end j=e1+EM+1; Fi=1; for i=2:mu
8、 if Me(i,j)>Me(i-1,j);Fi=i;end;%得到模糊语言值 end U=F_Deduce_1(Me(Fi,:),R,ne,nu);%调用模糊决策子程序 %加权平均法判决控制器的输出 Su=0;S=0; for i=-UM:UM Su=Su+i*U(i+UM+1);S=S+U(i+UM+1); end u=Ku*Su/S+ur; %*仿真计算被控对象* x(1)=A1*x(1)-1.1*B1*u; x(2)=A1*x(2)+B1*x(1); x(3)=A1*x(3)+B1*x(2); x(4)=A1*x(4)+B1*x(3); y1(k)=x(4); u1(k)=u;
9、t(k)=k*DT; if t(k)>800;ur=0.5;end;%800秒后加入内扰end plot(t,y1)hold on;plot(t,u1,'-')图5.11 单输入模糊控制器的控制效果从上述的仿真结果可以看到,定值扰动时系统可以达到稳定,但是有很大的静差,不能满足工程上的要求,究其原因是,模糊控制器实质上是一个具有继电器型非线性特性的控制器(如图5.11中所示的u),没有积分作用,对于有自平衡对象一定会产生静差,而且系统极容易产生震荡。从图5.11就可看出,虽然设计的模糊控制器对定值扰动是稳定的,但对于内扰并不能使其稳定。非线性控制器的控制效果取决于各变量的
10、论域及扰动量的大小【1】,因此,模糊控制器的大范围工程应用还有许多问题需要研究。2、双输入模糊控制器的设计【例5.13】对于图5.10所示的系统,设计双输入模糊控制器,观察定值扰动和内部扰动的控制效果。下面考虑两个输入的情况:设温度偏差e、偏差变化率ec及控制量u的实际论域:,选择它们的等级量论域分别为量化因子,假设选取E的模糊变量词集为选取模糊变量E的赋值表如表5-5所示。表5-5 e的等级量与模糊量的关系 EE-6-5-4-3-2-1-0+0+1+2+3+4+5+6PB00000000000.10.40.81.0PM0000000000.20.71.00.70.2PS00000000.30
11、.81.00.50.100PO000000 01.00.60.10000NO00000.10.61.00000000NS000.10.51.00.80.30000000NM0.20.71.00.70.2000000000NB1.00.80.40.10000000000选取EC、U的模糊变量词集为选取模糊变量EC的赋值表如表5-2所示,模糊变量U的赋值表如表5-6所示。表5-6等级量U与模糊量U的关系 UU-7-6-5-4-3-2-10+1+2+3+4+5+6+7PB000000000000.10.40.81.0PM0000000000.20.71.00.70.20PS00000000.41.0
12、0.80.40.1000ZO0000000.5 1.00.5000000NS0000.10.40.81.00.40000000NM00.20.71.00.70.2000000000NB1.00.80.40.100000000000现将操作者在操作过程中遇到的各种出现的情况和相应的控制策略汇总为表5-7。表5-7 双输入时的模糊控制规则表 E UECNBNMNSNOPOPSPMPBNBPBPBPMPMPMPSZOZONMPBPBPMPMPMPSZOZONSPBPBPMPSPSZONSNMZOPBPMPSZOZONSNMNBPSPMPMPSZONSNSNMNBPMPMPSZONSNMNMNBNBP
13、BPSZONSNMNMNBNBNB下面说明建立模糊控制规则表的基本思想。首先考虑误差为负的情况,当误差(希望值减去温度值)为负大时(说明温度高于希望值),若误差变化率也为负,这时误差有增大的趋势,为尽快消除已有的负大误差并抑制误差变大,所以控制量的变化取正大(控制量增大,意味着喷水阀门开度增大,喷水量增加,使得温度下降,下同)。当误差为负而误差变化率为正时,系统本身已有减少误差的趋势,所以,为尽快消除误差而又不超调,应取较小的控制量。当误差为负中时,控制量的变化应使误差尽快消除,基于这种原则,控制量的变化选取同误差为负大时相同。当误差为负小时,系统接近稳态,若误差变化微小时,选取控制量变化为正
14、中,以抑制误差往负方向变化;若误差变化为正时,系统本身有消除负小的误差的趋势,选取控制量变化为正小。上述选取控制量变化的原则:当误差大或较大时,选择控制量以尽快消除误差为主;当误差较小时,选择控制量要注意防止超调,以系统稳定性为主要出发点。按着上述控制规则,可以得到温度偏差及偏差变化率与喷水阀门开度之间的模糊关系:其中角标E,EC,U分别表示误差、误差变化率和控制量。设e、ec、u的等级量分别为nfe、nfec、nfu,则R是一个行列的矩阵。计算模糊关系矩阵R的子程序如F_Relation_2.m所示。%模糊关系计算子程序F_Relation_2.cfunction R,n,nE,nEC,nU
15、,nfe,nfec,nfu,Me,Mec=func()%#定义E的模糊变量值1=PB,2=PM,3=PS,4=-O,5=+0,6=NS,7=NM,8=NB并输入表(5-5)#nE=8;%模糊变量E的语言值个数¸控制表列数E=8 7 6 5 4 3 2 1;nfe=14;%E的等级量个数Me=0 0 0 0 0 0 0 0 0 0 0.1 0.4 0.8 1.0; 0 0 0 0 0 0 0 0 0 0.2 0.7 1.0 0.7 0.2; 0 0 0 0 0 0 0 0.3 0.8 1.0 0.5 0.1 0 0; 0 0 0 0 0 0 0 1.0 0.6 0.1 0 0 0 0;
16、 0 0 0 0 0.1 0.6 1.0 0 0 0 0 0 0 0; 0 0 0.1 0.5 1.0 0.8 0.3 0 0 0 0 0 0 0; 0.2 0.7 1.0 0.7 0.2 0 0 0 0 0 0 0 0 0; 1.0 0.8 0.4 0.1 0 0 0 0 0 0 0 0 0 0;%#定义EC的模糊变量值1=PB,2=PM,3=PS,4=0,5=NS,6=NM,7=NB并输入表(5-2)#nEC=7;% 模糊变量EC的语言值个数¸控制表行数EC=7 6 5 4 3 2 1;nfec=13;%EC的等级量个数Mec=0 0 0 0 0 0 0 0 0 0.1 0.4
17、0.8 1.0; 0 0 0 0 0 0 0 0 0.2 0.7 1.0 0.7 0.2; 0 0 0 0 0 0 0 0.9 1.0 0.7 0.2 0 0; 0 0 0 0 0 0.5 1.0 0.5 0 0 0 0 0; 0 0 0.2 0.7 1.0 0.9 0 0 0 0 0 0 0; 0.2 0.7 1.0 0.7 0.2 0 0 0 0 0 0 0 0;1.0 0.8 0.4 0.1 0 0 0 0 0 0 0 0 0; %#定义U的模糊变量值1=PB,2=PM,3=PS,4=0,5=NS,6=NM,7=NB并输入表(5-6)#nU=7;% 模糊变量U的语言值个数U=7 6 5
18、4 3 2 1;nfu=15;%U的等级量个数Mu=0 0 0 0 0 0 0 0 0 0 0 0.1 0.4 0.8 1.0; 0 0 0 0 0 0 0 0 0 0.2 0.7 1.0 0.7 0.2 0; 0 0 0 0 0 0 0 0.4 1.0 0.8 0.4 0.1 0 0 0; 0 0 0 0 0 0 0.5 1.0 0.5 0 0 0 0 0 0; 0 0 0 0.1 0.4 0.8 1.0 0.4 0 0 0 0 0 0 0; 0 0.2 0.7 1.0 0.7 0.2 0 0 0 0 0 0 0 0 0; 1.0 0.8 0.4 0.1 0 0 0 0 0 0 0 0 0
19、0 0;%#输入模糊控制规则表(表5-7)#nfc=8;%模糊变量E的语言值个数,模糊控制表列数mfc=7;%模糊变量EC的语言值个数,模糊控制表行数UC=1 1 2 2 2 3 4 4;1 1 2 2 2 3 4 4;1 1 2 3 3 4 5 6;1 2 3 4 4 5 6 7; 2 2 3 4 5 5 6 7;2 3 4 5 6 6 7 7;3 4 5 6 6 7 7 7;%#计算R=(E×EC×U)#R=zeros(nfe*nfec,nfu);for i=1:mfc for j=1:nfc %E×EC ie=E(j); iec=EC(i); for k=1
20、:nfe for l=1:nfec if Me(ie,k)<Mec(iec,l) Reec(k,l)=Me(ie,k); else Reec(k,l)=Mec(iec,l); end end end %E×EC×U iu=UC(i,j); n=0; for k=1:nfe for l=1:nfec n=n+1; for t=1:nfu if Reec(k,l)<Mu(iu,t) Reecu(n,t)=Reec(k,l); else Reecu(n,t)=Mu(iu,t); end end end end for k=1:n for l=1:nfu if Reec
21、u(k,l)>R(k,l) R(k,l)=Reecu(k,l); end end end endend双输入时,先根据e、ec计算出相应的等级量E、EC,再根据表(5-2)查出相应的,然后按式(5-6)计算出模糊控制器的输出。其模糊决策子程序如F_Deduce_2.m所示。%双输入时模糊决策子程序F_Deduce_2.mfunction FU=F_Deduce_2(fe,fec,R,n,nfe,nfec,nfu)%#计算E×EC#n=0;for i=1:nfe for j=1:nfec n=n+1; if fe(i)<fec(j) feec(n)=fe(i); else
22、feec(n)=fec(j); end endend%#计算(E×EC)。R#for l=1:nfu for i=1:n if feec(i)<R(i,l) fu(i)=feec(i); else fu(i)=R(i,l); end FU(l)=max(fu); endend按着前面的设计过程,可以得到双输入模糊控制主程序,如FC_MI_main.m所示。%单输入单变量模糊控制仿真程序FC_SI_main.m,被控对象W(s)=-1.1/(35s+1)4)clear allDT=1;ST=1500;LP=ST/DT; A1=exp(-DT/35);B1=1-A1;x(1:4)=
23、0;ur=0;e0=0;%#设置e、ec、u的初始论域及其等级量论域,计算量化因子及比例因子#em=2;EM=6;Ke=EM/em;ecm=2;ECM=6;Kec=ECM/ecm;UM=7;um=2;Ku=um/UM;U=-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7;%#调用计算模糊关系矩阵R的子程序F_Relation_2.m#R,n,nE,nEC,nU,nfe,nfec,nfu,Me,Mec=F_Relation_2;%#for k=1:LP %#计算FC输出# %#变量e模糊化处理# e=1-x(4);% 计算输入e的确切量 e1=round(Ke*e);%把
24、e转换成等级量 if e1>EM;e1=EM;end if e1<-EM;e1=-EM;end if e1<0;j=e1+EM+1;end if (e1=0)&(e<0);j=7;end if (e1=0)&(e>0);j=8;end if e1>0;j=e1+EM+2;end %得到e的模糊语言值Fi=1;mfE=Me(1,j); for i=2:nE if Me(i,j)>mfE;Fi=i;mfE=Me(i,j);end end fe=Me(Fi,:); %#变量ec模糊化处理# ec=(e-e0)/DT; e0=e;计算ec的确切
25、量 ec1=round(Kec*ec);% 把ec转换成等级量 if ec1>ECM;ec1=ECM;end if ec1<-ECM;e1=-ECM;end j=ec1+ECM+1; Fi=1; %得到ec的模糊语言值Fi=1;mfEC=Mec(1,j); for i=2:nEC if Mec(i,j)>mfEC;Fi=i;mfEC=Mec(i,j);end end fec=Mec(Fi,:); %#调用模糊决策子程序,求出控制量# FU=F_Deduce_2(fe,fec,R,n,nfe,nfec,nfu); %最大隶属度法判决控制器的输出 nU=1;mFU=FU(1);
26、for i=2:nfu if FU(i)>mFU;nU=i;mFU=FU(i);end endu=Ku*U(nU)+ur; %*仿真计算被控对象* x(1)=A1*x(1)-1.1*B1*u; x(2)=A1*x(2)+B1*x(1); x(3)=A1*x(3)+B1*x(2); x(4)=A1*x(4)+B1*x(3); y1(k)=x(4); u1(k)=u; t(k)=k*DT; if t(k)>800;ur=0.5;end;%800秒后加入内扰end plot(t,y1)hold on;plot(t,u1,'-')图5.12 双输入模糊控制器的控制效果双输入模糊控制器能使系统快速达到稳定,但是,仍然存在很大的静差,不满足工程需要。与单输入模糊控制器一样,仍不能使内扰时稳定。从上述的模糊控制器的设计过程可以看出,当选择了e、ec、u的基本论域、等级量(E、EC、U)论域、模糊量(E、EC、U)论域及控制规则后,模糊关系R就已确定,因此,可以在进行实时控制前,把控制量U全部算出,形成一个控制表,实时控制时,根据E和EC,从控制表中即可查找到相应的控制量U,这样可以大大提高实时控制时的计算速度。对于本例的模糊控制表的计算程序如FC_MI_CTable.m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆2025年重庆市奉节县事业单位面向应届生考核招聘41人笔试历年参考题库附带答案详解
- 山西电力职业技术学院《创新创业基础城市地下空间工程》2023-2024学年第二学期期末试卷
- 黑龙江交通职业技术学院《小学美术教学设计》2023-2024学年第二学期期末试卷
- 衢州职业技术学院《大气科学概论》2023-2024学年第二学期期末试卷
- 防城港职业技术学院《测控仪表及装置》2023-2024学年第二学期期末试卷
- 南昌职业大学《模特经纪管理》2023-2024学年第二学期期末试卷
- 安徽国际商务职业学院《精算学导论》2023-2024学年第二学期期末试卷
- 江西外语外贸职业学院《现代岩土工程专题》2023-2024学年第二学期期末试卷
- 无锡职业技术学院《国际货物运输与保险B》2023-2024学年第二学期期末试卷
- 南京大学《兽医传染病学实验》2023-2024学年第二学期期末试卷
- 中国特色社会主义+综合练习(三)-2025届中职高考政治一轮复习高教版(2023版)
- 情境+任务驱动作文(兼审“情境”与“任务”)-2024年中考语文重难点复习专练(江苏)学生版
- (二模)临沂市2025年高三高考模拟考试地理试题卷(含答案)
- 2024年新疆巴楚县事业单位公开招聘村务工作者笔试题带答案
- 2025年广东省广州市南沙区中考数学一模试卷
- 医务科依法执业自查表
- 电梯产品数据表
- 工厂经营管理考核方案.doc
- A4横线稿纸模板(可直接打印)-a4线条纸
- 列车牵规正文
- 格氏试剂的应用PPT课件
评论
0/150
提交评论