溫控制的PID算法 及C程序?qū)崿F(xiàn)_第1頁(yè)
溫控制的PID算法 及C程序?qū)崿F(xiàn)_第2頁(yè)
溫控制的PID算法 及C程序?qū)崿F(xiàn)_第3頁(yè)
溫控制的PID算法 及C程序?qū)崿F(xiàn)_第4頁(yè)
溫控制的PID算法 及C程序?qū)崿F(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 溫度控制與PID算法 溫度控制與PID算法j較為復(fù)雜,下面結(jié)合實(shí)際淺顯易懂的闡述一下PID控制理論,將溫度控制及PID算法作一個(gè)簡(jiǎn)單的描述。1 溫度控制的框圖 這是一個(gè)典型的閉環(huán)控制系統(tǒng),用于控制加熱溫區(qū)的溫度(PV)保持在恒定的溫度設(shè)定值(SV)。系統(tǒng)通過溫度采集單元反饋回來(lái)的實(shí)時(shí)溫度信號(hào)(PV)獲取偏差值(EV),偏差值經(jīng)過PID調(diào)節(jié)器運(yùn)算輸出,控制發(fā)熱管的發(fā)熱功率,以克服偏差,促使偏差趨近于零。例如,當(dāng)某一時(shí)刻爐內(nèi)過PCB板較多,帶走的熱量較多時(shí),即導(dǎo)致溫區(qū)溫度下降,這時(shí),通過反饋的調(diào)節(jié)作用,將使溫度迅速回升。其調(diào)節(jié)過程如下: 溫度控制的功率輸出采用脈寬調(diào)制的方法。固態(tài)繼電器SSR的輸

2、出端為脈寬可調(diào)的電壓UOUT 。 當(dāng)SSR的觸發(fā)角觸發(fā)時(shí),電源電壓UAN通過SSR的輸出端加到發(fā)熱管的兩端;當(dāng)SSR的觸發(fā)角沒有觸發(fā)信號(hào)時(shí),SSR關(guān)斷。因此,發(fā)熱管兩端的平均電壓為 Ud(t/T)* UAN=K* UAN 其中K= t/T,為一個(gè)周期T中,SSR觸發(fā)導(dǎo)通的比率,稱為負(fù)載電壓系數(shù)或是占空比,K的變化率在01之間。一般是周期T固定不便,調(diào)節(jié)t, 當(dāng)t在0T的范圍內(nèi)變化時(shí),發(fā)熱管的電壓即在0UAN之間變化,這種調(diào)節(jié)方法稱為定頻調(diào)寬法。下面將要描述的PID調(diào)節(jié)器的算式在這里的實(shí)質(zhì)即是運(yùn)算求出一個(gè)實(shí)時(shí)變化的,能夠保證加熱溫區(qū)在外界干擾的情況下仍能保持溫度在一個(gè)較小的范圍內(nèi)變化的合理的負(fù)載

3、電壓系數(shù)K。 2.溫度控制的兩個(gè)階段 溫度控制系統(tǒng)是一個(gè)慣性較大的系統(tǒng),也就是說,當(dāng)給溫區(qū)開始加熱之后,并不能立即觀察得到溫區(qū)溫度的明顯上升;同樣的,當(dāng)關(guān)閉加熱之后,溫區(qū)的溫度仍然有一定程度的上升。另外,熱電偶對(duì)溫度的檢測(cè),與實(shí)際的溫區(qū)溫度相比較,也存在一定的滯后效應(yīng)。 這給溫度的控制帶來(lái)了困難。因此,如果在溫度檢測(cè)值(PV)到達(dá)設(shè)定值時(shí)才關(guān)斷輸出,可能因溫度的滯后效應(yīng)而長(zhǎng)時(shí)間超出設(shè)定值,需要較長(zhǎng)時(shí)間才能回到設(shè)定值;如果在溫度檢測(cè)值(PV)未到設(shè)定值時(shí)即關(guān)斷輸出,則可能因關(guān)斷較早而導(dǎo)致溫度難以達(dá)到設(shè)定值。為了合理地處理系統(tǒng)響應(yīng)速度(即加熱速度)與系統(tǒng)穩(wěn)定性之間地矛盾,我們把溫度控制分為兩個(gè)階段

4、。 (1) PID調(diào)節(jié)前階段 在這個(gè)階段,因?yàn)闇貐^(qū)的溫度距離設(shè)定值還很遠(yuǎn),為了加快加熱速度,SSR與發(fā)熱管處于滿負(fù)荷輸出狀態(tài),只有當(dāng)溫度上升速度超過控制參數(shù)“加速速率”,SSR才關(guān)閉輸出?!凹铀偎俾省泵枋龅氖菧囟仍趩挝粫r(shí)間的跨度,反映的是溫度升降的快慢,如上圖所示。用“加速速率”限制溫升過快,是為了降低溫度進(jìn)入PID調(diào)節(jié)區(qū)的慣性,避免首次到達(dá)溫度設(shè)定值(SV)時(shí)超調(diào)過大。在這個(gè)階段,要么占空比K=0, SSR關(guān)閉;要么占空比K=100, SSR全速輸出。PID調(diào)節(jié)器不起作用,僅由“加速速率”控制溫升快慢。(2) PID調(diào)節(jié)階段在這個(gè)階段,PID調(diào)節(jié)器調(diào)節(jié)輸出,根據(jù)偏差值計(jì)算占空比(0100),

5、保證偏差(EV)趨近于零,即使系統(tǒng)受到外部干擾時(shí),也能使系統(tǒng)回到平衡狀態(tài)。3 PID算法 PID控制的原理是基于下面的算式:輸出M(t)是比例項(xiàng),積分項(xiàng)和微分項(xiàng)的函數(shù)。 其中: M(t) PID回路的輸出,是時(shí)間的函數(shù) Kc PID回路的比例增益 e PID回路的偏差(設(shè)定值(SV)與過程變量(PV)之差) Minitial PID回路的靜態(tài)輸出值 為了能讓數(shù)字計(jì)算機(jī)處理這個(gè)算式,連續(xù)算式必須離散化為周期采樣偏差算式,才能用來(lái)計(jì)算輸出值。數(shù)字計(jì)算機(jī)處理的算式如下: 從這個(gè)公式可以看出,積分項(xiàng)是從第一個(gè)采樣周期到當(dāng)前采樣周期所有誤差 項(xiàng)的函數(shù),微分項(xiàng)是當(dāng)前采樣和前一次采樣的函數(shù),比例項(xiàng)僅是當(dāng)前采

6、樣的函數(shù)。在數(shù)字計(jì)算機(jī)中,不保存所有的誤差項(xiàng),其實(shí)也不必要。由于計(jì)算機(jī)從第一次采樣開始,每有一個(gè)過程采樣值必須計(jì)算一次輸出值,只需要保存前一次過程值(PVn-1)和積分項(xiàng)前值。利用計(jì)算機(jī)處理的重復(fù)性,可以將以上算式變換為: 其中: Mn 在第n 采樣時(shí)刻,PID回路的輸出計(jì)算值 SV PID 回路設(shè)定值 PVn 在第n 采樣時(shí)刻的過程變量值 PVn-1 在第n1 采樣時(shí)刻的過程變量值 MX 積分前項(xiàng)值 Mintial PID回路的靜態(tài)輸出值Kc PID回路的比例增益KI 積分項(xiàng)的比例常數(shù) KI=Kc * Ts / Ti Ts是離散化時(shí)的采樣時(shí)間間隔 Ti是積分時(shí)間參數(shù);KD 微分項(xiàng)的比例常數(shù)

7、KD=Kc * Td / Ts Ts是離散化時(shí)的采樣時(shí)間間隔 Td是微分時(shí)間參數(shù);從上面PID的算式,可以分析三個(gè)基本參數(shù)Kc, KI, KD在實(shí)際控制中的作用:(1) 比例調(diào)節(jié)作用:比例項(xiàng)按比例反應(yīng)系統(tǒng)的偏差,系統(tǒng)一旦出現(xiàn)了偏差,比例調(diào)節(jié)立即產(chǎn)生調(diào)節(jié)作用用以減少偏差。比例作用大,可以加快調(diào)節(jié),減少偏差。但是過大的比例調(diào)節(jié),使系統(tǒng)的穩(wěn)定性下降,甚至造成系統(tǒng)的不穩(wěn)定。(2) 積分調(diào)節(jié)作用:積分項(xiàng)消除系統(tǒng)的穩(wěn)態(tài)誤差,提高無(wú)差度。只要有偏差,積分就進(jìn)行,直到無(wú)偏差時(shí),積分運(yùn)算才停止,積分調(diào)節(jié)項(xiàng)輸出一常數(shù)值。積分作用的強(qiáng)弱取決于積分時(shí)間常數(shù)Ti,Ti越小,積分作用越強(qiáng)。積分控制可提高系統(tǒng)的無(wú)差度,但積

8、分項(xiàng)輸出響應(yīng)緩慢,使得系統(tǒng)調(diào)節(jié)時(shí)間增長(zhǎng)。(3) 微分調(diào)節(jié)作用:微分項(xiàng)反映系統(tǒng)過程變量的變化率(PVn-1-PVn)/ Ts),具有預(yù)見性,能預(yù)見變化的趨勢(shì),因此,能產(chǎn)生超前的調(diào)節(jié)作用,在偏差還沒有形成之前,已被微分調(diào)節(jié)作用消除。因此,可以改善系統(tǒng)的動(dòng)態(tài)性能。在微分時(shí)間參數(shù)Td選擇合適的情況下,可以減少超調(diào),減少調(diào)節(jié)時(shí)間。微分調(diào)節(jié)對(duì)干擾有放大效果,過強(qiáng)的微分調(diào)節(jié),對(duì)系統(tǒng)抗干擾不利。此外,微分項(xiàng)反映的是過程變量的變化率,而當(dāng)過程變量沒有變化時(shí),微分調(diào)節(jié)輸出為零。微分調(diào)節(jié)不能單獨(dú)使用,需要與另外兩種調(diào)節(jié)規(guī)律相結(jié)合,組成PD或PID調(diào)節(jié)器。以上面的推導(dǎo),C程序如下/*pid算法C源程序,還有實(shí)現(xiàn)pid

9、自動(dòng)調(diào)整。51用于控制溫度26-100攝氏度。 TIME:2011-07-29 20:15:07*/#include <stdlib.h>#include "global_varible.h"/* 模塊名: PID* 描述: PID調(diào)節(jié)子程序* 采用PID-PD算法。在偏差絕對(duì)值大于e時(shí),用PD算法,以改善動(dòng)態(tài)品質(zhì)。* 當(dāng)偏差絕對(duì)值小于e時(shí),用PID算法,提高穩(wěn)定精度。* PIDout=kp*e(t)+ki*e(t)+e(t-1)+.+e(1)+kd*e(t)-e(t-1)*=* 入口: 無(wú)* 出口: 無(wú)* 改變: PID_T_Run=加熱時(shí)間控制*/void

10、PID_Math(void)signed long ee1; /偏差一階/signed long ee2; /偏差二階signed long d_out; /積分輸出 if(!Flag_PID_T_OK)return;Flag_PID_T_OK = 0;Temp_Set = 3700; /溫度控制設(shè)定值37.00度PID_e0 = Temp_Set - Temp_Now; /本次偏差ee1 = PID_e0 - PID_e1; /計(jì)算一階偏差 /ee2 = PID_e0-2*PID_e1+PID_e2; /計(jì)算二階偏差/一階偏差的限制范圍if(ee1 > 500) ee1 = 500;i

11、f(ee1 < -500)ee1 = -500;PID_e_SUM += PID_e0; /偏差之和/積分最多累計(jì)的溫差 if(PID_e_SUM > 200) PID_e_SUM = 200; if(PID_e_SUM < -200)PID_e_SUM = -200; PID_Out = PID_kp * PID_e0 + PID_kd * ee1;/計(jì)算PID比例和微分輸出if(abs(PID_e0) < 200) /如果溫度相差小于1.5度則計(jì)入PID積分輸出if(abs(PID_e0) > 100) /如果溫度相差大于1度時(shí)積分累計(jì)限制if(PID_e_S

12、UM > 100)PID_e_SUM = 100; if(PID_e_SUM < -100)PID_e_SUM = -100;d_out = PID_ki * PID_e_SUM;/積分輸出if(PID_e0 < -5) /當(dāng)前溫度高于設(shè)定溫度0.5度時(shí)積分累計(jì)限制if(PID_e_SUM > 150)PID_e_SUM = 150;if(PID_e_SUM > 0) d_out >>= 1;/當(dāng)前溫度高于設(shè)定溫度0.5度時(shí)削弱積分正輸出PID_Out += d_out; /PID比例,積分和微分輸出elsePID_e_SUM=0;PID_Out /= 100; /恢復(fù)被PID_Out系數(shù)放大的倍數(shù)if(PID_Out > 200)PID_Out=200;if(PID_Out&l

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論