智能控制技术实验报告

上传人:博****1 文档编号:543096528 上传时间:2023-07-08 格式:DOC 页数:17 大小:503.72KB
返回 下载 相关 举报
智能控制技术实验报告_第1页
第1页 / 共17页
智能控制技术实验报告_第2页
第2页 / 共17页
智能控制技术实验报告_第3页
第3页 / 共17页
智能控制技术实验报告_第4页
第4页 / 共17页
智能控制技术实验报告_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《智能控制技术实验报告》由会员分享,可在线阅读,更多相关《智能控制技术实验报告(17页珍藏版)》请在金锄头文库上搜索。

1、智能控制技术实 验 报 告 书 学院:专业:学号:姓名:实验一:模糊控制与传统PID控制的性能比较一、实验目的通过本实验的学习,使学生了解传统PID控制、模糊控制等基本知识,掌握传统PID控制器设计、模糊控制器设计等知识,训练学生设计控制器的能力,培养他们利用MATLAB进行仿真的技能,为今后继续模糊控制理论研究以及控制仿真等学习奠定基础。二、实验内容本实验主要是设计一个典型环节的传统PID控制器以及模糊控制器,并对他们的控制性能进行比较。主要涉及自控原理、计算机仿真、智能控制、模糊控制等知识。通常的工业过程可以等效成二阶系统加上一些典型的非线性环节,如死区、饱和、纯延迟等。这里,我们假设系统

2、为:H(s)=20e0.02s/(1.6s2+4.4s+1) 控制执行机构具有0.07的死区和0.7的饱和区,取样时间间隔T=0.01。设计系统的模糊控制,并与传统的PID控制的性能进行比较。三、实验原理、方法和手段1.实验原理:1)对典型二阶环节,根据传统PID控制,设计PID控制器,选择合适的PID控制器参数kp、ki、kd;2)根据模糊控制规则,编写模糊控制器。2.实验方法和手段:1)在PID控制仿真中,经过仔细选择,我们取kp=5,ki=0.1,kd=0.001;2)在模糊控制仿真中,我们取ke=60,ki=0.01,kd=2.5,ku=0.8;3)模糊控制器的输出为:u= kufuz

3、zy(kee, kde)kiedt 其中积分项用于消除控制系统的稳态误差。4)模糊控制规则如表1-1所示:在MATLAB程序中,Nd用于表示系统的纯延迟(Nd=td/T),umin用于表示控制的死区电平,umax用于表示饱和电平。当Nd=0时,表示系统不存在纯延迟。5)根据上述给定内容,编写PID控制器、模糊控制器的MATLAB仿真程序,并记录仿真结果,对结果进行分析。表1-1 FC的模糊推理规则表 u e eNB NS ZR PS PB NBPBPBPSPSZR NSPBPSPSZRZR ZRPSPSZRZRNS PSPSZRZRNSNS PBZRZRNSNSNB四、实验组织运行要求根据本实

4、验的综合性、设计性特点以及要求学生自主设计MATLAB仿真程序的要求以及我们实验室的具体实验条件,本实验采用以学生自主训练为主的开放模式组织教学。五、实验条件1.装有MATLAB6.5的计算机;2.智能控制技术教材;3.模糊控制教材;4.智能控制技术实验指导书。六、实验步骤1.学生熟悉实验内容,并根据实验内容、实验要求,查阅、学习相关知识;2.设计典型二阶环节的PID控制器以及模糊控制器;3.编写MATLAB仿真程序4.上机调试程序,修改程序修改控制器的参数等;5.对实验程序仿真,并记录仿真结果;6.对实验结果进行分析,书写实验报告书。七、实验程序num=20; den=1.6,4.4,1;

5、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);%参考值e=0; de=0;ie=0; kp=5;ki=0.1;kd=0.001; %设定的比例,积分,微分常数 for k=1: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

6、)*umax; end%龙格-库塔算法求对象的输出 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); a=newfis(simple);% 建立模糊推理系统 a=addvar(a,input,e,-6 6);

7、%增加第一个输入变量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,-6 -6 -5 -3); %添加隶属函

8、数 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=addvar(a,output,u,-3 3);%添加输出变量u a=addmf(a,output,1,NB,trapmf,-3 -3 -2 -1);%添加隶属函数 a=addmf(a,output,1,NS,trimf,-2 -1 0); a=addmf(a,output,1,ZR,t

9、rimf,-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;for i=1:size(rr,1) for j=1:size(rr,2) r1(k,:)= i,j,rr(i,j); k=k+1; end end r,s=size(r1); r2=ones(r,2);

10、 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的量化因子for k=1:N e1=ke*e; de1=kd*de; if e1=6 e1=6; elseif e1=6 de1=6; elseif de1-6 de1=-6; endin=e1 de1; uu(1,k)=ku*evalfis(in,a); if k=Nd u=0;

11、else u=uu(1,k-Nd); end if abs(u)umax u=sign(u)*umax; end%龙格-库塔算法求对象的输出 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%绘制结果曲线kk=1:N*T;figure(1);plot(kk,R,k,kk,yy,r,kk,yy1,b);xl

12、abel(时间(0.01秒);ylabel(输出);gtext(模糊控制);gtext(PID控制);%end八、 实验结果九、 思考题1. 模糊控制器的控制性能是否一定优于传统PID控制器?不一定,若要求反应速度那么可以选择模糊控制方式。若要求控制精度高则可以选择pid方式2.如果选用模糊控制工具箱,如何进行设计、仿真?答:在matlab的主窗口中输入fuzzy即可调出模糊工具箱界面,退出界面的时候会提示保存,保存格式为fis,如果我们将文件保存为njust.fis,那么下次使用这个文件的时候在主窗口中输入fuzzy njust即可。模糊控制器的建立过程如下:(1)设定误差E、误差变化率EC和控制量U的论域为,一般为-6 6。(2)设定E、EC、U的模糊集。一般可设为NB、NM、NS、ZO、PS、PM、PB。(3)设定隶属度函数。有高斯型隶属度函数、三角型隶属度函数等。(4)设定模糊控制规则。常用的模糊控制规则如图1所示,当然可以根据特定的控制对象和要求进行相应的调整。实验二:神经元自适应PID控制仿真研究一、实验目的通过本实验的学习,使学生了解传统PID控制、神经元自适应控制等基本知识,掌握传统PID控制器设计、掌握基于二次型性能指标学习算法的单神

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

当前位置:首页 > 幼儿/小学教育 > 幼儿教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号