劉志君
(遼寧科技學(xué)院 電氣與信息工程學(xué)院 , 遼寧 本溪 117004)
基于DS18B20的多點溫度測量系統(tǒng)
劉志君
(遼寧科技學(xué)院 電氣與信息工程學(xué)院 , 遼寧 本溪 117004)
本設(shè)計以AT89C51單片機為主控芯片,以KEIL4為系統(tǒng)開發(fā)平臺、采用C51進行編程,對多個單總線數(shù)字式溫度傳感器DS18B20進行多點溫度測量,將結(jié)果顯示在液晶模塊LCD1602上,并對系統(tǒng)實際運行數(shù)據(jù)進行分析。這種單總線測溫系統(tǒng)具有接口簡單、精度高、抗干擾能力強、穩(wěn)定可靠等特點。
單片機;DS18B20;溫度檢測;C51
溫度檢測對工農(nóng)業(yè)生產(chǎn)具有重要的作用。常見的溫度檢測方法有熱電阻、熱電偶等模擬器件,該種測溫方式測溫范圍廣,但是需要后續(xù)信號調(diào)理和處理電路,限制其更廣泛的應(yīng)用。本溫度測量系統(tǒng)采用美國DALLAS半導(dǎo)體公司(現(xiàn)并入MAXIM公司)推出的一種改進型溫度傳感DS18B20,它的測溫范圍是-55℃~125℃,最高精度可達到0.1℃,滿足一般測量要求。與傳統(tǒng)的熱電偶電阻比較,它集成信號調(diào)理和信號處理電路,直接輸出溫度數(shù)字信號,可以與微處理器直接接口。可根據(jù)實際需要,通過編程實現(xiàn)9~12位精度的數(shù)字量輸出。由于本身的單總線特性和內(nèi)部唯一的ID碼,多個DS18B20可以并聯(lián)在一根總線上。
1.1 DS18B20測溫原理
當(dāng)DS18B20接收到單片機的啟動信號后,開始啟動溫度轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速寄存器的第1、2字節(jié),格式如圖1.1所示。單片機可以向溫度傳感器發(fā)送指令讀取轉(zhuǎn)換后的數(shù)據(jù),讀取時候低位在前,高位在后,數(shù)據(jù)格式以0.0625℃/LSB形式表示。
位15(MSB)位14位13位12位11位10位9位8SSSSS262524位7位6位5位4位3位2位1位0(LSB)232221202-12-22-32-4
圖1.1 DS18B20溫度值存儲器格式表
圖1.1是DS18B20將溫度值轉(zhuǎn)化后得到的16位2進制數(shù)據(jù),前5位表示符號,用S表示。如果測得的溫度大于0,用原碼表示,這5位S為0,只要將測到的數(shù)值乘以0.0625即可得到實際溫度。如果溫度小于0,用補碼表示,需要將獲得的數(shù)值取反加1再乘以0.0625即可得到實際溫度。圖1.1中,S表示符號位。
表1.1是部分溫度值對應(yīng)的二進制溫度表示數(shù)據(jù)。
表1.1 DS18B20的溫度轉(zhuǎn)換值和溫度的對照表
*上電默認(rèn)值是+85℃
1.2 DS18B20的外形及引腳
DS18B20常見的封裝有To-92和SOIC8兩種,如圖1.2所示。在工程實踐中出于焊接等因素考慮,通常考慮To-92封裝。
圖1.2 DS18B20的外形及管腳排列
引腳的含義如表1.2所示。
表1.2 DS18B20詳細(xì)引腳描述
1.3 DS18B20S時序圖
圖1.3 DS18B20復(fù)位脈沖和存在脈沖
圖1.4 DS18B20讀寫/時序圖
2.1 系統(tǒng)硬件設(shè)計
系統(tǒng)采用單片機AT89C51來完成溫度傳感器信號的采集、液晶顯示和報警等功能。AT89C51有40個引腳,能提供一個8位CPU,128位字節(jié)RAM,32根I/O線,2個16位定時器,一個全雙工串行口,5個中斷源,還有片內(nèi)振蕩和時鐘電路,與MCS-51指令兼容。
出于系統(tǒng)的供電穩(wěn)定性考慮,DS18B20用5V電源供電方式。出于總線驅(qū)動能力和時序的考慮,單總線上加一個4.7KΩ-6.2 KΩ的上拉電阻。
系統(tǒng)的硬件設(shè)計如圖1.5所示,系統(tǒng)時鐘選擇為12Mhz。
圖1.5 多點測溫系統(tǒng)原理圖
2.1 系統(tǒng)軟件設(shè)計
系統(tǒng)的軟件設(shè)計基于keil C完成。流程圖如圖1.6所示。
系統(tǒng)的軟件部分前期工作需要完成DS18B20的ID號讀取,存儲于ROM中。軟件部分完成如下基本功能:
1) DS18B20的初始化
2) LCD1602初始化
3) 單片機初始化
4) 依次發(fā)出每個DS18B20的ID號,獲取每個溫度并顯示。同時與設(shè)定值比較,決定是否報警。
圖1.6 主程序流程圖
本設(shè)計的前期測試通過仿真完成,采用PROTEUS軟件。該軟件能夠比較真實的反應(yīng)出實物的真實效果,可降低前期實驗成本。通過仿真證明理論上可行。仿真成功后,基于PROTEUS軟件進行了PCB設(shè)計,并進行制板和焊接,實物也達到了設(shè)計要求。
通過實物證明,基于DS18B20數(shù)字式溫度傳感器構(gòu)成多點測溫系統(tǒng),線路簡單,硬件少,測溫距離遠,系統(tǒng)具有高度穩(wěn)定性,可以應(yīng)用于普通范圍的測溫系統(tǒng)中。
〔1〕DALLAS公司.半導(dǎo)體手冊〔Z〕. DSLLAD公司、1996.
〔2〕顧振宇,杜振輝.DS18B20接口C語言程序設(shè)計〔J〕.單片機與嵌入系統(tǒng)應(yīng)用.2002.(7):346-347.
〔3〕金偉正.單線數(shù)字溫度傳感器的原理與應(yīng)用〔J〕.電子技術(shù)應(yīng)用.2000.(6):66-68.
TheMulti-pointTemperatureMeasuringSystemBasedontheSensorDS18B20
LIU Zhi-jun
(SchoolofElectricalandInformationalEngineering,LiaoningInstituteofScienceandTechnology,Benxi,Liaoning, 117004,China)
Taking the SCM AT89S51 as major unit, KEIL4 as platform for system development, and using C51 as program language, a multi-point temperature measurement system is designed, the measured results are shown on the module LCD1602, and the process data are analyzed. By the real realization, the system has simple interface, high accuracy, strong anti-interference and high reliability.
SCM; DS18B20; Temperature detect; C51.
1008-3723(2017)04-005-03
10.3969/j.issn.1008-3723.2017.04.005
2017-06-25
課題項目:遼寧科技學(xué)院引導(dǎo)基金項目:AGV傳送平臺路徑規(guī)劃控制系統(tǒng)(YD201611)
劉志君(1973-),女,遼寧科技學(xué)院 電信學(xué)院副教授。研究方向:控制理論
TB212
:A