nRF24L01是挪威Nordic公司推出的一款無線收發(fā)芯片, 它具有高速、低功耗、低成本的特點(diǎn),可以為桌面電腦產(chǎn)品及智能設(shè)備的應(yīng)用提供更好的方案;同時芯片上配有MultiCeiver 邏輯,可支持同時接收 6 路無線設(shè)備數(shù)據(jù),因此它還支持無線組網(wǎng)和多媒體如VoIP等的應(yīng)用。
nRF24L01工作于全球開放的ISM( 工業(yè)、醫(yī)學(xué)和科學(xué)) 2.4GHz 頻段,其優(yōu)點(diǎn)是使用者無需申請?jiān)S可證,有利于方便使用和降低成本,同時可以避免低頻段信號、各類電弧和家用電器的干擾,然而這一頻段也云集了藍(lán)牙、ZigBee、Wi- Fi、WLAN 等標(biāo)準(zhǔn)協(xié)議的應(yīng)用,因此如何解決其他同頻段設(shè)備的干擾是應(yīng)用nRF24L01時必須考慮的問題。
一、nRF24L01 簡介
1.nRF24L01 的內(nèi)部結(jié)構(gòu)
nRF24L01 的內(nèi)部結(jié)構(gòu)如圖 1 所示, 芯片上集成了頻率合成器、功率放大器 、 晶振調(diào)制解調(diào)器和EnhancedShockBurstTM, 發(fā)射功率、工作頻率等工作參數(shù)可以通過SPI 接口用軟件來設(shè)置。它工作于全球開放的 2.4GHz 頻段,有125 個頻道, 可以滿足多頻和跳頻的需要。它的電流消耗很小,6dBm 輸出功率時的峰值電流為9.0mA,在接收模式下的電流為 12.3mA, 內(nèi)置掉電和空閑工作模式使省電易于實(shí)現(xiàn)。
2.nRF24L01的工作原理
nRF24L01 內(nèi)置 Enhanced ShockBurstTM, 在通信時使用雙向鏈接, 當(dāng)接受方收到數(shù)據(jù)包時, 會給發(fā)送方回發(fā)確認(rèn),這樣就可以檢測到丟失的數(shù)據(jù)包,以便發(fā)送方重發(fā)。其目的是讓 nRF24L01 來處理數(shù)據(jù)發(fā)送和丟失數(shù)據(jù)包時的重發(fā),而不需要外 接微控制器的介入,這樣可以極大地降低系統(tǒng)功耗和提高系統(tǒng)的工作效率。
接收模式:
設(shè)置為接收模式的 nRF24L01 可以從 6 個數(shù)據(jù)通道接收數(shù)據(jù) ( 見圖 2),每個數(shù)據(jù)通道都有唯一的地址,同時共用一個頻道,意味著 6 個設(shè)置為發(fā)送模式的 nRF24L01可以同時與一個設(shè)置為接收的 nRF24L01 通信, 接收方通過數(shù)據(jù)通道地址來區(qū)別不同的發(fā)送方,并且在收到一個數(shù)據(jù)包時會向發(fā)送方回發(fā)一個 ACK ( 自動應(yīng)答) 。
發(fā)送模式:
設(shè)置為發(fā)送模式的 nRF24L01,當(dāng)允許EnhancedShockBurstTM 時,在外接微控制器的控制下發(fā)送數(shù)據(jù)包后,將自動切換到接收模式等待接收方的應(yīng)答,如果沒有收到應(yīng)答,發(fā)送方將重發(fā)數(shù)據(jù)包直到收到應(yīng)答或發(fā)送次數(shù)已到達(dá)設(shè)置的最大發(fā)送次數(shù)。
在接收到數(shù)據(jù)包、發(fā)送成功或發(fā)送失敗時 ,nRF24L0都會產(chǎn)生相應(yīng)的中斷,以便微控制器進(jìn)行下一步的處理。
二、解決同頻段其他設(shè)備干擾的方案
由于 2.4GHz ISM 頻段是全球開放頻段,許多系統(tǒng)如WLAN、藍(lán)牙等都共用這一頻段,這就是說 nRF24L01 的工作環(huán)境也許會是一個干擾很多的環(huán)境,該設(shè)計(jì)往往在受控的實(shí)驗(yàn)室環(huán)境下工作得很好, 但在現(xiàn)場卻會由于受到其他工作在 2.4GHz 產(chǎn)品的影響而使性能顯著下降。因此在應(yīng)用nRF24L01 時如何避免其他設(shè)備的干擾是必須考慮的問題。
工作在2.4GHz頻段的無線設(shè)備的頻道使用情況主要分為兩種,一種是頻率分布相對穩(wěn)定的系統(tǒng)如W- LAN,另一種是跳頻系統(tǒng)如藍(lán)牙。
W- LAN采用 DSSS( 直接序列擴(kuò)頻),其每信道帶寬為 22MHz,故允許使用3個分布式信道而不會相互重疊,它將原信號“1” 或 “0”利用10個以上的 chips代表“1” 或 “0”,使得原來較高功率、較窄頻率變成具有較寬頻的低功率,因此W- LAN 對其他設(shè)備而言產(chǎn)生的是在某些頻率段相對穩(wěn)定的干擾。
藍(lán)牙技術(shù)采用FHSS( 跳頻擴(kuò)頻) 并將2.4GHz ISM 頻段劃分成79個1MHz 的信道。藍(lán)牙設(shè)備以偽隨機(jī)碼方式在這79個信道間每秒鐘跳1600 次,它同時接受兩端以特定型式的窄頻載波來傳送訊號。對于一個非特定的接收端,
隨著 CAD/ CAM 一體化技術(shù)和局域網(wǎng)技術(shù)的普及和應(yīng)用, 目前多數(shù)企業(yè)在新產(chǎn)品設(shè)計(jì)開發(fā)、工藝過程編制和數(shù)控機(jī)床程序編制的效率和質(zhì)量上都得到了明顯的提高, 企業(yè)的技術(shù)管理與生產(chǎn)管理已經(jīng)進(jìn)入了網(wǎng)絡(luò)化時代。而與 CAD/ CAM 密切相關(guān)的數(shù)控機(jī)床管理仍然處于原始狀態(tài), 成為制約企業(yè)現(xiàn)代化管理水平提高的瓶頸。特別是教學(xué)單位受到資金的限制, 數(shù)控機(jī)床設(shè)備不到位又要完成教學(xué)任務(wù), 面臨的困難可想而知。而數(shù)控機(jī)床聯(lián)網(wǎng)技術(shù)的研究與開發(fā)使資源共享, 工教結(jié)合, 是培養(yǎng)數(shù)控人才的捷徑。
數(shù)控機(jī)床聯(lián)網(wǎng)后,依賴于專用網(wǎng)絡(luò)管理軟件的功能,所有編制好的程序均放在對應(yīng)于每臺機(jī)床的目錄下,每個程序按照零件圖號編制名字,不會發(fā)生重名現(xiàn)象,操作者隨時通過指令了解網(wǎng)絡(luò)上的程序并下載使用。
三、系統(tǒng)的總體構(gòu)想
硬件平臺
本次選用比較普及 PC 奔騰 IV 作為核心服務(wù)器開發(fā),客戶機(jī)可用奔騰II機(jī)型, 但數(shù)控機(jī)床編程 Mastercam 需高檔機(jī)型。通訊電纜用超五類雙絞線及100兆交換機(jī),電腦和機(jī)床部分暫用簡單的RS232串行接口。硬件組成如圖1
FHSS所產(chǎn)生的跳動訊號對它而言,只能算是脈沖噪聲而已。nRF24L01的信帶寬同樣是1MHz,它將整個2.4GHzSM頻段分為125個有效信道。
頻率穩(wěn)定的系統(tǒng)在一定的頻段工作, 而跳頻系統(tǒng)在整個 2.4GHz 頻段范圍都會產(chǎn)生影響。在 2.4GHz 頻段工作的系統(tǒng)其數(shù)據(jù)發(fā)送都是基于數(shù)據(jù)包的。如果跳頻系統(tǒng)在某個時刻占用了某頻道, 那它在其他時間占用整個頻段的任何其他頻道的概率是相同的, 也就是說發(fā)生沖突的概率是相同的。因此 nRF24L01 與跳頻系統(tǒng)的工作發(fā)生沖突時沒有必要改變自己的工作頻道。而干擾來自頻率穩(wěn)定的系統(tǒng)時, 需要跳轉(zhuǎn)到另一個與該系統(tǒng)發(fā)生沖突概率較小的頻道。因此改變信道避免沖突的原則是當(dāng)受到持續(xù)的干擾時才跳轉(zhuǎn)到另一個信道。
基于以上的分析, 可以歸納出如下的跳頻規(guī)則:
1. 監(jiān)測到當(dāng)前信道的持續(xù)干擾。
2. 跳轉(zhuǎn)到受到自同一干擾源的干擾概率較小的信道。
3. 如果干擾來自其他的跳頻系統(tǒng), 則不進(jìn)行跳頻。
nRF24L01 集成了載波監(jiān)測功能, 可以準(zhǔn)確地監(jiān)測當(dāng)前工作信道是否有干擾,保證了在W- LAN 環(huán)境下可靠地工作。其SPI接口與外接微控制器的通信速率可達(dá)10Mbps, 具有高速度和獨(dú)特的切換時間,減少了與跳頻系統(tǒng)如藍(lán)牙出現(xiàn)時碰撞的可能。
對于nRF24L01的通信,可以采取如下方案:
數(shù)據(jù)發(fā)送方發(fā)送數(shù)據(jù)并等待接收方的 ACK, 如果沒有收到 ACK, 表示發(fā)送失敗 則在相同信道上重發(fā)兩次。由于藍(lán)牙系統(tǒng)在每個信道上停留的時間為650us,而nRF24L01一次動作( 即發(fā)送數(shù)據(jù)并等待接收對方 ACK 的時間)大約為 1ms,因此如果第一次發(fā)送失敗是由于與藍(lán)牙系統(tǒng)發(fā)生沖突,那么第二次發(fā)送一般可以順利到達(dá)接收方。
如果三次發(fā)送均失敗, 說明受到的不是脈沖干擾,而是穩(wěn)定的干擾,這時 nRF24L01需要跳轉(zhuǎn)到另一個信道。事先將所有想要使用的信道做成列表, 在需要跳頻時查表即可。信道列表一般不采用 1, 2, 3, 4……的順序安排, 因?yàn)槿绻粋€信道受到干擾, 那么與之相鄰的信道很有可能也受到干擾, 考慮到 W- LAN 的信道帶寬為 22MHz, 可以用公式 i+j×22 ( j=1, 2, 3, 4, 5; i=1, 2, 3) 的順序安排信道列表。
雖然藍(lán)牙、W- LAN 都是標(biāo)準(zhǔn)協(xié)議, 但是協(xié)議復(fù)雜、開發(fā)難度大、周期長等都是其軟肋。nRF24L01 采用非標(biāo)準(zhǔn)協(xié)議, 與藍(lán)牙、W- LAN 等標(biāo)準(zhǔn)協(xié)議相比具有價格較低、低功耗、易于開發(fā)等優(yōu)勢, 為一些只需要簡單無線連接的領(lǐng)域提供一種可供參考的解決方案, 其應(yīng)用領(lǐng)域和應(yīng)用前景十分廣泛
評論