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