模糊自适应PID控制在电阻炉温控中的应用仿真
2018-04-29华磊张成涛陆文祺王佳奇
华磊 张成涛 陆文祺 王佳奇
摘 要:电阻炉是一个具有工作参数随炉温变化而变化的受控对象,具非线性和大滞后的特性,很难建立其精确的数学模型.本文设计了一种电阻炉温模糊自适应PID控制器硬件系统及控制逻辑,首先将电阻炉温度模型等效为一阶惯性滞后环节,根据系统误差e和误差变化率 ec 作为系统的输入量,然后采用一种模糊自适应PID控制方法,对PID的参数进行在线自动调整.为了验证设计系统的合理性,通过软件MATLAB对整个控制系统进行建模和仿真.仿真结果表明:设定电阻炉控制炉温为100 ℃时,采用传统的PID控制算法超调量为18.5%,经过 600 s达到稳态;而采用模糊自适应PID控制算法的超调量基本为零,达到稳态时间为300 s,由此说明模糊自适应PID控制算法响应快、达到稳态时间短且稳态效果好;在仿真时间第600 s的时候对两种不同电阻炉炉温控制系统添加一个-5 ℃的干扰信号,模糊自适应PID控制系统波动小、恢复稳态时间短,说明其抗干扰能力强、鲁棒性好;因此,通过本文研究表明:将模糊自适应PID控制算法应用在电阻炉温度控制中,控制效果好、实用价值高.
关键词:电阻炉;温度控制;模糊自适应控制;Matlab仿真
中图分类号:TM924 DOI:10.16375/j.cnki.cn45-1395/t.2018.01.007
0 引言
目前,在工业生产控制系统中广泛的运用比例、积分和微分故称之为PID控制器[1],常规PID控制算法简单,适用于能够建立精确数学模型的线性控制系统.目前国内对电阻炉的控制大多数采用PID控制,因电阻炉具有非线性、大滞后的特性,数学精确模型建立困难,使得PID控制在电阻炉控制中的效果并不理想.
在电阻炉温控方法的研究由来已久,李梦瑶[2]通过建立电阻炉的数学模型,并对常规PID控制和模糊神经网络PID控制在MATLAB2007中分别建模仿真得出模糊神经网络PID控制比传统的PID控制上升速度快,超调量小,对外来干扰信号有较好的适应性.吴勇[3]通过分析电阻炉的工作原理,设计温度反馈信号经过滤波、放大信号处理电路并发送给软件,进行温度反馈调节在,MATLAB中建模仿真,与传统PID控制相比其控制效果较好,响应速度快,出现较小的稳态误差.
本文采用等时间间隔测取电阻炉炉温,重复多次实验取测量温度的平均值,由Cohen-Coon公式在MATLAB中拟合得出电阻炉的炉温传递函数模型,根据电阻炉炉温的传递函数在MATLAB/Simulink中建立不同的温控算法模型,实验结果表明将传统的PID控制算法与模糊控制规则相结合,不仅保持了传统PID的优点,而且Kp,Ki,Kd在线自动调整减少了计算量,抗干扰、稳定性、适应性等能力比传统的PID控制能力更强,且无超调量.
1 系统硬件设计
该系统主要以AT89C51单片机为核心,DS18B20温度传感器、保护电路、蜂鸣器、散热风扇、加热电阻丝和LED屏组成.DS18B20的温度测试范围为-55 ℃~125 ℃,分辨率可达0.062 5 ℃,在-10 ℃~80 ℃内的精度为±0.5 ℃[4],可以达到实验温度控制要求精度,系统的结构框图如图 1所示.
系统的工作原理:单片机根据检测到实际温度与设定温度的误差作为输入量来控制执行机构加热电阻炉的电压大小,以此来控制炉温,当温度高于允许设定值的范围,单片机通过模糊自适应PID控制来调节炉温使其正常工作.当电阻炉出现异常故障时蜂鸣器会发出刺耳的报警声并断电停止工作.
系统的功能特点:1)该实验可以根据温度误差自动调节电阻炉的温度,确保电阻炉在加热过程中确保加热温度在安全范围内;2)该系统具有温度采集功能和通过LED模块动态实时显示炉温;3)系统还根据实际生产安全,设计了保护电路,防止过流、过压[5]、温度过高等保护电路,冗余设计可以保证电阻炉安全工作;4)硬件采用AT89C51单片机为核心的控制器,软件设计为模糊控制.
2 模糊自适应PID控制设计
2.2 自适应模糊PID控制器原理及流程
自适应模糊控制器由模糊化接口、模糊推理、知识库和解模糊化等组成[7-8],模糊自适应PID控制器,以温度误差E和温度变化率EC为输入,经过量化因子处理变为模糊量,在经过解模糊化在线调整Kp,Ki,和Kd,因此被控对象具有较好的动态性和静态性,具有计算量小,易于单片机控制的優点[9].模糊控制的流程图如图3所示.
2.4 自适应模糊PID参数整定基本原则
1) 当系统偏差(|e|)较大时,为使系统尽快消除偏差,不管ec的正负,都应该取较大的Kp和Ki,以达到缩小偏差的目的.如果e*ec<0,则应取较小的Kd或者为0;反之,e*ec>0,则应取较大的Kd,阻止偏差继续增大[10].
2) 当系统偏差(|e|)适中时,为防止系统超调量过大,取较小的Kp,Ki取中等程度的值.如果e*ec<0,则该取较大的Kd,防止系统的超调;反之,e*ec>0,应该取适中的Kd,防止偏差继续增大[11].
3) 当系统偏差(|e|)较小或者偏差为0时,为缩短系统的调节时间,可取适中的Kd,较小的Ki.如果e*ec<0,则应取较小的Kd;反之,e*ec>0,应该取适中的Kd.此时的Kd不宜过大,否则系统对扰动敏感、震荡加剧、调节时间过长.自适应模糊PID控制系统根据采集炉温的不同值,选择输入语言变量e和温度变化率ec模糊语言子集[NB,NM,NS,ZO,PS,PM,PB]考虑ΔKp, ΔKi, ΔKd之间的关联[12],响应开始的时候以e(t)= y(t)-r(t),其中r(t)为给定输入量,y(t)为反馈量,规则描述:以IF E=NB and EC=NB then ΔKp=PB and ΔKi=NB and ΔKd=PS为例描述,当偏差、偏差变化率为负大(NB)时,为使系统尽快消除偏差ΔKp取正大(PB),被控量远远小于设定值,而且以较大的速度在增加偏差,因此要保证积分增加则ΔKi取负大(NB),ΔKd要抑制这种趋势所以取正小(PS) .由以上基本原则和专家经验可以得出模糊控制器的控制规则如表3所示.
3 基于MATLAB/simulink的系统仿真模型
基于MATLAB提供的仿真工具箱(Fuzzy Logic Toolbox)建立模糊逻辑推理规则, 在Command Windows下输入“fuzzy”命令,并将模糊推理系统取名为mohu.fis保存到工作空间,可将模糊推理系统保存在磁盘上,如图4所示.在MATLAB中新建一个mdl文件取名为mohu.mdl,电阻炉温度控制系统的传递函数为,建立如图5所示的仿真模型图.两种不同控制方法仿真的结果如图6所示.
从图5、图6可知:设定电阻炉炉温为100 ℃,仿真时间设定为1 000 s.模糊自适应PID控制系统在300 s的时候达到稳态,且一直保持100 ℃,无超调;传统PID控制系统达到稳态用时600 s,超调量为18.5%,表明模糊自适应PID控制算法响应快、达到稳态时间短且稳态效果好.在第600 s的时候分别加入一个-5 ℃的干扰信号[5],由图6可知,模糊自适应PID控制再一次恢复稳态速度快且比传统PID控制波动小,说明模糊自适应PID控制抗干扰能力强、鲁棒性能好. 从图7可以看出模糊自适Kp,Ki,Kd变化趋势大致符合实验要求,因此实验结果可靠,满足实验要求.
4 结论
为了验证模糊自适应PID控制比传统的PID控制在电阻炉温度控制中效果更好,基于MATLAB/simulink建立仿真模型,由仿真结果可知,在不知道精确的数学模型下,根据专家知识和操作人员的经验建立模糊控制规则表,就可以实现模糊自适应控制,模糊自适应PID控制算法响应快、达到稳态时间短且稳态控制效果好,抗干扰能力和鲁棒性比传统PID控制强,并且可以达到工业生产过程中的控制需求,实用价值高,但是本文中模糊自适应控制在响应时间不够快有待进一步改进.
参考文献
[1] 刘中杰. 基于模糊PID的电阻炉温度控制系统[J]. 电子设计工程, 2012, 20(13):151-154 .
[2] 李梦瑶. 基于模糊神经网络PID算法的电阻炉温度控制系统的研究[D].郑州:河南理工大学, 2014.
[3] 吴勇. 多台电阻炉温度智能群控系统的设计[D].武汉:武汉科技大学, 2013.
[4] 彭纪明. 电子数字式体温计设计[J]. 科技风, 2014(4):89-89.
[5] 邓玉斌. 带多种保护电路的LED驱动电路的设计[D]. 湘潭:湘潭大学, 2016.
[6] 许玉忠. 基于自适应模糊PID控制的电阻炉温度控制系统[J]. 华北水利水电大学学报(自然科学版), 2011, 32(2):83-86.
[7] 董爱华, 李梦瑶. 基于模糊神经网络PID算法的电阻炉温控系统[J]. 微型电脑应用, 2013, 29(12):44-46.
[8] 苏州经贸职业技术学院. 一种动态模糊控制系统 :CN203350635[P].2013-12-18.
[9] 李浩涌. 一种饲料烘干机的温度控制研究及其流场分布数值模拟[D]. 杭州:浙江大学, 2014.
[10] 谢仕宏.MATLAB R2008 控制系统动态仿真实例教程[M]. 北京:化学工业出版社,2008.
[11] 陈赞, 谭光兴, 林聪,等. 基于模糊算法的纯电动汽车制动能量回收[J]. 广西科技大学学报, 2014, 25(3):32-37.
[12] 孔峰,罗文广. 一种基于模糊控制的单片机电机调速系统[J]. 广西工学院学报,2001,12(1):44-47.
Abstract: The resistance furnace is a controlled object whose working parameters vary with the furnace temperature. It has the characteristics of nonlinearity and large hysteresis, and it is difficult to establish its precise mathematical model. According to the related literature, first, the temperature model of the resistance furnace is equivalent to the first order inertia hysteresis, we take the system error e and the error rate of change ec as inputs of the system, then adopt a fuzzy adaptive PID control method to adjust the parameters of PID online automatically. This paper designs a kind of resistance furnace temperature fuzzy adaptive PID controller hardware system and control logic. In order to verify the rationality of the designed system, the whole control system is modeled and simulated by the software MATLAB. The simulation results show that when the resistance furnace temperature control adopts the traditional PID control algorithm, the overshoot is 18.5%, the steady-state time is 600 s at the temperature of 100 ℃, while adopts the fuzzy adaptive PID control algorithm, the overshoot is basically zero, the steady-state time is 300 s. It is shown that the fuzzy adaptive PID control algorithm has a fast response time and a good effect. At the time of 600 s, when a -5 ℃ interference signal is added to the two different resistance furnace temperature control systems, the fuzzy adaptive PID control system fluctuation is small , the steady-state recovery time is short, which indicates that the robustness is good. Therefore, applying the fuzzy adaptive PID control algorithm to the temperature control of the resistance furnace has a high practical value.
Key words: resistance furnace; temperature control; fuzzy self-adaptive control; Matlab simulation
(學科编辑:张玉凤)