APP下载

配电网SVG接线界面的低延迟异步刷新数据引擎技术

2016-04-12屈志坚应康兴

电力系统保护与控制 2016年21期
关键词:图元引擎文档

屈志坚,应康兴,赵 亮

配电网SVG接线界面的低延迟异步刷新数据引擎技术

屈志坚,应康兴,赵 亮

(华东交通大学电气工程学院,江西 南昌 330013)

针对分布式监控应用中SVG界面的实时数据交互慢和实时信息处理效率低的问题,研究了一种配电网分布式监控SVG界面刷新的实时Ajax数据引擎技术方案。从实时交互信息、实时Ajax数据引擎和可伸缩矢量图动态刷新的操控,到开关量和模拟量数据结构设计,给出了Ajax数据引擎和SVG图元局部刷新的关键实现方法。以配电网的调度监控界面为算例,进行模拟量和状态量的交互测试,实现了监控界面的SVG局部更新。对图元数据的测试表明,SVG界面刷新延时约为百毫秒级,验证了实时数据引擎在分布式监控界面快速刷新处理中的有效性。

调度监控系统;数据引擎;可伸缩矢量图形;局部刷新;实时交互

0 引言

随着电力工业发展和配电网智能化的推进,电力系统接线图复杂性增加,为了完整地展示电力系统供电结构,采用可伸缩矢量图形(Scalable Vector Graphics,SVG)的主接线图需包含更多的电气元件及连接关系,而每个电气元件都引用一个 SVG图元,使得SVG格式的图形文件日益增大,给网络传输造成压力,影响到调度监控系统的实时性能[1-2]。有学者提出Web形式的调度监控界面端架构方案,在拓展性和开放性等方面,对调度自动化系统的发展具有重要意义[3-4]。然而,传统的B/S(Browser/ Server)模式在监控系统中的运用存在一些缺陷,如页面刷新响应慢、占据空间大、交互效率不高等,严重影响监控界面端和实时数据服务器之间的信息流,为克服监控界面交互数据量大和反应慢等问题,需重点研究支持快速处理监控界面 SVG图元的低延迟数据交互方法。

文献[5]研究异步调用(Asynchronous JavaScript and XML, AJAX)的监测界面数据交互,文献[6-7]编写脚本代码,在不刷新全景页面条件下获取SVG图元信息,为多用户并发的局部刷新提供了思路。文献[8-10]通过公共信息模型和对象模型的体系结构,研究标准化实时信息的接口方式,设计相应的实时数据结构。若能在监控界面单个图元和实时数据间构建桥梁,将SVG图元与表征设备状态的实时信号关联,将实时数据的比对处理等推进至界面端,在网络上仅传输少量必要的动态变化信息,即可实现配电网数据图形化[11]的完整展示。实时 Ajax数据引擎,就是一种集Ajax异步通信机制和实时监测数据于一体的界面端图形数据交互技术,为降低网络调用负荷,提高监控图形响应速度提供界面端的数据引擎处理环节。

在实时Ajax数据引擎设计基础上,利用Ajax的GWT应用架构作为底层框架,以组件容器作为SVG图形模块集成监控界面,将实时数据库中变化的监测数据载入实时Ajax数据引擎,与SVG图元属性关联,获得了一种实时数据与监控图元动态快速交互的新方法,并以工程应用算例进行了验证。

1 配电网调度监控系统

1.1 10 kV配电网分布式监控系统

10 kV配电网的分布式监控和管理,主要由监控工作站层、中间层和现场设备层三个部分组成,其构成如图1所示,其中通信网络包括数据服务器、应用服务器和Web服务器等设备之间的局域网络,现场被控配电网络中各种设备级总线,以及应用服务器与现场设备之间通信信道等三个部分。

图1 配电网监控系统的构成Fig.1 Structure diagram of distribution automation system

工作站层为监控应用的人机交互层,利用浏览器以网络直传的方式访问监控界面,避免了客户端繁琐的安装部署。中间层为监控系统的主要部分,负责监控业务的执行和操作处理,采用以太网将数据库服务器、Web服务器和应用服务器等设备互联,并利用通信网络与诸多现场设备进行数据交互,获取配电网实时监测信息,经传递、协议转换和实时数据的管理后,为调度员反应系统的实时状态。现场设备层实现被控配电网络现场设备数据的采集和控制命令的执行,主要由各种监控保护终端组成,其中远方终端单元(Remote Terminal Unit, RTU)实现四遥功能,配电变压器监测终端(Transformer supervisory Terminal Unit, TTU) 实现对配电变压器的监测,馈线终端装置(Feeder Terminal Unit, FTU)实现对路线故障的监测和控制等。

1.2 公共信息模型

公共信息模型(Common Information Model,CIM)以对象类、属性和关系表示电力系统资源的标准化定义,为电力系统应用间信息标准化和数据交互提供了模型基础。采用统一建模语言(Unified Modeling Language, UML)为配电网监控应用信息建模,设计状态类和模拟类等主要用于实时信息交互的信息模型,以实时状态量测类为例,根据应用需求建立状态量测业务信息流如图2所示。

图2 状态量测类信息交互Fig. 2 State measurement information interaction

由通信接口程序经规约报文解析站地址和信号地址,通过状态量测类对量测对象定位,然后关联到数据服务器中动态量测值,将实时采集得到新值与原值比较和处理,若有变化则替换原值,并记录时间,并由Web服务器的监控任务程序将实时状态返回到浏览器界面,监控界面显示程序接收新的状态数据后实现断路器和隔离开关等图元刷新。

公共信息模型的类逻辑关系较复杂,各类间存在继承、关联和聚集的关系,若调度监控系统中监控画面图元较多时,实时访问和交互处理所产生庞大的信息量就可能使服务器产生延时甚至阻塞,影响系统的实时性能。因此,需考虑从标准信息模型中提取出高实时性和调用频繁的业务属性整合,在图元和实时数据之间,建立适合配电网界面端应用的实时数据引擎模型。

2 配电网实时数据引擎模型

2.1 实时数据与图元的关联

在配电网监控应用系统中,为获得监控端快速响应能力,实时数据不断传输到监控界面端,若数据量过大,在高频率的轮询响应中,容易造成数据响应阻塞,影响系统的实时性能。因此,应对系统实时传输数据进行提取整合,将传输过程中必要的开关量、模拟量等动态信息保留,以减少通信量,达到提高响应能力的目的,如图3所示为低压断路器状态量的动态数据表和图元关联配置表。

图3 状态量测的关联表Fig. 3 Related table of status measurement

状态量测值表定义了实时图元信息及其实时数据量,图元关联配置表定义了SVG界面图元的配置数据,并可通过 ID字段与状态量测值表相关联,如图 3中低压断路器的 SVG图元标识(SvgID)为“svg01”,利用实时标识(ID) “0101”关联到实时数据表,从“Real_value”字段即可获得低压断路器的实时状态量。配电网调度监控界面实时交互的量测对象,是监控界面与实时数据库交互的信息载体,担任信息传递的功能,为提高界面响应速度,应在包含必要的基本信息的基础上尽可能减少数据量,需利用Ajax数据引擎的异步通信机制进行实时交互。

2.2 实时Ajax数据引擎

Ajax数据引擎的异步刷新机制,建立在不刷新界面的基础上,而是仅传输系统必要的实时交互数据,利用界面图元与Ajax缓存、数据引擎与数据服务间的双向异步调用与回调机制,为大幅减少界面请求及数据服务间响应数据量提供技术手段,如图4所示为配电网中站所主接线图的开关图元异步刷新的过程。

图4 监控界面的异步交互过程Fig. 4 Asynchronous interaction process of monitoring interface

配电网监控的SVG界面,以线程轮询方式,通过Ajax引擎以异步方式分时发出监测数据请求,大量请求有序发送且互不干扰,在监控网络服务器端,调用 Servlet容器的实时数据服务与实时数据库进行通信,在图元关联配置表中通过状态量标识SvgID获得实时关联信息,从而访问到实时状态量表获得开关状态数据,返回Ajax数据引擎,使传送的数据仅包括实时状态值及标识,确保监控界面端以尽可能少的通信数据量,识别相应的图元信息,经缓存对比后,若开关设备状态有变化,则执行回调函数将遥信信息传递给界面显示模块,对监控界面的SVG画面图元进行动态渲染和刷新。

3 监控SVG界面动态局部刷新

3.1 可伸缩矢量图形文档的生成

可伸缩矢量图形通过可拓展标记语言(Extensible Markup Language,XML)定义图元,利用 Adobe Illustrator (AI)的图符库、Inkscape和Sketch等专门绘图工具,可按需定制图元库,生成矢量图形文档。

电力变压器、断路器、隔离开关和互感器等设备图元id标识、位置等基本属性由绘图工具设置,设备图元填充、渲染等显示属性由层叠样式表(Cascading Style Sheets, CSS)定义,不同CSS文件描述不同设备图元,故可按设备显示的应用需求定制出不同状态时的呈现风格,将设备图元和引用的CSS存入AI图符库即可形成设备图元库,绘制主接线图时直接拖拉图符,可快速生成监控图形界面。设备图元的监控业务属性通过设备属性定义,如图5所示。

可由SVG的元素实例化设备图元,图元业务信息的交互,通过id属性关联到设备属性中定义的业务属性域,从而将图元基本属性、显示属性与设备属性相连接,据此向图元传递监控业务中的实时状态值,实现图元数据动态交互。

图5 电力设备的SVG图形文档Fig. 5 SVG graphic document of power device

3.2 SVG局部刷新

利用文档对象模型(Document Object Model,DOM)操作SVG监控界面图元的局部刷新,以部分主接线SVG文档中低压母线#1出线的DL001断路器和降压变压器BY001图元为例,通过DOM解析器,将调度机界面的SVG文档解析为DOM模型,调用解析功能函数对文档对象图元的标记和属性进行解析,获得Document类型的监控主接线SVG文档根节点对象,通过图元标识ID,即可获得对应的设备图元对象,对设备图元进行动态刷新操作,其流程如图6所示。

图6 SVG DOM操作过程Fig. 6 SVG DOM manipulation process

文档对象模型提供了动态操作监控图元的接口,为实现监控图元动态刷新,引入开源SVG组件包Batik。Batik利用面向对象语言Java提供了一套处理SVG界面程序接口,通过解析器、文档对象模型和画布组件等组件,实现对SVG图元刷新操作。仍以上述低压母线#1出线的断路器和变压器图元刷新处理为例,如图7所示。

图7 SVG界面局部刷新Fig. 7 Partial refreshing of SVG interface

配电网接线图画布组件是一个面向应用层 UI组件,通过资源地址可引入主接线文档,作为在主界面上显示配电网图形界面的主窗口。SVGDOM是Batik的核心组件,封装了底层DOM解析器组件,用于对SVG文档对象进行操作和处理。当画面组件对象引入静态文档时,首先调用解析器在内存中形成对应DOM树,根据文档树根节点对象,利用图元标识DL001和BY001即可获得断路器和变压器节点对象句柄。当监控界面进程接收到系统设备变化的实时数据,触发断路器及变压器图元更新的监听事件。

一旦监听到图元业务属性变化,调用SVGDOM方法更新文档对象属性,对图元进行动态渲染显示,如图7中断路器DL001和变压器BY001图元状态变化。

4 测试

4.1 算例测试代码及界面

以石德线铁路10 kV配电网SCADA监控工程系统中的良村站为算例,利用GWT框架设计Ajax数据引擎量测类信息流的实时交互接口,进行实时信息交互传输,启动调度监控系统界面,结合Batik组件进行主接线SVG动态刷新。

采用Ajax平台的GWT框架,作为配电网调度监控界面端应用的 SVG图元与实时数据之间数据引擎的实现手段,给出相应异步通信的配电网调度监控的典型关键测试代码。

如配电网调度监控界面端的量测类信息异步交互的测试代码如下:

@RemoteServiceRelativePath("hmiService")

public interface HmiService extends RemoteService

{ // GWT 远程调用服务接口

Sdata getSdatas (String stationId);

}

public interface HmiServiceAsync

{ //GWT自动创建一个对应的异步服务接口

void getSdatas (

String stationId AsyncCallback callback);

}

其中 stationId 为当前刷新的站所标识,Sdata类型对象为异步响应所传输的量测数据集合,包括该站所所有实时设备图元信息,在此基础上完成了调度监控的界面测试,运行界面如图8所示。

图8 GWT框架的良村站SVG接线界面Fig. 8 SVG monitoring interface of Liangcun station

4.2 图元局部刷新测试

对调度监控主接线画面进行观测和 SVG图元操作测试,从监控数据服务器中修改电压模拟量的值和断路器的开关量状态,模拟变化的遥测、遥信数据,观测模拟量和状态量图元状态变化,得到如图9所示的界面响应。

图9 SVG监测信息的界面响应Fig. 9 Interface response to SVG monitoring information

由图9得:当实时数据库中的量测变量发生变化时,调度监控界面关联的图元显示颜色和位置状态也随之相应变化。

利用前端性能检测工具Dynatrace Ajax Edition对GWT监控SVG界面进行测试,记录SVG动态图元数据在引擎中刷新的延时时间,即从界面轮询发出异步请求,到服务器响应数据在Ajax数据引擎中进行缓存比对的,所经过的时间长度。通过Dynatrace Ajax Edition的Network 视图即可观察界面运行的每个异步请求任务具体运作时间,包括开始时间、任务总耗时、网络传输和等待上消耗的时间等信息,测试结果如图10所示。

图10 SVG界面数据刷新延迟Fig. 10 Delay of data refreshing in SVG interface

从图10可得,SVG图元界面数据刷新延迟控制在百毫秒级,远小于工程应用中2-3 s的界面分辨率指标,保证了配电网调度监控SVG图形界面操作的实时性,可更好地满足工程应用的需求。

5 结论

1) 采用Ajax数据引擎与实时数据库进行交互,实现了图元变化属性与量测实时对象的关联,验证了配电网 SVG主接线图的动态刷新效果和使用SVG图元进行配电网调度监控界面动态信息快速交互的可行性。

2) 采用 SVG图元的实时数据引擎处理技巧,研究了基于实时 Ajax数据引擎的配电网调度监测界面的刷新延时特性,结果表明,SVG界面图元刷新延迟时间处于百毫秒级,对于实时库中变化的信息数值响应快,得到的界面响应指标远优于工程应用需求。

[1] 曾坚永, 卞瑞祥, 徐展强, 等. Web调度系统的关键问题研究[J]. 电力系统保护与控制, 2011, 39(15):132-136.

ZENG Jianyong, BIAN Ruixiang, XU Zhanqiang, et al. Research on key issues for implementing a Web dispatching system[J]. Power System Protection and Control, 2011, 39(15): 132-136.

[2] 赖晓文, 陈启鑫, 夏清, 等. 基于 SVG技术的电力系统可视化平台集成与方法库开发[J]. 电力系统自动化, 2012, 36(16): 76-81.

LAI Xiaowen, CHEN Qixin, XIA Qing, et al. Development of power system visualization platform and methods library based on SVG technology[J]. Automation of Electric Power Systems, 2012, 36(16): 76-81.

[3] 周特军, 邱建, 王春艺, 等. 基于 SVG的可视化技术在继电保护定值在线校核系统中的应用[J]. 电力系统保护与控制, 2015, 43(16): 112-117.

ZHOU Tejun, QIU Jian, WANG Chunyi, et al. Application of visualization technology based on SVG in on-line relay settings verification system[J]. Power System Protection and Control, 2015, 43(16): 112-117.

[4] 张涛. 吉图珲客运专线供电 SCADA系统设计关键技术研究[J]. 铁道标准设计, 2013, 41(10): 93-97.

ZHANG Tao. Research on fundamentals in power supply SCADA system design of Jituhun dedicated passenger line project[J]. Railway Standard Design, 2013, 41(10): 93-97.

[5] 赵鑫, 张向军, 刘天寿, 等. 基于AJAX技术的小水电站运行效率监测系统设计与实现[J]. 电力系统保护与控制, 2009, 37(2): 83-87.

ZHAO Xin, ZHANG Xiangjun, LIU Tianshou, et al. Design and implementation of small hydropower station efficiency supervisory system based on AJAX[J]. Power System Protection and Control, 2009, 37(2): 83-87.

[6] 敖丽敏, 李林辉. 基于 AJAX的电力图形系统的实现[J]. 电力系统自动化, 2007, 31(19): 47-50.

AO Limin, LI Linhui. Implementation of a power graphics system based on AJAX[J]. Automation of Electric Power Systems, 2007, 31(19): 47-50.

[7] 郭挺, 谢敏, 刘明波, 等. SVG和Ajax技术在电网分析与辅助决策支持系统中的应用[J]. 电力系统保护与控制, 2012, 40(4): 83-89.

GUO Ting, XIE Min, LIU Mingbo, et al. Application of SVG and Ajax technique into power network analysis and decision support systems[J]. Power System Protection and Control, 2012, 40(4): 83-89.

[8] 谢善益, 梁成辉, 高新华, 等. CIM/CIS 互操作细则在多级电网调度中的应用[J]. 电力系统自动化, 2009, 33(1): 103-107.

XIE Shanyi, LIANG Chenghui, GAO Xinhua, et al. Application of CIM/CIS interoperation details in multilevel power grid dispatching[J]. Automation of Electric Power Systems, 2009, 33(1): 103-107.

[9] 刘巍, 黄曌, 李鹏, 等. 面向智能配电网的大数据统一支撑平台体系与构架[J]. 电工技术学报, 2014, 29(1): 486-491.

LIU Wei, HUANG Zhao, LI Peng, et al. Summary about system and framework of unified supporting platform of big data for smart distribution grid[J]. Transactions of China Electrotechnical Society, 2014, 29(1): 486-491.

[10] 金小明, 吴鸿亮, 周保荣, 等. 电网规划运行数据库与集成管理平台的设计与实现[J]. 电力系统保护与控制, 2015, 43(15): 126-131.

JIN Xiaoming, WU Hongliang, ZHOU Baorong, et al. Design and implementation of integrated database management platform for power grid planning and operation[J]. Power System Protection and Control, 2015, 43(15): 126-131.

[11] 沈国辉, 孙丽卿, 游大宁, 等. 智能调度系统信息综可视化方法[J]. 电力系统保护与控制, 2014, 42(13): 129-134.

SHEN Guohui, SUN Liqing, YOU Daning, et al. Intelligent dispatch system information comprehensive visualization method[J]. Power System Protection and Control, 2014, 42(13): 129-134.

(编辑 姜新丽)

Data engine technology of low delay asynchronous refresh for SVG wiring diagram interface of distributed power network

QU Zhijian, YING Kangxing, ZHAO Liang
(College of Electrical Engineering, East China Jiaotong University, Nanchang 330013, China)

In order to solve the problem of SVG interface’s slow interaction rate of real-time data and low processing efficiency of real-time information in distributed monitoring applications, a new technology scheme for distributed monitoring SVG interface refreshment of distributed network based on real-time Ajax data engine is studied. From real-time information interaction, real-time Ajax data engine and dynamic refresh control of scalable vector graphics to structure design of switching data and analog data, the key implementation methods for partial refreshment of Ajax data engine and SVG graphic element are given. Take the monitoring interface of distribution network as an example for doing interactive tests of analog quantity and state quantity, which realize SVG partial refreshment of monitoring interface. Tests result for graphic element data show that the refresh delay of SVG interface is about one hundred milliseconds, verifying the fast refresh processing validity of real time data engine in distributed monitoring interface. This work is supported by National Natural Science Foundation of China (No. 51267005 and No. 51567008).

dispatch monitoring system; data engine; SVG; partial refreshing; real-time interaction

2015-10-28;

2016-01-13

屈志坚(1978-),男,博士,副教授,硕导,研究方向为智能监控理论与技术;E-mail: 08117324@bjtu.edu.cn

应康兴(1990-),男,硕士研究生,研究方向为电力系统调度自动化;E-mail: 1102983344@qq.com

赵 亮(1990-),男,硕士研究生,研究方向为电力系统调度自动化。E-mail: 675672037@qq.com

10.7667/PSPC151898

国家自然科学基金资助项目(51267005,51567008);江西省自然科学基金资助项目(20161BAB206156);江西省杰出青年人才资助计划

猜你喜欢

图元引擎文档
浅谈Matlab与Word文档的应用接口
有人一声不吭向你扔了个文档
新海珠,新引擎,新活力!
学术出版物插图的编排要求(一):图注
联锁表自动生成软件的设计与实现
三生 三大引擎齐发力
蓝谷: “涉蓝”新引擎
基于RI码计算的Word复制文档鉴别
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
电气CAD接线图快速转换G图形的技术应用研究