ZigBee2006協(xié)議棧的 無線傳感執(zhí)行網(wǎng)絡(luò)構(gòu)建
3 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)的協(xié)調(diào)器、路由器和終端節(jié)點(diǎn)的核心采用TI公司的CC2430芯片。該芯片是一款真正的系統(tǒng)芯片(SoC)解決方案,其在單個(gè)芯片上集成了ZigBee射頻前端、微控制器和存儲器。它使用1個(gè)8位的8051內(nèi)核MCU作為控制器,其性能是工業(yè)標(biāo)準(zhǔn)8051核的8倍,且程序代碼與51系列單片機(jī)完全兼容。CC2430具有64/128 KB的可編程Flash和8 KB的RAM,其大容量的Flash完全能夠滿足ZigBee2006協(xié)議棧程序的要求;另外,還具有模/數(shù)轉(zhuǎn)換器(ADC)、定時(shí)器、AES128協(xié)處理器和看門狗定時(shí)器等片內(nèi)外設(shè)。
系統(tǒng)的工作原理是:在協(xié)調(diào)器端,CC2430通過RS232異步串行通信與PC機(jī)進(jìn)行通信。協(xié)調(diào)器成功組建網(wǎng)絡(luò)時(shí),會向PC機(jī)發(fā)送組網(wǎng)成功指示。當(dāng)有路由器或終端節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí),協(xié)調(diào)器通過RS232向PC機(jī)發(fā)送節(jié)點(diǎn)加入指示。在路由器和終端節(jié)點(diǎn)處,上電后CC2430尋找可用信道并加入網(wǎng)絡(luò),然后等待指令。路由器或終端節(jié)點(diǎn)一旦收到協(xié)調(diào)器發(fā)送來的測量指令,將會讀取傳感器的數(shù)據(jù)并傳送。
本系統(tǒng)中溫度和濕度測量使用Sensirion公司的SHT11數(shù)字溫濕度傳感器。該傳感器具有相對濕度和溫度一體測量、超快的響應(yīng)時(shí)間等優(yōu)良特性。對臺燈和窗簾的控制是通過繼電器TQ2-3V來實(shí)現(xiàn)的。
4 軟件設(shè)計(jì)
4.1 系統(tǒng)采集溫濕度的程序設(shè)計(jì)
系統(tǒng)溫濕度的采集使用的SHT11數(shù)字式溫濕度傳感器采用兩線制數(shù)字接口,編程十分方便。溫濕度采集程序流程如圖3所示。
4.2 光敏電阻阻值讀取
光敏電阻阻值的讀取用CC2430內(nèi)部的ADC實(shí)現(xiàn)。通過設(shè)置CC2430的 ADCCON3寄存器可對A/D轉(zhuǎn)換的一些參數(shù)進(jìn)行設(shè)置。具體如下:使用14位的分辨率,采樣通道設(shè)置為AINO,參考電壓設(shè)置為內(nèi)部1.25 V。通過實(shí)驗(yàn)可以測定,當(dāng)P0.1的電壓值等于1.25 V時(shí),環(huán)境光照強(qiáng)度已經(jīng)足夠弱,可以控制空間中的其他執(zhí)行器做出動(dòng)作,如開燈、打開窗簾等。
4.3 ZigBee2006協(xié)議棧常用函數(shù)及工作過程
系統(tǒng)軟件基于TI/Chipcon公司免費(fèi)提供的Zig-Bee2006協(xié)議棧,程序中嵌入了實(shí)時(shí)操作系統(tǒng),用于對網(wǎng)絡(luò)組建、節(jié)點(diǎn)加入、數(shù)據(jù)收發(fā)等功能運(yùn)行統(tǒng)一調(diào)度。進(jìn)行程序設(shè)計(jì)時(shí),首先在協(xié)議棧應(yīng)用層程序中添加相應(yīng)的任務(wù),然后運(yùn)行任務(wù)即可處理。ZigBee2006協(xié)議棧的main函數(shù)流程如圖4所示。
評論