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

下載本文檔

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

文檔簡介

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

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

3、保證加熱溫區(qū)在外界干擾的情況下仍能保持溫度在一個較小的范圍內(nèi)變化的合理的負(fù)載電壓系數(shù)K。發(fā)熱管L8KW簡單的固態(tài)繼也器加熱電路脈寬調(diào)制電壓輸出示意圖2 .溫度控制的兩個階段溫度控制系統(tǒng)是一個慣性較大的系統(tǒng),也就是說,當(dāng)給溫區(qū)開始加熱之后,并不能立即觀察得到溫區(qū)溫度的明顯上升;同樣的,當(dāng)關(guān)閉加熱之后,溫區(qū)的溫度仍然有一定程度的上升。另外,熱電偶對溫度的檢測,與實(shí)際的溫區(qū)溫度相比較,也存在一定的滯后效應(yīng)。這給溫度的控制帶來了困難。因此,如果在溫度檢測值(PV)到達(dá)設(shè)定值時才關(guān)斷輸出,可能因溫度的滯后效應(yīng)而長時間超出設(shè)定值,需要較長時間才能回到設(shè)定值;如果在溫度檢測彳1(PV)未到設(shè)定值時即關(guān)斷輸出

4、,則可能因關(guān)斷較早而導(dǎo)致溫度難以達(dá)到設(shè)定值。為了合理地處理系統(tǒng)響應(yīng)速度(即加熱速度)與系統(tǒng)穩(wěn)定性之間地矛盾,我們把溫度控制分為兩個階段。Tempg)1) )PID調(diào)節(jié)前階段在這個階段,因?yàn)闇貐^(qū)的溫度距離設(shè)定彳1還很遠(yuǎn),為了加快加熱速度,SSR與發(fā)熱管處于滿負(fù)荷輸出狀態(tài),只有當(dāng)溫度上升速度超過控制參數(shù)“加速速率”,SSR才關(guān)閉輸出。“加速速率”描述的是溫度在單位時間的跨度,反映的是溫度升降的快慢,如上圖所示。用“加速速率”限制溫升過快,是為了降低溫度進(jìn)入PID調(diào)節(jié)區(qū)的慣性,避免首次到達(dá)溫度設(shè)定值(SV)時超調(diào)過大。在這個階段,要么占空比K=0,SSR關(guān)閉;要么占空比K=100%,SSR全速輸出。

5、PID調(diào)節(jié)器不起作用,僅由“加速速率”控制溫升快慢。2) )PID調(diào)節(jié)階段在這個階段,PID調(diào)節(jié)器調(diào)節(jié)輸出,根據(jù)偏差值計(jì)算占空比(0100%),保證偏差(EV)趨近于零,即使系統(tǒng)受到外部干擾時,也能使系統(tǒng)回到平衡狀態(tài)。3) PID算法PID控制的原理是基于下面的算式:輸出M是比例項(xiàng),積分項(xiàng)和微分項(xiàng)的函數(shù)。M(t)=Kc*e(t)+Ke(t)dt+e(t)/dt+輸出一比例項(xiàng)+積分項(xiàng)+微分項(xiàng)+靜態(tài)輸出項(xiàng)(常數(shù)項(xiàng))其中:M(t)PID回路的輸出,是時間的函數(shù)KcPID回路的比例增益ePID回路的偏差(設(shè)定值(SV)與過程變量(PV)之差)MinitialPID回路的靜態(tài)輸出值為了能讓數(shù)字計(jì)算機(jī)處理

6、這個算式,連續(xù)算式必須離散化為周期采樣偏差算式,才能用來計(jì)算輸出值。數(shù)字計(jì)算機(jī)處理的算式如下:M-3*0+K產(chǎn)璘輸出=比例項(xiàng)+積分項(xiàng)+微分項(xiàng)+靜態(tài)輸出項(xiàng)(常數(shù)項(xiàng))從這個公式可以看出,積分項(xiàng)是從第一個采樣周期到當(dāng)前采樣周期所有誤差項(xiàng)的函數(shù),微分項(xiàng)是當(dāng)前采樣和前一次采樣的函數(shù),比例項(xiàng)僅是當(dāng)前采樣的函數(shù)。在數(shù)字計(jì)算機(jī)中,不保存所有的誤差項(xiàng),其實(shí)也不必要。由于計(jì)算機(jī)從第一次采樣開始,每有一個過程采樣值必須計(jì)算一次車出值,只需要保存前一次過程值(PVn-1)和積分項(xiàng)前值。利用計(jì)算機(jī)處理的重復(fù)性,可以將以上算式變換為:SV-PVn)%*(P%-PV輸出=比例項(xiàng)+積分項(xiàng)(K:*(SV-PVn)+MX)+in

7、itial微分項(xiàng)一靜態(tài)輸出項(xiàng)(常數(shù)項(xiàng))其中:Mn在第n采樣時刻,PID回路的輸出計(jì)算值SVPID回路設(shè)定值PVn在第n采樣時刻的過程變量值PVn-1在第n-1采樣時刻的過程變量值MX積分前項(xiàng)值MintialPID回路的靜態(tài)輸出值KcPID回路的比例增益KI積分項(xiàng)的比例常數(shù)KI=Kc*Ts/TiTs是離散化時的采樣時間間隔Ti是積分時間參數(shù);KD微分項(xiàng)的比例常數(shù)KD=Kc*Td/TsTs是離散化時的采樣時間間隔Td是微分時間參數(shù);從上面PID的算式,可以分析三個基本參數(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é)作

8、用用以減少偏差。比例作用大,可以加快調(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)誤差,提高無差度。只要有偏差,積分就進(jìn)行,直到無偏差時,積分運(yùn)算才停止,積分調(diào)節(jié)項(xiàng)輸出一常數(shù)值。積分作用的強(qiáng)弱取決于積分時間常數(shù)Ti,Ti越小,積分作用越強(qiáng)。積分控制可提高系統(tǒng)的無差度,但積分項(xiàng)輸出響應(yīng)緩慢,使得系統(tǒng)調(diào)節(jié)時間增長。(3) 微分調(diào)節(jié)作用:微分項(xiàng)反映系統(tǒng)過程變量的變化率(PVn-1-PVn)/Ts),具有預(yù)見性,能預(yù)見變化的趨勢,因此,能產(chǎn)生超前的調(diào)節(jié)作用,在偏差還沒有形成之前,已被微分調(diào)節(jié)作用消除。因此,可以改善系統(tǒng)的動態(tài)性能

9、。在微分時間參數(shù)Td選擇合適的情況下,可以減少超調(diào),減少調(diào)節(jié)時間。微分調(diào)節(jié)對干擾有放大效果,過強(qiáng)的微分調(diào)節(jié),對系統(tǒng)抗干擾不利。此外,微分項(xiàng)反映的是過程變量的變化率,而當(dāng)過程變量沒有變化時,微分調(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自動調(diào)整。51用于控制溫度26-100攝氏度。TIME:2011-07-2920:15:07*/#include#includeglobal_varible.h/*模塊名:PID*描述:PID調(diào)節(jié)子程序* 采用PID-PD算法。在偏差絕對值大于e時,用PD

10、算法,以改善動態(tài)品質(zhì)。* 當(dāng)偏差絕對值小于e時,用PID算法,提高穩(wěn)定精度。* PIDout=kp*e(t)+ki*e(t)+e(t-1)+.+e(1)+kd*e(t)-e(t-1)*=* 入口:無* 出口:無* 改變:PID_T_Run=加熱時間控制*voidPID_Math(void)(signedlongee1;/偏差一階/signedlongee2;/偏差二階signedlongd_out;/積分輸出if(!Flag_PID_T_OK)return;Flag_PID_T_OK=0;Temp_Set=3700;/溫度控制設(shè)定值37.00度PID_e0=Temp_Set-Temp_Now;

11、本次偏差ee1=PID_e0-PID_e1;/計(jì)算一階偏差/ee2=PID_e0-2*PID_e1+PID_e2;計(jì)算二階偏差一階偏差的限制范圍if(ee1500)ee1=500;if(ee1200)PID_e_SUM=200;if(PID_e_SUM-200)PID_e_SUM=-200;PID_Out=PID_kp*PID_e0+PID_kd*ee1;if(abs(PID_e0)100)if(PID_e_SUM100)PIDe/如果溫度相差大于1度時積分累計(jì)限制SUM=100;if(PID_e_SUM-100)PID_e_SUM=-100;)d_out=PID_ki*PID_e_SUM;if(PID_e0150)PID_e_SUM=150;if(PID_e_SUM0)d_out=1;當(dāng)前溫度高于設(shè)定溫度0.5度時削弱積分正輸出)/PID比例,積分和微分輸出PID_Out+=d_out;)elsePID_e_SUM=0;執(zhí)八、PID_Out/=100;if(PID_Out200)if(PID_Out

溫馨提示

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

評論

0/150

提交評論