<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > CSMA協(xié)議在無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中的實(shí)現

CSMA協(xié)議在無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中的實(shí)現

作者: 時(shí)間:2011-08-05 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/161636.htm

  3.2 信號強度閾值初始值的選擇

  信號強度閾值的初始值必須根據實(shí)際測試緄拇罅殼慷戎道瓷瓚ǎ如果設置失誤,將導致信道狀態(tài)判斷不準確。本文假設兩個(gè)初值分別是initNoiseSignal和init2BusySignal。下面給出部分測試強度的數據,如表1所列。

  測試時(shí)使用兩個(gè)節點(diǎn),且兩個(gè)節點(diǎn)都是使用新電池(即電源充沛)。表中,“阻隔”指的是一堵大約10cm厚的墻。

  在雙方節點(diǎn)能通信的前提下,本文測到的busyRSSI的最小值為0x54。根據上一小節的論述,initBusySignal的值可以略高,但因為該值是在電量充足且有阻隔的情況下測試緄淖钚∏康髦擔因此可以直接取為busyRSSI的最小值,即initBusySignal的值設置為0x54。對于init2NoiseSignal的取值,從表1可以看出,檢測到的RSSI值非常穩定,信道空閑時(shí)噪聲強度幅度不大,因此取值比0x4D略大就可以了。本文中initNoiseSignal取值為0x4E。

  3.3 本文的信道監測機制的優(yōu)點(diǎn)

  本文的信道監測機制比較完善且十分靈活。完善是指信道活動(dòng)狀態(tài)判定規則十分完備,不僅有基本判定和擴展判定,而且還有閾值更新機制,進(jìn)一步確保了判定結果的正確性;靈活是指向調用方提供了采樣窗口數的設置,使得調用方可以在每次監測時(shí)使用不同的采樣窗口數,可以被LPL、B2MAC等有特殊要求的基于競爭的MAC直接調用。

  4 

  本文實(shí)現的CAMA是基于使用廣泛的非持續性協(xié)議的,即節點(diǎn)在發(fā)送數據包之前先監測信道,如果監測到信道空閑,則該節點(diǎn)就自己開(kāi)始發(fā)送數據包。反之,如果監測結果為信道繁忙,即信道已經(jīng)被鄰居節點(diǎn)占用,則該節點(diǎn)回退一段隨機時(shí)間后,再次開(kāi)始監測,重復上面的操作。

  在具體實(shí)現協(xié)議時(shí),本文結合信道監測提供的接口對協(xié)議做了一些優(yōu)化調整。另外,由于中節點(diǎn)間距離很短,一般忽略傳播延遲,因此具體的實(shí)現與標準的CSMA協(xié)議有些不同,但原理一致,其實(shí)現如下:

  如果節點(diǎn)要發(fā)送數據包,需要先進(jìn)行載波監聽(tīng),首先隨機選擇一個(gè)采樣窗口數(即信道采樣次數),該采樣數屬于某一個(gè)范圍,本文選擇為8~32。采樣數隨機選擇的目的是減少沖突,舉例說(shuō)明:假設信道目前空閑,A、B、C三個(gè)節點(diǎn)都是鄰居節點(diǎn),且A、B節點(diǎn)有數據包要發(fā)送給節點(diǎn)C;A、B兩個(gè)鄰居節點(diǎn)同時(shí)開(kāi)始監測,如果采樣窗口數固定,根據信道監測的規則,信道空閑必須等到采樣數用完才能下結論,那么A、B節點(diǎn)都在用完所有的采樣數后得縲諾攬障械慕崧郟然后都發(fā)送數據包,這樣數據在節點(diǎn)C處就發(fā)生了沖突,最后A、B兩節點(diǎn)就必須依靠隨機回退一段時(shí)間后再次監測信道。采用隨機的采樣窗口數可以降低上面情況的發(fā)生率。因為采樣窗口數小的節點(diǎn)(假設為節點(diǎn)A)先得出信道空閑的結論并發(fā)送數據包,采樣窗口數大的節點(diǎn)B在后面的采樣中發(fā)現信道繁忙(因為節點(diǎn)A已經(jīng)占用了信道)就回退,避免了發(fā)生沖突。

  回退時(shí)間的選擇也是值得推敲的一個(gè)參數。CC2420是以數據包為單位發(fā)送的射頻芯片,其最大數據包的長(cháng)度為128字節,加上同步頭5字節,總共是133字節。

  CC2420的發(fā)送速率是250kb/s,即發(fā)送一個(gè)字節的時(shí)間為32μs,因此發(fā)送一個(gè)最大數據包的時(shí)間為133×32=4256μs。根據信道采樣規則,只要一采樣到信道占用,就可以結束本次監測并得出信道繁忙的結論,因此回退時(shí)間應該要大于數據包的發(fā)送時(shí)間。又因為采樣窗口數已經(jīng)采用了隨機選取,所以回退時(shí)間可以使用固定值。因此可以將回退時(shí)間固定為4.5ms,回退功能的具體實(shí)現只需要一個(gè)定時(shí)器輔助就可以了。

  最后,要處理信道強度閾值更新的問(wèn)題。如果MAC層連續對信道監測的結果都是繁忙,且累計超過(guò)一個(gè)預設的閾值Y,就必須要調用MAC層提供的接口來(lái)對minSig2nal閾值進(jìn)行更新,參照上節信號強度閾值的更新機制。

  根據實(shí)際的測試分析,Y的取值一般為30~60。

  5 結語(yǔ)

  本文靈活利用CC2420射頻芯片的特點(diǎn),設計并實(shí)現了一整套從物理層到MAC層的CSMA協(xié)議的實(shí)現;并詳細闡述了協(xié)議中信道監測使用的所有判定規則及各關(guān)鍵閾值參數的選擇。經(jīng)過(guò)實(shí)際的多節點(diǎn)通信測試,該CSMA協(xié)議可以正確、穩定地進(jìn)行信道活動(dòng)監測,并實(shí)時(shí)動(dòng)態(tài)地調整閾值;并且該CSMA協(xié)議的設計可以完全嵌入應用到其他MAC層協(xié)議中,輔助其他協(xié)議完成信道競爭或信道檢測。

 CSMA協(xié)議是中運用得最為廣泛的競爭協(xié)議,因此網(wǎng)絡(luò )的MAC層大多使用CSMA機制來(lái)提供競爭信道的功能。隨著(zhù)IEEE802.15.4標準的制定,各射頻芯片廠(chǎng)家也紛紛推出了性能更好、功能更強的射頻芯片。TI公司(原Chipcon)推出CC2420來(lái)替代原來(lái)無(wú)線(xiàn)傳感器網(wǎng)絡(luò )使用最多的射頻芯片CC1000。由于各射頻芯片特性功能各不相同,為了使CSMA協(xié)議達到更好的性能,根據射頻芯片的具體特性來(lái)重新優(yōu)化設計CSMA機制也就變得很有必要。

  本文使用TI公司的MSP4301611超低功耗MCU,以及CC2420射頻芯片作為硬件實(shí)驗平臺,充分利用CC2420部分IEEE802.15.4協(xié)議MAC封裝的特性,設計并實(shí)現了一個(gè)全新的、靈活的CSMA協(xié)議。

  1 信道監測的設計

  實(shí)現CSMA協(xié)議的最基本的條件就是物理層必須提供可靠、實(shí)用的信道監測手段,因此首先要了解射頻芯片的一些特性。

  1.1 CC2420的相關(guān)特性

  CC2420是TI公司推出的2.4GHz射頻芯片,其硬件封裝支持部分IEEE802.15.4的MAC層協(xié)議規定。

  CC2420的功能結構如圖1所示,CC2420的數字接口具有自動(dòng)CRC校驗、自動(dòng)加密的功能,并維護兩個(gè)緩沖區(一個(gè)接收FIFO,一個(gè)發(fā)送FIFO)。數字接口通過(guò)SPI通信接口與微處理器相連。CC2420是以數據包為單位的射頻芯片,即必須從微處理器收滿(mǎn)一個(gè)數據包,才會(huì )發(fā)送該數據包。

  數字接口收滿(mǎn)一整包后,自動(dòng)添加CRC校驗,并送入調制模塊進(jìn)行數據調制和整形,最后發(fā)送出去。當監測到信道有數據時(shí),將數據經(jīng)過(guò)模/數轉換后送入數字解調器中進(jìn)行幀同步;如果同步就將數據填入接收緩沖區中,最后填充當前信道內的RSSI(ReceiveSignalStrengthIn2dicator,接收信號強度指示器)信息。

  CC2420提供一個(gè)讀取RSSI值的命令,開(kāi)發(fā)者可以調用該命令來(lái)得到當前信道的信號強度值,并通過(guò)對該值的解析來(lái)判定當前信道是空閑還是繁忙。另外,CC2420在接收到數據包時(shí),可以自動(dòng)在數據包的倒數第二個(gè)字節里填充當前接收數據包時(shí)的RSSI值。這種特性對于信號強度閾值的更新維護十分有用。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>