1、u例例1:工业工程控制工业工程控制u例例2:典型二阶环节典型二阶环节 的模糊控的模糊控制制u例1:某一工业过程要根据测量的温度(t)和压力(p)来确定阀门开启的角 度:这种关系很难用数学模型精确描述。实际中由有经验的操作员完成,因此通常可设计模糊控制器取而代之。),(Ptfu温度:0 30 度u压力:0 3 大气压u阀门开启的角度:1010度u采用三角形隶属度函数u温度:“冷”“热”u压力:“正常”“高”05101520253000.20.40.60.81温度隶属度函数00.511.522.5300.20.40.60.81压力隶属度函数u“负”“零”“正”-10-8-6-4-202468100
2、0.20.40.60.81角度增量隶属度函数u模糊推理规则有3条:If 温度“冷”and 压力“高”,则阀门角度增量为“正”If 温度“热”and 压力“高”,则阀门角度增量为“负”If 压力“正常”,则阀门角度增量为“零”pc1=newfis(pc1);pc1=addvar(pc1,input,温度,0 30);pc1=addvar(pc1,input,压力,0 3);pc1=addvar(pc1,output,增量,-10 10);addvar功能:功能:在在FIS中添加变量。中添加变量。格式:格式:a=addvar(a,varType,varName,varBounds)addmf功能:
3、功能:隶属度函数添加到隶属度函数添加到FIS(模糊推理系统模糊推理系统)。格式:格式:a=addmf(a,varType,varIndex,mfName,mfType,mfParams)05101520253000.20.40.60.81温度隶属度函数00.511.522.5300.20.40.60.81压力隶属度函数pc1=addmf(pc1,input,1,冷,trapmf,0 0 10 20);pc1=addmf(pc1,input,1,热,trapmf,10 20 30 30);pc1=addmf(pc1,input,2,正常,trimf,0 1 2);pc1=addmf(pc1,in
4、put,2,高,trapmf,1 2 3 3);pc1=addmf(pc1,output,1,负,trimf,-10-5 0);pc1=addmf(pc1,output,1,零,trimf,-5 0 5);pc1=addmf(pc1,output,1,正,trimf,0 5 10);addrule功能:在FIS中添加规则。格式:a=addrule(a,ruleList)m个输入,个输入,n个输出:个输出:前前m列表示系统的输入,每列表示系统的输入,每列的数值表示输入变量隶属列的数值表示输入变量隶属度函数的编号;接着的度函数的编号;接着的n列列表示系统的输出,每列的数表示系统的输出,每列的数值表
5、示输出变量隶属度函数值表示输出变量隶属度函数的编号;第的编号;第m+n+1 列为该列为该条规则的权值(条规则的权值(01);第);第m+n+2 列的值决定模糊操列的值决定模糊操作符的类型:作符的类型:1(当模糊操(当模糊操作符为作符为AND时)或时)或2(当模(当模糊操作符为糊操作符为OR时)。时)。rulelist=1 2 3 1 1;2 2 1 1 1;0 1 2 1 2;pc1=addrule(pc1,rulelist);u模糊推理规则 If 温度“冷”and 压力“高”,则阀门角度增量为“正”If 温度“热”and 压力“高”,则阀门角度增量为“负”If 压力“正常”,则阀门角度增量为
6、“零”uevalfis功能:功能:完成模糊推理计算。完成模糊推理计算。格式:格式:output=evalfis(input,fismat)output=evalfis(input,fismat,numPts)unumPts:计算输入和输出隶属度函数时采用的取样点数,如缺省,则采用缺省值:101。例如,当t=5,P=2,则evalfis(5 2,pc1)ans=5这说明模糊控制器的输出为5 u绘制出当t(或者P)不变时的控制曲线,例如当t5时,可求出控制输出与压力P之间的关系,如图(a)所示。00.511.522.53-20246压力控制051015202530-505温度控制t1=0:30;P
7、1=2;X1=t1,P1*ones(size(t1);Y1=evalfis(X1,pc1);subplot 212plot(t1,Y1),xlabel(温度);ylabel(控制)ugensurf(pc1)0510152025300123-505温度压力增 量14.46.120)(2sssHDuCxyBuAxx这种以传递函数形式表示的系统可以等效表示成状态方程形式u四阶龙格库塔公式,也就是在工程中应用广泛的经典龙格库塔算法:34231214321*)(,)(2/*)(,2)(2/*)(,2)()(),(6/22*)()1(),()(khixhiufkkhixhiufkkhixhiufkixiu
8、fkkkkkhixixBuAxxuftxu设系统输入为R,系统输出误差为e,误差导数为de,则可根据系统输出的误差和误差导数设计出模糊控制器(FC)。u误差e的论域:【6 6】u误差导数de的论域:【6 6】u控制输入u的论域:【3 3】-6-4-2024600.20.40.60.81eNBNSZRPSPB-6-4-2024600.20.40.60.81deNBNSZRPSPB -3-2-1012300.20.40.60.81uNBNSZRPSPB edeNBNSZRPSPBNBPBPBPSPSZRNSPBPSPSZRZRZRPSPSZRZRNSPSPSZRZRNSNSPBZRZRNSNSNB
9、u%Example 3.8u%典型二阶系统的模糊控制u%u%被控系统建模num=20;den=1.6,4.4,1;a1,b,c,d=tf2ss(num,den);x=0;0;u%系统参数T=0.01;h=T;N=250;R=1.5*ones(1,N);%参考输入u%定义输入和输出变量及其隶属度函数a=newfis(Simple);a=addvar(a,input,e,-6 6);a=addmf(a,input,1,NB,trapmf,-6,-6,-5,-3);a=addmf(a,input,1,NS,trapmf,-5,-3,-2 0);a=addmf(a,input,1,ZR,trimf,-
10、2,0,2);a=addmf(a,input,1,PS,trapmf,0,2,3 5);a=addmf(a,input,1,PB,trapmf,3,5,6,6);a=addvar(a,input,de,-6 6);a=addmf(a,input,2,NB,trapmf,-6,-6,-5,-3);a=addmf(a,input,2,NS,trapmf,-5,-3,-2 0);a=addmf(a,input,2,ZR,trimf,-2,0,2);a=addmf(a,input,2,PS,trapmf,0,2,3,5);a=addmf(a,input,2,PB,trapmf,3,5,6,6);a=a
11、ddvar(a,output,u,-3 3);a=addmf(a,output,1,NB,trapmf,-3,-3,-3,-2);a=addmf(a,output,1,NS,trimf,-2,-1,0);a=addmf(a,output,1,ZR,trimf,-1,0,1);a=addmf(a,output,1,PS,trimf,0,1,2);a=addmf(a,output,1,PB,trapmf,2,3,3,3);u%模糊规则矩阵。rr=5 5 4 4 3 5 4 4 3 3 4 4 3 3 2 4 3 3 2 2 3 3 2 2 1;r1=zeros(prod(size(rr),3);k
12、=1;for i=1:size(rr,1)for j=1:size(rr,2)r1(k,:)=i,j,rr(i,j);k=k+1;endendr,s=size(r1);r2=ones(r,2);rulelist=r1,r2;a=addrule(a,rulelist);u%采用模糊控制器的二阶系统仿真e=0;de=0;ke=30;kd=20;ku=1;for k=1:Nu%输入变量变换至论域e1=ke*e;de1=kd*de;if e1=6 e1=6;elseif e1=6 de1=6;elseif de1=-6 de1=-6;endu%模糊推理,计算出被控对象的控制输入in=e1 de1;u=
13、ku*evalfis(in,a);uu(1,k)=u;u%控制作用于被控系统,计算系统输出k0=a1*x+b*u;k1=a1*(x+h*k0/2)+b*u;k2=a1*(x+h*k1/2)+b*u;k3=a1*(x+h*k2)+b*u;x=x+(k0+2*k1+2*k2+k3)*h/6;y=c*x+d*u;yy(1,k)=y;u%计算系统输出误差及误差导数 e1=e;e=y-R(1,k);de=(e-e1)/T;endu%典型二阶环节的模糊控制输出曲线kk=1:N*T;figure(1);plot(kk,R,k,kk,yy,r);grid onxlabel(时间(秒);ylabel(输出);u
14、模糊控制系统阶跃响应曲线 00.511.522.500.20.40.60.811.21.41.61.82时间(秒)输出u完成下列题目之一,独立思考,可以互相讨论,目的是掌握模糊控制系统的实际设计;u将自己设计结果形成报告,应该包含系统分析、模糊控制系统设计、程序、结果、结果分析和设计体会。报告发送地址:uEmail:u典型二阶系统的模糊控制与传统PID控制的性能比较。通常的工业过程可等效成二阶系统加上一些典型的非线性环节,如死区、饱和、纯延迟等,这里假设系统为:控制执行结构具有0.07的死区和0.7的饱和区,取样时间间隔T0.01。设计模糊控制器,并绘出参考输入为1时的模糊控制系统响应。18210)(2sssHu倒立摆的动力学方程为:u其中x1表示摆与垂直线的夹角,x2表示摆的旋转角速度,g为地球重力加速度,m是倒立摆的质量,2L为摆长,a=1/(M+m),M为小车质量,u表示作用于小车上的力。设m=2kg,M=8kg,L=0.5m)(cos3/4)cos(2/)2sin()sin(1211221221xamlluxaxamlxxgxxxu以x1、x2为输入,设计模糊控制器,绘出当初值为x1=1.309、x2=0时,模糊控制器的输出曲线和系统状态响应。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。