袁 灝, 張煒剛, 劉曉平
(1.合肥工業(yè)大學(xué) 計(jì)算機(jī)與信息學(xué)院,安徽 合肥 230009;2.山東大學(xué)(威海)機(jī)電與信息工程學(xué)院,山東 威海 264209)
智能電網(wǎng)的快速發(fā)展推動(dòng)了人們對(duì)電力系統(tǒng)可視化技術(shù)的不斷研究與應(yīng)用[1-3]。目前傳統(tǒng)的可視化系統(tǒng)都是基于C/S(客戶端/服務(wù)器)的構(gòu)架,使用OpenGL等桌面渲染技術(shù)進(jìn)行實(shí)現(xiàn)。這種方式部署與維護(hù)的成本很高,一般需要每一臺(tái)計(jì)算機(jī)安裝客戶端,出現(xiàn)問(wèn)題或版本更新時(shí)也需要安排專業(yè)人員到現(xiàn)場(chǎng)進(jìn)行處理,大大提高了安裝與維護(hù)成本。
基于Web的智能電網(wǎng)可視化系統(tǒng)使用B/S(瀏覽器/服務(wù)器)構(gòu)架,無(wú)需安裝和配置客戶端,僅需一個(gè)網(wǎng)址,經(jīng)由瀏覽器即可登錄系統(tǒng)。更新或維護(hù)系統(tǒng)時(shí),也僅需要更改服務(wù)器端即可。2010年上半年完成并發(fā)布的WebGL是一種3D繪圖標(biāo)準(zhǔn),它可以為HTML5中的Canvas提供硬件3D加速渲染,從而使用系統(tǒng)顯卡在瀏覽器中展示3D場(chǎng)景和模型,開(kāi)發(fā)人員也不需要再開(kāi)發(fā)用于網(wǎng)頁(yè)的渲染插件,滿足了電力系統(tǒng)可視化要避免使用插件的安全需求。
新技術(shù)與新框架的使用提高了系統(tǒng)開(kāi)發(fā)的困難和復(fù)雜性,為了很好地實(shí)現(xiàn)最終的需求目標(biāo)、縮短開(kāi)發(fā)周期、降低開(kāi)發(fā)成本,就需要對(duì)基于 Web的可視化系統(tǒng)有一個(gè)全面系統(tǒng)的了解,因此需求建模在整個(gè)系統(tǒng)的開(kāi)發(fā)過(guò)程中非常重要。本文首先進(jìn)行了系統(tǒng)邊界分析,再使用標(biāo)準(zhǔn)建模語(yǔ)言UML[4]對(duì)需求進(jìn)行建模,包括用例建模和交互建模的可視化建模方式。
系統(tǒng)邊界即系統(tǒng)包含的功能與系統(tǒng)不包含的功能之間的界限[5]。一般在系統(tǒng)分析階段定義,只有明確了系統(tǒng)邊界,才能繼續(xù)進(jìn)行下面的分析、設(shè)計(jì)等工作。明確的邊界分析有助于系統(tǒng)模塊的劃分,明確各個(gè)模塊的功能職責(zé)以及模塊間的交互過(guò)程。經(jīng)驗(yàn)證明大量的程序錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部,因此針對(duì)各種邊界進(jìn)行分析測(cè)試,可以減少錯(cuò)誤的發(fā)生。圖1所示為基于Web的可視化系統(tǒng)邊界場(chǎng)景示意圖。
圖1 基于Web的可視化系統(tǒng)邊界場(chǎng)景示意圖
整個(gè)可視化系統(tǒng)包括如下4個(gè)系統(tǒng)邊界:
(1)調(diào)度員邊界流程描述。系統(tǒng)通過(guò)瀏覽器向調(diào)度員展示場(chǎng)景,使其獲取當(dāng)前電網(wǎng)運(yùn)行狀態(tài)信息。
(2)維護(hù)人員邊界流程描述。維護(hù)人員對(duì)系統(tǒng)運(yùn)行過(guò)程中產(chǎn)生的錯(cuò)誤日志進(jìn)行分析處理,設(shè)置系統(tǒng)可視化參數(shù)。
(3)EMS總線/服務(wù)器邊界流程描述??偩€為系統(tǒng)提供當(dāng)前電網(wǎng)信息,系統(tǒng)進(jìn)而進(jìn)行數(shù)據(jù)的二次處理和格式化處理。服務(wù)器向系統(tǒng)提供用戶及電網(wǎng)信息,從而進(jìn)行權(quán)限驗(yàn)證、歷史重現(xiàn)。系統(tǒng)不用自己測(cè)量數(shù)據(jù),系統(tǒng)可以向服務(wù)器存儲(chǔ)用戶的基本信息,用戶也可以對(duì)系統(tǒng)設(shè)置信息。
(4)圖形編輯器邊界流程描述。圖形編輯器提供系統(tǒng)所需站內(nèi)圖和地理圖,系統(tǒng)從中獲取變電站、母線等圖元的位置、屬性信息。系統(tǒng)不用自己繪制場(chǎng)站圖和地理圖。
用例模型的概念最早由文獻(xiàn)[6]提出,是系統(tǒng)既定功能及系統(tǒng)環(huán)境的模型,可以作為客戶和開(kāi)發(fā)人員之間的契約。用例建模與需求的確定是緊密結(jié)合的,初步的用例圖可以根據(jù)頂層需求確定,進(jìn)一步的求精應(yīng)由更詳細(xì)的需求來(lái)驅(qū)動(dòng)。如果在開(kāi)發(fā)生命周期中用戶需求變了,這些變化應(yīng)首先體現(xiàn)在需求文檔中,接著在用例模型中出現(xiàn)[7]。
參與者和用例由對(duì)功能性需求的分析來(lái)確定,參與者并不是某人或事物的特定實(shí)例,而是系統(tǒng)外部的人或事物針對(duì)用例所扮演的角色[7]。根據(jù)系統(tǒng)邊界分析可知,可視化系統(tǒng)主要包含調(diào)度人員、維護(hù)人員和EMS總線/系統(tǒng)3個(gè)參與者,其在系統(tǒng)中的功能各不相同,因此需要根據(jù)不同的參與者建立不同的用例視圖,如圖2所示。
圖2 智能電網(wǎng)可視化系統(tǒng)用例建模
圖2a為面向調(diào)度員的用例模型,可視化系統(tǒng)通過(guò)瀏覽器向調(diào)度員提供多種電網(wǎng)數(shù)據(jù)展示方式。
圖2b為面向EMS總線/服務(wù)器的用例模型,設(shè)計(jì)時(shí)需要定義它與可視化系統(tǒng)的接口和規(guī)范,保證數(shù)據(jù)的準(zhǔn)確性和有效性。
圖2c為面向維護(hù)人員的用例模型,維護(hù)人員可以使用系統(tǒng)進(jìn)行參數(shù)設(shè)置并分析日志。
交互建模顯示了協(xié)作對(duì)象之間的事件(消息)順序,屬于需求分析的高級(jí)階段[7]?;赪eb的可視化系統(tǒng)交互模型如圖3所示。調(diào)度人員通過(guò)網(wǎng)址登錄系統(tǒng)界面,服務(wù)器根據(jù)輸入的用戶名密碼確定用戶權(quán)限。當(dāng)判斷用戶具備訪問(wèn)權(quán)限時(shí),頁(yè)面初始化JS文件,JS文件再以異步通訊的方式每隔一段時(shí)間向服務(wù)器請(qǐng)求電網(wǎng)數(shù)據(jù),獲取格式化的JSON數(shù)據(jù)后,經(jīng)由不同的圖元庫(kù)函數(shù)在瀏覽器中展示電網(wǎng)場(chǎng)景。
圖3 基于Web的可視化系統(tǒng)的交互建模
在需求模型驗(yàn)證過(guò)程中,使用上苑供電區(qū)域的線路負(fù)載率情況實(shí)現(xiàn)了基于Web的電網(wǎng)可視化原型系統(tǒng),如圖4所示。
圖4 上苑供電區(qū)域220kV線路負(fù)載率實(shí)例
通過(guò)AJAX技術(shù)[8]讓頁(yè)面每隔一段時(shí)間向服務(wù)器發(fā)出一次請(qǐng)求,服務(wù)器收到請(qǐng)求后分析當(dāng)前場(chǎng)景中包含的電力模型類別和屬性,再將要展示的電力數(shù)據(jù)信息格式化后通過(guò)以太網(wǎng)傳遞給瀏覽器,瀏覽器再調(diào)用圖元庫(kù)函數(shù)在Web頁(yè)面中更新展示的場(chǎng)景,使調(diào)度員能夠及時(shí)獲取當(dāng)前電網(wǎng)的運(yùn)行狀態(tài)。通過(guò)三維場(chǎng)景可以清晰地展示供電區(qū)域內(nèi)斷路器狀態(tài)、線路負(fù)載率、變壓器負(fù)載率、有功潮流、無(wú)功潮流以及區(qū)域總體狀態(tài)的實(shí)時(shí)信息,從而達(dá)到直觀展現(xiàn)電網(wǎng)運(yùn)行數(shù)據(jù),幫助調(diào)度員及時(shí)處理故障和減少電網(wǎng)事故損失的目的。經(jīng)過(guò)本實(shí)例的驗(yàn)證,該系統(tǒng)可以作為基于Web的電網(wǎng)數(shù)據(jù)可視化[9]需求分析階段的有效工具。
本文通過(guò)UML的可視化建模方法,對(duì)基于Web的智能電網(wǎng)可視化系統(tǒng)進(jìn)行了需求建模,并結(jié)合實(shí)例使用該模型進(jìn)行了具體需求過(guò)程分析驗(yàn)證,可幫助用戶和開(kāi)發(fā)人員了解模塊邊界和接口功能以及系統(tǒng)的交互通訊過(guò)程,減少需求錯(cuò)誤和需求缺失導(dǎo)致的時(shí)間及資金耗費(fèi)。進(jìn)一步的工作是添加電網(wǎng)擴(kuò)展模型,從而增加系統(tǒng)對(duì)開(kāi)發(fā)過(guò)程中新產(chǎn)生需求的適應(yīng)性和可復(fù)用性。
[1]Sun Y,Overbye T J.Visualizations for power system contingency analysis data[J].IEEE Trans on Power Systems,2004,19(11):1859-1866.
[2]Overbye T J,Rantanen E M,Judd S.Electric power control center visualization using geographic data views[C]//Proc Bulk Power System Dynamics and Control-VII,Charleston,SC,2007,8:19-24.
[3]Wiegmann D A,Essenberg G R,Overbye T J,et.al.Human factor aspects of power system flow animation[J]IEEE Trans on Power Systems,2005,20(8):1233-1240.
[4]Booch G,Rumbaugh J,Jacobson I.UML用戶指南[M].邵維忠,譯.北京:機(jī)械工業(yè)出版社,2001:68-72.
[5]祝世海,李勝利,孟 炯,等.基于用例模型的面向?qū)ο笮枨蠓治龇椒ǎ跩].哈爾濱理工大學(xué)學(xué)報(bào),2002,7(1):34-37.
[6]Marciniak J.Encyclopedia of software engineering[M].NY:John Wiley & Sons,1994:87-90.
[7]Maciaszek L A.需求分析與系統(tǒng)設(shè)計(jì)[M].馬素霞,譯.北京:機(jī)械工業(yè)出版社,2009:79-83.
[8]Serrano N,Arozegi J P.Ajax frameworks in interactive Web apps[J].IEEE Software,2007,24(9):12-14.
[9]Zhang Weigang,Yuan Hao,Wang Jiangong,et al.A Web-GL-based method for visualization of intelligent grid[C]//4th International Conference on Electric Utility Deregulation and Restructuring and Power Technologies,2011:1546-1548.