DS18B20在空調(diào)檢測系統(tǒng)溫度采集模塊中的應(yīng)用[圖]

相關(guān)專題: 無線 芯片

摘要:為了克服空調(diào)檢測系統(tǒng)存在的布線復(fù)雜、溫度采集穩(wěn)定性差的缺點(diǎn),利用數(shù)字溫度傳感器DS18B20具有一線總線、可組網(wǎng)的特點(diǎn),結(jié)合AT89S52單片機(jī),給出一種用于空調(diào)檢測系統(tǒng)的高效穩(wěn)定的溫度采集方案,討論了16片DS18B20數(shù)字溫度傳感器硬件連接和程序設(shè)計。應(yīng)用情況表明,該溫度采集方案具有準(zhǔn)確率高、穩(wěn)定性好、安裝方便等特點(diǎn),有效提高了空調(diào)檢測系統(tǒng)的性能。

在空調(diào)生產(chǎn)過程中,為確?照{(diào)產(chǎn)品的質(zhì)量,空調(diào)制造商在產(chǎn)品出廠前都必須對空調(diào)進(jìn)行加熱帶、制熱、制冷等環(huán)節(jié)的測試,通過標(biāo)準(zhǔn)機(jī)的電壓、功率、輸入管溫、輸出管溫、回氣溫度、排氣溫度等參數(shù)判斷空調(diào)是否合格,其中溫度參數(shù)檢測是整個空調(diào)檢測系統(tǒng)的重要部分。

在傳統(tǒng)的空調(diào)檢測系統(tǒng)中,溫度采集模塊多以熱電阻、熱電偶為溫度傳感器,溫度模擬信號必須經(jīng)過專門的調(diào)理電路轉(zhuǎn)換為數(shù)字信號后才能被單片機(jī)處理,使用一段時間后,系統(tǒng)檢測到的溫度值往往不夠準(zhǔn)確,同時由于溫度采集點(diǎn)分布范圍廣,增加了布線難度,也給系統(tǒng)維護(hù)帶來不便。

本文采用DS18B20數(shù)字溫度傳感器、AT89S52單片機(jī),設(shè)計出適合空調(diào)檢測現(xiàn)場的溫度采集模塊,實(shí)現(xiàn)現(xiàn)場16個采集點(diǎn)溫度數(shù)據(jù)的同步采集和傳輸。

1 系統(tǒng)構(gòu)成

空調(diào)檢測系統(tǒng)溫度采集模塊的結(jié)構(gòu)框圖如圖1所示。溫度采集模塊包括電源子模塊、16路溫度采集子模塊、看門狗子模塊、報警子模塊、RS485接口子模塊。微控制器采用Atmel公司的AT89S52,溫度采集采用Dallas公司的數(shù)字溫度傳感器DS18B20。上位機(jī)采用研祥工控機(jī),監(jiān)控軟件采用Visual Basic 6.0編程。

溫度采集模塊電路板固定在每個工作站的控制柜里,并將現(xiàn)場采集到的各點(diǎn)溫度值實(shí)時傳送給上位機(jī),因此,溫度采集模塊并沒有集成LCM子模塊和鍵盤電路。

DS18B20在空調(diào)檢測系統(tǒng)溫度采集模塊中的應(yīng)用

2 硬件連接

2.1 DS18B20數(shù)字溫度傳感器

DS18B20數(shù)字溫度傳感器溫度測量范圍為-55℃~+125℃,在-10℃~+85℃范圍內(nèi),精度為±0.5℃,可實(shí)現(xiàn)9bit~12bit溫度讀取。DS18B20具有一線總線的特點(diǎn),可以輕松組建溫度采集網(wǎng)絡(luò),并且體積小、分辨率高、抗干擾能力強(qiáng),實(shí)用性和可靠性比同類產(chǎn)品更高[1],因此,在軸承測溫[2]、凍土區(qū)公路路基溫度測量[3]等場合有著廣泛的應(yīng)用。

DS18B20溫度寄存器中的溫度值以9bit數(shù)據(jù)格式表示,而輸出溫度則是以16bit符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式提供,其中低8bit用補(bǔ)碼表示,第9bit~16bit為擴(kuò)展符號位?照{(diào)檢測系統(tǒng)所需檢測的溫度值均在0℃以上,這樣,只需讀取緩存9個字節(jié)的前兩個字節(jié)即可。

2.2 DS18B20硬件連接

DS18B20器件都有一個唯一的64bit ROM地址,通過協(xié)議就能識別這些序列號,這樣多個DS18B20可以掛接在同一條單總線上,構(gòu)成多點(diǎn)溫度采集網(wǎng)絡(luò)。由于DS18B20具有“單總線”的技術(shù)特點(diǎn),因此可以采用兩種不同的方式連接單片機(jī)。

(1)單端口并聯(lián)連接:所有DS18B20均連接在同一條總線上,然后再連接到單片機(jī)的某個I/O端口。這種連接方式具有硬件開銷小的優(yōu)點(diǎn),理論上一根總線可以掛接256個DS18B20,但若連接的數(shù)字傳感器數(shù)量較多,單片機(jī)需要花較多的時間才能獲得每個傳感器的序列號,會降低系統(tǒng)的實(shí)時性,同時使得軟件編程變得復(fù)雜。

(2)多端口并行連接:每個DS18B20獨(dú)占單片機(jī)某個I/O端口。這種并行連接方式使得單片機(jī)能夠?qū)λ械臄?shù)字傳感器進(jìn)行并行操作,同一時間能實(shí)現(xiàn)多個輸入輸出,實(shí)現(xiàn)對溫度數(shù)據(jù)的快速讀取,從而提高系統(tǒng)的實(shí)時性,同時也使得軟件編程變得簡單,縮短了項(xiàng)目的開發(fā)周期。這種連接方式的缺點(diǎn)是硬件開銷比較大。

根據(jù)空調(diào)檢測系統(tǒng)的實(shí)際需要,系統(tǒng)使用16片DS18B20構(gòu)成小型溫度數(shù)據(jù)采集網(wǎng)絡(luò),結(jié)合單端口并聯(lián)連接和多端口并行連接的連接特點(diǎn),每個I/O端口連接兩片DS18B20,共使用8個I/O端口,單片機(jī)與16片DS18B20連接框圖如圖2所示。DS18B20芯片的DQ端和單片機(jī)的I/O端口相連,并接上一個4.3kΩ的上拉電阻,芯片的GND端接地線,VDD端接5V電源線。AT89S52是一種低功耗、高性能CMOS 8bit微控制器,具有8KB Flash,256B RAM,32bit I/O口線,3個16bit定時器/計數(shù)器,其資源性能可以滿足空調(diào)檢測系統(tǒng)溫度采集的需要。

DS18B20在空調(diào)檢測系統(tǒng)溫度采集模塊中的應(yīng)用

單片機(jī)需要通過接口電路實(shí)現(xiàn)與DS18B20的連接,接口電路圖如圖3所示。J1是接線端子臺, DS18B20通過三芯電纜連接到J1;二極管IN4148實(shí)現(xiàn)電壓鉗位;RWDS1和單片機(jī)AT89S52的一個I/O端口相連;16片DS18B20通過J1~J8與溫度采集模塊連接。

DS18B20在空調(diào)檢測系統(tǒng)溫度采集模塊中的應(yīng)用

3 程序設(shè)計

3.1 DS18B20溫度采集

DS18B20溫度采集基本流程:單片機(jī)發(fā)出復(fù)位脈沖,當(dāng)信號線上的DS18B20發(fā)出存在脈沖后,即完成DS18B20的初始化工作;單片機(jī)檢測到存在脈沖,便發(fā)起ROM操作命令;發(fā)送內(nèi)存操作指令,啟動DS18B20溫度轉(zhuǎn)換;延時2μs等待溫度轉(zhuǎn)換完成;發(fā)出匹配ROM命令后緊接著發(fā)送片內(nèi)ROM序列號;讀取序列號對應(yīng)的DS18B20暫存器,從而讀出溫度值;讀完一個DS18B20溫度值后,接著轉(zhuǎn)向下一個DS18B20的操作。這樣的操作循環(huán)進(jìn)行,從而完成對所有DS18B20溫度值的讀取。溫度采集基本流程圖[1]如圖4所示。

DS18B20在空調(diào)檢測系統(tǒng)溫度采集模塊中的應(yīng)用

DS18B20作為智能集成溫度傳感器,其智能化實(shí)現(xiàn)要以高質(zhì)量代碼作保障。因?yàn)樽x取每一個DS18B20都需要匹配序列號,復(fù)位、讀、寫操作都需要針對不同的I/O口,所以,16片DS18B20經(jīng)單片機(jī)8個I/O口接入,需要定義對應(yīng)8個I/O口的變量:18b20_0~18b20_7、18b20_0定義語句表示如下:“sbit 18b20_0=P1^0;”;需要定義8個復(fù)位(初始化)函數(shù):void re18b20_0()~void re18b20_7();需要定義8個寫函數(shù):void wr18b20_0(uchar ml)~void wr18b20_7(uchar ml);需要定義8個讀函數(shù):void rd18b20_0()~void rd18b20_7()。對于單個I/O口(如P1.0),單片機(jī)在發(fā)送溫度轉(zhuǎn)換命令后,發(fā)送匹配命令wr18b20_0(0x55);連續(xù)調(diào)用8次寫函數(shù)發(fā)送序列號;發(fā)送讀溫度暫存器命令wr18b20_0(0xbe);調(diào)用讀函數(shù)rd18b20_0()讀取溫度低8 bit;經(jīng)溫度轉(zhuǎn)換函數(shù)處理后,將溫度整數(shù)部分保存在wd[0],小數(shù)部分保存到wd[1]。讀取另外一片DS18B20,其溫度值的整數(shù)和小數(shù)部分分別保存到wd[2]、wd[3]。讀取P1.1端口,溫度讀取過程相同。所有傳感器的溫度值都保存到wd數(shù)組中,最后由單片機(jī)AT89S52按照Modbus協(xié)議發(fā)送給上位機(jī)。

3.2 程序編寫需要注意以下幾點(diǎn)

(1)單片機(jī)采用C51編程,代碼功能模塊清晰,可讀性強(qiáng)。從本應(yīng)用狀況來看,其實(shí)時性能得到保證,因此,匯編語言不一定是最好的選擇。

(2)空調(diào)檢測系統(tǒng)所采集的溫度均在0℃以上,并且上位機(jī)軟件可以實(shí)現(xiàn)溫度報警功能,因此,讀函數(shù)讀取RAM寄存器只需讀取前兩個字節(jié)。

(3)單片機(jī)和上位機(jī)軟件通信采用Modbus協(xié)議的RTU模式,因此,溫度轉(zhuǎn)換函數(shù)實(shí)現(xiàn)的功能就是將溫度低字節(jié)轉(zhuǎn)化為十六進(jìn)制數(shù)據(jù),并保存到數(shù)組里。

4 應(yīng)用分析

空調(diào)檢測是在一個溫濕度變化復(fù)雜、干擾源多的空調(diào)檢測房里進(jìn)行,空調(diào)檢測系統(tǒng)包括1#~6#工作站,每個工作站均配有5臺標(biāo)準(zhǔn)室內(nèi)機(jī)。定頻、變頻一拖一、一拖多等機(jī)型的室外機(jī)由生產(chǎn)線運(yùn)送到各站臺,電源線、信號線等連接完畢后,即可掃描條碼進(jìn)行檢測。檢測過程中,上位機(jī)軟件能實(shí)時檢測溫度、壓力等參數(shù),檢測完畢,系統(tǒng)自動存儲各種數(shù)據(jù),如果參數(shù)不合格,則發(fā)出報警信號。

基于空調(diào)檢測環(huán)境溫濕度變化復(fù)雜的現(xiàn)場狀況,數(shù)字溫度傳感器DS18B20需要采用不銹鋼外殼封裝,以達(dá)到防水防潮目的。DS18B20溫度采集點(diǎn)主要分布在室內(nèi)標(biāo)準(zhǔn)機(jī)的進(jìn)風(fēng)口、出風(fēng)口和盤管。測量壓縮機(jī)排氣管溫度時,不銹鋼封裝的DS18B20需要嵌入固定到金屬夾里面,通過這樣測量方式得到的是排氣管表面溫度,需要利用上位機(jī)軟件進(jìn)行必要的數(shù)據(jù)處理,才能得到排氣管的實(shí)際溫度。

上位機(jī)監(jiān)控軟件采用模塊化設(shè)計,軟件分為數(shù)據(jù)通信、數(shù)據(jù)采集、數(shù)據(jù)顯示、數(shù)據(jù)管理、用戶管理模塊,并將各模塊的實(shí)現(xiàn)代碼封裝成模塊和類模塊。需要注意的是:為了方便對DS18B20數(shù)字溫度傳感器進(jìn)行安裝、測試和維護(hù),監(jiān)控軟件應(yīng)該有針對連接溫度傳感器的I/O端口,以及I/O端口上的溫度傳感器的測試界面。上位機(jī)監(jiān)控界面溫度顯示區(qū)如圖5所示,圖中顯示的是某機(jī)型在制冷期間某時刻溫度值,圖中排氣溫度1和排氣溫度2為壓縮機(jī)管溫。

DS18B20在空調(diào)檢測系統(tǒng)溫度采集模塊中的應(yīng)用

采用DS18B20的溫度采集模塊已應(yīng)用到某大型空調(diào)生產(chǎn)廠的空調(diào)檢測系統(tǒng)中,溫度采集的準(zhǔn)確性和實(shí)時性均滿足系統(tǒng)的要求。數(shù)字溫度傳感器DS18B20和單片機(jī)AT89S52組成的溫度采集模塊,能同時滿足成本和技術(shù)的要求,對組建多點(diǎn)溫度采集網(wǎng)絡(luò)具有一定的借鑒意義。

參考文獻(xiàn)

[1] 周月霞,孫傳友.DS18B20硬件連接及軟件編程[J].傳感器世界,2001(12):25-29.
     [2] 張海傳,吳晨霞,許東衛(wèi),等.低功耗軸承溫度無線檢測系統(tǒng)的設(shè)計[J].電子技術(shù)應(yīng)用,2009,35(10).
     [3] 何東坡,任貴波,韓春鵬,等.DS18B20在季凍土區(qū)公路路基溫度場測量中的應(yīng)用[J].電子技術(shù)應(yīng)用,2010,36(4).
     [4] 求是科技.單片機(jī)典型模塊設(shè)計實(shí)例導(dǎo)航[M].北京:人民郵電出版社,2004.

作者:王福泉 萬頻 馮孔淼 張昱   來源:《電子技術(shù)應(yīng)用》2011年第8期
微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號,免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國移動:5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國電信5GNTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

      最新招聘信息