杨学义,鲁元昊,李思超,胡坤,艾学忠
(吉林化工学院 信息与控制工程学院,微机测控装置与系统研究室,吉林吉林,132000)
水浴锅、电热套筒加热等是普遍的控温装置,尤其水浴锅,在化学是实验室、化工生产过程中应用十分广泛,其控制对象精确程度将会影响工业产品的质量,怎样使控制对象快速达到预期状态,是我们研究的重点。针对温度控制的精度和鲁棒性研究问题,国内外学者展开大量研究。文献[1]采用Delta V 控制算法对加热炉进行控制,虽然操作简单,但是控制精度不太理想。文献[2]采用改进蚁群算法来确定PID 的最优值,但是系统在加热过程中加热对象达到期望温度时间较长,且系统实时性不够好。文献[3]采用改进粒子群算法控制加热炉,控制效果不错,但是该算法容易陷入局部最优,使迭代出来的参数不是最优,文献[4]采用PI 自整定参数调节控制系统的温度,该方法大多依赖于工程师的经验,该算法仅对于某种特定的控制系统有效,文献[5] 增量式 PID 控制器控制发动机的温度,该方法在最佳性能下对应的温度不是定值,存在一定的差异;文献[6]采用基于模糊PID 减小了炉温波动,通过Simulink 仿真来模拟实际温度,目前仍存在被控对象数学模型与实际存在偏差,文献[7]提出了粒子群优化串级PID 来控制水浴锅的温度,可以快速、稳定控制温度,但是串级控制过程对每个锅温度控制比较复杂。文献[8]采用Smith-模糊PID 控制器用于橡胶挤出机料筒温度控制,Smith 预估控制可以提前补偿温度滞后现象,文献[9]提出了一种全阶状态观测器来控制加热炉温度,上述论文提供了极大的参考价值。
为解决仿真中建立的数学模型对水浴锅加热中非线性模型存在误差,提出了在仿真软件中建立物理模型,来实现温度在水浴锅中温度传递,通过Fuzzy-RBF 神经网络PID算法,将具有自我学习的智能算法和模糊PID 控制器有机结合起来,来控制水浴锅的温度,以此达到克服控制过程中的非线性,增强系统的鲁棒性,提高系统控制质量,降低了外界变化给系统造成不良影。
水浴锅加热装置主要由控制箱、加热丝、磁力搅拌器、温度传感器、外锅以及内锅组成。由于水浴锅在控制温度过程中不仅受到外界温度的影响,还受其自身锅体体积和材料的影响,推理出拟合度高的数学模型非比较困难。因此,本文提出在仿真软件中建立水浴锅传热系统物理模型,解决了数学建模困难问题,更贴近于实际情况。
物理模型搭建见图1 所示,通过稳定加热源给系统热量,热量通过热传递给外锅内的水,水加热的过程中向两个方向进行热传导,一个方向是传递给外锅的铝层,另一个方向传递给内锅的烧杯,最终热量传递给烧杯的水,以此达到温度控制。经实验可知,给定温度信号通过接入PWM 模块产生脉宽调制信号,信号再经过控制热流率源产生热量,热量经过传导热模块传递给热质量块,在经过可导热的管道,使外锅内的水升温,锅内的水通过一个压力泵实现内循环,外锅专门有一个导热口,通过这个口使外锅的温度传递给内锅,内锅与外锅模型基本一致,在导热口对接的是外界温度,为一个蒸发散热过程。
图1 水浴锅加热物理模型
内外锅传热仿真模块内部见图2 所示,温度输入从TANK(B)端A 端流入,热源通过TANK(B)的H 口传递给TANK(S)的H 端。
图2 内外锅传热模型块
管道能量守恒公式:
热液与管壁之间的热流率为:
烧杯内部能量守恒公式:
传统PID 作为最经典的控制方式,本身有很多优点,结构简单,调整方便,使用方式是将三个固定的参数比例(kp)、积分(ki)、微分(kd)组合在一起传递给被控对象,使系统达到稳定的控制效果。图3 为传统PID 控制原理图。
图3 传统PID 控制器原理图
PID 控制器的输出e(t)与输出u(t)的关系为[17]:
上式中,Kp是比例系数,Ki是积分系数,Kd是微分系数。
模糊PID 根据模糊逻辑将输出值y(t)和给定值r(t)运用模糊规则,经过模糊化、模糊推理、去模糊化三个步骤得到参数通过特定的组合叠加到传统PID 上,从而达到修正传统PID 的值,但是模糊PID 对于一些控制系统效果不佳,对于有滞后的、非线性的系统控制起来就显得吃力,并且模糊PID 中模糊域中参数依赖于工程师的经验,受人为影响大,这对在以后控制中出现的偏差难以解决,图4 为模糊PID控制器的结构。
图4 模糊PID 控制器
为了消除模糊 PID 使用时存在人为主观因素的影响,将模糊控制、RBF 神经网络和传统 PID 优点结合到一个控制系统中,使控制系统产生更加稳定的控制效果,见图5 Fuzzy- RBF 神经网络 PID 控制器的结构图,其控制基本原理为:将温度偏差e(t)与温度偏差变化率ec(t)输入到神经网络中,通过Fuzzy-RBF 神经网络中模糊控制器的模糊化和模糊推理,对 PID 的三个参数进行在线自我整定,来实现理想的控制效果[12]。
图5 模糊 RBF 神经网络 PID 控制器的结构图
RBF 神经网络共有4 个层,分别为输入层、模糊化层、模糊推理、输出层,输入层由两个节点组成,其作用是接收偏差和偏差变化率,将其传入下一层模糊化层,主要是根据模糊网络的规则,将其分为7 个节点,把输入层的参数生成隶属度函数,第三层主要是将每个模糊规则的隶属度函数调节至合适值,然后通过第四层把模糊参数反模糊化,生成输出层三个参数,分别为kp、ki、kd。图6 是模糊神经网络结构图以及各层的关系式。
图6 模糊神经网络结构图
第1 层为输入层。
第2 层为模糊化层。
式中,i= 1,…,N,j= 1,2,3, …,M,cij和bij表示第i 个输入变量第j个模糊集合隶属度函数的中心和基宽[12]。
第3 层为模糊推理层。
式中,i1=1,2,…,M,i2=1,2,…,M,n=1,2,…,MN。
第4 层为输出层。
其中,模糊推理层和输出层直接用权矩阵w 链接,i= 1,2,3。
Fuzzy-RBF 神经网络是利用自身的智能学习能力,重新规划模糊控制器中的模糊规则,通过线性方式来改变连接权wij、隶属度函数中心cij和基宽bij,该控制器的输出为:
PID 算法为:
式中:e(k)为第k次采样时刻的系统偏差。
自我学习的目标函数:
式中:w分别为该系统在kT时,刻的理想输出与实际输出,r(k) -y(k)则表示为迭代步骤k的控制误差。
本文采用梯度下降法对参数进行计算,通过不断搜索最小值,使系统中参数达到最优,结束迭代,然后输出权重wij、隶属度函数中心cij和基宽bij,具体算法为下式:
式中,α为迭代步骤;α为惯性系数,α∈[0,1];η为学习效率η∈[0,1]。
(1)初始化系统中c、d、w、η、α。他们分别是隶属度函数、基宽、权值、学习效率、惯性系数。
(2)根据系统传递过程计算,得出温度差值e(k)以及温度差变化量ec(k)。
(3)将各个参数传递给神经网络,通过迭代计算出下一次系统输出的温度值y(k+)1 。
(4)重新从系统中获取的参数c、b、w。
(5)令k=k+1 ,继续采样,然后返回步骤(1),再进行重新计算。
图7 是Fuzzy-RBF 算法的模型,由于算法结构复杂,神经元数目数目众多,难以用模块来搭建其结构,因此采用S 函数来搭建算法,不仅实现了其功能,同时使操作行大大提高,为了检验Fuzzy-RBF 算法的性能,分别与普通PID算法、模糊PID 算法对比,通过Simulink 建立的物理模型。
图7 Fuzzy-RBF 仿真结构图
首先我们给系统期望值为40 度的初始值,通过三种不同算法检验系统到达期望值的时间、超调量、稳定时间,具体参数如图8 所示。
图8 三种控制方式仿真结果比较图
通过上面的图8 和表1 我们可以看到,普通PID 的控制效果最差,达到上升时间为862s,并且该算法在系统中超调量达到了2.199%,最后达到期望稳定的温度区间需要2335s,模糊PID 的上升时间、超调量、调节时间中的参数虽然优越于普通PID,但对于Fuzzy-RBF 还是有很多不足,Fuzzy-RBF 中的上升时间低于800s,超调量为0.128%,几乎可以忽略,且调节时间远远小于另外两种算法,通过上述分析,Fuzzy-RBF 神经网络PID 控制算法在恒温水浴锅加热系统有优越的性能,在控制过程中反应速度快、稳定性好、精度高。
表1 三种控制方法比较数据统计表
图9 和表2 为检验Fuzzy-RBF 神经网络 PID 控制系统的跟随效果,首先给水浴锅物理系统输入一个40°阶跃,使其达到期望的温度后且稳定后,在 t=2000s 时,再给阶跃信号叠加一个温度为5 的阶跃信号,Fuzzy-RBF 神经网络PID 控制系统是最快达到二次阶跃的温度,从稳态40°到期望的45°仅用了458s,其他两种控制算法都超过500s,在超调量和调节时间指标下,控制效果都比其他两种算法好很多,稳定性和波动性效果明显,Fuzzy-RBF 神经网络PID控制算法在跟随阶跃上具有良好的跟随性能和鲁棒性。
表2 改变输入信号时三种控制方法比较数据统计表
图9 改变输入信号时三种控制方式仿真结果比较图
对于恒温水浴锅加热控制系统,不仅要快速、精准到达期望温度,还要有一定抗干扰能力,抵抗外界扰动对系统产生影响,本次改变了外界环境的温度,控制系统温度稳定后,在3000s 处升高外界的温度,扰动效果如图10 和表3 所示,通过比较不难发现,对于同样的扰动,通过对比,Fuzzy-RBF 神经网络 PID 控制系统能够很好抑制外界温度升高带来的不稳定现象,同时该算法产生的超调量和调节时间优越于其他两种。
表3 加入扰动时三种控制方式对比图
图10 加入扰动时三种控制方式仿真结果比较图
针对恒温水浴锅在搭建数学模型不准确,函数拟合度低的情况,本文建立了基于物理模型的仿真,提出了一种基于Fuzzy-RBF 神经网络PID 控制系统控制的恒温水浴锅加热,通过Simukink 仿真验证,在不同期望温度值,能够达到期望的效果,实现了对温度的快速、精确、稳定的控制。