当前位置:文档之家› 智能控制指导作业

智能控制指导作业

语言变量X ,Y ,Z 的隶属度函数.设计带有纯延迟的一阶惯性环节(假设T=6,=0.02):G(s)=se s6102.0+的模糊控制器,观察仿真结果。

编程如下:%被控系统建模 num=1; den=[6,1];[a1,b,c,d]=tf2ss(num,den);%传递函数转换到状态空间 x=[0];%系统参数T=0.01;h=T;td=0.02;N=1000; nd=td/T;%系统纯延迟 R=ones(1,N);%参考输入%定义输入和输出变量及隶属度函数a=newfis('Simple');a=addvar(a,'input','e',[-4 4]);a=addmf(a,'input',1,'NB','trimf',[-4,-4,-2]); a=addmf(a,'input',1,'NS','trimf',[-4,-2,0]); a=addmf(a,'input',1,'ZO','trimf',[-2,0,2]);a=addmf(a,'input',1,'PS','trimf',[0,2,4]);a=addmf(a,'input',1,'PB','trimf',[2,4,4]);a=addvar(a,'input','de',[-4 4]);a=addmf(a,'input',2,'NB','trimf',[-4,-4,-2]); a=addmf(a,'input',2,'NS','trimf',[-4,-2,0]); a=addmf(a,'input',2,'ZO','trimf',[-2,0,2]);a=addmf(a,'input',2,'PS','trimf',[0,2,4]);a=addmf(a,'input',2,'PB','trimf',[2,4,4]);a=addvar(a,'output','u',[-4 4]);a=addmf(a,'output',1,'NB','trimf',[-4,-4,-2]); a=addmf(a,'output',1,'NS','trimf',[-4,-2,0]); a=addmf(a,'output',1,'ZO','trimf',[-2,0,2]); a=addmf(a,'output',1,'PS','trimf',[0,2,4]);a=addmf(a,'output',1,'PB','trimf',[2,4,4]); %模糊规则矩阵rr=[5 5 4 4 35 4 4 3 34 4 3 3 24 3 3 2 23 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;endend[r,s]=size(r1);r2=ones(r,2);rulelist=[r1,r2];a=addrule(a,rulelist);%采用模糊控制器的二阶系统仿真e=0;de=0;ke=30;kd=5;ku=1;for k=1:N%输入变量变换至论域e1=ke*e;de1=kd*de;if e1>=4e1=4;elseif e1<=-4e1=-4;endif de1>=4de1=4;elseif de1<=-4de1=-4;end%模糊推理,计算出被控对象的控制输入in=[e1 de1];u=ku*evalfis(in,a);uu(1,k)=u;if k<=ndu=0;elseu=uu(1,k-nd);end%控制作用于被控系统,计算系统输出;利用龙格—库塔法进行系统仿真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;%计算系统输出误差及误差导数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('输出');智能控制大作业姓名: 何成东 学号: S0703234 专业: 导航、制导与控制模糊控制器部分大作业已知()()0.525123s G e s s s -=+++,分别设计PID 控制与模糊控制,使系统达到较好性能,并比较两种方法的结果。

具体要求:1、分别采用fuzzy 工具箱和编程实现模糊控制器。

2、分析量化因子和比例因子对模糊控制器控制性能的影响。

3、分析系统在模糊控制和PID 控制作用下的抗干扰能力(加噪声干扰)、抗非线性能力(加死区和饱和特性)以及抗时滞的能力(对时滞大小加以改变)。

4、讨论系统在模糊控制和PID 控制作用下的时间参数和结构变化下的抗干扰能力。

模糊控制部分大作业旨在利用模糊控制器和PID 控制器实现对已知系统的控制,分别得到较好的控制效果。

然后改变系统的参数、结构或者加入非线性环节,以验证模糊控制器的鲁棒性能。

以下是作业过程:1、PID 控制考虑到系统中存在纯延迟环节,使得系统的稳定性大大降低。

如果系统的反馈信号没有延迟,系统的响应特性将会得到很好的改善。

因此,对于存在纯滞后环节的系统,特别是大延迟过程,一般采用Smith 预估控制,即将纯滞后补偿模型与PID 控制器并接。

本题中,延迟环节的时间常数不是很大,仅为0.2,因此基本上不会影响系统的稳定,采用常规PID 控制也基本可以达到很好的控制效果。

常规PID 控制框图如图1-1(相应文件:PID.mdl )图1-1 常规PID 控制框图PID 参数选取:38.0=p K ,285.0=i K ,1.0=d K 常规PID 控制的单位阶跃响应曲线:图1-2 常规PID控制响应曲线2.模糊控制模糊控制规则(相应文件:zdh.fis)各变量论域输入变量:E:[-6 6];EC:[-6 6];输出变量:U:[0 7]语言变量E:NB、NM、NS、NZ、PZ、PS、PM、PB(8个)EC:NB、NM、NS、ZE、PS、PM、PB(7个)U:NB、NM、NS、ZE、PS、PM、PB(7个)各变量隶属度函数:三角形函数(trimf)模糊推理:Mamdani推理法去模糊化:中位数法(bisector)模糊控制框图(相应文件:mohu.mdl)图1-3 模糊控制框图选取量化因子:7.1=e K ,5.0=ec K 选取比例因子:171.0=u K 模糊控制响应曲线图1.4 模糊控制响应曲线在模糊控制器的设计过程中,选择合适的论域和量化因子、比例因子是至关重要的。

量化因子e k 选择过大,系统超调较大,过渡过程较长;ec k 选择过大,系统超调较小,但是响应速度变慢;比例因子u k 选择过大导致系统振荡,过小时系统响应过程变长。

3、在模糊控制和PID 控制中分别加死区、饱和特性以及对时滞大小加以改变。

1)加死区非线性响应曲线比较(如图1-5) 死区参数为(-0.5 0.5)图1-5 PID与模糊控制加死区后的响应曲线比较比较结果可见,模型控制没有PID控制的好2)加饱和非线性响应曲线比较(如图1-6)图1-6 PID与模糊控制加饱和后的响应曲线比较3)改变时滞大小响应曲线比较(如图1-7)图1-7改变时滞大小的PID与模糊控制响应曲线比较由以上两图可知,改变时滞大小以后,PID 控制的控制效果明显变差,而模糊控制的控制效果则相对较好,说明模糊控制较PID 控制有更好的抗时滞能力。

神经网络控制部分大作业已知()0.525123s G e s ss -=+++,分别设计PID 控制与神经网络控制器,使系统达到较好性能,并比较两种方法的结果。

具体要求:1、采用编程实现神经网络控制器。

2、分析神经网络层数和神经元个数对神经网络控制器控制性能的影响。

3、分析系统在神经网络控制和PID 控制作用下的抗干扰能力(加噪声干扰)、抗非线性能力(加死区和饱和特性)以及抗时滞的能力(对时滞大小加以改变)。

4、为系统设计神经网络PID 控制器。

首先设计PID 控制器实现对已知系统的控制,然后利用PID 控制器的采样样本对神经网络进行训练,用训练好的神经网络来控制系统。

然后对加入非线性环节,以验证神经网络控制器的鲁棒性能。

1、PID 控制这里采用模型与模糊控制中的PID 控制模型相同,只是将参数改变了一下,即取27.0=p K ,23.0=i K ,1.0=d K ,单位阶跃响应仿真结果如图2-1所示图2-1 PID控制单位阶跃响应2、神经网络控制利用采集的样本,采用BP算法进行神经网络训练。

训练程序为:p=r';t=u';net=newff([-1 1],[ 20 10 1],{ 'tansig''tansig''purelin'}); net.trainparam.epochs=1000;net.trainparam.goal=0.0001;net=train(net,p,t);gensim(net,-1)利用得到的神经网络控制器进行仿真,控制模型如下图所示:图2-2 神经网络控制模型框图训练结果如下:0 Array图2-3 神经网络训练曲线和模块化描述仿真结果如图2-3所示。

3、增加非线性的仿真结果1)分别在神经网络控制和PID控制系统中加死区非线性进行仿真,如图2-5所示。

相关主题