摘 要:文章論述了基于圖形界面的電力系統分析軟件的設計思想及軟件總體結構,包括FORTRAN語言編制的電力系統分析軟件與可視化高級語言之間的接口,并給出了圖形模塊、穩態分析模塊、故障分析模塊、暫態分析模塊功能的實現方法。
關鍵詞:圖形界面 電力系統分析計算 面向對象 軟件 設計
1 引言
電力系統的發展趨勢是大系統、大聯網,運行調度人員要處理的數據量日益龐大。電網的運行由各級調度員調度,由于電網結構的復雜性,各級調度員調度系統運行必須依靠電力系統分析軟件,依據計算結果確定各發電廠的出力,功率如何平衡,如何調控負荷,怎樣發電最經濟,怎樣輸電最經濟,以怎樣一種方式運行最為安全,預想事故對策等等??傊?,利用電力系統分析軟件進行計算和分析是現代電力系統運行最基本的手段,是必不可少的部分。
傳統的電力系統分析計算軟件大多由FORTRAN語言編制,數據的輸入輸出以數據文件的方式進行,而且輸入輸出數據文件的格式要求非常嚴格,數據文件的填寫過程中有時僅僅因為填寫數據發生一位錯誤就將導致計算結果的千差萬別。很難想象在計算機技術發展的今天,電力系統運行調度人員仍必須通過數據文件的填寫和閱讀來對電力系統進行分析。因此,有必要為運行調度人員提供一套具有良好的人機界面的電力系統分析軟件,將可視化編程技術應用于電力系統分析和仿真軟件已成為當前電力系統應用軟件的一個發展趨勢。
2 軟件總體結構
基于圖形界面的電力系統分析軟件的一個基本特征就是圖形化,即用戶在使用該軟件時的大部分操作都能在圖形上通過鼠標的點擊、拖動等操作來完成,拋棄了以往的填寫、修改和閱讀數據文件的方法。該軟件主要有四大模塊組成,分別為圖形模塊、穩態分析模塊、故障分析模塊和暫態分析模塊。軟件總體結構如圖1所示。
圖形模塊負責電力網絡圖的建立、電氣元件數據的輸入和計算結果的圖形輸出以及穩定計算曲線的輸出等功能。
穩態分析模塊負責將每個元件的輸入數據轉化為穩態分析程序要求的數據格式,在穩態分析完畢后將穩態分析的結果文件轉化為用戶所見的表格輸出和圖形輸出。
故障分析模塊有著和穩態分析模塊相似的功能,同時該模塊要將穩態分析的結果文件轉化為故障分析程序的輸入文件。
暫態分析模塊將每個元件的暫態分析所需要的輸入數據轉化為暫態分析程序要求的數據格式,并將穩態分析的結果文件轉化為暫態分析的輸入文件,然后將運算后的結果文件轉化為用戶所見的表格和曲線輸出。
3 軟件功能的實現
3.1 設計思想
近年來面向對象(OOP)方法被引入電力系統軟件的開發,并逐漸開始在實際軟件設計中應用這一思想進行設計,并取得了良好的效果。電力系統是由各種物理元件組成的,各元件屬性的相對獨立性和元件間拓撲連接的特點特別適合于用面向對象的管理方式,將各種屬性封裝在對象的類中,既可在圖形模塊也可在計算分析模塊中得到使用。為了提高軟件可重用性和可擴充性,本軟件采用了面向對象的設計思想。在OOP程序中,程序由一個或多個類組成,它們用來描述一組具有共同特性的對象。對象是在系統中運行時刻的基本成分,是屬性和行為的封裝體?!皩ο蟆焙汀邦悺本哂锌衫^承性和多態性,它們給外界提供了統一的接口,而且一旦建立,就可重復使用。
“對象”和“類”的組建是本程序設計的基礎,也是實現軟件開放性的關鍵所在。電力系統包含許多元件,這些不同種類的元件有相對獨立的屬性,而元件之間有相互關聯的拓撲關系。由于各種元件具有一些相同的屬性和方法,因此首先定義一個元件基本類作為所有元件的父類。
classCdevElement∷publicCObject
?。鹥ublic∶
char*m-Name;

上述類定義中,m-Name為一指向字符串的指針,該字符串用于描述元件的名稱,m-Index為一整型變量,用于存儲該元件在電網中的一個標識符,該標識符與數據庫相關聯,形成實例后,即可表示元件的唯一性又便于與數據庫對應。各類元件均由該基類派生,如母線類(CBus)、線路類(Cline)、負荷類(CLoad)、斷路器類(CBreaker)、變壓器類(CTransformer)以及發電機類(CGenerator)。
傳統的電力系統分析軟件大多是以FORTRAN語言開發的,這些軟件經過運行調度人員長期的運行驗證,重新開發電力系統計算軟件對于一般的電力系統來說是不必要的。本軟件首先將FORTRAN語言編制的穩態分析、暫態分析等電力系統分析計算程序改寫為子程序,并在FORTRAN環境下將其編譯為Windows環境下的動態鏈接庫,然后由可視化高級語言直接調用此動態鏈接庫。通過這種方式,由FORTRAN語言編制的電力系統分析軟件就完好地被封裝在由可視化高級語言實現的友好的人機界面下,充分地利用了已有的資源。同時由于動態連接庫的使用,使得在同一時刻完成多項計算成為了一項極為簡單的任務。
3.2 圖形模塊的設計
把文檔類CMycppDoc定義為一塊存放了所有繪圖所需的信息的數據區域,包括:位置信息、尺寸信息、顏色、線型、網絡連接關系以及穩態分析、故障分析、暫態分析所需的電氣參數、計算信息。這些數據按用途可分為繪制圖形用數據、電氣參數數據、分析計算數據等三塊。根據電氣元件的不同,把繪圖用數據和電氣參數數據結合起來封裝成多個類。這樣,這些類中不僅包含了這些數據和繪圖用信息,還包含了表示網絡連接關系的信息。將表示網絡連接關系的信息與數據和繪圖用信息放在一條鏈中,可以保證在圖形中各元件的連接關系一旦建立好后,僅改變元件的尺寸或位置將不會影響其連接關系。也就是說,連接關系一旦建立,若不進行刪除操作,則將保持這種連接關系。
3.3 穩態分析模塊的設計
穩態分析模塊包括三個子模塊:潮流分析模塊、網損分析模塊和靜態安全分析模塊。
潮流分析是電力系統最基本的內容,除了它本身的重要作用外,它還是網損分析、靜態安全分析、故障分析和暫態分析計算的基礎,它的原始數據和計算結果是上述分析不可缺少的組成部分。它的任務是依給定的運行條件確定系統的運行狀態,如各母線上的電壓(幅值和相角)、網絡中的功率分布及功率損耗等,從而對系統的運行性能進行分析,提出必要的改進措施。
網損分析模塊的功能是在潮流分析基礎上,分別計算線路及變壓器的有功損耗和無功損耗,統計各種匯總結果及多種百分比。網損分析模塊體系結構如圖2所示。

靜態安全分析模塊的功能是全面分析電力網靜態運行特性。功能主要包括:切除某一元件或某些元件后電網的運行特性、潮流分布;投入某一元件或某些元件后電網的運行特性;切除或改變發電機的輸出功率后電網的運行特性;切除或改變負荷功率后電網的運行特性。該模塊的體系結構如圖3所示。
3.4 故障分析模塊的設計
故障分析模塊包括短路分析和斷線故障分析,故障分析可在給定潮流方式下進行,也可不在給定潮流方式下進行。前者考慮實際發電機電勢和負荷電流的影響,后者計算時發電機取E″=1∠0°。它可以計算任意指定點上任意故障類型的簡單故障和復雜故障。計算結果可用表格輸出,簡單故障可通過圖形界面在網絡圖上顯示及打印輸出。該模塊的結構如圖4所示。
3.5 暫態分析模塊的設計
暫態穩定分析模塊用于分析電力系統遭受各種擾動后,系統同步運行穩定性的問題。它是分析事故、研究提高系統穩定性措施,設計選擇合理利用電網結構的重要手段。該模塊的結構如圖5所示。
4 軟件的功能與特點
基于圖形界面的電力系統分析軟件的主要功能是作為電力系統調度人員的一種輔助分析工具,本軟件的主界面如圖6所示。與其它電力系統分析軟件相比,主要有以下特點。
(1)線路、變壓器、發電機和負荷等所有的輸入數據可通過鼠標點擊網絡結線圖上的元件彈出對話框進行輸入,大大提高了輸入數據的效率和準確性。
(2)圖形編輯功能強大,包括網絡圖的繪制、塊拷貝、塊移動、剪貼、縮放、圖形及字體的選擇和顏色的設置等,用戶可根據自己的要求自行定義不同的字體、不同電壓等級母線的線型和顏色,從而使得圖形的繪制更加簡單,畫面更加直觀。特定的電力系統元件的圖標如線路、變壓器等的連線可多折,這樣就使得繪制出來的網絡圖更符合實際。
(3)各元件的參數可以有名值輸入,也可以標么值輸入,還可以元件的原始參數輸入,如輸入線路的型號、長度和界面;變壓器的短路電壓、短路損耗、空載損耗和空載電流的百分比。
(4)能在網絡主接線圖上顯示全網穩態分析結果,包括各節點電壓、角度、線路潮流、發電機出力、全網網損等,可根據自己的需要調整顯示結果在主接線圖上的位置。潮流計算結果可選擇顯示,這樣運行調度人員可只輸出所關心的數據。此外,潮流計算結果也可以表格的形式打印輸出。
(5)可通過控制斷路器的開斷改變網絡拓撲結構和通過調整發電機的出力、負荷的大小進行靜態安全分析,對于越限的元件,圖標變成閃爍的紅色。這樣可以方便調度員對網絡進行靜態安全分析。
(6)可進行多重故障分析,結果可以圖形的方式在主接線圖上顯示,也可以表格的形式打印輸出。
(7)暫態分析結果可以表格或曲線的形式輸出,而且輸出曲線的形式多樣化,一次可開多個窗口以顯示不同類型的多條曲線。
(8)本軟件采用了面向對象的設計思想,具有開放性,因此使得本軟件能很容易擴充新的功能模塊。
5 結論
綜上所述,基于圖形界面的電力系統分析軟件具有良好的人機界面,用戶只需通過鼠標的點擊、拖動等操作就可實現軟件的大部分功能。軟件具有強大的圖形功能,用戶可根據自己的習慣來布置網絡圖、選擇輸出的元素、布置輸出結果的位置、設置其線型、顏色以及字體等。本軟件已在浙江省和山東省幾個地區電網中投入運行,其使用的方便性與靈活性得到了用戶的好評。
本軟件是離線式的電力系統分析軟件,如將軟件與實時數據庫聯接,根據實時數據庫中的數據自動地繪制網絡圖,然后進行分析計算,可實現在線式的功能。這樣用戶無需進行網絡圖的繪制和數據的輸入工作,進一步簡化了調度人員的工作。
6 參考文獻
1 西安交通大學.電力系統計算.北京:水利電力出版社,1978
2 張小平.面向對象的程序設計及其在EMS軟件中的應用.電力系統自動化,1998,22(5):72~76
3 Zhou E Z.Object-Oriented Programming,C++andPower System Simulation.IEEE Trans on Power Sys-tems,1996,11(1)
4 Foley M,Bose A et al.An ObjectBased GraphicalUserInterface for Power System.IEEETranson Power Sys-tems,1993,8(1)