廣東工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告_第1頁
廣東工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告_第2頁
廣東工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告_第3頁
廣東工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告_第4頁
廣東工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、廣東工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告信息工程學(xué)院 03測(cè)控技術(shù)與儀器專業(yè)2班成績(jī)?cè)u(píng)定_姓名邵仲明 歐文宇 余允 袁懷澤 陳曉清陳雅蘇映惜鄭典英教師簽名預(yù)習(xí)情況操作情況考勤情況數(shù)據(jù)處理情況實(shí)驗(yàn)題目基于PID算法的爐溫控制第_周星期_第_節(jié)一、 實(shí)驗(yàn)?zāi)康暮鸵骯) 掌握虛擬儀器高級(jí)語言LabVIEW6i或LabWindows/CVI的流程圖和軟儀器面板的編程設(shè)計(jì)方法,熟悉數(shù)據(jù)處理模塊、信號(hào)分析模塊、儀器控制模塊等各種軟件模塊的應(yīng)用;b) 掌握數(shù)據(jù)采集硬件的低層驅(qū)動(dòng)程序(C語言/匯編語言)設(shè)計(jì)、調(diào)試及嵌入LabVIEW6i的技術(shù);c) 利用GPIB、RS232等儀器標(biāo)準(zhǔn)總線接口系統(tǒng)和VISA編程技術(shù),進(jìn)行PC計(jì)算機(jī)

2、與多種數(shù)字式儀器(如數(shù)字示波器、數(shù)字萬用表和數(shù)字頻譜儀)的接口、互連及編寫應(yīng)用軟件,構(gòu)造典型的自動(dòng)測(cè)試系統(tǒng)及進(jìn)行實(shí)驗(yàn)研究。二、 實(shí)驗(yàn)方案1、實(shí)驗(yàn)設(shè)計(jì)題目 基于PID算法的爐溫控制2、實(shí)驗(yàn)主要儀器設(shè)備和材料裝有l(wèi)abwindows/cvi軟件PC一臺(tái),電子溫度計(jì)一個(gè),爐溫實(shí)驗(yàn)箱一個(gè), PC-DAQ/PCI卡3、設(shè)計(jì)步驟1)、對(duì)爐溫實(shí)驗(yàn)箱進(jìn)行數(shù)據(jù)采樣:先把爐溫實(shí)驗(yàn)箱加熱至90C觀察電子溫度計(jì)數(shù)值,利用萬能表測(cè)試實(shí)驗(yàn)箱相應(yīng)引腳的輸出電壓,溫度每下降一攝氏度,就馬上記錄輸出電壓值。記錄范圍:2590。2)、對(duì)采樣數(shù)據(jù)進(jìn)行處理:通過觀察可知,電壓與溫度不成線性關(guān)系,是一條曲線,因此,本設(shè)計(jì)采用分段直線擬

3、合。得出電壓與溫度的對(duì)應(yīng)關(guān)系。3)、用戶界面設(shè)計(jì):用Labwindows/cvi軟件進(jìn)行用戶界面開發(fā),并進(jìn)行編程。具體程序見后面。4)、進(jìn)行調(diào)試:把PC和其他設(shè)備連接好,測(cè)試程序,設(shè)置PID參數(shù),觀察控制效果,確立PID參數(shù)。5)、重新對(duì)數(shù)據(jù)采樣:開始采樣時(shí),因?yàn)闇囟群碗妷褐刀疾粩喟l(fā)生變化,而溫度計(jì)顯示變化相對(duì)于電壓變化有一定的滯后,造成微機(jī)上溫度顯示數(shù)值比溫度計(jì)發(fā)生一定量的偏移,造成較大誤差。因此,此次采樣利用剛開發(fā)的程序控制爐溫恒定,觀察電壓變化范圍 ,記錄多個(gè)電壓值,求其平均值。但只需要對(duì)部分溫度采樣就可以了,因?yàn)檫@里采用線段擬合成曲線,只需要線段的端點(diǎn)數(shù)據(jù)就可。6)、重新調(diào)試程序,并完

4、善用戶界面。三、 實(shí)驗(yàn)結(jié)果和數(shù)據(jù)處理程序如下:#include #include #include #include #include #include PID.hstatic int panelHandle;static double Wave1024;static double Temp1024;static double A;static double F;static double Ph,VOL,GG;static double AM;static double PGAIN;static double IGAIN;static double DGAIN;static double LA

5、STERR;static double TEMP;static double integral, TEMPUP,PIDPWM;static double TE=0;static unsigned long AOtaskID;static double ERR,FERROR,PT;PID_PWM() / PID算法定義 double ERR; double PT,DT,RESULT,FERROR; ERR=TEMP-AM; if(abs(ERR)0.01) FERROR=ERR; PT=PGAIN * FERROR; if(PT100|PT100.00) integral=100.0; else

6、 if (integral0.0) integral=0.0; DT=(ERR-LASTERR)*DGAIN; RESULT=PT+integral+DT; else RESULT=integral=PGAIN+IGAIN; LASTERR=ERR; return (RESULT); int main (int argc, char *argv)if (InitCVIRTE (0, argv, 0) = 0)return -1;/* out of memory */if (panelHandle = LoadPanel (0, PID.uir, PANEL) 0)return -1;Displ

7、ayPanel (panelHandle);GetCtrlVal(panelHandle,PANEL_HORIZONTAL,&F); /獲得頻率/ RunUserInterface ();DiscardPanel (panelHandle);return 0;int CVICALLBACK SetHorizontal (int panel, int control, int event,void *callbackData, int eventData1, int eventData2) /頻率響應(yīng)后在PC機(jī)上輸出方波圖形switch (event)case EVENT_COMMIT:Dele

8、teGraphPlot (panelHandle, PANEL_GRAPH, -1, VAL_IMMEDIATE_DRAW);GetCtrlVal(panelHandle,PANEL_HORIZONTAL,&F); break;return 0;int CVICALLBACK ShutDown (int panel, int control, int event,void *callbackData, int eventData1, int eventData2) /退出程序/switch (event)case EVENT_COMMIT:QuitUserInterface (0);break

9、;return 0;int CVICALLBACK UpDataCallback (int panel, int control, int event,void *callbackData, int eventData1, int eventData2)switch (event)case EVENT_TIMER_TICK:GetCtrlVal(panelHandle,PANEL_AIM,&AM); /設(shè)定目標(biāo)溫度/ GetCtrlVal(panelHandle,PANEL_KP,&PGAIN);/設(shè)定比例系數(shù) GetCtrlVal(panelHandle,PANEL_KI,&IGAIN);/

10、設(shè)定積分系數(shù) GetCtrlVal(panelHandle,PANEL_KD,&DGAIN);/設(shè)定微分系數(shù) AISampleChannel (1, 1, 0.0, 0.0, &VOL);/采集數(shù)據(jù)/SetCtrlVal (panelHandle, PANEL_VOT, VOL); /在PC機(jī)上輸出電壓 /以下是電壓溫度轉(zhuǎn)換、 if(VOL-1.12) TEMP=-40.91*VOL+28.18 ; else if(VOL-0.84) TEMP=-25.00*VOL+46.00 ;else if(VOL0.05 )TEMP=-12.36*VOL+56.62 ; else if(VOL0.73)

11、TEMP=-7.35*VOL+56.37; else if (VOL1.91) TEMP=-5.08*VOL+54.71 ; else if( VOL2.72)TEMP=-3.7*VOL+52.07 ; else if (VOL4.25 )TEMP=-3.27*VOL+50.89 ; else if (VOL6.96 )TEMP=-2.95*VOL+49.55; else if (VOL7.04) TEMP=-37.50*VOL+290; else if (VOL7.10)TEMP=-100.00*VOL+730.00 ; SetCtrlVal (panelHandle, PANEL_CURT

12、EMP, TEMP); /溫度輸出TEMPUP=PID_PWM(); /PID函數(shù)調(diào)用 SetCtrlVal (panelHandle,PANEL_WEIZHI,TEMPUP);/PID返回?cái)?shù)值輸出,對(duì)用戶隱藏SquareWave (1024, 5, F/1024, &Ph, 100+TEMPUP/*PID算法控制PWM參數(shù)*/, Wave);/產(chǎn)生方波DeleteGraphPlot (panelHandle, PANEL_GRAPH, -1, VAL_IMMEDIATE_DRAW); PlotY (panelHandle, PANEL_GRAPH, Wave, 1024, VAL_DOUBL

13、E, VAL_THIN_LINE, VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_RED);AOGenerateWaveforms (1, 1, 1000.0, 1, 0, Wave, &AOtaskID); /方波進(jìn)行輸出,控制爐溫實(shí)驗(yàn)箱加熱與否break;return 0;開發(fā)出來的用戶界面如下,這里PID參數(shù)如下:Kp為20,Ki為1.070 Kd為0.2 頻率一般設(shè)定為50Hz四、 結(jié)論1、溫度控制基本理論溫度控制不像開關(guān)變量,要么全開,要么全關(guān),是一個(gè)連續(xù)變化量。當(dāng)被控溫度低于目標(biāo)值很大時(shí),就需要全速加熱,當(dāng)溫度接近目標(biāo)值時(shí),就必須減慢加熱速度,否則就很容易

14、造成溫度嚴(yán)重超調(diào),達(dá)不到溫度控制效果。爐溫實(shí)驗(yàn)箱一般只有輸入控制是低電平時(shí)才會(huì)有進(jìn)行加熱,其余則是停止加熱。因此,我們可以通過控制高電平和低電平的比例來控制加熱速度(只要電壓頻率足夠快,宏觀上就是速度控制了),也就是所謂的PWM控制??刂扑惴ㄓ泻芏啵鳳ID算法目前為止比較純熟的一種,這里采用就采用PID算法,其運(yùn)算結(jié)果轉(zhuǎn)換成PWM輸出,以達(dá)到控制效果。2、PID控制的原理和特點(diǎn)在工程實(shí)際中,應(yīng)用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例、積分、微分控制,簡(jiǎn)稱PID控制,又稱PID調(diào)節(jié)。P當(dāng)被控對(duì)象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型時(shí),控制理論的其它技術(shù)難以采用時(shí),系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須

15、依靠經(jīng)驗(yàn)和現(xiàn)場(chǎng)調(diào)試來確定,這時(shí)應(yīng)用PID控制技術(shù)最為方便。即當(dāng)我們不完全了解一個(gè)系統(tǒng)和被控對(duì)象或不能通過有效的測(cè)量手段來獲得系統(tǒng)參數(shù)時(shí),最適合用PID控制技術(shù)。PID控制,實(shí)際中也有PI和PD控制。PID控制器就是根據(jù)系統(tǒng)的誤差,利用比例、積分、微分計(jì)算出控制量進(jìn)行控制的。 (1)比例(P)控制比例控制是一種最簡(jiǎn)單的控制方式。其控制器的輸出與輸入誤差信號(hào)成比例關(guān)系。當(dāng)僅有比例控制時(shí)系統(tǒng)輸出存在穩(wěn)態(tài)誤差(Steady-state error)。 (2)積分(I)控制在積分控制中,控制器的輸出與輸入誤差信號(hào)的積分成正比關(guān)系。對(duì)一個(gè)自動(dòng)控制系統(tǒng),如果在進(jìn)入穩(wěn)態(tài)后存在穩(wěn)態(tài)誤差,則稱這個(gè)控制系統(tǒng)是有穩(wěn)態(tài)

16、誤差的或簡(jiǎn)稱有差系統(tǒng)(System with Steady-state Error)。為了消除穩(wěn)態(tài)誤差,在控制器中必須引入“積分項(xiàng)”。積分項(xiàng)對(duì)誤差取決于時(shí)間的積分,隨著時(shí)間的增加,積分項(xiàng)會(huì)增大。這樣,即便誤差很小,積分項(xiàng)也會(huì)隨著時(shí)間的增加而加大,它推動(dòng)控制器的輸出增大使穩(wěn)態(tài)誤差進(jìn)一步減小,直到等于零。因此,比例+積分(PI)控制器,可以使系統(tǒng)在進(jìn)入穩(wěn)態(tài)后無穩(wěn)態(tài)誤差。(3)微分(D)控制 在微分控制中,控制器的輸出與輸入誤差信號(hào)的微分(即誤差的變化率)成正比關(guān)系。 自動(dòng)控制系統(tǒng)在克服誤差的調(diào)節(jié)過程中可能會(huì)出現(xiàn)振蕩甚至失穩(wěn)。其原因是由于存在有較大慣性組件(環(huán)節(jié))或有滯后(delay)組件,具有抑制

17、誤差的作用,其變化總是落后于誤差的變化。解決的辦法是使抑制誤差的作用的變化“超前”,即在誤差接近零時(shí),抑制誤差的作用就應(yīng)該是零。這就是說,在控制器中僅引入“比例”項(xiàng)往往是不夠的,比例項(xiàng)的作用僅是放大誤差的幅值,而目前需要增加的是“微分項(xiàng)”,它能預(yù)測(cè)誤差變化的趨勢(shì),這樣,具有比例+微分的控制器,就能夠提前使抑制誤差的控制作用等于零,甚至為負(fù)值,從而避免了被控量的嚴(yán)重超調(diào)。所以對(duì)有較大慣性或滯后的被控對(duì)象,比例+微分(PD)控制器能改善系統(tǒng)在調(diào)節(jié)過程中的動(dòng)態(tài)特性。 五、 問題與討論1、PID控制器的參數(shù)整定? PID控制器的參數(shù)整定是控制系統(tǒng)設(shè)計(jì)的核心內(nèi)容,也是最困難的部份。它是根據(jù)被控過程的特性

18、確定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控制器參數(shù)的工程整定方法,主要有臨界比例法、反應(yīng)曲線法和衰減法。三種方法各有其特點(diǎn),其共同點(diǎn)都是通過試驗(yàn),然后按照工程經(jīng)驗(yàn)公式對(duì)控制器參數(shù)進(jìn)行整定。但無論采用哪一種方法所得到的控制器參數(shù),都需要在實(shí)際運(yùn)行中進(jìn)行最后調(diào)整與完善。現(xiàn)在一般采用的是臨界比例法。利用該方法進(jìn)行 PID控制器參數(shù)的整定步驟如下:(1)首先預(yù)選擇一個(gè)足夠短的采樣周期讓系統(tǒng)工作;(2)僅加入比例控制環(huán)節(jié),直到

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論