基于ZigBee 的多點(diǎn)溫度采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
4.2 ZigBee 無(wú)線組網(wǎng)及數(shù)據(jù)通信
ZigBee 通信協(xié)議采用分層結(jié)構(gòu),節(jié)點(diǎn)通過(guò)在不同層上的特定服務(wù)來(lái)完成所要執(zhí)行的各種任務(wù)。本系統(tǒng)采用TI 提供的ZigBee2006 協(xié)議棧Z-Stack,在IEEE 802.15.4 標(biāo)準(zhǔn)物理層(PHY)和媒體訪問(wèn)控制層(MAC)基礎(chǔ)上增加了網(wǎng)絡(luò)層、應(yīng)用層和安全服務(wù)規(guī)范,是一種較好的無(wú)線傳感網(wǎng)絡(luò)組建方案。
ZigBee 設(shè)備類(lèi)型按網(wǎng)絡(luò)功能分為三種:協(xié)調(diào)器、路由器、終端。由于本系統(tǒng)采用星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所以只存在協(xié)調(diào)器和終端兩種設(shè)備。
本系統(tǒng)中主節(jié)點(diǎn)被初始化為網(wǎng)絡(luò)協(xié)調(diào)器。協(xié)調(diào)器包含所有的網(wǎng)絡(luò)消息, 存儲(chǔ)容量最大、計(jì)算能力最強(qiáng)。
它的功能是發(fā)送網(wǎng)絡(luò)信標(biāo)、建立網(wǎng)絡(luò)、管理網(wǎng)絡(luò)節(jié)點(diǎn)、存儲(chǔ)網(wǎng)絡(luò)節(jié)點(diǎn)信息、收發(fā)信息。
從節(jié)點(diǎn)被初始化為無(wú)信標(biāo)網(wǎng)絡(luò)中的終端設(shè)備。上電復(fù)位后,即開(kāi)始搜索指定信道上的網(wǎng)絡(luò)協(xié)調(diào)器,并發(fā)出連接請(qǐng)求。建立連接成功后, 從節(jié)點(diǎn)將得到一個(gè)16 位的網(wǎng)絡(luò)短地址,并采用非時(shí)隙CSMA-CA 機(jī)制,通過(guò)競(jìng)爭(zhēng)取得信道使用權(quán),向主節(jié)點(diǎn)發(fā)送數(shù)據(jù)。各從節(jié)點(diǎn)每30 秒讀取一次I/O 接口上多片溫度傳感器數(shù)值, 同時(shí)開(kāi)啟睡眠定時(shí)器,當(dāng)數(shù)據(jù)發(fā)送成功后該節(jié)點(diǎn)立即進(jìn)入睡眠狀態(tài),最大程度地降低功耗, 延長(zhǎng)從節(jié)點(diǎn)的電池使用時(shí)間。
數(shù)據(jù)包的格式由從節(jié)點(diǎn)串接的DS18B20 的數(shù)量決定,每個(gè)DS18B20 傳輸?shù)臄?shù)據(jù)長(zhǎng)度定義為3 字節(jié),第1 字節(jié)為標(biāo)識(shí)符,包括從節(jié)點(diǎn)編號(hào),CC2430 的I/O 口編號(hào)以及此溫度傳感器的編號(hào), 后2 個(gè)字節(jié)為溫度采集數(shù)據(jù)。
主節(jié)點(diǎn)收到數(shù)據(jù)包后, 對(duì)數(shù)據(jù)進(jìn)行分析處理, 把從節(jié)點(diǎn)上的每個(gè)溫度傳感器的數(shù)據(jù)采集值進(jìn)行轉(zhuǎn)換,得到實(shí)際的溫度值,然后發(fā)送給上位PC 機(jī)。主從各節(jié)點(diǎn)的組網(wǎng)及通信流程如圖5 所示。
圖5 主從節(jié)點(diǎn)組網(wǎng)通信流程圖
4.3 PC 機(jī)串口通信及監(jiān)控
圖6 上位機(jī)軟件運(yùn)行界面
上位機(jī)采用VB 編程語(yǔ)言編寫(xiě)串口通信及數(shù)據(jù)庫(kù)程序,在工程中添加MSComm 控件實(shí)現(xiàn)串口傳輸和接收數(shù)據(jù)[4]。使用ADO 對(duì)象連接Access 數(shù)據(jù)庫(kù),將當(dāng)前數(shù)據(jù)存入數(shù)據(jù)庫(kù)中,將控件Pictur eBox 作為容器,實(shí)現(xiàn)曲線圖的動(dòng)態(tài)顯示,此過(guò)程涉及到曲線、坐標(biāo)軸、格線和坐標(biāo)刻度的消隱和重繪。消隱的實(shí)現(xiàn)主要用背景色重繪曲線和網(wǎng)格線, 并覆蓋坐標(biāo)刻度數(shù)字, 重繪實(shí)時(shí)曲線和坐標(biāo)軸網(wǎng)格線通過(guò)Li n e 方法來(lái)實(shí)現(xiàn), 坐標(biāo)軸刻度、標(biāo)簽、圖標(biāo)等的標(biāo)注使用Print 方法實(shí)現(xiàn)[5]。
當(dāng)程序開(kāi)始運(yùn)行后, 打開(kāi)串口, 就可將接收到的實(shí)時(shí)數(shù)據(jù)加入到各節(jié)點(diǎn)的歷史溫度數(shù)據(jù)庫(kù),同時(shí)可以從運(yùn)行界面看到歷史溫度變化曲線。圖表中曲線的最右端為當(dāng)前溫度, 點(diǎn)擊節(jié)點(diǎn)按鈕, 然后選中指定的溫度數(shù)據(jù)框,即可查看對(duì)應(yīng)傳感器節(jié)點(diǎn)的溫度歷史數(shù)據(jù)和變化情況, 軟件運(yùn)行時(shí)的界面如圖6 所示。
5 結(jié)束語(yǔ)
本文設(shè)計(jì)了一種基于ZigBee 技術(shù)的無(wú)線溫度采集系統(tǒng),采用CC2430 芯片設(shè)計(jì)主從節(jié)點(diǎn),硬件結(jié)構(gòu)精簡(jiǎn)、體積小、能耗低, 所組成的無(wú)線傳感網(wǎng)絡(luò)具有自組織,自適應(yīng)的特點(diǎn)。通過(guò)實(shí)驗(yàn)調(diào)試,該溫度采集系統(tǒng)達(dá)到了設(shè)計(jì)要求,效果良好。鑒于無(wú)線傳感網(wǎng)絡(luò)技術(shù)具有功耗低、數(shù)據(jù)傳輸可靠、網(wǎng)絡(luò)容量大、兼容性好、實(shí)現(xiàn)成本低等諸多優(yōu)點(diǎn), 可廣泛應(yīng)用于生產(chǎn)生活的各個(gè)領(lǐng)域, 尤其適用于數(shù)字家庭、智能大廈溫度控制、小區(qū)安防監(jiān)測(cè)等, 具有較好的通用性和應(yīng)用前景。
adc相關(guān)文章:adc是什么
電流變送器相關(guān)文章:電流變送器原理 溫濕度控制器相關(guān)文章:溫濕度控制器原理 熱電偶相關(guān)文章:熱電偶原理
評(píng)論