臧 峰 徐卫峰 吴 波 牛洪海
(南京南瑞继保电气有限公司,江苏 南京 211102)
GOOSE协议分析及其在工业过程控制中的应用
臧峰徐卫峰吴波牛洪海
(南京南瑞继保电气有限公司,江苏 南京211102)
摘要:面向通用对象的变电站事件(GOOSE)是IEC 61850规约的一个崭新应用,其采用点对点(P2P)通信模式。P2P模式消除了主/从通信方式和串行通信方式存在的缺陷,可以快速、可靠地传输数据。对GOOSE通信协议进行了分析,并使用GOOSE协议开发了一种工业过程控制器。该控制器取得了良好的应用效果。
关键词:面向通用对象的变电站事件(GOOSE)IEC 61850P2P通信协议数据传输数字化工业过程控制器变电站
IndustrialprocesscontrollerSubstation
0引言
面向通用对象的变电站事件(genericobjectorientedsubstationevent,GOOSE)是IEC61850系列标准中定义的一种通用变电站事件模型[1]。GOOSE在符合IEC61850的数字化变电站中得到了广泛的应用。目前基于GOOSE协议的分布式母线保护、分布式备自投和分布式低周减载等功能已经在工程中应用,并投入商业运行[2]。文献[3]设计了一种计算机数字控制器(computernumericalcontroller,CNC),实现了一主多从、主从问答的控制,但是这种控制无法实现突发数据的上送,如果有突发数据只能等待主机轮询才能上送。文献[4]提出了一种基于ControlNet的控制器,但ControlNet的最大有效报文长度不能超过510B[5]。文献[6]提出了一种基于DeviceNet控制器,但是由于DeviceNet采用短帧结构,不适用于大量数据传输。因此,本文设计了一种基于GOOSE协议的控制器,GOOSE协议支持突发报文上送,并且最大有效上送数据可达1 518B,弥补了文献[3]~文献[6]提出的控制器缺陷。
1系统总体方案
本文设计的工业过程控制器采用主备冗余的方案,I/O单元采用A/B网冗余方案。主备控制器通过I/OA/B冗余网络与I/O站进行通信,但仅主控制器通过A/B网对I/O站发送控制命令,备控制器通过A/B网络与I/O站发送心跳数据,以判断链路的通断。当备控制器升级为主控制器后,原主控制器不再发送控制报文,由新升级的主控制器来发送。
主控制器的A/B网络同时向I/O站发送心跳报文,I/O站接收到报文后需要判断是A网心跳还是B网心跳,然后分别进行心跳回应。主控制器的A/B网络同时向I/O站发送GOOSE控制报文,I/O站接收到控制报文后需要判断是否执行此报文。
系统结构如图1所示。
2GOOSE报文机制
2.1GOOSE报文介绍
IEC61850-7-2标准定义的GOOSE服务模型可快速输入、输出数据,并采用一种特殊的重传机制,以保证传输数据的可靠性和实时性[7-9]。GOOSE是一种实时应用,为保证GOOSE报文传输的可靠性与实时性,IEC61850规定GOOSE通信协议栈如图2所示[9]。
图1 系统结构图
图2 GOOSE通信协议栈
GOOSE通信协议栈具有以下特点。
①GOOSE通信协议只使用了国际标准化组织开放系统互联(ISO/OSI)中的4层,可以显著提高数据传输的可靠性,并有效降低传输延迟。
②GOOSE协议在数据链路层采用IEEE802.1Q协议,保证了报文的优先传输,而且提高了GOOSE网络的安全性。
③GOOSE通信协议以点对点(peer-to-peer,P2P)通信为基础,有效降低了设备的维护成本。
④GOOSE应用层协议中包含了数据的有效性检测和GOOSE报文的丢失和重发机制,保证了报文的可靠传输。
⑤GOOSE采用以太网双绞线或光纤传输,传输速率可达到100MB/1 000MB,完全满足工业过程控制器对数据传输速率的要求。
2.2ASN.1编码
GOOSE传输协议在表示层使用ASN.1的BER规则编码,省略了传输层和网络层,可直接在链路层上收发数据,从而最大限度地节省了协议处理时间[2]。BER编码规则采用T-L-V格式进行编码。其中,T表示标签,L表示长度,V表示数据。数据V也可以是T-L-V组合[10]。具体格式如图3所示。
图3 T-L-V格式
根据BER的编码规则,数据的长度与其数值的大小相关。由GOOSE报文发送的相同数据,会由于其数值的变化而导致每帧报文的长度发生变化。相应地,在数据解码的时候也需要根据数据长度进行判断。因此,在编码时,由于事先不知道数据字节的长度,导致长度字节也不能确定。所以在本文设计通信协议编码时,需采用倒叙的方式,从后往前进行编码。
3软件设计
3.1GOOSE报文发送机制设计
本文设计的GOOSE通信协议采用单个板卡作为一个数据集进行数据传输,即控制器下发控制指令和板卡上送采集数据时,都是以整块板卡的数据作为一个通信单元。GOOSE通信采用订阅/发布式机制,不同于请求/响应式机制,这样设计的出发点是基于传输速率和网络资源的考虑[11]。为了防止网络负荷过重而造成GOOSE报文的丢失,采用GOOSE报文重发的机制,以保证数据传输的可靠性。在GOOSE报文传输时,采用0ms、1ms、2ms、4ms、8ms的间隔连续发送5次。如果此变量在接下来的时间内没有变化,再以5s为间隔,周期性地发送数据;如果有变化,重新以0ms、1ms、2ms、4ms、8ms的间隔发送。在GOOSE报文中,StateNumber序号代表传输数据的更新,SequenceNumber代表相同报文的重传次数[12],报文发送流程图如图4所示。
图4 GOOSE双网冗余发送流程图
3.2GOOSE报文接收机制设计
由于本文设计的工业过程控制器与I/O单元之间是通过A/B双网进行通信的,所以当控制器或I/O单元接收到数据后,必须判断是A网接收的数据还是B网接收的数据,并且需要判断此数据是否重复接收。基于上述要求,本文对GOOSE协议的保留字段(Reserved1)进行了修改,代表发送报文的序号。当控制器或I/O单元接收到GOOSE报文后,把这个字段数据与本地保存的数据进行比较,如果接收数据不等于本地数据就进行数据更新,否则就代表是重复接收。根据GOOSE报文的发送机制可知,GOOSE采用了重传机制防止报文丢失。因此,又利用StateNumber和SequenceNumber,对接收数据进行二重校验。GOOSE报文的接收流程如图5所示。
图5 GOOSE双网冗余接收流程图
4性能分析
4.1实时性分析
IEC61850标准定义了报文传输延时,其定义如图6所示。图6中:Ta为报文发送延时,Tb为网络传输延时,Tc为报文接收延时[12-13]。
图6 传输时间定义示意图
报文的发送延时和接收延时与通信处理器的处理能力相关,本文不作讨论。
网络传输延时由以下5部分组成。
①交换机存储转发延时Ts f。
现在的交换机都是基于存储转发原理实现的,因此一台交换机的存储转发延时等于转发报文长度除以传输速率。以100MB的交换机为例,传输最大GOOSE报文1 518B所需要的交换机存储转发延时为122μs。
②交换机的交换延时Tsw。
交换机的交换延时取决于交换机芯片的处理能力,一般工业级100MB以太网交换机的交换延时不超过10μs。
③光缆传输延时Twl。
光缆的传输延时和光缆的长度有关,一般以光缆长度除以光缆光速(约为光速的2/3)作为光缆传输延时。以1km光缆为例,其传输延时约为5μs。
④交换机报文排队延时Tq。
交换机报文传输发生冲突时,采用先进先出的队列方式进行传输。分别考虑最不利的情况和最优情况下的报文传输延时。在最不利的情况下,当前报文需要等待交换机其他网口全部发送完数据后才能发送数据,即延时时间为(K-1)×Tsf,其中K代表交换机网口数量。最优情况不需要等待,立即发送,即等待时间为0。平均等待时间(K-1)×Tsf/2 。
经分析,通过一台24口交换机时的总延时为:
Tb=Tsf+Tsw+Twl+Tq=
122+10+5+(24-1)×122/2=
1 540 μs=1.54 ms
文献[14]通过网络实测,得出GOOSE报文的最大延时是1.5 ms,最小延时是0.9 ms,平均延时是1.17 ms,与本文理论分析吻合。
4.2可靠性分析
本文设计的控制器采用双网冗余的方式实现数据的传输,即使控制器与I/O单元之间有一条网络通信中断,仍能够正常工作。GOOSE双网是同时工作而非主备工作,这就减少了网络切换带来的时间差。
5结束语
采用基于GOOSE协议的工业过程控制器,能够快速、可靠地实现数据传输,极大地提高了控制系统的稳
定性与可靠性。GOOSE协议在电力系统继电保护中已经得到广泛的应用,但是在工业过程控制中还没有先例。本文设计的工业过程控制系统在实际应用中性能优良,能够可靠地实现控制指令的下发和采集数据的上传。
参考文献
[1] DL/T 860.72-2004 第7-2部分:变电站和馈线设备的基本通信结构抽象通信服务接口(ACSI)[S].
[2] 宋丽君,王若醒,狄军峰,等.GOOSE机制分析、实现及其在数字化变电站中的应用[J].电力系统保护与控制,2009,37(14):31-34.
[3] 王志成,于东,张晓辉,等.数控系统现场总线可靠通信机制的研究[J].机械工程学报,2011,47(3):152-158.
[4] 朱俊,汪晋宽,安翠娟,等.基于冗余ControlNet的EntherNet/IP网络分析[J].仪器仪表学报,2006,27(6):698-700.
[5] 方晓柯,王建辉,钱晓龙,等.ControlNet现场总线MAC层控制方法分析[J].控制与决策,2004,19(9):1054-1056.
[6] 方晓柯,徐林,王建辉,等.DeviceNet现场总线特点分析及节点电路设计[J].仪器仪表学报,2005,26(11):1174-1177.
[7] 朱炳铨,王松,李慧,等.基于IEC 61850 GOOSE技术的继电保护工程应用[J].电力系统自动化,2009,33(8):104-107.
[8] 殷万良,刘万顺,杨奇逊.基于IEC 61850的通用变电站事件模型[J].电力系统自动化,2005,29(19):45-50.
[9] 范建忠,马千里.GOOSE通信与应用[J].电力系统自动化,2007,31(19):85-90.
[10]郑伟光,万宇涛,王薇.基于BER的ASN.1语法编译器及编解码实现与应用[J].计算机应用与软件,2011,28(2):195-198.
[11]徐成斌,孙一民.数字化变电站过程层GOOSE通信方案[J].电力系统自动化,2007,31(19):91-94.
[12]傅旭华,黄晓明,王松,等.数字化变电站GOOSE技术工程化应用[J].电力自动化设备,2011,31(11):112-115.
[13]王松,陆承宇.数字化变电站继电保护的GOOSE网络方案[J].电力系统自动化,2009,33(3):51-54.
[14]郑新才,周鑫,王素华,等.数字化变电站的GOOSE网络测试[J].电力系统保护与控制,2009,37(24):85-89.
GOOSEProtocolAnalysisandApplicationinIndustrialProcessControl
Abstract:As an innovative application of IEC61850 standard, generic object oriented substation event (GOOSE) adopts the communication mode of peer-to-peer(P2P).P2P mode eliminates the defects in the master / slave communication mode and the serial communication mode, which can transfer data quickly and reliably.The GOOSE communication protocol is analyzed, and a kind of industrial process controller is developed using GOOSE protocol, which achieves good application effect.
Keywords:Generic object oriented substation event(GOOSE)IEC 61850P2PCommunication protocolData transmissionDigitization
中图分类号:TH701;TP368
文献标志码:A
DOI:10.16086/j.cnki.issn 1000-0380.201606013
修改稿收到日期:2015-09-01。
第一作者臧峰(1983-),男,2011年毕业于清华大学自动化专业,获硕士学位,工程师;主要从事电力系统自动化产品的研发工作。