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

        ?

        SCL文件逐級(jí)自動(dòng)更新算法設(shè)計(jì)與實(shí)現(xiàn)

        2016-02-23 04:52:25陳宏君馮亞?wèn)|王國(guó)棟文繼鋒

        陳宏君,馮亞?wèn)|,熊 蕙,王國(guó)棟,葉 翔,文繼鋒

        (南京南瑞繼保電氣有限公司,江蘇 南京 211102)

        SCL文件逐級(jí)自動(dòng)更新算法設(shè)計(jì)與實(shí)現(xiàn)

        陳宏君,馮亞?wèn)|,熊 蕙,王國(guó)棟,葉 翔,文繼鋒

        (南京南瑞繼保電氣有限公司,江蘇 南京 211102)

        針對(duì)SCL文件前后變化導(dǎo)致變電站工程升級(jí)工作量較大的問(wèn)題,文中設(shè)計(jì)了基于層次關(guān)鍵字逐級(jí)匹配的自動(dòng)更新算法。該算法基于流文本方式快速解析兩個(gè)版本的SCL文件,并以層次樹(shù)型結(jié)構(gòu)管理各文件節(jié)點(diǎn)數(shù)據(jù)。通過(guò)導(dǎo)入預(yù)先定義的節(jié)點(diǎn)匹配關(guān)鍵字設(shè)置信息,以舊版本文件數(shù)據(jù)為基準(zhǔn),在兩個(gè)版本文件數(shù)據(jù)的各層結(jié)構(gòu)內(nèi)基于關(guān)鍵字進(jìn)行匹配,標(biāo)記節(jié)點(diǎn)的新增、刪除或部分更新的標(biāo)記,并將新版本文件差異內(nèi)容更新到舊版本文件中,還進(jìn)行邏輯節(jié)點(diǎn)內(nèi)DAI短地址配置匹配處理和數(shù)據(jù)模板的刷新處理?;谠摲椒▽?shí)現(xiàn)了變電站SCL文件自動(dòng)對(duì)比、增量更新功能,方便了工程的升級(jí)維護(hù)。

        SCL文件;自動(dòng)更新;逐級(jí)匹配;文件升級(jí)

        1 概 述

        SCL文件是IEC 61850標(biāo)準(zhǔn)的重要內(nèi)容,對(duì)該文件的配置、建模、修改是智能變電站建設(shè)的基礎(chǔ)工作。已經(jīng)在集成調(diào)試、現(xiàn)場(chǎng)投運(yùn)中的裝置,由于需求的變化或功能調(diào)整,可能需要升級(jí)。而升級(jí)前后的SCD、ICD等SCL文件通常有變化,例如當(dāng)新增或刪除信號(hào)后,可引起邏輯節(jié)點(diǎn)實(shí)例號(hào)和層次索引名的大幅變化,和正在使用的模型文件不兼容。此時(shí)集成配置軟件需要重新關(guān)聯(lián)虛端子、后臺(tái)需更新畫(huà)面中信號(hào)層次索引名,帶來(lái)升級(jí)的工作量。SCL文件采用XML層次結(jié)構(gòu)描述,不適合直接用文本對(duì)比后手動(dòng)修改,需要分析其語(yǔ)義,提供自動(dòng)比較、增量更新的方法,降低實(shí)際工程實(shí)施中的升級(jí)工作量。

        文獻(xiàn)[1]對(duì)當(dāng)前信息模型的應(yīng)用現(xiàn)狀進(jìn)行了總結(jié),討論了模型缺失、擴(kuò)展、一致性測(cè)試3個(gè)方面的問(wèn)題。文獻(xiàn)[2]提出了IEC 61850建模工具的概念,利用數(shù)據(jù)庫(kù)存儲(chǔ)模型描述等信息,通過(guò)提取相關(guān)信息,自動(dòng)形成各種模型相關(guān)文件。文獻(xiàn)[3]介紹了SCL解析器、數(shù)據(jù)模型的構(gòu)建、配置模板庫(kù)和相關(guān)界面的實(shí)現(xiàn)方法,側(cè)重于配置工具的具體實(shí)現(xiàn)。文獻(xiàn)[4]指出現(xiàn)有的智能變電站設(shè)計(jì)工具和系統(tǒng)配置工具已經(jīng)無(wú)法滿足用戶日益增長(zhǎng)的需求,提出了設(shè)計(jì)配置一體化的功能規(guī)范,在該文的項(xiàng)目管理子系統(tǒng)中簡(jiǎn)要介紹了版本管理模塊,提出應(yīng)支持基于語(yǔ)義的內(nèi)容比較,不能簡(jiǎn)單列出不同版本的XML文本差異,限于篇幅,未具體闡述實(shí)現(xiàn)思路。文獻(xiàn)[5]提及了ICD文件導(dǎo)入方法,該方法首先建立裝置初始設(shè)計(jì)模板,重點(diǎn)用于對(duì)比虛端子,在第1次導(dǎo)入時(shí)需進(jìn)行手動(dòng)匹配。文獻(xiàn)[6]開(kāi)發(fā)了SCL比對(duì)工具,利用二維表結(jié)構(gòu),采用循環(huán)、排序、交叉對(duì)比的方法,可展示兩個(gè)SCL文件的差異。上述文獻(xiàn)均未涉及SCL文件自動(dòng)更新的內(nèi)容。

        SCL文件本質(zhì)是XML格式的文本,文獻(xiàn)[7]研究了大型XML解析技術(shù),文獻(xiàn)[8]研究了一種XML數(shù)據(jù)更新算法,利用SAX技術(shù)解析,在局部數(shù)據(jù)上利用DOM方法更新。文獻(xiàn)[9]提出了支持XML文檔更新的DVLS編碼方法。但是SCL文件定義的相關(guān)節(jié)點(diǎn)有數(shù)據(jù)相關(guān)性,例如數(shù)據(jù)模板的變化,涉及到邏輯節(jié)點(diǎn)實(shí)例的更新,完全基于局部?jī)?nèi)容替換的方法,并不適合SCL文件的升級(jí)。為此文中提出一種處理思路:對(duì)于大部分節(jié)點(diǎn),采用逐級(jí)關(guān)鍵字匹配,標(biāo)記新增、刪除、部分更新的標(biāo)記,進(jìn)行通用化的操作。對(duì)于數(shù)據(jù)模板、邏輯節(jié)點(diǎn)等關(guān)鍵數(shù)據(jù),則在通用化算法的基礎(chǔ)上,定義對(duì)應(yīng)的處理規(guī)則并開(kāi)發(fā)合適的算法程序,從而實(shí)現(xiàn)SCL文件的自動(dòng)更新。

        2 SCL文件逐級(jí)更新算法

        SCL文件根節(jié)點(diǎn)名為SCL,第1層節(jié)點(diǎn)包括Header、SubStation、Communication、IED、DataTypeTemplates共5個(gè)節(jié)點(diǎn),在IED節(jié)點(diǎn)下包括AccessPoint節(jié)點(diǎn),在AccessPoint節(jié)點(diǎn)下包括Server節(jié)點(diǎn),在Server節(jié)點(diǎn)下包括LDevcie節(jié)點(diǎn),其概要層次結(jié)構(gòu)如圖1所示[10-12]。

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

        文獻(xiàn)[10]詳細(xì)定義了SCL相關(guān)的節(jié)點(diǎn)、屬性、結(jié)構(gòu),文中不再具體介紹。本節(jié)重點(diǎn)介紹模型文件逐級(jí)自動(dòng)更新算法的思路。

        2.1 逐級(jí)自動(dòng)更新原理

        SCL文件逐級(jí)自動(dòng)更新算法的原理如圖2所示。導(dǎo)入舊版本文件、新版本文件,以舊文件為藍(lán)本,將新、舊文件的內(nèi)容進(jìn)行對(duì)比,根據(jù)不同層次的XML節(jié)點(diǎn)名稱,按照預(yù)先定義的關(guān)鍵字,構(gòu)建對(duì)應(yīng)的查找匹配項(xiàng),標(biāo)記節(jié)點(diǎn)的新增、刪除、部分更新標(biāo)記,在舊版本文件對(duì)應(yīng)的內(nèi)存數(shù)據(jù)中采取復(fù)制、刪除、更新等操作,輸出用于運(yùn)行的文件。圖2的原理也適用于后綴為icd、cid等SCL系列文件。

        圖2 SCL文件自動(dòng)更新原理圖

        SCL文件逐級(jí)自動(dòng)更新算法步驟如圖3所示。首先更新數(shù)據(jù)模板,再處理IED節(jié)點(diǎn),采用IED的name屬性值作為關(guān)鍵字匹配,在name屬性相同的兩個(gè)IED內(nèi),按照層次結(jié)構(gòu)模型,進(jìn)行分層更新,依次處理連接接入點(diǎn)(AccessPoint)、邏輯設(shè)備(LDevice)、邏輯節(jié)點(diǎn)(LN)。之后更新變電站(SubStation)和通信節(jié)點(diǎn)(Communication)內(nèi)容,對(duì)于文件頭(Header)則將新文件內(nèi)容直接替換到舊文件。

        圖3 SCL文件逐級(jí)自動(dòng)更新步驟

        在處理單個(gè)節(jié)點(diǎn)時(shí),根據(jù)預(yù)定義的關(guān)鍵字,形成以關(guān)鍵字為主鍵的Hash表,關(guān)鍵字可以是本層節(jié)點(diǎn)、父層節(jié)點(diǎn)若干屬性值拼接而成,則該節(jié)點(diǎn)的更新邏輯為(數(shù)據(jù)模板除外):

        (1)對(duì)于關(guān)鍵字相同、在新舊文件中匹配的節(jié)點(diǎn),則進(jìn)入本層節(jié)點(diǎn)的部分更新處理環(huán)節(jié),首先更新本層節(jié)點(diǎn)的屬性值,之后遞歸調(diào)用更新函數(shù),逐層進(jìn)行子節(jié)點(diǎn)的更新;

        (2)當(dāng)新版本文件的節(jié)點(diǎn)在舊版本文件內(nèi)未找到時(shí),將該節(jié)點(diǎn)標(biāo)記為新增內(nèi)容,并將新增內(nèi)容復(fù)制到舊版本文件對(duì)應(yīng)的內(nèi)存數(shù)據(jù)中;

        (3)當(dāng)舊版本文件的節(jié)點(diǎn)在新版本文件中未找到時(shí),將該節(jié)點(diǎn)標(biāo)記為刪除內(nèi)容,并從舊版本內(nèi)存數(shù)據(jù)中刪除。

        表1給出了典型節(jié)點(diǎn)的匹配關(guān)鍵字。

        表1 SCL節(jié)點(diǎn)匹配關(guān)鍵字

        在表1中,LN、FCDA的匹配關(guān)鍵字為多個(gè)屬性值拼接而成。DAI有2個(gè)關(guān)鍵字,其中refName表示層次索引名,由DOI、SDI、DAI的name屬性拼接而成,其中sAddr是短地址信息。

        每個(gè)DOI可設(shè)置一個(gè)主鍵DAI,主鍵DAI通過(guò)INI文件可配置,INI文件按照DOType的CDC屬性劃分設(shè)置,通常為DOI所管理的第1個(gè)DAI或第1個(gè)SDI下的DAI,例如:

        [CDC=INS]

        stVal,ST,Key,dU

        表示CDC為INS的各個(gè)實(shí)例化DOI,其主鍵DAI為stVal(FC=ST),提取stVal的sAddr屬性值作為關(guān)鍵字,同時(shí)dU的屬性值取stVal對(duì)應(yīng)的變量描述。

        以站控層的AccessPoint節(jié)點(diǎn)下Server為例,在圖4中,新文件有邏輯設(shè)備LD0、PROT、MEAS,舊文件有邏輯設(shè)備LD0、PROT、CTRL,通過(guò)inst關(guān)鍵字匹配后,可得出MEAS為新增節(jié)點(diǎn),CTRL為需刪除節(jié)點(diǎn),LD0、PROT為需進(jìn)行逐層匹配更新的節(jié)點(diǎn)。

        SubNetwork的匹配關(guān)鍵字是name屬性,可用相同的原理處理變電站、通信設(shè)置信息等內(nèi)容。

        2.2 數(shù)據(jù)模板自動(dòng)更新算法

        隨著《IEC 61850工程繼電保護(hù)應(yīng)用模型》規(guī)范發(fā)布[13]和新六統(tǒng)一入網(wǎng)測(cè)試的標(biāo)準(zhǔn)化建模,數(shù)據(jù)模板的EnumType、DAType、DOType已經(jīng)趨于統(tǒng)一和穩(wěn)定,各個(gè)廠家或單個(gè)廠家在不同時(shí)期的數(shù)據(jù)模板的主要差異體現(xiàn)在LNodeType的定義上。本節(jié)重點(diǎn)闡述LNodeType的更新算法,該算法也適用于數(shù)據(jù)模板內(nèi)其他3種數(shù)據(jù)類的處理。對(duì)于新、舊版本的SCL文件中LNodeType,以id為關(guān)鍵字構(gòu)建Hash查找表, LNodeType的更新邏輯為:

        (1)對(duì)于id相同、在新舊文件中匹配的LNodeType節(jié)點(diǎn),則比較其成員DO的個(gè)數(shù)、DO的name+type的關(guān)鍵字是否相同,如果不同,則在新文件中重命名該id,并刷新在新文件中對(duì)應(yīng)的實(shí)例化LN的lnType值;并置LNodeType為新增標(biāo)記,將其復(fù)制到舊文件的內(nèi)存數(shù)據(jù)中;

        (2)當(dāng)新版本文件的LNodeType在舊版本文件內(nèi)未找到時(shí),則置為新增標(biāo)記,匯總該LNodeType中DO成員中使用的DOType、DAType、EnumType,采用覆蓋的策略,將相關(guān)內(nèi)容復(fù)制到舊文件內(nèi)存數(shù)據(jù)中;

        (3)當(dāng)舊版本文件的LNodeType在新版本文件內(nèi)未找到時(shí),暫不置刪除標(biāo)記,而是在邏輯節(jié)點(diǎn)更新處理結(jié)束后,檢測(cè)各個(gè)邏輯設(shè)備下是否有該類型的LN實(shí)例,如果LNodeType在SCL中實(shí)例化個(gè)數(shù)為0,則置刪除標(biāo)記。

        2.3 邏輯節(jié)點(diǎn)自動(dòng)更新算法

        1個(gè)邏輯節(jié)點(diǎn)實(shí)例代表1個(gè)具體的功能,是分解得到的最小功能單元。邏輯節(jié)點(diǎn)由若干公用數(shù)據(jù)類的派生實(shí)例組合而成。LN的匹配關(guān)鍵字在表1中定義為prefix+lnType+inst,用lnType替換lnClass作為關(guān)鍵屬性的原因是需相同類模板的實(shí)例才能匹配。LN的DOI配置內(nèi)容是關(guān)鍵信息,其主鍵DAI的sAddr屬性填寫(xiě)裝置的變量名或地址,故對(duì)sAddr屬性的更新是關(guān)鍵步驟。定義需要處理的DOI數(shù)據(jù)擴(kuò)充類為CtDOIEx,并命名新文件的LDevice實(shí)例為pnewLD,舊文件匹配的實(shí)例為poldLD,在LDevice內(nèi)定義2個(gè)Hash表:

        (1)基于短地址QMultiHashm_saddrHash,用于匯總配置的變量;

        (2)基于DOI的主鍵層次索引名QHashm_refHash,用于匯總配置變量對(duì)應(yīng)的層次索引名。

        在邏輯設(shè)備范圍內(nèi),對(duì)各個(gè)邏輯節(jié)點(diǎn)的配置內(nèi)容,以sAddr為核心進(jìn)行更新匹配,其處理步驟為:

        (1)依次匯總新、舊文件中匹配的LDevice下各個(gè)LN的DOI配置信息,形成pnewLD、poldLD的2個(gè)Hash表;

        (2)依次遍歷poldLD->m_saddrHash的成員pex1,以pex1的短地址在pnewLD->m_saddrHash查找,如查找到,則置保留標(biāo)記;若未查找到,置刪除標(biāo)記;

        (3)依次遍歷pnewLD->m_saddrHash的成員pex2,以pex2的層次索引名在poldLD->m_refHash查找,若未查找到,置新增標(biāo)記;

        (4)匯總poldLD中置刪除標(biāo)記的DOI,在內(nèi)存數(shù)據(jù)中清除該DOI配置,并刪除關(guān)聯(lián)的數(shù)據(jù)集內(nèi)FCDA;若單個(gè)LN的DOI都刪除,則刪除該LN;

        (5)匯總pnewLD中置新增標(biāo)記的DOI,將該LN復(fù)制到poldLD內(nèi)存數(shù)據(jù)中,僅復(fù)制LN內(nèi)為新增標(biāo)記的DOI和關(guān)聯(lián)的FCDA,并處理LN的實(shí)例號(hào)和更新數(shù)據(jù)模板。

        上述處理還考慮了變量配置遷移到另一個(gè)LN的情況。圖5是邏輯節(jié)點(diǎn)更新的示例。

        圖5 邏輯節(jié)點(diǎn)更新示意圖

        在圖5中,通過(guò)雙向匹配,舊文件中B12.BI05置刪除標(biāo)記,新文件中的B02.Op置新增標(biāo)記,B12.BI01~B12.BI04置保留標(biāo)記,其refName沿用舊文件的索引,而B(niǎo)02.Op配置內(nèi)容填充到新創(chuàng)建的GGIO2.Ind1.stVal的sAddr屬性,最大程度保留了舊文件的配置內(nèi)容,實(shí)現(xiàn)了增量更新。

        在邏輯節(jié)點(diǎn)下,還需處理數(shù)據(jù)集、報(bào)告塊等內(nèi)容更新,這些節(jié)點(diǎn)均以name為關(guān)鍵字進(jìn)行匹配。在數(shù)據(jù)集內(nèi),單個(gè)FCDA以其所有屬性值拼接后作為關(guān)鍵字進(jìn)行匹配。

        3 大型SCL文件讀寫(xiě)實(shí)現(xiàn)

        在實(shí)現(xiàn)第2節(jié)介紹的處理算法時(shí),需進(jìn)行XML數(shù)據(jù)建模,并基于該模型實(shí)現(xiàn)大型SCL讀寫(xiě)操作等基礎(chǔ)功能。

        3.1 XML節(jié)點(diǎn)類定義

        XML節(jié)點(diǎn)包括若干屬性和若干子節(jié)點(diǎn),是個(gè)遞歸定義結(jié)構(gòu):

        class SCL_DECLSPEC CElement{

        public:

        CElement(QString& name);

        CElement(QString& name,CElement* parent);

        virtual~CElement();

        public:

        QListm_attrList; //本層屬性QList m_childList; //子節(jié)點(diǎn)

        protected:

        ushort m_classID; //類型標(biāo)記

        CElement* m_pParent; //父節(jié)點(diǎn)

        QString m_strName; //本層X(jué)ML節(jié)點(diǎn)名

        QString m_strValue; //本層X(jué)ML設(shè)置值

        };

        CElement提供屬性和子節(jié)點(diǎn)查找、創(chuàng)建、刪除、設(shè)置等接口。SCL相關(guān)節(jié)點(diǎn)基于CElement派生,SCL類設(shè)計(jì)參照IEC 61850標(biāo)準(zhǔn)發(fā)布的SCL.xsd、SCL_IED.xsd等文件的定義,包括CtDO、CtDOI、CtAnyLN、CtLN、CtLDevice、CtAccesPoint、CtIED等數(shù)據(jù)類。

        3.2 大型SCL文件讀寫(xiě)處理

        由于SCL文件更新是分層次進(jìn)行,并且基于Hash表查找,處理的時(shí)間、空間復(fù)雜度較低,主要的時(shí)間消耗在SCL文件的讀寫(xiě)處理上(經(jīng)統(tǒng)計(jì),讀寫(xiě)時(shí)間平均占用整個(gè)處理環(huán)節(jié)65%的時(shí)間)。文獻(xiàn)[3]采用Xerces開(kāi)源庫(kù)解析SCL文件,采用基于DOM的樹(shù)形結(jié)構(gòu)讀寫(xiě)文件?;贒OM的接口功能豐富,但是讀寫(xiě)速度慢。文獻(xiàn)[7]研究了基于SAX方式解析大型XML文件,解析速度較快,SAX在碰到一個(gè)節(jié)點(diǎn)后,會(huì)調(diào)用基類定義的回調(diào)虛函數(shù),應(yīng)用層只能根據(jù)傳入的參數(shù)實(shí)現(xiàn)不同處理,代碼實(shí)現(xiàn)復(fù)雜,并且不支持增量更新寫(xiě)操作。QT4.5版本提供了QXmlStreamReader、QXmlStreamWriter的接口,是SAX方式的改進(jìn)接口,讀寫(xiě)速度有20%的提升,并支持分層讀取。文中采用基于QT提供的流文本方式實(shí)現(xiàn)大型SCL文件讀寫(xiě)。按照流文本方式掃描,通過(guò)readNext()讀取一個(gè)節(jié)點(diǎn),并對(duì)當(dāng)前節(jié)點(diǎn)做相應(yīng)處理。基于抽象數(shù)據(jù)結(jié)構(gòu)CElement和對(duì)象工廠,則可實(shí)現(xiàn)SCL文件的通用化讀寫(xiě),核心代碼僅為150行,采用棧來(lái)臨時(shí)管理創(chuàng)建的節(jié)點(diǎn)數(shù)據(jù),其讀文件的算法思路為:

        (1)如果讀到節(jié)點(diǎn)類型為StartElement,則根據(jù)節(jié)點(diǎn)名調(diào)用對(duì)象工廠創(chuàng)建派生實(shí)例,如果棧為空,是根節(jié)點(diǎn),否則彈出棧頂指針作為父節(jié)點(diǎn),并存儲(chǔ)當(dāng)前節(jié)點(diǎn)的屬性列表;新創(chuàng)建對(duì)象入棧;

        (2)如果讀到節(jié)點(diǎn)類型為Characters,則處理CDATA、TextNode類型的設(shè)置值;

        (3)如果讀到節(jié)點(diǎn)類型為EndElement,則彈出棧頂元素;

        (4)讀取到文件尾部,結(jié)束。

        SCL讀取函數(shù)的部分代碼示例如下:

        QStack qstack;

        QXmlStreamReader reader(&file);

        reader.setNamespaceProcessing(false);

        while(!reader.atEnd()){

        reader.readNext();

        if(reader.isStartElement())

        {

        QString qname=(reader.qualifiedName().toString());

        CElement *pbase=CtGlobal::creatByID(qname);

        CElement *pParent=qstack.isEmpty()?0:qstack.top();

        if(pParent){parent->addElement(pbase);}

        else{m_pSCL=pbase;}

        qstack.push(pbase);

        … //讀取和存儲(chǔ)本節(jié)點(diǎn)屬性

        }

        else if(reader.isCharacters())

        {…//讀取節(jié)點(diǎn)值}

        else if(reader.isEndElement())

        {if(!qstack.isEmpty()) qstack.pop();}

        }

        基于流方式的SCL文件寫(xiě)操作,則是通過(guò)遞歸調(diào)用寫(xiě)節(jié)點(diǎn)的函數(shù)實(shí)現(xiàn):

        void writeNode(QXmlStreamWriter &qwr,

        CElement* pnode){

        foreach(CAttr* pattr,pnode->m_attrList)

        {qwr.writeAttribute(pattr->name,pattr->val);}

        if(pnode->isTextNode())

        {qwr.writeCharacters(pnode->getValue()); }

        else if(pnode->isCdataNode())

        {qwr.writeCDATA(pnode->getValue());}

        foreach(CElement* pch, pnode->m_childList){

        qwr.writeStartElement(pch->getName());

        writeNode(qwr,pch);

        qwr.writeEndElement();}

        }

        表2給出了不同大小文件的讀寫(xiě)時(shí)間統(tǒng)計(jì)(測(cè)試環(huán)境為4 G內(nèi)存、2.6 GHz的臺(tái)式機(jī))。

        表2 SCL文件讀寫(xiě)耗時(shí)

        4 結(jié)束語(yǔ)

        文中提出一種SCL文件分層比較、自動(dòng)更新算法,通過(guò)新、舊版本文件之間的逐級(jí)自動(dòng)對(duì)比,設(shè)置相關(guān)標(biāo)記,實(shí)現(xiàn)復(fù)制、刪除、部分更新等操作,能夠?qū)崿F(xiàn)模型文件的自動(dòng)化升級(jí),有效減少實(shí)際工程實(shí)施中的人工處理工作量,從而降低模型升級(jí)風(fēng)險(xiǎn),提升數(shù)字化工程實(shí)施效率。該方法已經(jīng)在新六統(tǒng)一入網(wǎng)測(cè)試中進(jìn)行了應(yīng)用,并通過(guò)了近兩年的國(guó)內(nèi)外數(shù)字化工程的實(shí)踐檢驗(yàn)。文中后續(xù)工作是支持IEC 61850 Ed2版本[14]的SCL文件更新處理。

        [1] 樊 陳,倪益民,竇仁暉,等.智能變電站信息模型的討論[J].電力系統(tǒng)自動(dòng)化,2012,36(13):15-19.

        [2] 王麗華,張青山,張馬龍,等.IEC 61850建模工具的設(shè)計(jì)與實(shí)現(xiàn)[J].電力系統(tǒng)自動(dòng)化,2008,32(4):73-76.

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

        [4] 篤 峻,葉 翔,王長(zhǎng)瑞,等.智能變電站設(shè)計(jì)配置一體化功能規(guī)范研究及工具開(kāi)發(fā)[J].電力系統(tǒng)自動(dòng)化,2014,38(20):85-89.

        [5] 修黎明,高湛軍,黃德斌,等.智能變電站二次系統(tǒng)設(shè)計(jì)方法研究[J].電力系統(tǒng)保護(hù)與控制,2012,40(22):124-128.

        [6] 高 磊.IEC 61850 SCL配置文件比對(duì)工具的研究與實(shí)現(xiàn)[J].電力系統(tǒng)自動(dòng)化,2013,37(20):88-91.

        [7] 張?zhí)?曾文華,陳志偉.大型XML文檔解析技術(shù)的應(yīng)用與研究[J].廈門大學(xué)學(xué)報(bào):自然科學(xué)版,2009,48(3):338-341.

        [8] 鮑培明,吉根林.XML數(shù)據(jù)更新算法研究[J].計(jì)算機(jī)工程,2008,34(4):101-103.

        [9] 付 鵬,蔣夏軍,皮德常.一種新的支持XML文檔更新的編碼方法[J].計(jì)算機(jī)科學(xué),2014,41(3):193-197.

        [10] IEC/TC57.Communication networks and systems for power utility automation-part 6:configuration description language for communication in electrical substation related to IEDs[S].[s.l.]:IEC/TC57,2003.

        [11] IIEC/TC57.Communication networks and systems for power utility automation-part 7-3:basic communication structure-common data classes[S].[s.l.]:IEC/TC57,2003.

        [12] IIEC/TC57.Communication networks and systems for power utility automation-part 7-4:basic communication structure-compatible logical node classes and data object classes[S].[s.l.]:IEC/TC57,2003.

        [13] IIEC 61850工程繼電保護(hù)應(yīng)用模型[S].Q/GDW 1396-2012,2014.

        [14] IIEC/TC57.Communication networks and systems for power utility automation-part 6:configuration description language for communication in electrical substation related to IEDs[S].[s.l.]:IEC/TC57,2010.

        Design and Implementation of Hierarchical and Automatic Updating Algorithm for SCL File

        CHEN Hong-jun,F(xiàn)ENG Ya-dong,XIONG Hui,WANG Guo-dong,YE Xiang,WEN Ji-feng

        (NR Electric Co.,Ltd.,Nanjing 211102,China)

        To solve the problem that massive updating workload is aroused by the change of SCL file in substations,it designs an automatic updating algorithm based on stepwise matching of hierarchical keywords in this paper.The algorithm implements fast analysis of two different version SCL files with streaming-text based approach,and manages data nodes of each SCL file with hierarchical tree structure.Firstly the algorithm imports pre-defined data nodes to match primary key information and considers the old version SCL file as a baseline.Then it compares the keyword of each node between the two version SCL files and marks every different node as added,deleted or partial updated.Finally the algorithm upgrades the old version SCL file node by node hierarchically with the marked distinctions,meanwhile implements the matching process of DOI short addresses within logic nodes and the refreshing of data templates.The algorithm achieves automatic comparison and incremental updating of substation SCL files and facilitates the engineering upgraded maintenance observably.

        SCL file;automatic updating;hierarchical matching;file upgrading

        2015-06-11

        2015-09-15

        時(shí)間:2016-02-18

        國(guó)家“863”高技術(shù)發(fā)展計(jì)劃項(xiàng)目(2015AA050101)

        陳宏君(1981-),男,高級(jí)工程師,碩士,研究方向?yàn)榭梢暬幊誊浖颓度胧杰浖邪l(fā)。

        http://www.cnki.net/kcms/detail/61.1450.TP.20160218.1630.036.html

        TP301.6

        A

        1673-629X(2016)03-0121-05

        10.3969/j.issn.1673-629X.2016.03.029

        国产三级在线观看性色av| 影音先锋女人av鲁色资源网久久| 青青草原综合久久大伊人| 精品无码久久久九九九AV| 亚洲av人片在线观看调教| 日本视频一区二区三区观看| 国内精品视频一区二区三区八戒| 女人扒开屁股爽桶30分钟| 亚洲人成网站在线播放观看| 中文字幕一二区中文字幕| 蜜桃视频在线免费视频| 久久亚洲欧美国产精品| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 中文字幕无码免费久久9一区9 | 男女性搞视频网站免费| 精品一区二区三区婷婷| 国产激情综合在线观看| 亚洲av无码片一区二区三区| 国产欧美久久久精品影院| 九一精品少妇一区二区三区| 真实国产乱子伦精品视频| 越南女子杂交内射bbwxz| 日本精品免费一区二区三区| 日本免费一区二区精品| 欧美嫩交一区二区三区| 免费a级毛片无码a| 亚洲美女国产精品久久久久久久久 | 91久久青青草原线免费| 精品日本一区二区视频| 亚洲乱码中文字幕在线| 精品一区二区三区免费播放| 久久青草国产精品一区| 久久国产精品国语对白| 欧美又粗又长又爽做受| 伊人影院综合在线| 国产女主播视频一区二区三区| 西川结衣中文字幕在线| 丁香五香天堂网| 亚洲最稳定资源在线观看| 亚洲av高清天堂网站在线观看| 国产女厕偷窥系列在线视频|