谢培严
(浙江镇海发电有限责任公司,浙江宁波315208)
DCS通信故障实例及分析
谢培严
(浙江镇海发电有限责任公司,浙江宁波315208)
例举DCS控制系统内部通信故障实例,从控制系统硬件和软件2个方面分析了引起故障的可能性,针对发电厂维护无法解决的控制系统自身缺陷,提出通过软件优化提高控制系统容错能力的方法,以提高控制系统的可靠性。
DCS;硬件故障;程序优化;容错能力;ABB
近年来,DCS(分散控制系统)由于其自身的特点和优势,在电力系统中得到广泛的应用,绝大多数发电企业尤其是大型机组的生产过程控制,均采用了各型进口或国产DCS。
虽然DCS技术先进,功能强大,但实际应用中仍存在诸多问题。资料显示,由于DCS原因引起热控保护误动而造成的机组跳闸在全部热控保护误动中占很大比例,其中除了DCS设计、维护以及管理不当等原因外,由于DCS自身硬件缺陷引起的热工保护误动也不在少数。
本文针对ABB的DCS控制系统内部模件间通信瞬间中断问题,详细分析造成通信故障的各种可能,并提出了解决问题的方法。
在ABB的DCS控制系统中,为更好地把数据传递至相应的节点,通信网络采用如图1所示的多层独立环形网络和总线网络结构。该网络结构中包括3个数据层,分别为:
图1 DCS通信网络结构
(1)过程数据管理层:CNET(Control Network)。
(2)过程控制数据层:CW(Control Way)。
(3)过程I/O数据层:扩展总线或子模件总线XB(Expander Bus)或SLAVE BUS。
以下涉及的通信故障发生在过程控制数据层,即CW,它是一个冗余的串行链路,传输速率为1M波特率,支持最多32个节点,用于控制器(MFP与BRC)之间以及控制器与NPM(网络处理模件)之间的数据交换。通过网络处理模件传送CNET的组态下装数据,控制回路整定参数以及例外报告等,同时实现控制器间信号传递和共享。CW通信协议采用自由竞争方式协议。自由竞争协议的工作方式是以总线结构连接的所有节点均是独立的、平等的通信主体,以广播方式发布信息,而其余节点处于接收状态。控制通道的通信网络一般安装在机柜内,抗干扰较好。
为了控制和减少网络传递的信息量,DCS采用例外报告技术,即在过程控制中,产生的涉及测量数据、操作、报警、管理的信息经过一定的技术处理后,形成一种反映信息值的专门报告。产生例外报告有三大判断条件:数据的变化率,即例外报告死区;采集数据的时间是否达到例外报告的最大、最小时间;数据超过限制值或返回到报警限。例外报告的最大、最小时间与数据超过限制值可以通过组态进行设定,从而实现控制网络传递的信息量。不同测量点可设定不同例外报告参数,可使重要参数更多的占用网络,达到优化网络通信的目的。
ABB的DCS控制系统为上世纪八十年代的产品,由于受当时计算机及网络通信技术水平的影响,其通信网络的容量和速率都比较低,CNET通信速率为10M波特率,CW通信速率仅为1M波特率。但由于采用例外报告技术和数据压缩技术等先进的技术手段,相对于同时期其他DCS产品,网络通信具有明显的优势。这也使得ABB多年来在这方面鲜有创新和突破,而其他DCS厂家不断采用最新的计算机及网络设备,不断完善和优化控制网络,通信容量和速度已比ABB的产品高几十倍。
2.1 故障一
某发电厂锅炉主蒸汽温度低和低低同时瞬间报警,造成汽轮机跳闸,报警时间小于1 s,其他无任何报警,该温度低报警是通过主蒸汽温度模拟量信号在控制程序中设置的软报警,事后查看模拟量信号没有发生过变化。由于模拟量信号例外报告的组态在4号控制器中,温度低和低低信号组态和报警例外报告在6号控制器中,所以排除其他因素后,怀疑是CW通信异常造成该故障,这2个控制器分别为BRC300和MFP03,而这2个控制器内的其他信号由于缺少监视手段,无法确认其他信号是否发生过通信异常情况。
2.2 故障二
某发电厂在机组停机过程中,锅炉汽包水位2低、3低同时发信,1 s以内又同时恢复,造成锅炉跳闸。检查报警记录,无其他报警,卡件运行正常,现场3个模拟量水位信号和汽包压力信号都没有发生大幅度的波动。
汽包水位2低、3低信号运算如下:由现场3个模拟量水位信号通过3取中,再乘以汽包压力修正系数,然后通过高低限比较获得。而汽包压力修正系数是在另外一个控制器计算后通过CW通信获得。应用排除法基本可以肯定该故障是由于汽包压力修正系数信号通信丢失,瞬间值变零引起。模件间其他通信未发现问题。
通过查DCS趋势及进行相关试验,确定这2起故障都可能是控制器间CW通信异常所致。ABB的控制系统在其他使用厂家也曾出现过类似问题,总结CW通信异常可能原因有以下几种(不包括硬件损坏的情况)。
3.1 CW芯片本身的问题
2007年ABB公司曾出过技术通报,由于芯片可能会发生CW通信丢失,所以对BRC300,NPM12,NIS21,MFP12,CPM02模件辨识芯片6644789A1或FPGA芯片型号为E19B要求进行升级。因此为了排查芯片本身问题,检查了所有模件CW芯片,确认所有控制器芯片不属于ABB公司通报的问题CW芯片。
3.2 通信量太大
CW的通信速率为1M波特率,当通信量比较大时,容易引起通信堵塞。该厂主模件控制对象功能划分不是很合理,对余热锅炉的控制采用2对主模件,其中1对主要负责I/O信号处理和设备驱动级的控制,而另1对主模件主要用于设备驱动的逻辑条件运算,不带I/O模件。以泵的控制为例,泵的相关状态由前1对主模件采样,然后通过CW通信至逻辑条件运算的模件进行运算,运算结果再通过CW通信返回至原主模件控制泵的指令输出。按这种方式,每个控制对象都需要通过2对模件共同来完成,大大增加了CW通信量。
另外,组态不合理时也会大大增加通信量。如例外报告死区的设置,一般情况下例外报告死区设置为1%,如果死区设置成0.1%,那么该点信号将产生正常设置数十倍的通信量。事后检查例外报告参数设置,未发现设置不合理的情况。
3.3 信号干扰
故障的原因也可能由于信号干扰引起。但CW的整个通信都在同一个机柜内,对模件柜内可能存在的信号干扰进行排查,没有发现机柜内有干扰源。事故发生时,没有在该机柜内开展工作,测试也未发现异常。
3.4 模件或CW芯片的匹配问题
控制系统的硬件升级一般都非常频繁,以ABB的控制系统的主模件为例,近10年来先后经历了从MFP02/03到MFP12,再到BRC系列,BRC系列也由最初的BRC100发展到现在的BRC400。而主模件的芯片和CW芯片的版本更是多不胜数,每年都有版本更新。一些DCS使用年限较长的用户不可能紧跟厂家的开发步调,有时为了节约成本,往往出现多种版本的卡件同时使用的情况。出现CW通信故障的2对主模件正是不同版本的卡件,其中1对是MFP03,另1对为BRC300,主模件芯片和CW芯片也是不同的版本,这也可能会造成通信故障。
3.5 主模件负荷率高
部分主模件负荷率较高,有的甚至达到70%以上。这是因为当初设计时没有充分考虑主模件的余量;主模件版本比较老,CPU运算速率较低,再加上后期进行了大量的外围系统设备DCS控制改造,也增加了DCS负担。主模件负荷率高对DCS系统的稳定性和可靠性肯定会有影响,以上两起CW通信故障不排除主模件负荷率高这一原因。
在以上CW通信故障的可能原因中,模件或CW芯片不一致、主模件负荷率高以及通信量大这3种原因造成故障的可能性最大。由于这种故障频率很低,出现时又是瞬间,普通的技术手段很难监测或试验。所以真正原因还是不能确定,也不排除DCS设备不稳定引起,厂家应加强对这方面进行测试。根据前面分析的情况,主要做了以下这些工作。
4.1 芯片版本升级
针对模件或CW芯片不一致可能对CW通信故障造成影响的问题,在厂家的协助下进行芯片版本升级:
(1)控制器芯片(包括网络处理NPM)升级:控制器芯片版本升级不需要更换任何硬件,而是用厂家专用的程序通过电脑的并口连接到卡件进行程序更新,该项工作需要卡件离线时进行。
(2)CW通信芯片升级:CW通信芯片有2种,一种是普通的CW芯片,一种是FPGA芯片(可编程逻辑器件),普通的CW芯片只能通过更换来实现升级,FPGA芯片升级可以通过重写程序实现,方法类似于控制器芯片的升级。
4.2 主模件升级
主模件升级一方面能够解决主模件负荷率高的问题,另一方面可以提高CW通信的可靠性。但是鉴于全部更换主模件的费用问题,遵循CW通信量、目前使用的负荷率以及模件控制对象的重要性3个原则,选取其中3对控制器进行更换。MFP02/03控制器升级成BRC300。主模件更换后,负荷率由原来的70%降到30%左右,其他模件通过损坏更新方式逐步过渡进行升级。
4.3 信号冗余和容错处理
由于以上仅是对故障可能原因的处理措施,不保证该故障已经被彻底的消除,所以在此基础上,还增加了重要通信信号的信号冗余和信号容错功能,通过逻辑优化将该故障对机组安全运行的影响降到最低。
首先对所有模件间通信的重要信号进行排查,根据组态逻辑,对通信故障引起信号突变情况下可能会影响机组运行的信号进行控制逻辑优化,这样大大缩小了优化工作的范围。信号优化的方法有:
(1)增加信号范围限制。有些模拟量参数,有一个特定的范围,如汽包压力修正系数正常情况下始终是一个大于“1”的系数,因此在汽包压力修正系数通信后数据与常数“1”进行“大选”运算,即在任何情况下,使该值不会再小于“1”,这样避免该信号在通信故障情况下再次发生同类问题。
(2)通过坏质量检测进行信号切换。在通信故障情况下,信号为坏质量,可以通过信号坏质量检测功能码检测,在通信故障时,用常数或其它同类型测点信号进行替代。如汽包水位的控制,信号通过质量判断功能码的检测,如果判断为坏值,就用参数0代替,避免超限坏值对计算控制的影响。
(3)增加信号延时或变化速率限制。由于模件间系统通信故障时间都很短,根据控制对象对保护时限要求,加适当的信号延时或变化速率限制,可以躲过通信信号瞬间故障的影响。
(4)增加冗余方法。在信号发送的模件中,对于重要信号同时发送6路,在信号接收的模件中,对接收的6路信号进行6取3,这样大大提高信号的可靠性。
随着DCS使用时间变长和DCS厂家新技术的开发应用,DCS的用户都将面临着控制卡件升级问题,在对卡件进行部分升级的过程中,应注意不同版本控制卡件的兼容性问题,在备件采购和更换时,应注意芯片的版本,定期进行卡件芯片升级,以提高系统的稳定性。
对于ABB的控制系统,尽量将同一批有相关逻辑关系的控制对象组态在同一控制器,减少不同控制器间的通信;合理设置例外报告,控制通信的数据量。控制系统的硬件故障很多可以通过程序的合理组态,避免事故的扩大,控制程序的优化对一个软件编程人员来说是一个永无止境的追求。
[1]程永红,秦东亮,李勇.DCS系统故障分析处理及维护防范措施[J].中国仪器仪表,2011(2)∶58-61.
[2]张建创,贺贤峰,赵万荣,等.国电北仑电厂DCS调试存在问题及对策[J].电力技术,2010(2)∶63-64.
(本文编辑:陆莹)
Example and Analysis of DCS Communication Fault
XIE Pei-yan
(Zhejiang Zhenhai Power Generation Co.,Ltd.,Ningbo Zhejiang 315208,China)
By the example of internal communication faults of DCS,the paper,which considers the following aspects∶software and harclware of coutrol system,analyse probable of leading to tronbles,aiming at deficiency of the control system that the Power Plant can not solve through maintenance,proposes a method and idea of improving fault tolerance capacity of the control system by software optimization so as to improve the reliability of the control system.
DCS;hardware failure;program optimization;fault tolerance;ABB
TP273+.5
:B
:1007-1881(2013)07-0052-04
2012-09-28
谢培严(1977一),女,浙江宁波人,工程师,从事发电厂热控系统维护工作。