作者:张毅
锅炉过热蒸汽出口压力是蒸汽供需平衡的标志,是影响系统蒸汽平衡的重要热力学参数,直接关系到操作的平稳与生产的安全。蒸汽出口压力控制系统具有时变、高阶次、大滞后等特点,利用常规的PID很难对其实现准确的,于是引进先进的控制算法来解决此问题。
本文选择专家PID算法来解决过热蒸汽出口压力过渡过程时间过长这一缺点。专家PID控制是对常规PID控制算法的一种改进,能很好地与实际工业相结合。西门子的Simatic PCS7集散系统实现了机电一体化,其中SCL模块可以实现编写专家PID控制算法。通过SCL编写PID控制与专家系统结合,优化了过热蒸汽压力控制器的输出,大大提高了控制系统的稳定性和控制效果。
1 过热蒸汽出口压力控制系统结构
过热蒸汽出口压力控制系统就是对出口负荷的压力进行控制的系统。影响过热蒸汽出口压力的变量有燃料流量、过热蒸汽出口流量以及过热蒸汽出口温度等。其中燃料流量是对过热蒸汽出口压力影响最显著的变量,而且可控性好。如图1所示是压力串级控制系统结构图。在串级控制系统中加入专家PID控制器PIC1104,通过主、副环的联合控制,使整个压力控制系统的性能提高。
2 PCS7系统组态
西门子PCS7将传统的DCS和PLC控制系统的优点相结合,系统所有的硬件都基于统一的硬件平台,可以根据需要选用不同的功能组件进行系统组态。PCS7基于Profibus现场总线技术,把现场设备集成在过程控制系统中,现场设备通过ET200系列分布式I/O连接到Profibus总线上。系统结构图如图2所示。
PCS7的系统组态是指使用工具软件对计算机及软件的各种资源进行配置,使计算机或软件按照预先设置的指令参数,自动执行指定的任务的过程。PCS7的组态过程一般分为以下四个步骤。
①新建项目工程
整个项目工程的新建都由工程向导( new projectwizard)完成,主要进行CPU套件的选型、项目层级的设置以及创建操作员站( OS)。
②应用服务器(AS)、OS硬件的组态
项目建立完成之后,需要进行硬件组态,实现SMPT1000(小型过程控制仿真平台)和PCS7的数据通信。根据过热蒸汽出口压力控制系统的需求,将所需采集与输出的信号线接到ErI200对应的I/O接口上。其中AS组态就是将电源、CPU、CP443 -1等订货号与实际硬件订货号匹配,配置CPU412 - 3H的MPI/DP接口。该接口支持Profibus DP通信,可实现CPU直接与远程I/O通信。
OS组态与AS类似,需要在工程师站(ES)中组态真实的OS,并且双方通信成功。
③控制算法组态
控制算法组态主要是指连续功能图( CFC)组态。在CFC编辑器中放置控制系统所需要的功能块,配置相关的参数。这些功能块是具有特定功能的预置功能块,连接相应的端子即可。本文所需要的专家PID功能块需要使用SCL语言进行编写,编译后才能生成专家PID控制器。
④监控画面组态
监控画面组态就是通过WinCC人机界面组件完成的上位机界面,实现锅炉过热蒸汽出口压力的监控的可视化和过程任务控制。操作员在OS界面可以以图形化的方式控制和监视出口压力控制系统的数据变化。
3专家PID控制器设计
在设计专家控制器时选用了经典的控制器模型,进一步提高专家PID控制器对数据的处理能力,提高最终的控制效果。专家控制通过模拟专家的推理过程和知识,能以专家的水平解决问题。本文使用知识工程方法,应用专家系统的设计规则和实现形式构建一个实时专家智能控制系统印。专家PID控制器结构图如图3所示。
由图3看出专家控制器选用的模型为:
式中:U=(u1,u2,…,uι)为控制器输出集;.E={e1,e2,…,em}为控制器输入集;T={t1,t2,…,tn}为系统中的数据项集;I={i1,i2,…,ip}为推理机构的输出集。
f为智能算子,其基本形式为:
IfE and Tthen (if, then U) (2)
专家PID控制器就是依据这个模型理论设计的。图4所示的是典型的二阶系统单位阶跃响应误差曲线。
e(t)的采样误差e(k)、e(k-l)、e(k-2)分别表示前一次和前两次采样时刻的误差值,则有:
Ae(k)=e(k)-e(k-l)
Ae(k-l)=e(k-l)-e(k-2)
根据误差及其变化,并结合图4对专家PID控制器的规则进行如下定性分析。
①当le(k)|>M1时,说明误差的绝对值已经很大。不论误差变化趋势如何,都应考虑控制器的输出按定值输出,以达到迅速调整误差、同时避免超调的目的。此时,它相当于实施开环控制。控制器输出为u(k)=usp。
②当e(k)Δe(k)>0时,说明误差在朝误差绝对值增大方向变化,或误差为某一常数,未发生变化。
如果le(k)I≥M2,说明误差较大,可考虑由控制器实施较强的控制作用,使误差绝对值朝减小方向变化,迅速减小误差的绝对值。控制器输出为:
u(k)= u(k-1)+K1{KpAe(k)+Kie(k)+
KD[e(k)- 2e(k-l)+e(k-2)]} (3)
如果I e(k) I≥M2,说明尽管误差朝绝对值增大方向变化,但误差绝对值本身并不是很大,可考虑实施一般的控制作用,扭转误差的变化趋势,使其朝误差绝对值减小方向变化。控制器输出为:
u(k)=u(K -1)+KpAe(k)+K1e(k)+
KD[e(k)- 2e(k-l)+e(k-2)](4)
(③当e(k)Δe(k)<,Δe(k)Ae(k-l)>0或Δe(k)=0时,说明误差的绝对值朝减小的方向变化,或者已经达到平衡状态。此时,可考虑采取保持控制器输出不变。
④当e(k)△e(k)<O、Ae(k)Δe(k-l)<0时,说明误差处于极值状态。如果此时误差的绝对值较大,即可可考虑实施较强的控制作用;如果误差的绝对值较小即l e(k)J<M2,可考虑实施较弱的控制作用,即:
e(k)=u(k-l)+KiK1em(k) |e(k)|>M2(5)
e(k)=u(k-l)+K2Kpem(k) l e(k)I≤M2 (6)
⑤当』e(k)|≤ε(精度)时,说明误差的绝对值很小,此时可加入积分环节,减少稳态误差。
以上各式中,em(k)为误差的第k个极值;u(k)为第k次控制器的输出;K.为增益放大系数,Ki>l;K2为抑制系数,0<K2<1;M1、M2为设定的误差界限,Mi>M2 >0。
以上规则就是通过对误差控制信号的瞬时响应进行模式识别。在常规PID控制器的基础上构建专家PID控制器,可以更好地优化主控制器的输出,充分发挥专家控制的优点,能对时变、非线性和易受到各种干扰的受控过程给出有效的控制策略。串级专家PID控制系统方块图如图5所示。
4仿真与验证
4.1对象特性辨识
在进行Matlab仿真之前,需要获取最接近被控对象的精确数学模型。运用WinCC控件中的VisualBasic的脚本语言读取压力模型的输入(燃油流量)与输出(蒸汽压力),再利用行列式比定阶法来估计压力模型的阶次;然后利用递推最小二乘法实现对压力模型的系统辨识;最终确定最精确的过热蒸汽出口压力的数学模型。在Matlab中编写模型阶次辨识语言,对多组压力模型的输入输出进行计算,得到行列式比DR(n),从而实现对过热蒸汽出口压力模型阶次的辨识。行列式比数据如表1所示。
通过数据比较可知,当n等于2时行列式比显著增加,故压力模型的阶次可定为2阶。
获得压力模型的阶次之后,进一步分析论证得到最接近的压力辨识模型的差分方程为:
y(k)=- 1.011 05y(k -1)+0.025 6y(k -2)一 0. 000 6u(k-l)+0.000 5u(k-2) (7)
4.2专家PID控制的仿真
根据式(7)的模型,先在Matlab上进行仿真,分别进行常规PID与专家PID的仿真,PID控制器是通过数字PID控制算法程序实现的。整定的专家PID控制参数为:Kp=5.4 Ki=0.8 KD=30 K.=1.2 K2=0.6利用Matlab绘出各自的压力曲线如图6所示。
由图6的输出曲线可以看出,专家PID控制过渡时间短且基本无超调。仿真结果表明专家PID的控制效果更加优越。
4.3实验验证
由仿真结果可以明显看出专家PID控制器的优越性,再根据前面所述的专家PID控制器的设计规则,在PCS7中运用SCL模块编写专家PID控制器功能块进行实验验证。生成的专家控制器功能块如图7所示。
在PCS7中将整个锅炉过热蒸汽出口压力控制系统搭建完成后,副回路控制器使用燃料流量控制器,主回路控制器分别采用常规和专家PID控制器,准备工作完成以后运行上位机程序进行实验。两种PID控制的输出结果比较如表2所示。
表2的对比结果进一步表明,专家PID控制使控制器的输出更加稳定,专家PID控制在快速性、抗干扰性等方面优于常规PID控制。
5结束语
本文首先利用Matlab搭建的出口蒸汽压力的数学模型,验证了专家系统在PID控制器运用中的优越性,并通过西门子先进的PCS7系统进行进一步实验验证。与常规的PID控制相比较,专家PID控制提高了系统的抗干扰性能,在实际生产环节中可以起到节能减排、提高经济效益的作用。
6摘要:
针对常规PID锅炉过热蒸汽出口压力控制效果不佳的问题,提出并编写了基于PCS7系统的专家PID控制器。运用Matlab软件进行专家PID的仿真,并利用高级多功能过程控制实训系统(SMPT 1000)以及PCS7对控制效果进行了进一步试验验证,实验中PSC7主要负责建立控制系统,实现专家控制。运行结果表明,该控制方案的调节时间短、超调量小,并且具有较好的抗干扰能力,可以实现过热蒸汽出口压力的稳定控制。