亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于MMS-Lite SCL文件解析功能的改進(jìn)

        2016-12-15 10:11:10沈石蘭徐強(qiáng)超鄺國(guó)安鄒三紅
        電氣技術(shù) 2016年12期
        關(guān)鍵詞:鏈表數(shù)據(jù)結(jié)構(gòu)解析

        沈石蘭 徐強(qiáng)超 鄺國(guó)安 鄒三紅 劉 雍

        (廣州供電局有限公司,廣州 510060)

        基于MMS-Lite SCL文件解析功能的改進(jìn)

        沈石蘭 徐強(qiáng)超 鄺國(guó)安 鄒三紅 劉 雍

        (廣州供電局有限公司,廣州 510060)

        本文介紹了IEC 61850中SCL文件的基本結(jié)構(gòu);分析了MMS-Lite中SCL解析的數(shù)據(jù)結(jié)構(gòu)以及實(shí)現(xiàn)過程;針對(duì)MMS-Lite在解析中所生成的信息樹形結(jié)構(gòu)中缺乏IED設(shè)備及GOOSE等信息的弱點(diǎn),對(duì)MMS-Lite的源代碼進(jìn)行改進(jìn),得到更加完整的解析信息量,有利于更全面了解變電站狀態(tài)。

        MMS_lite;SCL文件;解析功能;改進(jìn)

        變電站配置語(yǔ)言SCL是IEC 61850采用的變電站專用描述語(yǔ)言,它采用基于XML1.0的可擴(kuò)展標(biāo)記語(yǔ)言,描述了變電站IED設(shè)備及變電站網(wǎng)絡(luò)通信拓?fù)浣Y(jié)構(gòu)的配置,用于數(shù)字化變電站實(shí)施的不同階段傳遞模型信息,其最終的目的是為了在不同制造廠商的設(shè)備配置工具以及系統(tǒng)配置工具間交換系統(tǒng)的配置信息,實(shí)現(xiàn)互操作[1-3]。XML文件是一種簡(jiǎn)單的文本格式,采用 XML文件描述變電站配置可以使得語(yǔ)義與設(shè)備結(jié)構(gòu)能很好結(jié)合,使用SCL能夠使系統(tǒng)維護(hù)升級(jí)、智能電子器件控制變得更為簡(jiǎn)單易行。變電站中的各種設(shè)備統(tǒng)一使用IEC 61850,可以避免協(xié)議轉(zhuǎn)換的開銷,減少數(shù)據(jù)集成和維護(hù)的成本。

        IEC 61850將工程實(shí)施不同階段符合SCL語(yǔ)法規(guī)則的文件進(jìn)行了分類,包括SSD(系統(tǒng)規(guī)范描述文件)、ICD(智能電子設(shè)備能力描述文件)、SCD(變電站配置描述文件)、CID(配置過的智能電子設(shè)備描述文件文件),IID(實(shí)例化的智能電子設(shè)備描述文件),SED(系統(tǒng)交換描述文件)。實(shí)現(xiàn) IEC 61850規(guī)定的配置工具,無論是IED配置工具還是系統(tǒng)配置工具,都需要對(duì)SCL文件進(jìn)行正確解析。

        當(dāng)前世界主要電力自動(dòng)化廠商都使用SISCO公司的MMS-Lite實(shí)現(xiàn)IEC 61850,MMS-Lite對(duì)應(yīng)的嵌入式應(yīng)用版本是 MMS-EASE Lite。MMS-EASE Lite以ANSI C源代碼的形式提供,不依賴于具體編譯器和操作系統(tǒng)。它提供了基本的協(xié)議處理框架和相關(guān)的API接口以及IEC 61850建模功能[4-5]。

        本文對(duì)MMS-lite中SCL文件解析使用的數(shù)據(jù)結(jié)構(gòu)和過程進(jìn)行了分析。為了建立SCL文件中IED設(shè)備的連接關(guān)系,對(duì)MMS-lite源代碼進(jìn)行了相應(yīng)的修改,使所解析出來的信息量更加完整,有利于全面了解變電站的狀態(tài)。

        1 SCL文件的基本結(jié)構(gòu)

        符合SCL語(yǔ)法規(guī)則的文件將各節(jié)點(diǎn)以樹形結(jié)構(gòu)組織起來,完整的文件由 Header、Substation、Communication、IED、DataTypeTemplates五大部分組成[6]。其中Header為信息頭,用來存放版本、修改信息及名稱映射信息,Substation節(jié)點(diǎn)用來描述變電站的功能結(jié)構(gòu)、主元件,電氣連接,電壓等級(jí)、間隔層、電力設(shè)備節(jié)點(diǎn)等,IED部分描述了所有智能電子設(shè)備,說明了所包含的邏輯裝置、邏輯節(jié)點(diǎn)、數(shù)據(jù)對(duì)象和智能電子設(shè)備所具備的通信服務(wù)能力等相關(guān)設(shè)置。DataTypeTemplates為數(shù)據(jù)類型模板,定義了在文件中出現(xiàn)的邏輯節(jié)點(diǎn)的實(shí)例,包括類型及該邏輯節(jié)點(diǎn)包含的數(shù)據(jù)對(duì)象DO等,Communication節(jié)點(diǎn)定義了邏輯節(jié)點(diǎn)之間通過邏輯總線和IED接入地安置點(diǎn)的聯(lián)系方式。SCL包含的4個(gè)部分如圖1所示。

        圖1 SCL文件結(jié)構(gòu)

        SCL文件中可存在0到無窮個(gè)Substation節(jié)點(diǎn),用來描述數(shù)字化變電一次系統(tǒng)模型,可包含多個(gè)變電站的信息??砂?到無窮個(gè)Communication節(jié)點(diǎn),用來描述各個(gè)IED的SV控制塊和GOOSE控制塊的地址信息,IED部分用來描述各個(gè)智能電子設(shè)備的具體內(nèi)容,SV及GOOSE的發(fā)布和訂閱都在IED部分進(jìn)行描述。DataTypeTemplates部分用來定義邏輯節(jié)點(diǎn)類型 LNodeType、數(shù)據(jù)對(duì)象類型DOType、數(shù)據(jù)屬性類型DAType等數(shù)據(jù)類型模板。SCD文件中的虛連接信息位于 IED section 每個(gè)邏輯設(shè)備LD的Inputs節(jié)點(diǎn)下,每條虛連接包括:接收裝置、輸入虛端子描述、輸入虛端子引用、設(shè)計(jì)描述、輸出虛端子描述、輸出虛端子引用、發(fā)送裝置等信息。

        2 MMS-Lite解析SCL關(guān)鍵數(shù)據(jù)結(jié)構(gòu)

        MMS-Lite軟件包在解析SCL文件時(shí)規(guī)定所解析的SCL文件必須包含至少一個(gè)IED節(jié)點(diǎn),在IED節(jié)點(diǎn)下至少包含一個(gè)AccessPoint節(jié)點(diǎn)。IED的name屬性必須匹配 iedName參數(shù),同時(shí) AccessPoint的name屬性必須匹配accessPointName參數(shù)。

        為了了解SCL文件中的各部分的IED設(shè)備的連接信息,需要修改SCL文件中的相關(guān)數(shù)據(jù)結(jié)構(gòu),在MMS-Lite中使用了sclInfo結(jié)構(gòu)體來存儲(chǔ)從SCL文件解析出的相關(guān)信息。SclInfo結(jié)構(gòu)體如下所示:

        從此結(jié)構(gòu)體可以看出,結(jié)構(gòu)體中的多數(shù)變量都是作為所對(duì)應(yīng)的SCL語(yǔ)言節(jié)點(diǎn)部分的鏈表頭指針,系統(tǒng)的SCL_INFO結(jié)構(gòu)體對(duì)應(yīng)IEC 61850規(guī)約包含了 Header的結(jié)構(gòu)體,Header結(jié)構(gòu)體包含了 id,version,revisiontoolID等head的內(nèi)容,subnetHead結(jié)構(gòu)體指針對(duì)應(yīng)IEC 61850規(guī)約中的communication節(jié)點(diǎn)、LnTypeHead對(duì)應(yīng)了IED節(jié)點(diǎn)、doTypeHead對(duì)應(yīng)了IED節(jié)點(diǎn)下的相關(guān)設(shè)備的控制塊等數(shù)據(jù)。利用 MMS-Lite進(jìn)行 SCL文件解析的軟件可以通過SCL_INFO結(jié)構(gòu)體找到相應(yīng)的根節(jié)點(diǎn),通過這些鏈表指針可以獲取系統(tǒng)中的Communication,IED設(shè)備及系統(tǒng)中的DO、DI信息。

        在 subnetHead、LnTypeHead、doTypeHead、enumTypeHead、ldHead除了包含了name等這些和節(jié)點(diǎn)相關(guān)的變量外,均包含了next和prev兩個(gè)指針,對(duì)每一個(gè)樹形結(jié)構(gòu)體均可形成相應(yīng)節(jié)點(diǎn)的雙向鏈表,在后續(xù)的程序中可以通過SCL_INFO指針訪問不同的節(jié)點(diǎn),以及不同節(jié)點(diǎn)下的各種設(shè)置信息。

        為了獲取系統(tǒng)中的 IED設(shè)備的相關(guān)信息,在SCL_INFO結(jié)構(gòu)體中間加入了SCL_IED* iedHead指針用來獲取IED設(shè)備信息,從而為分析系統(tǒng)的虛端子連接情況作準(zhǔn)備。

        從以上分析可知,系統(tǒng)中的數(shù)據(jù)結(jié)構(gòu)包含了SCL文件的對(duì)應(yīng)的內(nèi)容,同時(shí)也與SCL文件中的相關(guān)的設(shè)備聯(lián)系在一起。系統(tǒng)中的數(shù)據(jù)結(jié)構(gòu)聯(lián)系如圖2所示。

        除了SCL_INFO結(jié)構(gòu)體外,MMS-Lite使用了另外一個(gè)結(jié)構(gòu)體用來保存SCL解析過程中的數(shù)據(jù)。

        此結(jié)構(gòu)體可以針對(duì)系統(tǒng)中的IED設(shè)備的相關(guān)信息進(jìn)行保存。

        圖2 SCL文件解析數(shù)據(jù)結(jié)構(gòu)聯(lián)系圖

        3 MMS-Lite解析SCL流程

        MMS_lite支持使用EXPAT解析SCL文件,也支持自定義的 SCL文件解析方式,本文使用的是MMS_lite自定義的SCL文件解析。

        在MMS-Lite軟件包以scl_parse函數(shù)作為入口點(diǎn)對(duì)SCD文件進(jìn)行解析。scl_parse函數(shù)改進(jìn)后的原型如下所示:

        ST_RET scl_parse (ST_CHAR *xmlFileName,SCL_INFO *sclInfo,int (*parse_prog)(int pos));

        其中 xmlFileName參數(shù)用來指向需要解析的SCL文件,sclInfo作為以上所分析的SCL_INFO的結(jié)構(gòu)體指針,parse_prog作為函數(shù)指針可以用來在MMS-Lite在解析的過程調(diào)用用戶定義的函數(shù)來完成用戶指定的功能。scl_parse函數(shù)實(shí)際調(diào)用了sx_parseExx_mt函數(shù)來完成 SCL文件的解析。SX_parseExx_mt函數(shù)調(diào)用 sx_parse_mt函數(shù)進(jìn)行SCL文件的解析。系統(tǒng)解析SCL文件的流程圖如圖3所示。

        圖3 MMS-Lite解析流程圖

        從以上流程圖中可知,MMS-Lite在解析 SCL文件的快速性在于解析的過程中將SCL文件全部讀入到系統(tǒng)的內(nèi)存中。

        MMS_Lite軟件包解析XML文件的核心部分在sx_rip_xml函數(shù)中實(shí)現(xiàn),此函數(shù)通過循環(huán)來解析整個(gè)SCL文件的內(nèi)容,在解析的過程中按照了XML文件的基本格式,以“<、!--、-->、![CDATA[”等標(biāo)識(shí)來判斷當(dāng)前的文件解析的節(jié)點(diǎn)并且根據(jù)“>”符號(hào)來判斷數(shù)據(jù)的結(jié)束以及節(jié)點(diǎn)內(nèi)容的嵌套,通過“<”符號(hào)與“>”符號(hào)之間的匹配來判斷節(jié)點(diǎn)內(nèi)容是否嵌套完畢。MMS_Lite軟件包中的sx_rip_xml函數(shù)的流程圖如圖4所示。為了簡(jiǎn)單的描述此函數(shù)的處理過程,本流程圖省略了MMS_Lite軟件中循環(huán)處理過程及相關(guān)的出錯(cuò)處理,在MMS_Lite中可通過相關(guān)的出錯(cuò)處理來判斷SCL文件的完整性。

        圖4 解析函數(shù)流程圖

        4 MMS_lite源代碼改進(jìn)

        MMS_lite在解析 SCL文件的過程中會(huì)解析出大部分的信息,為系統(tǒng)的信息建立了樹形的結(jié)構(gòu)。但是此樹形結(jié)構(gòu)并沒有包含IED設(shè)備及GOOSE信息發(fā)送和接收端的信息,為了建立虛端子的連接情況需要補(bǔ)充某些節(jié)點(diǎn)結(jié)構(gòu)缺少的參數(shù),例如SCL_GSE的MinTime和MaxTime等參數(shù),還需要補(bǔ)充缺少的節(jié)點(diǎn)結(jié)構(gòu),如SCL_PYHCNN,SCL_SDI,SCL_SDO等節(jié)點(diǎn),因此結(jié)構(gòu)體中需要增加scl_ied、scl_ap、scl_doi和scl_extref這4個(gè)單向鏈表的指針,通過這4個(gè)單項(xiàng)鏈表直接的關(guān)系就可以得出系統(tǒng)中的虛端子的連接情況。比對(duì)scl_ied鏈表的name及scl_ap鏈表中的name、LD的實(shí)例名inst和控制塊的name找到與控制塊匹配的SMV/GSE;通過比對(duì)控制塊的datSet屬性和數(shù)據(jù)集DataSet的name找到與控制塊匹配的DataSet。

        MMS-Lite原始代碼中同一個(gè)LN節(jié)點(diǎn)下的所有DAI以扁平化方式存儲(chǔ)在一個(gè)大的 SCL_DAI鏈表中,這樣的存儲(chǔ)結(jié)構(gòu)與 SCD文件原始結(jié)構(gòu)并不一致,不符合 SCD的原始結(jié)構(gòu),因此需要新增SCL_SDI和 SCL_DOI結(jié)構(gòu),這兩個(gè)結(jié)構(gòu)下都有SCL_DAI鏈表,另外SCL_DOI和SCL_SDI都包含一個(gè)SCL_SDI鏈表,通過這兩個(gè)鏈表可以讓解析的數(shù)據(jù)和SCD原始結(jié)構(gòu)一致。

        SCL_SDI數(shù)據(jù)結(jié)構(gòu)如下:

        將以上兩個(gè)數(shù)據(jù)結(jié)構(gòu)加入到SCL_LN數(shù)據(jù)結(jié)構(gòu)中,為解析的數(shù)據(jù)預(yù)留空間。在新增SCD文件需要的數(shù)據(jù)節(jié)點(diǎn)后還需要對(duì)新增節(jié)點(diǎn)結(jié)構(gòu)添加解析函數(shù)同時(shí)在父節(jié)點(diǎn)的子元素表中添加新增節(jié)點(diǎn)的解析參數(shù)。以SCL_PHYCNN為例,需要在父節(jié)點(diǎn)的的子元素表中新增以下解析參數(shù)。

        若新增節(jié)點(diǎn)中包含子元素,還需添加節(jié)點(diǎn)的子元素表。

        最后利用系統(tǒng)中解析出的 sclDecCtrl數(shù)據(jù)結(jié)構(gòu)來填充新的數(shù)據(jù)結(jié)構(gòu),對(duì)于SCL_PHYCNN需要增加_PhysConn_SEFun函數(shù)進(jìn)行數(shù)據(jù)填充。填充的函數(shù)如下。

        5 結(jié)論

        IEC 61850規(guī)定的SCL文件是基于XML的文件,變電站中的配置工具無論是系統(tǒng)配置工具還是IED配置工具,都不可避免的要對(duì)SCL文件進(jìn)行解析。本文針對(duì)MMS-lite軟件對(duì)SCL文件的解析中的數(shù)據(jù)結(jié)構(gòu)進(jìn)行了分析,同時(shí)為了建立SCL文件中的IED設(shè)備的連接關(guān)系,增加了部分?jǐn)?shù)據(jù)結(jié)構(gòu),實(shí)現(xiàn)了MMS-Lite軟件的改進(jìn)。

        [1]張沛超,高翔.智能變電站[J].電氣技術(shù),2010(8): 4-10.

        [2]祁忠,篤竣,張志學(xué),等.IEC 61850 SCL配置工具的研究與實(shí)現(xiàn)[J].電力系統(tǒng)保護(hù)與控制,2009,37(7): 76-81.

        [3]何磊,田霞.IEC 61850SCL配置文件測(cè)試工具的設(shè)計(jì)與實(shí)現(xiàn)[J].電力自動(dòng)化設(shè)備,2012,32(4): 134-137.

        [4]MMS-EASE Reference Manual,System Integration Specialists Company,Inc.

        [5]MMS-EASE Lite Reference Manual,System Integration Specialists Company,Inc.

        [6]劉希峰,韓振峰,李穎.GOOSE報(bào)文與SCD文件間對(duì)應(yīng)關(guān)系的應(yīng)用研究[J].電力系統(tǒng)保護(hù)與控制,2013,41(24): 95-100.

        Improvement of the SCL File Prase Function based on MMS-Lite

        Shen Shilan Xu Qiangchao Kuang Guoan Zou Sanhong Liu Yong
        (Guangzhou Power Supply Co.,Ltd,Guangzhou 510060)

        This paper introduces the basic structure of SCL file.The data structure and implementation process of MMS-Lite for SCL file parse are analysised.As the classical tree structure of MMS-Lite paraser lacks the information of IED equipments and GOOSE,the authors modified the source codes of MMS-Lite to get such information.Finally a more complete information structure was gained,and it is more helpful for showing of the state of the substation.

        MMS-Lite; SCL file; parse function; improvement

        南方電網(wǎng)科技資助項(xiàng)目(No.K-GZM2014-120)

        沈石蘭(1985-),女,廣西桂平人,工程師,主要從事繼電保護(hù)及自動(dòng)化工作。

        猜你喜歡
        鏈表數(shù)據(jù)結(jié)構(gòu)解析
        三角函數(shù)解析式中ω的幾種求法
        基于二進(jìn)制鏈表的粗糙集屬性約簡(jiǎn)
        跟麥咭學(xué)編程
        基于鏈表多分支路徑樹的云存儲(chǔ)數(shù)據(jù)完整性驗(yàn)證機(jī)制
        睡夢(mèng)解析儀
        電競(jìng)初解析
        商周刊(2017年12期)2017-06-22 12:02:01
        “翻轉(zhuǎn)課堂”教學(xué)模式的探討——以《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)為例
        相機(jī)解析
        高職高專數(shù)據(jù)結(jié)構(gòu)教學(xué)改革探討
        鏈表方式集中器抄表的設(shè)計(jì)
        欧美丰满少妇xxxx性| 久久亚洲精彩无码天堂| av资源吧首页在线观看| 一本大道道久久综合av| 能看不卡视频网站在线| 精品一区三区视频在线观看| 亚洲av无码国产精品色软件下戴| 无码的精品免费不卡在线| 女优免费中文字幕在线| 成人麻豆视频免费观看| 女人被弄到高潮的免费视频| 日本高清www午色夜高清视频| 国产AV国片精品有毛| 小草手机视频在线观看| 亚洲偷自拍国综合第一页| 人人爽久久涩噜噜噜av| AV无码一区二区三区国产| 日韩亚洲在线一区二区| 亚洲免费观看视频| 内谢少妇xxxxx8老少交| 在线观看国产三级av| 亚洲午夜精品第一区二区| 放荡的少妇2欧美版| 国产精品午睡沙发系列| 久久亚洲一级av一片| 国产实拍日韩精品av在线| 啦啦啦www播放日本观看| 国产精品区一区二区三在线播放 | 日韩av天堂综合网久久| 亚洲av成人无码一二三在线观看| 少妇对白露脸打电话系列| 国产精品久久久久久久久久影院| 人妻少妇中文字幕,久久精品| 欧美成免费a级毛片| 国产一级片毛片| 久久久国产精品三级av| 中文字幕日韩人妻在线视频| 呻吟国产av久久一区二区| 日本黄色一区二区三区视频| 视频在线观看一区二区三区| 久久综合九色综合网站|