内容 | (广东电网公司物流中心,广东 广州 510630)
陈焕怡
(北京四方继保自动化股份有限公司,北京 100085)刘 炬
陈焕怡(1980-)女,广东南海人,输配电及用电工程工程师,工学学士,管理学硕士,现就职于广东电网公司物流中心,从事电力系统设备选型、采购、供应管理工作。
摘要:根据Modbus通信协议的特点以及继电保护装置中对通信可靠性的要求,提出了支持双通信网络、双主站的Modbus通信在继电保护装置中的应用。简介了Modbus通信协议,系统冗余和单元冗余的概念。给出了双网双主站的通信方案,说明了为支持冗余在主站和子站设计上应该注意的问题,定量分析了采用单元冗余、系统冗余混合冗余的方式为系统可靠性提高带来的影响。说明了Modbus协议传输继电保护装置信息的数据交换过程和应当注意的问题,如镜像数据区定义,TCP粘连包的问题等。
关键词:Modbus协议;冗余;主机冗余;网络冗余;继电保护;TCP/IP
Abstract: In this paper, according to the features of Modbus protocol and the reliability requirement of the relay communication, we propose a Modbus communication protocol which supports the working style of dual-networks,dual master. The Modbus protocol and the concept of system redundancy and unit redundancy are also introduced in this paper. The communication scheme supporting dual-networks, dual-master is described, and some remarks about how to design the master and slave of this scheme is also given. In addition, we quantitatively analyze the effect to system reliability of mixed redundancy of system redundancy and unit redundancy, and explain the information exchange procedure when Modbus is used in protection relays communication. Finally some tips are given such as mapping data, TCP conglutination packet.
Key words: Modbus protocol; Redundancy; Mainframe redundancy; Network redundancy; Protection relay; TCP/IP
1 引言
IEC61850标准和IEC60870-5-103通信协议在继电保护装置中已经广泛使用,但应用于电厂的继电保护装置由于经常要与各种自动化和控制系统通信,这些系统大多遵循工业自动化的Modbus通信标准,因此有必要对继电保护装置中的Modbus通信协议进行研究。
本文基于对继电保护装置通信可靠性的要求提出支持双冗余通信网络、双冗余主站的Modbus通信方案,并说明了在Modbus继电保护装置通信中应当注意的一些问题。
2 背景知识简介
2.1 Modbus通信协议简介
Modbus通信协议是由Modicon公司在1979年首次提出的,它是一个标准的、开放的、在工业自动化领域应用广泛的网络通信协议,很多工业自动化领域的设备和软件都支持Modbus协议。
中华人民共和国国家质量监督检验检疫总局和中国国家标准化管理委员会已于2004年9月发布了三个标准化指导性技术文件,于2008年2月对此作了修订并作为国家标准发布,标准号为GB/T19582.1/2/3-2008[1-3]。
2.2 冗余技术简介
冗余,IEEE可靠性协会的定义是“在需要时运行并完成指定功能的备用措施”。
IEEE安全系统标准委员会将冗余系统定义为“一设备或者系统与另一设备或者系统的基本功能完全相同,他们不管其中一个是运行还是故障,另一个都可以执行要求的功能”。
按照冗余应用的范围可分为系统冗余和单元冗余,系统冗余是指以完成某个功能的系统整体作冗余,而单元冗余是指以组成系统的单元作冗余。图1为系统冗余和单元冗余的可靠度分析的示意图,从图中不难定性地分析出:单元冗余要比系统冗余的可靠度高,但单元冗余要比系统冗余实现的软硬件成本高。

3 双通信网络、双主站支持的Modbus通信方案
3.1 系统通信方案
Modbus通信一般是单通信网络、单主站,但是在可靠性要求比较高的场合如变电站自动化系统中尤其是测量保护一体化装置中,单网络单主站不能满足可靠性的要求,通过采用冗余技术,配置双冗余的通信网络,双冗余的主站系统确保系统的可靠性。
图2为双网络双主站的Modbus通信方案示意图,网1和网2为由2台Modbus主站和多台子站组成的双总线型通信网络,可以是RS485网络,也可以是工业以太网;主站A和主站B均可实现与各个子站的通信。由于Modbus标准中没有定义在双网络双主站中的应用,因此主站和子站在支持双网络双主站的同时必须兼容单网络单主站的情况。

图2 双网络双主站的Modbus通信方案示意图
3.2 双主站的支持
由于Modbus通信是问答式的通信方式,同时只能有1个主站,因此必须在双主站之间通过竞争选择一个工作主站,另外1个为备用主站。当工作主站失效时备用主站接管工作主站的工作。只有工作主站和各个子站通信,并和其上一级的设备如人机交互接口(HMI)或者远方控制中心(RCC)等进行数据交互。当工作主站异常时主动或者由备用主站选择切换工作主站。
备用主站检测当前网络上是否有工作主站,判断的途径有:
(1)可在双主站之间建立单独的“握手”通道交换双主站之间竞争和选择信息。
(2)对于RS485网络,可以从网络上“侦听”是否有合法的问讯数据发送。
(3)对于以太网TCP/IP网络,可在网络上采用未用的端口号交换双主站之间竞争和选择信息。也可采用和串口一样“侦听”的方法,但需要交换机支持端口镜像功能,软硬件要求都比较高。
为了防止主站之间的“握手”通道故障时由于双主站均认为自己是工作主站,出现2个主站同时发送问讯数据的情况而产生冲突,“握手”通道应该采用2个途径,如单独“握手”通道和“侦听”通道同时使用。
3.3 双网络的选择
双网通信有平衡模式和非平衡模式。平衡模式下在主子站之间建立2个完全独立的通信过程和交互数据库,最终由主站选择其中1套数据入库,此时子站需要通过不同的物理支持不同的主站即可。在非平衡模式下,主站和子站之间同时只建立一个通信过程和交互数据库,当这个通信过程失败时再通过另外的网络建立另外一个通信过程,这种情况下需要子站支持通过不同的通信口连接相同的主站,访问同一个数据库。由于后者占用的资源少建议采用后者。
3.4 系统通信可靠性分析
根据本文2.2节关于系统冗余和单元冗余概念的定义,将子站网络、主站网络、主站装置看作整个系统的多个单元,根据双总线网络结构的特点,我们按照单元冗余和系统冗余的混合冗余模式设计整个系统,如图3所示,n台子站的网络分别为A、B、……H,主站网络为I,主站装置为J,其物理意义是:双网中至少有1个网络中的所有节点都是可用的,双主站至少有1个是可用的。

定量分析如下:若子站单装置网络故障率为α,主站装置网络故障率为β,主站单装置的故障率为γ,则在没有网络和主站冗余情况下系统的可用率为:
ρ0 =(1-α)n×(1-β) ×(1-γ)
而在网络和主站都按照双冗余设计的情况下系统的可用率为:
ρ1 ={1-[1-(1-α)n×(1-β)]2} ×(1-γ2)
为了定量地分析冗余对系统可靠性带来的效果,表1给出了在n=8,α、β、γ在不同值的情况下ρ0、ρ1的比较,从表1可以看出增加双网双主站冗余后系统的可用率大大提高,系统的可靠性大大增强.

4 Modbus协议应用于继电保护装置应当注意的问题
通信协议的实现主要有两部分工作:报文解释和通信过程定义。Modbus协议为通用的工业系统设计,是典型的一问一答式的通信协议,每一次问答过程均完成一次完整的数据交换过程,而继电保护装置中根据电力系统的运行习惯和规范往往数据交换过程比较复杂,因此在保护装置中实现Modbus协议除了将继电保护装置中的各种信息与Modbus作映射外更主要的工作是定义各种信息数据交换的过程。
4.1 继电保护装置中各类信息在Modbus协议中的表示方式
表2为继电保护装置中各类信息采用的功能码列表,以下对各种信息的定义和传输过程作详细说明。

4.1.1 遥信量
遥信量包括开关刀闸位置信号、保护动作、保护告警、保护内部状态、保护自检、开关量输入状态等信息,这些信息中可分为实际输入信号和由装置内部通过逻辑运算产生的信号。其中实际的输入信号按照Modbus协议中的离散输入量定义,只读;装置内部产生的信号按照Modbus中的线圈定义,是可读可写的,但是否允许通过通信方式来写要根据其物理含义来决定。若遥信量需要品质则需要扩展品质线圈来表示,实际输入信号使用02功能码来读,内部信号使用01功能码来读。
4.1.2 遥测量
遥测量包括装置实际采集的信号和装置内部计算量,由于继电保护装置都采用交流采样,遥测量几乎全部都是计算出来的,因此遥测量按照寄存器定义。一般为整型数,可以是规一化值、标度化值,也可采用浮点数来处理,用两个寄存器(4字节)表示一个遥测量数据。若遥测量需要品质信息则需要对表示遥测量的寄存器进行扩展,增加品质寄存器,遥测量使用03功能码来读。
4.1.3 队列信息
队列信息包括SOE、事件、带时标的测量等信息,这些信息为不可覆盖的信息,传输过程应该保证这些信息不被丢失,主站读取之后要有确认过程,主站确认后子站才从队列中删除这些信息。
队列信息的处理采用如下过程:
(1)主站发03命令读取子站的状态或者指针信息判断队列中是否有数据;
(2)若队列中有数据则主站发03命令读取响应的寄存器区;
(3)主站正确收到队列信息后发06/16命令写状态区或者指针进行确认,子站从队列中删除已上传信息。
4.1.4 电度信息
电度信息的访问有冻结、读取、解冻、预置等功能。冻结、解冻采用06功能码写1特定的寄存器,读取采用03功能码,预置采用16功能码。读取的信息为已经冻结的数据,而预置为正在累积的数据,所以读取和预置应采用不同的寄存器地址。
4.1.5 定值的访问
定值的访问包括读取、下装、固化、切换等功能。由于定值读取时要指定定值区号,采用23功能码,写入读取的定值区号,读取定值数据区。下装定值采用16功能码,写入要下装的定值区号及定值数据,所以定值区号寄存器和定值数据寄存器应连续配置。固化和切换按设定过程,参见4.1.7节描述。
4.1.6 遥控
遥控对象包括一次设备(开关、刀闸)和二次设备(软压板等),电力系统中一般是手动遥控操作,为了防止误操作遥控采用“选择—执行”的过程。在Modbus协议中一个控制对象定义两个线圈,分别对应选择和执行操作。
复归是一类特殊的遥控,不需要选择,用写线圈实现。
遥控采用05功能码来实现。
4.1.7 设定
设定的对象包括远方调节的信息,如AGC中发电机的出力等,定值的切换固化等也可以用设定过程来实现。设定采用“选择—执行”过程,一个设定对象定义两个寄存器,分别对应选择和执行操作。设定采用06或者16功能码实现。
4.1.8 时钟信息
用连续的几个寄存器表示时间,通过功能码03和16来访问。
4.1.9 装置ID
通过17功能码访问。
4.1.10 录波
录波数据按照标准COMTRADE文件格式存储,Modbus协议提供了读取指定文件号的文件的功能码20/06。为了实现完整的文件传输过程,需要定义录波文件列表上送和删除机制,通过03功能码由子站向主站上送录波文件列表,由主站通过20/06功能码选择读取列表中的录波文件,之后通过16功能码确认读取的文件。子站再通过03功能码继续上送新的录波列表,再由主站读取……
4.2 其他需要说明的问题
本节列出Modbus协议应用于继电保护装置中需要特殊注意和说明的问题。
4.2.1 利用数据镜像功能提高通信效率
由于Modbus通信完全由主站来控制,如果子站端的信息定义比较分散会使得无用的数据占用大量带宽或者增加通信问讯的次数导致通信效率降低,为了提高通信效率,定义镜像数据区,将分散的数据集中到一段连续的数据区,可减少问讯次数,通过定义镜像地址区的内容来定义镜像数据,镜像区包括镜像地址区和镜像数据区,镜像数据区的内容是由镜像地址区来定义,如将8800H、4002H、4003H写入镜像地址区,则相应的镜像数据区的内容即为8800H、4002H、4003H的信息。
4.2.2 系统状态数据区
将系统的一些标志如SOE标志、SOE溢出标志、初始化标志等放在集中的系统状态数据区,并定义到镜像数据区,在问讯遥信、遥测时同时读取这个数据区,当有相应的标志时如SOE标志时再去读取相应的数据,这样可以提高通信效率。
4.2.3 初始化命令
定义01命令码的系统初始化命令,只有主站发送初始化命令之后,子站的SOE、事件等才开始放入系统的队列,这样才能保证将合适的信息上送主站。
4.2.4 TCP模式下粘连包问题
在Modbus/TCP模式下,由于TCP是一个面向字节流的协议,“粘连包”的问题在理论上是不可避免的,粘连包处理模块能够处理从Socket获得的数据是多包、半包、多包加半包等各种情况。否则会将正常合法的数据丢弃导致通信问题。
4.2.5 避免同一服务长时间占用带宽
由于Modbus协议由主站控制通信的数据流,当有长时间占用带宽的服务时,为了防止在处理大数据量的信息时(如故障录波数据、定值数据)占用实时性要求比较高的数据(如遥信、遥测)的带宽,主站应该主动释放部分带宽,去问讯其他数据,而子站也应该在保证数据访问完整性的情况下支持这些数据区的间断性访问,如在问讯录波过程中插入问讯遥信遥测过程。
5 结束语
在简介Modbus协议和冗余技术的基础上,给出了支持双网双主站的Modbus协议在继电保护装置中的通信方案,定量分析了方案的可靠性,说明了Modbus应用于继电保护装置中应注意的问题。目前该方案已在继电保护装置的设计中采用并应用于实际工程中,效果良好。
其他作者:刘炬(1970-),男,河北乐亭人,工学硕士,现就职于北京四方继保自动化股份有限公司,从事变电站自动化系统研究工作。
参考文献:
[1] GB T 19582.1-2008,基于Modbus协议的工业自动化网络规范,第1部分: Modbus应用协议[S].
[2] GB T 19582.2-2008,基于Modbus协议的工业自动化网络规范,第2部分: Modbus协议在串行链路上的实现指南[S].
[3] GB T 19582.3-2008,基于Modbus协议的工业自动化网络规范,第3部分: Modbus协议在TCP/IP上的实现指南[S].
[4] 贺春,任春梅,张冉. Modbus协议在电动机保护装置中的应用[J]. 继电器,2006,34(12): 73-76.
[5] 姚致清. 通信规约实现与系统可靠性、安全性[J]. 继电器,2008,36(6):68-70.
[6] 刘炬,郑蔚,刘晓明. 冗余技术在厂站端自动化系统中的典型应用[J].继电器,2007,35(10): 45-47,51.
摘自《自动化博览》2010年第五期 |