文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.03.027
中文引用格式: 封岸松,王宏,張彥武. 無(wú)線HART網(wǎng)絡(luò)節(jié)點(diǎn)變速率資源調(diào)度算法實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2016,42(3):95-97,101.
英文引用格式: Feng Ansong,Wang Hong,Zhang Yanwu. Implementation of variable-rate resources scheduling algorithm of wireless HART node[J].Application of Electronic Technique,2016,42(3):95-97,101.
0 引言
無(wú)線HART是第一個(gè)開(kāi)放式的工業(yè)無(wú)線通信標(biāo)準(zhǔn),用于滿足過(guò)程工業(yè)應(yīng)用中可靠、穩(wěn)定和安全的無(wú)線通信的關(guān)鍵需求。無(wú)線HART是一個(gè)集中管理的MESH網(wǎng)絡(luò),它建立在IEEE 802.15.4物理層標(biāo)準(zhǔn)上,附加了自有的數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和應(yīng)用層協(xié)議,在MAC層采用帶有跳頻的TDMA調(diào)度方法,保證系統(tǒng)的可靠性[1]。
無(wú)線HART網(wǎng)絡(luò)在數(shù)據(jù)鏈路層采用TDMA機(jī)制,無(wú)線HART網(wǎng)絡(luò)中的通信資源調(diào)度成為影響網(wǎng)絡(luò)通信性能的重要因素。
1 無(wú)線HART資源調(diào)度策略研究現(xiàn)狀
無(wú)線HART成為工業(yè)標(biāo)準(zhǔn)后,一些學(xué)者提出了一些基于無(wú)線HART網(wǎng)絡(luò)的調(diào)度方法。SAIFULLAH A提出的實(shí)時(shí)調(diào)度算法支持實(shí)時(shí)反饋閉環(huán)控制,但是只完成了仿真工作,并沒(méi)有實(shí)際的應(yīng)用報(bào)告[2];FANG M等提出了一種基于分層思想的調(diào)度算法,但時(shí)隙的分配中沒(méi)有考慮節(jié)點(diǎn)的數(shù)據(jù)更新速率[3];ZHANG H等提出了基于時(shí)隙數(shù)和信道數(shù)最優(yōu)的資源調(diào)度算法,但該算法僅僅是針對(duì)于線性網(wǎng)絡(luò)和樹(shù)狀網(wǎng)絡(luò)[4-5];董利達(dá)等提出了基于雙樹(shù)結(jié)構(gòu)資源調(diào)度策略,給出了資源添加和刪除算法,但該算法只適合雙樹(shù)結(jié)構(gòu)和層數(shù)固定的網(wǎng)絡(luò)拓?fù)?sup>[6];張盛等提出了無(wú)線HART網(wǎng)絡(luò)中的高可靠資源分配策略,基于資源分配的次序,降低傳輸延時(shí),但該算法沒(méi)有考慮節(jié)點(diǎn)數(shù)據(jù)傳輸速率的多變性以及資源類(lèi)型的差異[7]。上述算法都沒(méi)有考慮節(jié)點(diǎn)更新速率的不同,同時(shí)在時(shí)隙的選擇中,采用連續(xù)順序選擇的方法(即第一條路徑選擇時(shí)隙1,第2條路徑選擇時(shí)隙2),通信易受突發(fā)干擾的影響。本文依據(jù)現(xiàn)有的研究狀況,針對(duì)無(wú)線HART超幀資源的不同類(lèi)型和節(jié)點(diǎn)數(shù)據(jù)傳輸速率不同,提出資源分配算法。對(duì)無(wú)線HART網(wǎng)絡(luò)中同一節(jié)點(diǎn)的下一跳路徑(無(wú)線HART圖路由要求每一個(gè)節(jié)點(diǎn)都至少有兩條下一跳路徑)在超幀中均勻分配時(shí)隙,增強(qiáng)對(duì)干擾信號(hào)的抗干擾能力。
2 無(wú)線HART通信資源和超幀
無(wú)線HART網(wǎng)絡(luò)的通信資源包括以下幾種類(lèi)型:加入(JOIN)、廣告(ADVERTISE)、發(fā)現(xiàn)(DISCOVERY)、廣播(BROADCAST)和通用(NORMAL)。加入和廣告包用于節(jié)點(diǎn)加入; 發(fā)現(xiàn)型資源用于搜索新鄰居和保持與時(shí)間源設(shè)備之間的聯(lián)系;廣播資源用于廣播信息; 通用型資源則用于一般的數(shù)據(jù)傳遞。
在無(wú)線HART網(wǎng)絡(luò)中,通信資源的調(diào)度是以超幀為單位,超幀是一個(gè)由若干時(shí)隙組成的循環(huán)周期。無(wú)線HART規(guī)范支持多信道調(diào)度即支持16個(gè)信道,大大提高了通信帶寬的利用率。
無(wú)線HART的超幀可分為管理超幀和數(shù)據(jù)超幀,管理超幀主要負(fù)責(zé)加入、廣告、發(fā)現(xiàn)和廣播類(lèi)型資源及通用類(lèi)型中的下行資源,數(shù)據(jù)超幀負(fù)責(zé)上行資源。數(shù)據(jù)超幀長(zhǎng)度由節(jié)點(diǎn)通信速率決定,支持更新速率為2n s,其中n為正整數(shù)或負(fù)整數(shù),文中支持的最快更新數(shù)率為4 s,最慢更新數(shù)率為16 s(慢于16 s按照16 s更新)。論文使用一個(gè)數(shù)據(jù)超幀(長(zhǎng)度為1 600個(gè)時(shí)隙)和兩個(gè)管理超幀,一個(gè)長(zhǎng)度為200個(gè)時(shí)隙(加入和廣告類(lèi)型資源),另一個(gè)為400個(gè)時(shí)隙(廣播和下行的通用類(lèi)型資源)。
3 調(diào)度算法及實(shí)現(xiàn)
3.1 資源調(diào)度算法中的沖突
無(wú)線HART網(wǎng)絡(luò)中對(duì)時(shí)隙和信道的分配存在著兩種類(lèi)型的沖突:顯式?jīng)_突和隱式?jīng)_突。若一個(gè)節(jié)點(diǎn)同時(shí)存在一個(gè)發(fā)送鏈接和一個(gè)接收鏈接,則屬于顯式?jīng)_突,可以給兩種鏈接分配不同的時(shí)隙;而相鄰鏈接之間的干擾屬于隱式?jīng)_突,分配同一個(gè)時(shí)隙不同信道,如圖1中節(jié)點(diǎn)2→1和9→6所示,如果2和9同時(shí)發(fā)送數(shù)據(jù),2和6互為鄰居,則2會(huì)對(duì)6造成干擾。在實(shí)際的資源調(diào)度算法中,根據(jù)不同的資源類(lèi)型,對(duì)沖突的解決作了不同的定義。若通用資源和廣播類(lèi)型資源的起點(diǎn)和終點(diǎn)都不同,則使用同一個(gè)時(shí)隙不同信道,否則分配不同時(shí)隙。若加入資源接收地址不同,廣告類(lèi)型資源發(fā)送地址不同,則使用同一個(gè)時(shí)隙不同信道,否則分配不同時(shí)隙。
3.2 資源調(diào)度算法軟件實(shí)現(xiàn)
無(wú)線HART的管理超幀(兩種)和數(shù)據(jù)超幀的長(zhǎng)度不同,無(wú)線HART的資源在這三種超幀上分配,但是這三種超幀都是在同一時(shí)間上運(yùn)行,因此在資源分配時(shí)還要考慮以下兩個(gè)問(wèn)題:(1)在同一個(gè)時(shí)隙上,每種超幀既不能與同超幀類(lèi)型資源沖突,也不能與其他超幀沖突;(2)由于三種超幀的更新時(shí)間不同,更新速率快的超幀在處理與更新速率慢的超幀的沖突時(shí),不僅考慮相同時(shí)隙的沖突,還要考慮相應(yīng)倍數(shù)時(shí)隙的資源沖突,如加入資源超幀長(zhǎng)度為200個(gè),在相對(duì)時(shí)隙數(shù)為10的位置處考慮與數(shù)據(jù)超幀的沖突時(shí),既要考慮時(shí)隙數(shù)為10處的資源,還要考慮相對(duì)時(shí)隙數(shù)為210、410、610等處是否有資源沖突(數(shù)據(jù)超幀)。為解決以上問(wèn)題,文中對(duì)于通信資源分配,統(tǒng)一在最長(zhǎng)的超幀(數(shù)據(jù)超幀)上對(duì)各種類(lèi)型的資源分配,之后再分配到對(duì)應(yīng)的超幀中。下面詳述資源調(diào)度算法的實(shí)現(xiàn)過(guò)程。
無(wú)線HART資源調(diào)度算法的軟件實(shí)現(xiàn)主要由超幀初始化、節(jié)點(diǎn)信息獲取、路由算法實(shí)現(xiàn)、管理超幀資源調(diào)度算法實(shí)現(xiàn)和數(shù)據(jù)超幀資源調(diào)度算法實(shí)現(xiàn)等部分組成,下面對(duì)各部分作詳細(xì)說(shuō)明。
(1)超幀初始化
實(shí)現(xiàn)對(duì)管理超幀和數(shù)據(jù)超幀的數(shù)據(jù)結(jié)構(gòu)初始化,數(shù)據(jù)超幀的長(zhǎng)度為1 600,管理超幀1長(zhǎng)度為200個(gè)(加入和廣告類(lèi)型),管理超幀2長(zhǎng)度為400個(gè)(廣播和下行數(shù)據(jù)類(lèi)型),在初始化中,還分配了網(wǎng)絡(luò)接入點(diǎn)的加入、廣告、發(fā)現(xiàn)和廣播類(lèi)型資源。
(2)節(jié)點(diǎn)信息獲取
獲取節(jié)點(diǎn)信息和鄰居信息。
(3)路由算法實(shí)現(xiàn)
根據(jù)節(jié)點(diǎn)信息,實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)的圖路由和源路由算法,本文采用了文獻(xiàn)[8]的算法。
(4)管理超幀資源調(diào)度算法實(shí)現(xiàn)
管理超幀資源分配算法過(guò)程如下:
①輸入資源類(lèi)型和超幀長(zhǎng)度length,加入和廣告類(lèi)型length=200,廣播和下行數(shù)據(jù)類(lèi)型length=400;
②下行數(shù)據(jù)類(lèi)型資源,根據(jù)源路由得到相應(yīng)的路徑,對(duì)每條路徑調(diào)用資源搜索子算法,其他類(lèi)型資源直接調(diào)用資源搜索子算法。
③調(diào)用資源分配子算法,設(shè)i=1,no=0,△=1。
資源搜索子算法實(shí)現(xiàn)步驟如下:
步驟a:對(duì)需要分配資源的節(jié)點(diǎn),在數(shù)據(jù)超幀的第i個(gè)時(shí)隙的16個(gè)信道做資源沖突檢測(cè)(各類(lèi)資源沖突檢測(cè)規(guī)則詳見(jiàn)3.1節(jié)),如果有沖突,轉(zhuǎn)到步驟d,否則執(zhí)行步驟b;
步驟b:j=i+length×k(k=1~(1 600/length-1)),分別對(duì)應(yīng)不同的j值,在數(shù)據(jù)超幀的第j個(gè)時(shí)隙的16個(gè)信道做資源沖突檢測(cè),如果有沖突,轉(zhuǎn)到步驟d,否則執(zhí)行步驟c;
步驟c:在數(shù)據(jù)超幀的第i個(gè)時(shí)隙,檢測(cè)是否有空閑信道,有則該節(jié)點(diǎn)在i時(shí)隙空閑信道分配相應(yīng)類(lèi)型資源,在數(shù)據(jù)超幀第i和j個(gè)時(shí)隙和相應(yīng)管理超理超幀(如果是管理超幀分配)第i個(gè)時(shí)隙中記錄發(fā)送地址,接收地址和資源類(lèi)型,退出,資源分配成功,否則轉(zhuǎn)到步驟d;
步驟d:no=no+1;i=i+△,如果no≥length,資源分配失敗,退出,否則轉(zhuǎn)到步驟a。
(5)數(shù)據(jù)超幀資源調(diào)度算法實(shí)現(xiàn)
數(shù)據(jù)超幀分配上行圖路由數(shù)據(jù),對(duì)于圖路由,源節(jié)點(diǎn)及每個(gè)中間節(jié)點(diǎn)都有兩條到下一跳節(jié)點(diǎn)的路徑,為了增強(qiáng)系統(tǒng)的抗干擾性,文中對(duì)于一個(gè)節(jié)點(diǎn)的兩條上行路徑,其資源分配的時(shí)隙間隔盡量大。數(shù)據(jù)超幀資源調(diào)度算法實(shí)現(xiàn)過(guò)程如下:
①根據(jù)圖路由,計(jì)算從源節(jié)點(diǎn)到目的節(jié)點(diǎn)的經(jīng)過(guò)節(jié)點(diǎn)和路徑(這部分算法不屬于本文范圍之內(nèi));
②對(duì)所有路徑和節(jié)點(diǎn)分配資源;
③i=1,no=0,△=1,length=T×100(T為數(shù)據(jù)更新時(shí)間,單位s),調(diào)用資源搜索子算法,得到第一條路徑資源;
④i=(L+length/2)%length(L為第一條路徑的時(shí)隙值),no=0,△=(-1)×no,調(diào)用調(diào)用資源搜索子算法,得到第二條路徑資源。
3.3 算法實(shí)例驗(yàn)證
選取圖1所示的無(wú)線HART網(wǎng)絡(luò),節(jié)點(diǎn)1為網(wǎng)絡(luò)接入點(diǎn),2~11為現(xiàn)場(chǎng)設(shè)備,數(shù)據(jù)更新速率為16 s,應(yīng)用資源調(diào)度算法,得到整個(gè)網(wǎng)絡(luò)資源分配表,文中只選取了前20個(gè)時(shí)隙的資源分配表,見(jiàn)表1和表2,其中時(shí)隙0為全網(wǎng)發(fā)現(xiàn)時(shí)隙,d表示下行,u表示上行,a表示廣告,j表示加入,b表示廣播,*表示多節(jié)點(diǎn)。
4 實(shí)驗(yàn)分析
4.1 建立實(shí)驗(yàn)環(huán)境
為驗(yàn)證資源調(diào)度算法,搭建無(wú)線HART網(wǎng)絡(luò)實(shí)驗(yàn)平臺(tái),包括網(wǎng)絡(luò)管理器、接入點(diǎn)和現(xiàn)場(chǎng)設(shè)備。網(wǎng)絡(luò)管理者在計(jì)算機(jī)上Linux環(huán)境下完成,AP和現(xiàn)場(chǎng)設(shè)備使用飛思卡爾的MC13224無(wú)線模塊。
4.2 實(shí)驗(yàn)結(jié)果
(1)在無(wú)干擾情況下,分別使用5、10、15、20和25個(gè)現(xiàn)場(chǎng)設(shè)備,使用4 s的更新速率和可變速率(從4 s~16 s),應(yīng)用文中算法,節(jié)點(diǎn)向網(wǎng)關(guān)傳送數(shù)據(jù),實(shí)測(cè)端到端的單向數(shù)據(jù)傳送成功率,端對(duì)端不設(shè)重傳,結(jié)果如圖2所示,說(shuō)明在變速率節(jié)點(diǎn)數(shù)據(jù)上傳的情況下,算法保證了數(shù)據(jù)的穩(wěn)定上傳。
(2)在加干擾情況下,分別使用5、10、15、20和25個(gè)現(xiàn)場(chǎng)設(shè)備,在時(shí)隙分配中一種選擇同一節(jié)點(diǎn)的上行兩條路徑的時(shí)隙間隔盡量大(方案1),另一種順序選擇時(shí)隙(方案2),數(shù)據(jù)更新速率都為固定的16 s,從節(jié)點(diǎn)向網(wǎng)關(guān)傳送數(shù)據(jù),加入干擾信號(hào),然后實(shí)測(cè)端到端的單向數(shù)據(jù)傳送成功率,端對(duì)端不設(shè)重傳,得到如圖3所示的結(jié)果。從結(jié)果可以看出,方案1的成功率要高于方案2,說(shuō)明文中使用的算法提高了節(jié)點(diǎn)上傳數(shù)據(jù)的抗擾性。
5 結(jié)論
目前無(wú)線HART網(wǎng)絡(luò)的資源調(diào)度算法研究主要應(yīng)用于節(jié)點(diǎn)更新速率固定的場(chǎng)合,本文提出了一種針對(duì)于節(jié)點(diǎn)變速率上傳數(shù)據(jù)的資源分配算法,對(duì)無(wú)線HART網(wǎng)絡(luò)中同一節(jié)點(diǎn)的下一跳路徑在超幀中均勻分配時(shí)隙,增強(qiáng)對(duì)干擾信號(hào)的抗干擾能力。實(shí)驗(yàn)結(jié)果表明,算法實(shí)現(xiàn)了無(wú)線HART網(wǎng)絡(luò)變速率節(jié)點(diǎn)的資源分配,并提高了節(jié)點(diǎn)數(shù)據(jù)傳輸?shù)目箶_性。
參考文獻(xiàn)
[1] 李繼平,凌志浩.無(wú)線HART技術(shù)及其應(yīng)用[J].世界儀表與自動(dòng)化,2008,12(3):63-65.
[2] SAIFULLAH A.Real-time scheduling for Wireless HART networks[C].Real-Time Systems Symposium(RTSS),2010:150-159.
[3] FANG M,LI D,QUAN J.An innovative routing and resource optimization strategy for wireless HART[C].2012 International Conference Technology and Management.Germany:Springer Verlag,2012:353-360.
[4] ZHANG H,SOLDATI P,JOHANSSON M.Operational link scheduling and channel assignment for convergecast in linear WirelessHART networks[C].Proceedings of the Conference on Modeling and Optimization in Mobile, Ad Hoc, and Wireless Networks,Seoul,June 23-27,2009:1-8.
[5] ZHANG H,SOLDATI P,JOHANSSON M.Time and channel-efficient link scheduling convergecast in wirelessHART networks[C].2011 IEEE 13th International Conference on Communication Technology.United states Institute of Electrical and Electronics Engineers Inc,2011:99-103.
[6] 董利達(dá),黃聰,管林波.基于雙樹(shù)結(jié)構(gòu)的無(wú)線HART調(diào)度策略[J].浙江大學(xué)學(xué)報(bào),2014,48(3):391-397.
[7] 張盛,張國(guó)勇,鄢傲.無(wú)線HART網(wǎng)絡(luò)中的高可靠資源分配策略[J].小型微型計(jì)算機(jī)系統(tǒng),2014,35(12):2593-2597.
[8] 封岸松,王宏.基于通信鏈路質(zhì)量的無(wú)線HART圖路由算法實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2015,41(4):119-124.