摘 要:溫度控制系統廣泛應用于工業生產中,但目前的溫度控制系統很多不能達到很好的效果。單片機系統功能強大、使用靈活,可以實現較為精準的控制;而PID算法實現一種模糊控制,可調試性強;以89C52單片機為控制核心的PID溫度控制能使系統具有較高的精確度和穩定性。通過原理分析、軟硬件設計以及實驗測試,表明該溫度系統非常穩定并且精確,可廣泛地應用于各類溫控場合。
關鍵詞:PID算法;溫度控制;89C52單片機;參數整定
中圖分類號:TP368.1 文獻標識碼:A
文章編號:1004-373X(2009)21-216-03
Temperature Control System Based on PID and 89C52
ZHANG Yanyan
(Anhui Vocational College of Electronics & Information Technology,Bengbu,233000,China)
Abstract:The temperature control system is used widly in industry.But now the temperature control system is imperfect in industry.The system based on single chip computer has powerful function and easy to use,it can realize accurate control.PID-algorithm can realize fuzzy control.The system basd on PID-algorithm can be tested again and again.So the temperatuer system based on PID control and 89C52 single chip computer is very precise and steady.The theory,design and experiments show that the system can be used widely.
Keywords:PID-algorithm; temperature control;89C52SCM;parameter tuning
0 引 言
溫控技術無論是在工業生產,還是日常生活中都起著非常重要的作用。在冶金、石油、化工、電力和現代農業等行業,溫度是極為重要而又普遍的熱工參數之一,在普通家庭里熱水器、電飯煲、電烤箱等依賴于溫控技術的家電設備也是必不可少。可以說溫度控制技術無處不在。
常規的溫度控制方法以設定溫度為臨界點,超出設定允許范圍即進行溫度調控:低于設定值就加熱,反之就停止或降溫。這種方法實現簡單、成本低,但控制效果不理想,控制溫度精度不高、容易引起震蕩,達到穩定點的時間也長,因此,只能用在精度要求不高的場合。而采用PID算法進行溫度控制[6],它具有控制精度高,能夠克服容量滯后的特點,特別適用于負荷變化大、容量滯后較大、控制品質要求又很高的控制系統。
單片機作為控制系統中必不可少的部分,在各個領域得到了廣泛的應用,用單片機進行實時系統數據處理和控制,保證系統工作在最佳狀態,提高系統的控制精度,有利于提高系統的工作效率[7]。
本系統采用單片機編程[8]實現PID算法進行溫度控制。
1 PID控制的原理和特點[9]
在工程實際中,應用最為廣泛的調節器控制規律為比例、積分、微分控制,簡稱PID控制,又稱PID調節。PID控制器以其結構簡單、穩定性好、工作可靠、調整方便而成為工業控制的主要技術之一。當被控對象的結構和參數不能完全掌握,或得不到精確的數學模型,控制理論的其他技術也難以采用,系統控制器的結構和參數必須依靠經驗和現場調試來確定時,應用PID控制技術最為方便。
PID控制器的參數整定[9]是控制系統設計的核心內容。它是根據被控過程的特性確定PID控制器的比例系數、積分時間和微分時間的大小。PID控制器參數整定的方法概括起來有兩大類:一是理論計算整定法。它主要是依據系統的數學模型,經過理論計算確定控制器參數。這種方法所得到的計算數據未必可以直接用,還必須通過工程實際進行調整和修改。二是工程整定方法,它主要依賴工程經驗,直接在控制系統的試驗中進行,且方法簡單、易于掌握,在工程實際中被廣泛采用。
PID一般算式及模擬控制規律如式(1)所示:
u(t)=KCe(t)+1TI∫t0e(t)dt+TDde(t)dt
(1)
式中:u(t)為控制器的輸出;e(t)為偏差,即設定值與反饋值之差;KC為控制器的放大系數,即比例增益;TI為控制器的積分常數;TD為控制器的微分時間常數。PID算法的原理即調節KC,TI,TD三個參數使系統達到穩定。
由于計算機控制是一種采樣控制,它只能根據采樣時刻的偏差值計算控制量。因此在計算機控制系統中,必須首先對式(1)進行離散化處理,用數字形式的差分方程代替連續系統的微分方程,此時積分項和微分項可用求和及增量式表示:
de(t)dt霦(K)-E(K-1)Δt=E(K)-E(K-1)T
(2)
∫n0e(t)dt=∑nj=0E(j)Δt=T∑nj=0E(j)
(3)
將式(2)和式(3)代入式(1),則可得到離散的PID表達式:
P(K)=KP{E(K)+TTI∑kj=0E(j)+
TDT[E(K)-E(K-1)]}
(4)
式中:Δt=T為采樣周期,必須使T足夠小,才能保證系統有一定的精度(采樣定理);E(K)為第K次采樣時的偏差值;E(K-1)為第K-1次采樣時的偏差值;P(K)為第K次采樣是調節器的輸出。
2 系統的硬件構成
本系統由傳感器A/D采樣輸入、單片機控制、人機交互、控制信號輸出四部分組成,其中溫度傳感部分由測試采樣電路實現,人機交互由矩陣鍵盤和LCD液晶屏[7]構成,PID控制算法由89C52單片機實現,控制信號輸出部分則由功率放大和開關控制電路組成[8]。系統框圖如圖1所示。
圖1 溫控系統框圖
3 主程序流程
軟件程序是本控制系統的核心,它包括從溫度采樣到信號輸出的整個流程控制,其示意圖如圖2所示。
圖2 控制系統流程圖
程序功能主要由以下的幾部分組成:
(1) 初始化:設定各參數的初始值,設定各中斷及定時器。
(2) 接收/發射:此部分程序主要完成數據的控制及顯示,主要通過89C52單片機的全雙工串行口完成和鍵盤部分的雙向通信。
(3) PC機通信:此部分完成與微機控制接口RS 232的連接及通信的控制。
(4) 數值轉換子程序:由于主程序中用到了很多的數值轉換及數值的運算(如十進制轉換成十六進制、雙字節與單字節的除法運算等),為了程序調用的方便,特將其編寫成子程序的形式。
(5) PID算法。
4 實驗測試
系統的性能與穩定度需要通過具體實驗測試完成[10]。
現用1 kW的電爐將電熱杯中的1 L清水進行加熱。
觀測設定值和實測值之間的誤差(當水溫達到穩定時的值),計算絕對誤差和相對誤差,見表1。
表1 誤差分析表
序號設定溫度 /℃實測溫度 /℃絕對誤差 /℃相對誤差 /%
135.335.300
240.240.1-0.10.24
345.045.30.30.66
460.060.50.50.83
574.073.4-0.40.60
681.081.20.20.25
設定溫度為50 ℃,每隔30 s記錄實測溫度,如表2所示。
表2 溫度穩定度關系表(設定溫度50 ℃)
測量時間 /min實測溫度 /℃測量時間 /min實測溫度 /℃
0.535.54.051.1
1.037.04.550.6
1.540.35.049.8
2.043.55.550.5
2.548.16.050.2
3.550.36.550.1
從表2中的數據可知,系統運行5 min時基本達到穩定。
5 結 語
由實驗結果可以看出,系統的誤差基本穩定在±0.3 ℃,可見系統的精度很好。此外,系統運行5 min時溫度基本達到穩定,穩定所需時間較短。可以看出,基于PID算法的單片機溫度控制系統具有較高的精確度和穩定性,在溫度調節階段平衡溫度時間較短。因此本系統可以應用于各種對精度要求較高的溫度控制場合。
參考文獻
[1]劉軍,李建偉,李慧琴.基于模糊PID的通用中檔單片機溫度控制系統設計[J].科學技術與工程,2007(15):3 934-3 937.
[2]劉文慰,葛鎖良.AT89C2051在自適應模糊PID溫度控制器中的應用[J].電子工程師,2004,30(1):20-23.
[3]邢矯健.增強型的STC89C51系列單片機簡介[J].無線電,2006(10):43-44.
[4]李俊婷,石文蘭,高楠.參數自整定模糊PID在溫度控制中的應用[J].無線電工程,2007(7):47-50.
[5]潘笑,高玉玲,康亞娜.基于模糊PID的AT89C2051單片機智能溫度控制系統[J].兵工自動化,2006(5):65-67.
[6]張志良.單片機原理與控制技術[M].北京:機械工業出版社,2005.
[7]張德友,趙志英,涂時亮.單片微型機原理應用與實踐[M].上海:復旦大學出版社,2003.
[8]吳金.8051單片機實踐與應用[M].北京:清華大學出版社,2002.
[9]曾光奇.模糊控制理論與工程應用[M].武漢:華中科技大學出版社,2006.
[10]全國大學生電子設計競賽組委會.全國大學生電子設計競賽獲獎作品精選[M].北京:北京理工大學出版社,2003.
作者簡介 張艷艷 女,1976年出生,安徽蚌埠人,碩士,講師。從事應用電子方面的教學與研究工作。