基于matlab的典型二阶系统的模糊控制与.ppt

上传人:wuy****n92 文档编号:92001550 上传时间:2023-05-29 格式:PPT 页数:20 大小:394.32KB
返回 下载 相关 举报
基于matlab的典型二阶系统的模糊控制与.ppt_第1页
第1页 / 共20页
基于matlab的典型二阶系统的模糊控制与.ppt_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《基于matlab的典型二阶系统的模糊控制与.ppt》由会员分享,可在线阅读,更多相关《基于matlab的典型二阶系统的模糊控制与.ppt(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较一相关概念系统数学模型:系统的数学模型在系统的分析中起着重要的作用,建立数学模型的目的之一是为了用数学方法定量地对系统进行分析。当系统微分方程列出后,只要给定输入量的初始条件,便可以对微分方程求解。假设系统是单输入单输出系统(简称SISO)系统,其输入输出分别用u(t),y(t)来表示,并且系统的初始条件为零,则得到线性系统的传递函数模型:若系数(i=0,m)与(i=0,n-1)为常数,则系统称为线性定常系统。在MATLAB语言中,可以利用传递函数分子、分母多项式的系数向量进行描述。分子多项式的系数向量为分母多项式的系数向量为这

2、里分子、分母多项式系数按s的降幂排列。基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较二阶系统:用二阶微分方程描述的系统,称二阶系统。它在控制系统中应用极为广泛,许多高阶系统,在一定条件下,往往可以简化成二阶系统。因此,详细研究和分析二阶系统的特性,具有重要的实际意义。系统闭环传递函数为:我们这里所要讨论的是二阶系统加上一些典型的非线性环节,如死区.饱和,纯延迟基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较这里假设系统(传递函数模型)为:控制执行结构具有0.07的死区和0.7的饱和,取样时间间隔=0.01在matlab是利用系统的状态空间模型,因此我们要将

3、上述模型转换为状态空间模型,matlab中提供了tf2ss(num,den)函数进行模型的转换注:状态方程的一阶微分方程表示形式为:X为n维状态向量,U为m维输入矩阵;Y为l维输出向量;A为nn的系统状态阵,由系统参数决定,B为nm维系统输入阵;C为ln维输出阵;D为lm维直接传输阵。控制器控制器对象对象基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较我们的目标就是根据控制量U求出系统输出量Y,然后将其跟参考参考输入进行比较得到系统偏差及偏差变化率,最后将其用于系统控制龙格-库塔算法:求解常微分方程的数值解法,此方法可使局部截断误差达到,也就是三阶精度,具体推导见计算方法(第

4、二版)易大义沈云宝李有法编 浙江大学出版社这里直接应用其得出的结论:对于一阶常微分方程:基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较其数值解为:基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较具体过程(matlab程序):系统模型建立:num=20;den=1.6,4.4,1;a1,b,c,d=tf2ss(num,den);%将传递函数转化为状态模型 x=0;0;T=0.01;h=T;%T为采样时间 umin=0.07;umax=0.7;td=0.02;Nd=td/T;%Nd延迟时间 N=500;R=1.5*ones(1,N);%参考值基于matlab的

5、典型二阶系统的模糊控制与传统PID控制的性能比较传统PID控制过程 其matlab程序如下:e=0;de=0;ie=0;kp=5;ki=0.1;kd=0.001;设定的比例,积分,微分常数对象对象PIDu基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较 for k=1:N%N为采集次数 uu1(1,k)=-(kp*e+ki*ie+kd*de);%控制量生成 if k=Nd%纯延迟 u=0;else u=uu1(1,k-Nd);end if abs(u)umax u=sign(u)*umax;end基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较%龙格-库塔算

6、法求对象的输出 k1=a1*x+b*u;k2=a1*(x+h*k1/2)+b*u;k3=a1*(x+h*k2/2)+b*u;k4=a1*(x+h*k3)+b*u;x=x+(k1+2*k2+2*k3+k4)*h/6;y=c*x+d*u;%计算误差.微分和积分 e1=e;e=y(1,1)-R(1,k);de=(e-e1)/T;ie=e*T+ie;yy1(1,k)=y;end;kk=1:N*T;figure(1);plot(kk,yy1);基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较模糊控制)量化:设e和de的模糊量为:”负大NB”,“负小NS”,“零ZR”,正小PS”,”正大

7、PB”,将它们量化在-6 6论域上,控制量u的模糊量为:”负大NB”,“负小NS”,“零ZR”,正小PS”,”正大PB”,将其量化到-3 3,隶属函数分别如下图基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较2)模糊推理规则如下定义 NBNSZRPSPBNBPBPBPSPSZRNSPBPSPSZRZRZRPSPSZRZRNSPSPSZRZRNSNSPSZRZRNSNSNBdeue基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较 matlab建立过程:a=newfis(simple);%建立模糊

8、推理系统 a=addvar(a,input,e,-6 6);%增加第一个输入变量e 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,-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);增加第二个输入变量e a=addmf(a,input,2,NB,trapmf,

9、-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);基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较a=addvar(a,output,u,-3 3);%添加输出变量u a=addmf(a,output,1,NB,trapmf,-3-3-2-1);%添加隶属函数 a=addmf(a,output,1,N

10、S,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,1 2 3 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);%得到一个25X3的0阶矩阵 k=1;基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较 for i=1:size(rr,1)for j=1:size(rr

11、,2)r1(k,:)=i,j,rr(i,j);k=k+1;end end r,s=size(r1);r2=ones(r,2);rulelsit=r1,r2;a=addrule(a,rulelsit);%rulelist 为25X(2+1+2)矩阵,每一行代表一个规则,某一%行的前2列为输入,接着一列为输出,最后两列为控制所有均%为1e=0;de=0;ie=0;x=0;0;ke=60;kd=2.5;ku=0.8;%定义e de u的量化因子基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较for k=1:N e1=ke*e;de1=kd*de;if e1=6 e1=6;elsei

12、f e1=6 de1=6;elseif de1-6 de1=-6;end 基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较in=e1 de1;uu(1,k)=ku*evalfis(in,a);if k=Nd u=0;else u=uu(1,k-Nd);end if abs(u)umax u=sign(u)*umax;end基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较%龙格-库塔算法求对象的输出 k1=a1*x+b*u;k2=a1*(x+h*k1/2)+b*u;k3=a1*(x+h*k2/2)+b*u;k4=a1*(x+h*k3)+b*u;x=x+(k1+2*k2+2*k3+k4)*h/6;y=c*x+d*u;e1=e;e=y-R(1,k);de=(e-e1)/T;ie=ie+e*T;yy(1,k)=y;end基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较基于matlab的典型二阶系统的模糊控制与传统PID控制的性能比较结论:由两种控制得出的系统阶跃响应曲线可以看,通过模糊控制的方法,其稳态误差明显小于传统的PID控制方法.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁