APP下载

基于PLC的鼓风机防喘振控制系统

2012-06-26黄丽梅李鸣张宇

电气传动 2012年8期
关键词:控制线编程语言鼓风机

黄丽梅,李鸣,张宇

(南昌大学 环境与化学工程学院,江西 南昌 330031)

1 引言

SIMATIC S7-400FH是一种安全及容错型自动化控制系统,它是基于冗余容错的S7-400H技术的安全型PLC,适用于安全等级要求较高的工厂。S7-400FH的控制过程不会对人或设备的安全造成威胁,当控制系统中出现事故时,S7-400FH将立即进入安全状态或安全模式。而鼓风机是硫磺回收装置(SRU)[1]的主要设备,其作用是向酸性气CLAUS燃烧炉与尾气焚烧炉输送空气,以满足硫磺回收中各反应的需求。倘若鼓风机在工作过程中发生喘振,这时风机连同它的外围管道一起做周期性的大幅度的振动,会造成设备的损害,并造成严重的经济损失。本文将S7-400FH控制系统应用到鼓风机的防喘振控制系统中,以确保鼓风机安全、稳定地运行。

2 工艺流程简介

硫磺回收装置常采用两级转化CLAUS工艺和尾气处理SCOT工艺来回收炼油厂废气中的硫,防止对水和大气的污染。其中,鼓风机的主要工作是:自装置外来的酸性气进行分液后,酸性气与鼓风机(K-201)送来的空气混合后在主燃烧炉(F-2501)中进行反应,此时,应严格控制鼓风机的配风量,保证燃烧产物中H2S和SO2为2∶1的摩尔比例,以达到CLASU催化反应中最大的硫平衡转化率,提高CLAUS部分的硫磺回收率。而从吸收塔出来的尾气(含有H2S),进入焚烧炉燃烧器(F-202),通过鼓风机(K-202/S)供给焚烧过程中所需的空气,使得尾气中残留的H2S及其它硫化物几乎完全转化为SO2,再进行循环回收[2]。可见,在硫磺回收装置中,鼓风机安全、稳定地运行是相当重要的。

3 喘振产生的原因

鼓风机在工作过程中,当入口气体流量小于最小流量限时,风机将从工作区进入喘振区,这时风机连同它的外围管道一起做周期性的大幅度的振动,工程上称为喘振[3]。喘振是由鼓风机的固有特性曲线呈驼峰型而引起的(见图1)。

图1 鼓风机的特性曲线Fig.1 The characteristic curves of blower

图1中,横坐标Q为风机流量,纵坐标P为风机出口压力,n为风机转速。

由图1可以看出:不同转速下的鼓风机特性曲线都有一极值点T,而流量和压力在极值点两边是呈相反的关系。例如,鼓风机转速为n2时的特性曲线,将流量当作一个衡量动能的能量,而将压力当作一个表征势能的能量。从能量守恒的角度观察,系统的势能和动能在相互转化的过程中,能量的总和保持不变。对于极值点右边的运行点A来说,当受外来干扰发生偏移时,随着流量减少,压力就增加;或者流量增加,压力就下降,相当于动能和势能在相互转化过程中,能量守恒,由此可见,点A是一个稳定的运行点。相反,对于极值点左边的运行点B来说,同样受外来干扰发生偏移时,随着流量减少,压力也减少;或者流量增加,压力也增加,也就是动能和势能在相互转化过程中,能量不守恒,由此可见,点B是不稳定的运行点[4]。

鼓风机在不同转速时,都有着不同的驼峰型特性曲线,所以这些特性曲线将存在上面提到的极值点,如果将每条曲线上极值点连接起来,便形成了喘振线。且由上面分析可知,在喘振线下方的运行点均为稳定点,称为稳定区;而喘振线上方的运行点为不稳定点,称为喘振区。

4 防喘振控制的整体设计

4.1 防喘振控制系统的硬件配置

安全及容错型自动化控制系统(S7-400FH)由2个冗余配置子系统构成,这2个子系统通过光缆进行同步连接,同时还建立了1个基于“主动冗余”以双通道(1oo2)结构运行的故障冗余自动化系统。所谓主动冗余,就是系统中所有的冗余资源在执行控制任务的同时,仍然处于运行状态。即S7-400FH系统中的用户程序,是被各自放在2个CPU中并被2个CPU同步执行[5]。

表1是鼓风机防喘振控制系统的硬件配置,其控制器采用2套CPU 417-4H,以达到冗余配置的要求,在通信方面,控制单元与远程I/O单元之间的通信由冗余PROFIBUS-DP现场总线完成。并且,采用 ET-200M 分布式I/O 作为PROFIBUS-DP上从站和S7-400FH系统相连。系统的I/O单元由2套输入/输出模块组成,且这些模块以冗余对的形式出现,组态成冗余I/O,以减少因CPU故障或I/O模块故障而造成的损失,提高系统的可靠性。

表1 防喘振控制系统的硬件配置Tab.1 The hardware configuration of anti-surge control system

4.2 防喘振控制的原理

喘振现象威胁着鼓风机安全、稳定运行,因此若想要防止喘振的产生,保证运行点一直工作在喘振线下方的稳定区域,进行鼓风机的防喘振控制是非常重要的。通过控制防喘振阀的开度来改变实际进入鼓风机的流量,是进行防喘振控制器设计的主要依据。其中,防喘振控制器将防喘振设定的曲线(本文设计为4点3段的折线)作为其设定值,通过检测鼓风机的入口流量Q和出口压力P,以及结合鼓风机当前的工况来控制防喘振阀。一旦风机现行的工作点过防喘振控制线进入喘振区发生喘振,防喘振阀迅速打开,及时消喘;喘振消失后,防喘振阀会慢慢关闭(即所谓的“快开、慢关”)[6]。防喘振控制的原理图如图2所示。

图2 防喘振控制原理图Fig.2 Schematic of anti-surge control

喘振作为鼓风机的固有特性,同时也受其进气条件的影响(例如:进气温度、进气压力等)。其中,温度降低,喘振线上移;温度升高,喘振线下移。进气压力升高,喘振线上移;进气压力降低,喘振线下移。因此,为了使得防喘振的控制能适应各种气候条件,应采用温度、压力补偿的算法。

根据以上控制目标及控制要求,防喘振控制器的主要功能为:

1)实现流量信号的温压补偿功能;

2)当鼓风机工作点达到报警线时,能实现喘振报警;

3)当鼓风机工作点靠近防喘振线时,防喘振放空阀打开放风,消除喘振;

4)当鼓风机工作点进入放风线时,防喘振放空阀全开,紧急放风;

5)实现防喘振放空阀的快开、慢关功能;

6)PID参数的自整定功能。

5 防喘振控制策略的实现

5.1 防喘振控制线的设计

图1中,放空线(即喘振裕度)是由实测喘振线下移3%得到的,当运行点位于放空线下方时,防喘振阀关闭;若运行点位于放空线上方,为防止喘振发生,防喘振阀全开。鼓风机的防喘振控制线是由喘振线下移8%得到的,当鼓风机的运行点越过防喘振控制线进入喘振区域时,控制器将发出喘振危险信号,防喘振控制系统将自动调节防喘振阀放风,使得出口压力下降,流量上升,防止喘振发生。在喘振线的下方10%设置一报警线,当鼓风机的实际运行点接近报警线时,控制器发出接近喘振报警信号,提醒操作人员注意。根据厂商提供的鼓风特性曲线,即可确定放空线、防喘振控制线和报警线等数据。这些数据由鼓风机出口压力和鼓风机入口流量构成,根据该风机喘振曲线比较平滑接近直线的特性,使它们以折线形式存储,采用这样方案,不仅计算简单,而且也能够充分利用鼓风机的有效运行区域。

5.2 温压补偿的设计

一般情况下,温压补偿可以用下式[7]来实现:

式中:Qo为补偿后流量值,m3/min;Qi为测量流量实际值,m3/min;Pi为测量压力,kPa;P0为参比压力,kPa;Ti为测量温度,℃;T0为参比温度,℃。

5.3 快开、慢关的设计

当喘振发生时,防喘振阀应迅速开启,然而随着防喘振阀的开启,运行点将回到防喘振线的下方,此时防喘振阀在关闭过程中又应放慢,即要求在打开、关闭防喘振阀的过程中,所用的速度是不一样的。由于防喘振控制器“快开慢关”的要求,若采用传统不改变比例项或积分项参数的PID算法,则防喘振阀开和关的速度应该是相同的。因此,为了让防喘振阀“快开慢关”的要求得以实现,可改变PID参数中的比例项或积分项。而在本文的防喘振阀“快开慢关”控制中,主要是通过比例增益P的折线运算来实现,即通过偏差e的限定范围,改变增益P的值。

5.4 防喘振控制的实现

鼓风机防喘振的软件实现采用模块化程序的设计方法,分别由模拟量的输入、输出处理模块、防喘振控制线函数发生器、比较器模块、PID调节控制等部分组成(见图3)。其中,将测量到的入口流量Q在进行温压补偿运算后,所得的流量值经过折线运算后得到的出口压力作为PID控制的设定值SP,并以此来控制测量值出口压力PV。防喘振控制的偏差e=SP-PV即为出口压力的控制偏差。当风机正常工作时,则它的运行点应该在图1中防喘振线的下方,此时偏差e>0;若运行点在防喘振线上方,此时偏差e≤0,则控制防喘振阀的开度[8]。

图3中,P1,P2,P3分别为风机出口压力P经过放空线、防喘振线、报警线函数发生器运算后的压力。在PLC的各种编程语言中,连续功能图(continuous function chart,CFC)[9]不 仅 具 有PLC典型的元素(例如:输入/输出、定时器、计数器和符号表等),而且具有图形化编程语言的特性,非常适合处理过程控制和系统工程的任务。而结构化控制语言(SCL)的特性与计算机高级编程语言非常相似,是一种基于PASCAL的高级编程语言,其具有循环、数组、选择、分支和高级函数等特性,因此适合处理复杂数学函数、复杂运算功能、数据管理和过程优化等任务[10]。

图3 防喘振控制流程图Fig.3 Flow chart of anti-surge control

基于上述CFC和SCL编程语言的优点,鼓风机防喘振的逻辑组态则采用CFC+SCL编程形式,即在SIEMENS STEP 7中使用结构化控制语言(SCL)设置函数发生器功能块,使它们以折线函数表的形式储存,然后,在CFC编辑器中,使用这些已经制作好的具有特定的功能块进行工作,将这些功能块放置到CFC图中,并将相应的参数互连。其中,温压补偿功能块FB5的程序如下:

6 结论

针对硫磺回收装置中的鼓风机设计了一套防喘振控制系统,且将先进的S7-400FH应用到硫磺回收装置上,具有良好的可靠性和安全性,可以避免鼓风机在运行过程中发生喘振。该防喘振控制系统不仅能够很好地检测喘振的发生,适时报警,引起工作人员的注意,而且能够及时的消除喘振,确保鼓风机安全、稳定地运行。

[1]马鑫.硫磺回收装置工艺方案确定及设备选择[D].北京:中国石油大学,2007.

[2]陈赓良,肖学兰,杨仲熙,等.克劳斯法硫磺回收工艺技术[M].北京:石油工业出版社,2007.

[3]袁国利,郎兵.三冗余PLC在压缩机防喘振控制中的应用研究[J].自动化仪表,2011,32(1):54-57.

[4]张俊.高炉鼓风机防喘振控制策略研究[D].上海:同济大学,2008.

[5]SIEMENS.西门子冗余系统指南[M].北京:西门子(中国)有限公司,2008.

[6]张婉悦,唐健,孙以雷,等.污水处理过程中鼓风机防喘振控制的设计与实现[J].计算机测量与控制,2006,14(2):217-218.

[7]杨春来.S7-400FH在广石化硫磺回收ESD中的应用[D].天津:天津大学,2006.

[8]程冠军,刘建宇.探讨TMR三重化冗余TRICON紧急停车系统应用程序转化和移植问题[J].数字石油和化工,2008(8):31-39.

[9]Simens.SIMATIC CFC for SIMATIC S7[Z].SIEMENS AG,2006.

[10]张春.西门子STEP-7编程语言与使用技巧[M].北京:机械工业出版社,2009.

猜你喜欢

控制线编程语言鼓风机
基于JavaScript编程语言之 闭包技术在焦点轮播上的应用
人与自然和谐共存一浅谈黄哗市三条控制线划定
鼓风机用高速永磁同步电机设计
Java编程语言的特点与应用
《关于在国土空间规划中统筹划定落实三条控制线的指导意见》发布
浅谈不同编程语言对计算机软件开发的影响
某车型D19发动机控制线束图解
宝马535i车空调鼓风机常转
面向对象Web开发编程语言的的评估方法
明锐车鼓风机不出风