《模糊控制应用示例ppt课件.ppt》由会员分享,可在线阅读,更多相关《模糊控制应用示例ppt课件.ppt(43页珍藏版)》请在三一办公上搜索。
1、模糊控制应用示例,第5次课,例1:工业工程控制例2:典型二阶环节 的模糊控制,例1: 工业过程,例1: 某一工业过程要根据测量的温度(t)和压力(p)来确定阀门开启的角 度: 这种关系很难用数学模型精确描述。实际中由有经验的操作员完成,因此通常可设计模糊控制器取而代之。,输入输出变量的论域,温度: 0 30 度压力: 0 3 大气压阀门开启的角度 : 1010度,温度和压力的模糊隶属度函数,采用三角形隶属度函数温度:“冷”“热”压力:“正常”“高”,阀门开启角度的模糊隶属度函数,“负” “零” “正”,模糊推理规则库,模糊推理规则有3条: If 温度“冷” and 压力“高”,则阀门角度增量为
2、“正”If 温度“热” and 压力“高”,则阀门角度增量为“负”If 压力“正常”,则阀门角度增量为“零”,模糊控制器设计(51),c1=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),模糊控制器设计(52),addmf功能:隶属度函数添加到FIS(模糊推理系统)。格式:a = addmf(a,varType
3、,varIndex,mfName,mfType,mfParams),三角形:3个参数梯形:4个参数,模糊控制器设计(53),c1=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,input,2,高,trapmf,1 2 3 3);pc1=addmf(pc1,output,1,负,trimf,-10 -5 0);pc1=addmf(pc1,output,1,零,trimf,-5
4、0 5);pc1=addmf(pc1,output,1,正,trimf,0 5 10);,模糊控制器设计(54),addrule功能:在FIS中添加规则。格式:a = addrule (a,ruleList),m个输入,n个输出:前m列表示系统的输入,每列的数值表示输入变量隶属度函数的编号;接着的n列表示系统的输出,每列的数值表示输出变量隶属度函数的编号;第m + n + 1 列为该条规则的权值(01);第m + n + 2 列的值决定模糊操作符的类型:1(当模糊操作符为AND时)或2(当模糊操作符为OR时)。,模糊控制器设计(55),rulelist=1 2 3 1 1; 2 2 1 1 1
5、; 0 1 2 1 2;pc1=addrule(pc1,rulelist);,模糊推理规则 If 温度“冷” and 压力“高”,则阀门角度增量为“正”If 温度“热” and 压力“高”,则阀门角度增量为“负”If 压力“正常”,则阀门角度增量为“零”,模糊推理计算,evalfis功能:完成模糊推理计算。格式:output= evalfis (input, fismat)output= evalfis (input, fismat, numPts)numPts:计算输入和输出隶属度函数时采用的取样点数,如缺省,则采用缺省值:101。,模糊推理计算,例如,当t=5,P=2,则evalfis(5
6、 2,pc1)ans = 5这说明模糊控制器的输出为5,输入输出控制曲线,绘制出当t(或者P)不变时的控制曲线,例如当t5时,可求出控制输出与压力P之间的关系,如图(a)所示。,t=5; P=0.1:0.1:3;X=t*ones(size(P),P;Y=evalfis(X,pc1);figure(1)subplot 211plot(P,Y),xlabel(压力);ylabel(控制),输入输出控制曲线,t1=0:30; P1=2;X1=t1, P1*ones(size(t1);Y1=evalfis(X1,pc1);subplot 212plot(t1,Y1),xlabel(温度);ylabel
7、(控制),模糊控制器的输入/输出曲面,gensurf(pc1),例2:典型二阶环节 的模糊控制,其中a = -2.7500 -0.6250 b =1 1.0000 0 0c = 0 12.5000d = 0,这种以传递函数形式表示的系统可以等效表示成状态方程形式,设计模糊控制器,使系统输出尽快跟随系统输入 。,龙格-库塔(Runge-Kutta)方法,四阶龙格库塔公式,也就是在工程中应用广泛的经典龙格库塔算法:,系统输入输出,设系统输入为R,系统输出误差为e,误差导数为de,则可根据系统输出的误差和误差导数设计出模糊控制器(FC)。误差e的论域:【6 6】误差导数de的论域:【6 6】控制输入
8、u的论域:【3 3】,模糊化,模糊化,模糊推理规则,模糊控制系统设计,% Example 3.8% 典型二阶系统的模糊控制% %被控系统建模num=20;den=1.6,4.4,1;a1,b,c,d=tf2ss(num,den);x=0;0;,模糊控制系统设计,%系统参数T =0.01; h=T;N=250;R =1.5*ones(1,N); %参考输入,模糊控制系统设计,%定义输入和输出变量及其隶属度函数a=newfis(Simple);a=addvar(a,input,e,-6 6);a=addmf(a,input,1,NB,trapmf,-6,-6,-5,-3);a=addmf(a,in
9、put,1,NS,trapmf ,-5,-3,-2 0); a=addmf(a,input,1,ZR,trimf ,-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);
10、a=addmf(a,input,2,PS,trapmf ,0,2,3,5); a=addmf(a,input,2,PB,trapmf ,3,5,6,6);,模糊控制系统设计,a=addvar(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
11、,3);,模糊控制系统设计,%模糊规则矩阵。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=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);,模糊控制系统设计,%采用模糊控制器的二阶系统仿真e=0; de=0;ke=30; kd=20; ku=1;for
12、 k=1:N%输入变量变换至论域,模糊控制系统设计,e1=ke*e; de1=kd*de;if e1=6 e1=6; elseif e1=-6 e1=-6;end,if de1=6 de1=6; elseif de1=-6 de1=-6;end,模糊控制系统设计,%模糊推理,计算出被控对象的控制输入in=e1 de1;u=ku*evalfis(in,a); uu(1,k)=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*
13、k1+2*k2+k3)*h/6;y=c*x+d*u;yy(1,k)=y;,模糊控制系统设计,%计算系统输出误差及误差导数 e1=e; e=y-R(1,k); de=(e-e1)/T;end,模糊控制系统设计,% 典型二阶环节的模糊控制输出曲线kk=1:N*T;figure(1);plot(kk,R,k,kk,yy,r); grid onxlabel(时间(秒); ylabel(输出);,模糊控制系统设计,模糊控制系统阶跃响应曲线,校 园 新 貌,完成下列题目之一,独立思考,可以互相讨论,目的是掌握模糊控制系统的实际设计;将自己设计结果形成报告,应该包含系统分析、模糊控制系统设计、程序、结果、结
14、果分析和设计体会。报告发送地址:Email:,综合设计,题目1:二阶系统的模糊控制,典型二阶系统的模糊控制与传统PID控制的性能比较。通常的工业过程可等效成二阶系统加上一些典型的非线性环节,如死区、饱和、纯延迟等,这里假设系统为:控制执行结构具有0.07的死区和0.7的饱和区,取样时间间隔T0.01。设计模糊控制器,并绘出参考输入为1时的模糊控制系统响应。,题目2:倒立摆平衡的模糊控制器,倒立摆的动力学方程为:其中x1表示摆与垂直线的夹角,x2表示摆的旋转角速度,g为地球重力加速度,m是倒立摆的质量,2L为摆长,a=1/(M+m),M为小车质量,u表示作用于小车上的力。 设m=2kg, M=8kg, L=0.5m,题目2:倒立摆平衡的模糊控制器,以x1、x2为输入,设计模糊控制器,绘出当初值为x1=1.309、 x2=0时,模糊控制器的输出曲线和系统状态响应。,谢 谢,