工控网首页
>

应用设计

>

基于MATLAB的模糊控制器的仿真研究

基于MATLAB的模糊控制器的仿真研究

2005/9/16 11:49:00
摘要:   本文介绍了用模糊控制器来实现对一阶线性时滞系统的控制,应用模糊条件句与模糊控制规则,对模糊集合的隶属度函数的具体描述,把被控对象作用后的结果用Matlab提供的模糊系统工具箱的图形用户界面工具,在Simulink环境下进行了系统仿真。 关键词: Matlab 模糊控制器 仿真 Abstract :   This paper introduced with the control that the one rank line hour delay system can be carried out with the fuzzy controller .The applied fuzzy condition sentence and faintnesses control the rule, to misty gather of belong to the concrete description of one degree function, is control the object function is behind of result with the fuzzy system tool box that Matlab provide of the sketch customer interface tool, the system carried on under the environment of Simulink really imitate. Keywords: Matlab fuzzy controller imitation 一、 引言   对于具有延迟的一阶线性系统的阶跃响应,在工业控制中具有相当广泛的应用。其特性就是在初始时有相当一段时间的滞后,然后单调上升,最后达到稳态。而工业生产中的动态控制不仅要求系统具有一定的稳定性,还要求系统达到稳态具有一定的快速性。因此,对于一阶线性时滞系统来说,有时就达不到快速性的要求。用模糊控制器来实现对一阶线性时滞系统的控制就大大改进了原系统的控制效果,在一定程度上完全满足了系统的快速性的要求。用Matlab仿真的结果则更清楚的显示出改进的控制效果。 二、模糊控制器的基本结构和组成
  模糊控制器主要由以下四部分组成:模糊化、模糊推理、清晰化和知识库。模糊化的作用是将输入的精确量转换成模糊化量,并用相应的模糊集合来表示。模糊推理是模糊控制器的核心,它具有模拟人的基于模糊概念的推理能力。该推理过程是基于模糊逻辑中的蕴涵关系及推理规则来进行的。清晰化的作用是将模糊推理得到的控制量变换为实际用于控制的清晰量。知识库中包含了具体应用领域的知识和要求的控制目标。它通常由数据库和模糊控制规则库两部分组成。在模糊控制中,一般通过用一组语言描述的规则来表示专家的知识,专家知识通常具有如下的形式:IF(满族一组条件)THEN(可以推出一组结论)。   当论域为离散量时,经过量化后的输入量个数是有限的。可以针对输入情况的不同组合离线计算出相应的控制量,从而组成一张控制表,能够减少在线的运算量。这种模糊控制方法很容易满足实时控制的要求。在这种模糊控制结构中,通常用误差e和误差的导数de/dt作为模糊控制器的输入量。如图2所示:
三、模糊控制器的设计:   设控制系统的输入为单位阶跃信号r,输出为y,误差为e,误差导数为de;被控对象的输入为u;模糊控制器与e,de对应的输入分别为e1,de1,与u对应的输出为u1。e1,de1,u1的论域取[-6,+6],语言值取5个,分别为“负大NB”,“负小NS”,“零ZR”,“正小PS”和“正大PB”。NB,NS,PS,PB取梯形隶属度函数,ZR取三角形隶属度函数。el ,del ,u1 的隶属度函数如图3所示。
  根据经验,可以得到用“if 。。。。 then 。。。。 "形式表达的模糊控制规则: 1. If (e l is NB) and (de l is NB) then (u l is NB) 2. If (e l is NB) and (de l is NS) then (u l is NS) 3. If (e l is NB) and (de l is ZR) then (u l is NS) ........................ 23. If (e l is PB) and (de l is ZR) then (u l is PS) 24. If (e l is PB) and (de l is PS) then (u l is PB) 25. If (e l is PB) and (de l is PB) then (u l is PB) 以上模糊控制规则共计25条,这些控制规则可以总结归纳成表。
四、模糊控制器的仿真模型   这里取被控对象为:
  在MATLAB的命令窗口输入命令Fuzzy,进入图形用户界面(GUI)窗口。根据上述隶属度函数和控制规则,利用模糊推理系统(FIS )编辑器可以建立一个FIS文件,取名为flc.fis。这里模糊推理及其非模糊化方法采用MIN-MAX一重心法,即有名的Mamdani推理法在SIMULINK环境中,用鼠标将相应模块拖入窗口中,连接好便得到图5所示的模糊控制系统仿真模型(见最后页)。   这里模糊控制器的结构变量取flc,误差的量化因子Ke取6,误差变化的量化因子Kc取0.5,控制输出的比例因子Ku取0.4。限幅器1和限幅器2的限幅范围是[-6, 6],其作用是把控制系统的误差及误差导数由基本论域变换到模糊控制器输入变量的论域。假设被控对象允许的最大输入是士20,因而在被控对象的前面设置了限幅器3,其限幅范围是[-20, 20]。利用仿真参数对话框,可以设置相关的仿真参数。这里仿真时间设置为15秒,采样周期设置为0.01秒。 五、系统的仿真   整个系统在Simulink环境下所搭建的结构图4如下:
  在MATLAB的命令窗口中输入指令:flc=readfis(’flc.fis)这样就在基本工作空间中建立起了模糊推理系统的结构变量flc。,然后再输入指令:start,仿真即开始。这时可以利用模拟示波器来观察系统的动态响应情况。仿真结束后,可以利用plot(t ,y)指令将响应曲线绘出,如图5所示。
  图5中,u为控制量(黄色),f1为原来未加模糊控制器控制的曲线(绿色),f2为加了模糊控制器以后的响应曲线(紫色)。 六、结论   由图5可以看出,原系统调节时间大约为14秒,而用模糊控制器控制后调节时间为大约6秒。可见,虽然用模糊控制器控制后系统略有超调,但它所存在的这种微小超调是在系统稳定所允许范围之内的,而用模糊控制器控制却大大缩短了调节时间,从而提高了系统的特性。 参考文献 1. 孙增圻,张再兴,邓志东。 智能控制理论与技术 清华大学出版社 2004年2月 2. 欧阳黎明 MATLAB控制系统设计 国防工业出版社 2001年9月
投诉建议

提交

查看更多评论
其他资讯

查看更多

电网中高次谐波的危害及抑制措施