趙經(jīng)時,史貴林,張靜怡,李一石
(北方自動控制技術(shù)研究所,太原 030006)
一種雙層Powerlink網(wǎng)絡(luò)的網(wǎng)關(guān)
趙經(jīng)時,史貴林,張靜怡,李一石
(北方自動控制技術(shù)研究所,太原 030006)
描述了一種雙層Powerlink網(wǎng)絡(luò)的Powerlink網(wǎng)關(guān),用于解決不同層次實時以太網(wǎng)總線之間數(shù)據(jù)轉(zhuǎn)換以及不同網(wǎng)絡(luò)之間周期同步的問題。其主要是解決了兩層實時Powerlink網(wǎng)絡(luò)通信時的周期不同步問題,通過使用這一同步機(jī)制使下層Powerlink網(wǎng)絡(luò)在接入上層Powerlink網(wǎng)絡(luò)時能夠同步于上層網(wǎng)絡(luò),使每一個接入在同一上層網(wǎng)絡(luò)的下層網(wǎng)絡(luò)的動作實際都與上層網(wǎng)絡(luò)保持同步,從而確保雙層網(wǎng)絡(luò)數(shù)據(jù)交互的正常進(jìn)行。
雙層Powerlink網(wǎng)絡(luò),網(wǎng)關(guān),周期同步
隨著我軍武器系統(tǒng)裝備的快速發(fā)展,有必要將信息系統(tǒng)與各種武器平臺連接為一個有機(jī)整體,組成初級戰(zhàn)術(shù)網(wǎng)使其互相滲透和緊密交融,快速協(xié)作完成“偵控打保評”過程,從而提升整體作戰(zhàn)效能。
考慮到火力控制的時敏特性和作戰(zhàn)指揮大量信息的需求,通信網(wǎng)絡(luò)要具備強(qiáng)實時和高帶寬的特點,并且能實現(xiàn)網(wǎng)絡(luò)與總線的綜合集成。實時以太網(wǎng)的實時性和帶寬能夠滿足傳輸實時控制數(shù)據(jù)、感知數(shù)據(jù)、音視頻數(shù)據(jù)的需求,可用于火指控一體化設(shè)計。在諸多實時以太網(wǎng)技術(shù)中,Ethernet POWERLINK(EPL)以其出色的性能以及開放的源代碼成為首選技術(shù)。
在基于單層Powerlink構(gòu)建出的火指控一體化的通信網(wǎng)絡(luò)架構(gòu)中,一體化平臺內(nèi)所有節(jié)點由Powerlink網(wǎng)絡(luò)實時連接,但這種結(jié)構(gòu)只適用于平臺內(nèi)部或小型系統(tǒng),平臺間的交互還是非實時的。有兩種方式解決平臺間的實時交互:
(1)多個平臺都接入在同一層Powerlink網(wǎng)絡(luò)中,在一個實時網(wǎng)絡(luò)中進(jìn)行信息交互。但是平臺內(nèi)部存在較大數(shù)量的通信節(jié)點,在平臺間通過單層實時以太網(wǎng)通信時,會導(dǎo)致同一網(wǎng)絡(luò)節(jié)點數(shù)過多,使網(wǎng)絡(luò)本身的實時性無法滿足火控級需求。
(2)不同平臺通過兩層實時以太網(wǎng)連接,平臺內(nèi)由下層Powerlink網(wǎng)絡(luò)連接,平臺間和一些獨立設(shè)備由上層Powerlink網(wǎng)絡(luò)連接,完成戰(zhàn)術(shù)信息系統(tǒng)與實裝武器平臺的交聯(lián)和綜合集成。這種方式可以實時地實現(xiàn)多平臺協(xié)同控制技術(shù),雙層網(wǎng)絡(luò)可以通過網(wǎng)關(guān)連接,網(wǎng)關(guān)連接的兩級網(wǎng)絡(luò)中下層網(wǎng)絡(luò)為平臺內(nèi)部進(jìn)行同步和信息實時交互的Powerlink網(wǎng)絡(luò),僅用于平臺內(nèi)的數(shù)據(jù)可以不發(fā)送到上層網(wǎng)絡(luò),上層網(wǎng)絡(luò)為平臺間進(jìn)行周期同步和信息交互的網(wǎng)絡(luò),兩層網(wǎng)絡(luò)由Powerlink網(wǎng)關(guān)連接,組成一個上下兩層周期長度不同,但能夠同步的信息交互系統(tǒng)。其中網(wǎng)關(guān)在下層網(wǎng)絡(luò)中作為主節(jié)點存在,上層網(wǎng)絡(luò)中節(jié)點主要由本網(wǎng)關(guān)和普通Powerlink從節(jié)點組成,組成戰(zhàn)斗協(xié)同網(wǎng)絡(luò)。
圖1 雙層網(wǎng)絡(luò)的結(jié)構(gòu)
圖2 雙層Powerlink網(wǎng)關(guān)的功能實現(xiàn)過程
雙層Powerlink網(wǎng)關(guān)可以將大量節(jié)點分散到多個不同網(wǎng)段中,并通過一個主網(wǎng)絡(luò)連接在一起,單個平臺內(nèi)部的節(jié)點分布在一個較小網(wǎng)絡(luò)內(nèi),解決了多平臺間通過Powerlink網(wǎng)絡(luò)互連時,由于節(jié)點數(shù)過多導(dǎo)致通信周期過長的問題。具有以下功能:
(1)同一個設(shè)備內(nèi)存在兩個Powerlink節(jié)點,并且是不同Powerlink網(wǎng)絡(luò)的節(jié)點,在其中一個網(wǎng)絡(luò)中作主站,另一個網(wǎng)絡(luò)中作從站;
(2)兩層網(wǎng)絡(luò)間的周期具有相關(guān)性,并且通過Powerlink網(wǎng)關(guān)進(jìn)行同步;
(3)在未接入上層網(wǎng)絡(luò)時,該網(wǎng)關(guān)可以作為下層網(wǎng)絡(luò)的主站獨立運(yùn)行,與普通主站作用一致。
所以雙層Powerlink網(wǎng)關(guān)的功能主要是:作為下層網(wǎng)絡(luò)的主站工作、在上下層網(wǎng)絡(luò)間轉(zhuǎn)發(fā)數(shù)據(jù)、對下層網(wǎng)絡(luò)周期進(jìn)行同步。
2.1 硬件設(shè)計
圖3 雙層powerlink網(wǎng)關(guān)硬件結(jié)構(gòu)
雙層Powerlink網(wǎng)關(guān),分為電源模塊、上層網(wǎng)絡(luò)從節(jié)點、下層網(wǎng)絡(luò)主節(jié)點3部分組成,硬件上主要包括MCU芯片,RAM,ROM,F(xiàn)PGA芯片,時鐘,F(xiàn)LASH,SRAM,PHY芯片,電源等,硬件上與普通Powerlink主站或從站區(qū)別不大。
2.2 普通Powerlink協(xié)議棧
雙層Powerlink網(wǎng)關(guān)最基本的作用就是分別作為上層網(wǎng)絡(luò)從站和下層網(wǎng)絡(luò)主站,其在單層Powerlink網(wǎng)絡(luò)中的作用與普通Powerlink協(xié)議棧相同。Powerlink網(wǎng)絡(luò)的同步是通過每周期開始時的SOC幀完成的:若配置Powerlink網(wǎng)絡(luò)的周期為T0,主節(jié)點在產(chǎn)生第一個SOC幀之后,計時器記錄經(jīng)過一個周期T0的時間,主節(jié)點會再產(chǎn)生一個SOC幀,同時將計時器的寄存器記錄的時長清零,開始下一個周期,每一個從節(jié)點都以其接收到SOC幀作為執(zhí)行動作的同步時間,也作為這一個周期的開始,整個網(wǎng)絡(luò)實現(xiàn)同步。
在檢測不到上層網(wǎng)絡(luò)存在時,雙層Powerlink網(wǎng)關(guān)作為下層網(wǎng)絡(luò)的主節(jié)點,使用本身的時鐘和計時器產(chǎn)生SOC幀完成本網(wǎng)段的同步過程,其過程與普通的Powerlink網(wǎng)絡(luò)同步過程過程一致。
雙層Powerlink網(wǎng)關(guān)的上層網(wǎng)絡(luò)從節(jié)點部分作為普通從節(jié)點在上級網(wǎng)絡(luò)進(jìn)行周期同步,過程與現(xiàn)有的Powerlink網(wǎng)絡(luò)同步過程一致。
2.3 雙層Powerlink網(wǎng)絡(luò)數(shù)據(jù)交互過程
雙層Powerlink網(wǎng)關(guān)的核心功能是雙層網(wǎng)絡(luò)間的數(shù)據(jù)交互,當(dāng)雙層Powerlink網(wǎng)關(guān)接收到上層Powerlink網(wǎng)絡(luò)的SOC幀時,將這一時間作為上下層各個設(shè)備動作的同步時間。在上層網(wǎng)絡(luò)從節(jié)點部分接收到SOC幀時,F(xiàn)PGA芯片產(chǎn)生一個時間中斷(IRQ),將這一中斷信號接入到下層主節(jié)點MCU的CPU中斷上,這一中斷觸發(fā)以下3個過程:
(1)從寄存器中讀取計時器的當(dāng)前值,這一值為上一SOC幀產(chǎn)生之后到此時的時長ΔT;
(2)將數(shù)據(jù)幀中預(yù)設(shè)的一個標(biāo)志位IRQ標(biāo)志位置1,表明接收到了同步信號。
(3)以這一信號為起始點開始下一個大周期(上層網(wǎng)絡(luò)周期)的周期同步和數(shù)據(jù)交互,數(shù)據(jù)交互通過上下層主控單元對DPRAM進(jìn)行讀寫操作進(jìn)行,其中分為3種情況(T0為下層網(wǎng)絡(luò)周期時長):
①當(dāng)T0-ΔT≤10 μs時,下層網(wǎng)絡(luò)的動作時間相對上層網(wǎng)絡(luò)有一個較小的延遲;下發(fā)過程:上層從節(jié)點在自身接收SOC幀的ΔT時刻后將下發(fā)數(shù)據(jù)寫入下層主節(jié)點,下層主節(jié)點在一個下層周期后將數(shù)據(jù)發(fā)送到下層網(wǎng)絡(luò)上;上報過程:下層主節(jié)點在接到上層時間中斷后,在收到下層網(wǎng)絡(luò)的第二個SOC時將下層網(wǎng)絡(luò)數(shù)據(jù)寫入上層從節(jié)點,上層從節(jié)點在一個上層周期后將數(shù)據(jù)發(fā)送到上層網(wǎng)絡(luò)上;
②當(dāng)ΔT≤10 μs時,下層網(wǎng)絡(luò)的動作時間相對上層網(wǎng)絡(luò)有一個較小的超前;下發(fā)過程:上層從節(jié)點在自身接收SOC幀后立刻將下發(fā)數(shù)據(jù)寫入下層主節(jié)點,下層主節(jié)點在一個下層周期后將數(shù)據(jù)發(fā)送到下層網(wǎng)絡(luò)上;上報過程:下層主節(jié)點在接到上層時間中斷后,在收到下層網(wǎng)絡(luò)的下一個SOC時將下層網(wǎng)絡(luò)數(shù)據(jù)寫入上層從節(jié)點,上層從節(jié)點在一個上層周期后將數(shù)據(jù)發(fā)送到上層網(wǎng)絡(luò)上;
③當(dāng)ΔT≥10 μs且T0-ΔT≥10 μs時,下層網(wǎng)絡(luò)的動作時間相對上層網(wǎng)絡(luò)完全不同步,需要通過舍棄下層網(wǎng)絡(luò)一個周期的時間進(jìn)行同步;下發(fā)過程:上層從節(jié)點在自身接收SOC幀后立刻將下發(fā)數(shù)據(jù)寫入下層主節(jié)點,下層主節(jié)點在一個下層周期后將數(shù)據(jù)發(fā)送到下層網(wǎng)絡(luò)上;上報過程:下層主節(jié)點在接到上層時間中斷后,在收到下層網(wǎng)絡(luò)的下一個SOC時將下層網(wǎng)絡(luò)數(shù)據(jù)寫入上層從節(jié)點,上層從節(jié)點在一個上層周期后將數(shù)據(jù)發(fā)送到上層網(wǎng)絡(luò)上。
2.4 周期同步過程
在數(shù)據(jù)交互過程中,上層網(wǎng)絡(luò)還要對每一個下層網(wǎng)絡(luò)的運(yùn)行周期進(jìn)行同步,雙層Powerlink網(wǎng)關(guān)通過調(diào)整下層網(wǎng)絡(luò)每周期的開始時間完成上下層周期的同步過程,下層周期開始時間的調(diào)整由下層主節(jié)點中計時器Timer的時間中斷中添加的一個判決機(jī)制完成,判決流程如下(T為計時器當(dāng)前計時時長,T0為下層網(wǎng)絡(luò)周期時長):
圖4 調(diào)整同步周期的判決流程
(1)判斷是否接到了上層的時間中斷(IRQ標(biāo)志位是否為1),若未接收到中斷,轉(zhuǎn)到步驟(2),若接收到中斷,轉(zhuǎn)到步驟(3);
(2)IRQ標(biāo)志位為0時,將計時器的計時周期T更新為T=T0,下一個SOC幀在T0時間后產(chǎn)生,然后轉(zhuǎn)到步驟(9);
(3)IRQ標(biāo)志位為0時,判斷ΔT的大小,當(dāng)ΔT≤10 μs(這一參數(shù)取決于網(wǎng)絡(luò)特性,可根據(jù)網(wǎng)絡(luò)參數(shù)調(diào)整)時,此時下層周期相對上層周期超前ΔT,轉(zhuǎn)到步驟(4),當(dāng)ΔT>10 μs時,轉(zhuǎn)到步驟(5);
(4)將計時器的計時周期T更新為T=T0+ΔT,轉(zhuǎn)到步驟(8);
(5)判斷T0-ΔT的大小,當(dāng)T0-ΔT≤10 μs時,此時下層周期相對上層周期滯后T0-ΔT,轉(zhuǎn)到步驟(6),當(dāng)T0-ΔT>10 μs,上下層周期之間同步差距較大,轉(zhuǎn)入步驟(7);
(6)將計時器的計時周期T更新為T=ΔT,在計時T之后產(chǎn)生SOC幀,轉(zhuǎn)到步驟(8);
(7)為避免對下層網(wǎng)絡(luò)傳輸造成較大干擾,將下層網(wǎng)絡(luò)空閑一個周期作為緩沖,計時器的計時周期T更新為T=2T0-ΔT,在計時T之后產(chǎn)生SOC幀,轉(zhuǎn)到步驟(8);
(8)置零IRQ標(biāo)志位,轉(zhuǎn)到步驟(9);
(9)啟動計時器,完成同步過程。
Powerlink實時以太網(wǎng)的應(yīng)用可以有效地促進(jìn)任務(wù)網(wǎng)和控制網(wǎng)的融合,實現(xiàn)平臺內(nèi)部的單一總線通信。但是在需要多平臺間協(xié)同時,如果采用單層網(wǎng)絡(luò),過多的節(jié)點數(shù)會導(dǎo)致整個網(wǎng)絡(luò)實時性的下降,為保證整個系統(tǒng)的實時性,將網(wǎng)絡(luò)分為兩層是一種行之有效的手段。該雙層Powerlink網(wǎng)關(guān)實現(xiàn)了兩層網(wǎng)絡(luò)分別以不同的周期同步運(yùn)行,在本層網(wǎng)絡(luò)中實時的傳輸數(shù)據(jù),同時在網(wǎng)絡(luò)間實時的交互數(shù)據(jù)。
[1]宋華振.Ethernet POWERLINK在機(jī)器控制領(lǐng)域的應(yīng)用[J].中國儀器儀表,2011,22(3):44-47.
[2]林丹,王文海.基于EPL的上位機(jī)通信[J].吉林大學(xué)學(xué)報,2011,41(7):314-318.
[3]劉科峰,徐晶,趙夢欣.2008.實時以太網(wǎng)研究與實現(xiàn)[J].計算機(jī)應(yīng)用與軟件,2008,25(3):46-47.
[4]GB/T-27960-2011.以太網(wǎng)Powerlink通信行規(guī)規(guī)范[S].北京:總裝備部,2012,3.
[5]謝希仁.計算機(jī)網(wǎng)絡(luò)(第五版)[M].北京:電子工業(yè)出版社,2008.
A Gateway of Two-level Powerlink Network
ZHAO Jing-shi,SHI Gui-lin,ZHANG Jing-yi,LI Yi-shi
(North Automatic Contol Technology Institute,Taiyuan 030006,China)
This paper describes a gateway of two-level Powerlink network for solving the problems of data conversion among real-time Ethernet bus of different level and periodic non-synchronous communication among various networks.By using this synchronous mechanism,lower-level Powerlink network can synchronous access to upper-level Powerlink network,that is to say,those accessing to upper-level network communication nodes in lower-level network which will keep synchronous operation with the upper-level Powerlink network to ensure data interaction of two-level Powerlink network.
two-level Powerlink network,gateway,periodic synchronous
TP393
A
1002-0640(2015)07-0180-04
2014-06-10
2014-07-07
趙經(jīng)時(1989- ),男,山西侯馬人,在讀研究生。研究方向:嵌入式設(shè)計。