李 勇,張以帥,唐廣耀
(寧夏大學(xué)機(jī)械工程學(xué)院,銀川 750021)
傳統(tǒng)的有線溫度采集系統(tǒng)主要存在布線復(fù)雜、維護(hù)困難等缺點(diǎn),無線溫度采集系統(tǒng)主要是以nRF905為代表的無線射頻發(fā)射芯片,存在傳送距離短,對(duì)障礙物的穿透能力比較弱等缺點(diǎn)。針對(duì)以上問題,本文提出了一種基于WLK01L39無線收發(fā)模塊的溫度采集系統(tǒng),它較nRF905有較強(qiáng)的穿透能力,而且傳送距離遠(yuǎn)??梢詮浹a(bǔ)傳統(tǒng)溫度采集系統(tǒng)帶來的不足,同時(shí)友好的上位機(jī)交互界面為數(shù)據(jù)的實(shí)時(shí)顯示和歷史數(shù)據(jù)的保存、打印提供了保障。
如圖1所示,該系統(tǒng)通過DS18B20數(shù)字溫度傳感器實(shí)現(xiàn)多點(diǎn)溫度數(shù)據(jù)的采集,將采集的溫度數(shù)據(jù)發(fā)送給MSP430單片機(jī)進(jìn)行處理,然后傳給WLK01L39無線發(fā)送模塊,經(jīng)片上MCU調(diào)制成射頻信號(hào)之后通過吸盤天線發(fā)送出去,接收端的WLK01L39模塊通過吸盤天線接收該射頻信號(hào),并將該信號(hào)解調(diào)轉(zhuǎn)換成計(jì)算機(jī)能夠識(shí)別的信號(hào)之后通過RS232總線發(fā)送到上位機(jī)PC上,在PC端利用VB和ACCESS實(shí)現(xiàn)對(duì)數(shù)據(jù)的實(shí)時(shí)顯示和數(shù)據(jù)保存。
圖1 系統(tǒng)總體設(shè)計(jì)
傳統(tǒng)的溫度采集系統(tǒng)的溫度傳感器一般選用熱電偶。但是熱電偶輸出的是模擬量,需要進(jìn)行功放、A/D轉(zhuǎn)換、濾波等一系列信號(hào)處理環(huán)節(jié),從而使設(shè)計(jì)電路復(fù)雜,而且熱電偶的價(jià)格昂貴,所以本文選用數(shù)字溫度傳感器DS18B20。DS18B20是DALLAS公司生產(chǎn)的一款數(shù)字化單總線溫度傳感器,由于它里面集成了A/D轉(zhuǎn)換等信號(hào)處理環(huán)節(jié),所以可以直接和單片機(jī)相連。它有外部供電和內(nèi)部供電兩種供電方式,本文由于布線復(fù)雜等原因采用外部供電方式。DS18B20測量溫度的范圍:-55~+125℃,精度可達(dá)0.5℃,工作電范圍:+3.0~+5.5V。DALLAS公司為每個(gè)DS18B20傳感器設(shè)置了一個(gè)惟一的長度為64位的序列號(hào),存放在ROM中。這樣我們可以將所有的DS18B20串聯(lián)在一條總線上,單片機(jī)可以通過發(fā)送序列號(hào)來決定訪問哪個(gè)DS18B20傳感器。如圖2所示。
圖2 溫度采集電路
WLK01L39無線收發(fā)模塊較nRF905,nRF24L01等射頻收發(fā)模塊有較強(qiáng)的穿透能力,傳輸距離遠(yuǎn),而且軟件編程簡單,節(jié)約開發(fā)成本和開發(fā)時(shí)間,所以本文選用WLK01L39無線收發(fā)模塊。MSP430和WLK01L39的接線圖如圖3所示。
WLK01L39無線收發(fā)模塊的SETA引腳和SETB引腳決定了工作模式WLK01L39有四種工作模式,即正常收發(fā)模式、喚醒主模式、喚醒從模式、配置休閑模式。
圖3 MSP430和WLK01L39接線
下位機(jī)軟件設(shè)計(jì)主要包括對(duì)數(shù)字溫度傳感器DS18B20的操作、UART串口通信模塊的操作和發(fā)送無線模塊WLK01L39的操作。
4.1.1 對(duì)數(shù)字溫度傳感器DS18B20的操作過程
MSP430單片機(jī)控制數(shù)字溫度傳感器DS18B20的操作:首先初始化DS18B20,接著發(fā)送一條ROM匹配指令和一條啟動(dòng)溫度轉(zhuǎn)換指令;之后進(jìn)行一定時(shí)間的延時(shí),目的是讓DS18B20有足夠的時(shí)間來進(jìn)行溫度轉(zhuǎn)換;接著又發(fā)送一條ROM匹配指令和一個(gè)指定的64位的序列號(hào);最后發(fā)送一條讀取RAM的指令,從而讀出該序列號(hào)對(duì)應(yīng)的溫度值。對(duì)溫度操作流程如圖4。
圖4 DS18B20操作過程
4.1.2 對(duì)發(fā)送無線模塊WLK01L39的操作過程
前面已經(jīng)講過無線模塊WLK01L39的四種工作模式。平時(shí)當(dāng)單片機(jī)串口緩存中沒有數(shù)據(jù)時(shí),WLK01L39工作在配置休眠模式,即SETA=1,SETB=1。因?yàn)樵谶@種模式下為待機(jī)模式,功耗最低。當(dāng)單片機(jī)串口緩存中有數(shù)據(jù)時(shí),串口發(fā)送中斷標(biāo)志位發(fā)生變化,此時(shí)單片機(jī)將SETA和SETB所連的端口置零,使無線模塊WLK01L39工作在正常收發(fā)模式,同時(shí)它將接收到數(shù)據(jù)經(jīng)片上MCU調(diào)制成射頻信號(hào)之后通過吸盤天線發(fā)送出去。
本文上位機(jī)軟件主要實(shí)現(xiàn)對(duì)下位機(jī)采集溫度的實(shí)時(shí)顯示和歷史數(shù)據(jù)的保存。本文采用Visual Basic6.0設(shè)計(jì)人機(jī)交互界面實(shí)現(xiàn)下位機(jī)采集溫度的實(shí)時(shí)顯示,如圖5所示,同時(shí)將采集的數(shù)據(jù)保存到ACCESS數(shù)據(jù)庫中以便后續(xù)查詢和打印。
圖5 下位機(jī)采集溫度實(shí)時(shí)顯示界面
當(dāng)我需要查看歷史數(shù)據(jù)或打印歷史數(shù)據(jù)時(shí),點(diǎn)歷史報(bào)表按鈕就可以看到如圖6所示的界面。它將保存在ACCESS數(shù)據(jù)庫中的數(shù)據(jù)調(diào)用出來。
圖6 數(shù)據(jù)報(bào)表顯示界面
本文設(shè)計(jì)了一款基于MSP430單片機(jī)、無線溫度采集模塊WLK01L39、數(shù)字溫度傳感器DS18B20、上位機(jī)軟件為一體的多點(diǎn)溫度采集系統(tǒng),從硬件和軟件兩部分介紹了該系統(tǒng)的構(gòu)成。通過實(shí)驗(yàn)發(fā)現(xiàn):該系統(tǒng)具有可靠的穩(wěn)定性,同時(shí)由于WLK01L39具有較強(qiáng)的穿透能力、傳輸距離遠(yuǎn)等優(yōu)點(diǎn),使得該系統(tǒng)可以彌補(bǔ)傳統(tǒng)溫度采集系統(tǒng)帶來的缺點(diǎn)。上位機(jī)友好的人機(jī)交互界面也為管理人員帶來了極大的方便?!?/p>
[1] 胡大可.MSP430系列超低功耗16位單片機(jī)原理與應(yīng)用.北京:北京航空航天大學(xué)出版社,2000
[2] 夏志華.基于單片機(jī)溫度控制系統(tǒng)的研究[J].煤炭技術(shù),2013(2):191-193
[3] 秦龍.MSP430單片機(jī)應(yīng)用系統(tǒng)開發(fā)典型實(shí)例.北京:中國電力出版社,2005
[4] 湯綺婷.基于射頻模塊nRF905的糧庫無線溫濕度監(jiān)控系統(tǒng).電子產(chǎn)品世界,2007(7):102-104
[5] 吳祿慎,李彧雯.基于單片機(jī)的多點(diǎn)溫度系統(tǒng)設(shè)計(jì)[J].飛機(jī)設(shè)計(jì),2010(4):76-80
[6] 高春艷,安劍.Visual Basic程序開發(fā)范例寶典.北京:人民郵電出版社,2009