基于Matlab的模糊PID控制系统设计及仿真
2015-12-20窦艳艳冯金龙
窦艳艳,钱 蕾,冯金龙
(南京高等职业技术学校电气工程系,江苏南京 210019)
PID控制作为经典控制至今仍被广泛应用,面对精确数学模型时,PID控制能取得令人满意的效果。但在实际应用中,当被控对象数学模型变化时,难以实时调整PID参数,且大量被控过程机理复杂,被控对象数学模型建立复杂,其控制效果并不理想[1]。模糊控制拥有智能化的特点,它不依赖对象的数学模型,对受控对象的时滞、非线性和时变性具有一定的适应能力。然而模糊控制的精度受到控制规则的限制还始终存在静差[2]。模糊PID控制利用整定PID参数的经验来设计模糊控制器自动整定PID控制器的参数,从而使PID控制器以变应变[3]。本文采用基于Matlab的模糊PID控制器控制锅炉液位,通过实验仿真比较传统PID控制、模糊控制以及模糊PID控制的效果。
1 被控对象选择
被控对象选择经典的锅炉液位控制,国内外的电热锅炉液位控制主要采用传统PID控制[4]。维持锅炉液位在预期正常范围内是锅炉系统安全运行的必要条件,也是衡量锅炉汽水系统物质是否平衡的标志。由文献[5]得到某汽包水位在给水流量下的动态特性传递函数为
2 模糊PID控制器设计
自适应模糊PID控制器结构如图1所示,其以常规PID控制为基础,采用模糊推理的思想,将被控量的偏差e和偏差变化率ec作为二维模糊控制器的输入变量,PID中 Kp,Ki,Kd的变化值作为输出,利用模糊控制规律在线整定PID各个参数,其中模糊控制部分包括模糊化、模糊推理计算和解模糊化[6]。
图1 模糊PID控制器结构
在锅炉液位模糊PID控制系统中,模糊控制器采用二维的Mamdani控制器,模糊控制决策采用Max-Min,解模糊采用重心法。
2.1 确定输入输出变量
将偏差e和偏差变化率ec作为模糊控制器的输入,PID 控制器 Kp,Ki,Kd的变化量作为输出。Kp,Ki,Kd的调整公式为
式中,K'p,K'i,K'd是 Kp,Ki,Kd的初始参数,其由常规方法得到。将{NB,NM,NS,ZO,PS,PM,PB}设置为输入变量e及ec、输出变量Kp,Ki和Kd的模糊子集。输入变量e和ec的量化论域均为[-6,6],输出变量Kp,Ki和Kd的基本论域和量化论域均定为[-3,3],比例因子均为1。三角形函数在论域范围内分布均匀,其灵敏度较高,将其选作系统的隶属度函数。
2.2 建立模糊控制规则
根据实际经验,参数Kp、Ki和Kd在不同e和ec下自调整需满足如下调整原则[1]:
在专家经验的基础上,通过仿真实验进行调整,可以归纳出模糊控制规则表如表1所示。
表1 参数Kp、Ki、Kd控制规则调整表
将Mamdani型模糊控制规则写成49条“if…then…”语言的格式如下:
在线运行过程中,锅炉液位控制系统利用上述模糊控制规则完成对PID参数的在线自校正,不断检测e和ec,以最快速度找出PID三个参数与e和ec的模糊关系,通过参数在线实时调整使模糊PID控制系统的响应速度、超调量、稳态误差都比单一的PID控制或模糊控制优越。
2.3 建立模糊推理系统
在Matlab环境中使用具有交互式图形界面的模糊推理系统编辑器和隶属函数编辑器。依照上述结果,选择输入输出模糊变量的论域范围、各语言变量的隶属函数形状等参数,解模糊方法选用默认的重心法,模糊推理系统中变量的定义和各变量隶属函数的设置完成后,界面如图2所示。
图2 模糊推理系统
按表1所示在规则编辑器中输入控制规则,完成后模糊规则编辑器界面如图3所示。
图3 模糊规则的确定与修改
3 模糊PID控制仿真及其比较研究
在本系统中,设定锅炉液位从30 cm升至50 cm,量化因子 Ke取0.4,Kec取 5,比例因子 Up,Ui和 Ud均取1,根据经验,PID 参数初值 Kp=80,Ki=9,Kd=80。为更好地显示模糊PID控制的控制效果,将其仿真模型同PID控制、模糊控制放在一起,如图4所示。
图4 3种控制方案仿真框图
仿真时间为60 s时,系统的阶跃响应输出曲线如图5所示。
图5 锅炉液位控制系统仿真结果
由图5可得到3种不同控制方案的性能指标,如表2所示。
表2 锅炉液位控制系统3种控制方案的性能指标
由此可见,模糊PID控制虽结构复杂,但控制效果的优势明显,超调量较小,上升时间短,系统响应速度快,调节时间短,稳态性能好,充分体现了模糊PID参数自整定的效果。
图6和图7是锅炉液位控制系统的数学模型参数改变后的单位阶跃响应输出仿真结果,以此研究模糊PID控制的鲁棒性。
图6 锅炉液位控制系统仿真结果(K=1.5,T=800)
图7 锅炉液位控制系统仿真结果(K=1,T=760)
由图可见,在被控对象的数学模型参数变化后,模糊PID控制的控制效果最佳,其响应速度最快,超调量小,调节时间最短。
在实际工作环境中,锅炉液位控制系统不可避免地会受到各种扰动的影响。在仿真时间为55 s时,加入50阶跃响应扰动,系统响应曲线如图8所示。
由图8可见,模糊PID控制的抑制扰动性能最理想,受到100%的阶跃扰动时基本无影响。在仿真时间为50 s时加入500阶跃扰动时,实验发现模糊控制的静差较大,已失去实际意义,传统PID控制和模糊PID控制的响应曲线如图9所示。
图8 锅炉液位控制系统抑制扰动仿真曲线
图9 锅炉液位控制系统抑制扰动仿真曲线
由图9可见,加入1 000%的阶跃扰动时,模糊PID控制系统不会受到过大影响,超调量为2%,不到20 s便可使系统输出值达到预期的理想值,鲁棒性好,而PID控制系统的超调量明显偏高,且调节时间偏长。一系列仿真实验验证了模糊PID控制的灵活性、适应性、鲁棒性等性能均较为理想。
4 结束语
模糊PID控制是在常规PID算法的基础上,通过计算当前系统误差e和误差变化率ec,利用模糊推理系统,查询模糊矩阵表进行参数调整,该方法实现简单、方便易用,对实际控制有重要指导意义。用模糊推理的方法在动态过程中改变PID的参数,能够发挥两种控制方式的优点,克服两者的缺点,提高控制质量。仿真结果表明,应用模糊PID控制方式对锅炉液位进行控制,适应力强,鲁棒性好,取得了令人满意的控制效果。
[1]刘金琨.先进 PID控制的Matlab仿真[M].3版.北京:电子工业出版社,2011.
[2]石辛民,郝整清.模糊控制及其Matlab仿真[M].4版.北京:清华大学出版社,2008.
[3]李茜,李彬,朱雪丹.模糊自整定 PID控制器的设计与仿真[J].化工自动化及仪表,2010,37(3):25 -28.
[4]杨晓武,李劲松,李干荣,等.基于Matlab的锅炉液位模糊控制系统设计[J].化学工程与设备,2014(1):11-14.
[5]王红旗.工业锅炉汽包水位智能控制器研究与设计[D].焦作:河南理工大学,2003.
[6]李东亮,毋玉芝.模糊自适应PID控制器在足球机器人中的应用[J].微计算机信息,2008(24):282-283.
[7]田琦,李琪,姚鹏,等.基于模糊PID的全方位移动机器人运动控制[J].电子科技,2011,24(9):131 -133,139.
[8]范振瑞.基于Matlab的PID温度控制系统设计[J].电子科技,2013,26(8):164-167.