西气东输三线站场ESD与PLC系统通信现状研究与改进措施

2019-01-09 02:01赵晓旭
仪器仪表用户 2019年2期
关键词:站场中断压缩机

赵晓旭

(中国石油西部管道酒泉输油气分公司,甘肃 酒泉 735100)

0 引言

安全生产是企业的生命线,是企业各项工作的重中之重。只有安全生产得到保障,企业才能不断地发展。输气站场中为保证管道及设备安全平稳运行,关键时刻有效保护人员生命与设备安全,在现场自动化控制系统中有一整套的保护系统及逻辑,ESD系统作为现场紧急安全系统其重要性不言而喻。

图1 ESD程序中COMM_PLC例程下ESD与PLC通信程序Fig.1 ESD and PLC communication program under COMM_PLC routine in ESD program

输气站场SCADA系统关键设备都是冗余配置,常见的有控制器冗余、电源冗余、通信服务器冗余以及通信网络冗余,其目的是减少系统故障发生概率,提高SCADA系统的可靠性,确保油气管道稳定、可控运行[1]。但单纯的硬件上的冗余不能够完全保证整个系统的冗余,且局部的不冗余也会导致某个环节薄弱,大大降低了系统的可靠性,这就需要在系统规划时兼顾硬件与软件、整体与局部,同时还要考虑如何避免某些极端情况下可能发生的事故。

在西气东输三线站场SCADA系统中,过程控制PLC和紧急停车系统ESD均选用了罗克韦尔自动化公司的AB ControlLogix控制器及相关控制系统。站控PLC主要负责普通工艺参数采集,如一般阀门、压缩机、空压机、空冷器以及压缩机厂房进排风机的状态采集和控制等工作;而ESD系统则负责关键工艺参数采集与逻辑判断、ESD阀门控制以及站场三级ESD的执行。每个设备一般只能由一个系统控制,而在实际的工艺运行和联锁保护逻辑中则需要ESD和PLC相互配合工作。比如全站ESD触发后,ESD系统首先向过程控制PLC发送一个命令,然后由PLC再向压缩机厂房所有进、排风机再下发停机命令[2]。

1 西气东输三线站场ESD与PLC系统通信现状

以西三线某站为例,通过对站控PLC和ESD系统程序进行细致分析,可以看出三线站场ESD与站控PLC是通过使用MSG指令中的CIP Data Table Write和CIP Data Table Read功能由ESD向PLC传送和读取数据的。ESD和PLC程序中分别建立了ESD_to_PLC_INT和PLC_to_ESD_INT的DINT[10]类型的同名数组来相互传送所需要的数据。ESD与PLC通信程序MSG指令的配置如图2、图3、图4、图5所示。

图2 A网数据写入配置Fig.2 A network data write configuration

图3 A网数据写入路径Fig.3 A network data write path

图4 A网数据读取配置Fig.4 A network data read configuration

根据ESD与PLC通信配置可知,三线站场ESD与PLC是通过SCADA系统以太网A网(172.17.153. XXX)进行相互通信的。一旦出现某些情况(比如ENBT模块故障、网线接头松动、交换机故障等)将会导致ESD与PLC通信中断,且现有的系统逻辑中并没有对ESD与PLC间的通信状态进行诊断,运行人员无法及时发现ESD与PLC系统通信故障,使得系统容易带病运行。如果在ESD与PLC通信中断的情况下全站ESD逻辑触发,压缩机厂房进、排风机将无法停止运行,二、三线联络阀XV1701、XV1702无法正常关闭,燃料气撬进口阀XV37107、XV37207无法关闭,燃料气撬放空阀ESDV37105也无法放空,势必造成事故的扩大化。

此外,西三线站场压缩机联锁保护停机信号(出站超温、压缩机出口汇管超压、压缩机进口汇管低压、仪表气低压)均接入了ESD系统,在控制器中进行2oo3表决运算后通过通信软点传送至过程PLC,再由PLC向压缩机UCP系统下发正常停机命令(硬点信号)。如果ESD与PLC通信中断,压缩机所有保护联锁停机逻辑也将失效,对压缩机的安全运行也极为不利。

2 改进措施

要实现ESD与PLC系统通信的网络冗余,基本思路是增加通信B网(172.17.21. XXX),另外还需要配置一套通信状态检测机制来对两个系统间的通信状态进行实时诊断。当A网出现故障后由系统自动切换至B网,或当B网出现故障后自动切换为A网,同时SCADA系统上位机中产生故障报警,提醒运行人员及时处理故障。此外,还应限制A网和B网同时传送数据,不增加MSG指令的非预定性连接数和系统资源的占用。修改逻辑时还应注意编程思路和新建标签尽量与原来的程序保持一致,数据结构与标签域设置合理。

由于ESD与PLC系统均配置了两块以太网通信模块,物理上的冗余通信链路本身就存在,所以新增的B网不增加任何硬件成本,只需要在各自的控制器进行相应的组态即可。

2.1 通信B网配置

在ESD程序中需要新建ESD_to_PLC_W1和ESD_to_PLC_R1的数据类型为MESSAGE的控制器域标签,用来供ESD通过B网与PLC交换数据,图6与图7为数据读写路径配置。

图5 A网数据读取路径Fig.5 A network data read path

图6 B网数据写入路径Fig.6 B Network data write path

图7 B网数据读取路径Fig.7 B network data read path

2.2 通信诊断

图8 PLC程序COMM_ESD例程的最后增加的通信诊断程序Fig.8 The last added communication diagnostics for PLC program COMM_ESD routines

图9 ESD程序COMM_PLC例程中修改的程序段Fig.9 Program segments modified in COMM_PLC routines for ESD programs

通信诊断的功能是实时检测ESD与PLC系统的通信状态,通信中断后产生报警,确保通信可靠。PLC每秒钟向ESD系统发送一次时钟检测数据,该数据在1~60的范围内循环递增。ESD每秒钟将PLC发送的时钟检测数据与前一周期接收到的该数据进行比较,如果不相等,则说明接收到的值是实时变化的,表明通信正常;如果两者相等,则说明ESD没有收到最新的时钟检测数据,ESD与PLC系统通信不正常,ESD与PLC通信故障点ESD_PLC_COMM_FLT被置1。

2.3 网络自动切换

网络自动切换用于实现两条通信链路的热备用,在通信故障产生时实现自动切换,确保通信的可靠性。以上程序中ESD_to_PLC_W与ESD_to_PLC_R两个MSG指令只是在原来的逻辑上增加了执行条件,参数设置并没有改变。上述程序段所实现的功能是在每次ESD与PLC通信中断时,使双整形数ESD_PLC_COMM_SHIFT(ESD与PLC通信链路切换点)二进制取反一次,使得布尔量ESD_PLC_COMM_SHIFT.0在0和1之间切换。当ESD_PLC_COMM_SHIFT.0为0时,ESD与PLC通过A网交换数据;当ESD_PLC_COMM_SHIFT.0为1时,ESD与PLC通过B网交换数据,这样即可实现通信故障时网络自动切换。为了防止由于干扰造成网络的频繁切换,通过现场实际测试,此处设置的故障延迟时间为3s即可满足要求。

2.4 通信中断时上位机报警

为了实现ESD与PLC系统通信故障的及时发现与处理,需要将通信故障点ESD_PLC_COMM_FLT上传至上位机进行报警提示。首先应在将通信故障点赋值给一个空的N7地址,然后根据该N7地址换算出IEC地址,通过在RCI和上位机数据库中进行相应的配置即可实现通信故障的实时报警。

需要注意的是在两个通信服务器中均要进行配置,且两个RCI中的配置信息要相同,以保证在RCI进行主备切换时不影响该数据的上传。

3 结束语

通过少量的程序设计,实现了西三线站场SCADA系统中最重要的两个子系统间通信网络的冗余热备,修复了薄弱环节,使得整个SCADA系统网络结构趋于合理,大大减小了运行风险。

猜你喜欢
站场中断压缩机
松下压缩机(大连)有限公司
输气站场危险性分析
关于加强往复式压缩机维护管理的几点经验
BOG压缩机在小型LNG船舶上的应用
基于FPGA的中断控制器设计*
Linux中断线程化分析及中断延时测试
跟踪导练(二)(5)
千里移防,卫勤保障不中断
铁路站场EBS工程量分解
特殊站场引导信号电路设计