引言
圖模庫一體化是當前EMS重要的建模技術,該建模方式可大大減輕用戶生成和維護網(wǎng)絡拓撲關系的工作量,將傳統(tǒng)PAS系統(tǒng)的網(wǎng)絡拓撲等功能,方便地移植到SCADA系統(tǒng)上來,是調(diào)度自動化系統(tǒng)及PAS分析軟件實用化的重要基礎。圖模庫一體化輸出的文件采用SVG格式,包括設備的圖形化抽象、設備狀態(tài)、設備連接關系、設備臺賬信息、設備運行信息等。
1系統(tǒng)設計
1.1技術架構
本項目基于JavaEE平臺構建,包括Java容器Apache/Tomcat服務器以及中間件Spring+IBatiS+DwR。Spring是為了解決企業(yè)應用開發(fā)的復雜性而創(chuàng)建的,它是一個輕量級的控制反轉(IoC)和面向切面(AoP)的JavaBean容器框架。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情,具有輕便、易使用、易擴充、用途廣泛等特點。
IBatiS是對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲地使用對象編程思維來操縱數(shù)據(jù)庫。iBatiS摒除了大部分的JDBC代碼、手工設置參數(shù)和結果集重獲,只使用簡單的XML和注解來配置和映射基本數(shù)據(jù)類型、Map接口和PoJo到數(shù)據(jù)庫記錄。相對Hibernate和ApacheoJB等"一站式"oRM解決方案而言,iBatiS是一種"半自動化"的oRM實現(xiàn),它使得程序的持久化過程變得可以重用、可配置、易于編寫和管理,而且也易于調(diào)試。
DwR是RPC技術,它通過反射等技術將后臺的Java服務類直接暴露給前臺JavaScript,使得前臺JS代碼調(diào)用后臺的Java方法就如同直接調(diào)用JS方法一樣,直截了當,簡單方便。
1.2數(shù)據(jù)處理流程
軟件系統(tǒng)把大量的圖模一體SVG文件解析出來,生成一個龐大的設備樹,樹的層次簡單分為:茂名局一變電站一饋線一支線/設備一設備。軟件系統(tǒng)按照數(shù)據(jù)庫表結構要求,逐一生成每個設備的參數(shù)信息,插入到對應的數(shù)據(jù)表中。軟件系統(tǒng)基于數(shù)據(jù)庫表來導出需要的設備臺賬XLS文件,或者提供各種設備臺賬查詢及統(tǒng)計功能。
這里除了需要1.1所列的技術框架支持外,還主要用到EXcel的JavaAPI接口如POI/SAX技術,以產(chǎn)生輸出各種臺賬XLS文件。如桿塔設備,由于數(shù)據(jù)量龐大,需要使用SAX技術,以避免Java由于行數(shù)過多而導致的處理異常。
數(shù)據(jù)處理流程如圖1所示。
圖1數(shù)據(jù)處理流程圖
1.3單線圖SVG文件分析
單線圖SVG文件完整的描述參見《結構化圖模一體SVG單線圖格式規(guī)范》,其與SVG標準嚴格兼容,不增加任何私有標記,能通過SVG標準的嚴格校驗,可由通用的標準SVG顯示軟件(如AdobeIlluStrator)正常顯示。單個SVG圖形文件中包含拓撲信息、設備信息與自動化信息,不存在圖模不一致問題。圖形導入時可自動建立自動化系統(tǒng)數(shù)據(jù)庫信息點表。設備參數(shù)中包含GPS坐標,可實現(xiàn)地理沿布圖的自動繪制。
SVG文件描述的核心就是設備,包括容器設備和簡單設備。容器設備是指包含其他設備的設備,有饋線、支線、環(huán)網(wǎng)柜、分支箱、開關站、配電房、箱變、間隔、母聯(lián)等:其中環(huán)網(wǎng)柜、分支箱、開關站、配電房、箱變這五種容器設備又特別稱為"組合設備"。與容器設備對應,簡單設備指不包含其他電氣設備的設備,有桿塔、導線、開關、刀閘、地刀、熔斷器、電流互感器、電壓互感器、配變、電站、母線等。除了容器設備和簡單設備,還有一種特殊的設備是附屬設備,它們沒有電氣連接關系,而是包含在其他設備中的設備,如故障指示器、數(shù)據(jù)終端、量測等。
以下為幾個容器設備/簡單設備在SVG文件中的保存格式說明:
1.3.1刀閘
刀閘的供電分局、變電所、變電站信息要從刀閘所屬的頂層節(jié)點一饋線里解析獲得,支線信息從屬支線節(jié)點里獲得(直接屬于饋線的刀閘,支線名稱用饋線名)。在刀閘元素<metadata>子節(jié)點里可以解析獲得刀閘名稱、設備編號、運行狀態(tài)等信息。
1.3.2桿塔
桿塔的供電分局、變電所、變電站信息要從桿塔所屬的頂層節(jié)點一饋線里解析獲得,支線信息從屬支線節(jié)點里獲得(直接屬于饋線的桿塔,支線名稱用饋線名)。在桿塔元素<metadata>子節(jié)點里可以解析獲得桿塔名稱、運行狀態(tài)、經(jīng)緯度等信息。
1.3.3支線
支線是圖模一體文件中一個重要的元素,設備的層次結構通過支線這個元素來描述實現(xiàn)。支線元素節(jié)點里的子節(jié)點是支線上的設備,排列順序就是設備的連接次序、連接關系。支線里還會包括支線,依次遞歸。
支線元素的所屬支線信息,從SVG文件支線節(jié)點的上層支線元素獲得,若上層是饋線,則所屬支線名稱用饋線名。其他信息與上面設備相似。
1.4數(shù)據(jù)庫設計
數(shù)據(jù)庫表包括變電站表、線路表(饋線/支線)、組合電器表(環(huán)網(wǎng)柜/分支箱/開關站/配電房/箱變)、分解箱表(環(huán)網(wǎng)柜/分支箱)、開關表、刀閘表、配變表、母線表、導線表等等。數(shù)據(jù)庫字段設計如圖2所示。
2系統(tǒng)功能
2.1登錄與用戶管理
(1)角色管理:系統(tǒng)提供角色管理模塊,將用戶分成不同的類別等級,以賦予不同用戶不同的操作權限。
(2)用戶管理:用戶管理提供系統(tǒng)訪問用戶的創(chuàng)建、修改、刪除功能。
(3)私有信息管理:該模塊給用戶提供便利的修改密碼的功能。用戶密碼通過加密,保存到數(shù)據(jù)庫用戶表里。
(4)用戶登錄:系統(tǒng)訪問的入口。
2.2主界面
系統(tǒng)主界面提供工具軟件的總入口和功能總體展示,包括菜單工具條以及模塊功能介紹信息塊等。
2.3GIS圖模文件上傳
用戶指定SVG文件目錄,將該目錄下的所有SVG上傳至服務器。系統(tǒng)生成的GIS圖模文件數(shù)量眾多,全部文件或大量文件上傳用時太長,系統(tǒng)支持按壓縮方式上傳,壓縮文件上傳服務器后系統(tǒng)再解壓到指定目錄下。另外,也支持少量幾個文件的上傳功能。
服務器端包括兩個目錄,一個目錄是全部文件的目錄A,另一個是本次上傳的文件目錄B。每次上傳文件,將目錄B所有文件刪除,再把文件拷貝到該目錄,同時將上傳文件拷貝到目錄A(增加或覆蓋)。
2.4GIS圖模文件解析器
GIS文件格式參見前面所述。
文件解析器模塊包括兩個線程,一個負責文件解析,一個負責將內(nèi)存IA0導入到數(shù)據(jù)庫里。GIS圖模文件解析目錄A下的所有文件,得出設備臺賬信息,維護N個二維內(nèi)存表,然后將這幾個內(nèi)存表依次導入到設備臺賬數(shù)據(jù)庫里。
2.5設備臺賬模型導出
模型導出工作分全模型導出和差異模型導出,分別對應3個界面。全模型導出,將所有設備的臺賬導出,保存為XLS文件:差異模型導出,模型表具有版本信息,按照版本信息,導出差異模型XLS文件。另外下載到客戶端。
導出模塊耗時較長,由狀態(tài)控制器負責管理,以防止多用戶操作沖突以及單用戶多次執(zhí)行、未結束重復執(zhí)行的情形發(fā)生。另外還要包括數(shù)據(jù)庫事務功能,防止數(shù)據(jù)錯亂。
2.6單線圖瀏覽及設備查看
左側列出所有的SVG文件列表,按字母順序排列:右側是SVG單線圖瀏覽面板,選擇饋線SVG文件,在右側顯示SVG單線圖,組件可方便地支持SVG的拖動縮放。
2.7設備模型瀏覽
設備模型瀏覽實現(xiàn)設備參數(shù)的查詢?yōu)g覽。左欄是設備樹,右欄分兩部分,上面是設備列表,下面是選擇設備的臺賬信息。設備子節(jié)點的順序以及右上部設備列表的順序就是設備電氣連接關系的順序。點擊容器/組合電器節(jié)點,右上部顯示該電器包含的子設
備:點擊簡單設備,右上部只顯示一條記錄,即該簡單設備。
2.8操作日志查看
操作日志記錄上傳SVG文件的操作信息(日期、文件個數(shù)、版本號等),提供按時間范圍以及日志類型的查詢。點擊詳情,可查看該操作處理的SVG文件的列表等信息。
3結語
此次研究充分利用挖掘了圖模一體化SVG文件這一大數(shù)據(jù)資源,解析出了配網(wǎng)全系統(tǒng)的設備臺賬數(shù)據(jù),提供了多種形式的設備臺賬查詢功能,并能按需導出設備臺賬的XLS格式的文件,以松耦合的方式,方便地給其他系統(tǒng)提供臺賬數(shù)據(jù)。