王麗娟, 張健勝, 黃建春
基于DS18B20溫度傳感器的鍋爐溫度控制系統(tǒng)設計
王麗娟, 張健勝, 黃建春
(湖南文理學院 電氣與信息工程學院, 湖南 常德, 415000)
為了解決傳統(tǒng)溫度控制系統(tǒng)存在的誤差大的問題, 基于DS18B20的溫度控制系統(tǒng), 設計了一套包括溫度檢測電路、顯示電路、鍵盤電路、執(zhí)行電路和報警電路的溫度控制系統(tǒng), 并對系統(tǒng)進行了仿真調試。仿真實驗驗證了整個系統(tǒng)運行可靠, 性能良好。
DS18B20溫度傳感器; 溫度控制; 單片機
傳統(tǒng)的爐溫控制系統(tǒng)采用模擬溫度器件, 其溫度檢測誤差很大, 不僅人機交互非常不方便, 而且浪費能源、直觀性差、準確度低、算法十分復雜。由于DS18B20不需外圍元件[1], 可與單片機直接相連, 將被測溫度直接轉換成數字信號[2], 解決了誤差和可靠性問題, 其最大的線性偏差也小于1 ℃。為了解決這些問題, 本文提出了基于DS18B20的溫度控制系統(tǒng)。
鍋爐溫度控制系統(tǒng)原理如圖1所示。系統(tǒng)主要包括溫度檢測、顯示、鍵盤及執(zhí)行電路。
1.1溫度檢測電路
溫度傳感器DS18B20是溫度檢測電路中的主要元件。DS18B20把檢測到的水溫信號直接轉換成串行數字信號供單片機處理, 單片機接收到信號后, 跟設定的溫度比較, 再判斷打開或關閉執(zhí)行電路。
DS18B20采用單線接口方式, 僅需一根口線與單片機相連, 無需接口電路。電路結構簡單、測量信號溫差小, 在諸多領域的溫度測量及控制儀器、測控系統(tǒng)和大型設備中有著非常廣泛的應用。
1.2鍵盤電路
本系統(tǒng)采用非編碼鍵盤電路, 硬件電路由接口電路、按鍵及鍵盤掃描程序等部分組成[4], 有4個按
圖1 鍋爐溫度控制系統(tǒng)原理圖
1.3顯示電路
顯示電路采用LCD1602作為顯示模塊, 其主要功能是顯示水位的上下限值、當前水位、預先設定的溫度報警值和當前采集的溫度值[5]。其中: VDD接5 V電源, 用于LCD液晶顯示芯片; VEE串接1.8 k?電阻,用于調節(jié)LCD液晶顯示芯片字符的亮度, 阻值越大, LCD液晶顯示越模糊。
1.4執(zhí)行電路
單片機從P3.0通過TIP127導通和截止來控制過零光耦的導通和關斷, 實現控制電熱器開關。當檢測溫度未達到設定值時, P3.0發(fā)送低電平使TIP127飽和導通, 從而使光耦導通, 電熱器接通電源, 執(zhí)行加熱功能[6]。
當水溫上升到設定值時, P3.0發(fā)送高電平使TIP127進入截止狀態(tài), 從而光耦停止工作, 使電源與電熱器斷開, 電熱器停止工作。為了應對突發(fā)狀況還增設了手動按鍵開關, 按下加熱, 反之停止加熱。
1.5報警電路
報警電路主要由蜂鳴器、三極管組成。系統(tǒng)工作時單片機復位[7], 將P1.0置0, 保證不產生誤操作。當檢測到的溫度超過或低于用戶設定的溫度上/下限值時, 程序將Pl.0置1, 三極管導通, 蜂鳴器開始發(fā)聲。當檢測到的溫度比設定的下限值低得越來越多時, 蜂鳴聲越來越急促, 提醒用戶做出正確操作, 然后繼續(xù)監(jiān)視變化是否超出限定值[8]。
系統(tǒng)軟件設計采用了模塊化的程序設計方式[9], 包括主程序、顯示子程序、溫度子程序、報警子程序等。程序流程如圖2所示。
系統(tǒng)進入執(zhí)行時, 單片機復位, 先對鍋爐水位進行檢測, 與設定的水位上下限進行比較判斷, 然后按返回條件進行相應處理。當鍋爐水位符合條件時, 再對鍋爐的水溫進行檢測, 如果檢測到的溫度高于上限值, 系統(tǒng)報警, 同時停止加熱器工作; 若低于下限值,系統(tǒng)報警, 使光耦合導通接通加熱電路, 進行加熱工作。系統(tǒng)正常工作的前提是保證鍋爐的水位位于正常范圍之內, 避免因鍋爐空腹運行, 燒壞設備, 造成安全事故[10]。
圖2 主程序流程圖
運用Proteus仿真軟件和編程軟件Keil進行系統(tǒng)仿真。系統(tǒng)的調試與仿真分為3類:水溫正常工作范圍; 水溫低于設定下限值;水溫高于設定的上限值。
虛擬示波器的A端接單片機P3.0輸出的信號, 控制加熱電路的導通與關斷; B端接入加熱回路反饋過來的電壓波形, 用來觀察執(zhí)行電路是否處于加熱狀態(tài); C端接單片機Pl.0輸出的信號, 控制報警電路的工作狀態(tài)。如圖3所示, 此時的狀態(tài)是水溫處于正常工作狀態(tài)范圍之內, 圖中 A、B、C三個輸出波形端均無變化, 加熱電路和報警都不工作。
當水溫低于設定的下限值時, 加熱電路開始加熱(虛擬示波器第1個波形A), 報警電路報警(示波器第3個波形C), 水溫越偏離下限值, 報警電路發(fā)出的報警聲音越急促, 加熱電路的加熱功率越大。其仿真圖如圖4和圖5所示。
當水溫高于設定的上限值時, 加熱電路停止工作(虛擬示波器第1個波形A), 報警電路同時報警(虛擬示波器第3個波形C)。其仿真圖如圖6所示。
圖3 水溫處于正常工作范圍內仿真圖
圖4 溫度低于下限值10 ℃仿真圖
圖5 溫度低于下限值25 ℃仿真圖
圖6 水溫高于設定上限值時的仿真圖
本文從目前鍋爐溫度控制系統(tǒng)所存在測溫不穩(wěn)定、線性偏差較大等問題出發(fā), 分析了當前鍋爐溫度控制系統(tǒng)的特點, 設計了新的鍋爐溫度控制系統(tǒng)。本系統(tǒng)在溫度偏離后回到穩(wěn)態(tài)的時間較短, 超調量小,穩(wěn)定精度高, 實現了無偏差跟蹤。系統(tǒng)功能完善, 并且具有較好的穩(wěn)定性, 具有較好的實用價值。
[1] 何道清, 張禾, 諶海云. 傳感器與傳感技術[M]. 3版. 北京: 科學出版社, 2014: 6-9.
[2] 史玲. 基于單片機的溫度控制系統(tǒng)的研究與實現[J]. 電子制作, 2014(9): 9-10.
[3] 張小明. 探究基于單片機的溫度控制系統(tǒng)[J]. 電子制作, 2015, 77(1): 271-272.
[4] 霍坤明. 基于單片機的溫度控制系統(tǒng)設計[J]. 企業(yè)導報, 2015, 22(6): 15-17.
[5] 賀爭漢. 基于51單片機的溫度控制系統(tǒng)[J]. 黑龍江科技信息, 2015, 42(16): 145.
[6] 呂棟騰. 一種電加熱爐溫度控制系統(tǒng)的設計[J]. 鍛壓裝備與制造技術, 2015, 20(6): 71-73.
[7] 趙蘭, 張美琪, 王從清. STM32在溫度控制系統(tǒng)中的設計與應用[J]. 信息與電腦, 2015, 58(12): 76-78.
[8] 張英壽. 基于PLC控制的加熱爐溫度控制系統(tǒng)[J]. 電子技術, 2012, 88(7): 73-75.
[9] 安文亮. 加熱爐溫度控制系統(tǒng)[J]. 價值工程, 2014, 48(7): 42-43.
[10] 陳永祿. 基于單片機的溫度控制系統(tǒng)設計與實現[J]. 現代電子技術, 2015, 68(2): 73-76.
(責任編校: 劉剛毅)
Design of boiler temperature control system based on DS18B20 temperature sensor
Wang Lijuan, Zhang Jiansheng, Huang Jianchun
(College of Electrical and Information Engineering, Hunan University Arts and Science, Changde 415000, China)
Aiming at the questions of traditional temperature control system, a design of the control system of temperature based on DS18B20 is introduced. The hardwares of system which include temperature detection circuit, display circuit, keyboard circuit, the implementation of the circuit and alarm circuit design. Simulation of the system is debugged. Simulation results confirm that the system’s operation is reliable.
DS18B20 temperature sensor; temperature control; single chip microcomputer
TP 273
1672-6146(2016)03-0045-03
10.3969/j.issn.1672-6146.2016.03.010
王麗娟, 6372041@qq.com。
2016-04-18
湖南省科技廳資助項目(2012GK3123); 湖南省教育廳項目(10C1004); 常德市科技局項目(2011ZD04); 湖南文理學院科研項目(15YB01); 湖南文理學院2016年大學生研創(chuàng)項目(湘教通〔2016〕96號)。鍵, 分別為S3(用于設置溫度報警的上下限)、S4(用于升高溫度)、S5(用于降低溫度)和S7(確定鍵)。