基于ZigBee的溫度監(jiān)控系統(tǒng)
引言
傳統(tǒng)溫度控制系統(tǒng)通常需要進(jìn)行人工實時測量,或者從監(jiān)控室鋪設(shè)電線到現(xiàn)場進(jìn)行監(jiān)控,這樣不僅費(fèi)時費(fèi)力,而且存在電線易腐蝕以及維護(hù)不便等困難。無線傳感器網(wǎng)絡(luò)(wirelesssensornetwork,WSN)[1]是一種由傳感器節(jié)點(diǎn)構(gòu)成的網(wǎng)絡(luò),能夠?qū)崟r檢測、感知和采集節(jié)點(diǎn)部署區(qū)的觀察者感興趣的感知對象的各種信息(如光照強(qiáng)度、溫度、濕度、噪聲和有害氣體濃度等物理現(xiàn)象),并將這些信息處理后,以無線方式發(fā)送出去,通過無線網(wǎng)絡(luò)最終發(fā)送給觀察者。無線傳感器網(wǎng)絡(luò)在軍事偵查、環(huán)境監(jiān)測、工業(yè)生產(chǎn)控制、智能家居、醫(yī)療護(hù)理以及商業(yè)等領(lǐng)域有著非常廣闊的發(fā)展前景。
ZigBee是一種近距離、低復(fù)雜度、低功耗、低數(shù)據(jù)速率、低成本的雙向無線通信技術(shù),完整的協(xié)議棧只有32KB,可以嵌入各種設(shè)備之中,同時支持地理定位功能。以上功能決定了ZigBee技術(shù)非常適合于應(yīng)用在無線傳感器網(wǎng)絡(luò)中。
本文設(shè)計了一種基于ZigBee的無線溫度監(jiān)控系統(tǒng)。該系統(tǒng)采用RemoDAQ-8000[3]過程控制平臺為溫度控制平臺,該平臺外接pt-100[4]溫度傳感器,CC2530終端節(jié)點(diǎn)通過RS232串口與過程控制平臺相連接,以將采集的溫度數(shù)據(jù)經(jīng)無線方式傳給CC2530協(xié)調(diào)器節(jié)點(diǎn)。協(xié)調(diào)器節(jié)點(diǎn)通過RS232串口與PC機(jī)相連,在PC機(jī)上顯示當(dāng)前的溫度數(shù)據(jù)和實時曲線,并將數(shù)據(jù)存儲到后臺數(shù)據(jù)庫服務(wù)器中,以便在局域網(wǎng)內(nèi)通過瀏覽網(wǎng)頁的方式查看溫度數(shù)據(jù),從而為相關(guān)人員的決策提供理論依據(jù)(例如調(diào)整溫度)。
1系統(tǒng)總體設(shè)計
ZigBee是基于IEEE802.15.4標(biāo)準(zhǔn)的低功耗局域網(wǎng)協(xié)議,具有近距離、低功耗、低成本、低數(shù)據(jù)速率、低成本等特點(diǎn)。ZigBee支持全球統(tǒng)一無需申請的2.4GHz頻段,具有三種拓?fù)浣Y(jié)構(gòu)——星形、樹形、網(wǎng)狀形,每種拓?fù)浣Y(jié)構(gòu)都有各自的特點(diǎn),用戶可按需求進(jìn)行選擇。
整個無線溫度監(jiān)控系統(tǒng)包括CC2530測溫終端、CC2530
協(xié)調(diào)器節(jié)點(diǎn)、顯示終端以及網(wǎng)站服務(wù)器。CC2530可以實時采集測溫終端RemoDAQ-8000實驗平臺的溫度數(shù)據(jù),并將溫度數(shù)據(jù)無線發(fā)送給CC2530協(xié)調(diào)器節(jié)點(diǎn)。協(xié)調(diào)器節(jié)點(diǎn)通過串口與上位機(jī)進(jìn)行通信,同時在上位機(jī)中進(jìn)行相關(guān)數(shù)據(jù)處理,并將處理后的數(shù)據(jù)存儲在后臺服務(wù)器中。這樣,用戶就可通過局域網(wǎng)上位機(jī)(B/S)進(jìn)行查詢和控制,或通過局域網(wǎng)網(wǎng)頁瀏覽(C/S)進(jìn)行查詢,其系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1系統(tǒng)結(jié)構(gòu)
2系統(tǒng)硬件設(shè)計
CC2530測溫終端由RemoDAQ-8000溫控實驗平臺、CC2530終端節(jié)點(diǎn)、ZigBee無線通信、微處理器模塊等組成,可用于對待測點(diǎn)的溫度進(jìn)行采集,并通過無線方式將溫度數(shù)據(jù)發(fā)送給協(xié)調(diào)器節(jié)點(diǎn)。CC2530協(xié)調(diào)器節(jié)點(diǎn)由微處理器和無線通信模塊組成,它的作用是通過RS232將接收到的數(shù)據(jù)傳送給PC機(jī)進(jìn)行處理和顯示。RemoDAQ-8000溫控實驗平臺由R-8520、R-8036、R-8065、pt-100和電源模塊等五部分組成。其中,R-8520的作用是實現(xiàn)RS232電平和RS485電平的相互轉(zhuǎn)換;R-8036的作用是將采集到的溫度模擬量轉(zhuǎn)化為數(shù)字量;R-8065的作用是實現(xiàn)pt-100與電熱杯的加熱與停止;pt-100相當(dāng)于溫度傳感器,其測溫范圍為-500~1200°C,溫度越高,電阻越大。上述模塊結(jié)構(gòu)圖如圖2所示。
2.1數(shù)據(jù)采集模塊
數(shù)據(jù)采集采用pt-100鉑電阻溫度傳感器,該傳感器阻值隨溫度的升高而上升。當(dāng)外界溫度為0C時,其阻值為100Q;當(dāng)溫度為100C時,其阻值為138.5Q。測溫范圍為-500~1200C。
溫控箱通過三線制與pt-100相連接,溫控箱內(nèi)集成有A/D轉(zhuǎn)換模塊,可提供9~12位的轉(zhuǎn)換精度,可直接將外接溫度信號轉(zhuǎn)換為數(shù)字量溫度信號,并具有操作簡單、精度高、響應(yīng)時間短等特點(diǎn),十分適合于溫度檢測。
2.2ZigBee無線通信模塊
該模塊采用TI公司的CC2530,基于IEEE802.15.4標(biāo)準(zhǔn)的低功耗個域網(wǎng)協(xié)議,工作于全球免執(zhí)照申請的2.4GHz頻段,數(shù)據(jù)傳輸速率為250kHz。此模塊同時提供有串行外設(shè)接口(SPI),可以使MCU與外圍設(shè)備以串行方式進(jìn)行通信,以交換信息。SPI接口不需要進(jìn)行尋址操作,且為全雙工通信,因而簡單高效。SPI接口包含以下4種信號線:
MOSI―主器件數(shù)據(jù)輸出,從器件數(shù)據(jù)輸入;
MISO―主器件數(shù)據(jù)輸入,從器件數(shù)據(jù)輸出;
SCLK時鐘信號;
/SS―從器件使能信號,由主器件控制。
圖2系統(tǒng)硬件中的模塊結(jié)構(gòu)圖
2.3微處理器模塊
該模塊采用51系列80C52[5]單片機(jī)。采用Intel公司的CHMOS工藝技術(shù)制造的高性能8位單片機(jī),具有低功耗的特點(diǎn),屬于80C51增強(qiáng)型單片機(jī)版本,同時集成了時鐘輸出和向上或向下計數(shù)器等更多功能,十分適合于自動控制領(lǐng)域。80C52內(nèi)置8位中央處理單元、256字節(jié)內(nèi)部數(shù)據(jù)存儲器RAM、8KB片內(nèi)存儲器ROM、32個雙向輸入輸出I/O口、3個16位定時/計數(shù)器和5個兩級中斷結(jié)構(gòu),帶有一個全雙工串行通信口以及片內(nèi)時鐘振蕩電路。
80C51單片機(jī)芯片與RS232串口通信選用工作電壓為3.3V的MAX232電平轉(zhuǎn)換芯片。由于終端節(jié)點(diǎn)分散,需采用電池供電,并且需低功耗,因此,本文使用5V電池供電,并通過LMS117穩(wěn)壓芯片將5V轉(zhuǎn)換為3.3V,從而使終端節(jié)點(diǎn)具有更好的靈活性和可移動性。
3系統(tǒng)軟件設(shè)計
整個系統(tǒng)的軟件設(shè)計包括數(shù)據(jù)采集、溫度控制、上位機(jī)顯示和監(jiān)控三個部分。其中,數(shù)據(jù)采集軟件程序運(yùn)行在CC2530終端節(jié)點(diǎn)上,主要任務(wù)是對溫度數(shù)據(jù)進(jìn)行采集和無線轉(zhuǎn)發(fā)。溫度控制軟件程序運(yùn)行在CC2530協(xié)調(diào)器節(jié)點(diǎn)上,主要任務(wù)是對數(shù)據(jù)的接收和通過上位機(jī)對終端節(jié)點(diǎn)發(fā)送控制指令,如采集溫度、加熱等。編程語言均在TI的Z-Stack[6]協(xié)議基礎(chǔ)上運(yùn)用c語言進(jìn)行編程。上位機(jī)軟件運(yùn)行在PC機(jī)上,以控制節(jié)點(diǎn)工作狀態(tài),并對節(jié)點(diǎn)發(fā)送來的溫度數(shù)據(jù)進(jìn)行處理和顯示,同時將這些數(shù)據(jù)存儲到服務(wù)器當(dāng)中,以便為管理者決策提供依據(jù)。
3.1終端節(jié)點(diǎn)軟件設(shè)計
首先是對終端節(jié)點(diǎn)上電,進(jìn)行初始化工作,包括對單片機(jī)端口初始化、串行數(shù)據(jù)接口初始化、CC2530內(nèi)部存儲器初始化等。其中,CC2530初始化主要是尋找信道、選擇PANID、選擇源地址等。網(wǎng)絡(luò)建立后,如果收到協(xié)調(diào)器節(jié)點(diǎn)的指令,則開始采集溫度,并將溫度無線發(fā)給協(xié)調(diào)器,否則處于休眠低功耗狀態(tài)。當(dāng)協(xié)調(diào)器所發(fā)溫度大于環(huán)境溫度時,電熱杯加熱,直至與所設(shè)溫度大致相同為止;當(dāng)協(xié)調(diào)器所發(fā)溫度小于環(huán)境溫度時,電熱杯不工作。終端節(jié)點(diǎn)軟件的流程圖如3所示。
圖3終端節(jié)點(diǎn)流程圖
3.2協(xié)調(diào)器節(jié)點(diǎn)軟件設(shè)計
協(xié)調(diào)器節(jié)點(diǎn)負(fù)責(zé)網(wǎng)絡(luò)的建立,以及等待終端節(jié)點(diǎn)加入網(wǎng)絡(luò)。當(dāng)終端節(jié)點(diǎn)加入網(wǎng)絡(luò)后,給終端節(jié)點(diǎn)分配網(wǎng)絡(luò)地址。該節(jié)點(diǎn)通過串口接收上位機(jī)發(fā)送的指令,并把這些指令以無線方式發(fā)給終端節(jié)點(diǎn),終端節(jié)點(diǎn)收到指令后,就可執(zhí)行測溫、加熱等任務(wù),并把溫度數(shù)據(jù)反饋給協(xié)調(diào)器,然后通過串口傳給上位機(jī)。其協(xié)調(diào)器節(jié)點(diǎn)的軟件流程圖如圖4所示。
圖4協(xié)調(diào)器節(jié)點(diǎn)流程圖
3.3上位機(jī)顯示和監(jiān)控軟件設(shè)計
上位機(jī)軟件采用VB6.0[7]對數(shù)據(jù)進(jìn)行處理,主要包括與協(xié)調(diào)器節(jié)點(diǎn)之間的串口通信和數(shù)據(jù)處理。其中,串口通信采用VB6.0自帶的MSComm控件,可方便有效地實現(xiàn)與協(xié)調(diào)器節(jié)點(diǎn)間的通信。上位機(jī)軟件帶有監(jiān)控軟件界面,可顯示溫度數(shù)據(jù)和溫度曲線,操作人員可以設(shè)置溫度對終端節(jié)點(diǎn)進(jìn)行控制,還可以設(shè)定采集時間間隔和報警溫度閾值。溫度數(shù)據(jù)存儲到后臺SQLServer冏數(shù)據(jù)庫中,以便于查詢歷史記錄。
局域網(wǎng)查看基于ASP.net図來實現(xiàn),主要通過ado.net讀取SQLServer數(shù)據(jù)庫中的溫度值表,使溫度信息發(fā)布到IIS[10]服務(wù)器,然后,在局域網(wǎng)內(nèi),用戶就能以登錄網(wǎng)頁的形式在任何位置查看終端的溫度信息。
上位機(jī)顯示和監(jiān)控軟件如圖5所示。
(a)上位機(jī)顯示界面
(b)監(jiān)控中心界面圖
圖5上位機(jī)顯示和監(jiān)控軟件界面圖
4實驗測試和結(jié)果分析
經(jīng)測試,本系統(tǒng)運(yùn)行良好,PC機(jī)上顯示的溫度數(shù)據(jù)與協(xié)調(diào)器節(jié)點(diǎn)顯示的溫度數(shù)據(jù)保持一致。表1分析了當(dāng)前溫度數(shù)據(jù)和設(shè)置溫度之間的關(guān)系。由表1可知,設(shè)置溫度與實際溫度大約相差1.5°C,設(shè)置溫度與實際溫度之間的誤差百分比為2.7%。
表1設(shè)置溫度與實際溫度分析表
設(shè)置溫度/°C |
實時溫度/°C |
誤差/(%) |
46 |
47.4 |
3.1 |
51 |
52.5 |
2.8 |
60 |
61.6 |
2.7 |
70 |
71.7 |
2.5 |
75 |
76.8 |
2.4 |
5結(jié)語
本文提出的基于ZigBee技術(shù)的無線溫度監(jiān)控系統(tǒng)可為控制領(lǐng)域采集和控制現(xiàn)場溫度提供一種有效的解決方案。本系統(tǒng)無需布線,就可在監(jiān)控室中利用監(jiān)控軟件讀取和控制現(xiàn)場溫度,并能根據(jù)存儲在數(shù)據(jù)庫中的歷史數(shù)據(jù)進(jìn)行分析和判斷,從而有效地節(jié)約了人力資源,尤其適用于環(huán)境惡劣的場所。此外,本系統(tǒng)還可以添加不同的傳感器來感知外界物理信號,如濕度傳感器、CO傳感器、酒精傳感器、光敏傳感器等。另外,本系統(tǒng)還可以增加中間路由節(jié)點(diǎn),從而使傳輸距離更遠(yuǎn)。
20210917_61441b6d4a78b__基于ZigBee的溫度監(jiān)控系統(tǒng)