付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、word文档下载后可任意复制编辑智能控制实验姓名:学号:专业:控制理论与控制工程代课老师:日期:word文档下载后可任意复制编辑实验目的:1、通过实验进一步了解MATLAB软件的编程环境,学习编程技巧。2、学习搜索相关论文,提高分析论文,找寻切入点的能力。3、学习并掌握与计算机控制系统相关的控制算法。实验内容:1、专家PID控制系统Matlab仿真2、模糊PID控制系统Matlab仿真3、神经网络PID控制系统MATLAB仿真前言PID控制是最早发展起来的控制策略之一,在经典控制论证扮演重要角色,尽管当下各种智能控制层出不穷,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业控制过程,尤其适
2、用于可建立精确数学模型的确定性控制系统。而实际工业生产过程中往往具有非线性,时变不确定性,因而难以建立精确的数学模型,应用常规PID控制器不能达到到理想的控制效果,在实际生产过程中,由于受到参数整定方法繁杂的困扰,常规PID控制器参数往往整定不良,性能欠佳,对运行工况的适应性很差。因此常规PID控制的应用受到很大的限制和挑战。人们对PID应用的同时,也对其进行各种改进,主要体现在两个方面:一是对常规PID本身结构的改进,即变结构PID控制。另一方面,与模糊控制、神经网络控制和专家控制相结合,扬长避短,发挥各自的优势,形成所谓智能PID控制。使其具有不依赖系统精确数学模型的特点,对系统参数变化具
3、有较好的鲁棒性。主要算法有:word文档下载后可任意复制编辑基于规则的智能PID自学习控制算法、加辨识信号的智能自整定PID控制算法、专家式智能自整定PID控制算法、模糊PID控制算法、基于神经网络的PID控制算法、自适应PID预测智能控制算法和单神经元自适应PID智能控制等多种控制算法。结合具体实例,借助MATLAB软件将专家PID、模糊PID以及神经网络PID的设计程序M文件自定义为一个函数,然后设计一个GUI图形用户界面分别调用各自函数便于对比比较,易于操作。观察各自控制效果,并作分析。假设一个速度控制器的传递函数为:G(s)=52350032S387.35S210470s输入信号为阶跃
4、信号,取采样时间为1ms,分别采用专家PID、模糊PID、神经网络PID算法绘制阶跃响应曲线以及误差响应曲线一、实验原理:(一)、专家控制(ExpertControl)的实质是基于受控对象和控制规律的各种知识,并以智能的方式利用这些知识来设计控制器。利用专家经验来设计PID参数便构成专家PID控制。基于模式识别的专家式PID参数自整定控制器,不必要精确的辨识被控对象的数学模型,也不必要对被控过程加任何的激励信号就可以对PID参数进行自整定。由它构成的控制系统运行稳定、有效、可靠。一般地,专家系统由专家知识库、数据库和逻辑推理机三个部分构成。专家知识库中己经把熟练操作工和专家的经验和知识,构成P
5、ID参数选择手册,它记录了各种工况下被控对象特性所对应的P、I、D参数,数据库根据被控对象的word文档下载后可任意复制编辑输入与输出信号及给定信号提供知识库和推理机。r+图1.专家PID控制器结构框图误差及其变化,可设计专家PID控制器,该控制器可分为以下五种情况进行设计:(1)当|e(k)|>Mi时,说明误差的绝对值已经很大,不论误差变化趋势如何,都应考虑控制器的输出应按最大或最小)输出,以达到迅速调整误差,使误差绝对值以最大速度减小。此时,它相当于实施开环控制。(2)当ke(k)>0时,说明误差在朝误差绝对值增大方向变化,或误差为某一常值,未发生变化。此时,如果|e(k)1A
6、M2,说明误差也较大,可考虑由控制器实施较强的控制作用,以达到扭转误差绝对值朝减小方向变化,并迅速减小误差的绝对值。此时,如果|e(k)1<M2,说明尽管误差朝绝对值增大方向变化,但误差绝对值本身并不很大,可考虑控制器实施一般的控制作用,只要扭转误差的变化趋势,使其初误差绝对值减小方向变化。(3)当e(k)&e(k)<0,e(k)Ae(k-1)>0或e的=0时,说明误差的绝对值朝减小的方向变化,或者已经达到平衡状态。此时,可考虑采取保持控制器输出不变。word文档下载后可任意复制编辑(4)当前Ae(k)<0,e(k)ie(k-1)<0时,说明误差处于极值状
7、态如果此时误差的绝对值较大,可考虑实施较强的控制作用。(5)当以k)l<,时,说明误差的绝对值很小,此时加入积分,减少稳态误差523500G(s)=假设一个速度控制器的传递函数为:32S387.35s210470s输入信号为阶跃信号,取采样时间为1ms,分别采用专家PID控制算法,绘制阶跃响应曲线以及误差响应曲线(二)、模糊控制是由美国加利福尼亚大学著名教授查德(LA.Zade)首先提出的,经过这么多年的发展,在模糊控制理论和应用研究方面均取得重大成功。它是以模糊集合论、模糊语言变量及模糊逻辑推理为基础的计算机智能控制,模糊PID控制就是将PID控制策略引入Fuzzy控制器,构成Fuzz
8、y-PID复合控制,从而构成模糊PID控制的过程。模糊自适应PID控制器结构,它以误差信号e(t)和误差变化de(t)/dt作为输入,利用模糊控制规则在线对PID参数进行修改而构成的。如图2.模糊自适应PID控制器结构框图可知模糊PID控制算法以误差E和Ec为输入,利用模糊控制规则在线对PID参数进行修改,以满足不同时刻的E和Ec对PID参数的要求,输出为Kp,Ki,Kd三个参数,以满足不同e(t)和de(t)/dt时对控制参数的不同要求,而使被控对象有良好的动、静态性能。word文档下载后可任意复制编辑图2模糊控制原理图该模糊推理控制系统是一个两输入三输出的形式,输入变量为E和Ec,输出变量
9、为Kp,Ki和Kd,其调整原则为:(1)当误差|E皎大时,为使系统具有较好的快速跟踪性能,不论误差的变化趋势如何,都应该取较大的Kp和较小的Kd,同时为避免系统响应出现较大的超调,应对积分作用加以限制,取较小的Ki值。(2)当误差|E处于中等大小时,为使系统响应具有较小的超调,Kp应取得小些,同时为保证系统的响应速度,Ki和Kd的大小要适中,其中Kd的取值对系统响应的影响较大。(3)当误差|E皎小时,为保证系统具有较好的稳态性能,Kp和Ki应取得大些,同时为避免系统在设定值附近出现振荡,并考虑系统的抗干扰性能,当|E|较小时,Kd可取大些;当|E|较大时,Kd应取小些。变量E,Ec和Kd语言值
10、的模3子集取为负大,负中,负小,零,正小,正中,正大,并简记为NB,NM,NS,ZO,PS,PM,PB,论域为-3,-2,-1,0,1,2,3。Ki论域为-0.06,-0.04,-0.02,0,0.02,0.04,0.06,Kp论域为-0.3,-0.2,-0.l,0,0.1,0.2,0.3。隶属函数采用三角形函数与高斯函数结合,根据对已有控制系统设计经验,得到PID三个控制参数的模糊控制规则表,见表13表:word文档下载后可任意复制编辑表1Kp的模糊规则表eAkpdeNBNMNSZOPSPMPBNBPBPBPMPMPSZOZONMPBPBPMPSPSZONSNSPMPMPMPSZONSNSZ
11、OPMPMPSZONSNMNMPSPSPSZONSNSNMNMPMPSZONSNMNMNMNBPBZOZONMNMNMNBNB表2Ki的模糊规则表eAkideNBNMNSZOPSPMPBNBNBNBNMNMNSZOZONMNBNBNMNSNSZOZONSNBNMNSNSZOPSPSZONMNMNSZOPSPMPMPSNMNSZOPSPSPMPBPMZOZOPSPSPMPBPBPBZOZOPSPMPMPBPB表3Kd的模糊规则表eAkddeNBNMNSZOPSPMPBNBPSNSNBNBNBNMPSNMPSNSNBNMNMNSZONSZONSNMNMNSNSZOZOZONSNSNSNSNSZOP
12、SZOZOZOZOZOZOZOPMPBNSPSPSPSPSPBPBPBPMPMPMPSPSPBword文档下载后可任意复制编辑523500G(s)=假设一个速度控制器的传递函数为:3一2一一s87.35s10470s输入信号为阶跃信号,取采样时间为1ms,采用模¥自征订PID控制进行阶跃信号跟踪,在第300个采样时加入1.0的干扰;绘制阶跃响应曲线以及误差响应曲线以及个参数自整定变化曲线。(三)、BP(BackPropagation)神经网络是人工神经网络的一种,它不仅具有人工神经网络的特点,BP神经网络的结构和BP算法。BP算法是一种基于梯度下降而且有自己的BP算法。BP网络的学习
13、过程由正向和反向传播两部分构成:在正向传播过程中,每一层神经元的状态只影响下一层神经元结构,如果输出层不能得到期望输出,即期望输出与实际输出之间存在误差时,就转向反向传播过程,将误差信号沿着原来的路径返回,通过不断修正各层神经元的权值,逐次地向输入层传播进行计算,修改之后的权值再经过正向传播过程,将期望输出与实际输出比较。BP网络的学习算法的步骤归纳如下:从训练样本集中取某一样本,把它的输入信息输入到网络中;由网络正向计算出各节点的输出;计算网络的实际输出与期望输出的误差;从输出层起始反向计算到第一个隐层,按一定原则向减小误差方向调整网络的各个连接权值;对训练样本集合中的每一个样本重复以上步骤
14、,直到对整个训练样本集合的误差达到要求为止。基于BP(BackPropagation)神经网络的PID控制系统结构如图word文档下载后可任意复制编辑3所示。控制器由两部分组成:经典的PID控制器:直接对被控对象进行闭环控制,并且三个参数kp、卜、kd为在线调整方式。BP神经网络:根据系统的运行状态,调节PID控制器的参数,以其达到某种性能指标的最优化,即使输出层神经元的输出状态对应于PID控制器的三个可调参数2、kd,通过神经网络的自身学习、加权系数调整,从而使其稳定状态对应于某种最优控制规律下的PID的控制器参数。图3.BP神经网络的PID控制系统结构经典增量式数字PID的控制算式为(3-
15、1)u(k)=u(k-1)kp(e(k)-e(k-1)kie(k)kd(e(k)-2e(k-1)e(k-2)式中kp、k、kd分别为比例、积分、微分系数将kp、k、kd视为依赖于系统运行状态的可调系数时,可将(3-1)描述为(3-2)u(k)=fu(k-1),kp,ki,kd,e(k),e(k-1),e(k-2)式中,f。是与kp、k、kd、u(k-1)、y(k)等有关的非线性函数,可以word文档下载后可任意复制编辑用BP神经网络通过训练和学习找到这样一个最佳控制规律。设被控对象的近似数学模型为:yout(k)=u(k-1)a(k)yout(k-1)72八1yout(k1)式中,系数a(k)
16、是慢时变的,a(k)=1.2(1-0.8神经网络的结构选择,学习速度刈=0.28和惯性系数支=0.04,力口权系数初始取区间卜0.5,0.5上的随机数。神经网络的结构选择4-5-3,学习速率n=0.28和惯性系数m=0.04,加权系数初始值取区间卜0.5,0.5上的随机数。输入指令信号为单位阶跃信号,验证其跟踪特性。二、仿真结果与分析:(一)专家PID控制系统的仿真结果:选择专家控制下拉菜单分别显示结果如下,右键单击可以选择是否显示网格或者封闭box.图1-1阶跃响应曲线word文档下载后可任意复制编辑图1-2误差曲线根据上述仿真结果可知,专家控制使得系统的动态性能以及稳态性能达到很好效果,基
17、本实现输出跟随输入。(二)模糊PID控制系统的仿真结果:选择专家控制下拉菜单分别显示结果如下,右键单击可以选择是否显示网格或者封闭box.程序运行模糊控制规则如下:ans=1. If(eisNB)and(ecisNB)then(kpisPB)(kiisNB)(kdisPS)(1)2. If(eisNB)and(ecisNM)then(kpisPB)(kiisNB)(kdisNS)(1)3. If(eisNB)and(ecisNS)then(kpisPM)(kiisNM)(kdisNB)(1)4. If(eisNB)and(ecisZ)then(kpisPM)(kiisNM)(kdisNB)(1
18、)5. If(eisNB)and(ecisPS)then(kpisPS)(kiisNS)(kdisNB)(1)6. If(eisNB)and(ecisPM)then(kpisZ)(kiisZ)(kdisNM)(1)7. If(eisNB)and(ecisPB)then(kpisZ)(kiisZ)(kdisPS)(1)8. If(eisNM)and(ecisNB)then(kpisPB)(kiisNB)(kdisPS)(1)9. If(eisNM)and(ecisNM)then(kpisPB)(kiisNB)(kdisNS)(1)10. If(eisNM)and(ecisNS)then(kpis
19、PM)(kiisNM)(kdisNB)(1)11. If(eisNM)and(ecisZ)then(kpisPS)(kiisNS)(kdisNM)(1)12. If(eisNM)and(ecisPS)then(kpisPS)(kiisNS)(kdisNM)(1)13. If(eisNM)and(ecisPM)then(kpisZ)(kiisZ)(kdisNS)(1)14. If(eisNM)and(ecisPB)then(kpisNS)(kiisZ)(kdisZ)(1)15. If(eisNS)and(ecisNB)then(kpisPM)(kiisNB)(kdisZ)(1)16. If(ei
20、sNS)and(ecisNM)then(kpisPM)(kiisNM)(kdisNS)(1)17. If(eisNS)and(ecisNS)then(kpisPM)(kiisNS)(kdisNM)(1)18. If(eisNS)and(ecisZ)then(kpisPS)(kiisNS)(kdisNM)(1)word文档下载后可任意复制编辑19. If(eisNS)and(ecisPS)then(kpisZ)(kiisZ)(kdisNS)(1)20. If(eisNS)and(ecisPM)then(kpisNS)(kiisPS)(kdisNS)(1)21.If(eisNS)and(ecisP
21、B)then(kpisNS)(kiisPS)(kdisZ)(1)22.If(eisZ)and(ecisNB)then(kpisPM)(kiisNM)(kdisZ)(1)23.If(eisZ)and(ecisNM)then(kpisPM)(kiisNM)(kdisNS)(1)24.If(eisZ)and(ecisNS)then(kpisPS)(kiisNS)(kdisNS)(1)25.If(eisZ)and(ecisZ)then(kpisZ)(kiisZ)(kdisNS)(1)26. If(eisZ)and(ecisPS)then(kpisNS)(kiisPS)(kdisNS)(1)27.If(
22、eisZ)and(ecisPM)then(kpisNM)(kiisPM)(kdisNS)(1)28.If(eisZ)and(ecisPB)then(kpisNM)(kiisPM)(kdisZ)(1)29.If(eisPS)and(ecisNB)then(kpisPS)(kiisNM)(kdisZ)(1)30.If(eisPS)and(ecisNM)then(kpisPS)(kiisNS)(kdisZ)(1)31.If(eisPS)and(ecisNS)then(kpisZ)(kiisZ)(kdisZ)(1)32.If(eisPS)and(ecisZ)then(kpisNS)(kiisPS)(k
23、disZ)(1)33.If(eisPS)and(ecisPS)then(kpisNS)(kiisPS)(kdisZ)(1)34. If(eisPS)and(ecisPM)then(kpisNM)(kiisPM)(kdisZ)(1)35. If(eisPS)and(ecisPB)then(kpisNM)(kiisPB)(kdisZ)(1)36. If(eisPM)and(ecisNB)then(kpisPS)(kiisZ)(kdisPB)(1)37. If(eisPM)and(ecisNM)then(kpisZ)(kiisZ)(kdisPS)(1)38. If(eisPM)and(ecisNS)
24、then(kpisNS)(kiisPS)(kdisPS)(1)39.If(eisPM)and(ecisZ)then(kpisNM)(kiisPS)(kdisPS)(1)40.If(eisPM)and(ecisPS)then(kpisNM)(kiisPM)(kdisPS)(1)41.If(eisPM)and(ecisPM)then(kpisNM)(kiisPB)(kdisPS)(1)42.If(eisPM)and(ecisPB)then(kpisNB)(kiisPB)(kdisPB)(1)43.If(eisPB)and(ecisNB)then(kpisZ)(kiisZ)(kdisPB)(1)44
25、.If(eisPB)and(ecisNM)then(kpisZ)(kiisZ)(kdisPM)(1)45.If(eisPB)and(ecisNS)then(kpisNM)(kiisPS)(kdisPM)(1)46. If(eisPB)and(ecisZ)then(kpisNM)(kiisPM)(kdisPM)(1)47. If(eisPB)and(ecisPS)then(kpisNM)(kiisPM)(kdisPS)(1)48. If(eisPB)and(ecisPM)then(kpisNB)(kiisPB)(kdisPS)(1)49. If(eisPB)and(ecisPB)then(kpi
26、sNB)(kiisPB)(kdisPB)(1)word文档下载后可任意复制编辑图2-1误差e的隶属度函数EQWnaimg3O4豆菖in*量q图2-2误差ec的隶属度函数”的小K次12E1敏图2-3误差kp的隶属度函数word文档下载后可任意第制编辑-onG1.10:8图2-4误差ki的隶属度函数图2-5误差kd的隶属度函数图2-6阶跃响应曲线word文档下载后可任意复制编辑图2-7误差曲线图2-8误差变化率曲线图2-9kp变化曲线word文档下载后可任意复制编辑图2-10kp变化曲线图2-11kd变化曲线根据上述做仿真结果可以看出,模糊控制在kp、ki、kd参数的调整下自行根据模糊规则自适应调
27、整的,无需认为干预。在0.5s加扰动能够迅速的自行调整恢复到平衡状态,具有较好的自适应能力。比专家PID控制系统更为方便。(三)神经网络PID控制系统的仿真结果:选择神经网络控制下拉菜单分别显示结果如下,右键单击可以选择是否显示网格或者封闭box.word文档下载后可任意复制编辑图3-1阶跃响应曲线图3-2误差曲线图3-3误差变化率曲线word文档下载后可任意复制编辑图3-4kp变化曲线图3-5ki变化曲线图3-6kd变化曲线word文档下载后可任意复制编辑根据上述程序可以看出,BP神经网络PID通过学习能够对阶跃信号有很好的逼近效果。三、总结通过本次实验对MATLAB软件有更进一步了解,熟悉
28、GUI界面的设计。对专家控制、模糊控制以及神经网络控制的理论有更深的理解,为今后的学习打下一定的基础,实验中遇到的很多问题,通过努力终于能够理解它们程序实现的方法,总之,有了很大提高。四、附录:1、GUI界面以及主程序:functionvarargout=wang(varargin)ifnargin&&ischar(varargin1)%WANGM-fileforwang.figgui_Singleton=1;gui_State=struct('gui_Name''gui_Singleton''gui_OpeningFcn'
29、9;gui_OutputFcn''gui_LayoutFcn''gui_Callback'mfilename,gui_Singleton,wang_OpeningFcn,wang_OutputFcn,口,.,);gui_State.gui_Callback=str2func(varargin1);endifnargoutvarargout1:nargout=gui_mainfcn(gui_State,varargin:);elsegui_mainfcn(gui_State,varargin:);end%Endinitializationcode-DONO
30、TEDIT%-Executesjustbeforewangismadevisible.functionwang_OpeningFcn(hObject,eventdata,handles,varargin)handles.output=hObject;guidata(hObject,handles);%-Outputsfromthisfunctionarereturnedtothecommandline.functionvarargout=wang_OutputFcn(hObject,eventdata,handles)varargout1=handles.output;word文档下载后可任意
31、复制编辑%I?PID主程序,调用ZJKZ.m程序,绘制阶跃响应曲线和误差曲线%functiona1_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endglobaltime;globalyout;globalrin;ZJKZ();axes(handles.axes1);plot(time,rin,'b',time,yout,'r','LineWidth',3);xlabel('time(s)');ylabel('rin,yout
32、9;);title('阶跃响应曲线);%functiona2_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endglobaltime;globalyout;globalrin;ZJKZ();axes(handles.axes1);plot(time,rin-yout,'r','LineWidth',3);xlabel('time(s)');ylabel('error');title('误差曲线);%模糊PID控制主程序,调用
33、MHKZ.m文件构建模糊控制器,显示各个变量的隶属度函数,以及阶跃响应曲线、误差曲线、kp、ki、kd等参数的变化曲线%functionb1_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endMHKZ();globala;plotmf(a,'input',1);title('误差e的隶属度函数);%functionb2_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endMHKZ();wor
34、d文档下载后可任意复制编辑globala;plotmf(a,'input',2);title('误差变化率ec的隶属度函数);%functionb3_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endMHKZ();globala;plotmf(a,'output',1);title('kp的隶属度函数')%functionb4_Callback(hObject,eventdata,handles)tryclear(allchild(handles.
35、axes1);endMHKZ();globala;plotmf(a,'output',2);title('ki的隶属度函数');%functionb5_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endMHKZ();globala;plotmf(a,'output',3);title('kd的隶属度函数');%functionb6_Callback(hObject,eventdata,handles)tryclear(allchild(ha
36、ndles.axes1);endMHKZ();globaltime;globalyout;globalrin;plot(time,rin,'b',time,yout,'r','LineWidth',3);xlabel('time(s)');ylabel('rin,yout');title('阶跃响应曲线);function%b7_Callback(hObject,eventdata,handles)word文档下载后可任意复制编辑tryclear(allchild(handles.axes1);endMHK
37、Z();globaltime;globalerror;plot(time,error,'r','LineWidth',3);xlabel('time(s)');ylabel('error');title(误差曲线);%functionb8_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endMHKZ();globaltime;globalu;plot(time,u,'r','LineWidth',3);xlab
38、el('time(s)');ylabel('u');titile('误差变化率曲线);%functionb9_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endMHKZ();globaltime;globalkp;plot(time,kp,'r');xlabel('time(s)');ylabel('kp');title('kp变化曲线);%functionb10_Callback(hObject,event
39、data,handles)tryclear(allchild(handles.axes1);endMHKZ();globaltime;globalki;plot(time,ki,'r','LineWidth',3);xlabel('time(s)');ylabel('ki');title('ki变化曲线);function%b11_Callback(hObject,eventdata,handles)word文档下载后可任意复制编辑tryclear(allchild(handles.axes1);endMHKZ();glo
40、baltime;globalkd;plot(time,kd,'r','LineWidth',3);xlabel('time(s)');ylabel('kd');title('kd土?u?');对申经网络pid控制系统主程序,调用BPKZ.m程序绘制阶跃响应曲线、误差曲线、kp、ki、kd等参数的变化曲线%functionc1_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endBPKZ();globaltime;globaly
41、out;globalrin;axes(handles.axes1)plot(time,rin,'r',time,yout,'b','LineWidth',3);xlabel('time(s)');ylabel('rin,yout');title('阶跃响应曲线);%functionc2_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endBPKZ();globaltime;globalerror;axes(handle
42、s.axes1)plot(time,error,'r','LineWidth',3);xlabel('time(s)');ylabel('error');title(误差曲线);%functionc3_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endBPKZ();globaltime;globalu;word文档下载后可任意复制编辑axes(handles.axesl)plot(time,u,'r','LineWi
43、dth',3);xlabel('time(s)');ylabel('u');title('误差变化率曲线);%functionc4_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endBPKZ();globaltime;globalkp;axes(handles.axes1)plot(time,kp,'r','LineWidth',3);xlabel('time(s)');ylabel('kp'
44、);title('kp变化曲线');%functionc5_Callback(hObject,eventdata,handles)tryclear(allchild(handles.axes1);endBPKZ();globaltime;globalki;axes(handles.axes1)plot(time,ki,'g','LineWidth',3);xlabel('time(s)');ylabel('ki');title('ki变化曲线');%functionc6_Callback(hObje
45、ct,eventdata,handles)tryclear(allchild(handles.axes1);endBPKZ();globaltime;globalkd;axes(handles.axes1)plot(time,kd,'b','LineWidth',3);xlabel('time(s)');ylabel('kd');title('kd变化曲线');%GUI界面的主要结构及操作菜单%functionUntitled_1_Callback(hObject,eventdata,handles)%word文档
46、下载后可任意复制编辑functionUntitled_2_Callback(hObject,eventdata,handles)%functionUntitled_3_Callback(hObject,eventdata,handles)%functionUntitled_4_Callback(hObject,eventdata,handles)%functionUntitled_5_Callback(hObject,eventdata,handles)close(gcf);%functionbox_menu_Callback(hObject,eventdata,handles)ifstrcm
47、p(get(gcbo,'Checked'),'on')set(gcbo,'Checked','off');elseset(gcbo,'Checked','on');endbox;%functiongrid_menu_Callback(hObject,eventdata,handles)ifstrcmp(get(gcbo,'Checked'),'on')set(gcbo,'Checked','off');elseset(gcbo,'
48、;Checked','on');endgrid;%functioncontext_menu_Callback(hObject,eventdata,handles)2、被调用函数文件(1)专家PIDZJKZ.mfunctionZJKZ()globaltime;globalrin;globalyout;ts=0.001;sys=tf(5.235e005,1,87.35,1.047e004,0);dsys=c2d(sys,ts,'z');num,den=tfdata(dsys,'v');u_1=0.0;u_2=0.0;u_3=0.0;y_1=0
49、;y_2=0;y_3=0;x=0,0,0'x2_1=0;kp=0.6;ki=0.03;kd=0.01;error_1=0;fork=1:1:500time(k)=k*ts;rin(k)=1.0;%TracingJieyueSignalu(k尸kp*x(1)+kd*x(2)+ki*x(3);%PIDController%Expertcontrolruleifabs(x(1)>0.8%Rule1:Unclosedcontrolfirstlyword文档下载后可任意复制编辑u(k)=0.45;elseifabs(x(1)>0.40u(k)=0.40;elseifabs(x(1)&
50、gt;0.20u(k)=0.12;elseifabs(x(1)>0.01u(k)=0.10;endifabs(x(1)<=0.001%Rule5:IntegrationseparationPIcontrolu(k)=0.5*x(1)+0.010*x(3);end%Restrictingtheoutputofcontrollerifu(k)>=10u(k)=10;x(1)*x(2)>0|(x(2)=0)ifu(k)<=-10%Rule2ifabs(x(1)>=0.05u(k)=u_1+2*kp*x(1);u(k)=-10;end%Linearmodelelse
51、u(k)=u_1+0.4*kp*x(1);endendifyout(k)=-den(2)*y_1-den(3)*y_2-den(4)*y_3+num(1)*u(k)+num(2)*u_1+num(3)*u_2+num(4)*u_3;error(k)=rin(k)-yout(k);%ReturnofPID(x(1)*x(2)<0&x(2)*x2_1>0)|(x(1)=0)%Rule3u(k)=u(k);endparameters%u3=u2;u2=u1;u1=u(k);y_3=y_2;y_2=y_1;y_1=yout(k)endifx(1)*x<0&x(2)*x
52、2_1<0%Rule4ifabs(x(1)>=0.05u(k)=u_1+2*kp*error_1;elseu(k)=u_1+0.6*kp*error_1;endendx(1)=error(k);%CalculatingPx2_1=x(2);x(2)=(error(k)-error_1)/ts;%CalculatingDx(3)=x(3)+error(k)*ts;%CalculatingIerror_1=error(k);endif(2)模糊PID-MHKZ.mfunctionMHKZ()%Parametereglobala;a=addvar(a,'input',
53、39;e',-3,3);globaltime;a=addmf(a,'input',1,'NB','zmf',globalyout;-3,-1);globalrin;a=addmf(a,'input',1,'NM','trimf'globalerror;,-3,-2,0);globalu;a=addmf(a,'input',1,'NS','trimf'globalkp;,-3,-1,1);globalki;a=addmf(a,'input
54、',1,'Z','trimf'globalkd;-2,0,2);a=newfis(:'fuzzpid');a=addmf(a,'input',1,'PS','trimf'word文档下载后可任意复制编辑,-1,1,3);',-0.06,-0.04,0);a=addmf(a,'input',1,'PM',"trimf'a=addmf(a,'output',2,'NS','trimf,0,2,3);
55、',-0.06,-0.02,0.02);a=addmf(a,'input',1,'PB','smf',a=addmf(a,'output',2,'Z','trimf'1,3);,-0.04,0,0.04);%Parametereca=addmf(a,'output',2,'PS','trimfa=addvar(a,'input','ec',-3,3);',-0.02,0.02,0.06);a=addmf(a,
56、39;input',2,'NB','zmf',a=addmf(a,'output',2,'PM','trimf-3,-1);',0,0.04,0.06);a=addmf(a,'input',2,'NM','trimf'a=addmf(a,'output',2,'PB','smf',-3,-2,0);0.02,0.06);a=addmf(a,'input',2,'NS','t
57、rimf'%Parameterkp,-3,-1,1);a=addvar(a,'output','kd',-3,3)a=addmf(a,'input',2,'Z','trimf',;-2,0,2);a=addmf(a,'output',3,'NB','zmf'a=addmf(a,'input',2,'PS','trimf'-3,-1);,-1,1,3);a=addmf(a,'output',3,
58、39;NM','trimfa=addmf(a,'input',2,'PM','trimf'',-3,-2,0);,0,2,3);a=addmf(a,'output',3,'NS','trimfa=addmf(a,'input',2,'PB','smf',',-3,-1,1);1,3);a=addmf(a,'output',3,'Z','trimf'%Parameterkp,-2,0,2);a=addvar(a,'output','kp',-0.3,0a=addmf(a,'output',3,'PS','trimf.3);',-1,1,3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年度电工每日一练试卷【综合题】附答案详解
- 2024-2025学年度唐山幼儿师范高等专科学校《形势与政策》期末考试通关题库及一套答案详解
- 2024-2025学年度执法资格试题预测试卷附参考答案详解(完整版)
- 2024-2025学年度公务员考试《常识》测试卷(满分必刷)附答案详解
- 2024-2025学年度电工题库检测试题打印及完整答案详解(名师系列)
- 2026年党校研究生入学考试专业基础理论知识冲刺押题试卷(七)
- 2024-2025学年度全国统考教师资格考试《教育教学知识与能力(小学)》自我提分评估【基础题】附答案详解
- 2024-2025学年度公务员(国考)练习题含完整答案详解【夺冠系列】
- 2024-2025学年度辅警招聘考试模拟题库【满分必刷】附答案详解
- 2024-2025学年反射疗法师3级题库附答案详解【培优B卷】
- 课件:《习近平新时代中国特色社会主义思想学习纲要(2023年版)》第八章 中华人民共和国的成立与中国社会主义建设道路的探索
- 《明清中国版图的奠定与面临的挑战》单元教学设计- 近代前夜的盛世与危机
- 二级烟草专卖管理师理论考试题库
- 人员退休欢送会34
- DB21T 2385-2014 玉米高产耕层土壤改良技术规程
- 2024年全国中学生生物学联赛试题含答案
- 大学生心理健康与发展学习通超星期末考试答案章节答案2024年
- DL∕T 1795-2017 柔性直流输电换流站运行规程
- 五年级下册劳动教案完整版
- ISO28000:2022供应链安全管理体系
- 保护性约束课件
评论
0/150
提交评论