隨著(zhù)鐵路運輸速度的加快,實(shí)現鐵路電力調度的集中監控和指揮變得越來(lái)越關(guān)鍵。模擬板可以直接反映出各項設備和供電線(xiàn)路的運行狀態(tài),在電力調度作業(yè)中扮演了不可或缺的角色。然而,目前許多模擬板系統的設計仍舊采用了過(guò)程式編程語(yǔ)言,這導致了模型缺乏統一性,結果便是一旦需求展開(kāi)或部分修改,就不可避免地進(jìn)行大面積的重構和編程修改,從而增加了成本。
為了克服模擬板系統設計中的這些缺點(diǎn),本研究探索了采用面向對象的統一建模語(yǔ)言(UML)來(lái)進(jìn)行設計的原理、流程和方法,并將其與實(shí)際工程項目結合,進(jìn)行了具體的開(kāi)發(fā)和實(shí)踐應用。
1、UML設計原理
如今,許多尖端的應用系統開(kāi)發(fā)團隊在分析、設計、編程和測試的各個(gè)階段都已全面采納了面向對象的開(kāi)發(fā)方法,這一做法已經(jīng)成為軟件應用開(kāi)發(fā)領(lǐng)域的主導技術(shù)。統一建模語(yǔ)言(UML)僅是一套建模工具,且其設計思想與具體的編程語(yǔ)言無(wú)關(guān)?;谶@一特性,就像可以將UML模型轉換為源代碼一樣,源代碼也可以被還原為UML模型,這個(gè)過(guò)程通常被稱(chēng)為“逆向工程”。
1.1 UML語(yǔ)言介紹
在1997年,統一建模語(yǔ)言(UML)被提交給了對象管理組(OMG),并被接受作為面向對象分析和設計的標準建模語(yǔ)言。UML自那時(shí)起不斷地在進(jìn)化和改進(jìn)中,OMG發(fā)布的較新版是UML 2.0。在美國和西歐等地區,大批軟件開(kāi)發(fā)機構已經(jīng)開(kāi)始采用UML進(jìn)行系統建模,而在國內,也有越來(lái)越多的開(kāi)發(fā)組織在探索和采納這種做法。
UML是一種專(zhuān)為軟件密集型系統的可視化、規范化、建構和文檔化而設計的建模語(yǔ)言,它主要被應用于系統的分析和設計階段。UML的能力在于它能夠以前所未有的方式表達系統模型,它提供了一種比以往任何面向對象的分析和設計方法都更為強大的系統表達能力。
UML特別適合于面向對象的分析和設計階段的系統建模,能夠深刻地描述和表達系統的結構與行為。UML的描述可以分為三個(gè)主要的視圖領(lǐng)域:結構視圖、行為視圖和模型管理視圖。其中,結構視圖包含了用例圖、類(lèi)圖、對象圖、構件圖和部署圖;行為視圖涵蓋了順序圖、協(xié)作圖、狀態(tài)圖和活動(dòng)圖;而模型管理視圖則包括了模型、包和子系統等方面的描述。通過(guò)這些視圖和圖表,UML提供了一套全面的工具集,以支持復雜系統的分析和設計。
1.2 模型與設計
(1)增量迭代開(kāi)發(fā)模式
在面向對象的方法論中,基本的理念是以天然的分區對問(wèn)題域進(jìn)行劃分,構建符合人類(lèi)認知習慣的問(wèn)題領(lǐng)域模型,以實(shí)現對實(shí)體的結構和行為進(jìn)行仿真。這樣的方法意在讓設計工作更加貼合現實(shí)世界的情況,進(jìn)而打造出模塊化、可復用且易于維護的系統架構。
利用UML建模工具的面向對象系統,可以應用一種遞增式的迭代開(kāi)發(fā)模型,其工作流程分為以下幾個(gè)階段:1)需求收集,包含系統的基本功能要求及對計算機系統的具體需求;2)需求分析,任務(wù)是識別并描述系統的全部需求,以用例圖的形式體現系統的外部功能需求;3)系統設計,此階段的目標是拓展和精細化分析階段的模型,設計過(guò)程可以從序列圖入手,利用序列圖展現用例的行為序列,其中每個(gè)消息都對應類(lèi)的操作或狀態(tài)的轉化;4)系統實(shí)現,即編碼階段,將設計轉化為程序代碼;5)系統測試,編碼完成后對系統進(jìn)行測試,以驗證其功能的正確性。
(2)功能用例
模擬板系統的核心功能包括處理批量遙信、單個(gè)遙信的正常變位與事故變位、模擬板的復位、遙信全合閘亮屏、遙信全分閘暗屏、遙信燈閃光、亮盤(pán)運行、暗盤(pán)運行、停止閃光、調光操作、時(shí)間顯示、事故停表、安全生產(chǎn)日數的顯示、預告與事故聲音警報、單個(gè)遙信的閃光控制等。以下是該系統的功能用例圖的描述。
(3)交互設計
采用JAVA分布式技術(shù),將模擬板的實(shí)體設計為一個(gè)分布式對象,命名為MMPApp,并將其綁定至模擬板控制機的端口上進(jìn)行發(fā)布和訪(fǎng)問(wèn)接口提供,以便與調度員工作站的遠程動(dòng)作系統進(jìn)行交互。此外,該對象也能夠實(shí)現與實(shí)時(shí)數據庫間的信息交互。
模擬板組件主要通過(guò)遠程調用與遠動(dòng)調度實(shí)時(shí)數據庫組件和調度人機接口組件進(jìn)行交互。實(shí)時(shí)數據庫組件用于提供常規遙信、遙測、事故觸發(fā)、GPS校時(shí)、記錄安全生產(chǎn)天數等信息。而調度人機接口組件則提供多級調光、事故清閃、報警復位、全屏操作等信息的功能。
2主要程序流程與技巧
2.1 基本遙信數據顯示過(guò)程的優(yōu)化描述
利用線(xiàn)程池技術(shù),當線(xiàn)程激活時(shí),流程首先在模擬板地址數據庫中定位顯示地址。隨后,該流程將從遠程實(shí)時(shí)數據庫中檢索要顯示的數據,并組織這些數據成為報文來(lái)驅動(dòng)對應的信號燈。
在模擬板通信程序啟動(dòng)期間,批量報文會(huì )被構建并發(fā)送以初始化顯示。系統穩定運行后,對于收到的單個(gè)遙信,會(huì )根據其狀態(tài)是正常還是事故,分別發(fā)送相應的單個(gè)遙信正?;蚴鹿首兾粓笪?。安全天數和GPS時(shí)間同步報文也采取類(lèi)似的發(fā)送機制。
2.2 供電網(wǎng)絡(luò )拓撲狀態(tài)指示流程的簡(jiǎn)化描述
傳統的遠動(dòng)系統著(zhù)重于四遙(遙測、遙信、遙控、遙調)功能,并通過(guò)RTU直接傳輸現場(chǎng)信息以反映設備狀態(tài)。隨著(zhù)調度自動(dòng)化系統的演進(jìn)以及用戶(hù)需求的增長(cháng),調度模擬板系統需要顯示供電網(wǎng)絡(luò )的拓撲狀態(tài),這為調度員提供了很大的便利以確認哪些線(xiàn)路是通電或斷電狀態(tài)。
由于線(xiàn)路狀態(tài)不是通過(guò)傳感器采集而是通過(guò)計算得出的,這些數據稱(chēng)為拓撲量。在實(shí)時(shí)數據庫的拓撲量計算模塊中完成所有線(xiàn)路狀態(tài)的計算后,結果被存儲在內存中的實(shí)時(shí)數據庫。模擬板系統隨后組織這些計算結果成報文,發(fā)送至模擬板進(jìn)行解析和顯示。實(shí)時(shí)數據的轉發(fā)、計算和協(xié)作過(guò)程如圖4所示。
模擬板系統提供了八級調光功能,從一級(較暗)到八級(較亮)。默認情況下,系統在三級亮度下啟動(dòng)。白天通常使用三級亮度,但在夜間,由于三級亮度可能過(guò)于刺眼,調度員通常會(huì )將屏幕調至暗盤(pán)模式以降低亮度。
2.3 事故變位閃爍和清除閃爍過(guò)程的概述
一旦發(fā)生事故,實(shí)時(shí)數據庫會(huì )自動(dòng)向MNPApp對象發(fā)送影響的屏號和站號信息。收到這些數據后,MNPApp對象會(huì )立刻暫停相應屏幕的遙信線(xiàn)程,并以?xún)?yōu)先級順序發(fā)送事故報文、事故停止報文,并激活事故閃光和聲音報警。如果屏幕處于暗盤(pán)模式,它會(huì )立即被點(diǎn)亮至默認的三級亮度。事故處理完畢后,遙信線(xiàn)程會(huì )自動(dòng)恢復,等待調度員進(jìn)行后續的事故處理。
當調度員發(fā)出事故恢復指令時(shí),MNPApp對象同樣會(huì )暫停相應屏幕的遙信線(xiàn)程,并以?xún)?yōu)先級順序發(fā)送事故恢復報文、時(shí)間同步報文以及用于清除事故狀態(tài)指示的報文。這些處理完成后,遙信線(xiàn)程會(huì )自動(dòng)恢復。
3工程開(kāi)發(fā)與應用
3.1 工程背景改寫(xiě)
西安鐵路局電力調度中心的隴海線(xiàn)歷來(lái)依賴(lài)日本日立公司提供的遠動(dòng)監控系統進(jìn)行運行管理。但由于鐵路運輸業(yè)務(wù)的快速發(fā)展,以及對速度提升和運輸能力擴增的需求,原系統的一些部件日益難以更換和維護。為了適應這些新的要求,西安鐵路局決定采用新一代電氣化鐵道遠動(dòng)自動(dòng)化系統,并對既有的電力調度模擬板系統進(jìn)行徹底的升級改造。本項目就是在現有遠動(dòng)實(shí)時(shí)數據庫系統的基礎上,研發(fā)了一套先進(jìn)的模擬板系統。
3.2 系統功能改寫(xiě)
新系統包括一個(gè)在模擬板控制機上運行的通訊程序,它負責實(shí)時(shí)數據庫與配備N(xiāo)SMJ型智能接口盒的模擬板之間的串行通信。系統不僅能實(shí)時(shí)更新遙信和遙測數據,并在模擬板上直觀(guān)地展示牽引供電系統的接線(xiàn)圖以及線(xiàn)路的電流狀態(tài),還能進(jìn)行事故報警和信號閃爍指示。此外,操作人員可以通過(guò)調度主機對模擬板執行屏幕控制,包括全屏點(diǎn)亮或熄滅、事故閃爍和清除閃爍、屏幕亮度的多級調節,以及在遠動(dòng)系統發(fā)生事故時(shí)自動(dòng)激活全屏點(diǎn)亮等多個(gè)功能。
3.3 投入運營(yíng)改寫(xiě)
在實(shí)際的運行環(huán)境中,模擬板系統采用了多屏幕的分布式布局和安裝策略。各模擬板通過(guò)智能接口盒利用RS232接口與通信終端服務(wù)器相連,該服務(wù)器負責將串行通信數據轉換為網(wǎng)絡(luò )通信數據,如圖6所示。三個(gè)操作臺分別控制1#屏、2#屏和3#屏。通過(guò)配置有多串口功能的DeviceMaster終端服務(wù)器,模擬板控制機能夠同時(shí)與三個(gè)模擬板進(jìn)行通信,實(shí)現數據的實(shí)時(shí)顯示和控制操作。
UML是制定系統架構圖的標準化語(yǔ)言。它使得構建復雜系統的視覺(jué)模型成為可能,不僅支持功能用例的建模,還可以用于精細化的業(yè)務(wù)流程建模。利用UML進(jìn)行反向工程有助于確保模型與代碼保持同步。UML設計的核心技術(shù)在于使用基于用例驅動(dòng)的UML增量迭代模型方法進(jìn)行設計。本研究所設計的模擬板系統,改善了在復雜系統中存在的用例數量龐大、用例間交互復雜和工作量大等問(wèn)題,減少了用例生成的重復性。實(shí)現的關(guān)鍵流程包括基本遙信數據顯示、供電網(wǎng)絡(luò )拓撲的光帶展示、模擬板亮度調節控制、以及事故指示閃爍和清除等流程。
采用UML迭代模型進(jìn)行改進(jìn)的鐵路電力調度模擬板系統已投入使用很過(guò)兩年。在這段時(shí)間內,虢鎮牽引變電所的饋出線(xiàn)路進(jìn)行了改造。由于系統采用了UML設計,即使在進(jìn)行物理改造時(shí),模擬板系統的軟件也無(wú)需進(jìn)行任何調整,這證明了UML設計方法的統一性和可持續性,且實(shí)際應用效果證明其優(yōu)勢顯著(zhù)。