《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 面向SOA的電力分布式計算總線的應用研究
面向SOA的電力分布式計算總線的應用研究
文俊浩1,趙瑞鋒1,顏 偉2
1.重慶大學 計算機學院,重慶 400030 ; 2.重慶大學 輸配電裝備及系統(tǒng)安全與新技術國家重
摘要: 為了實現(xiàn)數(shù)據(jù)資源廣域分布的電網(wǎng)系統(tǒng)分布式分解協(xié)調(diào)計算,提出了面向服務架構(gòu)的電力分布式計算總線(EDCB)協(xié)調(diào)機制。采用主從分層分區(qū)方法,把互聯(lián)的電力網(wǎng)絡劃分成主區(qū)和從區(qū),在分區(qū)環(huán)境下分析電力分布式計算的數(shù)據(jù)需求、計算環(huán)境和計算結(jié)構(gòu),設計電力分布式計算總線模型,進行分布式分解協(xié)調(diào)計算。通過Ward等值方法,把電網(wǎng)數(shù)據(jù)轉(zhuǎn)換成數(shù)據(jù)量較小的等值數(shù)據(jù),并利用SOA技術實現(xiàn)分布式計算總線。
Abstract:
Key words :

摘  要:  為了實現(xiàn)數(shù)據(jù)資源廣域分布的電網(wǎng)系統(tǒng)分布式分解協(xié)調(diào)計算,提出了面向服務架構(gòu)的電力分布式計算總線(EDCB)協(xié)調(diào)機制。采用主從分層分區(qū)方法,把互聯(lián)的電力網(wǎng)絡劃分成主區(qū)和從區(qū),在分區(qū)環(huán)境下分析電力分布式計算的數(shù)據(jù)需求、計算環(huán)境和計算結(jié)構(gòu),設計電力分布式計算總線模型,進行分布式分解協(xié)調(diào)計算。通過Ward等值方法,把電網(wǎng)數(shù)據(jù)轉(zhuǎn)換成數(shù)據(jù)量較小的等值數(shù)據(jù),并利用SOA技術實現(xiàn)分布式計算總線。
關鍵詞: 電力系統(tǒng); 分布式計算; Ward等值; SOA; 電力分布式計算總線

  隨著電網(wǎng)互聯(lián)程度的逐步提高,在解決數(shù)據(jù)資源廣域分布的一體化仿真分析與計算時,由于電網(wǎng)的分層分區(qū)使得數(shù)據(jù)難以完備收集和交換,傳統(tǒng)的集中一體化計算很難實施,而且各子區(qū)域獨立的簡單等值計算會帶來很大誤差。如何進行數(shù)據(jù)資源分布的電網(wǎng)一體化仿真計算就成了一個非常突出的問題。因此,基于分解協(xié)調(diào)的電網(wǎng)分布式計算[1-3]的研究具有重要的現(xiàn)實意義。
  現(xiàn)有的分布式計算主要集中在分布式狀態(tài)估計、分布式潮流以及分布式無功優(yōu)化問題[4]。但是已有的研究工作是以分解協(xié)調(diào)為基礎,通過假設網(wǎng)絡節(jié)點已知或規(guī)定好要計算的節(jié)點進行仿真來研究電力分布式計算本身的算法,如同步迭代、異步迭代以及其他算法的改進以實現(xiàn)分布式計算,而很少從實際應用的角度對協(xié)調(diào)器做研究工作。本文針對重慶市電網(wǎng)兩分層(市調(diào)和地調(diào))多分區(qū)計算分解協(xié)調(diào)的特性,在面向服務架構(gòu)(SOA)和計算數(shù)據(jù)路由相關技術的基礎上,提出并研究電力分布式計算總線來解決電網(wǎng)的分布式計算問題。
1 電力分布式計算數(shù)據(jù)需求與計算環(huán)境
  電網(wǎng)的所有數(shù)據(jù)由實時的SCADA[5]系統(tǒng)(Supervisory Control and Data Acquisition)提供,各區(qū)的電力系統(tǒng)的EMS根據(jù)得到電網(wǎng)原始數(shù)據(jù)、電力系統(tǒng)的各種分析計算與仿真作為原始數(shù)據(jù)做相應的處理后進行的。在進行分布式分解協(xié)調(diào)計算時,采用某種模型將電網(wǎng)進行等值,將由SCADA系統(tǒng)獲得的實時電網(wǎng)數(shù)據(jù)轉(zhuǎn)化成分布式協(xié)調(diào)計算要求的數(shù)據(jù)。以子網(wǎng)間聯(lián)絡線的功率和邊界節(jié)點電壓為基礎,形成外網(wǎng)的協(xié)調(diào)等值模型,然后結(jié)合外網(wǎng)的等值信息和內(nèi)網(wǎng)的完備信息,進行獨立子網(wǎng)的局部仿真計算,收斂后更新和交換外部等值信息,繼續(xù)進行子網(wǎng)的獨立仿真。
  根據(jù)國內(nèi)的實際情況將互聯(lián)的電力網(wǎng)絡按照行政區(qū)域和電氣本身特性劃分為若干個子網(wǎng)系統(tǒng),在子網(wǎng)系統(tǒng)中的調(diào)度中心如何通過交換少量的信息,使子網(wǎng)系統(tǒng)通過獨立計算達到和全網(wǎng)集中式一體化計算同樣的效果。文中在電力系統(tǒng)分布式計算數(shù)據(jù)需求方面,對交換計算的數(shù)據(jù)采用了外部系統(tǒng)Ward等值[6]處理方法。該方法是將電力網(wǎng)絡中的數(shù)據(jù),抽象轉(zhuǎn)換成等值數(shù)據(jù),使在計算機網(wǎng)絡中傳輸交換的數(shù)據(jù)相對較小,以提高數(shù)據(jù)處理與計算的效率。
  根據(jù)主從分區(qū)原理,將互聯(lián)電力系統(tǒng)中的各個子區(qū)域劃分成主區(qū)域和從區(qū)域,并根據(jù)聯(lián)絡節(jié)點不同區(qū)域的歸屬,確定聯(lián)絡節(jié)點的節(jié)點類型。采用Ward等值原理,對相鄰區(qū)域進行Ward等值,確定邊界節(jié)點的等值注入功率和等值阻抗以獲得計算的電網(wǎng)數(shù)據(jù),使得進行傳送和計算的數(shù)據(jù)量很小。
1.1 Ward等值原理
  電網(wǎng)的子網(wǎng)系統(tǒng)節(jié)點按圖1(a)所示分為3類:內(nèi)部系統(tǒng)的節(jié)點集合、邊界系統(tǒng)的節(jié)點集合、外部系統(tǒng)的節(jié)點集合,分別對應子集{I}、子集{B}和子集{E}。


1.1.1 兩區(qū)電網(wǎng)等值模型

1.1.2 多區(qū)電網(wǎng)等值模型
  將互聯(lián)系統(tǒng)中的電網(wǎng)按行政區(qū)域劃分成主區(qū)域和從區(qū)域多個分區(qū),并根據(jù)聯(lián)絡節(jié)點的不同區(qū)域歸屬,確定其節(jié)點類型,主從分區(qū)的劃分遵循以下原則:
  (1)主分區(qū):其內(nèi)部存在平衡節(jié)點,因此本文將所有邊界節(jié)點定義為PQ節(jié)點。
  (2)從分區(qū):由于缺乏平衡節(jié)點,并且為了整個系統(tǒng)的相位參考一致性,因此本文將與主分區(qū)相聯(lián)的任意從分區(qū)邊界節(jié)點定義為平衡節(jié)點,其他邊界節(jié)點(包含與主分區(qū)或者從分區(qū)相聯(lián)的邊界節(jié)點)定義為PV節(jié)點。
  (3)當某個從分區(qū)不與主分區(qū)相聯(lián)時,選擇與其上級從分區(qū)相聯(lián)的任意邊界節(jié)點為平衡節(jié)點,其他邊界節(jié)點為PV節(jié)點。
  通過上述節(jié)點類型的劃分,可以實現(xiàn)全系統(tǒng)電壓相位參考的統(tǒng)一性。其中,同時作為主分區(qū)PQ節(jié)點和從分區(qū)平衡節(jié)點的關鍵邊界節(jié)點,起到相位傳遞作用。
  最后,采用Ward等值原理,對相鄰區(qū)域進行Ward等值,確定邊界節(jié)點的等值注入功率和等值阻抗為分布式電網(wǎng)計算提供計算數(shù)據(jù)。


  

  如果從區(qū)域S2和S3之間沒有邊界節(jié)點B3,則S1的外網(wǎng)等值模型如圖2(d)所示,電網(wǎng)不做合并操作。
1.2 分布式計算環(huán)境與結(jié)構(gòu)
  在電力系統(tǒng)中,對基于計算總線的協(xié)調(diào)分布式計算模式應滿足自身的計算環(huán)境要求:首先要滿足網(wǎng)絡通訊要求,由于電力計算的精度很高而且一般要求實時計算,所以在網(wǎng)絡中傳送的計算數(shù)據(jù)量要較??;每個抽象出的計算中心(區(qū)調(diào)度)有獨立的計算系統(tǒng),且有較高的容錯性,不會因為1次分布式計算失敗而影響系統(tǒng)運行;各區(qū)調(diào)度中心EMS有良好的計算能力,保證在電網(wǎng)穩(wěn)定情況下,計算結(jié)果與全局等值;具有很好的可擴展性。
根據(jù)電網(wǎng)數(shù)據(jù)等值,將電力數(shù)據(jù)轉(zhuǎn)換成計算機可以計算的數(shù)據(jù)存儲在區(qū)電力調(diào)度中心的EMS數(shù)據(jù)庫中。不同調(diào)度中心的數(shù)據(jù)存儲結(jié)構(gòu)不同,本文只重點介紹計算數(shù)據(jù)的應用。仍以3個區(qū)為例,圖3(b)是以計算總線進行協(xié)調(diào)計算的計算模型,其中的S1、S2、S3是抽象后電力調(diào)度中心的EMS計算系統(tǒng)的行為節(jié)點,圖3(c)所示是以S1為內(nèi)部系統(tǒng),相鄰的2個連接分區(qū)為其相應的外部電網(wǎng)Ward等值模型,圖3(d)所示為將電網(wǎng)抽象成計算機網(wǎng)絡后在計算總線中的結(jié)構(gòu)示意圖,其中l(wèi)12、l13、l23是連接各調(diào)度中心EMS服務器的計算機網(wǎng)絡線。


2 面向SOA的分布式計算總線
2.1 面向服務架構(gòu)的相關技術
2.1.1 SOA的組件

  在面向服務的架構(gòu)中,系統(tǒng)是高度分布、異構(gòu)的。它一般包括運行時環(huán)境、服務總線和服務注冊庫等,最核心的是Web服務,是用標準的、規(guī)范的XML概念描述,這一描述包含了服務交換的全部細節(jié),包含消息的格式(詳細描述操作)、操作協(xié)議和位置。該接口隱藏了實現(xiàn)服務的細節(jié),允許獨立于所采用的硬件或軟件平臺及編寫服務所用的編程語言使用服務。這使得Web服務應用程序成為松散耦合、面向服務、分布式和跨平臺[7]。它為實現(xiàn)SOA平臺提供了可靠的技術,使SOA成為了IT的主流。Web服務初期定義的標準發(fā)展成為SOA早期模型,即圍繞3個基本組件的架構(gòu)模型:服務請求者、服務提供者及服務注冊中心。
2.1.2 服務相關技術
  (1)XML是可擴展標記語言,為Web服務基礎。XML是解決電力數(shù)據(jù)交換處理的一種有效方法,它提供制定具有語義的信息標簽并且支持不能結(jié)構(gòu)化的數(shù)據(jù),基于XML標準的文檔可以不受任何環(huán)境限制而方便地操作、存儲、傳送和交換各種類型數(shù)據(jù)。XML文檔除了適用于面向?qū)ο髷?shù)據(jù)庫之間的信息交換外,還適用于傳統(tǒng)關系數(shù)據(jù)庫間的信息交換,以及地理空間數(shù)據(jù)的描述[8-9]。
  (2)SOAP是一種簡單的、輕量級的、基于XML的機制,用于網(wǎng)絡應用程序之間進行結(jié)構(gòu)化數(shù)據(jù)交換。
  (3)WSDL為Web服務描述語言,用于描述Web服務的調(diào)用。
  (4)UDDI為統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議,是Web服務架構(gòu)下服務描述、發(fā)現(xiàn)和集成機制。
2.2 分布式計算總線(EDCB)的體系結(jié)構(gòu)
  計算總線在電網(wǎng)分布式計算中處于核心地位,負責利用電網(wǎng)等值數(shù)據(jù)進行全網(wǎng)計算的協(xié)調(diào),對各個行為節(jié)點EMS系統(tǒng)計算數(shù)據(jù)的收集、數(shù)據(jù)綜合分析、轉(zhuǎn)換以及任務的分配;服務的注冊、發(fā)布和選擇;分布式節(jié)點的查找發(fā)現(xiàn),拓撲圖和計算轉(zhuǎn)發(fā)表的生成。文中把各區(qū)EMS的計算系統(tǒng)抽象為分布式計算的行為節(jié)點[10],在進行全網(wǎng)計算前,要獲取各個行為節(jié)點信息,行為節(jié)點獲取了與自己相鄰節(jié)點的信息才能電網(wǎng)等值,進行分布式計算。系統(tǒng)開發(fā)采用面向SOA的架構(gòu),行為節(jié)點信息的獲取和操作利用Web服務實現(xiàn)。
  該分布式計算總線的工作原理是:首先各個行為節(jié)點把自己的服務注冊到計算總線中的服務注冊中心,以分布式系統(tǒng)的一個行為節(jié)點(一般以最高調(diào)度中心節(jié)點開始)查找并調(diào)用網(wǎng)絡拓撲計算服務,將自身的計算XML文件數(shù)據(jù)發(fā)送到計算總線,并在收到數(shù)據(jù)后對XML文件進行分析。解析文件發(fā)現(xiàn)有與自己相鄰的行為節(jié)點名稱,則查找計算總線的服務注冊中心,選擇該點相鄰節(jié)點注冊的服務并調(diào)用,返回這些節(jié)點的本地XML文件,進行分析,同時記錄這些節(jié)點的連接關系,生成節(jié)點的連接關系。等隊列為空時,監(jiān)聽程序?qū)Ρ鹊玫降墓?jié)點和已分析節(jié)點是否一致,若得到節(jié)點文件少于分析出的行為節(jié)點個數(shù),則將未分析的節(jié)點繼續(xù);若一致,則根據(jù)得到的節(jié)點關系和相應的信息生成計算總線的轉(zhuǎn)發(fā)表。以后根據(jù)轉(zhuǎn)發(fā)表路由進行分布式計算。分布式計算總線的體系結(jié)構(gòu)如圖4所示。

2.3 行為節(jié)點分析與實現(xiàn)
  在整個分布式系統(tǒng)進行計算前,必須知道分布行為節(jié)點的連接關系,文中以行政最高的調(diào)度中心開始,獲取拓撲結(jié)構(gòu),得出轉(zhuǎn)發(fā)表并在計算總線中實現(xiàn)路由機制。從節(jié)點文件分析該節(jié)點相連的行為節(jié)點,逐步生成圖結(jié)構(gòu)。這是與已知圖的存儲結(jié)構(gòu)進行圖搜索過程相反的操作。文中為了得到拓撲關系采用廣度優(yōu)先搜索算(BFS)法做了進一步擴充修改,在入隊前過濾已經(jīng)入隊的節(jié)點來達到本文的需求。
  在算法中使用下列標注數(shù)據(jù)存儲結(jié)構(gòu):al、bl、cl均為ArrayList類型,q為隊列數(shù)據(jù)結(jié)構(gòu)。al存放某一節(jié)點名與該節(jié)點相鄰的行為節(jié)點名,此節(jié)點分析后al清空;bl用于過濾重復節(jié)點;cl是中間緩存數(shù)組,保存沒有重復的新節(jié)點,由過濾函數(shù)返回,再寫進bl中;q為隊列,由行為節(jié)點名調(diào)用該節(jié)點服務分析節(jié)點文件,完成分析后出隊。當節(jié)點全部出隊后,哈希表的長度就是計算節(jié)點的個數(shù),節(jié)點名為鍵,值為相鄰節(jié)點的信息,根據(jù)哈希表得到拓撲結(jié)構(gòu)和轉(zhuǎn)發(fā)表。文件分析過程算法偽代碼描述:
BEGIN
  實例化開始拓撲計算服務;;
  調(diào)用服務方法返回計算XML文件的字節(jié)數(shù)組;反序列化
  將字節(jié)數(shù)據(jù)寫為要分析的文件同時存到制定目錄下;
  解析XML文件,獲取首計算節(jié)點相鄰節(jié)點,并將相鄰節(jié)
  點信息存入al中;
  For(i = 0;i<al.size();i++){
        添加到bl中;
      If(取得節(jié)點不等于首計算節(jié)點){
            入隊;
            保存節(jié)點信息到AsideInfo;
        }
}
將首節(jié)點以及相鄰節(jié)點信息存儲到Hashtable中
    put(首計算節(jié)點, AsideInfo);
清空al;
清空AsideInfo;
    While(q隊列不為空){
        檢索隊首節(jié)點;
        根據(jù)節(jié)點名稱查詢服務注冊中心;
        調(diào)用該點服務;
        生成分析XML文件并保存;
        調(diào)用XML文件分析函數(shù)xmlAnalyze()返回al;
        For(i = 0;i < al.size();i++){
            If(取得節(jié)點不等于檢索節(jié)點){
                 保存節(jié)點信息到AsideInfo;
                al中節(jié)點不在bl中,入隊;
                al中元素與bl和出隊節(jié)點比較,沒有bl則
                做標記,入隊,同時保存到cl;
                把cl中的節(jié)點存放到bl中;
                 cl清空;
             }//end if
         }/end for
        節(jié)點以及相鄰節(jié)點信息存儲到Hashtable中put(檢
        索節(jié)點, AsideInfo);
        從隊列中移除節(jié)點;
        清空al;
        清空AsideInfo;    
}// end while
      返回哈希表;
END
2.4 實例分析
  文中以重慶市市調(diào)、楊家坪和南岸三區(qū)的數(shù)據(jù)為試驗基礎,抽象出的行為節(jié)點分別為S1、S2、S3。電力系統(tǒng)中按區(qū)域劃分子網(wǎng)系統(tǒng)后,電網(wǎng)計算節(jié)點一般很少,沒有性能上的瓶頸。假設S1開始取數(shù)據(jù)到分析完成的3次平均時間為TS1(文件很小,10 K以下),S2和S3 3次平均時間分別是TS2、TS3,轉(zhuǎn)發(fā)表生成的總時間是Tforward,S1和S2之間傳送1次數(shù)據(jù)(本身數(shù)據(jù)和等值數(shù)據(jù)很小(K級),文中測試數(shù)據(jù)為0.8 M)的時間是Ttransmit,測試結(jié)果如表1所示。

  根據(jù)表1可知,行為節(jié)點的拓撲和生成轉(zhuǎn)發(fā)表的時間開銷在系統(tǒng)設計時間性能要求范圍內(nèi),而且時間開銷也是合理的。在電力分布式系統(tǒng)要求3 min進行1次在線分布式計算,最大迭代為20次,大于20次放棄,小于20次收斂則進行下一次計算,從時間上分析可滿足3 min進行1次的要求。
  本文以重慶市電網(wǎng)計算數(shù)據(jù)需求,市局總調(diào)度中心和區(qū)調(diào)2層多區(qū)的結(jié)構(gòu),然后采用Ward等值把電網(wǎng)數(shù)據(jù)轉(zhuǎn)換成計算機計算數(shù)據(jù),討論了電力系統(tǒng)分布式計算的計算環(huán)境和計算結(jié)構(gòu);根據(jù)電網(wǎng)計算的特性實現(xiàn)了面向SOA的分布式電力計算總線協(xié)調(diào)電網(wǎng)計算,該計算是有效的應用方式。本文采用了2層處理方式,在后續(xù)的工作中將會對多層分區(qū)、多層協(xié)調(diào)路由做進一步的研究。
參考文獻
[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]   張伯明,張海波.多控制中心之間分解協(xié)調(diào)計算模式研究[J].中國電機工程學報,2006,26(22):1-5.
[4]   顏 偉,溫力力,于娟,等.基于輔助問題原理的改進分布式無功優(yōu)化方法[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].北京:電子工業(yè)出版社,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數(shù)據(jù)安全交換的方法[J]. 計算機應用研究, 2006(4):126-128.
[10] 文俊浩,羅逢吉,顏偉,等. 基于進程通信的電力系統(tǒng)        分布式計算模型[J].計算機工程與應用,2009,45(1):213-216.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載。