楊玉坤,鄭春姬
(中國電建集團吉林省電力勘測設計院有限公司,長春 130022)
由于智能變電站二次虛回路體系十分龐大,智能電子設備(IED)種類和數(shù)量眾多,近年來,依靠智能變電站輔助設計軟件來實現(xiàn)二次虛回路設計逐步被各個設計院所認可。IED能力描述(ICD)文件作為IED的數(shù)據模型[1-2],包含了十分豐富的信息。對ICD文件進行信息提取和存儲,是智能變電站輔助設計軟件進行二次虛回路體系信息處理的基礎和前提。智能變電站二次系統(tǒng)的設計,應以提高設計質量和設計效率為宗旨;深入研究IEC61850體系,尋求更好的信息處理方法和設計方法,開發(fā)出更加完善的輔助設計軟件。目前,國內外對ICD信息處理的研究中,對于一些關鍵性的問題尚未有較完善的方法[3-4];例如,如何更加全面、快速地提取有效信息,更加簡潔高效地存儲與查詢數(shù)據。本文就針對以上問題進行研究。
分析ICD文件的結構是信息處理的前提。ICD文件具有典型的樹形結構。圖1所示為ICD文件的基本結構,其中SCL為變電站配置語言,Header為信息頭, Server為服務器, Communication為通信信息, Services為服務, Access Point為訪問點,Data Type Template為數(shù)據類型模板。
ICD文件中的“IED”節(jié)點及其子節(jié)點基本包含了智能變電站虛回路設計中所關心的重要數(shù)據,“IED”節(jié)點的各級子節(jié)點以面向對象方法描述了的IED數(shù)據模型(見圖2)。一個實際的物理裝置(IED),可抽象為若干個“邏輯設備(LDevice)”,如保護邏輯設備(PROT)、錄波邏輯設備(RCD)等。邏輯設備又可抽象為若干個“邏輯節(jié)點(LN)”,如接地距離I段、接地距離Ⅱ段等。邏輯節(jié)點又可抽象為若干個“數(shù)據對象(DO)”,如保護啟動、保護動作等。數(shù)據對象又可抽象為若干個“數(shù)據屬性(DA)”,如A相是否動作等等。
圖1 ICD文件的基本結構
圖2 IED的分層信息模型
ICD文件中所包含的信息量十分龐大,提取虛回路設計中的相關信息并忽略無用信息是至關重要的問題。智能變電站虛回路設計一般先收集各IED廠家提供的ICD文件(人工設計時通常為Excel表格);再進行虛回路設計,查找某IED的某特定含義的虛端子,找到后記錄其虛端子類型、虛端子名稱、虛端子數(shù)據屬性、數(shù)據集信息,將兩個IED的特定虛端子進行關聯(lián),形成虛回路;最后完成所有虛回路設計,輸出設計表格或者SCD文件[5]。
在智能變電站虛回路設計過程中,涉及的主要信息包含如下:虛端子輸入、輸出類型;虛端子名稱;虛端子數(shù)據屬性(引用地址);虛端子所屬數(shù)據集;IED的廠家、型號、版本。虛端子輸入、輸出類型為面向通用對象的變電站事件(GOOSE)輸入與輸出;采樣值(SV)輸入與輸出。虛端子名稱:如1號母線隔離開關位置。虛端子數(shù)據屬性(引用地址):如PIGO/ PTRC2.Tr.general。虛端子所屬數(shù)據集:如告警信號。
前4類信息可以在ICD文件中的AccessPoint節(jié)點及其子節(jié)點中解析與提取。由圖1可知,Access Point節(jié)點是IED節(jié)點的子節(jié)點,代表IED與站控層、過程層GOOSE、過程層SV網絡進行通信的訪問點;由其“Name”屬性可以區(qū)分其所有子節(jié)點是屬于GOOSE還是SV類型。ICD文件中的LDevice節(jié)點充分表達了IED的分層抽象模型。如LDevice節(jié)點的基本結構中,“LN”和“LN0”節(jié)點代表實例化的邏輯節(jié)點LN,“DOI”代表實例化的DO,“DAI”代表實例化的DA。
文獻[2]規(guī)定了GOOSE輸入和SV輸入虛端子的邏輯節(jié)點的邏輯節(jié)點前綴(prefix)屬性的關鍵字前綴,由此可列表1作為虛端子輸入、輸出類型的區(qū)分方法。
智能變電站中IED之間的信息傳送是以數(shù)據集為發(fā)送單位的。在ICD文件中,邏輯節(jié)點LN0的每一個子節(jié)點DataSet分別代表一個數(shù)據集,而DataSet節(jié)點的每一個功能約束數(shù)據(FCDA)子節(jié)點分別代表一個虛端子,F(xiàn)CDA節(jié)點的屬性標明了虛端子在IED模型中的具體位置,對應關系見表2。
表1 虛端子輸入、輸出類型的區(qū)分方法
注:表中*代表1位數(shù)字,#代表0個或多個字符。
表2 FCDA節(jié)點與LN的對應關系
通過對數(shù)據集DataSet節(jié)點的解析,可以提取出所有數(shù)據集及其包含的虛端子。文獻[2]規(guī)定了虛端子數(shù)據屬性(引用地址)的一般格式為LD/LN.DO(.DA),其分別代表IED模型的4個層次對象,見表3。ICD文件中的LN、DOI、DAI節(jié)點的name或者desc屬性可以作為虛端子名稱。
表3 虛端子數(shù)據屬性引用內容
IED設備的廠家、型號、版本信息分別可以在ICD文件的IED節(jié)點的屬性manufacturer、type和configVersion中提取。廠家信息往往是廠家代號,故可以建立廠家代號庫以在ICD文件解析時翻譯成廠家的名稱。綜上所述,可以做出ICD文件的解析流程,見圖3。
圖3 ICD文件的解析流程
智能變電站包含的IED數(shù)量很多,IED的分層信息模型包含的信息量也十分龐大;對ICD文件進行的每一次解析都需要較長的運算時間;而在虛回路設計中需要頻繁地查詢ICD信息。為了高效地存儲與查詢,可以將收集到ICD文件只進行一次解析,只將有用的信息存儲至數(shù)據庫中;以后進行信息查詢時只在數(shù)據庫中查詢,而不再重新解析ICD文件。
變電站虛回路設計中主要涉及兩方面的信息,其一是IED信息,其二是虛端子信息,每一個IED包含多個虛端子,是一對多的關系。
關系數(shù)據庫是目前廣泛應用的主流數(shù)據庫類型,其特點是將信息組織成一組具有相互關聯(lián)性的表格[6]。ICD文件解析出的兩類信息完全可以利用關系數(shù)據庫來存儲;IED信息與虛端子信息的一對多關系可以完整地表達出來,數(shù)據庫結構及其示例見圖4。
圖4 數(shù)據庫結構及其示例
在實際的智能變電站虛回路設計中會出現(xiàn)如下的問題:某廠家某型號的IED會被多次應用至本變電站的其他間隔或者其他后續(xù)的工程設計中。為了提高設計效率和質量,可以將先期的ICD文件解析成果及數(shù)據復用。然而,實際設計中很難預知廠家此次提供的ICD文件是否和以前設計過的某ICD文件完全一致。
本文提出如下解決方案:在導入ICD文件時,先對解析結果與數(shù)據庫中已存在的本設備廠家的IED信息進行比較,若它與此廠家的每一個IED信息都不完全相同,則認定為新ICD文件;否則可以認定為已存在ICD文件,即可實現(xiàn)先期設計成果的充分利用(復用)。
在數(shù)據庫中確認一組數(shù)據完全相同的傳統(tǒng)方法是對這組數(shù)據中每一條記錄進行逐一比較;然而,這種方法若用在ICD文件查重中會消耗大量的運算時長,導致效率低下。為了解決此問題,本文采用“笛卡爾積”方法對ICD文件的解析信息進行查重。兩個集合X和Y的笛卡尓積表達式為:A×B= {(x,y)|x∈X∧y∈Y}。在數(shù)據表中可以由笛卡尓積引申出“全連接”的操作:兩個表X和Y的全連接為表X和Y相匹配的數(shù)據記錄,還包含關聯(lián)表X和表Y中不匹配的數(shù)據記錄[6]。例如,在圖5表X和Y的全連接示例圖中,表X和表Y的全連接的操作結果為表Z,MU為合并單元額定延時。
圖5 表X和Y的全連接示例
由圖5可知,表X和Y的全連接的結果表中包含兩部分內容,第一部分為表的上半部分代表表X和Y相匹配的數(shù)據記錄,第二部分為表的下半部分代表不相匹配的數(shù)據記錄。第二部分的特點是存在左半部分或者右半部分為“NULL”的區(qū)域。將此操作應用至ICD文件查重時,若ICD甲和ICD乙代表的表的全連接的結果中不包含“NULL”的區(qū)域,則代表ICD甲和ICD乙是完全一樣的,即表示重復。
ICD文件信息提取程序采用VB.net高級計算機程序設計語言進行開發(fā),采用MySql作為數(shù)據庫。按照前述方法實現(xiàn)了ICD文件信息提取、信息存儲與查詢,ICD文件信息處理程序界面見圖6。
圖6 ICD文件信息處理程序界面
本文通過分析ICD文件結構和IED抽象模型,研究論述了ICD文件信息提取方法及ICD文件信息存儲與查詢方法;應用本文提出的方法可準確、高效地對ICD文件包含的IED信息進行提取與存儲、查詢,為智能變電站設計及其輔助軟件開發(fā)提供良好的基礎和前提。