基于大林算法的溫度控制_第1頁(yè)
基于大林算法的溫度控制_第2頁(yè)
基于大林算法的溫度控制_第3頁(yè)
基于大林算法的溫度控制_第4頁(yè)
基于大林算法的溫度控制_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

電氣工程及自動(dòng)化學(xué)院

課程設(shè)計(jì)報(bào)告

(控制基礎(chǔ)實(shí)踐)題目:基于大林算法的爐溫控制仿真專業(yè)班級(jí):自動(dòng)化101班姓名:周強(qiáng)學(xué)號(hào):33號(hào)指導(dǎo)老師:楊國(guó)亮2012年12月22日摘要電阻爐在化工、冶金等行業(yè)應(yīng)用廣泛,因此溫度控制在工業(yè)生產(chǎn)和科學(xué)研究中具有重要意義。其控制系統(tǒng)屬于一階純滯后環(huán)節(jié),具有大慣性、純滯后、非線性等特點(diǎn),導(dǎo)致傳統(tǒng)控制方式超調(diào)大、調(diào)節(jié)時(shí)間長(zhǎng)、控制精度低。采用單片機(jī)進(jìn)行爐溫控制,具有電路設(shè)計(jì)簡(jiǎn)單、精度高、控制效果好等優(yōu)點(diǎn),對(duì)提高生產(chǎn)效率、促進(jìn)科技進(jìn)步等方面具有重要的現(xiàn)實(shí)意義。常規(guī)的溫度控制方法以設(shè)定溫度為臨界點(diǎn),超出設(shè)定允許范圍即進(jìn)行溫度調(diào)控:低于設(shè)定值就加熱,反之就停止或降溫。這種方法實(shí)現(xiàn)簡(jiǎn)單、成本低,但控制效果不理想,控制溫度精度不高、容易引起震蕩,達(dá)到穩(wěn)定點(diǎn)的時(shí)間也長(zhǎng),因此,只能用在精度要求不高的場(chǎng)合。電加熱爐是典型的工業(yè)過(guò)程控制對(duì)象,在我國(guó)應(yīng)用廣泛。電加熱爐的溫度控制具有升溫單向性,大慣性,大滯后,時(shí)變性等特點(diǎn)。其升溫、保溫是依靠電阻絲加熱,降溫則是依靠環(huán)境自然冷卻。當(dāng)其溫度一旦超調(diào)就無(wú)法用控制手段使其降溫,因而很難用數(shù)學(xué)方法建立精確的模型和確定參數(shù),應(yīng)用傳統(tǒng)的控制理論和方法難以達(dá)到理想的控制。在溫度控制技術(shù)領(lǐng)域中,普通采用PID控制算法。但是在一些具有純滯后環(huán)節(jié)的系統(tǒng)中,PID控制很難兼顧動(dòng)、靜兩方面的性能,而且多參數(shù)整定也很難實(shí)現(xiàn)最佳控制。若采用大林算法,可做到無(wú)或者小超調(diào),無(wú)或小穩(wěn)態(tài)誤差。大林算法是運(yùn)用于自動(dòng)控制領(lǐng)域中的一種算法,是一種先設(shè)計(jì)好閉環(huán)系統(tǒng)的響應(yīng)再反過(guò)來(lái)綜合調(diào)節(jié)器的方法。設(shè)計(jì)的數(shù)字控制器(算法)使閉環(huán)系統(tǒng)的特性為具有時(shí)間滯后的一階慣性環(huán)節(jié),且滯后時(shí)間與被控對(duì)象的滯后時(shí)間相同。此算法具有消除余差、對(duì)純滯后有補(bǔ)償作用等特點(diǎn)。本設(shè)計(jì)主要采用大林算法來(lái)實(shí)現(xiàn)爐溫控制,并與PID算法進(jìn)行比較。關(guān)鍵詞:PID控制;大林算法;控制算法;MATLAB目錄TOC\o"1-5"\h\z\o"CurrentDocument"第一章系統(tǒng)方案 1\o"CurrentDocument"設(shè)計(jì)任務(wù)和要求 1\o"CurrentDocument"大林算法 1\o"CurrentDocument"PID算法 3\o"CurrentDocument"第二章設(shè)計(jì)流程 5\o"CurrentDocument"大林算法軟件設(shè)計(jì)流程圖 5\o"CurrentDocument"PID算法程序設(shè)計(jì)流程圖 5\o"CurrentDocument"第三章設(shè)計(jì)過(guò)程及結(jié)果 6GUI界面設(shè)計(jì) 6GUI界面的建立 7\o"CurrentDocument"制作GUI界面 9\o"CurrentDocument"Simulink設(shè)計(jì) 10\o"CurrentDocument"大林算法Simulink 10\o"CurrentDocument"PID控制算法Simulink 11\o"CurrentDocument"程序設(shè)計(jì) 12\o"CurrentDocument"大林算法編程 12\o"CurrentDocument"PID控制算法編程 14\o"CurrentDocument"兩種算法的比較 16\o"CurrentDocument"第四章總結(jié) 17\o"CurrentDocument"致謝 18\o"CurrentDocument"參考文獻(xiàn) 19\o"CurrentDocument"附錄 20\o"CurrentDocument"1、大林算法程序 20\o"CurrentDocument"2、PID控制器算法程序 20第一章系統(tǒng)方案設(shè)計(jì)任務(wù)和要求已知電阻爐對(duì)象數(shù)學(xué)模型為其中,k=12,T=400,t=60,電阻爐的溫度設(shè)定為1000℃.要求:(1)設(shè)計(jì)大林控制算法;⑵設(shè)計(jì)PID控制器,并與PID算法進(jìn)行比較;(3)改變模型參數(shù),考察模型擾動(dòng)下系統(tǒng)性能變化情況。大林算法在一些實(shí)際工程中,經(jīng)常遇到純滯后調(diào)節(jié)系統(tǒng),它們的滯后時(shí)間比較長(zhǎng)。對(duì)于這樣的系統(tǒng),往往允許系統(tǒng)存在適當(dāng)?shù)某{(diào)量,以盡可能地縮短調(diào)節(jié)時(shí)間。人們更感興趣的是要求系統(tǒng)沒(méi)有超調(diào)量或只有很小超調(diào)量,而調(diào)節(jié)時(shí)間則允許在較多的采樣周期內(nèi)結(jié)束。也就是說(shuō),超調(diào)是主要設(shè)計(jì)指標(biāo)。對(duì)于這樣的系統(tǒng),用一般的隨動(dòng)系統(tǒng)設(shè)計(jì)方法是不行的,用PID算法效果也欠佳。針對(duì)這一要求,IBM公司的大林(Dahlin)在1968年提出了一種針對(duì)工業(yè)生產(chǎn)過(guò)程中含有純滯后對(duì)象的控制算法。其目標(biāo)就是使整個(gè)閉環(huán)系統(tǒng)的傳遞函數(shù)相當(dāng)于一個(gè)帶有純滯后的一階慣性環(huán)節(jié)。該算法具有良好的控制效果。大林算法中D(z)的基本形式設(shè)被控對(duì)象為帶有純滯后的一階慣性環(huán)節(jié)或二階慣性環(huán)節(jié),其傳遞函數(shù)分別為:(1-1)(1-2)(近s+l)(T調(diào)+1)(1-2)其中“叼為被控對(duì)象的時(shí)間常數(shù),日二”為被控對(duì)象的純延遲時(shí)間,為了簡(jiǎn)化,設(shè)其為采樣周期的整數(shù)倍,即N為正整數(shù)。由于大林算法的設(shè)計(jì)目標(biāo)是使整個(gè)閉環(huán)系統(tǒng)的傳遞函數(shù)相當(dāng)于一個(gè)帶有純

滯后的一階慣性環(huán)節(jié),即舀一R¥⑦⑸TS+1,其中8=1仃由于一般控制對(duì)象均與一個(gè)零階保持器相串聯(lián),所以相應(yīng)的整個(gè)閉環(huán)系統(tǒng)的脈沖傳遞函數(shù)是1—產(chǎn)產(chǎn)(1-3)sr-s+1(1-3)于是數(shù)字控制器的脈沖傳遞函數(shù)為G0.[1-①⑵]一五G0.[1-①⑵]一五T[1-久-0_門工)產(chǎn)工)產(chǎn)1(1-4)D(z)可由計(jì)算機(jī)程序?qū)崿F(xiàn)。由上式可知,它與被控對(duì)象有關(guān)。下面分別對(duì)一階或二階純滯后環(huán)節(jié)進(jìn)行討論。一階慣性環(huán)節(jié)的大林算法的D(z)基本形式當(dāng)被控對(duì)象是帶有純滯后的一階慣性環(huán)節(jié)時(shí),由式(1-1)的傳遞函數(shù)可知,其脈沖傳遞函數(shù)為:G(z)=Z1-產(chǎn)G(z)=Z1-產(chǎn)K產(chǎn)'R IjS+1K產(chǎn):(q自+1)-z足"奧

+1)午+1午+1Z--卜也皿l-z卜也皿l-z-11-產(chǎn)徇=K(\-z-v)z-n[將此式代入(2-4),可得口⑶=卬口⑶=卬-工i-力」-0-(1-5)式中:T――采樣周期:被控對(duì)象的時(shí)間常數(shù);閉環(huán)系統(tǒng)的時(shí)間常數(shù)。二階慣性環(huán)節(jié)大林算法的D(z)基本形式當(dāng)被控對(duì)象為帶有純滯后的二階慣性環(huán)節(jié)時(shí),由式(1-1)的傳遞函數(shù)可知,其脈沖傳遞函數(shù)為

將式6屹)代入式(1-3)即可求出數(shù)字控制器的模型:(1-6)由此,我們可以設(shè)計(jì)出控制器的傳遞函數(shù),利用MATLAB工具在SIMULINK里畫出整個(gè)控制系統(tǒng),給定一個(gè)階躍信號(hào)就可得到整個(gè)控制系統(tǒng)的響應(yīng)曲線。PID算法根據(jù)偏差的比例(P)、積分(I)、微分(D)進(jìn)行控制(簡(jiǎn)稱PID控制),是控制系統(tǒng)中應(yīng)用最為廣泛的一種控制規(guī)律。實(shí)際運(yùn)行的經(jīng)驗(yàn)和理論的分析都表明,運(yùn)用這種控制規(guī)律對(duì)許多工業(yè)過(guò)程進(jìn)行控制時(shí),都能得到滿意的效果。不過(guò),用計(jì)算機(jī)實(shí)現(xiàn)PID控制,不是簡(jiǎn)單地把模擬PID控制規(guī)律數(shù)字化,而是進(jìn)一步與計(jì)算機(jī)的邏輯判斷功能結(jié)合,使PID控制更加靈活,更能滿足生產(chǎn)過(guò)程提出的要求。它的結(jié)構(gòu)如圖1.1所示:圖1-1PID結(jié)構(gòu)圖在計(jì)算機(jī)控制系統(tǒng)中,PID控制規(guī)律的實(shí)現(xiàn)必須用數(shù)值逼近的方法。當(dāng)采樣周期相當(dāng)短時(shí),用求和代替積分、用后向差分代替微分,使模擬PID離散化變?yōu)?/p>

差分方程。數(shù)字PID增量型控制算式為Au(k)=u(k)-u(k—1)二Ke(k)二Ke(k)—e(k-1)]P+Ke(k)+KIe(k)—2e(k—1)+e(k—2)](2-7)K式中P稱為比例增益;TKTKPTI稱為積分系數(shù);TKTKD=KPT稱為微分系數(shù)。為了編程方便,可將式整理成如下形式Au(k為了編程方便,可將式整理成如下形式Au(k)=qe(k)+qe(k—1)+qe(k—2)(1-8)I2Tq=-K(1+f)\1pT其中q2T其中q2T=K-DPT(1-9)第二章設(shè)計(jì)流程大林算法軟件設(shè)計(jì)流程圖數(shù)字控制器是控制系統(tǒng)的核心,用它對(duì)被測(cè)參數(shù)進(jìn)行自動(dòng)調(diào)節(jié),這里采用直接程序設(shè)計(jì)法繼續(xù)設(shè)計(jì)。程序設(shè)計(jì)流程圖如圖1。圖2-1大林算法設(shè)計(jì)程序流程圖PID算法程序設(shè)計(jì)流程圖PID控制算法種類繁多,各種控制條件下產(chǎn)生的響應(yīng)又是有區(qū)別的。在本設(shè)計(jì)中采用的是普通PID控制算法。PID算法程序設(shè)計(jì)流程圖如圖2。圖2-2PID算法程序設(shè)計(jì)流程圖第三章設(shè)計(jì)過(guò)程及結(jié)果GUI界面設(shè)計(jì)MATLAB可以創(chuàng)建圖形用戶界面GUI(GraphicalUserlnterface),它是用戶和計(jì)算機(jī)之間交流的工具。MATLAB將所有GUI支持的用戶控件都集成在這個(gè)環(huán)境中并提供界面外觀、屬性和行為響應(yīng)方式的設(shè)置方法,隨著版本的提高,這種能力還會(huì)不斷加強(qiáng)。由窗口、光標(biāo)、按鍵、菜單、文字說(shuō)明等對(duì)象(Ob2ject)構(gòu)成的一個(gè)用戶界面。用戶通過(guò)一定的方法(如鼠標(biāo)或鍵盤)選擇、激活這些圖形對(duì)象,使計(jì)算機(jī)產(chǎn)生某種動(dòng)作或變化,比如實(shí)現(xiàn)計(jì)算、繪圖等。假如科技工作者僅僅執(zhí)行數(shù)據(jù)分析、解方程等工作,一般不會(huì)考慮GUI的制作。但是如果想向客戶提供應(yīng)用程序,想進(jìn)行某種技術(shù)、方法的演示,想制作一個(gè)供反復(fù)使用且操作簡(jiǎn)單的專用工具,那么圖形用戶界面是最好的選擇之一。Matlab為表現(xiàn)其基本功能而設(shè)計(jì)的演示程序demo是使用圖形界面的最好范例。Matlab的用戶在指令窗口中運(yùn)行demo打開(kāi)圖形界面后,只要用鼠標(biāo)進(jìn)行選擇和點(diǎn)擊,就可瀏覽豐富多彩的內(nèi)容。開(kāi)發(fā)實(shí)際的應(yīng)用程序時(shí)應(yīng)該盡量保持程序的界面友好,因?yàn)槌绦蚪缑媸菓?yīng)用程序和用戶進(jìn)行交互的環(huán)境。在當(dāng)前情況下,使用圖形用戶界面是最常用的方法。提供圖形用戶界面可使用戶更方便地使用應(yīng)用程序,不需要了解應(yīng)用程序怎樣執(zhí)行各種命令,只需要了解圖形界面組件的使用方法;同時(shí),不需要了解各種命令是如何執(zhí)行的,只要通過(guò)用戶界面進(jìn)行交互操作就可以正確執(zhí)行程序GUI界面的建立1、打開(kāi)GUI或在MATLAB指令窗中運(yùn)行g(shù)uide得到如圖3-1所示:Create「整加GUIGUIDEtemdatea?BLankGUI<pel=aiJt)#GulhidiUcantrah/0UTwithAwsandMenj/MhdalQuestkxi□ieJog圖3-1創(chuàng)建GUI2、選則BlankGUI空白GUI設(shè)計(jì)工作臺(tái),如下圖所示,包含以下4個(gè)功能區(qū):菜單條、編輯工具條、控件模板區(qū)、設(shè)計(jì)工作區(qū)。圖形用戶界面設(shè)計(jì)在該區(qū)域進(jìn)行,引出圖所示的界面設(shè)計(jì)工具。用鼠標(biāo)拖動(dòng)“工作區(qū)”右下角的“小黑塊”,使工作區(qū)的大小與圖與圖大小相當(dāng)。點(diǎn)擊“軸Axes”控件圖標(biāo),然后在工作區(qū)中的適當(dāng)位置,拉出適當(dāng)大小的繪圖區(qū)。類似上步操作,通過(guò)點(diǎn)擊相應(yīng)的“靜態(tài)文本StaticText”、可編輯文本“EditText"、按鍵“PushButton”用鼠標(biāo)拖拉出相應(yīng)的控件,如圖

圖3-2GUI圖3-2GUI空白頁(yè)3、圖形窗口和控件的某些參數(shù)進(jìn)行設(shè)置雙擊工作區(qū)或控件可引出圖形和相應(yīng)控件的“屬性編輯框PropertyInspector”。圖顯示的是軸屬性的編輯框。售Inspectorfigure(Unti_EeingDeletedBusy恥EriButtonDawnFcnoffClippingClossRequestFcnEColorqueue售Inspectorfigure(Unti_EeingDeletedBusy恥EriButtonDawnFcnoffClippingClossRequestFcnEColorqueue感on述chsereqCreateFcnCurrentCharccterECurrentPoint[^,2-0,077]DockcontrolsonTFileNameHandleVisibilitycallback▼HitTestonTIntegerHandleoffTInterruptibleonTInvertHardcopyon▼KeyPressFcn遢6KeyReleaseFcn夠MenuBarnoneUntitledNameDeleteFcn圖3-3屬性框4、創(chuàng)建菜單點(diǎn)擊“菜單編輯器”圖標(biāo),引出空白菜單編輯對(duì)話窗點(diǎn)擊“菜單編輯對(duì)話窗”最左上方的“新菜單NewMenu”圖標(biāo),在左側(cè)空白窗口中,出現(xiàn)“Untitled1”圖標(biāo);再點(diǎn)擊此圖標(biāo),就在右側(cè)引出類似于圖右側(cè)的填寫欄;在“Lable”中填寫Options;在“Tag”中填寫optios;于是左側(cè)的“Untiled1”圖標(biāo)變成“Options”圖標(biāo)。先點(diǎn)亮左側(cè)的“Options”圖標(biāo),再點(diǎn)擊菜單編輯對(duì)話窗上的“心菜單項(xiàng)NewMenuIterm”圖標(biāo),就引出待定義的菜單項(xiàng);在左側(cè)的“Lable”填寫B(tài)oxon,在“Tag”填寫box_on。重復(fù)該小步的操作,建立另一個(gè)菜單項(xiàng)Boxoff,如圖:

圖3-4菜單項(xiàng)界面的激活和回調(diào)函數(shù)生成經(jīng)以上操作后,工作臺(tái)上所制作的界面外形及所含構(gòu)件已經(jīng)符合設(shè)計(jì)要求,但這個(gè)界面各構(gòu)件之間的通訊還沒(méi)有建立,為此必須激活處理。點(diǎn)擊工作臺(tái)上“激活A(yù)ctivateFigure”工具圖標(biāo),就引出2個(gè)界面:名為Myguil的圖形用戶界面;展示名為myguil的M函數(shù)文件的文件編輯器界面。在此同時(shí),在當(dāng)前目錄上,由MATLAB自動(dòng)生成2個(gè)文件,即Myguil.fig和目myguil.m。制作GUI界面首先找到所需要的相應(yīng)控件,然后根據(jù)自己的設(shè)計(jì)想法進(jìn)行擺正控件。本設(shè)計(jì)中所需要的控件主要是按鈕,文本,波形圖以及輸入框。按照自己的思路擺放成的總結(jié)面如下:圖3-5大林算法總界面3.2Simulink設(shè)計(jì)圖3-6PID控制總界面大林算法圖3-5大林算法總界面3.2Simulink設(shè)計(jì)圖3-6PID控制總界面大林算法Simulink根據(jù)設(shè)計(jì)任務(wù)要求,進(jìn)行數(shù)學(xué)建模。首先是大林算法的,根據(jù)第一章介紹的(1-1',*0-產(chǎn)匕)算法過(guò)程中所得到的,進(jìn)行數(shù)據(jù)代入,算出D(Z)的最終表達(dá)式。并根據(jù)任務(wù)要求進(jìn)行參數(shù)的填入,如圖所示:設(shè)置控制溫度為1000℃Finalvalue:Sampletijne(-1forinherited):Finalvalue:1000,系統(tǒng)時(shí)間周期為10,時(shí)間常數(shù)為60,最后得到大林算法的Simulink圖:1000,系統(tǒng)時(shí)間周期為10,時(shí)間常數(shù)為60,最后得到大林算法的Simulink圖:Trnidelay:33圖3-7大林算法Simulink圖運(yùn)行得到波形圖:

TOC\o"1-5"\h\z?COO i _j_— | I:■_---.:.■500- : 二下工 : : : :1 -HBOQ- … : ?: - -: : : :. —H::,:::?L口一 丁 - ": —::E00- ; ; ; ■-- - : : : " —■500 ../ j : .: ■■ : : : : : ^ ^ : :400--;1 : : : ,: - : :? :? —H300-: :■ : ": :. ■: : : :. -H200--( :■ : ; ■: ?: : ■?co/ ■■: ; ; ■-- 1 ■ : : ■-- —n? ii ii.0 9001COO150020TO29T 3:00SOO40CO4910 9000TimftcfiaBt;G圖3-8大林算法Simulink下的波形圖3.2.2PID控制算法Simulink同理進(jìn)行PID控制器的Simulink進(jìn)行設(shè)計(jì),根據(jù)第一章所得到的公式Au(k)=u(k)-u(k—1):KPe(k)—e(k—1)]+Ke(k)+KD\e(k)—2e(k—1)+e(k—2)]和TTq0=KP(1+T+手)I2Tq=-K(1+—DiptTq2=KP千ProportionalCP):Integral(I):進(jìn)行參數(shù)數(shù)據(jù)的定義。給出q0=P,q1=I,q2=D的數(shù)值igy一力LL3口.口口25口,時(shí)LL3口.口口25口,時(shí)間周期為10Ssnpletims則,時(shí)間常數(shù)為60幽 ,最后的Simulink仿真圖為:圖3-9PID控制算法Simulink圖運(yùn)行得到波形圖:圖3-10PID控制算法Simulink下的波形圖程序設(shè)計(jì)本次課程設(shè)計(jì)主要使用的是MATLAB編程語(yǔ)言。早期用于科學(xué)計(jì)算的計(jì)算機(jī)語(yǔ)言,由于計(jì)算機(jī)內(nèi)存容量和運(yùn)算速度的限制等原因,常常要定義常量、變量、向量和矩陣等的不同的數(shù)據(jù)類型,結(jié)果導(dǎo)致編程過(guò)于復(fù)雜化。和這些語(yǔ)言不一樣,MATLAB語(yǔ)言對(duì)他們進(jìn)行了高度抽象,實(shí)現(xiàn)了數(shù)據(jù)類型的高度統(tǒng)一,即常量、變量、向量和矩陣等都具有相同的數(shù)據(jù)類型。MATLAB語(yǔ)言認(rèn)為所有的數(shù)據(jù)都是一個(gè)對(duì)象類,都具有相同的屬性。因此,用戶不需要事先分別定義常量、變量、向量和矩陣等的數(shù)據(jù)類型就可以直接使用他們,當(dāng)然MATLAB的這種設(shè)計(jì)思想是以高性能計(jì)算機(jī)的出現(xiàn)和普及作為前提條件的,編程得到了很大簡(jiǎn)化。MATLAB語(yǔ)言是一種“數(shù)學(xué)形式的語(yǔ)言”。它的操作和功能函數(shù)指令就是用平時(shí)計(jì)算機(jī)和數(shù)學(xué)書上的英文單詞和符號(hào)來(lái)表達(dá)的,比BASIC、FORTRAN和C等語(yǔ)言更接近于人們書寫的數(shù)學(xué)計(jì)算公式、更接近于人們進(jìn)行科學(xué)計(jì)算的思維方式。用MATLAB語(yǔ)言編寫程序猶如在演算紙上排列公式與求解問(wèn)題,故有人稱MATLAB編程語(yǔ)言為“演算紙”式科學(xué)算法語(yǔ)言。因此,MATLAB語(yǔ)言簡(jiǎn)單自然,學(xué)習(xí)和使用更容易。MATLAB程序文件是一個(gè)純文本文件,擴(kuò)展名為.m,用任何字處理軟件都可以對(duì)它進(jìn)行編輯。MATLAB本身就像一個(gè)解釋系統(tǒng),對(duì)其中的函數(shù)程序的執(zhí)行以一種解釋執(zhí)行的方式進(jìn)行,程序不必經(jīng)過(guò)編譯就可以直接運(yùn)行,而且能夠及時(shí)報(bào)告出現(xiàn)的錯(cuò)誤,進(jìn)行出錯(cuò)原因分析。因此,程序調(diào)試容易、編程效率高。MATLAB的用戶界面精致,接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性強(qiáng),操作簡(jiǎn)單。新版本的MATLAB提供了完整的聯(lián)機(jī)查詢、幫助系統(tǒng),極大地方便了用戶的使用。大林算法編程首先根據(jù)所畫的界面圖可知,需先得到放大倍數(shù)K,時(shí)間常即,仿真時(shí)間Tf和采樣周期Tm的輸入值,所以這里就用到get()和str2double()兩條語(yǔ)句,具體程序如下:a=get(handles.edit1,'String');/得到handles.edit1的數(shù)值;Tf=str2double(a); /把值賦給Tf;b=get(handles.edit2,'String');Tm=str2double(b);c=get(handles.edit5,'String');K=str2double(c);d=get(handles.edit4,'String');Ti=str2double(d);接下來(lái)就是設(shè)計(jì)任務(wù)給定的控制溫度,及時(shí)間周期,r=1000,T=10。數(shù)學(xué)模型G(s)的表達(dá)式[A,B,C,D]=tf2ss(K,[Ti1]),[G,H,Cd,Dd]=c2dt(A,B,C,T,60)。然后就是根據(jù)第一章所介紹的大林算法的計(jì)算過(guò)程進(jìn)行程序編譯,具體如下:a0=1/8;a1=exp(-Tm/400)/8;b1=exp(-Tm/400);b2=1-exp(-Tm/400);u1=0;u2=0;u3=0;u4=0;u5=0;u6=0;u7=0;e1=0;y=0;y1=0;t=0;x=zeros(size(G,1),1);fori=1:Tf/Tme=r-y(end);u=a0*e-a1*e1+b1*u1+b2*u7;forj=1:Tm/Tx=G*x+H*u;y=[y,Cd*x+Dd*u];t=[t,t(end)+T];endu7=u6;u6=u5;u5=u4;u4=u3;u3=u2;u2=u1;u1=u;y1=y(end);e1=e;end最后把編出的程序放到運(yùn)行按鈕的callback下,即在functionpushbutton1_Callback(hObject,eventdata,handles)這條語(yǔ)句下進(jìn)行編程。完成編譯,寫入812,T=10,Tf=4000,Tm=10,運(yùn)行得到圖形如下:技人芒她町,司■常燭400伯立日?1可4(300泰祥周期 技人芒她町,司■常燭400伯立日?1可4(300泰祥周期 10Simulink仿真波形川口控制系統(tǒng)1000 2000 3000 400:大林算法的爐溫控制披弗圖圖3-11大林算法波形圖PID控制算法編程與大林算法的步驟基本相同,只是在算法編程過(guò)程中改變了。這里同樣用到get()和str2double()兩條語(yǔ)句,并寫出G(s)的表達(dá)式和給定的控制溫度及時(shí)間周期。具體如下:a=get(handles.edit4,'String');K=str2double(a);b=get(handles.edit5,'String');T=str2double(b);c=get(handles.edit1,'String');kp=str2double(c);d=get(handles.edit2,'String');ki=str2double(d);e=get(handles.edit3,'String');kd=str2double(e);ts=10;sys=tf([K],[T,1],'inputdelay',60);dsys=c2d(sys,ts,'zoh');[num,den]=tfdata(dsys,'v');在根據(jù)第一章所介紹的PID簡(jiǎn)單控制算法進(jìn)行算法的編程,得到的具體程序如下:u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;ud_1=0;y_1=0;y_2=0;y_3=0;error_1=0;ei=0;fork=1:1:400time(k)=k*ts;rin(k)=1000;yout(k)=-den(2)*y_1+num(2)*u_5;error(k)=rin(k)-yout(k);ei=ei+error(k)*ts;gama=0.50;Td=kd/kp;Ti=0.5;c1=gama*Td/(gama*Td+ts);c2=(Td+ts)/(gama*Td+ts);c3=Td/(gama*Td+ts);u(k)=kp*error(k)+kd*(error(k)-error_1)/ts+ki*ei;ifu(k)>=1500u(k)=1500;endifu(k)<=-1500u(k)=-1500;endu_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);y_3=y_2;y_2=y_1;y_1=yout(k);error_2=error_1;error_1=error(k);end同樣把編出的程序放到運(yùn)行按鈕的callback下,即在functionpushbutton1_Callback(hObject,eventdata,handles)這條語(yǔ)句下進(jìn)行編程。完成編譯,寫入81,T=400,Kp=1,Ki=0.005,Kd=0,運(yùn)行得到圖形如下:圖3-12PID控制算法波形圖1200技五五數(shù)1000IL問(wèn)市行 圖3-12PID控制算法波形圖1200技五五數(shù)1000IL問(wèn)市行 400Q.OO5娥其波形100D20CD3000PD爐溫控制系統(tǒng)放形兩種算法的比較大林算法適合用于沒(méi)有超調(diào)或較小的超調(diào),而對(duì)快速性要求不高的場(chǎng)合。需要消除振鈴現(xiàn)象PID算法PID控制多年來(lái)受到廣泛的的應(yīng)用,PID在解決快速性、穩(wěn)態(tài)誤差、超調(diào)量等問(wèn)題上具有很好的應(yīng)用。PID的調(diào)整時(shí)間,動(dòng)態(tài)性能都很好。但是PID也有需要改進(jìn)的地方。改進(jìn):積分項(xiàng)的改進(jìn)在PID控制中,積分作用是消除穩(wěn)態(tài)誤差,提高控制精度。但是很多時(shí)候積分作用又會(huì)對(duì)系統(tǒng)的動(dòng)態(tài)響應(yīng)造成不良影響,是系統(tǒng)產(chǎn)生大的超調(diào)或時(shí)間震蕩。具體的改進(jìn)有(1)積分項(xiàng)的改進(jìn)有積分分離法抗積分飽和法(2)微分項(xiàng)的改進(jìn)有不完全微分PID控制算法微分先行PID控制算法在大林算法得到的波形圖中,超調(diào)量趨近于零,上升時(shí)間1000s,穩(wěn)態(tài)誤差趨近于零。而在PID控制算法中,存在靜差,是有差調(diào)節(jié),對(duì)于擾動(dòng)較大,且慣性也較大的系統(tǒng),若采用單純的比例調(diào)節(jié),則很難兼顧動(dòng)態(tài)和靜態(tài)特性仿真結(jié)果。說(shuō)明采用大林算法可顯著減小超調(diào),也可做到很小的穩(wěn)態(tài)誤差。從系統(tǒng)設(shè)計(jì)中我們可以看出,大林算法的輸出不僅是以偏差為依據(jù)的,還和前N次的輸出有關(guān),但所起的作用不盡相同。大林算法由于參考了歷史輸出情況,且滯后越大,參考時(shí)間越長(zhǎng),因此能更有效的抑制超調(diào)。可見(jiàn)大林算法的適應(yīng)能力很強(qiáng),跟蹤速度比較快,是具有較大滯后對(duì)象的一種較理想的控制算法。第四章總結(jié)本文首先從電阻爐在當(dāng)今社會(huì)的生產(chǎn)和發(fā)展,進(jìn)而介紹其控制系統(tǒng)的優(yōu)缺點(diǎn),導(dǎo)出大林算法和PID控制器及其算法。從而引出我們對(duì)這兩種控制算法的理解和仿真具有重大意義,介紹了這兩種控制技術(shù)的發(fā)展歷史和研究進(jìn)展。進(jìn)而提出什么是大林算法,什么是PID控制算法、控制算法的基本結(jié)構(gòu)。通過(guò)網(wǎng)上資料找到了大林算法的定義及由來(lái),找到普通PID控制算法。在學(xué)習(xí)的基礎(chǔ)上,自定義了自由導(dǎo)入?yún)?shù)來(lái)查看其波形圖。并進(jìn)行了在同參數(shù)的情況下,對(duì)大林算法和PID控制器算法進(jìn)行對(duì)比。本次課程設(shè)計(jì)的控制方法知識(shí)規(guī)則的推理都大部分借助計(jì)算機(jī)程序,因此對(duì)這種控制器的開(kāi)發(fā)需要有比較專業(yè)的計(jì)算機(jī)語(yǔ)言,在這里用到的MATLAB語(yǔ)言以及所屬的Simulink仿真控件。在整個(gè)設(shè)計(jì)過(guò)程中,使我對(duì)所學(xué)知識(shí)進(jìn)行了一個(gè)比較大的綜合鞏固,讓我學(xué)會(huì)了各種查閱資料以及整理所需材料的能力,通過(guò)這次的課題設(shè)計(jì),也讓我學(xué)習(xí)到了不少新知識(shí),在幾個(gè)星期的學(xué)習(xí)實(shí)踐中學(xué)到的東西比以往學(xué)到的都要豐富,因?yàn)槲也粌H學(xué)到了一些新的專業(yè)知識(shí)還鍛煉了自己解決問(wèn)題的能力,這是不可多得的。但是,在設(shè)計(jì)過(guò)程中我也遇到了不少困難,感覺(jué)自己對(duì)所學(xué)專業(yè)知識(shí)的欠缺,讓自己增加了緊迫感,要抓緊彌補(bǔ)自己的欠缺,學(xué)無(wú)止境,這也讓我體會(huì)到了不管以后走上什么樣的工作崗位,都不要拋棄自己的學(xué)習(xí),不進(jìn)則退,別人的進(jìn)步自己的停滯不前終將導(dǎo)致自己的被淘汰,這是我在整個(gè)課題設(shè)計(jì)過(guò)程中最大的體會(huì)。致謝在這里我要感謝楊國(guó)亮老師的辛苦指導(dǎo),我成功完成本次課程設(shè)計(jì)雖然主要是來(lái)自于網(wǎng)絡(luò)的幫助,但是楊老師的指導(dǎo)卻是不可缺少的。開(kāi)始拿到課程題目,我根本就無(wú)從下手,是楊老師在黑板上給我們講解題目的含義,并給出了我們所要完成的一步步的要求。我也要感謝我的團(tuán)隊(duì)組員,是他們和我一步步的完成。從一開(kāi)始的計(jì)算,雖然算了好幾次都是不正確的,但是我們并沒(méi)有灰心,一直在繼續(xù)的努力著。這個(gè)組員算錯(cuò)了,換下一位組員繼續(xù)去算,每一個(gè)都有自己的算法思路。最后,總結(jié)大家的想法,黃天不負(fù)有心人,我們成功的完成了。本次課程設(shè)計(jì),我組主要采取分工合作,每一位組員都有自己的任務(wù)。有的負(fù)責(zé)大林算法的計(jì)算,有的負(fù)責(zé)去編輯大林算法的程序,有的負(fù)責(zé)simusink的設(shè)計(jì),有的……最后,祝楊老師身體健康,同學(xué)們的課程設(shè)計(jì)都能圓滿的成功。參考文獻(xiàn)【1】、劉金錕?先進(jìn)PID控制及其MATLAB仿真?電子工業(yè)出版社,2009。【2】、郝麗娜?計(jì)算機(jī)仿真技術(shù)及CAD?高等教育出版社,2009。【3】、吳壽松?自動(dòng)控制原理?科學(xué)出版社,2007?!?】、楊琳娟等?大林算法在爐溫控制中的應(yīng)用?儀器儀表學(xué)報(bào),2005。附錄1、大林算法程序a=get(handles.edit1,'String');Tf=str2double(a);b=get(handles.edit2,'String');Tm=str2dou

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論