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

?

一種使用Python實(shí)現(xiàn)IEC61850規(guī)約的全自動(dòng)檢測(cè)技術(shù)

2022-06-20 06:44:18王詩(shī)清王建偉袁廣寶
關(guān)鍵詞:自動(dòng)測(cè)試規(guī)約報(bào)文

王詩(shī)清, 王建偉, 楊 斌, 袁廣寶

(1. 國(guó)網(wǎng)遼寧省電力有限公司 電力科學(xué)研究院, 遼寧 沈陽(yáng) 110018;2. 北京四方繼保工程技術(shù)有限公司, 北京 100085)

0 引 言

規(guī)約的一致性測(cè)試是IED投入使用前的必要過(guò)程[1]. IEC61850-10部分規(guī)定的一致性測(cè)試是用于驗(yàn)證IED通信接口與IEC61850標(biāo)準(zhǔn)要求的一致性. 該部分規(guī)定了實(shí)現(xiàn)IEC61850規(guī)約一致性測(cè)試的標(biāo)準(zhǔn)技術(shù)及提出性能參數(shù)時(shí)要使用的特定測(cè)量技術(shù). 使用這些技術(shù)將提高系統(tǒng)集成商集成IED、 正確操作IED及支持預(yù)期應(yīng)用的能力. IEC61850規(guī)約的一致性測(cè)試是保證IED設(shè)備實(shí)現(xiàn)互聯(lián)互通互操作性的基礎(chǔ), 如果不能實(shí)現(xiàn)互聯(lián)互通互操作, 規(guī)約的制定就沒(méi)有了意義. IEC61850規(guī)約一致性的測(cè)試能夠在最大程度上保證IED設(shè)備間通信接口與IEC61850標(biāo)準(zhǔn)協(xié)議相一致, 進(jìn)而確保設(shè)備能夠?qū)崿F(xiàn)互聯(lián)互通互操作. 但是, 由于IEC61850規(guī)約一致性測(cè)試內(nèi)容多、 涉及細(xì)節(jié)關(guān)注點(diǎn)多、 對(duì)專(zhuān)業(yè)性要求高、 設(shè)置配置復(fù)雜等原因, 使得完成這類(lèi)測(cè)試需要具備極高的IEC61850規(guī)約專(zhuān)業(yè)知識(shí)的專(zhuān)業(yè)技術(shù)人員, 并借助不同的工具軟件和測(cè)試設(shè)備才能夠完成, 從而導(dǎo)致IEC61850規(guī)約一致性的檢測(cè)效率低、 人工檢測(cè)易造成細(xì)節(jié)點(diǎn)的遺漏缺失、 無(wú)法遍歷全覆蓋測(cè)試等問(wèn)題. 因此, 快速、 高效、 準(zhǔn)確、 可遍歷全覆蓋的IEC61850規(guī)約一致性自動(dòng)化測(cè)試變的更加必要.

目前, 眾多的檢測(cè)方法和工具被應(yīng)用于IEC61850服務(wù)器規(guī)約一致性測(cè)試當(dāng)中. 但不論使用哪種工具, 都需要對(duì)IEC61850規(guī)范標(biāo)準(zhǔn)非常了解, 且同時(shí)需要對(duì)server端的設(shè)備(被測(cè)試設(shè)備)進(jìn)行一些人工操作, 如在進(jìn)行報(bào)告服務(wù)測(cè)試時(shí), 需要人工操作被測(cè)試設(shè)備來(lái)觸發(fā)生成變位報(bào)告, 同時(shí), 需要抓包對(duì)該報(bào)告報(bào)文進(jìn)行分析, 判斷其是否符合預(yù)期. 若對(duì)IEC61850規(guī)范標(biāo)準(zhǔn)理解不全面不正確, 經(jīng)常會(huì)導(dǎo)致測(cè)試結(jié)果出現(xiàn)問(wèn)題和偏差.

針對(duì)目前IEC61850服務(wù)器規(guī)約一致性測(cè)試工作中的諸多問(wèn)題, 鑒于目前開(kāi)源庫(kù)資源的日趨豐富及完善, 本文提出了一種基于開(kāi)源庫(kù), 使用Python對(duì)IEC61850服務(wù)器規(guī)約一致性進(jìn)行全覆蓋遍歷的全自動(dòng)化測(cè)試方法. 因IEC61850服務(wù)器規(guī)約一致性測(cè)試包括的內(nèi)容較多, 本文將主要針對(duì)報(bào)告服務(wù)的自動(dòng)化測(cè)試技術(shù)的實(shí)現(xiàn)提出解決方法. 首先提出IEC61850服務(wù)器規(guī)約一致性測(cè)試的基本過(guò)程方法. 針對(duì)較難實(shí)現(xiàn)自動(dòng)測(cè)試的報(bào)告服務(wù)提出了通過(guò)取代服務(wù)模擬置數(shù)產(chǎn)生報(bào)告的方式, 杜絕人工干預(yù), 從而實(shí)現(xiàn)自動(dòng)觸發(fā)生成報(bào)告, 進(jìn)而對(duì)IEC61850報(bào)告服務(wù)進(jìn)行自動(dòng)測(cè)試的方法, 加強(qiáng)一致性測(cè)試的可信度和嚴(yán)謹(jǐn)性.

1 IEC61850服務(wù)器端規(guī)約一致性測(cè)試的一般過(guò)程

國(guó)際上將IEC61850作為變電站通信網(wǎng)絡(luò)和系統(tǒng)的統(tǒng)一標(biāo)準(zhǔn), 用于統(tǒng)一變電站內(nèi)功能和裝置等各個(gè)方面, 使變電站內(nèi)裝置間的通信變得更加統(tǒng)一便捷. 在這一標(biāo)準(zhǔn)下建立起統(tǒng)一各廠商的通用配置, 支持不同智能電子設(shè)備間的信息共享和互操作. 其主要優(yōu)勢(shì)和作用在于為同網(wǎng)絡(luò)上工作的不同設(shè)備建立信息比對(duì)和命令執(zhí)行共享途徑, 實(shí)現(xiàn)通信的統(tǒng)一性, 避免因通訊協(xié)議的不同造成設(shè)備間繁瑣的規(guī)約轉(zhuǎn)換. 規(guī)約一致性的測(cè)試是對(duì)IED設(shè)備間進(jìn)行互聯(lián)互通互操作的基本保障. IEC61850服務(wù)器規(guī)約一致性檢測(cè)的基本過(guò)程[2]如圖 1 所示.

圖 1 IEC61850規(guī)約一致性測(cè)試過(guò)程

由圖 1 所示的IEC61850規(guī)約一致性服務(wù)器端的一般測(cè)試過(guò)程可以看出, 首先, 我們需要對(duì)服務(wù)器端提供的PICS, MICS, PIXIT文檔及IED設(shè)備的能力描述文件ICD進(jìn)行靜態(tài)的檢查[3], 確保文檔完備且文檔對(duì)IEC61850-10中所需要聲明的服務(wù)內(nèi)容及服務(wù)響應(yīng)行為都進(jìn)行了相應(yīng)說(shuō)明; 然后, 根據(jù)所提供的PICS, PIXIT文檔中所提及的服務(wù)及服務(wù)響應(yīng)情況, 使用各類(lèi)工具軟件或測(cè)試設(shè)備, 按照IEC61850-10中的測(cè)試用例逐一進(jìn)行檢測(cè)驗(yàn)證[4]; 最后, 根據(jù)檢測(cè)情況出具對(duì)應(yīng)的試驗(yàn)報(bào)告和過(guò)程報(bào)文. 以上便是一個(gè)完整的一般性的IEC61850規(guī)約一致性服務(wù)器端的檢測(cè)過(guò)程.

2 IEC61850一致性測(cè)試系統(tǒng)

IEC61850一致性測(cè)試主要是驗(yàn)證 IED 通信接口與IEC61850標(biāo)準(zhǔn)要求的一致性, 其包括肯定測(cè)試用例和否定測(cè)試用例, 常見(jiàn)的IEC61850規(guī)約一致性測(cè)試系統(tǒng)結(jié)構(gòu)如圖 2 所示.

圖 2 常見(jiàn)IEC61850一致性測(cè)試系統(tǒng)結(jié)構(gòu)

圖 2 中, 被測(cè)試設(shè)備(DUT)一般為保護(hù)或智能控制設(shè)備, 其一致性測(cè)試過(guò)程如下:

通常用一個(gè)通信仿真器(Client Simulator)作為一個(gè)IEC61850客戶端, 通過(guò)以太網(wǎng)向被測(cè)設(shè)備(DUT)發(fā)送服務(wù)請(qǐng)求并記錄和處理結(jié)果信息. 通信仿真器通常采用UniCASim simulator[5].

被測(cè)試設(shè)備的信號(hào)觸發(fā)等輔助試驗(yàn)可由試驗(yàn)測(cè)試儀(Signal Generator)提供, 包括電壓電流等模擬量和開(kāi)關(guān)量的輸出, 進(jìn)行環(huán)境仿真, 并與通信仿真器(Client Simulator)相互通信.

通常使用一個(gè)網(wǎng)絡(luò)協(xié)議報(bào)文分析儀(Protocol Analyzer)來(lái)監(jiān)控測(cè)試過(guò)程中出現(xiàn)的錯(cuò)誤, 網(wǎng)絡(luò)協(xié)議分析儀將對(duì)整個(gè)過(guò)程的報(bào)文進(jìn)行記錄和解析, 并分析所得檢測(cè)結(jié)果.

最后, 應(yīng)配置一個(gè)時(shí)鐘同步裝置用來(lái)對(duì)被測(cè)試設(shè)備、 試驗(yàn)測(cè)試儀、 通信仿真器等一致性測(cè)試中各個(gè)設(shè)備的時(shí)間進(jìn)行同步. 以上設(shè)備便構(gòu)成了IEC61850的一致性服務(wù)端測(cè)試的基本框架.

3 一致性報(bào)告服務(wù)自動(dòng)測(cè)試的實(shí)現(xiàn)

3.1 總體設(shè)計(jì)

傳統(tǒng)的IEC61850服務(wù)端報(bào)告服務(wù)的測(cè)試, 需要連接試驗(yàn)測(cè)試儀手動(dòng)進(jìn)行模擬量或開(kāi)關(guān)量的觸發(fā), 被測(cè)試設(shè)備和測(cè)試軟件系統(tǒng)之間沒(méi)有形成有效的閉環(huán), 因需要人工干預(yù)觸發(fā)信息, 不能自動(dòng)判斷結(jié)果, 影響測(cè)試的全面性.

IEC61850規(guī)范明確了需要對(duì)取代服務(wù)的支持[6], 且目前絕大部分的IED設(shè)備也都提供了取代服務(wù). 這樣就使得IEC61850規(guī)約一致性報(bào)告服務(wù)的自動(dòng)檢測(cè)在不借助外部設(shè)備或外部手動(dòng)置數(shù)等手段的情況下可以實(shí)現(xiàn).

基于開(kāi)源庫(kù), 使用Python來(lái)實(shí)現(xiàn)的IEC61850服務(wù)器規(guī)約一致性的自動(dòng)測(cè)試[7], 將會(huì)使得整個(gè)測(cè)試驗(yàn)證過(guò)程變得“簡(jiǎn)單、 高效、 集成和智能”, 尤其是對(duì)于整個(gè)一致性規(guī)約測(cè)試中最難進(jìn)行測(cè)試的報(bào)告服務(wù).

將規(guī)約一致性報(bào)告服務(wù)的測(cè)試劃分成3個(gè)模塊:

1)報(bào)告觸發(fā)模塊: 使用取代功能模擬置數(shù)觸發(fā)有預(yù)期結(jié)果的報(bào)告;

2)報(bào)告分析解析模塊: 對(duì)觸發(fā)生成的報(bào)告進(jìn)行解析分析, 并將解析的結(jié)果存入到Python的字典中放入消息隊(duì)列;

3)結(jié)果判定運(yùn)行模塊: 從消息隊(duì)列中獲取字典信息, 并通過(guò)字典信息的關(guān)鍵字獲取對(duì)應(yīng)值和實(shí)際預(yù)期結(jié)果進(jìn)行比對(duì)判斷.

整個(gè)報(bào)告服務(wù)自動(dòng)測(cè)試實(shí)現(xiàn)過(guò)程如圖 3 所示.

圖 3 報(bào)告服務(wù)自動(dòng)測(cè)試實(shí)現(xiàn)過(guò)程

3.2 實(shí)現(xiàn)過(guò)程

使用Python對(duì)規(guī)約一致性報(bào)告服務(wù)的全自動(dòng)測(cè)試技術(shù)實(shí)現(xiàn)過(guò)程如下:

1) 數(shù)據(jù)信息的準(zhǔn)備

自動(dòng)測(cè)試結(jié)果運(yùn)行主線程啟動(dòng)后, 調(diào)用初始化功能函數(shù)在線獲取被測(cè)試設(shè)備(IED)的數(shù)據(jù)模型信息, 將其存入到Python的字典中, 通過(guò)return返回給主線程.

獲取到數(shù)據(jù)模型的字典信息后, 通過(guò)數(shù)據(jù)模型字典信息中的關(guān)鍵字key(如: dev_content_dict[‘Brcb_List’])獲取到被測(cè)試設(shè)備的報(bào)告控制塊信息.

然后, 再通過(guò)Python的for循環(huán), 對(duì)所有報(bào)告控制進(jìn)行初始設(shè)置, 設(shè)置報(bào)告控制的OptFlds和TrgOps, 使報(bào)告控制的OptFlds支持Data Reference; TrgOps支持dchg和GI的觸發(fā)選項(xiàng).

對(duì)報(bào)告控制塊的初始設(shè)置準(zhǔn)備完成后, 再次通過(guò)Python的for循環(huán), 開(kāi)始對(duì)每個(gè)設(shè)置完畢的報(bào)告控制塊列表進(jìn)行遍歷操作, 依次進(jìn)行RptEna寫(xiě)False, 清除報(bào)告控制塊緩存報(bào)告, 使能RptEna, 寫(xiě)總召GI, 從共享消息隊(duì)列中獲取報(bào)告信息并解析返回結(jié)果, 得到滿足測(cè)試要求的報(bào)告控制塊后退出循環(huán). 實(shí)際生成的具有Data Reference的GI總召報(bào)告信息如圖 4 所示.

圖 4 觸發(fā)生成總召報(bào)告報(bào)文信息圖

最后, 根據(jù)以上步驟獲取到滿足要求的待測(cè)試報(bào)告控制塊的信息及該報(bào)告控制塊關(guān)聯(lián)的數(shù)據(jù)集里成員的Data Reference信息, 并將其保存在DataRefNameList列表中. 通過(guò)Python的字符串替換功能str.replace()將對(duì)應(yīng)的取代數(shù)據(jù)信息存放在新建立的列表中(如: BRCB_BeLinked_sub_List). 具體Python實(shí)現(xiàn)過(guò)程如圖 5 所示.

圖 5 Python獲取待測(cè)試報(bào)告控制塊過(guò)程

2) 變位報(bào)告的觸發(fā)

通過(guò)第一步“數(shù)據(jù)信息的準(zhǔn)備”操作后, 已經(jīng)獲取到了滿足要求的待測(cè)試報(bào)告控制塊信息、 報(bào)告控制塊關(guān)聯(lián)數(shù)據(jù)集里成員信息列表以及報(bào)告控制塊關(guān)聯(lián)數(shù)據(jù)集對(duì)應(yīng)的取代信息列表. 然后, 通過(guò)Python的for循環(huán)調(diào)用取代函數(shù), 對(duì)取代信息列表進(jìn)行寫(xiě)使能和初始值的設(shè)置操作. 寫(xiě)完初始值后再清除該報(bào)告控制塊的緩存區(qū)和共享消息隊(duì)列.

經(jīng)過(guò)以上操作, 對(duì)待測(cè)試的報(bào)告控制塊里的成員數(shù)據(jù)進(jìn)行了初始值設(shè)置, 并清除了緩存區(qū)報(bào)告和共享消息隊(duì)列里的信息, 就可以保證使用write函數(shù)對(duì)subVal值進(jìn)行修改時(shí)產(chǎn)生的dchg變位報(bào)告為預(yù)期報(bào)告. 整個(gè)過(guò)程如圖 6 所示.

圖 6 觸發(fā)預(yù)期結(jié)果報(bào)告過(guò)程

3) 變位報(bào)告報(bào)文的解析及結(jié)果判定

在完成以上操作后, 產(chǎn)生了dchg的變位報(bào)文, 該變位報(bào)文里的預(yù)期結(jié)果為通過(guò)取代功能寫(xiě)入的subVal值. 因取代觸發(fā)的變位報(bào)文在取代值發(fā)生變化時(shí)就會(huì)立刻產(chǎn)生, 需要使用多線程技術(shù)對(duì)報(bào)告報(bào)文進(jìn)行實(shí)時(shí)的捕獲和解析. 多線程將報(bào)告分析解析模塊設(shè)置為守護(hù)線程. 報(bào)告分析解析模塊使用Python的pcap功能模塊, 該功能模塊可驅(qū)動(dòng)以太網(wǎng)并根據(jù)關(guān)鍵字或關(guān)鍵信息進(jìn)行過(guò)濾, 從而能夠有效、 實(shí)時(shí)地捕獲到有用的報(bào)告報(bào)文.

考慮MMS是按照TLV進(jìn)行編碼[8], 需要按照有效偏移位逐個(gè)對(duì)捕獲到的報(bào)告報(bào)文進(jìn)行解析, 如圖 7 所示, 將有效Tag位對(duì)應(yīng)的length和value進(jìn)行解析分析, 并將解析分析后的value值存放在字典中, 最終通過(guò)put將字典信息發(fā)送到共享隊(duì)列中.

圖 7 報(bào)告報(bào)文解析過(guò)程

自動(dòng)測(cè)試結(jié)果運(yùn)行主線程為整個(gè)報(bào)告服務(wù)自動(dòng)測(cè)試的主程序, 包含IEC61850-10中所有報(bào)告服務(wù)的測(cè)試用例[9]. 主程序的主要作用是按照測(cè)試用例要求, 實(shí)現(xiàn)測(cè)試過(guò)程并將預(yù)期結(jié)果發(fā)送給報(bào)告觸發(fā)模塊, 使其產(chǎn)生有預(yù)期結(jié)果的報(bào)告報(bào)文, 然后, 再?gòu)南㈥?duì)列中獲取報(bào)告分析解析模塊解析出來(lái)的實(shí)際報(bào)告的結(jié)果信息, 將預(yù)期結(jié)果和實(shí)際結(jié)果進(jìn)行比較, 從而得出測(cè)試結(jié)果. 若和預(yù)期一致則測(cè)試通過(guò), 若不一致則測(cè)試不通過(guò), 從而實(shí)現(xiàn)了報(bào)告服務(wù)不依賴(lài)外部模擬設(shè)備全自動(dòng)的閉環(huán)測(cè)試. 整個(gè)閉環(huán)自動(dòng)測(cè)試過(guò)程如圖 8 所示.

圖 8 規(guī)約一致性報(bào)告服務(wù)閉環(huán)自動(dòng)測(cè)試

3.3 技術(shù)難點(diǎn)分析及解決

1) 可變模擬量的處理

因報(bào)告控制塊RCB所關(guān)聯(lián)的數(shù)據(jù)集DatSet里的成員較多, 有部分成員的值是模擬量值[10], 例如, 反應(yīng)IED設(shè)備的溫度量、 電壓值等, 這些模擬量值都會(huì)伴隨環(huán)境溫度、 時(shí)間的變化而改變, 在變化的過(guò)程中就會(huì)觸發(fā)一些和測(cè)試不相干的報(bào)告報(bào)文, 這樣就容易對(duì)測(cè)試結(jié)果產(chǎn)生不確定的影響. 為了保證測(cè)試結(jié)果的確定性, 自動(dòng)測(cè)試主線程需要通過(guò)取代對(duì)該RCB關(guān)聯(lián)的數(shù)據(jù)集里的所有成員進(jìn)行取代遍歷, 將數(shù)據(jù)集里的所有成員的初始值設(shè)置成固定不變的值, 這樣就可以避免因環(huán)境溫度、 時(shí)間等變化而引起的數(shù)據(jù)集里成員值發(fā)生變化的情況, 避免對(duì)測(cè)試結(jié)果不確定的影響. 從而保證了測(cè)試結(jié)果的正確性.

2) 報(bào)告控制塊的篩選

對(duì)于被測(cè)試IED設(shè)備來(lái)說(shuō), 一般都會(huì)有多個(gè)RCB報(bào)告控制塊, 而每個(gè)報(bào)告控制塊RCB所關(guān)聯(lián)的數(shù)據(jù)集DatSet是不同的, 每個(gè)數(shù)據(jù)集DatSet中的成員數(shù)也都不同. 為了獲取到合適的RCB, 設(shè)置完RCB的屬性后, 先對(duì)RCB進(jìn)行寫(xiě)總召GI操作, 觸發(fā)RCB生成總召報(bào)告, 通過(guò)報(bào)告分析解析模塊可以獲取到該RCB關(guān)聯(lián)數(shù)據(jù)集的成員數(shù)量及成員信息.

3) 分幀報(bào)文的處理

因MMS的報(bào)告報(bào)文有超過(guò)1 518 B的情況, 單幀報(bào)文無(wú)法上送整個(gè)報(bào)文信息, 對(duì)分幀報(bào)文的解析分析需要進(jìn)行特殊處理. 考慮到TCP報(bào)文的幀頭部分內(nèi)容是固定的, 對(duì)分幀標(biāo)記的偏移位進(jìn)行判斷, 若分幀標(biāo)記表示報(bào)文有分幀, 則將該報(bào)文的固定幀頭取出存入到列表headerbuf中, 除去固定報(bào)文幀頭以外的內(nèi)容存入到segmentbuf列表中, 當(dāng)發(fā)現(xiàn)分幀報(bào)文的尾幀后, for循環(huán)遍歷重組的segmentbuf列表并進(jìn)行重新組幀, 具體實(shí)現(xiàn)邏輯如圖 9 所示.

圖 9 報(bào)告報(bào)文分幀處理邏輯

4 一致性測(cè)試報(bào)告控制塊屬性要求

根據(jù)IEC61850-10標(biāo)準(zhǔn)要求, 對(duì)報(bào)告服務(wù)及其他服務(wù)都有明確要求, 在測(cè)試過(guò)程的分析和測(cè)試結(jié)果的判定時(shí)都需要參照標(biāo)準(zhǔn)要求. 報(bào)告服務(wù)的自動(dòng)測(cè)試同樣適用該標(biāo)準(zhǔn). 按照IEC61850標(biāo)準(zhǔn)要求, 報(bào)告控制塊包含的DA在RptEna=True和RptEna=False情況下具有可寫(xiě)和不可寫(xiě)屬性, 如表 1 所示.

表 1 報(bào)告控制塊屬性表

由于篇幅所限, 本文僅針對(duì)較為復(fù)雜較難實(shí)現(xiàn)自動(dòng)化測(cè)試的報(bào)告服務(wù)提出了實(shí)現(xiàn)自動(dòng)化檢測(cè)的詳細(xì)的分析、 建議及解決方法. 旨在對(duì)IEC61850服務(wù)器規(guī)約一致性測(cè)試自動(dòng)化的實(shí)現(xiàn)提供一定的參考.

5 檢測(cè)實(shí)例分析

利用基于開(kāi)源庫(kù)使用Python實(shí)現(xiàn)IEC61850服務(wù)器規(guī)約一致性自動(dòng)測(cè)試的方法對(duì)工程中常見(jiàn)的北京四方繼保自動(dòng)化股份有限公司CSC-122數(shù)字式母聯(lián)保護(hù)裝置的報(bào)告服務(wù)進(jìn)行檢測(cè).

緩存報(bào)告分段測(cè)試, 測(cè)試用例描述如表 2 所示.

表 2 報(bào)告分段測(cè)試用例說(shuō)明

使用Python進(jìn)行報(bào)告分段自動(dòng)測(cè)試的整個(gè)過(guò)程如下:

1) 自動(dòng)選取報(bào)告控制塊, 自動(dòng)選取條件為該報(bào)告控制塊關(guān)聯(lián)的數(shù)據(jù)集里的成員個(gè)數(shù)≥6個(gè);

2) 選取成功后, 通過(guò)寫(xiě)GI生成總召報(bào)告并解析獲取到該報(bào)告控制塊關(guān)聯(lián)數(shù)據(jù)集里各個(gè)成員的reference信息, 如表 3 所示;

表 3 測(cè)試報(bào)告控制塊數(shù)據(jù)集成員信息

3) 重新設(shè)置連接關(guān)聯(lián)初始值PDUSize, 將初始的PDUSize值由65 000設(shè)置為600, 如表 4 所示;

表 4 PUD Size設(shè)置

4)清除隊(duì)列, 重新寫(xiě)總召, 產(chǎn)生總召報(bào)告, 報(bào)告解析模塊實(shí)時(shí)獲取到總召報(bào)告并將解析結(jié)果存入到字典中發(fā)送到共享隊(duì)列中, 如表 5 所示;

表 5 分段報(bào)告共享隊(duì)列及實(shí)際報(bào)文

5)實(shí)時(shí)總召GI報(bào)告信息, 并根據(jù)測(cè)試用例要求判斷實(shí)際結(jié)果是否通過(guò), 如表 6 所示;

表 6 分段總召報(bào)告內(nèi)容解析

由表 6 對(duì)No.1和No.2的報(bào)告內(nèi)容進(jìn)行比對(duì)分析, 兩個(gè)報(bào)告中的SeqNum都為0, SubSeqNum從0開(kāi)始遞增, MoreSeqmentsFollow最后一個(gè)報(bào)告該屬性值置00, 所有分段報(bào)告的TimeOfEntry值相同, 都為‘01778c7c355c’, 3個(gè)判斷條件同時(shí)滿足預(yù)期, 符合測(cè)試用例要求, 測(cè)試通過(guò), 如圖 10 所示.

圖 10 報(bào)告分段測(cè)試結(jié)果圖

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

基于開(kāi)源庫(kù), 使用Python實(shí)現(xiàn)IEC61850服務(wù)器規(guī)約一致性自動(dòng)測(cè)試能夠滿足一般服務(wù)器端IED設(shè)備的一致性通信需求, 可以通過(guò)Python語(yǔ)言靈活調(diào)用開(kāi)源庫(kù)的各種接口, 實(shí)現(xiàn)IEC61850服務(wù)器規(guī)約一致性所有服務(wù)的測(cè)試, 同時(shí)由于Python語(yǔ)言的靈活性、 易于維護(hù)編寫(xiě)性, 可以實(shí)現(xiàn)對(duì)取代服務(wù)、 讀寫(xiě)操作等進(jìn)行全覆蓋的遍歷測(cè)試, 能夠大大提升IEC61850服務(wù)器規(guī)約一致性測(cè)試的覆蓋率, 更有利于觸發(fā)和發(fā)現(xiàn)問(wèn)題. 由于實(shí)現(xiàn)了自動(dòng)化測(cè)試, 很好地解決了IEC61850服務(wù)器規(guī)約一致性測(cè)試對(duì)技術(shù)和專(zhuān)業(yè)知識(shí)要求高的問(wèn)題. 進(jìn)而對(duì)智能化變電站里IED設(shè)備間的互聯(lián)互通互操作[11-15]起到積極重要的作用.

猜你喜歡
自動(dòng)測(cè)試規(guī)約報(bào)文
基于J1939 協(xié)議多包報(bào)文的時(shí)序研究及應(yīng)用
CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
淺析反駁類(lèi)報(bào)文要點(diǎn)
電力系統(tǒng)通信規(guī)約庫(kù)抽象設(shè)計(jì)與實(shí)現(xiàn)
JXG-50S型相敏軌道電路接收器自動(dòng)測(cè)試臺(tái)
一種在復(fù)雜環(huán)境中支持容錯(cuò)的高性能規(guī)約框架
可并行測(cè)試的電磁兼容自動(dòng)測(cè)試系統(tǒng)的實(shí)現(xiàn)
關(guān)于某型雷達(dá)自動(dòng)測(cè)試系統(tǒng)的幾點(diǎn)認(rèn)識(shí)和建議
電子制作(2018年11期)2018-08-04 03:26:00
一種改進(jìn)的LLL模糊度規(guī)約算法
ATS與列車(chē)通信報(bào)文分析
东宁县| 固阳县| 威信县| 西乌珠穆沁旗| 府谷县| 栾川县| 台中县| 岳阳县| 高邑县| 上饶县| 平乐县| 靖西县| 华蓥市| 荃湾区| 运城市| 乌鲁木齐县| 宿州市| 东台市| 二连浩特市| 芦山县| 林州市| 伊春市| 库尔勒市| 格尔木市| 康乐县| 广州市| 四子王旗| 呼图壁县| 莱西市| 深水埗区| 平顶山市| 泾川县| 武乡县| 聂拉木县| 山阴县| 连江县| 潍坊市| 龙州县| 潜山县| 化德县| 红河县|