沈慧鈞
摘 要:為解決有線式溫度采集系統(tǒng)布線不便,設(shè)計(jì)了一種基于ZigBee技術(shù)的無(wú)線溫度采集系統(tǒng),使用DS18B20溫度傳感器采集環(huán)境溫度,利用CC2530片上系統(tǒng)芯片進(jìn)行無(wú)線數(shù)據(jù)傳輸,為實(shí)現(xiàn)多點(diǎn)溫度采集,選用星形網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。協(xié)調(diào)器模塊通過(guò)RF收發(fā)器接收各終端節(jié)點(diǎn)發(fā)送的數(shù)據(jù),接收數(shù)據(jù)可顯示在LCD液晶屏上,同時(shí)利用USB接口將數(shù)據(jù)傳輸?shù)缴衔粰C(jī),進(jìn)行數(shù)據(jù)分析、處理及保存。該溫度采集系統(tǒng)具有成本低、工作穩(wěn)定、節(jié)點(diǎn)易于擴(kuò)展等優(yōu)點(diǎn)。
關(guān)鍵詞:無(wú)線溫度采集;ZigBee;CC2530;DS18B20
中圖分類號(hào):TB
文獻(xiàn)標(biāo)識(shí)碼:A
doi:10.19311/j.cnki.16723198.2016.31.093
1 前言
工農(nóng)業(yè)安全生產(chǎn)過(guò)程中需要對(duì)環(huán)境溫度進(jìn)行檢測(cè),傳統(tǒng)的溫度檢測(cè)方式多采用有線傳輸方式,使用溫度傳感器采集環(huán)境溫度并將溫度值傳輸給單片機(jī),單片機(jī)將溫度值通過(guò)總線將數(shù)據(jù)傳輸?shù)娇刂浦行?,采用的總線有485總線、Can總線、以太網(wǎng)總線等,有線傳輸方式具有傳輸速度快、傳輸可靠等優(yōu)點(diǎn),當(dāng)對(duì)于監(jiān)控范圍廣、監(jiān)測(cè)點(diǎn)數(shù)量多等復(fù)雜環(huán)境情況,有線傳輸方式布線困難、成本高。隨著無(wú)線通信技術(shù)的發(fā)展,溫度采集傳輸趨向于無(wú)線傳輸方式,無(wú)線傳輸方式具有使用靈活、覆蓋范圍廣等優(yōu)點(diǎn),因此無(wú)線溫度采集系統(tǒng)將會(huì)有廣泛的應(yīng)用市場(chǎng)。
本文設(shè)計(jì)了基于ZigBee的無(wú)線溫度采集系統(tǒng),采用CC2530片上系統(tǒng)芯片作為系統(tǒng)控制器,選用DS18B20溫度傳感器采集環(huán)境溫度,利用CC2530芯片內(nèi)部的RF收發(fā)器將溫度值無(wú)線傳輸,為實(shí)現(xiàn)多點(diǎn)溫度采集,選用星形網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。協(xié)調(diào)器模塊通過(guò)RF收發(fā)器接收各終端節(jié)點(diǎn)發(fā)送的數(shù)據(jù),接收數(shù)據(jù)可顯示在LCD1602液晶屏上,同時(shí)利用RS232串口模塊將數(shù)據(jù)傳輸?shù)缴衔粰C(jī),進(jìn)行數(shù)據(jù)分析、處理及保存。
2 系統(tǒng)硬件設(shè)計(jì)
本文設(shè)計(jì)的無(wú)線溫度采集系統(tǒng)包括溫度采集終端和協(xié)調(diào)器接收系統(tǒng),采用ZigBee星形網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。溫度采集終端由溫度傳感器芯片、CC2530片上系統(tǒng)芯片、時(shí)鐘芯片以及天線組成,該模塊系統(tǒng)結(jié)構(gòu)如圖1所示。協(xié)調(diào)器接收系統(tǒng)由CC2530片上系統(tǒng)芯片、接收天線、LCD液晶顯示屏和FT232接口轉(zhuǎn)換芯片組成,該模塊系統(tǒng)結(jié)構(gòu)如圖2所示。
2.1 溫度采集終端系統(tǒng)設(shè)計(jì)
溫度采集終端系統(tǒng)實(shí)現(xiàn)環(huán)境溫度采集,溫度傳感器采集數(shù)據(jù)傳輸?shù)紺C2530芯片,CC2530片內(nèi)單片機(jī)將接收數(shù)據(jù)轉(zhuǎn)換成溫度數(shù)值,同時(shí)讀取時(shí)鐘芯片寄存器獲取當(dāng)前時(shí)間值,溫度值和時(shí)間值通過(guò)CC2530片內(nèi)RF模塊進(jìn)行無(wú)線發(fā)射。
2.1.1 溫度采集模塊
溫度傳感器選用美國(guó)DALLAS公司生產(chǎn)的DS18B20芯片,該芯片溫度測(cè)量范圍廣,測(cè)量精度高,可實(shí)現(xiàn)-55℃~+125℃范圍內(nèi)的溫度采集,且其接口簡(jiǎn)單,使用一根數(shù)據(jù)線即可完成溫度值的傳輸。
2.1.2 時(shí)鐘模塊
時(shí)鐘芯片選用美國(guó)DALLAS公司生產(chǎn)的DS1302芯片,該芯片為低功耗時(shí)鐘芯片,晶振頻率為32.768kHz,能夠?qū)崿F(xiàn)對(duì)年、月、日、周、時(shí)、分、秒的計(jì)時(shí),還可實(shí)現(xiàn)閏年補(bǔ)償。DS1302時(shí)鐘數(shù)據(jù)傳輸使用SPI模式。
2.1.3 CC2530模塊
CC2530是為實(shí)現(xiàn)ZigBee應(yīng)用而開(kāi)發(fā)的片上系統(tǒng)芯片,內(nèi)部集成了8051控制器、高效2.4GHz的RF無(wú)線收發(fā)器、片內(nèi)RAM和其他功能外設(shè)。該芯片結(jié)合了基于IEEE802.15.4標(biāo)準(zhǔn)的ZigBee協(xié)議棧Z-Stack,可提供完整的ZigBee解決方案。
ZigBee設(shè)備類型分為終端設(shè)備(End-device)、路由器(Router)和協(xié)調(diào)器(Coordinator),溫度采集終端系統(tǒng)初始化設(shè)置為終端設(shè)備,系統(tǒng)上電后搜索網(wǎng)絡(luò)協(xié)調(diào)器,發(fā)出請(qǐng)求信息,連接成功后,該模塊將接收到一個(gè)16位的從節(jié)點(diǎn)地址,采用CSMA-CA機(jī)制獲得信道使用權(quán),獲得使用權(quán)后,即可向協(xié)調(diào)器接收系統(tǒng)發(fā)送數(shù)據(jù)。
2.2 協(xié)調(diào)器數(shù)據(jù)接收系統(tǒng)設(shè)計(jì)
協(xié)調(diào)器數(shù)據(jù)接收系統(tǒng)實(shí)現(xiàn)無(wú)線網(wǎng)絡(luò)的組建,CC2530內(nèi)部的RF模塊接收各溫度采集終端發(fā)送的溫度及時(shí)間數(shù)值,并傳輸?shù)紺C2530內(nèi)部單片機(jī),單片機(jī)模塊將接收到的溫度、時(shí)間信息一路發(fā)送到LCD液晶顯示屏模塊實(shí)時(shí)顯示,一路通過(guò)FT232模塊傳輸?shù)缴衔粰C(jī),以便進(jìn)行數(shù)據(jù)分析及存儲(chǔ)。
2.2.1 CC2530模塊
利用CC2530首先組建無(wú)線網(wǎng)絡(luò),該模塊被初始化為協(xié)調(diào)器。其內(nèi)部的RF無(wú)線收發(fā)器接收各溫度采集終端發(fā)送的溫度及時(shí)間值,利用片內(nèi)單片機(jī)將無(wú)線接收數(shù)據(jù)發(fā)送到液晶顯示屏進(jìn)行顯示,同時(shí)將無(wú)線接收數(shù)據(jù)通過(guò)FT232模塊以USB接口模式發(fā)送到上位機(jī)。
2.2.2 LCD液晶顯示模塊
LCD液晶顯示屏上顯示各溫度采集終端采集的溫度值及時(shí)間信息,為降低系統(tǒng)成本,選用LCD1602液晶顯示屏,該顯示屏可顯示兩行數(shù)據(jù),每行包含16個(gè)字符,各溫度采集終端采集發(fā)送的數(shù)據(jù)輪流在液晶屏上顯示。
2.2.3 FT232串行通信模塊
FT232芯片為USB到UART串行接口轉(zhuǎn)換芯片,由于目前多數(shù)筆記本電腦沒(méi)有RS232接口,使用該芯片CC2530內(nèi)部單片機(jī)可通過(guò)USB接口與PC機(jī)通信。CC2530內(nèi)部包含2組串行通信接口,可選用任一組與上位機(jī)通信,配置UxGCR寄存器設(shè)置串行通信傳輸速率,本系統(tǒng)中設(shè)置波特率為9600bps,8位數(shù)據(jù)位,1位停止位,無(wú)校驗(yàn)位。編寫上位機(jī)軟件,可對(duì)接收到的各溫度采集終端發(fā)送的溫度值進(jìn)行分析、保存。
3 系統(tǒng)軟件設(shè)計(jì)
溫度采集終端系統(tǒng)上電后,首先完成對(duì)DS18B20、DS1302的初始化,并將該節(jié)點(diǎn)初始化為終端設(shè)備,然后連接調(diào)節(jié)器,網(wǎng)絡(luò)連接成功后,讀取溫度值和時(shí)間值,并將數(shù)據(jù)發(fā)送給協(xié)調(diào)器,該系統(tǒng)的程序設(shè)計(jì)流程圖如圖3所示。
協(xié)調(diào)器數(shù)據(jù)接收系統(tǒng)上電后,首先完成對(duì)LCD1602和UART串行通信的初始化,將該節(jié)點(diǎn)初始化為協(xié)調(diào)器,然后建立網(wǎng)絡(luò),并將溫度采集終端加入網(wǎng)絡(luò),接收溫度采集終端發(fā)送的溫度和時(shí)間值,將接收數(shù)據(jù)發(fā)送到LCD1602液晶顯示屏,并通過(guò)UART串行輸出至上位機(jī)。協(xié)調(diào)器接收系統(tǒng)軟件流程圖如圖4所示。
4 結(jié)束語(yǔ)
本文設(shè)計(jì)了基于ZigBee技術(shù)的無(wú)線溫度采集系統(tǒng),選用CC2530芯片設(shè)計(jì)溫度采集終端和協(xié)調(diào)器數(shù)據(jù)接收系統(tǒng),建立無(wú)線傳感網(wǎng)絡(luò),采用星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)實(shí)現(xiàn)了多點(diǎn)數(shù)據(jù)采集,完成了該系統(tǒng)的硬件和軟件設(shè)計(jì)。該系統(tǒng)數(shù)據(jù)傳輸可靠,功耗低,節(jié)點(diǎn)易于擴(kuò)展,且硬件結(jié)構(gòu)簡(jiǎn)單,成本低,可應(yīng)用于復(fù)雜環(huán)境下的溫度采集,具有一定的實(shí)用價(jià)值。
參考文獻(xiàn)
[1]雷純,何小陽(yáng),蘇生輝.基于ZigBee的多點(diǎn)溫度采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化技術(shù)與應(yīng)用,2010,29(2):4346.
[2]胡慶,杜小丹,羅正華.基于ZigBee技術(shù)的智能校園無(wú)線溫度采集系統(tǒng)[J].電子設(shè)計(jì)工程,2011,19(24):7577.
[3]鄧?yán)?,王子敬,范玲?基于ZigBee無(wú)線網(wǎng)絡(luò)的溫度采集系統(tǒng)設(shè)計(jì)[J].電子元器件應(yīng)用,2010,12(2):3941.
[4]焦鵬鵬,張斌,楊梓.基于無(wú)線傳感器網(wǎng)絡(luò)的溫度采集與傳輸[J].電子設(shè)計(jì)工程.2013,21(2):8992.
[5]靳曉波.基于單片機(jī)的無(wú)線溫度采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].安徽電子信息職業(yè)技術(shù)學(xué)院學(xué)報(bào),2013,12(4):1012.