楊明 楊華 王洋
摘? 要:文章介紹了基于STC15F2K60S2單片機(jī)的恒溫箱控制系統(tǒng)設(shè)計(jì)及其模型建立。由溫度傳感器DS18B20采集溫度信號(hào),傳送給單片機(jī)對(duì)信號(hào)進(jìn)行處理,把數(shù)據(jù)傳送給LCD1602顯示,采用PWM方式的PID控制算法,調(diào)節(jié)風(fēng)扇轉(zhuǎn)速來(lái)散熱從而達(dá)到恒溫的目的。實(shí)物恒溫箱模型主要用于本院學(xué)生實(shí)驗(yàn)教學(xué)。
關(guān)鍵詞:恒溫箱;溫度傳感器;PID;PWM
中圖分類號(hào):TP273 文獻(xiàn)標(biāo)志碼:A? ? ? ?文章編號(hào):2095-2945(2019)34-0037-03
Abstract: This paper introduces the design of the constant temperature box control system based on STC15F2K60S2 microcontroller and its model establishment. Temperature signal is collected by temperature sensor DS18B20 and transmitted to single chip microcomputer to process the signal. The data is transmitted to LCD1602 for display. PID control algorithm in PWM mode is adopted to adjust the fan speed to dissipate heat so as to achieve the purpose of constant temperature. The constant temperature box model is used in the experimental teaching of the students in our college.
Keywords: constant temperature box; temperature sensor; PID; PWM
1 概述
計(jì)算機(jī)控制技術(shù)是我院自動(dòng)化專業(yè)和測(cè)控技術(shù)與儀器專業(yè)的一門專業(yè)核心課程,課程的特點(diǎn)是實(shí)踐性強(qiáng)、與專業(yè)基礎(chǔ)課密切相關(guān),涉及的基礎(chǔ)理論和知識(shí)面比較廣,包括自動(dòng)控制技術(shù)、計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)與通信技術(shù)、檢測(cè)與傳感器技術(shù)、顯示技術(shù)、電子技術(shù)等[1-3],故該課程的學(xué)習(xí)難度較大。為了提高教學(xué)質(zhì)量,使學(xué)生更好的掌握計(jì)算機(jī)控制系統(tǒng)的硬件和軟件的基礎(chǔ)知識(shí)及其應(yīng)用技術(shù),進(jìn)行教學(xué)改革,提出了項(xiàng)目式教學(xué)方法[4,5]。故設(shè)計(jì)此恒溫箱控制系統(tǒng),并以此為例,將其分解進(jìn)行模塊化授課,并建立其數(shù)學(xué)模型,以此為基礎(chǔ)來(lái)驗(yàn)證學(xué)生自己編寫的控制算法。
2 恒溫箱控制系統(tǒng)硬件設(shè)計(jì)
恒溫箱控制系統(tǒng)硬件主要由控制器、溫度檢測(cè)電路、按鍵電路、顯示電路、聲光報(bào)警電路和加散熱模塊等組成,其系統(tǒng)框圖如圖1所示。
2.1 主控電路設(shè)計(jì)
核心器件主控制器采用的是中國(guó)深圳宏晶STC15F2K60S2單片機(jī),是一種增強(qiáng)型的8051單片機(jī),是新型的FLASH單片機(jī),與傳統(tǒng)的8051系列單片機(jī)兼容,在片內(nèi)資源、操作性能和運(yùn)行速度上做了很大的改進(jìn),同時(shí)還具有集成度高,系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,體積小,可靠性高,處理能力強(qiáng),速度快,具有超低功耗等特點(diǎn)[6]。溫度采集采用的是數(shù)字溫度傳感器DS18B20,采用單總線協(xié)議,即與單片機(jī)接口僅需占用一個(gè)I/O端口,其內(nèi)部集成A/D轉(zhuǎn)換器,無(wú)需任何外接元件,可直接將溫度轉(zhuǎn)化成串行數(shù)字信號(hào)供處理器處理,達(dá)到溫度采集的目的[7-9]。按鍵電路采用4個(gè)獨(dú)立按鍵,用來(lái)設(shè)置被控溫度給定值和PID參數(shù)。顯示電路采用液晶顯示屏LCD1602,顯示當(dāng)前溫度、設(shè)定溫度以及PID參數(shù)和恒溫箱開機(jī)運(yùn)行時(shí)間等。恒溫箱控制系統(tǒng)的主控電路如圖2所示。
2.2 風(fēng)扇電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)
加熱裝置由4個(gè)白熾燈組成,分成2組分別控制通斷,來(lái)實(shí)現(xiàn)對(duì)恒溫箱的恒定加熱。散熱裝置由4個(gè)風(fēng)扇組成,分別裝在恒溫箱的4個(gè)箱壁上,通過(guò)PWM(脈寬調(diào)制)技術(shù)來(lái)調(diào)節(jié)風(fēng)扇轉(zhuǎn)速,達(dá)到恒溫的目的。IR2104是一種高性能的半橋驅(qū)動(dòng)芯片,該芯片內(nèi)部是采用被動(dòng)式泵荷升壓原理,其內(nèi)部自帶死區(qū)時(shí)間設(shè)置[10]。在電路的應(yīng)用過(guò)程中,利用單片機(jī)輸出PWM信號(hào),用于控制上下MOS管的導(dǎo)通與截止,當(dāng)PWM信號(hào)翻轉(zhuǎn)時(shí),芯片輸出電平發(fā)生翻轉(zhuǎn),上下MOS輪流導(dǎo)通。其風(fēng)扇電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)如圖3所示。
3 恒溫箱控制系統(tǒng)軟件設(shè)計(jì)
恒溫箱溫度計(jì)算機(jī)控制系統(tǒng)在完成硬件設(shè)計(jì)之后,以此為基礎(chǔ)開始軟件設(shè)計(jì),軟件設(shè)計(jì)將主要是對(duì)各個(gè)模塊進(jìn)行全面的使用與合理的配置,進(jìn)而保證系統(tǒng)的實(shí)效性。系統(tǒng)主程序流程圖如圖4所示。系統(tǒng)上電后處于待機(jī)狀態(tài),按開機(jī)鍵后首先進(jìn)行系統(tǒng)初始化,其包括設(shè)置RTC實(shí)時(shí)時(shí)鐘、LCD1602顯示初始化、按鍵初始化、PID參數(shù)初始化、PWM參數(shù)初始化等。此后進(jìn)行按鍵掃描和液晶屏顯示,采用中斷方式來(lái)實(shí)現(xiàn)每隔1秒對(duì)溫度的實(shí)時(shí)采集、偏差計(jì)算、PID控制算法計(jì)算、PWM輸出控制電風(fēng)扇轉(zhuǎn)速。
4 實(shí)物實(shí)現(xiàn)
根據(jù)設(shè)計(jì)思想,制作出實(shí)物,恒溫箱主體及主控制器如圖5所示。
使用時(shí)當(dāng)接通電源,顯示屏就會(huì)顯示出設(shè)定溫度和當(dāng)前箱內(nèi)的溫度,通過(guò)功能鍵和上升、下降兩個(gè)按鍵,可以來(lái)設(shè)置給定溫度和PID控制參數(shù)。根據(jù)設(shè)定溫度與當(dāng)前溫度的偏差大小,采用PID控制算法、通過(guò)PWM調(diào)制、控制電風(fēng)扇的轉(zhuǎn)速,從而達(dá)到恒溫的目的。表1列出了恒溫箱在工作了15分鐘后恒溫箱在3分鐘內(nèi)的溫度波動(dòng)情況,10秒鐘測(cè)量一個(gè)數(shù)據(jù)。可見(jiàn)這3分鐘內(nèi)其溫度波動(dòng)極值為0.3℃,此恒溫箱控制系統(tǒng)控制精度可達(dá)±0.2℃。
5 數(shù)學(xué)模型的建立