• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      利用NRF24L01 實現(xiàn)設(shè)備的網(wǎng)格狀無線互聯(lián)

      2020-06-02 09:18:02鄭蓓林趙克安
      化工自動化及儀表 2020年2期
      關(guān)鍵詞:末位字節(jié)數(shù)據(jù)包

      劉 軍 鄭蓓林 黃 萍 趙克安

      (1.浙江中控自動化儀表有限公司;2.杭州職業(yè)技術(shù)學(xué)院)

      在物聯(lián)網(wǎng)時代, 各個設(shè)備之間實現(xiàn)互聯(lián)、相互通信已經(jīng)成為一種必然趨勢。 目前市場上的物聯(lián)技術(shù),遠(yuǎn)距離的可以采用運(yùn)營商布設(shè)的NB-IoT網(wǎng)絡(luò),中距離的可以采用Lora 無線方案,短距離的可以采用WiFi、藍(lán)牙及RFID 等互聯(lián)方案。 筆者討論一種超低成本、簡單便捷,在場區(qū)范圍內(nèi)的無線物聯(lián)方案。

      1 NRF24L01 簡介

      NRF24L01 是一款工作在2.4~2.5GHz 世界通用ISM 頻段的單片無線收發(fā)器芯片,3.3V 供電。該芯片可通過SPI 接口配置126 個1Mbit/s 速率的頻點(diǎn),或者63 個2Mbit/s 速率的頻點(diǎn),SPI 的最大速率可達(dá)10Mbit/s。 最大發(fā)射功率0dB 時供電電流30mA,最大通信距離為可視100m,穩(wěn)定收發(fā)距離10m。 加上功放芯片,最大發(fā)射功率可達(dá)20dB,此時供電電流250mA,最大通信距離為可視1 000m,穩(wěn)定收發(fā)距離100m。芯片可設(shè)6 個物理地址,可提供6 個通道單獨(dú)通信。 每個通道具有CRC 校驗功能、 自動應(yīng)答和自動重發(fā)功能。自動延遲重發(fā)的時間與次數(shù)可自由配置。 每幀最大為32 字節(jié),擁有3 級緩存,可以通過SPI 接口查詢寄存器狀態(tài)后接收數(shù)據(jù)。

      2 組網(wǎng)方案

      NRF24L01 的6 個通道的物理地址都有5 個字節(jié)的長度,其中前兩個自由分配,其余4 個地址的前4 個字節(jié)必須與第2 個地址的前4 個字節(jié)相同。 這樣,把第1 個通道地址留作他用,第2個通道地址作為本網(wǎng)格的廣播接收地址, 其前4個字節(jié)也可以作為本網(wǎng)格的網(wǎng)格號,最后一個字節(jié)定為255 (0xFF)。 假如網(wǎng)格號為【0xC2、0xC2、0xC2、0xC2】, 則第2 個通道物理地址為【0xC2、0xC2、0xC2、0xC2、0xFF】。第3~6 通道的物理地址分別設(shè)為 【0xC2、0xC2、0xC2、0xC2、0x00】【0xC2、0xC2、0xC2、0xC2、0x01】【0xC2、0xC2、0xC2、0xC2、0x02】【0xC2、0xC2、0xC2、0xC2、0x03】。 除了廣播地址,每個節(jié)點(diǎn)可以分到4 個不同的地址,這樣依次按順序分配,整個網(wǎng)格可以有63 個節(jié)點(diǎn)。 規(guī)定地址末位為0、4、8、……,邏輯方向向左;地址末位為1、5、9、……,邏輯方向向下;地址末位為2、6、10、……,邏輯方向向右;地址末位為3、7、11、……,邏輯方向向上,形成如圖1 所示的網(wǎng)格網(wǎng)絡(luò)。 網(wǎng)格外圍的32 個地址為無效地址,規(guī)定圖1 所示相鄰的地址相互通信。 要實現(xiàn)網(wǎng)格內(nèi)節(jié)點(diǎn)能相互通信,需把所有節(jié)點(diǎn)設(shè)在同一個頻點(diǎn)上。

      3 路由設(shè)計

      為了避免網(wǎng)格內(nèi)節(jié)點(diǎn)無線信號的相互干擾,首先關(guān)閉自動應(yīng)答與自動重發(fā)功能,以令牌的方式進(jìn)行數(shù)據(jù)傳輸[1]。 設(shè)定如下路由規(guī)則:每個節(jié)點(diǎn)按“左-下-右-上”的順序嘗試連接,傳遞發(fā)送的數(shù)據(jù)包;邊緣節(jié)點(diǎn)無效地址的方向不進(jìn)行連接嘗試;本節(jié)點(diǎn)接收或發(fā)出的通道不再收發(fā)同一數(shù)據(jù)包,最后發(fā)送通道只接收盲端退回的同一數(shù)據(jù)包; 已被遍歷的節(jié)點(diǎn)拒絕接收非退回的數(shù)據(jù)包。例如圖1 中的地址為31 的通道所在節(jié)點(diǎn)發(fā)起訪問,發(fā)送數(shù)據(jù)到地址為63 的通道,按上述路由規(guī)則,其路由過程如圖2 所示。 遍歷所有節(jié)點(diǎn),最終到達(dá)終點(diǎn)。 如果終點(diǎn)返回應(yīng)答數(shù)據(jù),則按同樣的路由規(guī)則由終點(diǎn)發(fā)往起點(diǎn)。

      圖1 網(wǎng)格邏輯設(shè)計

      圖2 網(wǎng)格路由

      在實際工程中,各節(jié)點(diǎn)不會按圖1 所示順序安裝,但邏輯上還是可以按圖1 的順序來進(jìn)行路由,但可能存在路由被撕裂的情況。 按筆者的路由規(guī)則,只要不被完全撕裂,形成孤島,還是可以遍歷到每一個節(jié)點(diǎn)。 圖3 所示為被撕裂情況下的路由過程。 如果終點(diǎn)是圖中的A點(diǎn)或B點(diǎn),只要數(shù)據(jù)包被退回到C點(diǎn)時就可以遍歷到A點(diǎn)或B點(diǎn)了。

      圖3 被撕裂情況下的路由

      本網(wǎng)格型網(wǎng)絡(luò)總連接數(shù)63×4-32=220 個。 最壞情況,數(shù)據(jù)包被退回兩次,一次發(fā)送一次退回,再次發(fā)送與退回, 連接次數(shù)220×4=880。NRF24L01 進(jìn)入發(fā)射狀態(tài)需要10μs,切換回接收狀態(tài)需要130μs,共140μs。 設(shè)置連接超時1ms,則最壞遍歷時間為(1+0.14)×880=1003.2ms,故本方案具有較高的實用性。

      4 網(wǎng)格路由的優(yōu)化與拓展

      上述路由規(guī)則可做進(jìn)一步簡化,發(fā)起的節(jié)點(diǎn)可以嘗試直接發(fā)目標(biāo)節(jié)點(diǎn),如果目標(biāo)節(jié)點(diǎn)收到數(shù)據(jù)包, 則回復(fù)一個應(yīng)答包就立即可以完成通信。如果沒有得到回復(fù),則可以嘗試連接目的節(jié)點(diǎn)的4 個邏輯方向的附近節(jié)點(diǎn), 通過這4 個節(jié)點(diǎn)進(jìn)行直接傳遞,快速完成數(shù)據(jù)包的傳遞。 如果4 個附近節(jié)點(diǎn)不能連接再進(jìn)行全網(wǎng)格的遍歷。

      在實際使用過程中63 個節(jié)點(diǎn)遠(yuǎn)遠(yuǎn)不夠使用,需要多個網(wǎng)格。 在一個網(wǎng)格中可以任選一個節(jié)點(diǎn)與其他網(wǎng)格的一個節(jié)點(diǎn)作為網(wǎng)關(guān),實現(xiàn)多層網(wǎng)格的互聯(lián),形成立體空間的節(jié)點(diǎn)互聯(lián)。

      5 結(jié)束語

      利用NRF24L01 實現(xiàn)設(shè)備的網(wǎng)格狀無線互聯(lián),在工廠、樓宇及大型建筑等場合有較多的需求,不管是新建信息化工程還是更新?lián)Q代,都十分便利。 在此基礎(chǔ)上再設(shè)計一套合適的應(yīng)用層協(xié)議,可以方便地實現(xiàn)節(jié)點(diǎn)設(shè)備的物聯(lián),提高整個系統(tǒng)的智能化、信息化水平。

      猜你喜歡
      末位字節(jié)數(shù)據(jù)包
      數(shù) 值 進(jìn) 舍 規(guī) 則
      No.8 字節(jié)跳動將推出獨(dú)立出口電商APP
      No.10 “字節(jié)跳動手機(jī)”要來了?
      SmartSniff
      簡談MC7字節(jié)碼
      末位對齊與數(shù)位對齊
      神秘的冪的逆運(yùn)算
      有趣的數(shù)89
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實現(xiàn)
      視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
      遂宁市| 玛多县| 大新县| 新竹市| 文成县| 潼关县| 东山县| 海林市| 天长市| 托里县| 富平县| 黄冈市| 昌宁县| 南皮县| 酉阳| 义马市| 房产| 建水县| 佛坪县| 丹东市| 福贡县| 腾冲县| 农安县| 永宁县| 桂东县| 上饶市| 瑞昌市| 湘潭县| 永嘉县| 化州市| 东台市| 仪征市| 贺州市| 铅山县| 福建省| 名山县| 芦山县| 耒阳市| 治多县| 英吉沙县| 阜新市|