Modbus论文_蓝永辉,薛胜峰,徐长河

(阳江核电有限公司 仪控部 阳江广东)

摘要:本文首先从某核电调试期间的一次汽机冲转操作自动转速赋值失败导致跳机事件,介绍汽机控制系统TCS与DCS控制系统之间转速赋值逻辑,及DCS与TCS之间的通讯协议进行详细的剖析,最后针对本次自动转速赋值失败导致跳机事件,对自动赋值逻辑和DCS与TCS之间的通讯采取的措施进行详细分析;

关键词:Modbus TCP/IP、DCS与TCS之间的通讯协议、工业通讯 协议

abstract: This paper from a nuclear power turbine during debugging a turning operation automatic speed assignment failure trip event, introduced between the turbine control system TCS and DCS control system and speed assignment logic, between DCS and TCS communication protocol in detail, finally the automatic speed assignment fails to take the jump events the automatic assignment of logic and the communication between TCS and DCS measures in detail

Key words: Modbus TCP/IP, DCS and TCS communication protocol, industrial communication protocol

一、引言

1、引发的事情:某核电站3号机在调试阶段,执行汽轮机冲转操作,汽轮机由390转暖机转速往1515同期转速升转速的过程中,由于1515转速在DCS侧通讯赋值失败,导致汽轮机转速在升至470转时,触发临界区内升转速速率过低,从而导致冲转失败,引发跳机信号;

二、汽机TCS与DCS通讯原理介绍

1、DCS与TCS系统通讯原理介绍(Modbus TCP/IP通讯协议)

核电的DCS 采用的是广利核公司的MAC_S6控制系统。汽轮机发电机保护和控制系统TCS(简称TGC)采用的是西门子公司的SPPA-T2000控制系统。根据核电厂先进控制室的设计理念,在单元机组的中央控制室中,只放置DCS 的操作员站,而不单独放置其他系统等专用系统的操作员站。汽轮机发电机的正常操作与监视在DCS 的操作员站上集中进行。这就需要在DCS 与TCS之间进行可靠快速的信号交换。而且,在TCS 中产生的所有通讯信号的历史数据,需要在DCS 的操作员上方便的查询。要实现在DCS 中查询TCS 系统的历史数据, DCS 每次在接收到TCS送来数据时,除了在操作员站上显示,同时也将这些数据提交给DCS 本身的存档系统进行存档,操作员查询这部分信号的历史趋势时,数据统一由DCS 的存档系统提供。因此在DCS系统里随时可以查看TCS系统所有的历史报表和趋势,而且当查找大量数据时不会对DCS与TCS之间的通讯控制等产生任何影响。图一为DCS与TCS之间的通讯结构图:

图一 TCS与DCS之间的通信结构

目前电力行业使用的几种通用通讯协仪: Modbus RTU 、Modbus TCP/IP 、IEC60870、TCP/IP。核电DCS与TCS之间的使用了两种通信方式:一、在LEVEL1使用的是Modbus TCP/IP通讯协议;二、在LEVEL2使用的是TCP/IP的通讯协议。同一个信号通过LEVEL1,主要用于控制和画面显示作用;通过LEVEL2主要用于进入DCS报表日志和趋势使用。

核电中,TCS与DCS之间的通讯分为两层通讯,LEVE1和LEVEL2,LEVEL1的信号主要用于汽机的控制和DCS画面的显示,由于是用的Modbus TCP/IP通讯协议,因此它的时间标签并不是实时的,只是各自网关的时间;LEVEL2是基于TCP/IP协议,用于传输部分TCS的实时的信号标签,用于DCS日志和趋势显示。

在该通讯中,使用的Modbus TCP/IP类型码见表1。其中,第1 种类型的信号为TCS 端采集或计算产生的各种模拟量信号,在DCS 端,除了需要在操作员站上实时的指示汽机系统的值,而且还需要把他们的值在DCS 的历史服务器中存档,以便能查询历史事件顺序记录;第2 种类型的信号为开关量,其中包括TCS里的顺控的步序和各种开关的状态,只需在DCS 端操作员站上实时指示他们的值即可,比较重要的开关量需要实时存档的都通过LEVEL2 XU进行传送进入DCS进行存档;第3 种类型的信号为,在DCS 控制模式下,DCS 端发送给TGC 端的各种设定点值。注意,在每一个通讯初始化阶段或者在通讯故障后重新建立一个新的连接时,DCS 将传送这些信号到TGC;第4 种类型的信号为,在DCS 控制模式下,DCS 端发送给TCS 的各种开关量命令。

三、核电站汽轮机转速赋值简介:

核电厂3号机汽轮机控制系统在起机冲转过程中自动赋值过程原理加以介绍。

3.1同期转速自动赋值过程简介

核电厂汽轮机控制系统使用德国西门子T2000+PCS7控制系统,汽轮机冲转并网使用主机顺控3GPV0001KG实现一键启机。操纵员手动投入主机顺控冲转至390rpm转速暖机平台。充分暖机后操纵员手动释放同期转速,主机顺控执行至第25步,触发汽轮机同期转速1515rpm赋值信号,汽轮机转速设定值被设置为1515rpm,汽轮机向同期转速升速。

1)主机顺控自动赋值回路简介

汽轮机在暖机转速(390rpm)平台暖机完成后,通过主机顺控释放同期转速(1515rpm)。顺控指令将GRE控制器AP1内转速设定值NS设定为1515rpm,汽轮机开始升速。

同时GRE控制器会将转速跟踪信号(NSK)、转速设定值送至AP3中。TCS AP3侧通讯将转速设定值KM61及跟踪信号KS47送至DCS侧。当DCS侧收到转速跟踪指令KS47时, KM24= KM61并经通讯方式送回TCS侧。回路简图如下图2所示。

图2 汽轮机转速设定值赋值回路原理图

当主机顺控由DCS侧控制时,不考虑任何DCS与TCS之间通讯延时。赋值过程时序图如下图3所示。

图3 汽轮机转速设定值赋值理想时序图

即当操作员释放KG按钮进行赋值操作,TCS侧AP1转速设定值NS被赋值1515rpm。汽轮机向同期转速进行升速。同时TCS侧AP3内转速设定值在DCS侧KM61、KM24及TCS侧KM24均被赋值1515rpm。当TCS侧AP1同期转速赋值指令NSK经后延时5s保持结束至NSKNV手动赋值允许信号出现,NS均等于上一赋值1515rpm。当NSKNV手动赋值允许信号出现,NS继续跟踪VGNS手动设定转速设定值。

四、汽轮机转速赋值失败的原因分析:

(1)核电厂3号机自动赋值逻辑失败造成跳机信号触发原因

本次跳机时间,汽轮机从390rpm暖机转速升速至1515rpm过程中,转速设定值从TCS送至DCS,DCS接收后未成功返回TCS,导致转速设定值赋值不成功。工作人员后续出票对TCS与DCS之间通讯进行抓包分析,发现TCS系统的CM6A响应时间较慢,与通讯正常的CM6B相比较CM6A每条报文多增加了50毫秒的时间,因此其通讯周期时间高达3秒(CM6B的正常通讯时间为1.5秒左右)。

下面结合图5所示时序图对赋值失败原因进行分析介绍。

模拟量部分:如图4所示,当DCS侧发出KG赋值指令。

TCS侧:AP1转速设定值NS即被赋值1515rpm,汽轮机向同期转速进行升速。同时,该转速设定值赋值至TCS侧AP3转速设定值SP。

DCS侧:KM61跟踪TCS侧SP设定值变化,同时KM24与KM61同步变化。

开关量部分:当赋值指令发出,即触发TCS转速赋值指令NSK,该值经5s后延时保持后消失。同时,DCS侧经通讯接收XC38跟踪指令(经过通讯延时),DCS侧开始对TCS侧送出同期转速赋值1515rpm进行跟踪,并由KM61送至KM24(DCS侧内部约经过2s运算时间),KM24送回TCS侧(经DCS与TCS间约4s)通讯延时。

图4 汽轮机转速设定值赋值失败时序图

t1时刻触发自动赋值指令,AP1内转速控制器即被赋值1515rpm;

t3时刻NSK指令消失,AP3内设定值SP开始跟踪KM24(TCS侧),由于DCS侧KM61跟踪TCS侧SP存在延时,DCS侧KM24跟踪KM61内部运算存在时间差,且KM24跟踪值送回TCS侧同样存在延时,所以t3时刻TCS侧KM24仍为390rpm,TCS侧SP同样仍为390rpm设定值。

t4时刻NSKNV手动赋值允许信号出现,TCS侧AP3内转速设定值SP被赋值入AP1内转速控制器。该时刻由于TCS侧KM24经通讯延时后且未进入下一扫描周期还保持1515rpm设定值。AP1内转速控制器被赋值1515rpm。

t5时刻进入通讯下一扫描周期,DCS侧KM61跟踪TCS侧AP3内转速设定值SP值1515rpm。但由于该时刻DCS侧XC38信号已消失,DCS侧KM24失去对KM61跟踪。因此TCS侧KM24也不会出现变位,仍保持390rpm。在下一通讯扫描周期,390rpm转速设定值被赋值至AP3转速设定值SP。AP1内转速控制器内转速设定值NS被赋值为390rpm。

t5时刻约耗时为14-15s。按照300r/min升速率向上升速,汽轮机进入临界转速区450rpm-1425rpm转速范围。

西门子厂家提供的设计变更存在缺陷

核电厂2号机组调试期间,曾出现冲转过程转速设定值赋值不成功导致冲转失败的问题,西门子厂家针对此问题提供设计变更,该变更在2号机上验证虽无异常,但同时也存在跳机隐患。设计变更执行后,如果DCS-TCS存在通讯时间延时情况,不但转速设定值无法赋值,还将导致汽轮机转速进入临界区后冲转失败,进而触发跳机。

当汽轮机进入临界转速区(450rpm-1425rpm),由于NSKNV手动赋值允许信号存在10s前延时,在触发自动赋值信号后10s内NSKNV手动赋值允许信号为0,主控无法手动进行转速设定。

当转速设定值重新设定为390rpm,实际转速大于转速设定值。汽轮机调阀关闭,使汽轮机转速升速率<100.8rpm/min,最终触发临界转速区升速率低放弃冲转信号。该信号分两路作用于控制系统:逻辑回路简图见图5。

一路送至TAB控制回路,驱动所有的截止阀关闭,四路高缸截阀关闭触发跳机信号。

第二路产生NSNF跟踪信号,将转速设定值设定为当前转速-60rpm,使转速调节器的入口偏差恒定为负,导致转速控制器输出降低以致调阀全关,转速下降。

图5 汽轮机赋值失败跳机逻辑简图

TCS与DCS间通讯时间延时过长原因

DCS与TCS部分信号通讯功能码不一致。DCS发给TCS指令,在DCS侧使用的是功能码15,而TCS侧使用的功能码是5,导致两边的功能码不一致,(功能码5用于DCS向TCS发送指令,一条指令一条报文,并且没有发指令的时候,功能码5的报文不循环发送的;功能码15用于DCS向TCS发送指令,可以一条报文同时发送多个指令,并且不断的循环发送;), 因此由于DCS作为主站,使用使用功能15,导致每个通讯周期增加15功能码的数据包,从而使通讯时间变长,在通讯码不一致情况下信号处理流程如图6所示。

TCS的通讯网关CM104登陆与退出方式不正确,导致CM104对数据包处理时间过长,从而导致整个通讯时间变长,如图7所示

如果在这个模式方式下退出登陆的界面,则DCS与TCS之间的通讯时间是成倍的增加,使用wireshark软件抓包发现,在这种模式,最长的通讯时间从1.2秒突变成3秒钟左右,从而导致DCS与TCS之间通讯延迟发生。

五、分析结论

(1)直接原因

DCS至TCS转速自动赋值失败,汽轮机进入临界转速区触发升速率过低信号,汽轮机放弃冲转并触发跳机信号。

图6 DCS/TCS信号处理流程

图7

(2) 根本原因

西门子提供自动赋值逻辑存在缺陷,在出现赋值失败情况下汽轮机进入临界转速区会触发跳机信号。

(3) 促成因素

DCS与TCS间通讯时间延长,从而促成了机组跳机情况发生;

参考文献

[1]朱能飞.Teleperm XP 分散控制系统在大型电厂中的应用[J].电力自动化设备,1998,18(1):49-52.

[2]汪富强.IEC60870通信协议的使用.核电,2012(2).

[3]薛胜峰.核电厂内部运行事件报.

论文作者:蓝永辉,薛胜峰,徐长河

论文发表刊物:《电力设备》2019年第15期

论文发表时间:2019/12/9

标签:;  ;  ;  ;  ;  ;  ;  ;  

Modbus论文_蓝永辉,薛胜峰,徐长河
下载Doc文档

猜你喜欢