《电子技术应用》
您所在的位置:首页 > 其他 > 设计应用 > 面向SOA的电力分布式计算总线的应用研究
面向SOA的电力分布式计算总线的应用研究
文俊浩1,赵瑞锋1,颜 伟2
1.重庆大学 计算机学院,重庆 400030 ; 2.重庆大学 输配电装备及系统安全与新技术国家重
摘要: 为了实现数据资源广域分布的电网系统分布式分解协调计算,提出了面向服务架构的电力分布式计算总线(EDCB)协调机制。采用主从分层分区方法,把互联的电力网络划分成主区和从区,在分区环境下分析电力分布式计算的数据需求、计算环境和计算结构,设计电力分布式计算总线模型,进行分布式分解协调计算。通过Ward等值方法,把电网数据转换成数据量较小的等值数据,并利用SOA技术实现分布式计算总线。
Abstract:
Key words :

摘  要:  为了实现数据资源广域分布的电网系统分布式分解协调计算,提出了面向服务架构的电力分布式计算总线(EDCB)协调机制。采用主从分层分区方法,把互联的电力网络划分成主区和从区,在分区环境下分析电力分布式计算的数据需求、计算环境和计算结构,设计电力分布式计算总线模型,进行分布式分解协调计算。通过Ward等值方法,把电网数据转换成数据量较小的等值数据,并利用SOA技术实现分布式计算总线。
关键词: 电力系统; 分布式计算; Ward等值; SOA; 电力分布式计算总线

  随着电网互联程度的逐步提高,在解决数据资源广域分布的一体化仿真分析与计算时,由于电网的分层分区使得数据难以完备收集和交换,传统的集中一体化计算很难实施,而且各子区域独立的简单等值计算会带来很大误差。如何进行数据资源分布的电网一体化仿真计算就成了一个非常突出的问题。因此,基于分解协调的电网分布式计算[1-3]的研究具有重要的现实意义。
  现有的分布式计算主要集中在分布式状态估计、分布式潮流以及分布式无功优化问题[4]。但是已有的研究工作是以分解协调为基础,通过假设网络节点已知或规定好要计算的节点进行仿真来研究电力分布式计算本身的算法,如同步迭代、异步迭代以及其他算法的改进以实现分布式计算,而很少从实际应用的角度对协调器做研究工作。本文针对重庆市电网两分层(市调和地调)多分区计算分解协调的特性,在面向服务架构(SOA)和计算数据路由相关技术的基础上,提出并研究电力分布式计算总线来解决电网的分布式计算问题。
1 电力分布式计算数据需求与计算环境
  电网的所有数据由实时的SCADA[5]系统(Supervisory Control and Data Acquisition)提供,各区的电力系统的EMS根据得到电网原始数据、电力系统的各种分析计算与仿真作为原始数据做相应的处理后进行的。在进行分布式分解协调计算时,采用某种模型将电网进行等值,将由SCADA系统获得的实时电网数据转化成分布式协调计算要求的数据。以子网间联络线的功率和边界节点电压为基础,形成外网的协调等值模型,然后结合外网的等值信息和内网的完备信息,进行独立子网的局部仿真计算,收敛后更新和交换外部等值信息,继续进行子网的独立仿真。
  根据国内的实际情况将互联的电力网络按照行政区域和电气本身特性划分为若干个子网系统,在子网系统中的调度中心如何通过交换少量的信息,使子网系统通过独立计算达到和全网集中式一体化计算同样的效果。文中在电力系统分布式计算数据需求方面,对交换计算的数据采用了外部系统Ward等值[6]处理方法。该方法是将电力网络中的数据,抽象转换成等值数据,使在计算机网络中传输交换的数据相对较小,以提高数据处理与计算的效率。
  根据主从分区原理,将互联电力系统中的各个子区域划分成主区域和从区域,并根据联络节点不同区域的归属,确定联络节点的节点类型。采用Ward等值原理,对相邻区域进行Ward等值,确定边界节点的等值注入功率和等值阻抗以获得计算的电网数据,使得进行传送和计算的数据量很小。
1.1 Ward等值原理
  电网的子网系统节点按图1(a)所示分为3类:内部系统的节点集合、边界系统的节点集合、外部系统的节点集合,分别对应子集{I}、子集{B}和子集{E}。


1.1.1 两区电网等值模型

1.1.2 多区电网等值模型
  将互联系统中的电网按行政区域划分成主区域和从区域多个分区,并根据联络节点的不同区域归属,确定其节点类型,主从分区的划分遵循以下原则:
  (1)主分区:其内部存在平衡节点,因此本文将所有边界节点定义为PQ节点。
  (2)从分区:由于缺乏平衡节点,并且为了整个系统的相位参考一致性,因此本文将与主分区相联的任意从分区边界节点定义为平衡节点,其他边界节点(包含与主分区或者从分区相联的边界节点)定义为PV节点。
  (3)当某个从分区不与主分区相联时,选择与其上级从分区相联的任意边界节点为平衡节点,其他边界节点为PV节点。
  通过上述节点类型的划分,可以实现全系统电压相位参考的统一性。其中,同时作为主分区PQ节点和从分区平衡节点的关键边界节点,起到相位传递作用。
  最后,采用Ward等值原理,对相邻区域进行Ward等值,确定边界节点的等值注入功率和等值阻抗为分布式电网计算提供计算数据。


  

  如果从区域S2和S3之间没有边界节点B3,则S1的外网等值模型如图2(d)所示,电网不做合并操作。
1.2 分布式计算环境与结构
  在电力系统中,对基于计算总线的协调分布式计算模式应满足自身的计算环境要求:首先要满足网络通讯要求,由于电力计算的精度很高而且一般要求实时计算,所以在网络中传送的计算数据量要较小;每个抽象出的计算中心(区调度)有独立的计算系统,且有较高的容错性,不会因为1次分布式计算失败而影响系统运行;各区调度中心EMS有良好的计算能力,保证在电网稳定情况下,计算结果与全局等值;具有很好的可扩展性。
根据电网数据等值,将电力数据转换成计算机可以计算的数据存储在区电力调度中心的EMS数据库中。不同调度中心的数据存储结构不同,本文只重点介绍计算数据的应用。仍以3个区为例,图3(b)是以计算总线进行协调计算的计算模型,其中的S1、S2、S3是抽象后电力调度中心的EMS计算系统的行为节点,图3(c)所示是以S1为内部系统,相邻的2个连接分区为其相应的外部电网Ward等值模型,图3(d)所示为将电网抽象成计算机网络后在计算总线中的结构示意图,其中l12、l13、l23是连接各调度中心EMS服务器的计算机网络线。


2 面向SOA的分布式计算总线
2.1 面向服务架构的相关技术
2.1.1 SOA的组件

  在面向服务的架构中,系统是高度分布、异构的。它一般包括运行时环境、服务总线和服务注册库等,最核心的是Web服务,是用标准的、规范的XML概念描述,这一描述包含了服务交换的全部细节,包含消息的格式(详细描述操作)、操作协议和位置。该接口隐藏了实现服务的细节,允许独立于所采用的硬件或软件平台及编写服务所用的编程语言使用服务。这使得Web服务应用程序成为松散耦合、面向服务、分布式和跨平台[7]。它为实现SOA平台提供了可靠的技术,使SOA成为了IT的主流。Web服务初期定义的标准发展成为SOA早期模型,即围绕3个基本组件的架构模型:服务请求者、服务提供者及服务注册中心。
2.1.2 服务相关技术
  (1)XML是可扩展标记语言,为Web服务基础。XML是解决电力数据交换处理的一种有效方法,它提供制定具有语义的信息标签并且支持不能结构化的数据,基于XML标准的文档可以不受任何环境限制而方便地操作、存储、传送和交换各种类型数据。XML文档除了适用于面向对象数据库之间的信息交换外,还适用于传统关系数据库间的信息交换,以及地理空间数据的描述[8-9]。
  (2)SOAP是一种简单的、轻量级的、基于XML的机制,用于网络应用程序之间进行结构化数据交换。
  (3)WSDL为Web服务描述语言,用于描述Web服务的调用。
  (4)UDDI为统一描述、发现和集成协议,是Web服务架构下服务描述、发现和集成机制。
2.2 分布式计算总线(EDCB)的体系结构
  计算总线在电网分布式计算中处于核心地位,负责利用电网等值数据进行全网计算的协调,对各个行为节点EMS系统计算数据的收集、数据综合分析、转换以及任务的分配;服务的注册、发布和选择;分布式节点的查找发现,拓扑图和计算转发表的生成。文中把各区EMS的计算系统抽象为分布式计算的行为节点[10],在进行全网计算前,要获取各个行为节点信息,行为节点获取了与自己相邻节点的信息才能电网等值,进行分布式计算。系统开发采用面向SOA的架构,行为节点信息的获取和操作利用Web服务实现。
  该分布式计算总线的工作原理是:首先各个行为节点把自己的服务注册到计算总线中的服务注册中心,以分布式系统的一个行为节点(一般以最高调度中心节点开始)查找并调用网络拓扑计算服务,将自身的计算XML文件数据发送到计算总线,并在收到数据后对XML文件进行分析。解析文件发现有与自己相邻的行为节点名称,则查找计算总线的服务注册中心,选择该点相邻节点注册的服务并调用,返回这些节点的本地XML文件,进行分析,同时记录这些节点的连接关系,生成节点的连接关系。等队列为空时,监听程序对比得到的节点和已分析节点是否一致,若得到节点文件少于分析出的行为节点个数,则将未分析的节点继续;若一致,则根据得到的节点关系和相应的信息生成计算总线的转发表。以后根据转发表路由进行分布式计算。分布式计算总线的体系结构如图4所示。

2.3 行为节点分析与实现
  在整个分布式系统进行计算前,必须知道分布行为节点的连接关系,文中以行政最高的调度中心开始,获取拓扑结构,得出转发表并在计算总线中实现路由机制。从节点文件分析该节点相连的行为节点,逐步生成图结构。这是与已知图的存储结构进行图搜索过程相反的操作。文中为了得到拓扑关系采用广度优先搜索算(BFS)法做了进一步扩充修改,在入队前过滤已经入队的节点来达到本文的需求。
  在算法中使用下列标注数据存储结构:al、bl、cl均为ArrayList类型,q为队列数据结构。al存放某一节点名与该节点相邻的行为节点名,此节点分析后al清空;bl用于过滤重复节点;cl是中间缓存数组,保存没有重复的新节点,由过滤函数返回,再写进bl中;q为队列,由行为节点名调用该节点服务分析节点文件,完成分析后出队。当节点全部出队后,哈希表的长度就是计算节点的个数,节点名为键,值为相邻节点的信息,根据哈希表得到拓扑结构和转发表。文件分析过程算法伪代码描述:
BEGIN
  实例化开始拓扑计算服务;;
  调用服务方法返回计算XML文件的字节数组;反序列化
  将字节数据写为要分析的文件同时存到制定目录下;
  解析XML文件,获取首计算节点相邻节点,并将相邻节
  点信息存入al中;
  For(i = 0;i<al.size();i++){
        添加到bl中;
      If(取得节点不等于首计算节点){
            入队;
            保存节点信息到AsideInfo;
        }
}
将首节点以及相邻节点信息存储到Hashtable中
    put(首计算节点, AsideInfo);
清空al;
清空AsideInfo;
    While(q队列不为空){
        检索队首节点;
        根据节点名称查询服务注册中心;
        调用该点服务;
        生成分析XML文件并保存;
        调用XML文件分析函数xmlAnalyze()返回al;
        For(i = 0;i < al.size();i++){
            If(取得节点不等于检索节点){
                 保存节点信息到AsideInfo;
                al中节点不在bl中,入队;
                al中元素与bl和出队节点比较,没有bl则
                做标记,入队,同时保存到cl;
                把cl中的节点存放到bl中;
                 cl清空;
             }//end if
         }/end for
        节点以及相邻节点信息存储到Hashtable中put(检
        索节点, AsideInfo);
        从队列中移除节点;
        清空al;
        清空AsideInfo;    
}// end while
      返回哈希表;
END
2.4 实例分析
  文中以重庆市市调、杨家坪和南岸三区的数据为试验基础,抽象出的行为节点分别为S1、S2、S3。电力系统中按区域划分子网系统后,电网计算节点一般很少,没有性能上的瓶颈。假设S1开始取数据到分析完成的3次平均时间为TS1(文件很小,10 K以下),S2和S3 3次平均时间分别是TS2、TS3,转发表生成的总时间是Tforward,S1和S2之间传送1次数据(本身数据和等值数据很小(K级),文中测试数据为0.8 M)的时间是Ttransmit,测试结果如表1所示。

  根据表1可知,行为节点的拓扑和生成转发表的时间开销在系统设计时间性能要求范围内,而且时间开销也是合理的。在电力分布式系统要求3 min进行1次在线分布式计算,最大迭代为20次,大于20次放弃,小于20次收敛则进行下一次计算,从时间上分析可满足3 min进行1次的要求。
  本文以重庆市电网计算数据需求,市局总调度中心和区调2层多区的结构,然后采用Ward等值把电网数据转换成计算机计算数据,讨论了电力系统分布式计算的计算环境和计算结构;根据电网计算的特性实现了面向SOA的分布式电力计算总线协调电网计算,该计算是有效的应用方式。本文采用了2层处理方式,在后续的工作中将会对多层分区、多层协调路由做进一步的研究。
参考文献
[1]    JAVIER C, ARCURO L, MARIO R. Simulation of evaluation of optimization problem solutions in distributed   energy management systems. IEEE Trans on Power Systems,   2002,17(1):57-62.
[2]   KORRES G N, CONTAXIS G C. Application of a  reduced model to a distributed state estimator[C]. In:  Proceedings of 2000 IEEE Power Engineering Society  Winter Meeting. Singapore:2000,2(9):99-1004.
[3]   张伯明,张海波.多控制中心之间分解协调计算模式研究[J].中国电机工程学报,2006,26(22):1-5.
[4]   颜 伟,温力力,于娟,等.基于辅助问题原理的改进分布式无功优化方法[J].中国电力,2008(3):1-6.
[5]   CABRERA L F, HUNTER E, KARELAS M J, et al.   User-process communication performance in networks of   computers[J]. IEEE Transactions on Software Engineering.  1988,1(14):38-53.
[6]   何 宁.基于Ward等值的分布式计算的研究[D].重庆:重庆大学,2006.
[7]   毛新生.SOA原理·方法·实践[M].北京:电子工业出版社,2007.
[8]   SHAO Zhi Jiang, WANG Yong Ming. XML-based complexlab data representing, storing and publishing. Intelligent Control and Automation, 2004. WCICA 2004. Fifth  World Congress,2004,5(15-19):3791-3795.
[9]   周杭霞, 夏荣钊, 何利力. 基于XML数据安全交换的方法[J]. 计算机应用研究, 2006(4):126-128.
[10] 文俊浩,罗逢吉,颜伟,等. 基于进程通信的电力系统        分布式计算模型[J].计算机工程与应用,2009,45(1):213-216.

此内容为AET网站原创,未经授权禁止转载。