内蒙古电力技术  2014, Vol. 32 Issue (01): 72-75   PDF    
基于Modbus协议的Ovation系统远程操作设计与改造
郭伯春    
四川广安发电有限责任公司,四川广安638000
摘要:四川广安发电有限责任公司机组Ovation系统对定排程控系统执行远程操作时,出 现了阀门误动、PLC程控异常等现象,未能实现远程操作功能。分别从Modbus协议地址匹 配、LC卡配置和Ovaion系统逻辑组态3个方面,介绍了Ovation系统通过Modbus协议实现远 程操作的设计方案,说明了Ovation系统基于Modbus协议,通过LC卡实现对第3方系统远程 操作的改造方法。
关键词Ovation系统     Modubs协议     程控系统     第3方系统     远程操作    
Design and Implementation of Ovation System Communication Operation Based on Modbus Protocol
Guo Bochun    
Sichuan Guang′an Power Co.,Ltd.,Sichuan Guang′an 638000
Abstract:Taking communication reform of the periodic blowdown program control system in Sichuan Guang’an Power Co.,Ltd. as an example, introduced the Ovation system communication system performation process on the third-party system, using the Modbus protocol through the link controller module. Explained the Ovation system implementation scheme of remote operation based on the description of the Modbus protocol in Ovation system, to realize the transformation method of remote operation of the third-party systems by the link controller module.
Key words: Ovation sysytem     Modbus protocol     programmed control system     third-party system     remote operation    
0 引言

当前国内大型火电机组DCS中,Ovation系统与 第3方系统通信应用较广的主要有LC卡、OPC及以 太网交换机等方式[1]。在与PLC、智能仪表等设备进 行通信时,通常采用基于Modbus协议的LC卡,通过 RS485接口连接。由于各种第3方系统的配置和编 程差异较大,加之部分DCS工程师对第3方系统及 其接口了解不深等原因,导致Ovation系统与第3方 系统在执行通信操作时,常发生通信地址错误、指 令重复发送、操作结果紊乱等现象[2]。本文拟以四 川广安发电有限责任公司(以下简称为广安公司) 定排程控系统远程操作改造为例,分别从Modbus协 议地址匹配、LC卡配置和Ovaion系统逻辑组态等几 个方面,说明基于Modbus协议实现Ovation系统远 程操作的设计和实现方法。

1 定排程控系统存在的问题 1.1 定排程控系统概况

广安公司定排程控系统采用施耐德Premium TSX 57203 PLC和装有组态王的上位机实现就地 监控。PLC和上位机设置在电子设备间,PLC基于 Modbus RTU协议实现3号从站与Ovation系统LC 卡主站之间的通信。

1.2 存在的问题

当Ovation系统对定排程控系统执行远程操作 时,出现了阀门误动、PLC程控异常等故障现象,导 致机组投产时仍未能实现远程操作功能。后来虽 然采用了DCS数字量卡件输出至PLC硬回路的方 式实现了通信功能,但增加了许多DCS和PLC卡件 以及连接电缆,对于定排程控系统较为复杂的操作 过程,仍需在电子设备间内的上位机上完成,定排 程控系统的操作非常不便。通过分析远程操作异 常现象和原因,决定对定排程控系统进行改造和优 化,以实现DCS画面对定排程控系统的远程操作功 能。

2 Modbus协议地址匹配 2.1 第3方系统Modbus协议地址

进行Ovation系统与第3方系统基于Modbus协 议的通信设计时,需要明确第3方系统通信数据区 与Modbus协议地址的对应关系,通信地址需正确无 误,否则会造成数据通信结果混乱,不能读写预期 的数值或状态等问题。由于PLC的品牌和型号不 同,广安公司定排程控系统中Ovation系统与PLC通 信时,其数据区与Modbus协议地址的对应关系不尽 相同。例如,施耐德Premium 系列PLC 数据区与 Modbus 协议地址对应关系如表 1,而Siemens S7-200系列的PLC地址与Modbus协议地址对应关 系则如表 2所示。

表 1 施耐德Premium系列PLC数据区与Modbus协议地址对应关系

表 2 Siemens S7-200系列PLC数据区与Modbus协议地址对应关系

比较表 1表 2可以看出,相同的Modbus协议 地址对应的第3方系统的数据区不尽相同。因此, Ovation系统LC卡在与第3方系统进行通信时,必须 十分熟悉第3方系统,只有明确通信数据区与Modbus协议地址的对应关系,才能保证通信数据的正 确性。

2.2 数据类型的转换

Ovation系统与第3方系统通信配置中,因不同 数据类型的通信配置不相同,配置情况较为复杂, 会影响Modbus协议通信时间。因此,在第3方系统 中,可使用编程等手段把某数据类型转换成其他数 据类型以简化通信配置,缩短通信时间。如广安公 司Ovation系统与定排程控系统通信进行配置时,针 对表 1中的4种数据类型,PLC编程时可把前3种数 据类型全部转换为Holding Registers数据类型,仅 使用“4xxxx”这1种Modbus协议地址就能满足通信 配置需求。实现方法为在PLC 编程时用“% MWxxxx”与其他数据区进行数值转换。例如,通信 读取定排程控系统PLC 中10V 阀门失电报警“% I6.15”,在PLC编程时把“%I6.15”的数值赋值给“% MW26:X15”,Ovation 系统与PLC 通信时直接访问 “%MW26”,从得到的16位数值中取其第15位,即 可得到定排程控系统中10V阀门失电报警的状态值。

3 LC卡的配置 3.1 通信处理方式的选择 3.1.1 问题分析

进行Ovation系统与第3方系统通信设计时,需 要配置LC 卡通信端口参数、OIOB(Ovation I/O Bus)双端口存储器的寄存器序号(以下简称LC卡地 址)与Modbus协议地址映射列表文件。在LC卡配 置文件中,LC卡地址与第3方系统数据区通信处理 方式通常采用周期性的数据传送方式(即轮询方 式)[3]。DCS通过通信来操作第3方系统时,由于采 用轮询方式,发送的每条操作指令将被多次传送给 第3方系统,既占用了通信带宽,又给第3方系统重 复理解和处理同1条操作指令带来困难,甚至会引 起响应紊乱。

3.1.2 解决办法

为了解决通信操作指令被周期性传送的问题, 经查阅Ovation系统LC卡相关手册,通过试验验证, 可以在LC卡的配置文件中采用触发的处理方式来 实现,确保DCS发出的操作指令通过LC卡仅执行1 次指令发送操作[1]。解决办法为:轮询过程中,触发 组内不执行通信,只检测触发点(即触发地址内数 据),触发点变化时才执行组内通信。例如在DCS 画面上实现“定排程控系统DCS控制与上位机控制 切换”操作,在LC卡配置文件中编写如下代码:

……

/GROUP: name =“DCS/Locally”,(实现DCS控 制与上位机控制切换)

number = 10,

operation = TRIGGER,(触发的操作方式)

trigger=D0231,(触发点D0231)

groupstatus=D2000,(组数据通信成功,D2000 置1)

D0145,PMR,3,0009.00(把数字量D0145 的 值写入PLC的“%MW9.0”)

……

从以上代码可以看出,为实现通信操作采用了 触发的通信处理方式。LC卡与定排程控系统通信 过程中,仅当检测到D0231为1时,才执行序号为10 的组内语句通信,通信成功时D2000自动置1,从而 实现DCS通过LC卡向PLC发送“定排程控系统DCS 控制与上位机控制切换”操作指令1次。

3.2 选择通信数据类型时的注意事项

Ovation系统LC卡配置文件中,在创建LC卡地 址与Modbus协议地址映射列表时,应注意通信数据 类型的选择和设定,避免通信双方数据类型不一致 带来的影响。如DCS对定排程控系统31号阀阀门 执行跳步操作时,Ovation系统需对定排程控系统 PLC中的“%MW33”的第16位置位,在LC配置文件 中采用Modbus的06号功能码,对Modbus协议地址 40033通信写入数值(此数值的数据类型应与PLC 中的“%MW33”数据类型一致)。因此,Modbus数据 类型应设定为16位整数类型(即int16),如果设定为 无符号整数类型(即uint16),在Modbus通信报文生 成前,数据将从int16转换成uint16,当数值为负时 (即最高位为1),转换结果数值为0,通信操作结果 会与预期目标不一致。如果数据类型设定错误,远 程操作不但不能实现16号阀阀门跳步操作,还会影 响其他阀门的状态[4]

4 Ovation系统逻辑组态 4.1 通信操作逻辑的实现 4.1.1 实现方法

Ovation系统如果基于Modbus的06或16号功 能码执行对第3方系统的通信操作,会对第3方系 统数据区相应地址写入至少16位数值,由于第3方 系统可能对16位数值的每个位定义了不同的操作 或状态,这将引起第3方系统的操作或状态发生紊 乱。因此,在进行远程操作逻辑设计时,应先获取 第3方系统数据区相应地址的16位数值,远程操作 时只改变16位数值中的某些位,其余位保持不变。

4.1.2 实例

以定排程控系统阀门的打开操作为例,PLC编 程设计中采用“%MW33”的16 位分别表示10—31 号共16台阀门的跳步状态。执行某个阀门的跳步 状态操作时,DCS 发送Modbus 通信报文把“% MW33”的16位中某对应位置1,由于基于Modbus的 06号功能码写入的是16位数值,除对某位置1外, 其他15位全部置0。为了克服通信数据为16位数 值带来的影响,DCS逻辑组态时可先通信读取PLC 中“%MW33”的数值到打包点“ITMT-097-LP”中;在 对某个阀门执行跳步操作时,只改变打包点“ITMT-129-LP”中某位的值,其余位的值直接从打包 点“ITMT-097-LP”中取得,由LC 卡把打包点“ITMT-129-LP”的值发送到PLC中“%MW33”;实现对某个阀门执行跳步操作时,只改变此阀门的跳步状 态,其余阀门跳步状态保持不变。DCS组态逻辑如 图 1所示。

图 1 DCS逻辑实现10号阀阀门跳步通信操作逻辑
4.2 脉冲指令逻辑的实现 4.2.1 问题分析

第3方系统控制逻辑设计中,电机启停、开关分 合、阀门开关等操作指令通常采用脉冲型指令,设 备控制回路接收到操作指令后,由自保持及状态回 路完成操作[5]。基于Modbus协议通信执行操作指令 数据传输时,第3方系统接收Ovation系统发出的脉 冲型指令数据后会保持。对于第3方系统来说,接 收到的是常1指令,由于发送和接收的操作指令类 型不一致,这将导致第3方系统执行混乱。

4.2.2 解决办法

为了解决此问题,在进行DCS逻辑组态时,搭 建每条操作指令发出2次触发通信逻辑,即第1次 触发通信向第3方系统相关数据区地址置位,第2 次触发通信向第3方系统该地址复位,以达到第3 方系统接收到脉冲型指令、保证第3方系统正常运 行的效果。以DCS画面对10号阀阀门开操作为例, 其Ovation系统中逻辑组态如图 2所示。

图 2 DCS逻辑实现10号阀阀门开操作为脉冲型指令逻辑
5 结语

通过改造,在未变动原有硬件设备的情况下, 广安公司定排程控系统实现了DCS和上位机2种监 控方式(上位机作为后备监控,也可取消上位机仅 采用DCS监控的方式),基于Modbus协议通信操作 灵活方便,安全可靠。

Ovation系统基于Modbus协议实现对第3方系 统远程操作时,需要从Modbus协议地址匹配、LC卡 配置和Ovaion系统逻辑组态设计等方面入手,全面 分析和解决远程操作中出现的各种问题。在工程 实践中,还可结合采用LC卡冗余配置、通信设备状 态检测、通信组状态检测、远程操作结果回读等多 种方式,进一步提高Ovation系统与第3方系统通信 的可靠性和安全性。

参考文献
[1] Emerson Process Management Co.,Ltd. Ovation LCModule Interface User Guide[R].[S.l.]:Emerson Process Management Co.,Ltd.,2004.
[2] 朱亚清.新华XDPS DCS与Ovation DEH通信的实现[J].中国电力,2008,41(11):58-61.
[3] 郭伯春.Ovation DCS 系统接入GPS 时钟同步应用分析[J].内蒙古电力技术,2012,30(1):57-60.
[4] 朱北恒.火电厂热工自动化系统试验[M].北京:中国电力出版社,2005:42-45.
[5] 陶亚雄.数字通信原理与技术[M].北京:电子工业出版社,2006:8-14.