移动试验管理通信规约设计

2015-04-13 08:26敏,姚
浙江电力 2015年4期
关键词:规约管理系统传输

陶 敏,姚 峰

(1.国网浙江省电力公司电力科学研究院,杭州 310014;2.杭州意能软件有限公司,杭州 310014)

移动试验管理通信规约设计

陶 敏1,姚 峰2

(1.国网浙江省电力公司电力科学研究院,杭州 310014;2.杭州意能软件有限公司,杭州 310014)

移动试验管理系统收集现场装置采集的带电检测、在线检测以及专业巡检数据,依据现场标准化作业平台的指令,自动形成试验报告,并上传到PMS(安全生产管理系统)中,因此,数据通信是移动试验管理系统不可或缺的关键核心功能。详细介绍移动试验管理现场数据采集规约的设计方法,重点阐述数据传输格式的设计,通过面向对象的方法,抽象试验报告、试验项格式,以有限的指令格式实现绝缘、化学、带电试验等各类数据的传输,并兼顾试验项格式不断发展的要求,是移动试验管理系统开发的关键因素。

试验管理;通信规约;设计;面向对象

1 移动试验管理系统

移动试验管理系统建设的目的是为了减少现场试验数据收集的工作量,降低数据收集差错率,提高试验数据收集的真实性、及时性以及准确性。除了现场数据的收集外,移动试验管理系统还可以将收集的数据自动形成试验报告,并上传到PMS中。

移动试验管理系统的主要工作平台是平板电脑,因此可以支持现场的无线数据传输,如通过3G/4G通道、WIFI通道以及蓝牙通道等。目前主要的通信通道是蓝牙通道。

移动试验管理系统收集的基础数据是符合各试验项规范的试验数据集,包括绝缘试验、化学试验、带电试验等各类数据。可同时收集不同装置的多组试验数据,并通过试验任务编号进行自动组合。

移动试验管理系统是PMS的子系统,统一运行于现场标准化作业平台上,设备台账来源于现场标准化作业平台的作业指导书模块,由作业指导书模块下达作业任务。可实时从PMS下载、更新试验项格式。

2 通信需求分析

2.1 数据收集通信需求

现场试验人员通过无线方式将试验装置连接到移动试验管理系统,系统识别验证连接的装置是否是有效的入网装置;验证通过后,现场人员将装置预先采集的试验数据以试验项的形式发送给移动试验管理系统;移动试验管理系统接收装置发送的试验数据,并写入到数据库中。之后试验装置和移动试验管理系统断开连接,从而完成1次现场试验数据的通信。在这个过程中,有几个关键的需求可能对规约的设计产生影响:

(1)通信主体是装置与移动试验管理系统,因此决定了通信的数据不可能是非常高级或复杂的,如Excel、数据库文件等。

(2)双方通信需要请求连接并识别验证,双方均可以主动断开连接。

(3)试验项格式要预先定义,如果可能,应尽量减少传输的数据量。使用枚举量来替代文字传输,特别是中文字符的传输。

移动试验现场通信用例模型如图1所示。

图1 移动试验管理现场通信用例模型

移动试验管理系统通过“侦听连接”用例来侦听现场装置的连接请求;装置和移动试验管理系统通过“管理连接”用例来建立或断开双方的通信连接;现场装置通过“发送试验数据报告”用例将试验报告发送到移动试验管理系统。

这与TCP/IP协议簇中面向可靠连接的TCP协议的操作非常类似,由于蓝牙协议栈支持TCP/ IP协议,因此除WIFI外,通信通道的选择可以有很多种,本项目采用的是蓝牙通道。这给协议的设计带来很大的好处,因为可以不必设计数据接收差错校验,而是由TCP协议完成。

2.2 试验报告与试验项

所有试验报告的格式大致相同,即包含试验日期、任务编号、试验班组、试验人等。为了减少装置开发的复杂度(尽量减少装置中文库的大小),除了必须用于区分不同试验报告的试验日期以及任务编号外,其他信息均在移动试验管理系统中设置,因此,可以将试验报告简单地理解成若干个试验项数据的集合。

试验项数据是符合试验项规范的格式数据,试验项格式在PMS中规定,是通信双方均需遵循的规范。典型的试验项格式如图2所示。

图2 变压器局部放电测量试验项格式

据不完全统计,电力行业共有超过20种设备的绝缘试验、化学试验、带电试验约230项,因此,不可能为每一个试验项单独规定数据传输格式,必须对试验项进行面向对象的抽象,这也有利于今后试验项格式的更新、升级以及保持多版本数据的兼容性。

2.3 面向对象抽象

通过分析,可以发现无论多复杂的试验项,其本质是1个二维表,大多试验项甚至是一维表(变长的二维表格可以看作是一维表的集合),因此,如果能对每个试验项的每个格子进行定义,那么就可以使用1种或若干种数据格式来传输所有的试验数据。总结起来,1个试验数据可以用以下几个方面来表述:

(1)属于哪个试验项?

(2)是试验项中哪个格子的数据?

(3)什么时候采集的?

(4)它的值是多少?

(5)数据值的单位是什么?

其中1-2项需要预先定义,也就是试验项格式定义;3-5项在试验时形成,也就是试验数据。图3是通过抽象后的试验项格式与试验报告的类模型。

图3中的TestItemStyle以及TestDataStyle是试验项格式类,分别用以描述试验项以及试验项中的试验数据。DataEnum定义试验数据的枚举值,如正常、异常、超标,以避免传输中文字符,枚举值尽量不要有任何意义。由于没有规定试验报告必须包含哪些试验项,因此不必抽象试验报告格式类。

TestItem和TestData用以描述符合以上试验项格式(用编码关联)的数据。由于有的试验项中试验数据可能具有不同的数据采集时间,因此抽象了1个TestDataWithTime类来描述这种差异。试验报告TestReport仅用以组合试验项数据。

由于二进制数据传输的特殊性,因此在传输数据时,必须告知传输数据的值类型,即数据值是浮点数、32位整型数还是64位整型数等,它们占据的数据长度不同并且解析方式也不同。数据类型通过ValueType类描述。

DataUnit是数据的单位。TestData和Test-DataStyle并没有关联到DataUnit,不直接关联的原因是为了增加数据传输的灵活性,即数据使用什么单位由装置决定,TestData和TestDataStyle类的Scale属性分别描述的是试验数据以及试验项格式规定的单位与国际标准单位之间的倍率关系,移动试验管理系统负责将接收的数据转换成试验项规定的单位。在实际操作中发现,单位的倍率可以用来转换数据值的类型,如可以将0.01浮点数传输成倍率为-2(10-2)的整型数1。

如果考虑数据的偏移,则将更为合理,如1个试验值都是在1.000 000 095~1.000 000 105波动,可以设置偏移量为1,倍率为-9(10-9),那么传输的数据就可以限定在95~105,将非常有利于传输有效位很长且数据变化不大的数据。由于现有试验项中并未发现有类似的数据,为减少装置实现的复杂度,本项目没有设计数据偏移。

图3 试验项格式与试验报告类模型

3 通信规约设计

无论多复杂的规约,其本质就是二进制格式数据块的传输。二进制数据块如果包括了动作的含义,就可以实现接口。1个协议基本上可以包含通信的方式以及通信的数据格式两部分。

3.1 通信方式

数据通信的方式并不影响用户的应用数据传输,即使协议限制了传输数据的长度,也可通过拼接的方式来实现大数据的传输。

不建议采用串口方式进行通信,原因是这种方式容易出现数据丢失问题,需要设计复杂的交互来验证数据传输的有效性。公网的短信、3G/4G等其他方式的通信安全性得不到充分保障,因此也不在考虑之列。

在实际操作中,选择蓝牙通信作为现场装置与移动试验管理系统的基本通信协议。目前蓝牙4.0版本已经可以支持长距离、低功耗的数据传输,这将大大拓展移动试验管理的现场数据收集的活动半径,增强现场数据收集的安全性。

3.2 试验项格式定义

需要预先对试验项格式以及试验数据、数据单位进行编号,并特别注意以下几点:

(1)编号不要全部连续编排,应预留出一定的空间,便于今后的更新和升级。

(2)为兼容不同的版本,尽量不要修改已经发布的试验项格式,可以采用为升级的试验项重新定义编号的方式,以保证系统同一时间可以收集不同版本装置的数据。

(3)数据单位采用国际标准单位,将有助于记忆和减少差错概率及调试难度。对于特定的数据单位,如介损的百分比等,也可进行特别编号。

3.3 传输数据格式

遵循GB/T 18657系列标准,规定通信规约的帧结构。帧结构的主要部分是APDU(应用规约数据单元)、ASDU(应用服务数据单元)以及信息对象,下面详细介绍传输数据格式的结构及其与试验报告、试验项的对应关系。

3.3.1 应用规约数据单元

传输的整个数据包称做APDU,本项目采用变长格式的APDU,原因是每个试验项的数据长度不同。

基本上,可以将1个APDU看作是1份试验报告,它包括了多个APCI(应用规约控制单元)和ASDU的组合,如图4所示。

图4 应用规约数据单元结构

APCI和ASDU成对出现,APCI用于描述相关ASDU的长度,还有4个字节可以用来描述任务编号(数字)。

由于每个APCI均包含了任务编号,因此单个APDU也可以传输多个和部分试验报告的数据,从而可以解决因APDU长度限制造成超长试验报告无法传输的问题(扩展考虑)。

3.3.2 应用服务数据单元

1个ASDU可以理解成1个试验项(对于变长的试验项,表示试验项中的1行数据),数据结构如图5所示。

图5 应用服务数据单元结构

ASDU包含1个数据单元标识符、若干个信息对象以及1个公共时标,这正好可以描述图3中的TestItem。信息对象用以描述试验项中的单个试验值。

类型标识用于说明指令的类型,本设计中有2个指令,即带时标和不带时标的数据传输。是否带时标视试验项中单个数据的采集时间是否与整个试验项的公共时标一致而定,不同的指令使用不同结构的信息对象。

公共地址用以描述试验项的编号,可以将相同编号的ASDU组合成1个变长的试验项;公共时标用以表示试验项的试验时间,通常情况下可以通过这个时标提取试验日期。

3.3.3 信息对象

信息对象用来描述具体的试验值,因此它除了说明值是多少,还必须说明是试验项中的哪个试验数据。信息对象的结构如图6所示。

图6 信息对象结构

有2种信息对象结构:一种包含数据时间,另一种不包含数据时间,分别用上节提到的不同指令进行传输。

信息对象地址是试验项中试验内容的编号。为了减少出现差错的概率,对相同类型的试验内容进行统一编码,如电阻统一编码为100。以“耦合电容器绝缘电阻”试验项为例,无论是“绝缘电阻”还是“绝缘电阻20℃折算值”的信息对象地址均是100;同时,通过位置码来区分相同试验项中的同类试验值,如以上“绝缘电阻”的位置码是0,“绝缘电阻20℃折算值”的位置码是1。以信息对象地址和位置码组合来确定试验项中的试验内容。

值类型用来描述值的数据类型,可以是浮点数、双精度浮点数、32位整型数等。通常情况下,试验值使用双精度浮点数。

采用国际标准制单位,如电阻的单位使用Ω。用数量级来描述本测量值单位与标准单位之间的换算关系,如以上的绝缘电阻,如果测量值的单位是MΩ,那么数量级应为6(106)。

3.4 其他问题

由于特定的二进制数的长度可能超过1个字节,如浮点数、32位整型数等,因此在制定通信规约时,必须首先规定二进制数的字节序列,即传输的数据是BIG-ENDIAN(大字节在前)还是LITTLE-ENDIAN(小字节在前),参考的建议是视开发环境而定。Java使用BIG-ENDIAN,而.net采用LITTLE-ENDIAN。移动试验管理系统在Android环境中运行,使用Java编程语言开发,因此本项目采用BIG-ENDIAN的二进制字节序列。

传输的数据包最好是类似“起始字符、数据长度、内容、结束字符”的结构,这是因为数据传输的拆分包是由底层协议规定的,接收的数据包有可能是用户多次发送的整合数据或1次发送的部分数据。因此数据接收程序必须进行数据合并以及拆分工作。如果没有特殊原因,尽量采用1次连接传送1次数据的通信方式。

如果采用TCP协议通信,应答包的设计就不是必须的,除非业务需要,如应答长数据块的序号。来回的交互只会徒增通信实现的复杂度。

4 结语

浙江电力移动试验管理系统与现场试验装置的通信规约采用了以上设计方法进行设计。合理的规约设计可以加快项目进程,特别是牵涉到多个厂家协同开发的场合,应重点考虑厂家实现规约的难易程度。

(1)在设计中,尽量套用国家、行业或国际标准的规约和进行扩展,由于其合理性已经得到验证,因此可以节省大量的规约设计时间。

(2)考虑到仪器厂家的生产能力以及装置生产的成本,尽量不要采用大量的中文传输、特定的文件格式、复杂的接口规约,因为这些都需要底层的模块支持且耗费宝贵的硬件资源,会延长生产和调试的周期。

(3)尽量考虑规约的扩展性和兼容性。装置与试验项格式的更新和升级不会同步进行,在相当长的一段时间内,可能会同时存在不同版本的装置。版本的差异应在微机中解决。

(4)尽量减少出现差错的可能性,如带单位传输数据,原因是各仪器厂家出厂的默认单位有可能不同,有的可以设置,有的不可以设置。

[1]GB/T 18657.1-2002远动设备及系统 第5部分 第1篇 传输帧格式[S].北京:中国标准出版社,2002.

[2]GB/T 18657.2-2002远动设备及系统 第5部分 第2篇 链路传输规则[S].北京:中国标准出版社,2002.

[3]GB/T 18657.3-2002远动设备及系统 第5部分 第3篇 应用数据的一般结构[S].北京:中国标准出版社,2002.

[4]GB/T 18657.4-2002远动设备及系统 第5部分 第4篇 应用信息元素的定义和编码[S].北京:中国标准出版社,2002.

[5]GB/T 18657.5-2002远动设备及系统 第5部分 第5篇 基本应用功能[S].北京:中国标准出版社,2002.

(本文编辑:徐 晗)

Design of Communication Protocol for Mobile Test Management System

TAO Min1,YAO Feng2
(1.State Grid Zhejiang Electric Power Research Institute,Hangzhou 310014,China;2.Hangzhou Yineng Software Co.,Ltd.,Hangzhou 310014,China)

Mobile test management system collects data from charged detection,on-line detection and professional inspection acquired by field devices.Under instructions of the field standard operating platform,the data are automatically generated as test report and upload to the secure production management system(PMS).Therefore,the data communication is an indispensable core function of mobile test management system.This paper elaborates on the design method of mobile test management field data collection protocol, which focuses on the design of the data transmission format and through object oriented method,abstract test reports,test item format and limited instruction formats to realizes transmission of all kinds of insulation, chemical,electrified test data and moreover fulfills the requirements of the development of the test item format,which is the key to the success of mobile test management system.

test management;communication protocol;design;object oriented

TN915.853

B

1007-1881(2015)04-0061-05

2014-10-28

陶 敏(1969),男,高级工程师,从事电力信息系统的研发和项目管理工作。

猜你喜欢
规约管理系统传输
基于James的院内邮件管理系统的实现
传统自然资源保护规约的民俗控制机制及其现实意义
牵引8K超高清传输时代 FIBBR Pure38K
基于无线自组网和GD60规约的路灯监控系统的设计
基于同轴传输的网络传输设备及应用
关于无线电力传输的探究
基于LED联动显示的违停管理系统
一种在复杂环境中支持容错的高性能规约框架
停车场寻车管理系统
一种改进的LLL模糊度规约算法