基于PID算法和89C52單片機(jī)的溫度控制系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引 言
溫控技術(shù)無論是在工業(yè)生產(chǎn),還是日常生活中都起著非常重要的作用。在冶金、石油、化工、電力和現(xiàn)代農(nóng)業(yè)等行業(yè),溫度是極為重要而又普遍的熱工參數(shù)之一,在普通家庭里熱水器、電飯煲、電烤箱等依賴于溫控技術(shù)的家電設(shè)備也是必不可少??梢哉f溫度控制技術(shù)無處不在。
常規(guī)的溫度控制方法以設(shè)定溫度為臨界點(diǎn),超出設(shè)定允許范圍即進(jìn)行溫度調(diào)控:低于設(shè)定值就加熱,反之就停止或降溫。這種方法實(shí)現(xiàn)簡(jiǎn)單、成本低,但控制效果不理想,控制溫度精度不高、容易引起震蕩,達(dá)到穩(wěn)定點(diǎn)的時(shí)間也長(zhǎng),因此,只能用在精度要求不高的場(chǎng)合。
而采用PID算法進(jìn)行溫度控制,它具有控制精度高,能夠克服容量滯后的特點(diǎn),特別適用于負(fù)荷變化大、容量滯后較大、控制品質(zhì)要求又很高的控制系統(tǒng)。
單片機(jī)作為控制系統(tǒng)中必不可少的部分,在各個(gè)領(lǐng)域得到了廣泛的應(yīng)用,用單片機(jī)進(jìn)行實(shí)時(shí)系統(tǒng)數(shù)據(jù)處理和控制,保證系統(tǒng)工作在最佳狀態(tài),提高系統(tǒng)的控制精度,有利于提高系統(tǒng)的工作效率。本系統(tǒng)采用單片機(jī)編程實(shí)現(xiàn)PID算法進(jìn)行溫度控制。
1 PID控制的原理和特點(diǎn)
在工程實(shí)際中,應(yīng)用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例、積分、微分控制,簡(jiǎn)稱PID控制,又稱PID調(diào)節(jié)。PID控制器以其結(jié)構(gòu)簡(jiǎn)單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。當(dāng)被控對(duì)象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型,控制理論的其他技術(shù)也難以采用,系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗(yàn)和現(xiàn)場(chǎng)調(diào)試來確定時(shí),應(yīng)用PID控制技術(shù)最為方便。
PID控制器的參數(shù)整定是控制系統(tǒng)設(shè)計(jì)的核心內(nèi)容。它是根據(jù)被控過程的特性確定PID控制器的比例系數(shù)、積分時(shí)問和微分時(shí)間的大小。PID控制器參數(shù)整定的方法概括起來有兩大類:一是理論計(jì)算整定法。它主要是依據(jù)系統(tǒng)的數(shù)學(xué)模型,經(jīng)過理論計(jì)算確定控制器參數(shù)。這種方法所得到的計(jì)算數(shù)據(jù)未必可以直接用,還必須通過工程實(shí)際進(jìn)行調(diào)整和修改。二是工程整定方法,它主要依賴工程經(jīng)驗(yàn),直接在控制系統(tǒng)的試驗(yàn)中進(jìn)行,且方法簡(jiǎn)單、易于掌握,在工程實(shí)際中被廣泛采用。
PID一般算式及模擬控制規(guī)律如式(1)所示:
式中:u(t)為控制器的輸出;e(t)為偏差,即設(shè)定值與反饋值之差;KC為控制器的放大系數(shù),即比例增益;TI為控制器的積分常數(shù);TD為控制器的微分時(shí)間常數(shù)。PID算法的原理即調(diào)節(jié)KC,TI,TD三個(gè)參數(shù)使系統(tǒng)達(dá)到穩(wěn)定。
由于計(jì)算機(jī)控制是一種采樣控制,它只能根據(jù)采樣時(shí)刻的偏差值計(jì)算控制量。因此在計(jì)算機(jī)控制系統(tǒng)中,必須首先對(duì)式(1)進(jìn)行離散化處理,用數(shù)字形式的差分方程代替連續(xù)系統(tǒng)的微分方程,此時(shí)積分項(xiàng)和微分項(xiàng)可用求和及增量式表示:
將式(2)和式(3)代入式(1),則可得到離散的PID表達(dá)式:
式中:△t=T為采樣周期,必須使T足夠小,才能保證系統(tǒng)有一定的精度(采樣定理);E(K)為第K次采樣時(shí)的偏差值;E(K-1)為第K-1次采樣時(shí)的偏差值;P(K)為第K次采樣是調(diào)節(jié)器的輸出。
2 系統(tǒng)的硬件構(gòu)成
本系統(tǒng)由傳感器A/D采樣輸入、單片機(jī)控制、人機(jī)交互、控制信號(hào)輸出四部分組成,其中溫度傳感部分由測(cè)試采樣電路實(shí)現(xiàn),人機(jī)交互由矩陣鍵盤和LCD液晶屏構(gòu)成,PID控制算法由89C52單片機(jī)實(shí)現(xiàn),控制信號(hào)輸出部分則由功率放大和開關(guān)控制電路組成。系統(tǒng)框圖如圖1所示。
3 主程序流程
軟件程序是本控制系統(tǒng)的核心,它包括從溫度采樣到信號(hào)輸出的整個(gè)流程控制,其示意圖如圖2所示。
程序功能主要由以下的幾部分組成:
(1)初始化:設(shè)定各參數(shù)的初始值,設(shè)定各中斷及定時(shí)器。
(2)接收/發(fā)射:此部分程序主要完成數(shù)據(jù)的控制及顯示,主要通過89C52單片機(jī)的全雙工串行口完成和鍵盤部分的雙向通信。
(3)PC機(jī)通信:此部分完成與微機(jī)控制接口RS 232的連接及通信的控制。
(4)數(shù)值轉(zhuǎn)換子程序:由于主程序中用到了很多的數(shù)值轉(zhuǎn)換及數(shù)值的運(yùn)算(如十進(jìn)制轉(zhuǎn)換成十六進(jìn)制、雙字節(jié)與單字節(jié)的除法運(yùn)算等),為了程序調(diào)用的方便,特將其編寫成子程序的形式。
(5)PID算法。
4 實(shí)驗(yàn)測(cè)試
系統(tǒng)的性能與穩(wěn)定度需要通過具體實(shí)驗(yàn)測(cè)試完成?,F(xiàn)用1 kW的電爐將電熱杯中的1 L清水進(jìn)行加熱。
觀測(cè)設(shè)定值和實(shí)測(cè)值之間的誤差(當(dāng)水溫達(dá)到穩(wěn)定時(shí)的值),計(jì)算絕對(duì)誤差和相對(duì)誤差,見表1。
設(shè)定溫度為50℃,每隔30 s記錄實(shí)測(cè)溫度,如表2所示。
從表2中的數(shù)據(jù)可知,系統(tǒng)運(yùn)行5 min時(shí)基本達(dá)到穩(wěn)定。
5 結(jié) 語
由實(shí)驗(yàn)結(jié)果可以看出,系統(tǒng)的誤差基本穩(wěn)定在±0.3℃,可見系統(tǒng)的精度很好。此外,系統(tǒng)運(yùn)行5 min時(shí)溫度基本達(dá)到穩(wěn)定,穩(wěn)定所需時(shí)間較短??梢钥闯?,基于PID算法的單片機(jī)溫度控制系統(tǒng)具有較高的精確度和穩(wěn)定性,在溫度調(diào)節(jié)階段平衡溫度時(shí)間較短。因此本系統(tǒng)可以應(yīng)用于各種對(duì)精度要求較高的溫度控制場(chǎng)合。