虛擬儀器課程設(shè)計實驗報告_第1頁
虛擬儀器課程設(shè)計實驗報告_第2頁
虛擬儀器課程設(shè)計實驗報告_第3頁
虛擬儀器課程設(shè)計實驗報告_第4頁
虛擬儀器課程設(shè)計實驗報告_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、微機化儀器綜合設(shè)計與實踐實驗指導(dǎo)書李揚 周琦廣東工業(yè)大學(xué)機電工程學(xué)院2015 6月印刷目錄實驗六 基于PID算法的可控硅水溫自動調(diào)節(jié)系統(tǒng)設(shè)計一、實驗?zāi)康暮鸵?.掌握虛擬儀器高級語言Lab VIEW 或Lab Windows/CVI 的流程圖和軟儀器面板的編程設(shè)計方法,熟悉數(shù)據(jù)處理模塊、信號分析模塊、儀器控制模塊等各種軟件模塊的應(yīng)用。2掌握數(shù)據(jù)采集硬件的低層驅(qū)動程序(C 語言/匯編語言)設(shè)計、調(diào)試及嵌入Lab VIEW 的技術(shù)。3.學(xué)習(xí)基于PID的比例積分微分程序編寫方法。4.了解可控硅的的溫度控制特點和原理。5.熟悉CB-68LP接線端子板各接口,利用CB-68LP端子板和PCI-6023E

2、數(shù)據(jù)采集卡進行模擬量和數(shù)字量的轉(zhuǎn)換及相關(guān)數(shù)據(jù)采集。二、實驗主要儀器設(shè)備和材料(1)裝有l(wèi)ab windows/CVI 軟件PC 一臺(2)PC-DAQ/PCI 卡(3)CB-68LP端子板(4)變送器(型號 SBWZ-2460)(5)可控硅(6)熱電偶三、實驗內(nèi)容和要求1、實驗內(nèi)容1)、對水溫進行數(shù)據(jù)采樣:先把水溫加熱至某個溫度值(100左右,利用萬能表測試相應(yīng)引腳的輸出電壓,溫度每下降1 攝氏度,就馬上記錄輸出電壓值。2)、對采樣數(shù)據(jù)進行處理:通過觀察可知,電壓與溫度不成線性關(guān)系,是一條曲線,因此,本設(shè)計采用分段直線擬合。得出電壓與溫度的對應(yīng)關(guān)系。3)、用戶界面設(shè)計:用Lab windows

3、/CVI 軟件進行用戶界面開發(fā),并進行編程。具體程序見后面。4)、進行調(diào)試:把PC 和其他設(shè)備連接好,測試程序,設(shè)置PID 參數(shù),觀察控制效果,確立PID 參數(shù)。5)、重新對數(shù)據(jù)采樣:開始采樣時,因為溫度和電壓值都不斷發(fā)生變化,而溫度計顯示變化相對于電壓變化有一定的滯后,造成微機上溫度顯示數(shù)值比溫度計發(fā)生一定量的偏移,造成較大誤差。因此,此次采樣利用剛開發(fā)的程序控制爐溫恒定,觀察電壓變化范圍,記錄多個電壓值,求其平均值。但只需要對部分溫度采樣就可以了,因為這里采用線段擬合成曲線,只需要線段的端點數(shù)據(jù)就可。6)、重新調(diào)試程序,并完善用戶界面。2、程序如下:#include <ansi_c.

4、h>#include <easyio.h>#include <analysis.h>#include <cvirte.h>#include <userint.h>#include "PID.h"Static int panelHandle;Static double Wave 1024;Static double Temp 1024;Static double A;Static double F;Static double Ph, VOL, GG;Static double AM;Static double PGAIN;

5、Static double IGAIN;Static double DGAIN;Static double LASTERR;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

6、=ERR;PT=PGAIN * FERROR;If (PT>100|PT<-100)Integral=0.0;ElseIntegral+=IGAIN*FERROR;If (integral>100.00)Integral=100.0;Else if (integral<0.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 *ar

7、gv) if (InitCVIRTE (0, argv, 0) = 0)return -1; /* out of memory */if (panelHandle = LoadPanel (0, "PID.uir", PANEL) < 0)return -1;DisplayPanel (panelHandle);GetCtrlVal(panelHandle,PANEL_HORIZONTAL,&F); /獲得頻率/RunUserInterface ();DiscardPanel (panelHandle);return 0;int CVICALLBACK Set

8、Horizontal (int panel, int control, int event,void *callbackData, int eventData1, int eventData2)/頻率響應(yīng)后在PC 機上輸出方波圖形 switch (event)case EVENT_COMMIT:DeleteGraphPlot (panelHandle, PANEL_GRAPH, -1,VAL_IMMEDIATE_DRAW);GetCtrlVal(panelHandle,PANEL_HORIZONTAL,&F);break;return 0;int CVICALLBACK ShutDow

9、n (int panel, int control, int event,void *callbackData, int eventData1, int eventData2) /退出程序/switch (event)case EVENT_COMMIT:QuitUserInterface (0);break;return 0;int CVICALLBACK UpDataCallback (int panel, int control, int event,void *callbackData, int eventData1, int eventData2) switch (event)case

10、 EVENT_TIMER_TICK:GetCtrlVal(panelHandle,PANEL_AIM,&AM); /設(shè)定目標溫度GetCtrlVal(panelHandle,PANEL_KP,&PGAIN); /設(shè)定比例系數(shù)GetCtrlVal(panelHandle,PANEL_KI,&IGAIN); /設(shè)定積分系數(shù)GetCtrlVal(panelHandle,PANEL_KD,&DGAIN); /設(shè)定微分系數(shù)AISampleChannel (1, "1", 0.0, 0.0, &VOL); /采集數(shù)據(jù)SetCtrlVal (pan

11、elHandle, PANEL_VOT, VOL); /在PC 機上輸出電壓/以下是電壓溫度轉(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(VOL<0.05 )TEMP=-12.36*VOL+56.62 ;else if(VOL<0.73)TEMP=-7.35*VOL+56.37;else if (VOL<1.91)TEMP=-5.08*VOL+54.71 ;else if( VOL<2.72)TEMP=-3.7*VOL+52.07

12、;else if (VOL<4.25 )TEMP=-3.27*VOL+50.89 ;else if (VOL<6.96 )TEMP=-2.95*VOL+49.55;else if (VOL<7.04)TEMP=-37.50*VOL+290;else if (VOL<7.10)TEMP=-100.00*VOL+730.00SetCtrlVal (panelHandle, PANEL_CURTEMP, TEMP); /溫度輸出TEMPUP=PID_PWM(); /PID 函數(shù)調(diào)用SetCtrlVal (panelHandle,PANEL_WEIZHI,TEMPUP);/PI

13、D 返回數(shù)值輸出,對用戶隱藏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_DOUBLE,VAL_THIN_LINE, VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_RED);AOGenerateWaveforms (1, &quo

14、t;1", 1000.0, 1, 0, Wave, &AOtaskID);/方波進行輸出,控制爐溫實驗箱加熱與否break;return 0;1、 開發(fā)出來的用戶界面如下,這里PID參數(shù)如下:四實驗器材介紹及線路接口1.CB-68PL端子板 實物圖 接線圖接線說明:上圖是CB-68LP端子板引腳圖,下面是對其接線作簡要說明。 AI為模擬信號輸入端口,當選擇單端測量方式時,接線方式就是把信號源的正端接入AI n(n=0,1,15)、信號源的負端接入AI GND; 當選擇差分測量方式時,接線方式是把信號源的正端接入AI n(n=0,1,7)、信號源的負端接入AI n+8。 例如,

15、單端時,通道0的正負接入端就分別是AI 0和AI GND;通道1的正負接入端就分別是AI1和AI GND; 差分時,通道0的正負接入端就分別是AI 0和AI 8;通道1的正負接入端就分別是AI 1和AI 9。 PI0.0P0.7為8個數(shù)字信號輸入通道,可以通過軟件設(shè)置每個數(shù)字通道為輸入或者輸出,對應(yīng)開關(guān)量和輸入輸出。 PCI-6023E有2個計數(shù)器:CTR0和CTR1,如果計數(shù)器信號只有1個,希望實現(xiàn)簡單的計數(shù)功能,那么只需要把計數(shù)器信號接到CTR 0 SRC或者CTR 1 SRC即可。 (本實驗只用到4個接口,分別是:模擬接地67,模擬輸入33,數(shù)字接地,數(shù)字輸出)2.變送器(SBWZ-24

16、60)變送器(transmitter)是把傳感器的輸出信號轉(zhuǎn)變?yōu)榭杀豢刂破髯R別的信號(或?qū)鞲衅鬏斎氲姆请娏哭D(zhuǎn)換成電信號同時放大以便供遠方測量和控制的信號源)的轉(zhuǎn)換器。傳感器和變送器一同構(gòu)成自動控制的監(jiān)測信號源。不同的物理量需要不同的傳感器和相應(yīng)的變送器。變送器的種類很多,用在工控儀表上面的變送器主要有溫度變送器、壓力變送器、流量變送器、電流變送器、電壓變送器等等。下圖為我們此次課設(shè)所用的變送器規(guī)格及功能特點: 輸出:420mA (可以做0-5V 0-10V )精度 :0.5%電源:24VDC 溫度范圍:0500100 0150 0200 0300 0400適用范圍:可以接收熱電阻或各類熱電偶

17、輸入,可直接安裝于溫度傳感器接線盒內(nèi),并標出標準電壓電流信號功能特點:變送器信號電源同為兩根普通導(dǎo)線,節(jié)省了熱電偶專用補償導(dǎo)線,降低了線路干擾帶來的誤差。體積小巧、安裝方便、精度好,抗干擾,穩(wěn)定性好;免維護外部可直接調(diào)整零點和滿度。電流信號輸出,傳輸距、遠,縮短了儀表與傳感器的距離,降低線路干擾帶來的誤差。主要技術(shù)指標:極限28 mA輸入范圍:熱電阻:Pt100 0-150度熔斷檢測:上限(標準)溫度漂移:±0.2%/冷端補償:050±1調(diào)整方式:電位器負載能力:0500輸出:420mA   (可以做0-5V  0-10V  價格另議

18、)精度 :0.5%電源:24VDC 溫度范圍:0500100 0150  0200 0300 04003可控硅 可控硅,是可控硅整流元件的簡稱,是一種具有三個PN結(jié)的四層結(jié)構(gòu)的大功率半導(dǎo)體器件,亦稱為晶閘管。具有體積小、結(jié)構(gòu)相對簡單、功能強等特點,是比較常用的半導(dǎo)體器件之一。該器件被廣泛應(yīng)用于各種電子設(shè)備和電子產(chǎn)品中,多用來作可控整流、逆變、變頻、調(diào)壓、無觸點開關(guān)等。家用電器中的調(diào)光燈、調(diào)速風扇、空調(diào)機、電視機、電冰箱、洗衣機、照相機、組合音響、聲光電路、定時控制器、玩具裝置、無線電遙控、攝像機及工業(yè)控制等都大量使用了可控硅器件。本次實驗所用到的可控硅規(guī)

19、格型號如下: 輸入電壓:交流220V電壓調(diào)節(jié):交流50V220V最大功率:2000W最大電流:25A(說明:我們在使用該可控硅時,并沒有采用調(diào)壓旋鈕,而是把旋鈕卸下?lián)Q上接線柱并接入我們設(shè)計好的電路中,利用PWN的高低電平觸發(fā)使電路在某個設(shè)置的溫度進行通斷電,從而實現(xiàn)水溫控制。)適用于:使用新型雙向大功率可控硅,因為電流可達25A,很好的解決了電爐絲在冷卻的情況下電阻太小從而引起的過流問題;能很方便的調(diào)整市電的輸出電壓,在50-220伏之間任意調(diào)整,供用電器使用。如:電爐,熱水器的調(diào)熱、燈具的調(diào)光、小電機調(diào)速、電烙鐵調(diào)溫等。從而達到調(diào)光,調(diào)溫,調(diào)壓的效果??晒┯秒姽β市∮?000瓦的大型電器使用

20、由于功率已經(jīng)很大,所以一般的家庭電器或是小型工廠足夠用。(適用于:使用新型雙向大功率可控硅,因為電流可達25A,很好的解決了電爐絲在冷卻的情況下電阻太小從而引起的過流問題;能很方便的調(diào)整市電的輸出電壓,在50-220伏之間任意調(diào)整,供用電器使用。如:電爐,熱水器的調(diào)熱、燈具的調(diào)光、小電機調(diào)速、電烙鐵調(diào)溫等。從而達到調(diào)光,調(diào)溫,調(diào)壓的效果??晒┯秒姽β市∮?000瓦的大型電器使用由于功率已經(jīng)很大,所以一般的家庭電器或是小型工廠足夠用。五、實驗方法、步驟及結(jié)果測試1、溫度控制基本理論溫度控制不像開關(guān)變量,要么全開,要么全關(guān),是一個連續(xù)變化量。當被控溫度低于目標值很大時,就需要全速加熱,當溫度接近目

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

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

23、穩(wěn)態(tài)誤差,則稱這個控制系統(tǒng)是有穩(wěn)態(tài)誤差的或簡稱有差系統(tǒng)(SystemwithSteady-stateError)。為了消除穩(wěn)態(tài)誤差,在控制器中必須引入“積分項”。積分項對誤差取決于時間的積分,隨著時間的增加,積分項會增大。這樣,即便誤差很小,積分項也會隨著時間的增加而加大,它推動控制器的輸出增大使穩(wěn)態(tài)誤差進一步減小,直到等于零。因此,比例+積分(PI)控制器,可以使系統(tǒng)在進入穩(wěn)態(tài)后無穩(wěn)態(tài)誤差。(3)微分(D)控制在微分控制中,控制器的輸出與輸入誤差信號的微分(即誤差的變化率)成正比關(guān)系。自動控制系統(tǒng)在克服誤差的調(diào)節(jié)過程中可能會出現(xiàn)振蕩甚至失穩(wěn)。其原因是由于存在有較大慣性組件(環(huán)節(jié))或有滯后(delay)組件,具有抑制誤差的作用,其變化總是落后于誤差的變化。解決的辦法是使抑制誤差的作用的變化“超前”,即在誤差接近零時,抑制誤差的作用就應(yīng)該是零。這就是說,在控制器中僅引入“比

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論