国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Batik及SVG的監(jiān)控畫面的圖模庫一體化平臺設(shè)計

2010-03-23 10:17楊豐萍
華東交通大學(xué)學(xué)報 2010年5期
關(guān)鍵詞:圖元圖形狀態(tài)

楊豐萍,傅 華

(華東交通大學(xué)電氣與電子工程學(xué)院,江西南昌330013)

目前,SCADA(Supervisory Control And Data Acquisition,數(shù)據(jù)采集與監(jiān)視控制)系統(tǒng)的調(diào)度端軟件主要由實時數(shù)據(jù)庫、通信程序和用戶圖形界面程序組成。其中,用戶圖形界面通過判斷實時數(shù)據(jù)庫里對應(yīng)設(shè)備的狀態(tài),以圖形的方式實時地呈現(xiàn)給調(diào)度員,以便調(diào)度員及時掌握設(shè)備參數(shù)、運行狀態(tài),其重要性不言而喻。

SVG(Scalable VectorGraphics,可伸縮矢量圖形)是一套基于XML(Extensib le Markup Language)語言的可縮放矢量圖形語言描述規(guī)范。而SVG格式的電力調(diào)度自動化系統(tǒng)的圖形交互方案(草案)是IEC 61970標(biāo)準(zhǔn)系列的核心內(nèi)容之一,因此,SVG將在新一代調(diào)度端軟件開發(fā)中逐步推廣應(yīng)用[1-2]。

Batik是基于Java技術(shù)的工具,目的在于使用Java應(yīng)用程序Applet將所要使用的圖片以SVG格式用于不同目的。應(yīng)用Batik可以在任何Java可用的場合來操縱SVG文檔,也可以使用不同的Batik模塊來生成、操縱、轉(zhuǎn)換代碼及在應(yīng)用程序Applet中研究SVG圖像。

平臺使用開源SVG圖形編輯器平臺GLIPSGraffitieditor(基于Batik開源項目),調(diào)用Hibernate(持久層框架)連接數(shù)據(jù)庫,簡化繁瑣的數(shù)據(jù)配置過程。同時加入基于Batik的SVG顯示模塊,對于SVG圖形進行拓撲動態(tài)著色,可極大改善SCADA系統(tǒng)軟件的用戶圖形界面,便于和其他圖形功能模塊的集成。

1 繪圖平臺的總體框架

圖模庫一體化繪圖平臺的實質(zhì)是設(shè)備圖元對象與數(shù)據(jù)庫記錄一一對應(yīng),在定義一個設(shè)備圖元對象的同時自動追加一條數(shù)據(jù)庫記錄。另一方面,要求設(shè)備圖元的屬性參數(shù)及其數(shù)據(jù)輸入界面能夠根據(jù)用戶的要求進行修正,這樣才能真正做到圖形與數(shù)據(jù)庫的一一對應(yīng),而且也能保證系統(tǒng)兼容性。

本文將SCADA系統(tǒng)監(jiān)測畫面的軟件平臺劃分成圖形繪制模塊、圖形顯示模塊、圖模同步模塊和模庫同步模塊進行設(shè)計和實現(xiàn)。圖形繪制模塊主要完成對基本圖形和電力圖元庫操作。在電力監(jiān)控畫面生成的過程中,對畫面上的圖元基本幾何屬性和業(yè)務(wù)屬性進行編輯。圖形顯示模塊主要完成顯示生成SVG,使用SVG viewing component模塊對其進行拓撲動態(tài)著色。圖模同步模塊負責(zé)把SVG圖元和CIM數(shù)據(jù)模型進行關(guān)聯(lián)。模庫同步模塊利用持久層框架實現(xiàn)數(shù)據(jù)模型與實時數(shù)據(jù)庫的關(guān)聯(lián)。平臺框架如圖1所示。

2 繪圖平臺的組成模塊

2.1 圖形繪制模塊和圖元庫的建立

電力圖元庫的建立的關(guān)鍵是為了解決各類圖元的組合與復(fù)用的問題。電力SVG圖元庫文件包括SVG文檔結(jié)構(gòu)、樣式表文件引用部分、電力圖元定義部分、基本圖元管理。

在SCADA監(jiān)控畫面中,有一些復(fù)雜圖元如變壓器、斷路器、電容器等,都可以有多個基本幾何圖形組合而成。為了能夠反復(fù)使用這些電力圖元,在圖元庫文檔中使用SVG符號標(biāo)簽<symbol>進行定義電力圖元。利用<symbol>標(biāo)簽定義了標(biāo)準(zhǔn)電力系統(tǒng)常用設(shè)備圖元形狀,將相關(guān)圖元聚合在一起,使多個基本圖形構(gòu)成一個整體,實現(xiàn)電力圖元統(tǒng)一管理。為了復(fù)用繪好的電力設(shè)備圖元,將常用的電力系統(tǒng)設(shè)備圖元存儲起來,寫入同一個SVG文件,形成圖元庫。在繪制SVG圖形過程中,生成的文件中會使用<use>標(biāo)簽,利用<xlink:href>這個屬性,鏈接SVG圖元庫文件,完成對電力圖元的調(diào)用,實現(xiàn)圖元的復(fù)用性。

在監(jiān)控畫面生成的過程中,需要對監(jiān)控畫面上的一些圖元的幾何屬性(如:輪廓顏色、填充顏色、線條寬度、幾何位置等)進行實時編輯,使得監(jiān)控畫面更加方便調(diào)度員對設(shè)備圖元的觀測。

圖1 SCADA系統(tǒng)監(jiān)測畫面的軟件平臺總體架構(gòu)

2.2 圖模同步模塊

圖模同步模塊負責(zé)基于CIM的SVG圖元建模,實現(xiàn)SVG圖元和CIM數(shù)據(jù)模型的關(guān)聯(lián)。由于電力SVG圖元含有大量業(yè)務(wù)數(shù)據(jù)信息,為了應(yīng)對人機交互的要求,實際的圖形交互并非是對單純的圖形進行操作,而是需要后臺數(shù)據(jù)的交互。所以,SVG圖元建模其目的不在于描述圖形的外觀,而是表達出圖元的類型,該類型就必須要符合CIM模型。

目前IEC 61970-301部分CIM包中,基于CIM的SVG圖元建模主要用到核心包、拓撲包和電線包的部分內(nèi)容,包含了變壓器、互感器、導(dǎo)線等,覆蓋了CIM中Sw itch,PowerTransformer,VoltageTransformer,Connector,Conductor等對象。

圖2 基于CIM的SVG圖元建模

依照這些CIM數(shù)據(jù)模型,使用Rational ROSE作為輔助建模工具,用統(tǒng)一建模語言UML(United Model Language)對SVG主要圖元建模,如圖2所示。在程序中創(chuàng)建SVG圖元的類,利用id屬性使得SVG圖形和CIM數(shù)據(jù)模型類進行關(guān)聯(lián),達到圖模同步的效果。

2.3 圖形顯示模塊

圖形顯示模塊使用SVG viewing component模塊顯示SVG圖形并對其進行拓撲分析。SVG viewing component是Batik的核心模塊,可以很容易瀏覽SVG圖形并提供后臺的交互功能。

Batik Swing組件模塊的目標(biāo)是提供一個Swing組件,可以用來顯示SVG文件。JSVGCanvas類可以通過URI或者DOM樹很容易地操作SVG文件,如旋轉(zhuǎn),縮放,平移,選擇文本或激活超鏈接。將JSVGCanvas加入到Batik Swing應(yīng)用程序中。在Batik Swing應(yīng)用程序中跟蹤所有顯示或者操作SVG的事件。

在Batik環(huán)境下通過提供的JSVGCanvas對象獲取當(dāng)前顯示SVG文件的DOM文檔對象引用,通過對該DOM的操作對當(dāng)前SVG圖像在拓撲分析進行動態(tài)著色或者改變狀態(tài),程序如下:

拓撲結(jié)構(gòu)是潮流分析、狀態(tài)估計等高級應(yīng)用的基礎(chǔ)。在CIM中,與拓撲模型的建立相關(guān)的主要是核心包(Core)中的ConductingEquipment(導(dǎo)電設(shè)備類)和Terminal(端點類),導(dǎo)電設(shè)備一般有1個或2個端點;拓撲包(Topology)中的ConnectivityNode(連接節(jié)點類),TopologiealNode(拓撲節(jié)點類)和Topologieallsland(拓撲島類);量測包(Meas),通過判斷測點值是否相同可以知道這些導(dǎo)電設(shè)備的端點是否連接在同一個連接節(jié)點上。

拓撲分析是根據(jù)導(dǎo)電設(shè)備間的連接關(guān)系計算出整個電網(wǎng)的連接關(guān)系,通常需要將電網(wǎng)模型進行整理抽象。拓撲分析可分為兩個過程,連接關(guān)系分析和網(wǎng)絡(luò)拓撲分析。

連接關(guān)系分析即根據(jù)傳導(dǎo)設(shè)備之間的連接關(guān)系,形成連接節(jié)點模型。連接線描述了設(shè)備間的關(guān)聯(lián)關(guān)系,將其抽象為連接節(jié)點,連接節(jié)點信息為關(guān)聯(lián)設(shè)備記。在SVG圖元中定義該設(shè)備所關(guān)聯(lián)的連接節(jié)點,除了要設(shè)置導(dǎo)電設(shè)備的連接節(jié)點,還需要在SVG文件中將連接線歸入到指定的連接節(jié)點下,這樣才能根據(jù)設(shè)備之間的連接關(guān)系動態(tài)的確定連接線的顏色。

網(wǎng)絡(luò)拓撲分析,SCADA遠動實時數(shù)據(jù)庫中實時狀態(tài)量方式變化時,向顯示模塊發(fā)送變化信息,其中包括圖元ID和變化狀態(tài)量。根據(jù)收到的信息,搜索到指定的導(dǎo)電設(shè)備。通過導(dǎo)電設(shè)備的連接節(jié)點形成一個拓撲節(jié)點,同一拓撲節(jié)點下的連接節(jié)點的狀態(tài)是相同的。帶電狀態(tài)為1,不帶電狀態(tài)為0。拓撲流程圖如圖3所示。

網(wǎng)絡(luò)拓撲分析主要以開關(guān)及進線為研究對象,開關(guān)和進線狀態(tài)為分變合和合變分,不帶電到帶電和帶電到不帶電,因此,只要關(guān)注帶電設(shè)備的連接點的狀態(tài),對其進行拓撲分析。例如,進線由不帶電到帶點時,開關(guān)由分變合時,一側(cè)連接節(jié)點帶電,設(shè)置為1,則另一側(cè)連接節(jié)點要根據(jù)所連接的SVG圖元狀態(tài)量進行判別設(shè)置。如果連接的圖元帶電,另一側(cè)連接節(jié)點設(shè)置為1,如果連接的圖元不帶電,另一側(cè)連接節(jié)點設(shè)置為0。拓撲分析的對象仍然是帶電狀態(tài)改變的進線下閉合開關(guān)對側(cè)連接節(jié)點和變位開關(guān)兩側(cè)狀態(tài)不同的連接節(jié)點。利用信息進行拓撲分析后,根據(jù)拓撲結(jié)果利用SVG DOM對圖元進行動態(tài)著色。

2.4 模庫同步模塊

模庫同步模塊負責(zé)CIM數(shù)據(jù)模型對象與實時數(shù)據(jù)庫建立關(guān)聯(lián),并同步完成圖元顯示數(shù)據(jù)的存儲和電力設(shè)備業(yè)務(wù)處理數(shù)據(jù)的錄入,是圖模庫一體化配置的關(guān)鍵。本文采用Hibernate面向?qū)ο蟪志脤涌蚣?,實現(xiàn)對象和數(shù)據(jù)庫之間的關(guān)聯(lián),將上層的以Java作為開發(fā)語言建立的持久化類與底層的數(shù)據(jù)庫實現(xiàn)分離開,模庫同步模塊的結(jié)構(gòu)如圖4所示。

面向?qū)ο蟪志脤邮侵冈跀?shù)據(jù)管理系統(tǒng)(特別是關(guān)系型數(shù)據(jù)庫管理系統(tǒng))和面向?qū)ο蟮臄?shù)據(jù)應(yīng)用系統(tǒng)之間增加一層映射管理層,通常這種映射稱為對象/關(guān)系映射。該映射文檔詳細定義和描述了類、類的屬性、類之間關(guān)系,和對象類型的數(shù)據(jù)類型到關(guān)系型數(shù)據(jù)庫相應(yīng)元素的映射邏輯[6]。在繪制圖形的時,輸入所需的參數(shù),并將參數(shù)存入數(shù)據(jù)庫中,自動對監(jiān)控系統(tǒng)數(shù)據(jù)進行配置。

圖3 拓撲流程圖

圖4 模庫同步模塊的結(jié)構(gòu)

3 軟件平臺在SCADA中的應(yīng)用

本文分別采用Myeclipse和PostgreSQL作為計算機程序和數(shù)據(jù)庫的開發(fā)工具,基于Batik的SVG viewing component模塊,創(chuàng)建圖形顯示模塊,導(dǎo)入SVG圖形,對其進行拓撲分析。以刀閘為例,由合到分的過程,刀閘灰色表示斷開、紅色表示閉合,接線灰色表示不帶電、紅色表示帶電。刀閘由原來閉合狀態(tài)變?yōu)榉珠_狀態(tài),同時,刀閘顏色由紅色變?yōu)榛疑琒VG圖元發(fā)生變化的表示刀閘斷開。

圖5 SVG圖元屬性的配置

以變壓器為例,在繪制SVG圖形過程中,配置圖元屬性,在數(shù)據(jù)庫中保存變壓器信息。同時點擊圖元,彈出屬性框中會顯示配置的圖元信息,方便查看和修改,見圖5。

在深入研究SVG技術(shù)、持久化框架技術(shù)和IEC61970標(biāo)準(zhǔn)的CIM模型的基礎(chǔ)上,在GLIPSGraffiti editor開源軟件上實現(xiàn)了圖形繪制模塊、圖模同步模塊和模庫同步模塊,實現(xiàn)了圖模庫一體化。利用Hibernate持久層框架,提高實時數(shù)據(jù)訪問性能,達到了SCADA系統(tǒng)的自動化工程配置的目的。根據(jù)實際的需要,對SVG圖形拓撲動態(tài)著色,提高了系統(tǒng)的交互性和實時性,同時對跨平臺的專業(yè)化的遠動監(jiān)控繪圖軟件具有重要的現(xiàn)實意義。

[1] 楊豐萍,馮春華,王健.基于Java和SVG的監(jiān)控畫面圖形生成軟件的設(shè)計[J].繼電器,2008,36(3):32.

[2] 屈志堅,劉明光,陳秋琳.基于SVG和持久框架的SCADA圖庫一體化配置系統(tǒng)[J].電力自動化設(shè)備,2009,29(8):124.

[3] 楊豐萍,馮春華,陳劍云.基于SVG的遠動系統(tǒng)監(jiān)控畫面的設(shè)計[J].計算機系統(tǒng)應(yīng)用,2008,(12)1:91-93.

[4] 馮春華,楊豐萍.基于SVG的監(jiān)控畫面圖庫一體化的實現(xiàn)[J].華東交通大學(xué)學(xué)報,2007,24(4):104-107.

[5] 王健,陳劍云,屈志堅.基于SVG的電力圖元庫的設(shè)計與實現(xiàn)[J].繼電器,2008,36(8):79-82.

[6] 武愛萍,陳劍云,屈志堅.基于CIM的SCADA系統(tǒng)實時數(shù)據(jù)庫模型設(shè)計實現(xiàn)[J].電力系統(tǒng)及其自動化學(xué)報,2008,20(2):105.

[7] 錢鋒,唐國慶,顧全.基于CIM標(biāo)準(zhǔn)和SVG的分散式圖模合并[J].電力系統(tǒng)自動化,2007,31(5):84-89.

[8] 李項軍,夏靖波,武兆雪,羅斌貝騫.基于SVG的圖形化網(wǎng)絡(luò)拓撲顯示模塊設(shè)計[J].電光與控制,2007,14(5):160-167.

[9] 樊淑麗,王康元,邱家駒,等.基于SVG的電力信息可視化框架設(shè)計[J].繼電器,2007,25(10):48-51.

猜你喜歡
圖元圖形狀態(tài)
學(xué)術(shù)出版物插圖的編排要求(一):圖注
聯(lián)鎖表自動生成軟件的設(shè)計與實現(xiàn)
狀態(tài)聯(lián)想
生命的另一種狀態(tài)
分圖形
找圖形
堅持是成功前的狀態(tài)
基于Qt繪圖系統(tǒng)的圖形應(yīng)用優(yōu)化研究與實現(xiàn)
圖形變變變
圖形配對
天镇县| 宜黄县| 拉萨市| 建昌县| 嘉祥县| 汝州市| 长兴县| 河间市| 县级市| 兴宁市| 阳高县| 临高县| 平陆县| 商城县| 白水县| 沧州市| 枞阳县| 孝感市| 阜康市| 五台县| 依安县| 呼和浩特市| 南丰县| 金寨县| 弋阳县| 宜阳县| 乾安县| 凉城县| 托克逊县| 攀枝花市| 垦利县| 新绛县| 甘泉县| 淮安市| 交口县| 祁阳县| 巴彦淖尔市| 盐边县| 阜新| 化隆| 宁河县|