胡玉瑩,張繼馳
(1.國網(wǎng)遼寧省電力有限公司信息通信分公司,遼寧 沈陽 110006;2.國網(wǎng)遼寧省電力有限公司檢修分公司,遼寧 沈陽 110003)
隨著智能電網(wǎng)建設(shè)的推進,電網(wǎng)業(yè)務(wù)呈現(xiàn)多樣化發(fā)展趨勢。變電站作為電網(wǎng)的支撐節(jié)點,其監(jiān)控系統(tǒng)需要以更靈活、可靠的方式承載各類應(yīng)用功能,以滿足電網(wǎng)監(jiān)視、控制及管理需求。智能變電站一體化監(jiān)控系統(tǒng)部署了運行監(jiān)視、操作與控制、信息綜合分析與智能告警、運行管理、輔助應(yīng)用五大應(yīng)用功能,標準,但各廠家產(chǎn)品仍然沿用傳統(tǒng)軟件架構(gòu),平臺與應(yīng)用相互捆綁,應(yīng)用互不兼容,不符合當前平臺化、開放化的IT技術(shù)理念[1-4]。
其不足和問題主要體現(xiàn)為系統(tǒng)的封閉性和差異性,對于用戶來說使可供選擇的應(yīng)用少且互不兼容,部署運行新應(yīng)用時不可避免地對原有系統(tǒng)進行改造,增加了系統(tǒng)投入和運行不穩(wěn)定性。對于廠家來說,封閉體系導(dǎo)致在應(yīng)用新技術(shù)、新標準時往往需要對系統(tǒng)整體進行改動,產(chǎn)品版本變動頻繁,增加了軟件開發(fā)和管理成本。在電網(wǎng)運行管理方面,“無人值守”、“調(diào)控一體”需要變電站與主站能夠建立更為高效、靈活的業(yè)務(wù)協(xié)同互動機制,以充分利用變電站信息采集、監(jiān)視控制和設(shè)備管理等軟硬件資源,支撐各類主站業(yè)務(wù)的開展。
為此,本文在充分吸收智能變電站研究與應(yīng)用實踐成果基礎(chǔ)上,借鑒IT行業(yè)先進技術(shù)理念,對變電站監(jiān)控系統(tǒng)架構(gòu)、多業(yè)務(wù)類型數(shù)據(jù)存儲、服務(wù)訪問接口、應(yīng)用功能模塊化、平臺與應(yīng)用互操作測試等關(guān)鍵技術(shù)進行思考,構(gòu)建出先進、開放、規(guī)范的變電站監(jiān)控系統(tǒng)。為實現(xiàn)以上目的,本文提出的系統(tǒng)包含以下3個要素:基于開放平臺技術(shù)的系統(tǒng)架構(gòu),多源數(shù)據(jù)虛擬化存儲與訪問技術(shù)以及支持業(yè)務(wù)互換的應(yīng)用模塊化技術(shù)[5-7]。
傳統(tǒng)智能變電站的監(jiān)控系統(tǒng),均為廠家根據(jù)自家產(chǎn)品專門定制。因此變電站后臺系統(tǒng)應(yīng)用與平臺耦合度極高,后期無論是出現(xiàn)硬件問題需要更換設(shè)備,或系統(tǒng)應(yīng)用功能不足需要更新系統(tǒng),均只能繼續(xù)尋找原廠家重新進行定制,甚至可能出現(xiàn)因定制程度過高,以至于原廠家也無法在現(xiàn)有設(shè)備或系統(tǒng)基礎(chǔ)上進行升級。這使變電站的后期維護成本大大提高。
因此,本文提出了基于開放平臺技術(shù)的“平臺+APP”系統(tǒng)架構(gòu)(見圖1),建立了變電站監(jiān)控系統(tǒng)開放式的服務(wù)架構(gòu),采用基于“Integrated Design”設(shè)計理念,構(gòu)建包括架構(gòu)元件、聯(lián)結(jié)器、任務(wù)流的系統(tǒng)架構(gòu)設(shè)計方案。這使廠家可以輕松根據(jù)用戶需求,對監(jiān)控系統(tǒng)進行模塊化定制,并適配于大部分變電站設(shè)備平臺。
圖1 平臺+APP架構(gòu)
為實現(xiàn)這種開放式服務(wù)架構(gòu),平臺主體應(yīng)采用分布式設(shè)計結(jié)構(gòu),將系統(tǒng)按不同功能分層,各模塊與層級之間采用消息通信機制進行連接,模塊與層級本身的耦合度低,系統(tǒng)可以根據(jù)不同的應(yīng)用需求,通過配置實現(xiàn)各種模塊的增減,可裁減性強,系統(tǒng)架構(gòu)如圖2所示。
圖2 系統(tǒng)總體架構(gòu)
該系統(tǒng)架構(gòu)分為硬件層、操作系統(tǒng)層、通信總線層、數(shù)據(jù)庫層、公共服務(wù)層和應(yīng)用層。其核心系統(tǒng)是ORT(operation run time)底層架構(gòu)、通信軟總線、實時數(shù)據(jù)庫及其管理程序、基本SCADA處理模塊,這些模塊構(gòu)成一個最小的運行系統(tǒng)。在最小系統(tǒng)的基礎(chǔ)上可以按需要部署應(yīng)用模塊,包括前置通信模塊、操作圖形界面、AVQC、防誤閉鎖、五防操作票、程控、拓撲計算、智能告警等應(yīng)用。每個應(yīng)用之間可通過內(nèi)部消息總線進行消息傳遞,可獨立運行。每個應(yīng)用提供的子功能可通過系統(tǒng)功能組態(tài)靈活配置。
系統(tǒng)架構(gòu)的各部分通過支持多業(yè)務(wù)實時數(shù)據(jù)并發(fā)訪問的總線技術(shù)進行數(shù)據(jù)交換。本文使用面向?qū)ο蟮能浖幊碳夹g(shù),同時采用模型標準化和接口標準化的技術(shù)思想和理念,以模型驅(qū)動理論和分布式系統(tǒng)技術(shù)為基礎(chǔ),提出滿足監(jiān)控系統(tǒng)開放平臺中實時數(shù)據(jù)傳輸需求的高性能的標準軟總線,總線內(nèi)部架構(gòu)如圖3所示。
圖3 系統(tǒng)軟總線的內(nèi)部架構(gòu)
為了保證平臺的安全可靠,通過借鑒LDAP樹形結(jié)構(gòu)化層次化權(quán)限管理方案,建立不同業(yè)務(wù)應(yīng)用的專屬訪問權(quán)限,從數(shù)據(jù)層級對應(yīng)用訪問的權(quán)限進行管理和控制,對于實時控制類數(shù)據(jù)進行保護隔離,進一步提升平臺的安全性,保證各功能在其限定的權(quán)限內(nèi)工作。按模塊化管理思路首先用主程序、子程序、子過程等部分綜合描述軟件的主要結(jié)構(gòu),以及程序運行的具體流程、定義各部分之間的聯(lián)系以及數(shù)據(jù)輸入、輸出的方向。最終的結(jié)果是得到一系列以功能模塊為單位的算法描述,并以功能模塊為單位進行具體程序設(shè)計[8-9]。
對于一個高集成而又開放的系統(tǒng)來說,如何構(gòu)建一個合格的存儲、訪問方式是關(guān)鍵之一。一方面由于系統(tǒng)高度集成,本身體量較小,運行速度極快,系統(tǒng)的存儲與訪問技術(shù)要能夠符合系統(tǒng)高集成的特點,滿足數(shù)據(jù)存儲與訪問的實時性要求;另一方面要考慮到,由于系統(tǒng)是開放的,往往數(shù)據(jù)來源是多類型的,系統(tǒng)的的存儲與訪問技術(shù)要能兼容多種數(shù)據(jù)類型,并進行統(tǒng)一儲存,而在其他系統(tǒng)提出訪問需求時提供正確的數(shù)據(jù)格式。
為達成這種要求,本文基于虛擬化存儲的實時數(shù)據(jù)庫技術(shù),采用其歷史數(shù)據(jù)混合存儲能力實現(xiàn)變電站不同業(yè)務(wù)數(shù)據(jù)的存儲;為了達到數(shù)據(jù)高效訪問目標,使用了多重HASH數(shù)據(jù)訪問技術(shù),保證了開放平臺基礎(chǔ)數(shù)據(jù)的統(tǒng)一存儲與訪問。
實時數(shù)據(jù)庫系統(tǒng)管理保存在內(nèi)存緩沖區(qū)中電力系統(tǒng)運行的實時數(shù)據(jù),為了適應(yīng)多業(yè)務(wù)不同實時性要求的數(shù)據(jù)統(tǒng)一存儲,采用基于虛擬化存儲技術(shù)以提高系統(tǒng)的響應(yīng)速度和處理能力。大容量非實時數(shù)據(jù)的數(shù)據(jù)模型存于歷史庫,各應(yīng)用服務(wù)器(邏輯)上實時庫中的數(shù)據(jù)從歷史庫中下裝,下裝后即可為其他客戶端提供數(shù)據(jù)訪問服務(wù)。為了實現(xiàn)站內(nèi)數(shù)據(jù)采集與同步,需解決數(shù)據(jù)的多源性和通信協(xié)議的多樣性問題。變電站的通信對象包括間隔層各類IED,站控層的監(jiān)控主機、綜合應(yīng)用服務(wù)器、數(shù)據(jù)服務(wù)器以及調(diào)控主站。數(shù)據(jù)庫內(nèi)部及其與間隔層、站控層設(shè)備交互信息流如圖4所示[10]。
圖4 變電站數(shù)據(jù)庫采集與同步信息流
在進行數(shù)據(jù)讀取時,系統(tǒng)采用基于多重HASH的數(shù)據(jù)訪問技術(shù),使所有二次設(shè)備信息模型中的數(shù)據(jù)集都有一個唯一的索引標識,變電站監(jiān)控系統(tǒng)數(shù)據(jù)檢索可依托該索引建立快速的數(shù)據(jù)庫檢索機制,實現(xiàn)數(shù)據(jù)的快速訪問。
為使系統(tǒng)模塊化,實現(xiàn)系統(tǒng)應(yīng)用可以根據(jù)用戶需求靈活進行調(diào)整,本文使用基于反射機制的平臺服務(wù)接口以及動態(tài)可配置的多業(yè)務(wù)訪問模型,并將服務(wù)按照邏輯層次和部署層次進行劃分[11-12]。
反射機制允許程序在運行期能夠分析類結(jié)構(gòu)特征,并能操作程序內(nèi)部屬性,取得類的內(nèi)部信息??梢詣討B(tài)調(diào)整系統(tǒng)行為。標準服務(wù)接口技術(shù)是一種應(yīng)用程序體系結(jié)構(gòu),它將該體系結(jié)構(gòu)中所有功能都定義為相互獨立的服務(wù),這些服務(wù)通過定義明確的接口,以定義好的順序調(diào)用這些服務(wù)形成業(yè)務(wù)流程。
監(jiān)控系統(tǒng)開放平臺可以完成特定功能的服務(wù)調(diào)用來實現(xiàn)自身應(yīng)用的需求,再通過為這些服務(wù)定義的中間接口去實現(xiàn)集成。這其中接口部分的狀態(tài)監(jiān)測采用了反射機制,保證進程的狀態(tài)可監(jiān)視。平臺集成實時/歷史數(shù)據(jù)訪問、文件訪問等多種服務(wù)功能,提供統(tǒng)一的跨進程公共數(shù)據(jù)訪問接口。擴展應(yīng)用采用獨立進程,通過公共服務(wù)接口獲取平臺提供的數(shù)據(jù),并將處理的結(jié)果返回平臺,其系統(tǒng)結(jié)構(gòu)如圖5所示[10]。
圖5 系統(tǒng)結(jié)構(gòu)
在傳統(tǒng)的結(jié)構(gòu)化分析方法中存在反饋機制,高層模塊需要調(diào)用低層模塊,而低層模塊的改動會直接影響到高層模塊,迫使高層模塊也必須做出改動。而在良好的面向?qū)ο蟪绦蛟O(shè)計(OOP)中,高層模塊應(yīng)獨立于低層模塊,使模塊可以非常容易地被重用,不會出現(xiàn)底層模塊發(fā)生變化導(dǎo)致高層模塊難以起到應(yīng)有作用的情況。這也即框架設(shè)計的核心原則——依賴倒置原則(DIP)。在DIP原則中,每個較高層次都為它所需的服務(wù)提供一個抽象接口,低層模塊則利用這個抽象接口接收高層模塊的指令,每個高層模塊都通過該抽象接口與下一層進行間接連接。這樣高層就獨立于低層,對低層的修改不會影響到高層。監(jiān)控系統(tǒng)開放平臺內(nèi)集成實時/歷史數(shù)據(jù)訪問、文件訪問等多種服務(wù)功能,提供統(tǒng)一的跨進程公共數(shù)據(jù)訪問接口。高級應(yīng)用將作為一個獨立的進程,通過公共服務(wù)訪問接口獲取平臺提供的數(shù)據(jù),并將處理的結(jié)果返回到應(yīng)用平臺[13]。這是利用了設(shè)計模式(Design Patterns)中的工廠模式來實現(xiàn)。在具體實現(xiàn)時需要創(chuàng)建一個Dao Factory類,其功能是根據(jù)配置文件的設(shè)置,返回符合高層模塊需求的數(shù)據(jù)或反饋。對于高層模塊的運行來說,只是通過接口得到本身需要的數(shù)據(jù)或指令回饋,然后使用這些數(shù)據(jù)或指令向上繼續(xù)反饋,完成用戶所下指令。而接口得到的數(shù)據(jù)或反饋來自于哪個底層模塊,高層模塊并不清楚。通過這種方式,避免了讓高層模塊直接調(diào)用具體底層模塊,導(dǎo)致上下層模塊直接進行數(shù)據(jù)交換,而是將任務(wù)本身拆分,將其通過接口分別發(fā)送給底層模塊,實現(xiàn)模塊的松耦合,提高了底層模塊的重復(fù)利用性。如圖6所示。
圖6 基于可配置的數(shù)據(jù)訪問模型結(jié)構(gòu)
本文提出了一種先進、開放、規(guī)范的變電站監(jiān)控系統(tǒng),來滿足當前平臺化、開放化的IT技術(shù)理念。這種構(gòu)想可以極大程度上減少智能變電站用戶的經(jīng)濟、精力成本,并能夠靈活地根據(jù)用戶的需求,隨時進行應(yīng)用功能定制。此外,該系統(tǒng)集成度高,與其他平臺、系統(tǒng)兼容性好,適用于多種場合,可以進行大面積推廣應(yīng)用。