劉海江
(重慶郵電大學(xué),重慶 400065)
SVG技術(shù)在電力圖形系統(tǒng)中的研究與實現(xiàn)
劉海江
(重慶郵電大學(xué),重慶400065)
摘要:本文以IEC 61970標(biāo)準(zhǔn)和SVG技術(shù)為依據(jù),結(jié)合實際應(yīng)用提出了采用SVG作為電力圖形格式,實現(xiàn)私有圖形標(biāo)準(zhǔn)化。本文給出了基于SVG技術(shù)的電力圖形系統(tǒng)的設(shè)計方案,并將其劃分:SVG/CIM建模、CIM/XML文件解析、自動布圖算法、SVG文件導(dǎo)出四個部分進(jìn)行研究與實現(xiàn)。
關(guān)鍵詞:SVG;CIM/XML;自動布圖算法;圖形系統(tǒng)
研究開發(fā)基于SVG技術(shù)的電力圖形系統(tǒng)具有較高的理論和實踐價值,但由于IEC 61970標(biāo)準(zhǔn)尚未提出圖形交互的具體標(biāo)準(zhǔn),SVG為推薦使用的圖形格式,可利用HTML和JavaScript腳本語言實現(xiàn)了SVG圖形的交互性和互操作性。
SVG是由W3C組織推出的最新一代矢量圖形標(biāo)準(zhǔn),是一種基于可擴展標(biāo)記語言(XML)的開放標(biāo)準(zhǔn)的文本式矢量圖形描述語言。它包括矢量圖、點陣圖像和文本三種類型,各種圖形對象能夠組合、變換,并且修改其樣式,也能夠定義成預(yù)處理對象。CIM使用面向?qū)ο蠼<夹g(shù)來定義,使用統(tǒng)一建模語言(UML)進(jìn)行建模。CIM可劃分為一組包,分別有:核心包、域包、發(fā)電動態(tài)包、負(fù)荷模型包、量測包、生產(chǎn)包、拓?fù)浒?3個包。
2.1設(shè)計思路
根據(jù)SCADA系統(tǒng)實現(xiàn)CIM模型的配置,然后導(dǎo)出配置文件即CIM/XML文件。圖形系統(tǒng)采用SVG/CIM建模方式建立SVG圖元庫,SVG圖元庫根據(jù)解析后的CIM模型實例化成具體SVG圖元。SVG圖元經(jīng)過自動布圖后利用SVG文件導(dǎo)出接口,導(dǎo)出符合SVG標(biāo)準(zhǔn)的圖形文件,并實現(xiàn)Web應(yīng)用。
2.2SVG/CIM建模
SVG圖元類必須涵蓋CIM中電力系統(tǒng)資源類、設(shè)備類、設(shè)備容器類、導(dǎo)電設(shè)備類、母線類、隔離開關(guān)類、斷路器類、電力變壓器類等對象模型。同時還拓展了一些CIM中沒有的圖元類,如電容類、燈泡類等。
2.3CIM/XML文件解析
CIM模型屬于抽象的邏輯模型,它并未定義數(shù)據(jù)交換的格式。IEC 61970標(biāo)準(zhǔn)標(biāo)準(zhǔn)中給出了利用XML技術(shù)實現(xiàn)CIM模型的方法。標(biāo)準(zhǔn)中資源描述框架RDF)給出了語法語義,提供了一種人機可讀的方式組織電力系統(tǒng)數(shù)據(jù)模型。
2.4自動布圖算法
自動布圖算法以母線為布圖過程的起點,首先遍歷圖形中的母線,根據(jù)母線的數(shù)量將整個布圖算法分為四部分:無母線、1條母線、2條母線和2條以上母線。該布圖算法為了增強圖形的美觀性、可讀性,將包含接地的分支向下分布,整個布圖過程都遵循這一規(guī)則。
2.4.1無母線
(1)不包含復(fù)合節(jié)點。無母線時,當(dāng)電力圖形中不包含復(fù)合節(jié)點時,所有的連接節(jié)點都屬于簡單節(jié)點,即只關(guān)聯(lián)2個端點。任取其中一個連接節(jié)點為起點,對該連接節(jié)點關(guān)聯(lián)的2個端點依次進(jìn)行遍歷,并判斷該端點對應(yīng)的分支是否屬于接地分支。如果無接地分支則第一個分支向上布圖第二個分支向下布圖,如果只有一個接地分支,則接地分支向下布圖,另一分支向上布圖。
(2)包含復(fù)合節(jié)點。無母線時,當(dāng)電力圖形包含一個復(fù)合節(jié)點時,以該復(fù)合節(jié)點為起點,當(dāng)包含多個復(fù)合節(jié)點,以關(guān)聯(lián)端點數(shù)量最多的復(fù)合節(jié)點為起點。
2.4.21條母線
當(dāng)電力圖形包含1條母線時,以該母線為起點,分別對其關(guān)聯(lián)的端點進(jìn)行遍歷。無論該端點對應(yīng)的分支是否接地均向下布圖。
2.4.32條母線
當(dāng)電力圖形包含2條母線時,任取其中一條母線為起點,分別對其關(guān)聯(lián)的端點進(jìn)行遍歷。如果該端點所對應(yīng)的分支與第二條母線相連或者屬于接地分支,則向下布圖;否則均向上布圖。第二條母線上除和第一條母線相連的分之外,均向下布圖。
2.4.42條以上母線
當(dāng)電力圖形包含2條以上母線時,任取其中一條母線為起點,遍歷規(guī)則和包含2條母線的情況中第一條母線的遍歷規(guī)則相同。除了最后一條母線外,所有母線的遍歷規(guī)則都和第一條母線相同,最后一條母線除了和其它母線相連的分支外,均向下布圖。
2.5SVG文件導(dǎo)出
成功解析CIM/XML文件后,圖元類便實例化為具體圖元對象,并包含了CIM/XML文件中模型信息。圖元對象通過自動布圖后生成具體坐標(biāo)信息,使圖元對象同時包含模型信息和坐標(biāo)信息,再通過SVG導(dǎo)出工具就能導(dǎo)出完整的SVG圖形文件。
2.6系統(tǒng)測試與分析
本文通過導(dǎo)入不同的CIM/XML文件對開發(fā)的圖形系統(tǒng)進(jìn)行測試。圖形系統(tǒng)需要正確的、完整的識別任何其他公司的基于CIM RDF的XML文件。圖形系統(tǒng)通過兩種不同的CIM/XML文件成功導(dǎo)出標(biāo)準(zhǔn)的SVG圖形文件,并實現(xiàn)了兩者之間的映射,證明了本文開發(fā)的基于SVG技術(shù)的電力圖形系統(tǒng)的正確性和通用性。
圖 xml文件片段導(dǎo)入SVG圖形測試結(jié)果
本文在深入研究IEC 61970標(biāo)準(zhǔn)和SVG技術(shù)的基礎(chǔ)上,進(jìn)行了基于SVG技術(shù)的電力圖形系統(tǒng)的研究,重點涉及到SVG/CIM模型、CIM/XML文件解析、自動布圖算法、SVG文件導(dǎo)出和SVG文件編輯,實現(xiàn)了將源系統(tǒng)私有圖形格式轉(zhuǎn)換成標(biāo)準(zhǔn)的SVG圖形格式,實現(xiàn)圖形信息的共享。
參考文獻(xiàn):
[1] 畢睿華,王玉忠,賈云浪.基于CIM的電力系統(tǒng)信息集成的研究[J].四川電力技術(shù),2007,30(5):9-12.
[2] 李亞平.SVG在調(diào)度自動化系統(tǒng)中的應(yīng)用探討—基于SVG的公共圖形互操作性研究研究[D].北京:國電自動化研究院,2006.