基于RF芯片的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備設(shè)計(jì)
關(guān)鍵詞:無線傳感器網(wǎng)絡(luò);CC2510;射頻器件;MAC層協(xié)議
1 引言
隨著微電子技術(shù)、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和通信技術(shù)的發(fā)展,無線傳感器網(wǎng)絡(luò)日漸成為互聯(lián)網(wǎng)領(lǐng)域研究的熱點(diǎn)之一。無線傳感器網(wǎng)絡(luò)具有“無處不在”和節(jié)點(diǎn)數(shù)量龐大等特點(diǎn),適用于軍事、智能家居、環(huán)境監(jiān)測(cè)和預(yù)報(bào)、醫(yī)療護(hù)理、建筑物狀態(tài)監(jiān)控、工業(yè)控制等領(lǐng)域。無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備是構(gòu)成無線傳感器網(wǎng)絡(luò)的基礎(chǔ),基本組成和功能包括如下幾個(gè)單元:傳感單元(由傳感器和模數(shù)轉(zhuǎn)換功能模塊組成)、處理單元(由嵌入式系統(tǒng)構(gòu)成,包括CPU、存儲(chǔ)器等)、通信單元(由無線通信模塊組成)和電源單元,如圖l所示。此外,可選擇的其他功能單元包括定位系統(tǒng)、移動(dòng)系統(tǒng)及電源自供電系統(tǒng)等。通常,此類設(shè)備具有微型、低功耗、低成本、可擴(kuò)展性、高安全性等特點(diǎn)。
2 CC2510的功能及內(nèi)部結(jié)構(gòu)
2.1 功能
CC2510是Chipcon公司于2005年11月推出的一款2.4 GHz射頻收發(fā)器。該器件成本低,包含UHF RF收發(fā)器和高性能低功耗8051微控制器,集成了32 KB在系統(tǒng)可編程Flash和外設(shè)內(nèi)嵌4 KBSHAM。CC2510功能強(qiáng)大,擁有128位AES安全協(xié)處理器和DMA功能;系統(tǒng)時(shí)鐘是16MHz片內(nèi)RC振蕩器或26 MHz晶體振蕩器,實(shí)時(shí)時(shí)鐘采用低功耗32.768 kHz晶體振蕩器或內(nèi)部34 kHz RC振蕩器;具有高靈敏度(10 kb/s下為-100 dBm)和較高的接收靈敏度和阻塞功能,支持2-FSK,GFSK和MSK等調(diào)制方式;支持?jǐn)?shù)字RSSI/LQI,工作電壓2.0 V~3.6V;具有21個(gè)通用I/O接口、兩個(gè)UART/SPI接口和可編程看門狗計(jì)時(shí)器,片內(nèi)有1個(gè)16位定時(shí)器和3個(gè)8位定時(shí)器,真正的隨機(jī)號(hào)碼發(fā)生器,支持硬件調(diào)試,有兩個(gè)數(shù)據(jù)指針。CC2510采用Chipcon公司的Smart RF 04技術(shù),以0.18μm CMOS工藝制成,只需極少外部元件就可以構(gòu)成性能穩(wěn)定且功耗極低的片上系統(tǒng)(SoC)。CC2510的選擇性和敏感性指數(shù)優(yōu)越,可確保短距離通信的有效性和可靠性。除上述特點(diǎn)外,該器件還包含8路8~14位ADC具備4種靈活的降功耗模式,從休眠狀態(tài)到工作狀態(tài)的過渡時(shí)間非常快,內(nèi)嵌溫度傳感器,非常適合作為無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備。
2.2 CC2510內(nèi)部結(jié)構(gòu)
CC2510器件的內(nèi)部結(jié)構(gòu)如圖2所示。其中CC2510的處理器采用兼容8051單片機(jī)內(nèi)核的結(jié)構(gòu)及指令系統(tǒng)。該內(nèi)核通過3種不同的內(nèi)存訪問總線(SFR,DATA和CODE/XDATA)對(duì)內(nèi)存進(jìn)行訪問控制。SFR總線負(fù)責(zé)將所有的外設(shè)同內(nèi)存仲裁相連接,還負(fù)責(zé)CPU與射頻寄存器之間的交互。此外,在系統(tǒng)中還存在有一個(gè)處于核心地位的設(shè)備――內(nèi)存仲裁。內(nèi)存仲裁通過SFR總線將CPU、DMA模塊、存儲(chǔ)器以及其他外設(shè)連接在一起。內(nèi)存仲裁通過4個(gè)存儲(chǔ)器指針選擇接入SRAM、Flash存儲(chǔ)器或者SVR寄存器。系統(tǒng)通過中斷控制器維護(hù)4種不同優(yōu)先級(jí)的18個(gè)中斷源,這些中斷源被分成6組,每組關(guān)聯(lián)一種中斷優(yōu)先級(jí)。為降低功耗,系統(tǒng)可支持4種工作模式。表1給出了這4種工作模式的特點(diǎn)和狀態(tài)。
CC2510包含有8路8~14位ADC,支持單端輸入和差分輸入兩種模式,能夠采用可選正向參考電壓。ADC中還包含了一個(gè)溫度傳感器通道,可以直接連接片內(nèi)集成的溫度傳感器。ADC的輸入端口復(fù)用通用I/O端口的PO部分作為AIN0-AIN7端口。圖3給出了ADC模塊的框圖。CC2510的ADC轉(zhuǎn)換結(jié)果一般為13位,這些結(jié)果通常存放于ADC數(shù)據(jù)寄存器ADCH及ADCL中。ADC轉(zhuǎn)換結(jié)束能夠觸發(fā)自己中斷。即便是由于在ADCH與ADCL之間讀取而造成ADC無法訪問數(shù)據(jù)寄存器,并因此丟失了轉(zhuǎn)換數(shù)據(jù),中斷仍會(huì)被觸發(fā)。
天線接收的射頻信號(hào)經(jīng)過低噪聲放大器和I/Q下變頻處理后,中頻信號(hào)只有2 MHz,此混合I/Q信號(hào)經(jīng)過濾波、放大、AD變換、自動(dòng)增益控制、數(shù)字解調(diào)和解擴(kuò),最終恢復(fù)出傳輸?shù)恼_數(shù)據(jù)。發(fā)射機(jī)部分基于直接上變頻。CC2510的發(fā)射部分基于RF頻率的直接合成。頻率合成器包括一個(gè)完整的片上LC壓控振蕩器和一個(gè)90的相移器,產(chǎn)生接收模式時(shí)下變頻器所需的I和Q路信號(hào)。26 MHz晶體振蕩器產(chǎn)生的頻率作為合成器、AD時(shí)鐘和數(shù)字部分時(shí)鐘的參考頻率。系統(tǒng)使用SFR(特殊功能寄存器)寄存器作為接口為來自CPU的數(shù)據(jù)進(jìn)行緩沖,寄存器的配置和狀態(tài)可以從寄存器映射存儲(chǔ)器XDATA中查詢。數(shù)字基帶信號(hào)支持通道配置,包處理和數(shù)據(jù)緩沖。片上的電壓校正器產(chǎn)生一個(gè)校正過的1.8 V供電電壓。
3 無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備設(shè)計(jì)
3.1 硬件設(shè)置
針對(duì)無線傳感器網(wǎng)絡(luò)的特點(diǎn),依據(jù)CC2510的內(nèi)部結(jié)構(gòu),針對(duì)器件內(nèi)部已嵌入的溫度傳感器,添加其他傳感器件,可以設(shè)計(jì)基于多傳感器的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備。圖4給出了基于片內(nèi)溫度傳感器和光敏器件的溫度-光強(qiáng)傳感器的節(jié)點(diǎn)設(shè)備電路圖。其中Pa為光敏電阻,C21為去耦電容。器件本振信號(hào)可由外部有源晶體提供,也可由內(nèi)部電路提供。由內(nèi)部電路提供時(shí)需外加晶體振蕩器和負(fù)載電容,電容的取值決定于晶體的頻率及輸入容抗等參數(shù)。該設(shè)備可采用3.0V電池供電。
射頻輸入/輸出匹配電路主要用來匹配器件的輸入/輸出阻抗,使其輸入/輸出阻抗為50 Ω。發(fā)射部分經(jīng)過前端π型匹配網(wǎng)絡(luò)向50 Ω垂直天線饋電,如果不希望采用上述匹配網(wǎng)絡(luò),可以采用T型PCB天線直接與器件相連。
3.2 軟件設(shè)置
軟件設(shè)置主要包括三個(gè)方面:主機(jī)調(diào)度函數(shù)、數(shù)據(jù)采集與處理方式、射頻數(shù)據(jù)收發(fā)處理函數(shù)。對(duì)于應(yīng)用多傳感器的傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備,主機(jī)調(diào)度函數(shù)可以采用有競(jìng)爭(zhēng)的中斷方式進(jìn)行全局調(diào)度。數(shù)據(jù)采集與處理方式依據(jù)硬件自身特點(diǎn)實(shí)現(xiàn)。下面通過描述性語(yǔ)言給出主機(jī)調(diào)度函數(shù)的實(shí)現(xiàn)思想:
CC2510內(nèi)置一個(gè)可以在不同操作狀態(tài)(模式)之間轉(zhuǎn)換的狀態(tài)機(jī)。應(yīng)用該狀態(tài)機(jī),可以通過使用寫入指令來實(shí)現(xiàn)狀態(tài)之間的轉(zhuǎn)換。圖5給出了射頻控制的狀態(tài)轉(zhuǎn)換圖。這里借用MARCSTATE狀態(tài)寄存器中讀出的狀態(tài)字作為各個(gè)狀態(tài)的標(biāo)識(shí)。
在節(jié)點(diǎn)工作過程中,設(shè)定兩個(gè)激活狀態(tài):接收(RX)和發(fā)送(TX),通過CPU向RFST寄存器中寫入SRX和STX指令來實(shí)現(xiàn)狀態(tài)的遷移。當(dāng)RX被激活時(shí),器件將處于接收狀態(tài),直至RX終止定時(shí)器超時(shí)或者成功地收到一個(gè)包。如果射頻控制器當(dāng)前位于發(fā)送狀態(tài),并且SRX寫入,當(dāng)前的發(fā)送狀態(tài)被中止,開始向RX過渡。如果射頻控制器當(dāng)前位于RX狀態(tài),當(dāng)STX或者SFSTX0N命令發(fā)布時(shí),如果是暢通的信道就進(jìn)入TX狀態(tài)。如果信道不暢通,器件仍將處于RX狀態(tài)。在任何時(shí)候,SIDLF命令總是能夠迫使射頻控制器進(jìn)入空閑狀態(tài)。
注意:由于使用了PQT、CS、最大同步字長(zhǎng)和同步字評(píng)價(jià)模式,可以有效減少探測(cè)到錯(cuò)誤同步字的可能性。在成功地接收到數(shù)據(jù)包以后,射頻控制器將根據(jù)系統(tǒng)設(shè)置進(jìn)入如下狀態(tài):
IDLE:空閑;
FSTXON:在TX頻率時(shí),頻率合成器打開并且已經(jīng)準(zhǔn)備好。用STX激活TX;
TX:開始發(fā)送開端;
RX:開始搜尋一個(gè)新的包。
類似地,當(dāng)TX被激活時(shí),器件一直處于TX狀態(tài),直到當(dāng)前的包被成功地發(fā)送出。然后狀態(tài)會(huì)根據(jù)MCSMl.TXOFF_MODE設(shè)置提示的狀態(tài)改變。有關(guān)狀態(tài)轉(zhuǎn)換條件需要根據(jù)實(shí)際應(yīng)用場(chǎng)合人為地選擇設(shè)定,在此不再贅述。
4 配置傳感器網(wǎng)絡(luò)節(jié)點(diǎn)間的通信
根據(jù)CC2510的特點(diǎn),可以人為設(shè)定MAC層協(xié)議以完成節(jié)點(diǎn)間通信,從而構(gòu)成星型或者網(wǎng)型(MESH)無線傳感器網(wǎng)絡(luò)。本文設(shè)計(jì)了一種基于載波偵聽、沖突避免機(jī)制的可變包長(zhǎng)的MAC層協(xié)議――MAC_S,采用8 bit地址標(biāo)識(shí)各個(gè)無線傳感器節(jié)點(diǎn),該協(xié)議支持基于RSSI的LQI鏈路質(zhì)量描述、物理層采用曼徹斯特碼編碼的2-FSK調(diào)制方式。在這里,可以利用CC2510中通過軟件設(shè)定讓信號(hào)通過一個(gè)高斯濾波器,從而產(chǎn)生一個(gè)GFSK調(diào)制信號(hào)。限于篇幅有關(guān)這一MAC層協(xié)議的細(xì)節(jié)將另撰文論述,這里僅簡(jiǎn)單介紹包格式及其處理過程。圖6給出了上述MAC_S協(xié)議的包格式。
其中,4字節(jié)引導(dǎo)字用于標(biāo)識(shí)報(bào)文開端,同步字用于提取同步信息,包長(zhǎng)度通常包括自身在內(nèi)的后續(xù)地址和載荷報(bào)文長(zhǎng)度,校驗(yàn)域通過CRC-16算法進(jìn)行校驗(yàn)。在發(fā)送模式下,包處理器過程如下:發(fā)送的數(shù)據(jù)幀被送入RAM中的緩存區(qū)進(jìn)行相應(yīng)的幀打包操作,取發(fā)送凈荷依據(jù)轉(zhuǎn)發(fā)表填入地址并計(jì)算包長(zhǎng)度,將一定數(shù)量的可編程的開端字節(jié),MAC_S協(xié)議用4個(gè)開端字節(jié),然后添加兩字節(jié)的同步字,在數(shù)字據(jù)中計(jì)算和加入CRC校驗(yàn)和并發(fā)送出去。在接收模式時(shí),包處理支持將會(huì)分解數(shù)據(jù)包:首先進(jìn)行開端檢測(cè)、提取RSSI信息,然后進(jìn)行同步字檢測(cè),接著檢測(cè)地址、進(jìn)行地址長(zhǎng)度匹配并計(jì)算和檢查CRC。最后將數(shù)據(jù)凈荷提交上層進(jìn)行處理,從而完成一次發(fā)送和接收交互。
5 結(jié)束語(yǔ)
CC2510是一款高集成度的工業(yè)用射頻收發(fā)器,其MAC層和PHY層可以適用于多種協(xié)議標(biāo)準(zhǔn),工作于2.4 GHz工業(yè)、科研和醫(yī)療頻段。通過添加簡(jiǎn)單的外設(shè),可構(gòu)成功能強(qiáng)大的傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備。Chipcon公司在推出芯片的同時(shí),還提供該器件的系列評(píng)估軟件-Smart RFStusio。通過該軟件設(shè)置可以對(duì)器件進(jìn)行性能和功能測(cè)試,方便用戶進(jìn)行二次開發(fā)。
評(píng)論