基于Visual Graph的电力系统开发
林济铿、覃岭、罗萍萍
摘要 针对传统面对对象的图形系 统开发周期长、维护困难的缺点,本文采用通用的交互图形平台Visual Graph, 提出了一种简便、清晰的电力元件、乃至电网结构图的面向图形对象的图形建模 开发新方法。文中详细介绍了该方法中组成电力元件及系统图的类的结构、组成 及基于此所开发的图形系统。实际应用表明,该方法是有效的,所开发的图形系 统具有良好的实际应用前景。
关键字 Visual Graph,面向图形对象,电网结构图,图形系统
0.引言
在EMS中,图形界面是人机接口的重要组成部分。其中在图形建模及开 发方面,早在上世纪八十年代就提出了面向对象建模的思路(Object-Oriented, 即OO 模型) [1-4]。这种自上而下的建模方法有代码重用率高、开发周期较短以 及便于维护等优点。不过,对于传统的OO方法,目前大多仍从底层开发(如 Windows API, MFC等[5,6])的方式,一旦涉及相对复杂的图形技术,代码将急速 膨胀,软件的开发周期依然相当可观。
本文提出了一种新的图形建模及开发方法:面向图形对象的建模 (Graphic Object-Oriented,简称GOO)方法。它与传统面向对象的图 形建模方法相比,主要区别在于它关注的不再是怎样从计算机底层代码去实现图 形,而是可视化的图形对象。图形对象是由相应的图形类生成的。图形类除了拥 有一般类的特征之外,还拥有可视的图形,能够直接编辑,同时也可以通过程序 代码来操纵。GOO建模的特点决定了它需要比以往更高等级的开发平台。该平台需 要拥有完全可视的图形开发人机接口,而且能够内部管理各种图形交互事件并提 供基本的图形对象和建模工具。故GOO建模起点较之OO建模更高,但对开发者而言 难度则大大降低,效率也大幅度提高。
本文基于Visual Graph图形平台(以下简称VG),图形建模采用自上而下 的类的继承的思路:在VG提供的基本的图形单元类的基础上进行继承和扩充,建 立各种元件部件类,再把这些部件组合,形成各种电力元件的模型。最后绘制复 杂的电力系统。
1.VG的基本结构及基本单元类
1.1VG的基本结构
目前国内外已经开发了多种组态式图形通用系统,如ArcObject、 VectorDraw、JFDraw, Visual Graph等。其中VG是一种ActiveX组件,主要包括 一套基本可视图形类库和管理图形的接口,另外还提供图形开发建模的工具。其 中的可视图形类有各种成员属性和成员函数,可通过一套语法简洁的脚本语言来 操作图形,并对外提供编程接口,内嵌到各编程工具中进行开发。
1.2VG的基本单元类
VG提供一个基本图形单元类-IUnit,它由描述图形单 元特征的基本属性和函数组成,例如名称Name,坐标Left、Top,尺寸Width、 Height,移动函数MoveTo(x,y)等,设计时既可通过鼠标操作来修改图形,也可直 接设置相应属性值。Unit下面继承有四种子类:
文字单元类 IText:该类为文本框对象,成员属性包括 文字内容Text,字体Font等。
形状单元类 IShape:该类包括矩形、椭圆、圆角矩形 、圆弧四种形状对象,成员属性包括线条颜色LineColor、线宽LineWidth、背景 颜色BackColor等。
折线单元类 ILine:该类包括点、线、连接点、连接线 ,成员属性包括组成折线的点集合Points[i]、各点类型属性Bytes[i]、线条类形 LineType等。其中连接线可以连接两个图形,形成一组拓扑连接关系。
元件单元类 IElement:该类看作一个类似容器的空白 图形,它容纳其他的子图形以形成新的图形类,其成员属性包括组成元件的子对 象集合Units[i],子对象数目UnitCount等。由上述的几种基本图形类可以在 IElement中绘制任意复杂的二维图形,组成一个新的图形类,即新的元件类。本 文最后要建立的电力元件就是用IElement制作的图形元件类。
上述即是VG提供的基本图形单元类,除此之外,VG还提供了对图形的基本 操作函数,包括添加、删除、移动、旋转、对齐、缩放、拷贝、剪切、粘贴、撤 销、恢复、修改颜色、文本框字体等。对于复杂的操作,可用这些函数不同的组 合来实现。
2.电力元件部件类
本文将电力元件定义为图形对象和端口对象 的有序组合。图形对象是描述电力元件的图形符号,以一次设备单线图 为例,如三绕组变压器是由三个圆表示,负荷由一根箭头线表示等。端口对象则 是元件之间连接的纽带。如图1所示,””代表元件的一个端口,图中G1和BK1之 间的端口重合,则二者已经连接在一起,在VG中元件可以通过端口的自动吸附来 实现连接。
元件中的每个图形对象或者端口对象就称为该元件的一个部件。元件部件 类由图形类和端口类组成。二者都继承自基本图形类,本文定义了如下的端口类 和图形类:
1)端口部件类,MyPort:继承自VG的ILine中的连接 线,该线只包含一个点,即一根退化为点的连接线。端口部件类除了折线单元类 的属性外,还扩充了如下自定义的属性:
电压等级Vn,整型。缺省值为0,代表尚未指定电压等 级;
端口序号PNo,整形,只读。为方便按电压等级着色, 在同一元件中,规定不同电压等级端口的端口序号是不同的,而同一电压等级中 端口的端口序号是相同的。比如线路、开关等元件两端的端口电压等级相同,则 其PNo都是0,而含有多电压等级的元件如图1中的三绕组变压器T1,它有三个端口 ,电压等级都不同,其端口序号分别为0、1、2,而图1中的断路器BK1,有两个端 口,电压等级相等,端口序号均为0。
图1元件的端口、端口序号、元件之间的连接及不同电压等级 着色示意图
Fig1 Ports of elements, No. of ports, connection between elements and coloring of different parts of element by different voltage classes
端口带电状态 PState,整型,指该 端口在带电着色后的状态,值0,1依次代表停电、带电,缺省值为0;
端口类型PType,整形,指该端口所在支路的类型,值 为0,1,2依次代表辐射支路、桥路和环路,缺省值为0;
节点号PNodeNo,指该端口所连接的电气节点序号,缺 省值0代表尚未分配节点号。
2)图形部件类MyGraph:继承自VG的基本图形单元类 IUnit,下面继承有形状类MyShape和线类MyLine,二者分别又同时继承自IShape 和ILine。为了方便按电压等级着色,这两个类扩充了一个自定义属性PNo,其值 与同电压等级端口中的PNo相同。
3.电力元件类
建立好了元件的基本部件图形类和端口类之后,再扩充其 它一些必要的属性,就可以组合起来形成各种类型的电力元件。
电力元件类MyElement:继承自IElement,主要属性如 下:
图形连接的集合Links[i](系统自带属性),从该属性 可以得到某个连接所在的本元件的连接端口Port,以及该连接连到的另一元件 LinkUnit及其端口LinkPort。如图1,G1只有一个连接:G1.Links [0].Port=G1.Port0,G1.Links[0].LinkUnit=BK1,G1.Links [0].LinkPort=BK1.Port0,其它元件的该属性也类似于此。此属性可方便地实现 深度/广度优先遍历。
TypeNo,元件的类型号,整型,只读,如可规定1代表 发电机、2代表负荷等;
SearchState,元件的被遍历状态,缺省值0表示尚未被 遍历到,1表示已经被遍历;
这样电力元件类确定后,就可以在其内加入图形部件和端口部件,组成各 种类型的元件。电力元件的类型一般比较稳定,可以分为如下的几类:
功率类,单端口元件,包括发电机、调相机、负荷、接 地电容、电抗等;
母线类,单端口元件无阻抗的元件;
开关类,双端口元件,包括开关、刀闸等,两端口同属 一个电压等级。开关类有特殊属性开关状态State,整型,0代表断开,1代表闭合 ;
变压器类,多端口元件,包括各种变压器,各端口电压 等级Vn不同,则各端口的PNo也不同;
阻抗类,双端口元件,包括架空线、电缆、串联电抗器 、串联电容器等元件,各端口的PNo相同。
4.标注类
标注类MyLabel:继承IText类,增加自 定义属性UnitName,即该标注所指的元件名 ,字符串型。标注类用来对元件进行标注,如元件名称,电气参数等。
图2为电力元件类图形建模类的结构示意图。
图2电 力元件的类的建立
Fig 2 Construction of classes of various power elements
5.图形建模系统
本文的图形建模系统由三个模块组成,如图3所示:
图3 图形建模系统的结构
Fig3 The structure of Graphic Model Building System
建模时,按照自上而下,由简到繁的方式,从当前元件库中选取图形元件 搭建新的图形,同时设计其成员属性和成员函数,最后将绘制好的新图当做新元 件添加到元件库。其界面如图4所示,左边面板是元件库,中间是可视化图形编辑 区,右边是成员属性和函数设置区。
图4 图形建模系统的界面
Fig 4 The interface of Graphic Model Building System
建立好图形电力元件库后,就可以将库中的元件取出,通 过各元件的端口进行连接,形成网络;如图5的a部分为由两个厂站和若干线路连 接而成的简单系统,厂站又由若干设备元件连接组成,设备元件则由若干元件部 件组成;同时,可以把典型接线方式的厂站存入库中,作为模板直接使用。其建 模层次结构如图5的b部分所示。
图 5 电力系统图的建立
Fig 5 Construction of power system diagram
利用本系统方便地实现了某地区电力系统的实时/历史潮流 图,其效果如图6所示。若把本文系统通过各种通讯规约与电力系统的前置机联系 起来,可进一步开发出新一代监控、管理、仿真及培训系统[7~9]。
图 6 利用本系统所绘制的某地区电力系统实时/历史潮流图
Fig6 Real-time/Historical flow diagram of some area's power system drawn by this system
6.结论
本文提出基于Visual Graph面向图形对象的电力系统图形 建模及开发新方法,它能克服传统的单纯面向对象开发方法的开发周期长、维护 量大等缺点,实现了建模及开发过程的完全可视化,十分便捷。文中详细介绍了 电力元件类的建立及图形系统的结构。示例表明,本文所提的新方法是有效的, 具有良好的实际应用前景。
Graph development of power system based on Visual Graph
Lin Jikeng1 Qin Ling1 Luo Pingping2
(1:Dept. of electrical engineering of Automation school of Tianjin University, Tianjin 300072; 2: Dept. of electrical engineering of Shanghai University of Electric Power, shanghai 200437)
Abstract Based on universal interactive graphic platformVisual Graph, a compact and convenient new model building and developing method for power units and configuration of power network GOO(Graphic Object-Oriented)model building method is presented in this paper, which could overcome the shortage by traditional Object-Oriented model building method, such as : needing very long time to develop and hard to maintain. The structure and makeup of the classes composed of the power units and configuration of power system and the graphic system developed based on it are introduced in detail in this paper. The practical application shows the new method is feasible and effect, and the graphic system developed has good potential to be applied.
Keyword Visual Graph, Graphic Object-Oriented Model Building Method, Configuration of Power Network,Graphic System
参考文献
[1].Andreas F. Neyer, Felix F. Wu. Object-Oriented Program For Flexible Software:Example of A Load Flow. IEEE Trans. On Power System, Vol 5, No. 3, August 1990, 689-695.
[2]. Foley, M.; Bose, A.; Mitchell, W.; Faustini, A. An Object Based Graphical User Interface for Power Systems. Vol 8, No. 1, Feb. 1993, 97-104.
[3].Joong-Rin Shin, Dong-Hae Im. A Windows-based Interactive and Grphic Package For the Education and Training of Power System Ananlysis and Operation. IEEE Trans. On Power System, Vol 14, No. 4, Nov. 1999, 1193-1199.
[4].董张卓,孙启宏等.采用面向对象技术进行实时网络拓扑表示. 西安交通大 学学报,1995.3:29
[5].曾祥辉,宋玮等.面向对象的电力图形系统的分析和设计(Object-oriented analysis and design of graphic system of power system). 继电器(Relay), 2004, 32(25): 36-39
[6] 徐晓慧. 利用Visual Basic开发电力系统图形监控程序(GRAPHIC MONITORING PROGRAM FOR POWER SYSTEM DEVELOPED BY USE OF VISUAL BASIC). 电力系统自动化(Automation of Electric Power Systems), 1999, 23(12): 47 -49
[7].周步祥,阮树骅等. 电网监控屏幕信息的模型(SCREEN INFORMATION MODEL FOR POWER NETWORK SUPERVISORY CONTROL). 电力系统自动化(Automation of Electric Power Systems),1999,23(4):45~47.
[8].邵立冬,吴文传等. 基于CIM的EMS/DMS图形支撑平台的设计和实现(A CIM- based Interactive Graphics System for EMS/DMS). 电力系统自动化 (Automation of Electric Power Systems), 2003, 27(20): 11-15
[9].吴文传,张伯明等. 支持SCADA/PAS/DTS一体化的图形系统(A Graphic System Support SCANDA PAS DTS Integration), 电力系统自动化(Automation of Electric Power Systems), 2001, 25(5): 45-48
作者简介:
林济铿:男,博士,副教授,研究方向为电力系统稳定性分析及控制,电力市场,及人工智能在电力系统中的应用。
覃岭:男,四川攀枝花人,硕士研究生,研究方向为电力系统综合自动化,专家系统。
罗萍萍:女,硕士,讲师,研究方向为人工智能在电力系统中的应用,继电保护