基于SVG的分布式潮流计算系统研究

(整期优先)网络出版时间:2016-12-22
/ 2

基于SVG的分布式潮流计算系统研究

黄文辉许迪宇陈焱宇

(广东电网有限责任公司惠州供电局广东惠州516001)

摘要:随着科技和信息技术的发展,电力系统也越来越复杂和庞大,并朝着电网数据的图形化显示方向发展起来。图形化平台技术拥有洁面友好、易用性强、形象直观等突出特点。本文将对基于SVG的分布式潮流计算系统图形平台中的SVG图形数据和动态交互进行分析研究。

关键词:图形平台SVG动态互交标准化导出文档结构

前言

SVG是W3C组织发布的基于XML、开放的、面向网络应用的新一代图形标准,其在电力系统中应用有以下优势:①可用XML形式方便的对矢量图形进行描述,并直接对图形文本进行修改。②可与众多的Web标准方便的进行互操作,方便数据传输。③可使用各种SVG语言开发包,方便电力系统图形化的开发。本文将对基于SVG的分布式潮流计算系统图形平台中的SVG图形数据及其动态交互进行分析研究。

一、基于SVG的分布式潮流计算系统的图形平台

SVG具有可缩放、文档自我描述和可升级、强交互和动态性、可跨平台、开放性和互操作等优点,目前已大量运用在电力系统中。作为正在逐渐成为一个国际标准的网络图形标准格式,将不断促进电力系统在图形数据共享等方面的发展,给电力系统软件应用实现图形化提供了技术支持。对基于SVG的分布式潮流计算系统的图形平台,下文将采用SVG作为本图形平台的图形格式,将SVG文件从EMS系统中标准化导出,分析SVG图形交互技术,开发SVG文件处理工具对导出原始SVG图形文件实行二次开发,使SVG图形上的电力系统基本图元拥有动态交互性,响应用户的图形操作。

IEC61970系列标准是国际电工委员会制定推出的有关电力系统领域的国际标准,它定义且规范了SVG图形文档的标准格式,而且推荐使用SVG为电力调度自动化系统的图形交互标准格式。可是SVG仅是一种矢量图形的通用文件格式,要把它作为电力系统的图形化格式让它和电力系统中的具体电力设备关联,进而应用到电力系统调度自动化中,则还要深入分析SVG的格式和属性,让SVG图元可以完整描述相关的电气设备,且能满足电力图元在图形形状、图元之间的相互连接关系、图元代表的电气设备的电气属性和SVG图元跟用户动态交互等诸多方面的要求。

二、SVG图形的标准化导出

OPEN3000系统是由南瑞公司开发,基于IEC61970标准的电网调度自动化系统。从其系统接口模块的完备性和技术实现上的便利性考虑,可直接使用OPEN3000系统的SVG文件作为图形平台原始的图形数据。利用OPEN3000系统的SVG图形标准化导出模块,完成OPEN3000系统内部的厂站接线图及潮流图等图形数据用符合IEC61970标准的方式进行导出,进而形成SVG图形文件。值得强调的是,在导出SVG图形文件的时候,需要同时提供SVG文件以及CIM模型文件的配置信息,或者在CIM文件提供之后再提供。因为SVG文件只是描述了图形的绘制信息,而CIM文件则有描述设备的电气信息,SVG文件通过ObjectID及CIM文件的rdf:ID进行关联,形成二者的映射关系。同时,为正确进行符合电力系统CIM规范的SVG图形文件的导出,必须保证SVG文件的ObjectID及CIM文件的rdf:ID的形成规则一致。待文件配置完成后,即可通过SVG图形标准化模块进行导出,进而实现OPEN3000中厂站接线图和潮流图等SVG图形数据的导出。

三、SVG文档结构

在SVG图形文件导出后,则已具备本图形平台的原始图形数据,但要完成SVG图形数据及其动态交互功能模块还要使SVG图形具备交互性。在解决这个问题前,先要将SVG文档的结构搞清楚,然后在其基础上进行原始SVG文档的JavaScript脚本编程,即二次开发。OPEN3000系统导出的SVG图形文件有头文件、公共属性定义以及图层定义等三个部分。这其中,SVG的文件头中的encoding参数表示了整个SVG文档都是用“UTF-8”格式进行的编码。另外,公共属性定义包括样式定义以及图元定义两个部分,其具体的内容放在<defs>标签之中。在电力系统中,时常可以看到很多关于描述电气设备信息的各种字体、颜色,其由于经常使用,因此被当作标准样式使用。这部分作为标准的内容就是定义在公共属性元素之下的样式定义,其被放在<symbol>标签之中,主要定义其整个图形中需要的符号、字体和颜色。其图形中的电力设备元件分别描述标准SVG描述、电气模型和私有属性等三种信息。其中电气模型信息以及私有属性信息均放在<metadata>标签之中,以便电气信息及私有信息进行扩展。图层主要分图形静态背景层、电力设备元件层、静态文本层、量测值层、连接关系层以及其他层。下文将提到的SVG文档的JavaScript脚本编程使其具备交互性,主要就是对图层定义内容进行二次开发。

四、基于JavaScript的动态互交

要开发完成本图形平台中SVG图形数据及交互功能模块,则要充分利用SVG支持DOM的优点,深入分析SVG的消息触发及事件响应函数。此处SVG文件的二次开发可采用JavaScript脚本,进而实现SVG文件的鼠标事件的绑定,让其能够正确响应用户的时间请求,具备图形交互的功能。这样便就获取SVG图形对象和内部的图形属性,使电力系统基本图元能够响应用户的操作请求。JavaScript实现SVG交互功能的方式有两种,一种是内部引用方式,另一种是外部引用方式。内部引用使用起来比较方便,但当整个SVG文档的JavaScript代码数量过大时,其维护就会变得不易。外部引用则是引用外部的.js脚本文件,和内部引用相比,其代码的维护性更强,并且实现了JavaScript代码和SVG文件间的彼此分离。

为了完成SVG图形的交互功能,还要对SVG文档中表示电气元件的相关图元进行鼠标事件绑定,这样,当鼠标点击SVG图形上的电力图元时,则可立即弹出对话框,用户便可以此查看和修改相关的电气参数,然后询问是否更新模型以及启动分布式潮流计算,进而实现在图形平台上对调度员的潮流操作进行模拟。当鼠标移到(开)电气设备时,其旁便显示(隐藏)鼠标提示框,该框内会显示有关本元件相关的电气参数。另外,由于导出SVG文件的数量比较大,倘若对每个SVG文档中每个电气图元都手动进行JavaScript事件的绑定,其工作量势必会大而繁琐。建议可利用QT开发简易的JavaScript事件绑定工具,用以实现对SVG文件的电气图元进行鼠标事件绑定。

五、小结

综上所述,SVG具有可缩放、文档自我描述和可升级、强交互和动态性、可跨平台、开放性和互操作等优点。基于此,本文主要对电力系统中基于SVG的分布式潮流计算系统图形平台中的SVG图形数据和动态交互进行分析研究,以期为今后的工作提供参考。

参考文献

[1]沈沉,王继业.网格技术及其在电力系统中的应用[J].中国电力,2004(5).

[2]曹永峰.分布式数据库管理系统的建设[J].计算机与现代化,2006(4).

[3]李飞,张仕斌.网格计算在潮流计算中的应用[J].河海大学常州分校学报,2005(12).