0引言
WSN(無線傳感器網(wǎng)絡(luò))是一種基于多跳的自組織網(wǎng)絡(luò),通過部署在監(jiān)測區(qū)域的大量微型傳感器節(jié)點,協(xié)作地感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中感知對象的信息,并發(fā)送給觀察者。WSN技術(shù)在美國商業(yè)周刊和MIT技術(shù)評論的預(yù)測未來技術(shù)發(fā)展報告中,分別被列為21世紀(jì)最有影響的21項技術(shù)和改變世界的10大技術(shù)之一。WSN在軍事、民用及工商業(yè)領(lǐng)域都具有廣闊的應(yīng)用前景。通過WSN,在軍事領(lǐng)域,可將戰(zhàn)場上獲取的信息及時迅速地傳回指揮部;在民用領(lǐng)域,可以應(yīng)用在智能家居、環(huán)境監(jiān)測、醫(yī)療保健災(zāi)害預(yù)測等;在工商業(yè)領(lǐng)域,應(yīng)用于工業(yè)自動化及空間探索等。WSN是當(dāng)今國內(nèi)外通信領(lǐng)域的一大研究熱點。
在WSN中,傳感器節(jié)點是網(wǎng)絡(luò)中最基本的單元,是構(gòu)成WSN的基礎(chǔ)。傳感器節(jié)點一般由傳感器單元、處理器單元、無線通信單元及電源供應(yīng)單元4部分組成。傳感器節(jié)點采用電池供電,節(jié)點能量有限,而且它的數(shù)據(jù)處理能力、存儲能力及節(jié)點間通信能力也有限,因此,傳感器節(jié)點設(shè)計的好壞將直接影響網(wǎng)絡(luò)的穩(wěn)定性。本文根據(jù)上述特點要求,采用CC1110芯片設(shè)計WSN節(jié)點,設(shè)計結(jié)果較好地滿足了特點要求。
1CC111O芯片簡介
CC1110芯片是美國TI公司的一款1 GHz以下頻帶的低功耗RF(射頻)SoC(片上系統(tǒng))解決方案。該芯片采用Chipcon公司Smart RF 04技術(shù),以0.18 μmCMOS工藝制成,只需極少外部元件就可以構(gòu)成性能穩(wěn)定且功耗極低的SoC。
CC1110芯片的工作電壓為2.0 V~3.6 V,具有豐富的外圍接口。片內(nèi)具有21個GPIO、2個USART接口和可編程看門狗計時器;擁有1個16位定時器、3個8位定時器以及隨機(jī)數(shù)發(fā)生器;嵌入式128位AES安全協(xié)處理器和強(qiáng)大的DMA功能等。在RF性能上,具有高靈敏度(在1.2 kBaud的速率下為-110 dBm)和較高的接收靈敏度和阻塞功能;支持2-FSK、GFSK和MSK等調(diào)制方式,頻率范圍為300。MHz~348 MHz、391 MHz~464 MHz及782 MHz~928 MHz;支持?jǐn)?shù)字RSSI/LQI;最大輸出功率可以達(dá)到10 dBm,最大數(shù)據(jù)率可以達(dá)到500 kBaud。
總之,CC1110具有高集成度與低功耗特性,在6 mm×6 mm的QLP封裝中,集成了CC1101 RF收發(fā)器、增強(qiáng)型8051微控制器、8/16/32 kB Flash存儲器及1/2/4 kB RAM等強(qiáng)大功能;擁有4種功耗管理模式,從低功耗狀態(tài)切換到工作狀態(tài)的過渡時間非???。因此,適用于報警與安全、自動讀表、工業(yè)監(jiān)控以及樓宇自動化等領(lǐng)域,能夠滿足WSN對電池使用壽命、尺寸、成本以及產(chǎn)品開發(fā)時間的要求。
2節(jié)點硬件設(shè)計
CC1110芯片只要極少數(shù)外圍元件就能夠搭建穩(wěn)定可靠且功耗低的SoC,大大簡化了RF電路的設(shè)計過程。設(shè)計的傳感器節(jié)點工作在433 MHz頻段。圖2是CC1110的參考設(shè)計,主要由CC1110芯片、射頻匹配電路和其他外圍元件組成。
RF匹配電路用來匹配芯片輸入、輸出阻抗,使其輸入、輸出阻抗為50 Ω,同時,為芯片內(nèi)部的PA(功率放大器)及LNA(低噪聲放大器)提供直流偏置。阻抗匹配電路采用BALUN電路,由L232、L242、C234和C241組成。CC1110的RF信號采用差分方式,在433 MHz頻段,其最佳差分阻抗為116+j41 Ω。
RF部分電路設(shè)計參考圖2的典型設(shè)計,但對電路進(jìn)行了少量修改,加入PA。根據(jù)實際應(yīng)用環(huán)境需要,節(jié)點可以工作在有PA、無PA兩種狀態(tài),比如Coordi-nator、Range Extender兩節(jié)點可以工作在加PA的方式下(一般采用市電供電),實現(xiàn)遠(yuǎn)距離傳輸。設(shè)計的傳感器節(jié)點實物圖如圖3所示。
節(jié)點的傳感器模塊采用瑞士SENSIRION公司的基于Sensirion技術(shù)的全校準(zhǔn)數(shù)字式溫濕度傳感器SHT71。在一個芯片上,集成了溫濕度傳感器、信號放大調(diào)整器、A/D轉(zhuǎn)換器和總線接口,可以提供-40℃~120℃范圍內(nèi)分辨率為14 bit的溫度測量以及0~100%范圍內(nèi)分辨率為12 bit的濕度測量。SHT71采用串行接口與CC1110相連,它的串行時鐘輸入線SCK和串行數(shù)據(jù)線DATA直接與CC1110的GPIO口線相連,電路連接示意圖如圖4所示。
3節(jié)點軟件設(shè)計
節(jié)點的軟件設(shè)計主要包括溫濕度采集部分和無線數(shù)據(jù)通信部分。
3.1溫濕度采集
溫濕度傳感器SHT71通過SCK與CC1110保持同步,通過DATA線收發(fā)通信協(xié)議命令和數(shù)據(jù)。其控制流如下:CC1110發(fā)送一組“啟動傳輸”時序進(jìn)行數(shù)據(jù)傳輸初始化,然后發(fā)送一組測量命令,釋放DATA線,等待SHT71下拉DATA線至低電平,表示測量結(jié)束,同時接收數(shù)據(jù)。CC1110收到測量值后,可根據(jù)如下公式計算出溫度T和相對濕度H:
式中:系數(shù)d1、d2、c1、c2和c3可以查閱相關(guān)手冊。
3.2無線數(shù)據(jù)通信
下面以節(jié)點間點對點通信為例,介紹無線傳感器節(jié)點間通信實現(xiàn)方法及通信過程。CC1110的MAC幀結(jié)構(gòu)簡單,剔除物理層的前導(dǎo)碼和同步字,只包含一個可選的長度字節(jié)n、一個可選的地址字節(jié),用戶數(shù)據(jù)和兩個可選的CRC字節(jié),如圖5所示。
為了方便通信過程中的數(shù)據(jù)處理,軟件上定義了如下數(shù)據(jù)收發(fā)處理結(jié)構(gòu):
其中,標(biāo)志位flags占1個字節(jié),用于表示當(dāng)前數(shù)據(jù)幀的類型。flags字節(jié)中的flags字節(jié)的第0位為1時,表示目標(biāo)節(jié)點在收到該數(shù)據(jù)幀后不要ACK;第1位為1時,表示目標(biāo)節(jié)點在收到該數(shù)據(jù)幀后要ACK;第2位為1時表示該幀是ACK幀;第3位為1時,表示該幀是超時重傳幀;最高位為1時,表示該幀是數(shù)據(jù)序列中的一幀。
接著闡述傳感器節(jié)點的通信射頻設(shè)置。節(jié)點工作時使用的晶振頻率為26 MHz,RF初始化時,設(shè)置寄存器FREQ2、FREQ1和FREQ0,配置RF的物理層最低信道的工作頻率;通過寄存器CHANNR的CHAN位域來設(shè)置通信信道;設(shè)置寄存器MDMCFG0的CHANSPC_M位域及寄存器MDMCFG1的CHANSPC_E位域來設(shè)置信道間隔。具體的載波頻率fc可以用下式表示:
式中:fref為26 MHz,最大信道間隔為405 kHz。當(dāng)然,可以通過TI公司的軟件SmartRF Studio來計算這些寄存器設(shè)置值。
節(jié)點軟件設(shè)計中通過DMA方式實現(xiàn)RF模塊與Memory間數(shù)據(jù)訪問,而不用CPU干預(yù)。DMA通道描述的數(shù)據(jù)結(jié)構(gòu)如下:
以發(fā)送為例,闡述DMA的配置過程及每個結(jié)構(gòu)體成員的意義。
在發(fā)送時,首先將數(shù)據(jù)的源地址SRCADDRH和SRCADDRL設(shè)為所要發(fā)送數(shù)據(jù)的起始地址,目標(biāo)地址DESTADDRH和DESTADDRL設(shè)為寄存器RFD的地址。
然后,在LENH和LENL位域設(shè)置所要發(fā)送數(shù)據(jù)的長度,VLEN位域設(shè)為0;將WORDSIZE位域設(shè)為0,讓DMA一次只傳輸1個字節(jié);將TMODE位域設(shè)置為0(SINGLE模式,DMA的數(shù)據(jù)傳送模式可分成4種),即表示數(shù)據(jù)傳送過程中,一次DMA觸發(fā)可進(jìn)行一個WORDSIZE的傳輸。將TRIG位域配置為RF觸發(fā)模式(DMA觸發(fā)信號有31種);CSRCINC位域和DES-TINC位域分別用于設(shè)置數(shù)據(jù)源地址和目標(biāo)地址的變化方式,可設(shè)為不變、增1、增2或減1。本例中數(shù)據(jù)源地址選擇增1,而數(shù)據(jù)目標(biāo)地址設(shè)置為不變(只有RFD寄存器);IRQMASK位域位用于設(shè)置在DMA數(shù)據(jù)傳輸完后是否發(fā)中斷信號,本例設(shè)為禁止DMA中斷;M8位域是按字節(jié)傳輸時的數(shù)據(jù)寬度,設(shè)為0表示8位傳輸,為1時表示只傳輸字節(jié)的低7位;將PRIORITY位域設(shè)置為低優(yōu)先級。
4實驗結(jié)果
傳感器節(jié)點采用模塊化設(shè)計,結(jié)構(gòu)緊湊,體積小。設(shè)計的CC1110傳感器節(jié)點在通信頻率為433 MHz、調(diào)制方式為2-FSK時進(jìn)行了單包發(fā)送、連續(xù)發(fā)送以及點對點對發(fā)測試,并進(jìn)行了誤碼率測試。實驗結(jié)果較為理想,空曠環(huán)境通信距離達(dá)到1 km左右,誤碼率為1%左右。功率放大測試中,帶PA功能的節(jié)點輸出功率達(dá)到25 dBm左右,很好地滿足了設(shè)計性能。
5結(jié)束語
本文闡述了基于CC1110的無線傳感器節(jié)點的設(shè)計及實現(xiàn)過程。節(jié)點能夠采集現(xiàn)場環(huán)境的溫濕度,并上發(fā)至上層網(wǎng)絡(luò)節(jié)點。本文的研究工作為進(jìn)一步研究無線傳感器通信協(xié)議提供了良好的硬件基礎(chǔ)。實現(xiàn)結(jié)果也表明,以CC1110為核心的傳感器節(jié)點為WSN的實現(xiàn)提供了一種解決方案,具有較強(qiáng)的應(yīng)用價值。