師 康,谷傳國,朱春紅,朱來強(qiáng)
(西門子電力自動化有限公司,南京 211100)
在220 kV及以上的變電站通信系統(tǒng)中,雙網(wǎng)星型拓?fù)浣Y(jié)構(gòu)已經(jīng)成為主流。通信系統(tǒng)的實(shí)時性、可靠性是變電站最基本的要求。隨著智能變電站的發(fā)展,對通信系統(tǒng)的實(shí)時性、可靠性提出了更高要求,既要報文不重復(fù),也要報文不丟包,還要雙網(wǎng)切換的延時盡可能短。目前,國內(nèi)各個廠家針對雙網(wǎng)星型拓?fù)渥隽巳哂嘣O(shè)計(jì),但是實(shí)現(xiàn)方式各不相同,沒有一個統(tǒng)一的標(biāo)準(zhǔn)。
近年來,一些新技術(shù)和新的網(wǎng)絡(luò)拓?fù)洳粩喑霈F(xiàn),其中IEC 62439-3標(biāo)準(zhǔn)中制定的并行冗余協(xié)議(Parallel Redundancy Protocol,簡稱PRP)[1-3]就很好地解決雙網(wǎng)星型拓?fù)渲械娜哂鄦栴}[4-6],并且國內(nèi)主流繼保廠家已經(jīng)開始逐步應(yīng)用該標(biāo)準(zhǔn)。本文結(jié)合IEC 61850 GOOSE規(guī)約,對智能變電站并行冗余協(xié)議系統(tǒng)測試方案進(jìn)行討論。
PRP適用于雙網(wǎng)星型拓?fù)洌軌蚣嫒輫鴥?nèi)主流的網(wǎng)絡(luò)配置方案,拓?fù)浣Y(jié)構(gòu)如圖1所示。
PRP是基于網(wǎng)絡(luò)節(jié)點(diǎn)冗余的冗余協(xié)議,網(wǎng)絡(luò)節(jié)點(diǎn)通常是以雙以太網(wǎng)口的方式連接到網(wǎng)絡(luò)設(shè)備上,稱為雙連接節(jié)點(diǎn)(Doubly Attached Node using PRP,簡稱DANP),其與兩個局域網(wǎng)都會建立物理連接。局域網(wǎng)中可能存在單以太網(wǎng)口設(shè)備,稱為單連接節(jié)點(diǎn)(Singly Attached Node, 簡稱SAN),其可以與其中任意一個局域網(wǎng)建立連接。
當(dāng)一個DANP源節(jié)點(diǎn)同時向A網(wǎng)和B網(wǎng)發(fā)送報文時,DANP目標(biāo)節(jié)點(diǎn)會收到并處理來自A網(wǎng)和B網(wǎng)的兩份報文,同時丟棄掉重復(fù)的報文,而SAN目標(biāo)節(jié)點(diǎn)只會收到一份報文。當(dāng)其中一個局域網(wǎng)(A網(wǎng))發(fā)生網(wǎng)絡(luò)故障時,DANP目標(biāo)節(jié)點(diǎn)會處理來自另外一個局域網(wǎng)(B網(wǎng))的報文。PRP協(xié)議內(nèi)部處理雙網(wǎng)冗余報文機(jī)制如圖2所示。
圖1 PRP網(wǎng)絡(luò)拓?fù)?/p>
圖2 兩個DANP節(jié)點(diǎn)的PRP通信
目前國外的一些第三方測試機(jī)構(gòu)(例如KEMA公司)已經(jīng)開展了PRP的第三方認(rèn)證服務(wù)。國內(nèi)對于PRP規(guī)約的工程應(yīng)用還比較少,第三方認(rèn)證機(jī)構(gòu)還沒有開展PRP規(guī)約的認(rèn)證工作。
考慮到IEC 61850標(biāo)準(zhǔn)已經(jīng)成為國內(nèi)數(shù)字化變電站的主流通信規(guī)約,標(biāo)準(zhǔn)中定義了GOOSE模型,用于變電站內(nèi)智能設(shè)備的通信與交互。GOOSE通信機(jī)制是一種實(shí)時通信技術(shù),根據(jù)IEC 61850標(biāo)準(zhǔn)的規(guī)定,GOOSE信號的網(wǎng)絡(luò)通信延時應(yīng)當(dāng)小于4 ms。 因此,GOOSE對于通信的實(shí)時性和可靠性提出了很高的要求。本文基于GOOSE進(jìn)行PRP系統(tǒng)測試。
PRP測試系統(tǒng)構(gòu)成如圖3所示,主要包括測試主機(jī)(運(yùn)行報文監(jiān)視工具、PRP模擬發(fā)送器等軟件、PRP診斷信息配置)、以太網(wǎng)交換機(jī)、測試設(shè)備等。
測試設(shè)備為西門子公司的7SJ686裝置。該裝置支持三個以太網(wǎng)口。測試主機(jī)1需要支持兩個以太網(wǎng)口,分別通過以太網(wǎng)交換機(jī)連接測試設(shè)備的以太網(wǎng)口1和2,用于PRP報文的收發(fā)以及報文的監(jiān)視。測試主機(jī)2通過以太網(wǎng)口連接測試設(shè)備的網(wǎng)口3,用于監(jiān)視測試設(shè)備的PRP管理信息。
圖3 PRP測試系統(tǒng)構(gòu)成
測試系統(tǒng)中需要用到的協(xié)議如下:IEC 61850-8-1 Ed2 (2011), GOOSE用于測試主機(jī)1和測試設(shè)備之間的交互;HTTP用于讀取裝置中的PRP信息;ICMP用于網(wǎng)絡(luò)狀況的識別。
(1) 測試設(shè)備發(fā)送PRP報文的網(wǎng)絡(luò)標(biāo)識。測試從裝置發(fā)出的GOOSE報文,網(wǎng)絡(luò)標(biāo)識(LanId)需要在報文中傳輸,并且占用4個比特位。對于A網(wǎng)LanId=0xA,B網(wǎng)LanId=0xB。
(2) 測試設(shè)備發(fā)送PRP報文的SeqNr。測試從裝置發(fā)出的GOOSE報文,從A網(wǎng)和B網(wǎng)同時發(fā)出報文的SeqNr必須相同,占用16個比特位。
(3) 測試設(shè)備發(fā)送PRP報文的LSDUSize。測試從裝置發(fā)出的GOOSE報文,設(shè)備發(fā)送正確的LSDUSize,并且從A網(wǎng)和B網(wǎng)同時發(fā)出的報文的LSDUSize必須相同,占用12個比特位。
(4) 測試設(shè)備發(fā)送PRP報文的PRPSuffix。測試從裝置發(fā)出的GOOSE報文,設(shè)備從A網(wǎng)和B網(wǎng)發(fā)送固定的PRPSuffix=0x88FB,占用16個比特位。
(5) 測試設(shè)備發(fā)送新PRP報文以后,SeqNr加1。測試從裝置發(fā)出的GOOSE報文,每當(dāng)設(shè)備發(fā)送一幀新的PRP報文,報文的SeqNr比上一幀增加1。
(6) 測試設(shè)備發(fā)送PRP報文LSDUSize的正確性。測試從裝置發(fā)出的GOOSE報文,對于正常發(fā)送的PRP報文,LSDUSize是獨(dú)立于VLAN的,僅僅是LSDU和RCT的長度之和;對于網(wǎng)絡(luò)監(jiān)視報文,同樣LSDUSize也是獨(dú)立于VLAN的,仍然是LSDU和RCT的長度之和。
(7) 測試設(shè)備發(fā)送PRP報文的網(wǎng)口MAC地址。測試從裝置發(fā)出的GOOSE報文,設(shè)備從A網(wǎng)和B網(wǎng)發(fā)送的PRP報文,應(yīng)當(dāng)使用同一個物理地址。
(8) 測試設(shè)備發(fā)送PRP報文的IP地址。測試從裝置發(fā)出的GOOSE報文,設(shè)備從A網(wǎng)和B網(wǎng)發(fā)送的PRP報文,應(yīng)當(dāng)使用同一個IP地址。
(9) 測試設(shè)備發(fā)送PRP最短報文。測試從裝置發(fā)出的GOOSE報文,對于不含有VLAN標(biāo)簽的PRP報文,報文的最短長度為70字節(jié),不足70字節(jié)的部分,應(yīng)當(dāng)被強(qiáng)制填充為70字節(jié)。對于含有VLAN標(biāo)簽的PRP報文,報文的最短長度為74字節(jié),不足74字節(jié)自己的部分應(yīng)當(dāng)被強(qiáng)制填充為74字節(jié)。
(10) 測試設(shè)備發(fā)送PRP監(jiān)視報文。每2 000 ms,設(shè)備通過組播的方式從A網(wǎng)和B網(wǎng)同時發(fā)送監(jiān)視報文。
(11) 測試設(shè)備發(fā)送PRP監(jiān)視報文的格式。從設(shè)備發(fā)出網(wǎng)絡(luò)監(jiān)視報文格式,由于裝置是一個DANP節(jié)點(diǎn),因此發(fā)送的監(jiān)視報文中只需要滿足TLV1即可。
(1) 測試設(shè)備接收SAN報文:
斷開裝置B網(wǎng),從A口接收從測試軟件發(fā)出的SAN GOOSE報文;
斷開裝置A網(wǎng),從B口接收從測試軟件發(fā)出的SAN GOOSE報文;
裝置能夠收到并正確處理接收到的GOOSE報文。
(2) 測試設(shè)備接收到的DANP報文:
斷開裝置B口,將裝置A口連接到A網(wǎng),從A口接收從測試軟件發(fā)出的A網(wǎng)DANP GOOSE報文;
斷開裝置B口,將裝置A口連接到B網(wǎng),從A口接收從測試軟件發(fā)出的B網(wǎng)DANP GOOSE報文;
斷開裝置A口,將裝置B口連接到B網(wǎng),從B口接收從測試軟件發(fā)出的B網(wǎng)DANP GOOSE報文;
斷開裝置A口,將裝置B口連接到A網(wǎng),從B口接收從測試軟件發(fā)出的A網(wǎng)DANP GOOSE報文;
同時連接裝置的A網(wǎng)和B網(wǎng),將裝置A口連接到A網(wǎng),裝置B口連接到B網(wǎng),同時從裝置的A口和B口接收從測試軟件發(fā)出的DANP GOOSE報文;
同時連接裝置的A網(wǎng)和B網(wǎng),將裝置A口連接到B網(wǎng),裝置B口連接到A網(wǎng),同時從裝置的A口和B口接收從測試軟件發(fā)出的DANP GOOSE報文;
裝置能夠收到并且正確處理收到的GOOSE報文。
(3) 測試設(shè)備接收DANP的最大丟棄間隔。設(shè)備從A口和B口接收來自A網(wǎng)和B網(wǎng)的同一幀DANP報文,并不能保證A口和B口同時收到,因此需要一個時長tresideMin(400 ms)來區(qū)分是否作為同一幀報文來接收。當(dāng)A口B口接收到同一序號的PRP報文的時差小于該時長,則認(rèn)為是來自A網(wǎng)和B網(wǎng)的同一幀PRP報文,裝置會丟棄掉重復(fù)的一幀報文。如果時差大于該時長,則認(rèn)為是來自A網(wǎng)和B網(wǎng)的兩幀報文,兩幀報文都會被處理。
為了測試該時長,測試軟件需要對GOOSE報文做一些特殊處理,裝置需要對來自A網(wǎng)和B網(wǎng)的報文做出不同的處理,但對于報文的PRP部分,A網(wǎng)和B網(wǎng)的序號則一致。因此,裝置對收到的A網(wǎng),B網(wǎng)GOOSE報文觸發(fā)不同的消息(A網(wǎng)“PRP-A”,B網(wǎng)“PRP-B”),并且將觸發(fā)的消息作為GOOSE報文發(fā)送給測試主機(jī)1。用測試主機(jī)1監(jiān)視收到的GOOSE報文。
從測試軟件A網(wǎng)發(fā)出報文以后,經(jīng)過延時t發(fā)出B網(wǎng)報文,不斷調(diào)整t來觀察裝置的行為。網(wǎng)報文丟棄間隔測試結(jié)果如表1所示,可以得出該測試的最大延時t為385 ms。
表1 B網(wǎng)報文丟棄間隔測試結(jié)果
從測試軟件B網(wǎng)發(fā)出報文以后,經(jīng)過延時t發(fā)出A網(wǎng)報文,不斷調(diào)整t來觀察裝置的行為。A網(wǎng)報文丟棄間隔測試結(jié)果如表2所示,可以得出該測試的最大延時t為380 ms。
表2 A網(wǎng)報文丟棄間隔測試
(4) 測試設(shè)備接收兩幀DANP的最小間隔。當(dāng)裝置從A口和B口接收的報文超過最大丟棄間隔以后,裝置會將A網(wǎng)和B網(wǎng)收到的報文按照兩幀報文來處理。通過A網(wǎng),B網(wǎng)GOOSE報文觸發(fā)不同的消息(A網(wǎng)“PRP-A”,B網(wǎng)“PRP-B”),并且將觸發(fā)的消息作為GOOSE報文發(fā)送給測試主機(jī)1。從測試軟件A網(wǎng)發(fā)出報文以后,經(jīng)過延時t發(fā)出B網(wǎng)報文,不斷調(diào)整t來觀察裝置的行為。接收DANP最小間隔測試結(jié)果如表3所示,可以得出該測試的最小延時t為395 ms。
表3 接收DANP最小間隔測試
從測試軟件B網(wǎng)發(fā)出報文以后,經(jīng)過延時t發(fā)出A網(wǎng)報文,不斷調(diào)整t來觀察裝置的行為。接收DANP最小間隔測試結(jié)果如表4所示,可以得出該測試的最小延時t為395 ms。
表4 接收DANP最小間隔測試
(5) 測試裝置接收巨型幀。當(dāng)增加PRP報文RCT(6字節(jié))以后,PRP網(wǎng)絡(luò)中的報文有可能會超過ISO/IEC 8802-3[9]中所定義的最大報文數(shù)(1522字節(jié))。PRP標(biāo)準(zhǔn)中聲明一個DANP節(jié)點(diǎn)需要支持超過最大長度的網(wǎng)絡(luò)報文(1 528字節(jié)=1 522字節(jié)+RCT)。將測試主機(jī)網(wǎng)卡的Jumbo Packet屬性設(shè)置為啟用并指定一個數(shù)值。從測試主機(jī)發(fā)送一個超長的GOOSE報文,裝置應(yīng)當(dāng)能接收并且處理報文。
(6) 測試裝置接收到錯誤的PRP報文:
測試主機(jī)發(fā)送GOOSE報文到裝置,其中PRPSuffix錯誤,例如PRPSuffix=0x88FC;
測試主機(jī)發(fā)送GOOSE報文到裝置,其中LSDUsize錯誤,例如LSDUsize=0;
測試主機(jī)發(fā)送GOOSE報文到裝置,其中LanId錯誤,例如LanId=0xC;
裝置接收到錯誤的PRP報文,應(yīng)當(dāng)直接丟棄報文。
(7) 測試裝置沒有收到PRP監(jiān)視報文。裝置上電以后,測試主機(jī)不向測試裝置發(fā)送PRP監(jiān)視報文,此時裝置收到的DANP報文將被視作SAN報文。將測試主機(jī)發(fā)出的A網(wǎng)GOOSE報文點(diǎn)亮裝置的1號LED燈,B網(wǎng)發(fā)出的GOOSE報文點(diǎn)亮2號LED燈,但A網(wǎng)B網(wǎng)的GOOSE報文使用相同的PRP報文序號。裝置同時從A網(wǎng)和B網(wǎng)發(fā)出GOOSE報文,裝置應(yīng)當(dāng)將接收到的報文作為SAN報文處理,同時點(diǎn)亮裝置的1號LED燈和2號LED燈。
(8) 測試裝置收到PRP監(jiān)視報文。測試主機(jī)定時(2 000 ms)向裝置以組播的方式發(fā)送PRP監(jiān)視報文,此時裝置接收的報文會視作DANP報文。其中組播報文的MAC地址固定為:“01:15:4E:00:01:XX”,“XX”為可任意設(shè)定的地址段,一般設(shè)為“00”。將測試主機(jī)發(fā)出的A網(wǎng)GOOSE報文點(diǎn)亮裝置的1號LED燈,B網(wǎng)發(fā)出的GOOSE報文點(diǎn)亮2號LED燈,但A網(wǎng)B網(wǎng)的GOOSE報文使用相同的PRP報文序號。裝置同時從A網(wǎng)和B網(wǎng)發(fā)出上述GOOSE報文,裝置應(yīng)當(dāng)將接收到的報文作為DANP報文處理,1號LED燈和2號LED燈僅有一個能夠被點(diǎn)亮。
通過HTTP協(xié)議,可以在網(wǎng)頁上獲取裝置的PRP在線數(shù)據(jù),測試過程中,查看并檢查在線數(shù)據(jù)的準(zhǔn)確性。
西門子電力自動化有限公司的7SJ686裝置完全通過了測試用例,在滿足PRP規(guī)約的同時,也滿足了GOOSE規(guī)約傳輸?shù)目煽啃院头€(wěn)定性。
PRP是一個比較適合國內(nèi)變電站網(wǎng)絡(luò)拓?fù)涞娜哂鄥f(xié)議,提出了一套測試方案?;诖藴y試方案,可以驗(yàn)證PRP規(guī)約的穩(wěn)定性以及實(shí)時性。隨著國內(nèi)變電站對于自動化系統(tǒng)的要求越來越高,PRP規(guī)約會得到比較廣泛的應(yīng)用。屆時,系統(tǒng)的PRP測試方案會提上日程,第三方的PRP測試認(rèn)證服務(wù)也會得到廣泛的開展。