新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > 基于MCU和nRF905的低功耗遠距離無線傳輸系統(tǒng)

基于MCU和nRF905的低功耗遠距離無線傳輸系統(tǒng)

作者: 時間:2010-12-09 來源:網絡 收藏

接收數據時, 先在nRF905的待機狀態(tài)中寫好射頻配置寄存器中的接收地址,然后將nRF905置于接收模式(PWR_UP和TRX_CE置高、TX_EN置低),nRF905就會自動接收空中的載波。當收到有效數據(地址匹配且校驗正確)時,DR引腳會自動置高, 在檢測到這個信號后,可以將nRF905置為待機模式,然后通過SPI總線從接收數據寄存器中讀出有效數據。nRF905接收數據的流程如圖3所示。

本文引用地址:http://www.butianyuan.cn/article/156893.htm

3.JPG

3.3 點對點傳輸距離

傳輸距離主要由傳播損耗、工作頻率、外部損耗等因素決定。而傳播損耗是非常復雜的問題,涉及電波傳播機理、地形地物影響、載波工作頻段和天線指向等很多因素。這里給出自由空間傳播時的無線通信距離計算公式:

20lgd[km]=Los[dB]-32.44-20lgf[MHz]           (1)

式中Los為傳播損耗,f為工作頻率,d為通信距離[4]。nRF905的最大發(fā)射功率為10dBm,接收靈敏度為-100dBm,假定由大氣、阻擋物、多徑等造成的損耗為25dB,可以計算得出通信距離d=0.98km,這是理想狀況下的計算。實測結果表明,在采用高增益天線時,基本可以達到800 米以上的傳輸距離;使用PCB天線時距離有所下降,但也可達到300米左右。

4 通信協(xié)議設計

4.1 MAC協(xié)議

本系統(tǒng)采用了一個簡化的點對多點通訊協(xié)議,主要分為三層。第一層為物理層,由nRF905模塊硬件實現;第二層為數據鏈路層,提供可靠的無線數據傳輸,每一個數據包都包括具體數據和一些必要的控制信息;第三層為應用層,調用數據鏈接層完成具體的應用邏輯,包括數據收集、數據查詢等。

整個系統(tǒng)硬件可分為兩部分,分別定義為基站模塊和節(jié)點模塊。節(jié)點模塊應用層的功能是使數據與無線通訊相結合。對于不同的應用,可能有不同的數據采集方法。應用層接收數據鏈路層發(fā)來的命令,完成對數據的采集,并將數據打包發(fā)給數據鏈路層?;灸K的應用層負責與中心控制器的鏈接。將中心控制器發(fā)來的數據校驗處理后轉發(fā)給數據鏈路層,將數據鏈路層發(fā)來的數據打包處理后發(fā)給中心控制器。因為協(xié)議是分層的,相鄰層之間的聯系只是調用發(fā)送接收函數,因此實現了各層的獨立,更換被采集的儀表或更換無線傳輸模塊所做的改動都不會影響其他層,從而提高了系統(tǒng)的靈活性。

基于MCU和nRF905的低功耗遠距離無線傳輸系統(tǒng)

   每個數據幀包括2B的幀頭、1B的幀類型、6B的本地地址和目的地址、1B的幀長度、NB的數據、16位CRC校驗和2B的幀尾。本系統(tǒng)針對較小數據量 的應用設計,每個數據包的有效數據長度N一般小于32B,每個節(jié)點每一次需要傳送的數據都可以通過一個數據包發(fā)送完成。數據幀的類型包括采集命令、正確接 收確認、重發(fā)請求、異常信號等,用兩個字節(jié)來標示以便接收方分類處理。在N個字節(jié)的數據之后是16位CRC校驗。接收方同樣計算CRC后與校驗和比較,如 果CRC正確,則發(fā)送正確接收確認(ACK)。如果CRC不同,即為傳輸中出現錯誤,則給出出錯反饋要求發(fā)送方重新發(fā)送數據。數據的通信流程基本可概述為 DATA+ACK形式,即發(fā)送完DATA 等待ACK,接收到DATA 則發(fā)送ACK確認。

  由于射頻芯片的高靈敏度,即使在沒有進行數 據傳輸時,其數據輸出腳也會有雜波輸出,這些雜波會被的串口接收并處理。同時處于低功耗的考慮,在每個數據幀之前要先發(fā)幾個字節(jié)的同步碼以實現數據 同步和射頻喚醒。實踐證明四個字節(jié)的0xCC 就可以確保在有效數據幀到達前雙方通訊實現同步。為了準確區(qū)分噪聲與有效數據,分別加入了2B的幀頭(0xD792)和幀尾(0xC2D5),以確保有效 數據的確認。



關鍵詞: MCU

評論


相關推薦

技術專區(qū)

關閉