《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 數字PID控制算法在溫控系統(tǒng)中的應用
數字PID控制算法在溫控系統(tǒng)中的應用
魏英智 丁紅偉 張 琳 徐寶玉 李海燕
摘要: 在實現(xiàn)定時溫控系統(tǒng)的基礎上,,為實現(xiàn)對溫度的精確控制,,提出根據溫度傳感器DSl8B20的感溫原理,,利用AT89S52的定時器實現(xiàn)脈寬調制(PWM)功能,,采用數字PID控制,,討論了一種恒溫控制的數字PID控制算法,,并通過C51程序實現(xiàn)了單片機的控制系統(tǒng),。使用結果表明,,該系統(tǒng)具有控制效果好,,精度高,,超調量小等優(yōu)點,且各項性能指標均符合要求,。
Abstract:
Key words :

溫度控制對于大型工業(yè)和日常生活等領域都具有廣闊的應用前景,。很多應用領域,需要精度較高的恒溫控制,,例如,,根據外界變化,隨時調節(jié)相應的LED亮度以達到所需色溫值,,可以實現(xiàn)更好的照明和裝飾效果,。在連續(xù)控制系統(tǒng)中,對象為一階和二階慣性環(huán)節(jié)或同時帶有滯后時間不大的滯后環(huán)節(jié)時,,PID控制是一種較好的控制方法,。本文主要采用數字PID控制,通過單片機PID控制算法的程序實現(xiàn),。

1 數字式定時溫控系統(tǒng)
   
本文研制的數字式定時溫控系統(tǒng)主要完成數據采集,,溫度、定時的顯示,,溫度控制,,溫度定時的設定以及報警等功能。核心控制器由單片機完成,采用數字PID控制算法進行過程控制,。加熱器件選用熱慣性小,,溫度控制精度高,速度快的電熱膜,,由單片機輸出通斷率控制信號進行控制,。硬件框圖如圖1所示。



2 PWM功能的實現(xiàn)
    AT89S52內部有3個16位定時器:TO,,T1,,T2。用定時器T2實現(xiàn)PWM(脈寬調制)方式來對加熱器件進行溫度控制,。設置T2CON中C/#T2=O(定時方式),,CP/#RL2=1且EXEN2=O時,T2是16位定時器,。當計數溢出時,會設置T2CON中的TF2位,,進而觸發(fā)相關中斷,。用單片機系統(tǒng)實現(xiàn),必須首先完成兩個任務:首先是產生基本的PWM周期信號,;其次是脈寬的調整,,即單片機模擬PWM信號的輸出,并且調整占空比,。具體的設計原理:若想讓它的負脈沖為2 ms,,則正脈沖為20-2=18 ms,所以開始時在控制口發(fā)送低電平,,然后設置定時器在2 ms后發(fā)生中斷,,中斷發(fā)生后,在中斷程序里將控制口改為高電平,,并將中斷時間改為18 ms,,再過18 ms進入下一次定時中斷,再將控制口改為低電平,,并將定時器初值改為2 ms,,等待下次中斷到來,如此往復實現(xiàn)PWM信號輸出,。用修改定時器中斷初值的方法巧妙形成了脈沖信號,,調整時間段的寬度便可實現(xiàn)脈寬調整。實現(xiàn)其軟件流程如圖2所示,。
    設n為定時器T2的初值,,fi為單片機的系統(tǒng)時鐘,本系統(tǒng)中fi=11.059 2 MHz定時方式下TL2寄存器每個機器周期(即12個晶振周期)增加1。這時PWM脈沖信號的“低”電平寬度為:
   
    通過改變定時器T2初值n,,即可改變“低”電平的寬度tPWM-L,,從而控制加熱元件的加熱時間,達到對溫度進行控制的目的,。當n=65 536時,,P2.7引腳輸出電平一直保持為“高”,加熱元件一直處于斷電狀態(tài),;n=0時,,P2.7引腳輸出電平一直保持為“低”,加熱元件一直處于通電加熱狀態(tài),。單片機根據從DSl8B20讀取的溫度值來確定n值,,即確定加熱元件的加熱時間。

3 恒溫控制算法
    PID基本算法是這樣的:控制器的輸出與控制器的輸入(誤差)成正比,,與輸入的積分成正比,,與輸入的微分成正比,為三個分量之和,,其連續(xù)表達為:
   
    式中:TD為微分時間,;e為測量值與給定值之間的偏差;Tl為積分時間,;Kp為調節(jié)器的放大系數,。
    對式(2)兩邊進行拉氏變換,可以得到PID調節(jié)器的傳遞函數為:
   
    采用不同的方法對式(3)的D(s)離散化,,就可以得到數字PID控制器的不同算法,。用矩形法數值積分代替式(3)中的積分項,對導數用后向差分逼近,,得到:
   
    式中:uo是由式(2)中的不定積分變?yōu)槭?4)中的定積分所具有的積分常數,;T為采樣周期。式(4)就是數字PID控制器位置式算法的表達式,,其輸出控制量uk對應于系統(tǒng)的輸出(位置)是全量輸出,。
    由式(4)可推算出控制量的增量為:
   
    式(5)就是數字PID控制器增量式算法的表達式,其輸出為系統(tǒng)的△uk,。
    采用增量式算法,,系統(tǒng)中需增加一個積分裝置,但在本恒溫系統(tǒng)中,,控制對象本身就具有積分作用,,因此無需加積分裝置。
    與位置式算法相比,,在增量式算法中,,計算誤差對控制量影響小,。這是因為位置式算法控制器輸出的是全量,每次輸出均與過去的所有狀態(tài)有關,。計算機的位數是有限的,,當累加結果產生上溢出時,丟失一部分控制量,;當采樣周期短,,誤差很小時,計算機認為是零,,不進行累加,,這兩種情況均會產生累加誤差。而增量式算法在計算△uk時只用到最近的三次采樣值,,以前的狀態(tài)不影響本次輸出,。
    為簡化計算機的運算,把式(5)改為下面的形式:
   
    可以根據式(6)編寫程序,,由計算機實現(xiàn),。Kp,TD,,TI,,T由參數整定確定。對于簡單系統(tǒng),,可以采用理論計算的方法確定這些參數,但是稍微復雜一些的系統(tǒng),,采用理論計算的方法就困難了,。因此幾乎都是用工程的方法對參數進行整定。調節(jié)器參數的整定是一項繁瑣而又費時的工作,,因此,,近年來國內外在數字PID調節(jié)器參數的工程整定方面做了大量的研究工作,歸一參數的整定法是一種簡易的整定法,。
    根據大量實際經驗的總結,,人為設定約束條件,以減少獨立變量的個數,,例如?。?br />    
    式中:Ts是純比例控制式的臨界振蕩周期。
    將式(7)代入式(6)中,,可得數字PID控制器的差分方程為:
   
    對比式(6)和式(8)可知,,對4個參數的整定簡化成了對一個參數Kp的整定,使問題明顯地簡化了,。
    采樣周期T的取值,,從數字PID控制器對連續(xù)PID控制器的模擬精度考慮,,采樣周期越小越好,但采樣周期小,,控制器占用計算機的時間就長,,增加了系統(tǒng)的成本。因此采樣周期的選擇應綜合考慮各方面因素,,選取最優(yōu)值,。
    在恒溫控制系統(tǒng)中,控制輸出為定時器T2初值n(O≤n≤65 536),,誤差為溫度設定值Tset與DSl8B20檢測值之差Tread,。因為電阻絲的功率是有限的,初始溫度低于溫度設定值Tset較大時,,可以不用數字PID控制,。可以根據電阻絲的功率設定一個誤差值emax,,當e>emax時,,一直加熱,輸出n=O,;當e<0時,,停止加熱,輸出為n=65 536,。只有當O≤e≤emax時,,才用數字PID控制。
    為保證溫度控制的實時性,,根據文獻,,溫度控制程序采用定時中斷方式,定時長為采樣周期T,,且中斷優(yōu)先級設得比其他中斷高,,用增量式算法其程序流程圖如圖3所示。



4 恒溫控制結果
   
根據溫度控制精度和采樣時間的要求,,本設計對DSl8B20的溫度轉換結果選擇12位,,采樣周期定為T=O.408 s。當加熱元件功率選用100 W,,溫度設定值Tset=30℃時,,用歸一參數法整定數字PID控制器的參數,當參數Kp=150時,,得到數字PID控制曲線如圖4所示,。



5 結語
   
在介紹利用AT89S52單片機實現(xiàn)PWM功能的基礎上,討論了數字PID控制算法對恒溫控制的應用,。從控制結果來看,,這種控制方法可以得到較理想的控制效果,,溫度波動均可控制在±O.125℃之內。該技術已應用于定時控溫發(fā)酵器,、保健墊等產品中,,運行良好,獲得了良好的社會效益和經濟效益?,F(xiàn)正在嘗試用于無影照明系統(tǒng)的色溫控制,,實現(xiàn)更好的無影照明效果。

此內容為AET網站原創(chuàng),,未經授權禁止轉載,。