專利名稱:一種低離散性的goose單點對多點及多點對單點的收發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種低離散性的GOOSE單點對多點及多點對單點的收發(fā)方法,屬于電力系統(tǒng)變電站自動化技術(shù)領(lǐng)域。
背景技術(shù):
智能變電站中間隔層裝置與過程層裝置之間一般采用GOOSE通信服務(wù),該通信服務(wù)主要負責兩者之間傳輸控制命令和狀態(tài)信息。為滿足智能變電站技術(shù)中直采直跳的原貝U,保護裝置與過程層裝置之間的GOOSE報文服務(wù)采用點對點連接方式,因此過程層裝置中會增加多個點對點以太網(wǎng)口來滿足這一需求。另外,電力系統(tǒng)中對特定數(shù)據(jù)收發(fā)的離散性都有較高要求。根據(jù)這些需求,裝置硬件架構(gòu)一般會采用微處理器作為邏輯處理單元控制以太網(wǎng)口的數(shù)據(jù)收發(fā)以及內(nèi)部邏輯的處理,微處理器對數(shù)據(jù)處理的速度是滿足要求的,但其受自身指令執(zhí)行周期不確定性的影響,時序控制的離散性較差;并且增加多個點對點網(wǎng)口,也使得核心主板的硬件架構(gòu)變得臃腫不堪,不利于硬件開發(fā)。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種低離散的GOOSE點對點收發(fā)方法,以解決目前保護裝置與過程層裝置之間的GOOSE報文由于采用微處理器控制以太網(wǎng)口的數(shù)據(jù)收發(fā)以及內(nèi)部邏輯的處理所造成的時序控制的離散性差的問題。本發(fā)明為解決上述技術(shù)問題而提供一種低離散型的GOOSE單點對多點收發(fā)方法,包括單點對多點的接收方法和單點對多點的發(fā)射方法,所述的單點對多點的接收方法的步驟如下
I ) 實時查詢單點接收端網(wǎng)絡(luò)接口的接收狀態(tài),判斷是否有GOOSE報文數(shù)據(jù)到來,如果有GOOSE報文數(shù)據(jù),讀取網(wǎng)絡(luò)芯片緩沖區(qū)內(nèi)的GOOSE報文數(shù)據(jù);
2).提取出該GOOSE報文數(shù)據(jù)內(nèi)的VLANTAG標識符,添加自定義數(shù)據(jù)包到起始符以及數(shù)據(jù)包長度;
3).將該GOOSE報文數(shù)據(jù)填入接收端緩沖區(qū),使寫指針加1,同時并判斷接收端緩沖區(qū)是否溢出,如果緩沖區(qū)沒有溢出,則返回到步驟I ),如果緩沖區(qū)溢出,則停止接收;
所述的單點對多點的發(fā)射方法的步驟如下
(1).比較單點發(fā)送端緩沖區(qū)的讀寫指針,當寫指針超前讀指針時,讀取緩沖區(qū)中的GOOSE報文數(shù)據(jù);
(2).判斷GOOSE報文數(shù)據(jù)的起始符是否正確,如果不正確,讀指針加1,并返回到步驟
(I),如果GOOSE報文數(shù)據(jù)的起始符正確,提取GOOSE報文數(shù)據(jù)包的長度和VLAN TAG標識、符;
(3).根據(jù)GOOSE報文數(shù)據(jù)包的長度讀取相應(yīng)長度的數(shù)據(jù),根據(jù)VLANTAG填入多點接收端網(wǎng)絡(luò)端口序號,封裝成固定格式后放入發(fā)送緩沖區(qū)并啟動發(fā)送。
所述的VLAN TAG是用于作為網(wǎng)絡(luò)端口的硬件標識來配置網(wǎng)口的接收與發(fā)送,接收時將VLAN TAG插入或替換成可表示網(wǎng)絡(luò)端口序號的標識,發(fā)送時根據(jù)VLANTAG的提示啟動需要發(fā)送的網(wǎng)絡(luò)芯片。所述的GOOSE報文是符合DL/T 860變電站通信網(wǎng)絡(luò)與系統(tǒng)標準定義GOOSE報文服務(wù)格式。所述的單點對多點收發(fā)過程中的單點方為過程層的網(wǎng)絡(luò)端口,多點方為間隔層的網(wǎng)絡(luò)端口。本發(fā)明為解決上述技術(shù)問題還提供了一種低離散型的GOOSE多點對單點的收發(fā)方法,包括多點對單點的接收方法和多點對單點的發(fā)射方法,其特征在于所述的多點對單點的接收方法的步驟如下
a.查詢多點接收端各個網(wǎng)口是否有GOOSE報文數(shù)據(jù)到來,如果有GOOSE報文數(shù)據(jù)到來, 則讀取相應(yīng)網(wǎng)絡(luò)芯片緩沖區(qū)中的GOOSE報文數(shù)據(jù);
b.添加自定義數(shù)據(jù)包到起始符,添加數(shù)據(jù)包長度,判斷讀取的GOOSE報文數(shù)據(jù)中是否有VLAN TAG標識,如果有,替換為表示該網(wǎng)口序號的VLAN TAG標識,如果沒有,則在的GOOSE報文中加載一表不該網(wǎng)口序號的VLAN TAG標識;
c.判斷是否有兩個以上的網(wǎng)口同時有數(shù)據(jù)到來,如果有,將經(jīng)過處理后GOOSE報文先進行一級緩存,再根據(jù)網(wǎng)絡(luò)接收端口序號的順序,封裝成固定格式順序填入接收緩沖區(qū),如果沒有,直接填入接收緩沖區(qū);
所述的多點對單點發(fā)射方法的步驟如下
A.比較緩沖區(qū)的讀寫指針,當寫指針超前讀指針時,讀取緩沖區(qū)中的GOOSE報文數(shù)據(jù);
B.判斷GOOSE報文數(shù)據(jù)的起始符是否正確,如果不正確,讀指針加1,并返回到步驟A,如果GOOSE報文數(shù)據(jù)的起始符正確,提取GOOSE報文數(shù)據(jù)包的長度和VLAN TAG標識符;
C.讀取相應(yīng)長度的GOOSE報文數(shù)據(jù),封裝成固定格式后放入發(fā)送緩沖區(qū)并啟動發(fā)送。所述的VLAN TAG是用于作為網(wǎng)絡(luò)端口的硬件標識來配置網(wǎng)口的接收與發(fā)送,接收時將VLAN TAG插入或替換成可表示網(wǎng)絡(luò)端口序號的標識,發(fā)送時根據(jù)VLANTAG的提示啟動需要發(fā)送的網(wǎng)絡(luò)芯片。所述的GOOSE報文是符合DL/T 860變電站通信網(wǎng)絡(luò)與系統(tǒng)標準定義GOOSE報文服務(wù)格式。所述的多點對單點收發(fā)過程中的單點方為過程層的網(wǎng)絡(luò)端口,多點方為間隔層的網(wǎng)絡(luò)端口。本發(fā)明的有益效果是本發(fā)明通過將VLAN TAG作為網(wǎng)絡(luò)端口的硬件標識來配置網(wǎng)口的接收與發(fā)送,接收時將VLAN TAG插入或替換成可表示網(wǎng)絡(luò)端口序號的標識,發(fā)送時則根據(jù)VLAN TAG的提示啟動需要發(fā)送的網(wǎng)絡(luò)芯片,該方法是在不改變以太網(wǎng)數(shù)據(jù)幀格式的前提下,快速準確地實現(xiàn)單點對多點的通信傳輸。
圖I是多點對單點的GOOSE接收流程 圖2是多點對單點的GOOSE發(fā)送流程 圖3是單點對多點的GOOSE接收流程圖;圖4單點對多點的GOOSE發(fā)送流程 圖5為本發(fā)明實施例中間隔層和過程層之間通信連接的硬件架構(gòu)示意圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明的具體實施方式
做進一步的說明。如圖5所示,智能變電站中過程層與間隔層之間進行傳輸時,間隔層裝置上有8網(wǎng)絡(luò)接口,這8個網(wǎng)絡(luò)接口分別與8個網(wǎng)絡(luò)芯片通信連接,過程層裝置上設(shè)置有一個網(wǎng)絡(luò)接口,該網(wǎng)絡(luò)接口與其對應(yīng)的網(wǎng)絡(luò)芯片通信連接,F(xiàn)PGA控制器的I/O 口與網(wǎng)絡(luò)芯片的控制管腳直接相連,間隔層和過程層之間通過的通信過程受FPGA的控制。其具體通信過程包括過程層對間隔層的單點對多點的收發(fā)方法和間隔層對過程層的多點對單點的收發(fā)方法。整個通信方法的輸入激勵是符合DL/T 860變電站通信網(wǎng)絡(luò)與系統(tǒng)標準定義GOOSE報文服務(wù)。以太網(wǎng)口收到激勵,F(xiàn)PGA讀取G00SE,在報文中插入或讀取VLAN TAG,將報文填入發(fā)送緩沖區(qū),等待發(fā)送以太網(wǎng)口空閑后啟動發(fā)送。填入緩沖區(qū)的數(shù)據(jù)全部采用統(tǒng)一的封裝,以太網(wǎng)數(shù) 據(jù)最大巾貞為1500個字節(jié),封裝格式如下
J__自定義數(shù)據(jù)包起始符_
_2__數(shù)據(jù)包長虔_
3目的MAC地址
4源MAC地址
5VLAMTAG6-1024 GOOSE
本發(fā)明的過程層對間隔層的單點對多點的收發(fā)方法包括過程層接收方法和過程層發(fā)送方法。當過程層接收來自間隔層發(fā)送GOOSE數(shù)據(jù)時,流程如圖3所示,其具體方法如下
1.實時查詢過程層網(wǎng)絡(luò)接口的接收狀態(tài),判斷是否有GOOSE報文數(shù)據(jù)到來,如果有GOOSE報文數(shù)據(jù),讀取網(wǎng)絡(luò)芯片緩沖區(qū)內(nèi)的GOOSE報文數(shù)據(jù);
2.提取出該GOOSE報文數(shù)據(jù)內(nèi)的VLANTAG標識符,添加自定義數(shù)據(jù)包到起始符以及數(shù)據(jù)包長度;
3.將該GOOSE報文數(shù)據(jù)填入接收端緩沖區(qū),使寫指針加1,同時并判斷接收端緩沖區(qū)是否溢出,如果緩沖區(qū)沒有溢出,則返回到步驟I ),如果緩沖區(qū)溢出,則停止接收。當過程層向間隔層發(fā)送GOOSE數(shù)據(jù)時,流程如圖4所示,其具體方法如下
1.比較緩沖區(qū)的讀寫指針,當寫指針超前讀指針時,讀取緩沖區(qū)中的GOOSE報文數(shù)據(jù);
2.判斷GOOSE報文數(shù)據(jù)的起始符是否正確,如果不正確,讀指針加1,并返回到步驟1,如果GOOSE報文數(shù)據(jù)的起始符正確,提取GOOSE報文數(shù)據(jù)包的長度和VLAN TAG標識符;
3.讀取相應(yīng)長度的數(shù)據(jù),根據(jù)VLANTAG填入多點接收端網(wǎng)絡(luò)端口序號,封裝成固定格式后放入發(fā)送緩沖區(qū)并啟動發(fā)送。間隔層對過程層的多點對單點的收發(fā)方法包括間隔層對過程層的多點對單點的接收方法和間隔層對過程層的多點對單點的發(fā)送方法。當間隔層接收來自過程層的數(shù)據(jù)時,其流程如圖I所示,具體步驟如下
I.查詢間隔層的每個網(wǎng)絡(luò)網(wǎng)口是否有GOOSE報文數(shù)據(jù)到來,如果有GOOSE報文數(shù)據(jù)到來,則讀取該網(wǎng)絡(luò)接口所對應(yīng)的網(wǎng)絡(luò)芯片緩沖區(qū)中的GOOSE報文數(shù)據(jù);
2.對讀取到的GOOSE報文數(shù)據(jù)進行添加自定義數(shù)據(jù)包到起始符和添加數(shù)據(jù)包長度處理,判斷讀取的GOOSE報文數(shù)據(jù)中是否有VLAN TAG標識,如果有,替換為表示該網(wǎng)口序號的VLAN TAG標識,如果沒有,則在的GOOSE報文中加載一表示該網(wǎng)口序號的VLAN TAG標識;
3.將處理后的GOOSE報文放入間隔層的接收緩沖區(qū),如果間隔層的多個網(wǎng)絡(luò)芯片同時收到GOOSE報文數(shù)據(jù),則需將這多個處理后的GOOSE報文先進行一級緩存,再根據(jù)網(wǎng)絡(luò)接收端口序號的順序,封裝成固定格式順序間隔層的接收緩沖區(qū)。間隔層對過程層的多點對單點的發(fā)送方法的流程如圖2所示,其具體步驟如下
1.比較間隔層緩沖區(qū)的讀寫指針,當寫指針超前讀指針時,讀取緩沖區(qū)中的GOOSE報文數(shù)據(jù); 2.判斷GOOSE報文數(shù)據(jù)的起始符是否正確,如果不正確,讀指針加1,并返回到步驟1,如果GOOSE報文數(shù)據(jù)的起始符正確,提取GOOSE報文數(shù)據(jù)包的長度和VLAN TAG標識符;
3.讀取相應(yīng)長度的GOOSE報文數(shù)據(jù),封裝成固定格式后放入間隔層網(wǎng)絡(luò)芯片發(fā)送緩沖區(qū),啟動發(fā)送。
權(quán)利要求
1.一種低離散性的GOOSE單點對多點收發(fā)方法,包括單點對多點的接收方法和單點對多點的發(fā)射方法,其特征在于所述的單點對多點的接收方法的步驟如下 I )·實時查詢單點接收端網(wǎng)絡(luò)接口的接收狀態(tài),判斷是否有GOOSE報文數(shù)據(jù)到來,如果有GOOSE報文數(shù)據(jù),讀取網(wǎng)絡(luò)芯片緩沖區(qū)內(nèi)的GOOSE報文數(shù)據(jù); 2).提取出該GOOSE報文數(shù)據(jù)內(nèi)的VLANTAG標識符,添加自定義數(shù)據(jù)包到起始符以及數(shù)據(jù)包長度; 3).將該GOOSE報文數(shù)據(jù)填入接收端緩沖區(qū),使寫指針加1,同時并判斷接收端緩沖區(qū)是否溢出,如果緩沖區(qū)沒有溢出,則返回到步驟I ),如果緩沖區(qū)溢出,則停止接收; 所述的單點對多點的發(fā)射方法的步驟如下 (O.比較單點發(fā)送端緩沖區(qū)的讀寫指針,當寫指針超前讀指針時,讀取緩沖區(qū)中的GOOSE報文數(shù)據(jù); (2).判斷GOOSE報文數(shù)據(jù)的起始符是否正確,如果不正確,讀指針加1,并返回到步驟Cl),如果GOOSE報文數(shù)據(jù)的起始符正確,提取GOOSE報文數(shù)據(jù)包的長度和VLAN TAG標識符; 根據(jù)GOOSE報文數(shù)據(jù)包的長度讀取相應(yīng)長度的數(shù)據(jù),根據(jù)VLAN TAG填入多點接收端網(wǎng)絡(luò)端口序號,封裝成固定格式后放入發(fā)送緩沖區(qū)并啟動發(fā)送。
2.根據(jù)權(quán)利要求I所述的低離散性的GOOSE單點對多點收發(fā)方法,其特征在于所述的VLAN TAG是用于作為網(wǎng)絡(luò)端口的硬件標識來配置網(wǎng)口的接收與發(fā)送,接收時將VLAN TAG插入或替換成可表示網(wǎng)絡(luò)端口序號的標識,發(fā)送時根據(jù)VLANTAG的提示啟動需要發(fā)送的網(wǎng)絡(luò)芯片。
3.根據(jù)權(quán)利要求I所述的低離散型的GOOSE單點對多點的收發(fā)方法,其特征在于所述的GOOSE報文是符合DL/T 860變電站通信網(wǎng)絡(luò)與系統(tǒng)標準定義GOOSE報文服務(wù)格式。
4.根據(jù)權(quán)利要求I所述的低離散型的GOOSE單點對多點收發(fā)方法,其特征在于所述的單點對多點收發(fā)過程中的單點方為過程層的網(wǎng)絡(luò)端口,多點方為間隔層的網(wǎng)絡(luò)端口。
5.一種低離散型的GOOSE多點對單點的收發(fā)方法,包括多點對單點的接收方法和多點對單點的發(fā)射方法,其特征在于所述的多點對單點的接收方法的步驟如下 a.查詢多點接收端各個網(wǎng)口是否有GOOSE報文數(shù)據(jù)到來,如果有GOOSE報文數(shù)據(jù)到來,則讀取相應(yīng)網(wǎng)絡(luò)芯片緩沖區(qū)中的GOOSE報文數(shù)據(jù); b.添加自定義數(shù)據(jù)包到起始符,添加數(shù)據(jù)包長度,判斷讀取的GOOSE報文數(shù)據(jù)中是否有VLAN TAG標識,如果有,替換為表示該網(wǎng)口序號的VLAN TAG標識,如果沒有,則在的GOOSE報文中加載一表不該網(wǎng)口序號的VLAN TAG標識; c.判斷是否有兩個以上的網(wǎng)口同時有數(shù)據(jù)到來,如果有,將經(jīng)過處理后GOOSE報文先進行一級緩存,再根據(jù)網(wǎng)絡(luò)接收端口序號的順序,封裝成固定格式順序填入接收緩沖區(qū),如果沒有,直接填入接收緩沖區(qū); 所述的多點對單點發(fā)射方法的步驟如下 A.比較緩沖區(qū)的讀寫指針,當寫指針超前讀指針時,讀取緩沖區(qū)中的GOOSE報文數(shù)據(jù); B.判斷GOOSE報文數(shù)據(jù)的起始符是否正確,如果不正確,讀指針加1,并返回到步驟A,如果GOOSE報文數(shù)據(jù)的起始符正確,提取GOOSE報文數(shù)據(jù)包的長度和VLAN TAG標識符; C.讀取相應(yīng)長度的GOOSE報文數(shù)據(jù),封裝成固定格式后放入發(fā)送緩沖區(qū)并啟動發(fā)送。
6.根據(jù)權(quán)利要求5所述的低離散性的GOOSE多點對單點收發(fā)方法,其特征在于所述的VLAN TAG是用于作為網(wǎng)絡(luò)端口的硬件標識來配置網(wǎng)口的接收與發(fā)送,接收時將VLAN TAG插入或替換成可表示網(wǎng)絡(luò)端口序號的標識,發(fā)送時根據(jù)VLANTAG的提示啟動需要發(fā)送的網(wǎng)絡(luò)芯片。
7.根據(jù)權(quán)利要求5所述的低離散型的GOOSE多點對單點收發(fā)方法,其特征在于所述的GOOSE報文是符合DL/T 860變電站通信網(wǎng)絡(luò)與系統(tǒng)標準定義GOOSE報文服務(wù)格式。
8.根據(jù)權(quán)利要求5所述的低離散型的GOOSE多點對單點收發(fā)方法,其特征在于所述的多點對單點收發(fā)過程中的單點方為過程層的網(wǎng)絡(luò)端口,多點方為間隔層的網(wǎng)絡(luò)端口。
全文摘要
本發(fā)明涉及一種低離散性的GOOSE單點對多點及多點對單點的收發(fā)方法,屬于電力系統(tǒng)變電站自動化技術(shù)領(lǐng)域。本發(fā)明通過將VLANTAG作為網(wǎng)絡(luò)端口的硬件標識來配置網(wǎng)口的接收與發(fā)送,接收時將VLANTAG插入或替換成可表示網(wǎng)絡(luò)端口序號的標識,發(fā)送時則根據(jù)VLANTAG的提示啟動需要發(fā)送的網(wǎng)絡(luò)芯片,該方法是在不改變以太網(wǎng)數(shù)據(jù)幀格式的前提下,快速準確地實現(xiàn)單點對多點的通信傳輸。
文檔編號H04L12/56GK102761486SQ20121024089
公開日2012年10月31日 申請日期2012年7月12日 優(yōu)先權(quán)日2012年7月12日
發(fā)明者周水斌, 朱小鍇, 李英明, 鄭拓夫, 閆志輝 申請人:國家電網(wǎng)公司, 許昌許繼軟件技術(shù)有限公司, 許繼電氣股份有限公司, 許繼集團有限公司