公務(wù)員期刊網(wǎng) 論文中心 正文

環(huán)網(wǎng)下的工業(yè)通信自組網(wǎng)方法設(shè)計

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了環(huán)網(wǎng)下的工業(yè)通信自組網(wǎng)方法設(shè)計范文,希望能給你帶來靈感和參考,敬請閱讀。

環(huán)網(wǎng)下的工業(yè)通信自組網(wǎng)方法設(shè)計

摘要:本文提出了一種基于環(huán)網(wǎng)的工業(yè)通信自組網(wǎng)方法。該方法基于環(huán)網(wǎng)以太網(wǎng)通信,通過掃描幀的方式,實現(xiàn)網(wǎng)內(nèi)模塊自動識別并產(chǎn)成本地MAC地址,主控模塊通過收集網(wǎng)內(nèi)所有模塊的MAC地址,對各模塊進(jìn)行點對點組網(wǎng)配置,實現(xiàn)環(huán)網(wǎng)控制系統(tǒng)的智能組網(wǎng),無需人工參與。該方法支持環(huán)網(wǎng)異常情況下的自動組網(wǎng),同時識別環(huán)網(wǎng)故障位置。此外,該方法在不影響網(wǎng)絡(luò)正常通信的情況下,支持新模塊的接入及自動入網(wǎng)。

關(guān)鍵詞:環(huán)網(wǎng);掃描幀;自動組網(wǎng)

引言

工業(yè)網(wǎng)絡(luò)尤其是特殊應(yīng)用場合對于通信的可用性和可靠性有著較高的要求,在一些距離遠(yuǎn),節(jié)點多的應(yīng)用場合下,環(huán)型的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)無論在層次化組網(wǎng)、節(jié)省線路資源(比如光纖、cable等)上,還是在保障通信可靠性上都有其他網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)不具備的優(yōu)點。工業(yè)環(huán)網(wǎng)系統(tǒng)在構(gòu)成系統(tǒng)之前,往往需要對系統(tǒng)中的每個模塊進(jìn)行配置,如設(shè)備出廠ID,物理MAC地址等。當(dāng)系統(tǒng)規(guī)模較大時,挨個對每個模塊進(jìn)行配置不僅使得工作量龐大、繁瑣,同時也容易因各種人為因素產(chǎn)生重復(fù)、錯亂等問題。為了解決上述缺陷,并使得控制系統(tǒng)更加智能,本文提出了一種基于環(huán)網(wǎng)結(jié)構(gòu)的自組網(wǎng)及網(wǎng)絡(luò)診斷方法。現(xiàn)行已有的自組網(wǎng)方式,大多是基于無線通信的,自組網(wǎng)協(xié)議、方法在網(wǎng)絡(luò)的上層實現(xiàn)。本文則是基于網(wǎng)絡(luò)的物理層、鏈路層進(jìn)行,底層實現(xiàn)比上層實現(xiàn)更靈敏、更實時。

1通信模型及自組網(wǎng)概述

通信環(huán)網(wǎng)模型如圖1所示,通信環(huán)網(wǎng)包含了一個主控模塊,若干個從動模塊。每個模塊都帶有A、B兩個以太網(wǎng)通信口,主控模塊和從動模塊依次連接形成環(huán)網(wǎng)結(jié)構(gòu)。主控模塊管理整個網(wǎng)絡(luò)及配置信息。用戶可以通過設(shè)備描述文件——XDD文件向主控模塊進(jìn)行配置寫入。主控模塊通過XDD文件獲知所有設(shè)備的通信信息,如設(shè)備類型、每個設(shè)備需要收發(fā)的數(shù)據(jù)等。同時,用戶只需對主控模塊進(jìn)行MAC地址等的分配寫入。主控模塊通過周期性的發(fā)送掃描報文,告知配入MAC地址,從動模塊根據(jù)掃描報文的該MAC地址生成并填入本地MAC地址到掃描報文中,最終主控模塊通過回收掃描報文收集到網(wǎng)內(nèi)所有模塊的MAC地址。掃描幀包括幀頭、數(shù)據(jù)和幀尾,幀格式如圖2所示。當(dāng)主控模塊獲得所有模塊的MAC地址后,主控模塊根據(jù)每個模塊的MAC地址進(jìn)行點對點發(fā)送組態(tài)配置數(shù)據(jù)。組態(tài)配置的數(shù)據(jù)主控模塊已從XDD文件中獲取。

2自組網(wǎng)原理機(jī)制

環(huán)網(wǎng)結(jié)構(gòu)的通信鏈路優(yōu)勢在于其中一條鏈路斷開,通信依然可以進(jìn)行。因此本文也在環(huán)網(wǎng)正常和環(huán)網(wǎng)異常斷開兩種不同的情況下進(jìn)行了自組網(wǎng)的研究。自組網(wǎng)流程如圖3所示。

2.1環(huán)網(wǎng)正常

環(huán)網(wǎng)正常的情況下,上電后,主控模塊從一側(cè)端口(A口)發(fā)送掃描幀。其中掃描幀數(shù)據(jù)段起始位置的前6個字節(jié)(稱為數(shù)據(jù)段1,第7~12個字節(jié)為數(shù)據(jù)段2,依次類推)插入了主控模塊的MAC地址,數(shù)據(jù)段2插入從動模塊自動生成MAC地址的參考值(高4個字節(jié)以及第6個字節(jié)為主控模塊的MAC[47:16]和MAC[7:0];第5個字節(jié)用于標(biāo)記主控模塊從A口還是B口發(fā)出掃描報文,此處通過0或者1表示,0代表A口,1代表B口),其余數(shù)據(jù)段為0。當(dāng)緊鄰主控制器A口的第一個從動模塊接收到數(shù)據(jù)幀,從動模塊判斷幀類型,當(dāng)幀類型為掃描幀,從掃描幀的數(shù)據(jù)部分以一個數(shù)據(jù)段即6個字節(jié)為單位依次讀取MAC地址,直至數(shù)據(jù)段為0位置。該從動模塊根據(jù)最后讀取的數(shù)據(jù)段1的值進(jìn)行自加1來生成自身的MAC地址,并放入掃描幀數(shù)據(jù)中數(shù)據(jù)段3位置后轉(zhuǎn)發(fā)該掃描幀給下一個從動模塊。環(huán)網(wǎng)內(nèi)的從動模塊依次進(jìn)行掃描報文的判斷、MAC自加插入和轉(zhuǎn)發(fā)。主控模塊從B口返回掃描幀,從掃描幀的數(shù)據(jù)中讀取網(wǎng)內(nèi)的所有從動模塊的MAC地址。同時,根據(jù)掃描幀中的MAC值所在的數(shù)據(jù)段,主控模塊可以清晰的獲知每個模塊處于環(huán)網(wǎng)中的具體位置。

2.2環(huán)網(wǎng)異常

當(dāng)環(huán)網(wǎng)鏈路斷開異常時,主控模塊從A口發(fā)送掃描幀后,B口無法返回的掃描幀。主控模塊在從A口發(fā)送掃描幀后開始計時,當(dāng)計時時間達(dá)到Ttimeout后還未從B口收到掃描幀,則判斷等待超時,啟動線路自檢。超時時間Ttimeout可配,Ttimeout≥環(huán)網(wǎng)內(nèi)設(shè)備個數(shù)×10μs,其中10μs為轉(zhuǎn)發(fā)一個100Byte的掃描幀所需時間。主控模塊從A、B口同時發(fā)送線路自檢通知幀。主動模塊從開始發(fā)送該幀開始計時,等待一個時間周期T2,確保線路自檢通知幀已經(jīng)輪詢完網(wǎng)內(nèi)所有從動模塊。從動模塊收到該幀后,等待一個時間周期T2。在等待T2時間后,主控模塊、從動模塊開始同時向A、B口發(fā)送線路自檢幀,相鄰的模塊將會從一側(cè)端口收到線路自檢幀,當(dāng)收到該幀后,則標(biāo)記當(dāng)前端口處于正常通信狀態(tài)。當(dāng)所有的模塊都收發(fā)完線路自檢幀后,各模塊都完成了端口狀態(tài)標(biāo)記。鏈路異常斷開,兩側(cè)的兩個模塊所對應(yīng)的端口將標(biāo)記為端口異常。主控模塊在完成端口標(biāo)記后,從A、B口同時發(fā)送掃描幀,從動模塊接收掃描幀,依次產(chǎn)生并插入MAC地址到掃描幀中。如果該從動模塊是從A口接收掃描幀,且B口處于正常通信狀態(tài),則該從動模塊將更新后的掃描幀從B口轉(zhuǎn)發(fā)給下一個從動模塊;如果該從動模塊的B口處于異常狀態(tài),則將掃描幀從A返回掃描幀給上一個從動模塊。上一個從動模塊已經(jīng)處理過掃描幀,則不再進(jìn)行二次處理,判斷為掃描幀后直接往另一個端口轉(zhuǎn)發(fā),經(jīng)過一級級轉(zhuǎn)發(fā)最后回到主控模塊。主控模塊將從A、B口分別收到一個返回的掃描幀,兩個掃描幀中分別包含主控模塊A口到鏈路斷開處之間的所有從模塊的MAC地址,和主控模塊B口到鏈路斷開處之間的所有從模塊的MAC地址。通過解析兩個掃描幀,主控模塊可以獲取所有的設(shè)備的MAC地址,并獲知每個模塊在網(wǎng)內(nèi)的位置以及鏈路斷開的位置。

3新模塊入網(wǎng)

在工業(yè)通信中,往往存在網(wǎng)絡(luò)中的模塊加入和斷開的情況,并且不影響整個網(wǎng)絡(luò)的正常通信的情況。本文也對新模塊如何自動入網(wǎng)進(jìn)行了研究。在系統(tǒng)進(jìn)入正常通信后,如果環(huán)網(wǎng)正常,主控模塊會周期性的從一側(cè)發(fā)送掃描幀;如果環(huán)網(wǎng)斷開,主控模塊會周期性的從兩側(cè)發(fā)生掃描幀。當(dāng)有新模塊加入時,新模塊會響應(yīng)掃描幀,根據(jù)掃描幀中的MAC值生成自身的MAC值。主控模塊收到返回的掃描幀后根據(jù)數(shù)據(jù)值即獲知有新設(shè)備加入并對其進(jìn)行組態(tài)配置。在系統(tǒng)正常通信且環(huán)網(wǎng)正常的情況下,如果新模塊需要插入,需經(jīng)過先斷開環(huán)網(wǎng)、接入新模塊、恢復(fù)環(huán)網(wǎng)3個步驟。當(dāng)斷開環(huán)網(wǎng)時,主控模塊、從動模塊仍然可以繼續(xù)通信,但是在通信過程只能收到一份數(shù)據(jù),此時主控模塊和從動模塊可知環(huán)網(wǎng)斷開。鏈路斷開兩側(cè)模塊將會在下次通信中上報網(wǎng)絡(luò)斷開、斷開端口給主控模塊。主控模塊根據(jù)環(huán)網(wǎng)斷開、新模塊加入、環(huán)網(wǎng)恢復(fù)以及從動模塊上報的端口斷開信息可判斷新接入模塊所處的網(wǎng)絡(luò)位置。在系統(tǒng)正常通信且環(huán)網(wǎng)斷開的情況下,新模塊的接入只能接在兩側(cè)鏈路的尾端。主控模塊根據(jù)接收新加入模塊數(shù)據(jù)的端口可判斷新接入模塊處于鏈路哪一側(cè)。

4結(jié)論

通過本文的所提到的自組網(wǎng)方式,將使得環(huán)網(wǎng)控制系統(tǒng)的組網(wǎng)配置過程更加智能高效,無需人工參與,不僅節(jié)省了工程師大量繁瑣且重復(fù)的工作量,也避免了極易因人為導(dǎo)致的重復(fù)配置、錯亂等問題。同時,通過本文的方法,上位機(jī)以及用戶可以清楚的知道每個設(shè)備在網(wǎng)絡(luò)中所處的位置,當(dāng)系統(tǒng)設(shè)備或者線路故障時,也無需工程師挨個排查定位,即可明確知道網(wǎng)絡(luò)故障位置。

參考文獻(xiàn)

[1]李志強(qiáng).DRP系統(tǒng)故障自愈時間的建模分析和優(yōu)化研究,浙江大學(xué)碩士學(xué)位論文,2013.

[2]張憲軍,劉穎,余華武.IEC62439PRP冗余丟棄算法設(shè)計,電力系統(tǒng)保護(hù)與控制,2014.

[3]馮冬芹,褚健,金建祥.實時工業(yè)以太網(wǎng)技術(shù)-EPA及其應(yīng)用解決方案,科學(xué)出版社,2013.

作者:童慶 金偉江 劉國安 傅盼盼 單位:浙江中控研究院有限公司