蔡杰
基于UML的水電廠監(jiān)控系統(tǒng)培訓(xùn)仿真軟件建模
蔡杰
(南瑞集團(tuán)公司(國(guó)網(wǎng)電力科學(xué)研究院),江蘇 南京 210003)
隨著自動(dòng)化技術(shù)的不斷發(fā)展,水電廠計(jì)算機(jī)監(jiān)控系統(tǒng)業(yè)務(wù)日趨復(fù)雜并不斷變化,這對(duì)培訓(xùn)仿真系統(tǒng)的建模工具通用性提出了更高的要求。針對(duì)這一要求,本文在現(xiàn)有建模工具的基礎(chǔ)上,應(yīng)用UML技術(shù),形成通用性更強(qiáng)的基于UML的培訓(xùn)仿真軟件建模工具。
水電廠;監(jiān)控系統(tǒng);培訓(xùn)仿真建模;UML
隨著水電控制理論與計(jì)算機(jī)技術(shù)的不斷發(fā)展,水電站計(jì)算機(jī)監(jiān)控系統(tǒng)業(yè)務(wù)日趨復(fù)雜。業(yè)務(wù)的復(fù)雜與多變對(duì)水電廠培訓(xùn)仿真系統(tǒng)的兼容性與擴(kuò)展性提出了更高的要求。如何應(yīng)對(duì)業(yè)務(wù)的不斷變化,如何提高培訓(xùn)仿真系統(tǒng)建模效率,成為水電廠計(jì)算機(jī)監(jiān)控系統(tǒng)培訓(xùn)仿真軟件發(fā)展首先需要克服的困難。
統(tǒng)一建模語(yǔ)言(UnifiedModelingLanguage, UML)是一種可視化建模語(yǔ)言,它能讓系統(tǒng)構(gòu)造者用標(biāo)準(zhǔn)的、易于理解的方式建立起能夠表達(dá)他們想象力的系統(tǒng)藍(lán)圖,并且提供了便于不同人之間有效地共享和交流設(shè)計(jì)結(jié)果的機(jī)制,定義了一種抽象的用來(lái)描述軟件系統(tǒng)結(jié)構(gòu)和行為的語(yǔ)言,還定義了一種標(biāo)準(zhǔn)的用來(lái)建立模型元素的圖形符號(hào),是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語(yǔ)言。UML中定義了兩類(lèi)圖:
一類(lèi)是靜態(tài)圖,包括:
類(lèi)圖——闡述系統(tǒng)的靜態(tài)設(shè)計(jì)視圖,包括包、類(lèi)、接口、協(xié)作以及之間的關(guān)系。
對(duì)象圖——從真實(shí)的實(shí)例或原型的角度,給出類(lèi)圖中實(shí)例的瞬態(tài)圖。
組件圖——闡述系統(tǒng)的靜態(tài)實(shí)現(xiàn)視圖,顯示一組組件和他們之間的關(guān)系。組件代表的是模型中邏輯抽象的物理實(shí)施,例如類(lèi)和他們的交互。
配置圖——闡述一個(gè)系統(tǒng)中物理結(jié)點(diǎn)的鏈接。結(jié)點(diǎn)是為執(zhí)行一個(gè)或多個(gè)組件提供物理操作環(huán)境的計(jì)算資源。
另一類(lèi)是動(dòng)態(tài)圖,包括:
用例圖——通過(guò)闡述一組用例和參與者之間的關(guān)系,為系統(tǒng)、子系統(tǒng)或類(lèi)的行為建立模型。
序列圖——通過(guò)介紹消息的時(shí)間順序,闡述了對(duì)象間的相互關(guān)系。這些對(duì)象是類(lèi)的典型實(shí)例,可以描述其他的分類(lèi)者,如執(zhí)行者、組件或節(jié)點(diǎn)。
狀態(tài)圖——描述一個(gè)狀態(tài)機(jī),包括狀態(tài)、過(guò)渡、時(shí)間和活動(dòng)。這些圖最常用于對(duì)象順序行為建模。
活動(dòng)圖——顯示一個(gè)系統(tǒng)的活動(dòng),活動(dòng)到活動(dòng)連續(xù)流或分支流,以及執(zhí)行這些活動(dòng)或由這些活動(dòng)產(chǎn)生的對(duì)象。
針對(duì)培訓(xùn)仿真軟件的實(shí)際情況,采用UML標(biāo)準(zhǔn)中滿(mǎn)足培訓(xùn)仿真軟件建模需要的建模方式實(shí)現(xiàn)軟件建模,可以有效提高軟件的易用性,使軟件更加適應(yīng)監(jiān)控系統(tǒng)不斷變化的業(yè)務(wù)環(huán)境。
3.1業(yè)務(wù)分析與模型分類(lèi)
水電廠監(jiān)控系統(tǒng)培訓(xùn)仿真軟件的主要功能在于模擬水電廠現(xiàn)場(chǎng)設(shè)備的運(yùn)行情況,因此建立的模型必須反應(yīng)水電廠現(xiàn)場(chǎng)生產(chǎn)設(shè)備的物理邏輯與關(guān)系。主要模塊包括:水輪機(jī)與調(diào)速系統(tǒng)模型、發(fā)電機(jī)模型、勵(lì)磁系統(tǒng)模型、水循環(huán)系統(tǒng)模型、油循環(huán)系統(tǒng)模型、風(fēng)系統(tǒng)模型、開(kāi)關(guān)與刀閘模型、開(kāi)關(guān)站潮流模型。這些模型需要通過(guò)建模工具描述的邏輯大致可以分為兩類(lèi):
1)模型內(nèi)部邏輯:激勵(lì)與反饋,即根據(jù)某些輸入信號(hào),產(chǎn)生特定輸出,如開(kāi)關(guān)設(shè)備,當(dāng)收到控制信號(hào)輸入后,模型應(yīng)根據(jù)設(shè)定判斷條件是否滿(mǎn)足,如果條件滿(mǎn)足給出合閘信號(hào)或者分閘信號(hào),如果條件不滿(mǎn)足給予報(bào)警提示。
2)模型間的物理關(guān)系:描述模型對(duì)應(yīng)實(shí)際設(shè)備間的物理關(guān)系,比如開(kāi)關(guān)站潮流模型,需要配置開(kāi)關(guān)站內(nèi)機(jī)組、開(kāi)關(guān)、刀閘間的連接信息。
根據(jù)培訓(xùn)仿真軟件所需要描述的物理涵義特點(diǎn),我們?cè)赨ML標(biāo)準(zhǔn)中挑選配置圖與活動(dòng)圖來(lái)實(shí)現(xiàn)軟件建模功能。
3.2配置圖建模
我們采用配置圖來(lái)表達(dá)模型對(duì)應(yīng)實(shí)際設(shè)備間的物理關(guān)系。部署圖描述的是系統(tǒng)運(yùn)行時(shí)的結(jié)構(gòu),展示了硬件的配置及其軟件如何部署到網(wǎng)絡(luò)結(jié)構(gòu)中。部署圖包含以下元素:
結(jié)點(diǎn)(Node):結(jié)點(diǎn)是系統(tǒng)存在與運(yùn)行時(shí)的代表,是實(shí)際資源的物理元素,以開(kāi)關(guān)站潮流為例,結(jié)點(diǎn)可以代表開(kāi)關(guān)、刀閘;
結(jié)點(diǎn)類(lèi)型(NodeStereotypes):結(jié)點(diǎn)的屬性,如開(kāi)關(guān)站潮流模型中,結(jié)點(diǎn)可能是開(kāi)關(guān)、刀閘;
結(jié)點(diǎn)實(shí)例(NodeInstance):結(jié)點(diǎn)類(lèi)型實(shí)例化就形成一個(gè)具體的結(jié)點(diǎn),結(jié)點(diǎn)類(lèi)型與結(jié)點(diǎn)實(shí)例之間存在繼承關(guān)系;
連接(Association):結(jié)點(diǎn)之間的連線(xiàn)表示實(shí)際物理設(shè)備之間的路徑,這個(gè)路徑稱(chēng)為連接。
下面以開(kāi)關(guān)站潮流模型為例,采用配置圖建模組態(tài)工具,描述水電廠開(kāi)關(guān)站內(nèi)各個(gè)設(shè)備間的物理關(guān)系,如圖1:
可以看出,配置圖1中存在斷路器、刀閘、地刀等類(lèi)型(結(jié)點(diǎn)類(lèi)型),用戶(hù)可以在圖形界面中將特定結(jié)點(diǎn)類(lèi)型實(shí)例化(形成結(jié)點(diǎn)實(shí)例),然后通過(guò)線(xiàn)段(連接)將結(jié)點(diǎn)物理關(guān)系描述出來(lái)。在未使用UML建模工具前,用戶(hù)需要自己將結(jié)點(diǎn)間物理關(guān)系形成關(guān)系矩陣,存放到文件中,作為后臺(tái)程序的參數(shù)輸入。一旦開(kāi)關(guān)站設(shè)備進(jìn)行改造,原有設(shè)備物理結(jié)構(gòu)發(fā)生變化,關(guān)系矩陣的修改工作將非常復(fù)雜。在使用UML建模工具后,開(kāi)關(guān)站設(shè)備間的物理關(guān)系可以方便直觀的在配置圖上進(jìn)行修改,提高了建模工作效率,增強(qiáng)系統(tǒng)可維護(hù)性。
圖1 開(kāi)關(guān)站內(nèi)各個(gè)設(shè)備間的物理關(guān)系
3.3活動(dòng)圖建模
活動(dòng)圖是UML用于對(duì)系統(tǒng)的動(dòng)態(tài)行為建模的一種常用工具,它描述活動(dòng)的順序,展現(xiàn)從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的控制流。活動(dòng)圖在本質(zhì)上是一種流程圖?;顒?dòng)圖著重表現(xiàn)從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的控制流,是內(nèi)部處理驅(qū)動(dòng)的流程?;顒?dòng)圖包含如下元素:
活動(dòng)狀態(tài):表示在工作流程中執(zhí)行某個(gè)活動(dòng)或步驟。
轉(zhuǎn)移:表示各種活動(dòng)狀態(tài)的先后順序。這種轉(zhuǎn)移可稱(chēng)為完成轉(zhuǎn)移。它不同于一般的轉(zhuǎn)移,因?yàn)樗恍枰黠@的觸發(fā)器事件,而是通過(guò)完成活動(dòng)(用活動(dòng)狀態(tài)表示)來(lái)觸發(fā)。
同步:用于顯示平行分支流。同步示意圖使您能夠顯示業(yè)務(wù)用例的工作流程中的并行線(xiàn)程。
下面以開(kāi)關(guān)設(shè)備為例,實(shí)現(xiàn)活動(dòng)圖組態(tài)工具,描述開(kāi)關(guān)設(shè)備的操作邏輯,如圖2所示:
圖2 圖形化組態(tài)界面
建模工具提供圖形化組態(tài)界面,圖形界面中每一個(gè)方塊都是一個(gè)活動(dòng);不同邏輯下的活動(dòng)放在平行的分支下,描述邏輯間的并行關(guān)系;通過(guò)活動(dòng)間帶箭頭的連線(xiàn)(轉(zhuǎn)移)來(lái)表達(dá)邏輯上的先后順序。在沒(méi)有提供UML建模工具前,用戶(hù)需要手工修改代碼以實(shí)現(xiàn)模型內(nèi)部的邏輯,這種方式不直觀,后期維護(hù)與修改非常麻煩。通過(guò)UML方式進(jìn)行建模,能夠清晰的表達(dá)設(shè)備內(nèi)某個(gè)邏輯活動(dòng)的順序關(guān)系,提高用戶(hù)易用性,降低維護(hù)成本。
3.4UML建模工具軟件架構(gòu)
采用基于UML的建模工具完成建模,軟件結(jié)構(gòu)不需要做大量的調(diào)整,只需增加相應(yīng)的建模工具即可。其軟件結(jié)構(gòu)主要包含活動(dòng)圖和配置圖兩個(gè)模塊,分別用于描述模型運(yùn)行邏輯的不同方面,活動(dòng)圖模塊包括活動(dòng)管理、順序管理和同步管理模塊,分別管理UML活動(dòng)圖中活動(dòng)所執(zhí)行的操作、活動(dòng)的分支與順序關(guān)系、邏輯并行關(guān)系。配置圖模塊包括結(jié)點(diǎn)管理、連線(xiàn)管理,分別負(fù)責(zé)結(jié)點(diǎn)類(lèi)型與實(shí)例化、結(jié)點(diǎn)間關(guān)系描述。同時(shí)提供保存、錯(cuò)誤檢查、樹(shù)形索引、搜索與替換及權(quán)限等公共組件,最后制作好的UML圖形可以通過(guò)統(tǒng)一的編譯接口形成支撐平臺(tái)可以加載的參數(shù)文件。支撐平臺(tái)啟動(dòng)后,將會(huì)持續(xù)的按照參數(shù)文件中定義的活動(dòng)圖邏輯順序以及配置圖物理關(guān)系模擬水電廠實(shí)際設(shè)備運(yùn)行情況。
通過(guò)將UML技術(shù)應(yīng)用于計(jì)算機(jī)監(jiān)控系統(tǒng)培訓(xùn)仿真軟件,可以顯著增強(qiáng)系統(tǒng)的易用性、擴(kuò)展性,使軟件更加適應(yīng)監(jiān)控系統(tǒng)不斷變化的業(yè)務(wù)環(huán)境,具有深遠(yuǎn)的實(shí)用價(jià)值。
[1]余濤,鮑婕,鄧啟威,等.基于純軟件模式的全范圍水電站運(yùn)行人員仿真系統(tǒng)[J].系統(tǒng)仿真學(xué)報(bào),2002,14(07).
[2]劉兵,張龍妙,邵開(kāi)宏,等.新安江水電廠仿真系統(tǒng)的開(kāi)發(fā)[J].華東電力,2003(05).
[3]薛必根.中小型水電廠計(jì)算機(jī)仿真系統(tǒng)[J].廣東水利水電,1999(04).
[4]DL/T1024-2006水電仿真機(jī)技術(shù)規(guī)范[S].
TP311
B
1672-5387(2016)08-0055-03
10.13599/j.cnki.11-5130.2016.08.016
2016-06-29
蔡杰(1983-),男,電力工程師,主要研究方向:水電廠自動(dòng)化。