前言:本站為你精心整理了繼電保護仿真培訓體系設(shè)計范文,希望能為你的創(chuàng)作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。
WinPcap軟件包簡介
由于IEC61850的采樣值數(shù)據(jù)包和GOOSE數(shù)據(jù)包都是直接建立在以太網(wǎng)鏈路層之上的,在ISO7層協(xié)議中與IP協(xié)議處于同等的位置,因而不能使用TCP/IP協(xié)議發(fā)送和接收,需采用更底層的以太網(wǎng)通信函數(shù)[3-4]。WinPcap工具軟件包滿足上述的要求,可以更底層地操作網(wǎng)卡。此外,WinPcap中還提供了發(fā)送以太網(wǎng)原始數(shù)據(jù)包的功能,因而非常適合于開發(fā)智能變電站的網(wǎng)絡通信軟件。WinPcap具有捕獲數(shù)據(jù)包、發(fā)送數(shù)據(jù)包、統(tǒng)計網(wǎng)絡流量3個主要功能。捕獲數(shù)據(jù)包的基本流程如下[5](1)通過接口函數(shù)pcap_findalldevs_ex枚舉所有可用的網(wǎng)絡設(shè)備。(2)根據(jù)枚舉返回的網(wǎng)絡設(shè)備名稱打開一個設(shè)備,對應接口函數(shù)為pcap_open()。(3)如果需要,設(shè)置數(shù)據(jù)包的過濾條件,對應接口函數(shù)為pcap_setfilter。(4)捕獲原始的數(shù)據(jù)包有2種方法:一種方法是以回調(diào)函數(shù)的方式由接口pcap_loop或pcap_dispatch完成,其基本方法是底層收集數(shù)據(jù)包,當滿足一定的條件(timeout或者緩沖區(qū)滿),就調(diào)用回調(diào)函數(shù),把收集到的原始數(shù)據(jù)包通過數(shù)據(jù)緩存區(qū)交給用戶;另一種方法是pcap_next_ex()的方法,每當一個包到達后,接口pcap_next_ex()就會返回,返回的數(shù)據(jù)緩沖區(qū)中只包含一個包。其中,pcap_loop()函數(shù)是基于回調(diào)的原理來進行數(shù)據(jù)捕獲,在很多情況下都是一種很好的選擇,但由于該方式有時并不實用,且會增加程序的復雜性,特別是在擁有多線程的C++程序中,因此,本文選用pcap_next_ex()方法。使用WinPcap發(fā)送數(shù)據(jù)包首先要枚舉和打開網(wǎng)絡設(shè)備,然后調(diào)用pcap_sendpacket()函數(shù),發(fā)送單個數(shù)據(jù)包。WinPcap還提供了發(fā)送隊列的方式,但由于pcap_sendpacket()功能已足夠滿足需求,簡單且效率高,因此本文采用pcap_sendpacket發(fā)送數(shù)據(jù)包。
IEC61850報文解析
采樣值(SV)報文解析IEC61850-9標準中,采樣值報文在鏈路層傳輸都是基于ISO/IEC8802-3的以太網(wǎng)幀結(jié)構(gòu)[6-7]。解析采樣值報文時,首先判斷以太網(wǎng)類型(Ethertype)是否為0x88BA。若是,則根據(jù)AsduNum和AsduLength找出ASDU,然后解碼標記(Tag)和數(shù)據(jù)類型均已知的標志符(svID,Tag=80)、SmpCnt(Tag=82)等數(shù)據(jù)段;最后將Samples中數(shù)據(jù)按8路采樣值格式進行解析[8]。采樣值報文的組幀是與讀取Comtrade格式錄波文件一樣的,即按照Comtrade文件格式要求讀取錄波文件[9-10],然后將其中的電流、電壓數(shù)據(jù)按照IEC61850-9-2LE標準的要求進行組幀并發(fā)送出去。報文組幀過程是解析的逆過程,此處不再贅述。
GOOSE報文解析對GOOSE解包,首先判斷以太網(wǎng)類型是否為0x88B8。如果是,則依次解析出目的MAC地址、源MAC地址和報文長度等。對于虛擬局域網(wǎng)部分,不同交換機的處理不同,一些交換機會去掉VLAN標志,當報文經(jīng)過交換機到達計算機的網(wǎng)卡時,TPID與TCI標志已經(jīng)由交換機去掉了;而一些交換機則會進行保留。對此,程序增加了自動識別有/無VLAN標志的功能。GOOSE解包的最關(guān)鍵部分就是關(guān)于APDU部分的解析。APDU的解析,主要是對于ControlBlockReference、StateNumber、SequenceNumber、Test、ConfigRevision、NeedsCommissioning、NumberDatasetEntries的解析。其中,每一部分在數(shù)據(jù)包中均是以“標記”+“后續(xù)數(shù)據(jù)長度”+“數(shù)據(jù)”的形式體現(xiàn)的?!皹酥尽币来螢?0×80、0×81、0×82、0×83、0×84、0×85、0×86、0×87、0×88、0×89、0×8A。在程序中設(shè)置了一個字符型的指針Data,指向APDU部分的第一個字節(jié),依次把每一部分解析出來[11-12]。
仿真驗證
在計算機A中使用PSCAD/EMTDC電磁暫態(tài)仿真軟件[13],搭建長度為100km的典型雙端220kV系統(tǒng)模型?!肮收稀睘楣收显O(shè)置模塊,設(shè)置線路在0.5s發(fā)生A相金屬性接地短路故障,故障持續(xù)0.1s。整個運行流程包括以下幾個部分:(1)使用PSCAD/EMTDC導出Comtrade格式錄波數(shù)據(jù)文件;(2)該文件由計算機A轉(zhuǎn)換成符合IEC61850-9-2LE標準的報文發(fā)送到計算機B;(3)計算機B捕獲該報文并進行解析,進行基波相量、序量、阻抗和功率方向等計算并顯示結(jié)果;(4)根據(jù)保護動作行為計算機B中保護模擬模塊,發(fā)送GOOSE報文到計算機A中;(5)計算機A捕獲GOOSE報文,解析、執(zhí)行并顯示結(jié)果。基于IEC61850標準的繼電保護仿真培訓系統(tǒng)主界面分為菜單欄、工具欄、數(shù)據(jù)欄和狀態(tài)欄4個部分。其中,數(shù)據(jù)欄包括3個部分,最上面的窗口顯示捕獲報文總的信息,包括編號、協(xié)議名稱、源MAC地址、目的MAC地址和報文長度。點擊其中任何一條報文,則會在下面的2個窗口中分別顯示出該報文的原始報文內(nèi)容和解析結(jié)果,其中解析結(jié)果包括報文長度、源MAC地址、目的MAC地址、以太網(wǎng)幀類型,以及電壓、電流數(shù)據(jù)等內(nèi)容。工具欄按鈕作用依次為開始捕獲、停止捕獲和系統(tǒng)設(shè)置。
結(jié)語
本文研究了智能變電站中基于IEC61850標準的過程層和間隔層通信,使用WinPcap工具軟件包按照數(shù)據(jù)流模擬了采樣值和開關(guān)量的收發(fā)流程,可以實現(xiàn)智能變電站過程層和間隔層通信的全過程仿真。它為變電側(cè)智能電網(wǎng)的崗位培訓提供新穎而直觀的技術(shù)手段,也為加強繼保工作人員對于智能變電站和數(shù)字化保護裝置的理解、防范數(shù)字化繼電保護裝置的技術(shù)錯誤、分析改進保護動作行為、研究繼電保護新原理,以及提高事故分析水平,都具有較高使用價值和廣闊應用前景。
作者:敬勇吳漢彬青志明林濤肖英偉單位:重慶市電力公司教育培訓中心武漢大學電氣工程學院