变电站网络数据管理系统设计与实现

2018-01-18 04:33卓怀忠张玉姣陶颍军王兴安窦中山
自动化与仪表 2017年9期
关键词:数据项报文数据包

卓怀忠,张玉姣,陶颍军,王兴安,窦中山

(许继电气股份有限公司,许昌 461000)

目前,对于变电站海量数据的管理并没有完全成熟的办法,其技术难度主要是大量数据读写操作极易对磁盘造成损坏。有人提出采用分布式网络数据存储方式,但其成本、技术难度都比较高,并没有得到广泛的推广[1]。本文采用的数据管理方式是直接通过索引文件对磁盘操作,减少了磁头的使用率,提高了磁盘的使用寿命[2],且方法简单、效率高。

变电站数据管理存在的第二个技术难题是对于其不同协议的报文的解析及展示没有一个统一的判断标准,不同的厂家采用不同方法处理,对于细节处理不尽相同,给变电站的运维人员带来了操作和理解上的难度。本文采用模块化设计,降低了不同协议报文之间的耦合性,并且解析方法和展示效果可通过配置文件灵活配置,也可根据用户需求进行改动,提高了用户数据处理的工作效率。

1 网络数据的采集

数据采集是系统与外部网络数据的唯一接口,多个采集口分别采集不同的数据,按照特定格式重新组织打包,形成满足系统存储与解析要求的报文格式。采集流程如图1所示。

采集口网络模块为百兆/千兆自适应模式,根据站内网络数据量大小灵活配置。采集口采集的数据首先经过硬件FPGA模块加上系统时标[3],按照网络报文格式组织成标准的CAP格式报文,然后将每个采集口的数据汇总起来,形成一个总的大包数据。最后,可选择硬件压缩卡压缩或软件压缩算法来将大包数据压缩成容量更小的压缩包,进行数据存储[4]。

图1 数据采集流程Fig.1 Data acquisition diagram

2 数据存储

数据存储能够将前期产生的数据完整地保存下来以备查看分析。站内保护装置以及后台监控系统都有数据存储的功能,但受限于容量大小和数据处理的要求,满足不了站内系统对网络数据解析和查看需求。该系统使用4 TB容量硬盘,能够连续不间断地存储至少7天的数据报文,并且具有检索方便、速度快的特点。

为了满足上述特点,设计了一种自定义文件系统的方法,在硬盘数据区外定义了一个索引文件,用来记录所存报文的有关信息。每保存一个报文数据包,会将该数据包所在分区号、数据包起始地址、起始及结束时间以及数据包的大小等信息记录下来,用户查找数据时,再根据索引文件直接定位到硬盘分区对应的地址上。数据包读取流程如图2所示。

图2 数据包读取示意Fig.2 Reading data packet diagram

该硬盘读写不依赖文件系统,避免了二次操作,提高了数据读写的速度。在此基础上,程序定期地对索引文件进行维护,发现索引文件和硬盘数据不对应时重新建立索引文件,保证了数据的安全性[5]。同时用户读取数据时,只需要提供数据的起始时间和结束时间即可。数据索引维护流程如图3所示。

为了保证数据的实时性,当系统检测到硬盘剩余空间不足时,采用先入先出的原则,清理掉最早的报文,并将最新的报文写入,如此循环。

图3 数据索引维护示意Fig.3 Data index maintenance diagram

3 报文数据解析与转发

数据解析是按照配置的特定条件来判别报文里发生的“事件”、“状态”和“统计”3 种数据项。 “事件”表示监测的链路对象有错误,需要立即报告;“状态”表示监测的链路对象某类状态发生改变;“统计”表示监测对象在一定周期内发生变化的次数。数据解析流程如图4所示。

图4 数据解析示意Fig.4 Data analysis diagram

前端采集到的数据首先判别协议类型,然后根据配置工具所配置的判别条件进行数据项的解析,最后按照数据项进行转发。配置工具配置效果如图5所示。

所解析的状态类数据项包括通信状态、时间状态、配置状态、连接状态等;所解析的时间类数据项包括遥控操作、定值操作、采样丢帧、发送超时等;所解析的统计类数据项包括连接中断次数、通信响应超时次数、报告控制块初始化次数、报文字节数、丢帧次数等。

图5 配置工具生成配置文件Fig.5 Configuration files generates by configuration tool

数据的采集、解析与存储完成后,需要发送给展示模块进行数据展示,为了保证模块之间的相互独立性,设计了转发模块,专门负责信息的转发。解析流程如图6所示。

图6 解析流程示意Fig.6 Analytical process diagram

4 数据信息展示

数据展示是对数据处理直观的最终显示。把不同格式的数据完全展示到人机界面上,需要有统一的规划和特点,使界面简洁、整齐。本文设计的人机界面如图7所示。

展示的界面设计主要分为四部分。第一部分为全站工况光字牌,站内每个间隔都对应一个光字牌,该间隔有通信中断或异常时,相应的光字牌会变成不同的颜色进行提示;第二部分为链路回路展示图,链路回路上能够展示具体链路的通信状态、发送或接收数据流状态;第三部分为具体链路的详细信息,包括具体事件是否发生、具体状态的状态量以及所统计项的统计值等信息;第四部分为采集模块的采集信息,包含每个采集口的流量、帧速等信息。该界面从整体到局部,从示意图到具体表格,完整地展现了所需数据的具体信息,方便操作人员清晰地掌握当前变电站的运行工况。

图7 展示界面效果Fig.7 Interface display diagram

5 结语

本方法从数据的流向出发,介绍了对外部网络数据的采集,采集后数据的存储与解析,以及解析完成后的转发与展示。系统将数据管理的各个流程详细说明,并最终以界面的方式展现给用户。本方法能够完成站内数百兆网络数据的实时解析与离线存储,且运行稳定、安全可靠,能够满足实际变电站的需求,可以在变电站推广应用。

[1]王宇,张建伟,卢昱.构建安全的分布式网络存储系统[J].计算机应用与软件,2004,21(10):109-111.

[2]王兴安,窦中山,金华蓉,等.智能变电站新型网络报文记录与分析装置的实现[J].电气技术,2014(2):82-85.

[3]邬春明,程亮.变电站监测数据采集系统[J].电测与仪表,2014,51(3):64-67.

[4]郑翠芳.几种常用无损数据压缩算法研究[J].计算机技术与发展.2011,21(9):73-76.

[5]宋璇坤,李敬如,肖智宏,等.新一代智能变电站整体设计方案[J].电力建设,2012,33(11):1-6.

猜你喜欢
数据项报文数据包
基于J1939 协议多包报文的时序研究及应用
国六柴油车远程排放监测数据项间相关性特征研究*
二维隐蔽时间信道构建的研究*
基于相似度的蚁群聚类算法∗
低轨星座短报文通信中的扩频信号二维快捕优化与实现
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
CTCS-2级报文数据管理需求分析和实现
非完整数据库Skyline-join查询*
浅析反驳类报文要点
基于Python的Asterix Cat 021数据格式解析分析与实现