![(參考)基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)開(kāi)發(fā)參考模板_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/9eb28676-9be2-4219-85d6-09936167d468/9eb28676-9be2-4219-85d6-09936167d4681.gif)
![(參考)基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)開(kāi)發(fā)參考模板_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/9eb28676-9be2-4219-85d6-09936167d468/9eb28676-9be2-4219-85d6-09936167d4682.gif)
![(參考)基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)開(kāi)發(fā)參考模板_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/9eb28676-9be2-4219-85d6-09936167d468/9eb28676-9be2-4219-85d6-09936167d4683.gif)
![(參考)基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)開(kāi)發(fā)參考模板_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/9eb28676-9be2-4219-85d6-09936167d468/9eb28676-9be2-4219-85d6-09936167d4684.gif)
![(參考)基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)開(kāi)發(fā)參考模板_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/9eb28676-9be2-4219-85d6-09936167d468/9eb28676-9be2-4219-85d6-09936167d4685.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄摘要1Abstract11 緒論21.1 本文研究背景21.2 本文的選題意義21.3 本文的任務(wù)和要求31.3.1 本文任務(wù)31.3.2 本文要求32 自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)總體概述及其實(shí)現(xiàn)工具介紹32.1 MATLAB工具介紹32.2 Simulink工具簡(jiǎn)單介紹42.3 GUI簡(jiǎn)單介紹與可視化接口環(huán)境42.3.1 GUI概念介紹42.3.2 GUI圖形用戶(hù)界面的打開(kāi)52.4 自動(dòng)控制原理簡(jiǎn)單介紹73 虛擬實(shí)驗(yàn)平臺(tái)總體概述73.1 虛擬實(shí)驗(yàn)平臺(tái)設(shè)計(jì)原則73.2 虛擬實(shí)驗(yàn)平臺(tái)設(shè)計(jì)界面模塊結(jié)構(gòu)及功能73.2.1 平臺(tái)模塊結(jié)構(gòu)73.2.2 平臺(tái)功能84 自動(dòng)控制原理實(shí)驗(yàn)在虛擬實(shí)驗(yàn)平臺(tái)的實(shí)現(xiàn)
2、94.1 平臺(tái)界面的總體要求94.2 主界面的設(shè)計(jì)94.3 線(xiàn)型系統(tǒng)時(shí)域分析界面134.3.1 時(shí)域分析法的介紹134.3.2 時(shí)域分析界面的設(shè)計(jì)144.4 線(xiàn)型系統(tǒng)根軌跡分析界面174.4.1 根軌跡法的介紹184.4.2 根軌跡界面的設(shè)計(jì)184.5 線(xiàn)性系統(tǒng)頻域分析界面194.5.1 頻域法的介紹194.5.2 頻域分析界面的設(shè)計(jì)204.6 控制系統(tǒng)校正實(shí)驗(yàn)界面224.6.1 控制系統(tǒng)校正介紹224.6.2 控制系統(tǒng)校正實(shí)驗(yàn)界面的設(shè)計(jì)225 結(jié)論25參考文獻(xiàn)26附錄127致謝551 / 64 1 緒論1.1 本文研究背景對(duì)于大學(xué)生而言自動(dòng)控制原理是大學(xué)階段的自動(dòng)控制工程、機(jī)器自動(dòng)控制操作、
3、物流設(shè)備工程等專(zhuān)業(yè)的重要的專(zhuān)業(yè)基礎(chǔ)課程,涉及到自動(dòng)控制系統(tǒng)的模型建立、系統(tǒng)分析、系統(tǒng)設(shè)計(jì)的相關(guān)基本理論和相關(guān)技術(shù)設(shè)計(jì)。它的典型特點(diǎn)是概念比較抽象,數(shù)字含量巨大,計(jì)算相當(dāng)復(fù)雜,從而導(dǎo)致學(xué)生比較難于理解和消化,實(shí)驗(yàn)是理解和消化相關(guān)課程內(nèi)容的非常重要的途徑。目前相當(dāng)多的大學(xué)高校的實(shí)驗(yàn)教學(xué)仍處于傳統(tǒng)模擬實(shí)驗(yàn)階段,通過(guò)利用集成封閉的傳統(tǒng)實(shí)驗(yàn)箱,將相應(yīng)的有源網(wǎng)絡(luò)模塊整個(gè)連接成了典型環(huán)節(jié)和系統(tǒng),然后施加典型信號(hào),通過(guò)示波器仔細(xì)觀察實(shí)驗(yàn)結(jié)果。然而對(duì)于這種實(shí)驗(yàn)方法仍存在明顯不足,比如說(shuō)(1)實(shí)驗(yàn)室的實(shí)驗(yàn)箱集成度很高,從而讓學(xué)生對(duì)實(shí)驗(yàn)?zāi)康暮蛯?shí)驗(yàn)計(jì)劃出現(xiàn)盲目性,所以很容易導(dǎo)致?lián)p壞儀器設(shè)備。(2)學(xué)生的理論性知識(shí)和實(shí)
4、驗(yàn)動(dòng)手操作是互相分開(kāi)的,導(dǎo)致了學(xué)生缺乏主動(dòng)性學(xué)習(xí)和創(chuàng)造性性學(xué)習(xí)。(3)因?yàn)樵姆蔷€(xiàn)性等一些元素,導(dǎo)致了實(shí)驗(yàn)結(jié)果與理論知識(shí)差異較大,相距甚遠(yuǎn)。為了改變這種現(xiàn)象,我們通過(guò)利用MATLAB中的具有可視化編程能力的圖形用戶(hù)界面(簡(jiǎn)稱(chēng)GUI)和控制系統(tǒng)工具箱中的有關(guān)的豐富的庫(kù)函數(shù)等,開(kāi)發(fā)出了基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)。1.2 本文的選題意義自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)就是把真實(shí)的相關(guān)的自動(dòng)控制環(huán)節(jié)、系統(tǒng)和數(shù)學(xué)建模有機(jī)地結(jié)合的一個(gè)實(shí)驗(yàn)操作平臺(tái)。學(xué)生不僅可以在平臺(tái)上修改相關(guān)的實(shí)驗(yàn)參數(shù)、改變相關(guān)的輸入信號(hào)、觀察相應(yīng)的響應(yīng)情況,同時(shí)還可以觀察數(shù)學(xué)模型的具體的變化情況。MATLAB是面對(duì)科學(xué)計(jì)算的高
5、性能可視化編程仿真軟件,GUI是一種的圖形用戶(hù)界面。通過(guò)MATLAB/GUI設(shè)計(jì)和開(kāi)發(fā)自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái),不但能很好地解決傳統(tǒng)實(shí)驗(yàn)存在的問(wèn)題,加深對(duì)自動(dòng)控制原理理論課程內(nèi)容的理解,更能使學(xué)生擺脫復(fù)雜的數(shù)學(xué)公式,對(duì)新知識(shí)產(chǎn)生濃厚的探索興趣。在設(shè)計(jì)過(guò)程中,我通過(guò)查閱相關(guān)的資料,增強(qiáng)了自己的自我學(xué)習(xí)能力和思考能力,同時(shí)通過(guò)向老師和同學(xué)的虛心求教,增強(qiáng)了自己的溝通能力。1.3 本文的任務(wù)和要求1.3.1 本文任務(wù)本次畢業(yè)設(shè)計(jì)研究的任務(wù)是基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)的實(shí)現(xiàn),簡(jiǎn)單的要求是用MATLAB中的GUI建成一個(gè)可視化的圖形開(kāi)發(fā)平臺(tái),在這個(gè)平臺(tái)上去實(shí)現(xiàn)自動(dòng)控制原理各個(gè)實(shí)驗(yàn)要求和實(shí)
6、驗(yàn)功能,驗(yàn)證實(shí)驗(yàn)原理。1.3.2 本文要求通過(guò)自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)實(shí)現(xiàn)線(xiàn)型系統(tǒng)的時(shí)域分析、線(xiàn)性系統(tǒng)的根軌跡分析、線(xiàn)型系統(tǒng)的頻域分析、控制系統(tǒng)的串聯(lián)校正實(shí)驗(yàn),然后重點(diǎn)介紹線(xiàn)性系統(tǒng)的時(shí)域分析的具體的原理、方法、實(shí)現(xiàn)的功能、實(shí)驗(yàn)操作過(guò)程以及仿真圖形。2 自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)總體概述及其實(shí)現(xiàn)工具介紹2.1 MATLAB工具介紹 我們?cè)谠O(shè)計(jì)自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)的時(shí)候需要用到MATLAB設(shè)計(jì)工具,以此搭建我們所想要的虛擬實(shí)驗(yàn)平臺(tái),為了對(duì)后面更好地的設(shè)計(jì)與實(shí)驗(yàn),我們需要了解MATLAB的發(fā)展歷史以及它的功能,掌握軟件的實(shí)際操作原理。在20世紀(jì)80年代以來(lái),為了研究某種問(wèn)題,各種計(jì)算機(jī)語(yǔ)言接連出現(xiàn)
7、,當(dāng)然,在數(shù)學(xué)研究當(dāng)中,為了更好地更方便地?cái)?shù)值計(jì)算、科學(xué)研究、工程計(jì)算等其他方面,MATLAB軟件應(yīng)運(yùn)而生。MATLAB是由美國(guó)人MathWorks公司推出,是MATrix LABoratory的縮寫(xiě),中文名稱(chēng)是矩陣實(shí)驗(yàn)室。自推廣以來(lái),得到了社會(huì)上的普遍認(rèn)同以及廣泛的應(yīng)用,發(fā)展至今推出了各種版本,里面的功能越來(lái)越豐富和強(qiáng)大,同時(shí)它的語(yǔ)言易于掌握,所以深受各大高等學(xué)校的喜愛(ài)以及科學(xué)研究人員的使用,尤其在歐美高校,MATLAB軟件的使用成為了學(xué)生的必備的學(xué)習(xí)技能。毋庸置疑,MATLAB的功能相當(dāng)強(qiáng)大,可以用于數(shù)值分析、數(shù)值和符號(hào)計(jì)算、工程與科學(xué)繪圖、控制系統(tǒng)的設(shè)計(jì)與仿真以及圖形處理,同時(shí)具有內(nèi)容強(qiáng)
8、大的工具箱進(jìn)行設(shè)計(jì)開(kāi)發(fā)。MATLAB是一個(gè)具有很強(qiáng)的開(kāi)放性軟件,除了可以利用的內(nèi)部函數(shù)外,我們可以自己對(duì)里面的源文件進(jìn)行修改或者可以加入自己編寫(xiě)好的文件進(jìn)行設(shè)計(jì)使用。2.2 Simulink工具簡(jiǎn)單介紹Simulink是Math Works軟件公司在1990年推出來(lái)的,它是實(shí)現(xiàn)控制系統(tǒng)進(jìn)行構(gòu)造模型、仿真設(shè)計(jì)和分析的軟件包,簡(jiǎn)單來(lái)說(shuō)就是MATLAB軟件功能的一種拓展,它提供了不同功能的基本系統(tǒng)模塊,我們只要知道這些模塊的輸入、輸出以及它的功能,而不必知道各種模塊的里面具體的功能與實(shí)現(xiàn),只要通過(guò)各種模塊的調(diào)用與連接就能構(gòu)造出我們所需要的系統(tǒng)模型,文件存儲(chǔ)形式以.mdl形式存取,最后我們可以基于此進(jìn)
9、行方針與分析。對(duì)于簡(jiǎn)單的控制系統(tǒng)來(lái)說(shuō),我們可以利用相關(guān)的函數(shù)和相關(guān)的線(xiàn)性方程進(jìn)行求解,但對(duì)更為復(fù)雜的系統(tǒng)來(lái)說(shuō),我們之前的方法就不可以實(shí)現(xiàn)了,所以則必須使用Simulink進(jìn)行仿真與分析。2.3 GUI簡(jiǎn)單介紹與可視化接口環(huán)境2.3.1 GUI概念介紹由菜單、窗口、對(duì)話(huà)框等各種圖形元素構(gòu)成的用戶(hù)界面被叫做圖形用戶(hù)界面,英文名稱(chēng)是Graphical User Interface,簡(jiǎn)稱(chēng)GUI。它是計(jì)算機(jī)與用戶(hù)進(jìn)行信息交流的窗口和平臺(tái),在自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)設(shè)計(jì)當(dāng)中它賦予著主要設(shè)計(jì)工作。對(duì)于GUI操作應(yīng)該是易于理解的便于操作的,當(dāng)我們點(diǎn)擊某項(xiàng)操作的時(shí)候,用戶(hù)圖形界面就已經(jīng)開(kāi)始了它的功能操作。MAT
10、LAB作為一款強(qiáng)大的科學(xué)計(jì)算軟件,同時(shí)也提供了圖形用戶(hù)界面設(shè)計(jì)的功能,它包括了三類(lèi)圖形用戶(hù)界面對(duì)象,包括用戶(hù)界面控件對(duì)象、下拉式菜單對(duì)象和快捷菜單對(duì)象。根據(jù)我們所想要的圖形用戶(hù)界面對(duì)象,我們可以設(shè)計(jì)出界面非常友好、操作相當(dāng)方便的圖形用戶(hù)界面。在MATLAB軟件中,為GUI開(kāi)發(fā)提供了一個(gè)非常方便且高效的集成開(kāi)發(fā)環(huán)境GUIDE。GUIDE主要是一個(gè)界面設(shè)計(jì)工具集,所有GUI設(shè)計(jì)都被MATLAB支持在這個(gè)集成的環(huán)境中。GUIDE將所有設(shè)計(jì)好的GUI設(shè)計(jì)模型保存在一個(gè).fig文件當(dāng)中,并且同時(shí)生成了.m文件,對(duì)于.fig文件設(shè)計(jì),它包括了GUI圖形窗口以及圖形窗口對(duì)象,對(duì)于.m文件而言,它包括了GUI
11、設(shè)計(jì)、控制函數(shù)及其定義為子函數(shù)的用戶(hù)控件回調(diào)函數(shù)。GUIDE在GUI設(shè)計(jì)過(guò)程中直接自動(dòng)生成了.m文件框架,它所具有的優(yōu)點(diǎn)如下: (a).m文件在.fig文件生成的同時(shí)就已經(jīng)生成了一些必要的代碼。 (b)管理圖形對(duì)象句柄并執(zhí)行回調(diào)函數(shù)的子程序。 (c)支持自動(dòng)插入回調(diào)函數(shù)原型。 (d)提供了管理全局變量的便利途徑。2.3.2 GUI圖形用戶(hù)界面的打開(kāi)在MATLAB中打開(kāi)GUI可以以下的操作方法(1) 選擇菜單欄上的“File”選項(xiàng),再選擇“New”選項(xiàng),最后得到“GUI”命令。(2) 在命令窗口(commend Windows)當(dāng)中輸入“Guide”命令或者輸入“Guide Filename”,
12、同樣可以打開(kāi)可視化接口。(3) 選擇菜單欄上的“GUIDE”快速啟動(dòng)按鈕,可以直接打開(kāi)界面。MATLAB軟件為GUI圖形用戶(hù)界面設(shè)計(jì)總共準(zhǔn)備了4種模板,包括Blank GUI(默認(rèn))、GUI with Uicontrols(帶控件對(duì)象的GUI模板)、GUI with Axes and Menu(帶坐標(biāo)軸與菜單的GUI模板)與Modal Question Dialog(帶模式問(wèn)話(huà)對(duì)話(huà)框的GUI模板)。如下圖圖2-1 GUI的初始化界面如果沒(méi)有設(shè)計(jì)好的可視化圖形文件,我們要選擇空白的可視化文件,即Blank GUI(空白),然后點(diǎn)擊OK按鈕,就會(huì)顯示出GUI設(shè)計(jì)窗口,如下圖2-2。圖2-2 GUI
13、設(shè)計(jì)窗口從GUI設(shè)計(jì)窗口可以看出,共有五個(gè)設(shè)計(jì)工具,它們分別是:(a) 對(duì)象屬性查看器(Property):可以查看每個(gè)對(duì)象的屬性值,同時(shí)可以修改設(shè)置對(duì)象的屬性值。(b) 菜單編輯器(Menu Editor):對(duì)下拉式菜單進(jìn)行創(chuàng)建、設(shè)計(jì)和修改。(c) 位置調(diào)整工具(Alignment Tool):多個(gè)對(duì)象通過(guò)該工具左右、上下進(jìn)行位置進(jìn)行調(diào)整。(d) 對(duì)象瀏覽器(Object Browser):可以觀察當(dāng)前設(shè)計(jì)階段的各個(gè)句柄圖形對(duì)象。(e) Tab順序編輯器(Tab Order Editor):通過(guò)該工具,設(shè)置當(dāng)按下鍵盤(pán)上的Tab鍵時(shí),對(duì)象被選中的先后順序。通過(guò)控件的布局,相應(yīng)的生成了m函數(shù)文件
14、,對(duì)于空間的性能,我們可以通過(guò)在回調(diào)函數(shù)里面進(jìn)行相應(yīng)的修改,以達(dá)到自己的要求,通過(guò)這樣的方法可以很方便的設(shè)計(jì)出友好的,簡(jiǎn)潔的,功能強(qiáng)大的圖形界面。2.4 自動(dòng)控制原理簡(jiǎn)單介紹隨著計(jì)算機(jī)技術(shù)的飛快的發(fā)展和廣泛的應(yīng)用,自動(dòng)控制原理理論和技術(shù)在宇宙航空、機(jī)器人控制、導(dǎo)彈制導(dǎo)衛(wèi)星發(fā)射和核能等高科技領(lǐng)域方面的應(yīng)用越來(lái)越廣泛。同時(shí)自動(dòng)控制原理技術(shù)的應(yīng)用范圍現(xiàn)在已擴(kuò)展到生物、醫(yī)學(xué)、環(huán)境等生活中的其他領(lǐng)域,成為人們生活當(dāng)中不可或缺的一部分。隨著人類(lèi)社會(huì)的進(jìn)步和人們生活水平的提高,自動(dòng)控制原理技術(shù)必將在人類(lèi)的未來(lái)當(dāng)中對(duì)于人類(lèi)去認(rèn)識(shí)自然改造自然發(fā)揮著難以想象的作用。所以對(duì)于一個(gè)工程技術(shù)人員,學(xué)習(xí)自動(dòng)控制原理有關(guān)的
15、知識(shí)有必要的。同時(shí)大學(xué)階段的學(xué)習(xí)已經(jīng)把自動(dòng)控制原理當(dāng)作一門(mén)專(zhuān)業(yè)基礎(chǔ)課程,尤其是電氣自動(dòng)化、電力系統(tǒng)、船舶與海洋工程等相關(guān)的專(zhuān)業(yè)都已經(jīng)開(kāi)設(shè)了這門(mén)課程。自動(dòng)控制原理的主要內(nèi)容包括控制系統(tǒng)數(shù)學(xué)模型、時(shí)域分析法、根軌跡分析法、頻域分析發(fā)以及控制系統(tǒng)校正與綜合等方面知識(shí)。它們大都將在這個(gè)虛擬實(shí)驗(yàn)平臺(tái)得以實(shí)現(xiàn)與研究分析。3虛擬實(shí)驗(yàn)平臺(tái)總體概述3.1 虛擬實(shí)驗(yàn)平臺(tái)設(shè)計(jì)原則本次所設(shè)計(jì)的虛擬實(shí)驗(yàn)平臺(tái)是基于MATLAB7.0以上的版本所開(kāi)發(fā)出來(lái)的,在整個(gè)設(shè)計(jì)當(dāng)中,為了更好地讓大家看清整個(gè)的設(shè)計(jì)流程,我們是采用的自上而下、由上一級(jí)轉(zhuǎn)到下一級(jí)而設(shè)計(jì)。在設(shè)計(jì)過(guò)程中,我們首先要確定一個(gè)總體框架,然后我們?cè)俅_定好我們要研究
16、的幾個(gè)實(shí)驗(yàn)原理項(xiàng)目作為這個(gè)框架的子系統(tǒng),之后在各個(gè)實(shí)驗(yàn)原理上設(shè)計(jì)兩三個(gè)對(duì)應(yīng)這個(gè)實(shí)驗(yàn)原理的功能實(shí)現(xiàn)、認(rèn)證以及分析,在編程設(shè)計(jì)方面,我們要由下而上去設(shè)計(jì),設(shè)計(jì)好每個(gè)部分的編程代碼,最后實(shí)現(xiàn)一個(gè)整體虛擬實(shí)驗(yàn)平臺(tái)的開(kāi)發(fā)3.2 虛擬實(shí)驗(yàn)平臺(tái)設(shè)計(jì)界面模塊結(jié)構(gòu)及功能3.2.1 平臺(tái)模塊結(jié)構(gòu)該虛擬實(shí)驗(yàn)平臺(tái)設(shè)虛擬實(shí)驗(yàn)平臺(tái)有四大部分構(gòu)成,包括線(xiàn)型系統(tǒng)時(shí)域分析、線(xiàn)性系統(tǒng)頻域分析、線(xiàn)型系統(tǒng)根軌跡分析以及控制系統(tǒng)串聯(lián)校正,如下結(jié)構(gòu)圖:圖3-1 虛擬實(shí)驗(yàn)平臺(tái)結(jié)構(gòu)圖3.2.2平臺(tái)功能該虛擬實(shí)驗(yàn)平臺(tái)的功能是以根據(jù)生活中關(guān)于科學(xué)研究、教學(xué)活動(dòng)、學(xué)生實(shí)驗(yàn)探究為目的所完成的,所以該平臺(tái)的功能要設(shè)計(jì)成集成的、多樣化的一個(gè)實(shí)驗(yàn)平臺(tái),具
17、體的功能如下:(a)虛擬實(shí)驗(yàn)平臺(tái)輸入?yún)?shù)形式多樣化:如傳遞函數(shù)輸入的形式,可以任意改變分子分母的參數(shù)。(b)虛擬實(shí)驗(yàn)平臺(tái)繪圖功能:通過(guò)參數(shù)的設(shè)定,我們可以得到我們所想要的響應(yīng)曲線(xiàn)或是波形圖等其他仿真圖形。(c)虛擬實(shí)驗(yàn)平臺(tái)分析功能:比如在時(shí)域分析中我們可以得到階躍響應(yīng)性能指標(biāo)(峰值時(shí)間、超調(diào)量、調(diào)節(jié)時(shí)間),在頻域分析中我們可以得到諧振頻率、諧振峰值、頻帶、零頻。(d)控制系統(tǒng)校正功能:對(duì)所需要的校正的控制系統(tǒng)進(jìn)行超前校正和滯后校正,可以得到校正前后的bode圖和階躍響應(yīng)曲線(xiàn)以及各種性能指標(biāo)。4 自動(dòng)控制原理實(shí)驗(yàn)在虛擬實(shí)驗(yàn)平臺(tái)的實(shí)現(xiàn)4.1 平臺(tái)界面的總體要求我們?cè)谠O(shè)計(jì)我們所需要的界面基本上都會(huì)選
18、擇GUI作為優(yōu)選工具,以達(dá)到事半功倍的效果。該設(shè)計(jì)的虛擬實(shí)驗(yàn)平臺(tái)包括三級(jí)界面,第一級(jí)界面就是我們的主界面,由主界面可以進(jìn)入到第二級(jí)界面,包括線(xiàn)性系統(tǒng)時(shí)域分析界面、線(xiàn)性系統(tǒng)頻域分析界面、線(xiàn)性系統(tǒng)根軌跡分析界面控制系統(tǒng)校正實(shí)驗(yàn)界面。每個(gè)第二級(jí)界面都可以進(jìn)入到實(shí)現(xiàn)它的某種功能的第三級(jí)界面,對(duì)于線(xiàn)型系統(tǒng)時(shí)域分析界面來(lái)說(shuō),它的所實(shí)現(xiàn)的波形圖就在該界面,所以不需要再進(jìn)入下一級(jí)界面面,對(duì)于線(xiàn)性系統(tǒng)頻域界面來(lái)說(shuō),下一級(jí)界面包括了奈奎斯特曲線(xiàn)以及伯德圖,對(duì)于線(xiàn)性系統(tǒng)根軌跡分析界面來(lái)說(shuō),下一級(jí)界面有開(kāi)環(huán)零極點(diǎn)對(duì)根軌跡的影響等,對(duì)于控制系統(tǒng)的串聯(lián)校正實(shí)驗(yàn)界面來(lái)說(shuō),包括了基于頻域法的超前校正及基于頻域法的滯后校正界面
19、。所以對(duì)于界面設(shè)計(jì)來(lái)說(shuō),我們是由上而下來(lái)設(shè)計(jì)的。4.2 主界面的設(shè)計(jì)我們?cè)O(shè)計(jì)的主界面能夠讓用戶(hù)很快地了解該虛擬實(shí)驗(yàn)平臺(tái)的大概的功能,并且可以通過(guò)簡(jiǎn)單的操作在圖形用戶(hù)界面上進(jìn)行程序的編寫(xiě)。該界面有四個(gè)窗口空間組成組成,在各自的窗口中我們可以通過(guò)圖形用戶(hù)界面可以很方便的了解自動(dòng)控制原理的幾個(gè)典型的實(shí)驗(yàn)?zāi)P?,下面我們?lái)介紹主界面的設(shè)計(jì),具體步驟如下:首先我們點(diǎn)擊MATLAB界面工具欄上的快速啟動(dòng)圖標(biāo),可以直接啟動(dòng)一個(gè)GUIDE的集成開(kāi)發(fā)環(huán)境的對(duì)話(huà)框,或者在file菜單中點(diǎn)擊new,在點(diǎn)擊GUI也是可以,當(dāng)然了直接在命令窗口(Command Window)上輸入GUIDE命令也是可以的,最好的啟動(dòng)方式
20、還是第一種方法。選擇空白操作界面,保存文件名dianxinghuanjie.fig,則打開(kāi)了一個(gè)設(shè)計(jì)界面,同時(shí)也自動(dòng)生成了dianxinghuanjie.m文件。我們?cè)贕UIDE的設(shè)計(jì)編輯區(qū)內(nèi)(Layout Area)內(nèi)從工具欄上拖入一個(gè)靜態(tài)文本框(Static Text),靜態(tài)文本是在對(duì)話(huà)框中顯示我們所需要的說(shuō)明性文字,雙擊該控件,我們可以打開(kāi)一個(gè)對(duì)象屬性框,或者可以通過(guò)單擊該控件點(diǎn)擊對(duì)象屬性查看器(Property Inspector)也可以打開(kāi),選擇String屬性,該屬性的取值是字符串,它定義了控件對(duì)象的說(shuō)明性文字,寫(xiě)入“自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)”用來(lái)給用戶(hù)提供必要的提示,但用戶(hù)不能在
21、程序的執(zhí)行過(guò)程種中來(lái)修改文字說(shuō)明, 如果要改變字體的大小粗細(xì),可以點(diǎn)擊FontWeight屬性,它定義了字體的粗細(xì),點(diǎn)擊FontSize屬性,它定義了字體的大小,屬性的取值是數(shù)值,點(diǎn)擊ForegroundColor屬性,定了控件對(duì)象的說(shuō)明性文字的顏色,其默認(rèn)顏色是黑色,利用上述的方法,再點(diǎn)擊一個(gè)靜態(tài)文本框,寫(xiě)入“歡迎使用”。然后選擇坐標(biāo)軸(Axes)控件,它是用來(lái)顯示圖形和圖像,在這里我們要添加一張圖片,我們用imshow函數(shù)來(lái)實(shí)現(xiàn),在之后生成的M文件里添加imshow(IncoIncol.png)這個(gè)語(yǔ)句,選擇面板控件(Panel),再雙擊屬性查看器,修改屬性Title為“實(shí)驗(yàn)選擇”,再調(diào)整
22、標(biāo)題文字方向位于正上中央,在拖入四個(gè)按鈕控件(Push Button),按鈕控件是最常用的控件對(duì)象,它的主要特征是在矩形框上加上文字說(shuō)明,一個(gè)按鈕只代表一種操作。之后在String的屬性下分別改成線(xiàn)型系統(tǒng)時(shí)域分析、線(xiàn)型系統(tǒng)頻域分析、線(xiàn)性系統(tǒng)根軌跡分析、控制系統(tǒng)校正實(shí)驗(yàn)。對(duì)于上面四個(gè)控件按鈕我們也可以再進(jìn)行菜單的建立,我們可以通過(guò)GUI設(shè)計(jì)窗口的工具欄上的Menu Editor 命令按鈕打開(kāi),還可以在菜單欄中點(diǎn)擊“Tool”,再點(diǎn)擊“Menu Edior”(菜單編輯器)。如下圖4-1,該圖是已經(jīng)編輯好的菜單編輯器。圖4-1 設(shè)置菜單后的菜單編輯器通過(guò)該圖形我們可以看到,菜單編輯器的左上角的第一個(gè)
23、按鈕的作用是用來(lái)創(chuàng)建一級(jí)菜單項(xiàng),第二個(gè)按鈕是用來(lái)使用來(lái)創(chuàng)建一級(jí)菜單的子菜單,要想創(chuàng)建這個(gè)子菜單,我們必須要先點(diǎn)擊一級(jí)菜單項(xiàng)后,選中左上角的第二個(gè)按鈕來(lái)創(chuàng)建。我們可以發(fā)現(xiàn),創(chuàng)建某個(gè)菜單項(xiàng)后,圖框的右邊就會(huì)顯示該菜單的相關(guān)的屬性,我們可以在這里設(shè)置好我們的屬性,我們先創(chuàng)建四個(gè)一級(jí)菜單,分別在右邊Label屬性中修改為實(shí)驗(yàn)一、實(shí)驗(yàn)二、實(shí)驗(yàn)三和實(shí)驗(yàn)四,再在各自的子菜單中的屬性項(xiàng)里修改為線(xiàn)性系統(tǒng)時(shí)域分析、線(xiàn)型系統(tǒng)根軌跡分析、線(xiàn)性系統(tǒng)頻域分析和控制系統(tǒng)的串聯(lián)校正實(shí)驗(yàn)。同時(shí)也分別在各自的Tag屬性中修改,分別為One、Time、Two、Rlocus、Three、Frequency、Four、Modify。T
24、ag屬性是用來(lái)定義控件的標(biāo)識(shí)值,取值為字符串,在任何程序中都可以通過(guò)該標(biāo)識(shí)值來(lái)控制該控件。同時(shí)我們必須在各自對(duì)應(yīng)的Callback屬性中進(jìn)行修改。(1)菜單實(shí)驗(yàn)一的Callback屬性:dianxinghuanjie('One_Callback',hObject,eventdata,guidata(hObject) 子菜單線(xiàn)性系統(tǒng)時(shí)域分析的Callback屬性:dianxinghuanjie('Time_Callback',hObject,eventdata,guidata(hObject)(2)菜單實(shí)驗(yàn)二的Callback屬性:dianxinghuanjie(
25、'Two_Callback',hObject,eventdata,guidata(hObject)子菜單線(xiàn)性系統(tǒng)根軌跡分析屬性:dianxinghuanjie('Rlocus_Callback',hObject,eventdata,guidata(hObject)(3)菜單實(shí)驗(yàn)三的Callback屬性:dianxinghuanjie('Three_Callback',hObject,eventdata,guidata(hObject) 子菜單線(xiàn)性系統(tǒng)頻域分析屬性:dianxinghuanjie('Frequency_Callback
26、9;,hObject,eventdata,guidata(hObject)(4)菜單實(shí)驗(yàn)四的Callback屬性:dianxinghuanjie('Four_Callback',hObject,eventdata,guidata(hObject)子菜單控制系統(tǒng)校正實(shí)驗(yàn)的Callback屬性:dianxinghuanjie('Modify_Callback',hObject,eventdata,guidata(hObject)最后我們?cè)僖淮伪4嬖O(shè)計(jì)好的dianxinghuanjie.fig文件,選擇工具欄上的運(yùn)行按鈕,同時(shí)也自動(dòng)生成了dianxinghuanjie
27、.m文件。得到主界面圖形,如圖4-2: 圖4-2 主界面圖4.3 線(xiàn)性系統(tǒng)時(shí)域分析界面4.3.1 時(shí)域分析法的介紹時(shí)域分析法是以拉普拉斯變換為工具,利用傳遞函數(shù)直接在時(shí)間域上研究自動(dòng)控制系統(tǒng)的一種方法。它通過(guò)響應(yīng)曲線(xiàn)來(lái)分析控制系統(tǒng)的一些性能,具有直接而全面的優(yōu)點(diǎn),但仍有一些不足,比如在分析的過(guò)程當(dāng)中計(jì)算量較大,尤其是對(duì)于高階系統(tǒng)。時(shí)域響應(yīng)指的是系統(tǒng)在外部的輸入(設(shè)定值輸入或是擾動(dòng)輸入)作用下的輸出過(guò)程,典型的時(shí)域響應(yīng)有單位階躍響應(yīng)、單位脈沖響應(yīng)、單位斜坡響應(yīng)、單位加速度響應(yīng)、單位正弦響應(yīng)。本時(shí)域分析法的設(shè)計(jì)以典型輸入的單位脈沖輸入、單位階躍輸入以及單位斜坡輸入為主的輸入,來(lái)觀察各個(gè)的響應(yīng)曲線(xiàn)進(jìn)
28、行分析,通過(guò)階躍響應(yīng)性能指標(biāo)(包括峰值時(shí)間、調(diào)節(jié)時(shí)間、上升時(shí)間、超調(diào)量)來(lái)研究問(wèn)題和分析問(wèn)題,主要針對(duì)一階或二階系統(tǒng)。對(duì)于分子與分母參數(shù)的設(shè)定是任意的隨機(jī)的,這更加使問(wèn)題研究的深入與透徹。4.3.2 時(shí)域分析界面的設(shè)計(jì)根據(jù)設(shè)計(jì)需要,我們需要在布局編輯區(qū)里添加八個(gè)靜態(tài)文本框(Static Text),兩個(gè)按鈕(Push Button),也要修改自己String屬性,同時(shí)還要添加兩個(gè)文本編輯框(Edit Text)、五個(gè)單選按鈕(Radio Button)、六個(gè)面板控件(Panel)和一個(gè)坐標(biāo)軸(Axes),整體的模塊布局就可以了,完成各部件的屬性的設(shè)置,保存為T(mén)ime_reponse.fig文件
29、中。為了實(shí)現(xiàn)控件的功能,我們需要編寫(xiě)相應(yīng)的程序代碼。右鍵單擊任一圖形對(duì)象,在彈出的快捷菜單中點(diǎn)擊View Callbacks,在點(diǎn)擊Callback命令,這時(shí)將自動(dòng)打開(kāi)一個(gè)M文件,這個(gè)時(shí)候就可以在各控件相應(yīng)的回調(diào)函數(shù)區(qū)內(nèi)修改對(duì)應(yīng)的程序代碼。下面是部分程序代碼:function radiobutton4_Callback(hObject, eventdata, handles)set(hObject,'Value',1);set(handles.radiobutton5,'Value',0);set(handles.radiobutton3,'Value&
30、#39;,0);num=str2num(get(handles.edit1,'String');%獲取控件Tag屬性為edit1的控件里面的數(shù)值作為分子den=str2num(get(handles.edit2,'String');%獲取控件Tag屬性為edit2的控件里面的數(shù)值作為分母load('dataDdata.mat');if (fla=0) G=tf(num,den); y,t=step(G); %開(kāi)環(huán)階段響應(yīng) axes(handles.axes2) plot(t,y,'Linewidth',2) elseif(fla=
31、1) G=tf(num,den); y,t=step(feedback(G,1); %閉環(huán)階段響應(yīng) axes(handles.axes2) plot(t,y,'Linewidth',2) hold on Y,k=max(y); tp=fix(t(k)*100)/100; %求峰值時(shí)間 plot(tp tp,0 Y,'-r','Linewidth',1.5); plot(0 tp,Y Y,'-r','Linewidth',1.5); plot(tp,0,'o', 'MarkerEdgeColo
32、r','k', 'MarkerFaceColor','k','MarkerSize',6); %畫(huà)出峰值時(shí)間點(diǎn) str0=num2str(tp); str=str0,'s' set(handles.text7,'String',str) C=dcgain(feedback(G,1); %求系統(tǒng)穩(wěn)態(tài)值 M=fix(1000*(Y-C)/C)/10; str0=num2str(M); str=str0,'%' set(handles.text8,'String',
33、str) %求超調(diào)量 n=1; while y(n)<0.1*C %通過(guò)循環(huán),求取輸出第一次到達(dá)終值的10%的時(shí)間 n=n+1; end m=k; while y(n)>0.9*C %通過(guò)循環(huán),求取輸出第一次到達(dá)終值的90%的時(shí)間 m=m-1; end risetime=fix(100*(t(m)-t(n)/100; %求上升時(shí)間 str0=num2str(risetime); str=str0,'s' set(handles.text6,'String',str) %顯示上升時(shí)間 i=length(t); while (y(i)>0.98*C
34、)&(y(i)<1.02*C) i=i-1; end Settingtime=fix(100*t(i)/100; %求調(diào)節(jié)時(shí)間 str0=num2str(Settingtime); str=str0,'s' set(handles.text12,'String',str) %顯示調(diào)節(jié)時(shí)間plot(Settingtime,0,'o', 'MarkerEdgeColor','k', 'MarkerFaceColor','m','MarkerSize',6);
35、 %顯示調(diào)節(jié)時(shí)間%的時(shí)間點(diǎn) hold off F,h=findpeaks(y); che=length(F); if(che>=2) rate=fix(100*(F(1)-C)/(F(2)-C)/100;%求衰減比 str0=num2str(rate); str=str0,'%' set(handles.text14,'String',str) %顯示衰減比 else set(handles.text14,'String','ÎÞË¥¼õ±È')
36、 %求衰減比 end endgrid onxlabel('Time(s)')ylabel('Y(t)')完成回調(diào)函數(shù)后,我們點(diǎn)擊運(yùn)行一下,得到線(xiàn)性系統(tǒng)時(shí)域分析圖,從圖中我們可以看到階躍響應(yīng)曲線(xiàn),以及系統(tǒng)的性能指標(biāo),如圖4-3:圖4-3 線(xiàn)型系統(tǒng)時(shí)域分析圖4.4 線(xiàn)型系統(tǒng)根軌跡分析界面4.4.1根軌跡法的介紹根軌跡分析法是一種求系統(tǒng)閉環(huán)極點(diǎn)的圖解方法,它由開(kāi)環(huán)傳遞函數(shù)來(lái)求取閉環(huán)特征根的軌跡的規(guī)律,不用求解高階系統(tǒng)的特征根。當(dāng)改變?cè)鲆嬷祷蛟黾娱_(kāi)環(huán)零極點(diǎn)時(shí),可以利用根軌跡法預(yù)測(cè)其對(duì)閉環(huán)零點(diǎn)位置的影響。根據(jù)開(kāi)環(huán)系統(tǒng)的零點(diǎn)和極點(diǎn),通過(guò)一個(gè)或幾個(gè)參數(shù)的變化,來(lái)研究系統(tǒng)極點(diǎn)變
37、化情況。在MATLAB中采用函數(shù)pzmap()繪制系統(tǒng)零點(diǎn),輸入“rlocus(GH)”可得到我們需要的根軌跡圖。4.4.2根軌跡界面的設(shè)計(jì)與分析界面設(shè)計(jì)包括三個(gè)部分的參數(shù)的輸入,一個(gè)是開(kāi)環(huán)增益的參數(shù)的參數(shù)的輸入,一個(gè)是零點(diǎn)參數(shù)的輸入,另一個(gè)是極點(diǎn)參數(shù)的輸入,通過(guò)這些參數(shù)的輸入,我們可以得到根軌跡一些性能的分析。最后再對(duì)其余的控件進(jìn)行布局,最后點(diǎn)擊保存在Rlocus.fig文件中,同時(shí)生成了Rlocus.m文件,再在Rlocus.m文件中相應(yīng)的回調(diào)函數(shù)程序區(qū)內(nèi)修改和添加相應(yīng)的程序,最后點(diǎn)擊運(yùn)行,得到線(xiàn)型系統(tǒng)根軌跡分析圖,如圖4-4,我們可以看到閉環(huán)系統(tǒng)單位階躍響應(yīng)曲線(xiàn)。 圖4-4 線(xiàn)型系統(tǒng)根軌
38、跡分析圖然后我們點(diǎn)擊一下開(kāi)環(huán)根軌跡按鈕,得到開(kāi)環(huán)根軌跡曲線(xiàn),如圖4-5:然后我們可以改變一些參數(shù),來(lái)繼續(xù)觀察開(kāi)環(huán)根軌跡曲線(xiàn)。圖4-5 開(kāi)環(huán)根軌跡曲線(xiàn)當(dāng)我們改變參數(shù),我們會(huì)得出一些根軌跡的性能結(jié)論分析。我們會(huì)發(fā)現(xiàn),當(dāng)加入開(kāi)環(huán)零點(diǎn),則會(huì)改變漸近線(xiàn)的條數(shù)和漸近線(xiàn)的傾角;當(dāng)增加開(kāi)環(huán)零點(diǎn)的個(gè)數(shù),相當(dāng)于增加微分作用,使得根軌跡向左移動(dòng)或是彎曲,這樣的好處是大大的提高了控制系統(tǒng)的相對(duì)穩(wěn)定性,同時(shí)我們可以發(fā)現(xiàn),當(dāng)增加的開(kāi)環(huán)零點(diǎn)越來(lái)越接近坐標(biāo)軸的原點(diǎn)的時(shí)候,它的微分作用就會(huì)越來(lái)越強(qiáng),表明了控制系統(tǒng)的相對(duì)穩(wěn)定性非常的好;當(dāng)加入開(kāi)環(huán)極點(diǎn)的時(shí)候,則會(huì)改變漸近線(xiàn)的條數(shù)的漸近線(xiàn)的傾角,增加開(kāi)環(huán)極點(diǎn)的個(gè)數(shù),等于是增強(qiáng)了積分
39、的作用,從而導(dǎo)致了根軌跡向右移動(dòng)或者是彎曲,從而降低了控制系統(tǒng)的穩(wěn)定性。4.5 線(xiàn)型系統(tǒng)頻域分析界面4.5.1 頻域法的介紹對(duì)于頻域分析法來(lái)說(shuō),它是一種利用頻域特性來(lái)研究控制系統(tǒng)的一種圖解方法,以傳遞函數(shù)為基礎(chǔ),反映了控制系統(tǒng)對(duì)正弦輸入的響應(yīng)性能。在頻域法中其基本思想是將控制系統(tǒng)中的各個(gè)變量看做成信號(hào)來(lái)處理,而且這些信號(hào)都是由正弦信號(hào)合成的,同時(shí)它們的頻率是不同的。要研究頻域法的特性可以通過(guò)頻域特性曲線(xiàn)進(jìn)行研究,包括曲線(xiàn)的形狀及其特征量。而頻域特性是指穩(wěn)態(tài)輸出與輸入之比在正弦信號(hào)的作用下相對(duì)頻域的有關(guān)特性。4.5.2 頻域分析界面的設(shè)計(jì)我們可以作出伯德圖和奈奎斯特曲線(xiàn)以及單位階躍響應(yīng)曲線(xiàn)來(lái)分析
40、頻域特性,進(jìn)行模塊布局,保存在Frequency.fig文件中,在同時(shí)生成的m文件中對(duì)各個(gè)控件的回調(diào)函數(shù)進(jìn)行相應(yīng)的修改,并點(diǎn)擊運(yùn)行,得到線(xiàn)型系統(tǒng)頻域分析界面,如圖4-6,點(diǎn)擊伯德圖控件,得到伯德圖,如圖4-7,點(diǎn)擊奈奎斯特控件圖標(biāo),如圖4-8,改變傳遞函數(shù)輸入的參數(shù)進(jìn)行頻域特性分析。圖4-6 線(xiàn)型系統(tǒng)頻域分析圖 圖4-7 伯德圖圖4-8 奈奎斯特曲線(xiàn)4.6 控制系統(tǒng)校正實(shí)驗(yàn)界面4.6.1 控制系統(tǒng)校正介紹在實(shí)際的社會(huì)生活中,我們往往對(duì)一個(gè)系統(tǒng)設(shè)計(jì)的過(guò)程中,為了達(dá)到某些性能指標(biāo)和設(shè)計(jì)要求,需要進(jìn)行參數(shù)的選擇或是對(duì)原有的控制系統(tǒng)進(jìn)行元件的添加,這就是我們所要研究的控制系統(tǒng)的校正問(wèn)題??刂葡到y(tǒng)校正根
41、據(jù)校正裝置的特性可以分為超前校正、滯后校正、滯后-超前校正、串聯(lián)校正以及反饋校正。4.6.2控制系統(tǒng)校正實(shí)驗(yàn)界面的設(shè)計(jì)在我們的控制系統(tǒng)校正實(shí)驗(yàn)中,我們主要研究基于頻率法的串聯(lián)超前校正以及串聯(lián)滯后校正,通過(guò)單位階躍響應(yīng)曲線(xiàn)、伯德圖來(lái)具體研究。先進(jìn)性模塊布局,保存在Modify.fig文件中,自動(dòng)生成了Modify.m文件,并在相應(yīng)的回調(diào)函數(shù)內(nèi)修改程序,最終點(diǎn)擊運(yùn)行,得到控制系統(tǒng)校正實(shí)驗(yàn)界面圖,如圖4-9,可以看到系統(tǒng)校正前后的伯德圖,點(diǎn)擊超前校正控件按鈕,得到校正前后系統(tǒng)階躍響應(yīng)曲線(xiàn),如圖4-10,點(diǎn)擊之后滯后校正控件按鈕,得到校正前后系統(tǒng)階躍響應(yīng)曲線(xiàn),如圖4-11。同時(shí)我們改變參數(shù)的輸入,并加
42、以分析。圖4-9 控制系統(tǒng)校正實(shí)驗(yàn)圖圖4-10 超前校正前后系統(tǒng)階躍響應(yīng)曲線(xiàn)圖4-11 滯后校正前后系統(tǒng)階躍響應(yīng)曲線(xiàn)5 結(jié)論經(jīng)過(guò)幾個(gè)月的努力,我最終完成了基于MATLAB的自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)的開(kāi)發(fā),對(duì)自動(dòng)控制原理的幾個(gè)實(shí)驗(yàn)都較好的進(jìn)行了仿真,通過(guò)仿真圖形的分析,加深了對(duì)自動(dòng)控制原理的深入的了解,被MATLAB的強(qiáng)大功能所吸引,已經(jīng)較為熟練地掌握了MATLAB的一些功能操作,對(duì)MATLAB的程序語(yǔ)言更為的熟悉與了解。在設(shè)計(jì)開(kāi)發(fā)的過(guò)程中遇到了很多的困難,但這份曲折的過(guò)程鍛煉了我的獨(dú)立思考的能力與分析能力, 讓我明白了解決一個(gè)問(wèn)題必須要首先要了解它的基本原理,只有這樣處理問(wèn)題才能事半功倍,達(dá)到
43、預(yù)期的效果,同時(shí)也提高了我與他人的溝通能力,謙虛地向別人求教,也很感謝我的指導(dǎo)老師。設(shè)計(jì)雖然完成了但同時(shí)也發(fā)現(xiàn)了自己能力的不足,在今后人生道路上會(huì)更加的努力。參考文獻(xiàn)1馮程,初俊博,汪微檳.基于Matlab的虛擬實(shí)驗(yàn)平臺(tái)在大學(xué)生科技創(chuàng)新活動(dòng)中的應(yīng)用J.科技風(fēng),2015(02)2劉金頌,張慶陽(yáng),蘇曉峰,楊蕾.Matlab軟件在自動(dòng)控制原理實(shí)驗(yàn)中的應(yīng)用J.實(shí)驗(yàn)技術(shù)與管理,2014(06)3李東,馮喬,李敏.高職院校電類(lèi)課程虛擬實(shí)驗(yàn)系統(tǒng)的項(xiàng)目實(shí)施J電子世界,2014(03)4張佳.基于小型光電跟蹤系統(tǒng)的PID控制實(shí)驗(yàn)J.實(shí)驗(yàn)室研究與探索,2013(11)5劉中,袁少?gòu)?qiáng),張軍香.自動(dòng)控制原理實(shí)驗(yàn)課的改
44、革與實(shí)踐J.實(shí)驗(yàn)室研究與探索,2013(11)6王煥然,徐穎秦.自動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)的設(shè)計(jì)與開(kāi)發(fā)J.電力系統(tǒng)及其自動(dòng)化學(xué)報(bào).2010(04)7彭道剛,楊平,金光遠(yuǎn).基于VB和MATLAB的自動(dòng)控制原理CAI軟件設(shè)計(jì)J.上海電力學(xué)院學(xué)報(bào),2006(02)8蔣珉,馬天河,劉彬,程成.自動(dòng)控制原理的MATLAB軟件實(shí)驗(yàn)平臺(tái)J.電氣電子教學(xué)學(xué)報(bào),2004(01)9張巍,蔡啟仲,羅文廣.MATLAB在自動(dòng)控制原理實(shí)驗(yàn)方面的應(yīng)用J.廣西工學(xué)院學(xué)報(bào).1999(04)10李農(nóng)莊,候國(guó)蓮,張建華.MATLAB環(huán)境下的自動(dòng)控制原理教學(xué)軟件開(kāi)發(fā)J.現(xiàn)代電力.1999(03)附錄1:虛擬實(shí)驗(yàn)平臺(tái)總源程序%主界面的
45、源程序function varargout = dianxinghuanjie(varargin)gui_Singleton = 1;gui_State = struct('gui_Name', mfilename, . 'gui_Singleton', gui_Singleton, . 'gui_OpeningFcn', dianxinghuanjie_OpeningFcn, . 'gui_OutputFcn', dianxinghuanjie_OutputFcn, . 'gui_LayoutFcn', , .
46、'gui_Callback', );if nargin && ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);endfunction dianxinghuanjie_OpeningFcn(hObject, eventdata, handles, varargin)hand
47、les.output = hObject;movegui(gcf,'center')axes(handles.axes1)imshow('IncoInco1.png')guidata(hObject, handles);function varargout = dianxinghuanjie_OutputFcn(hObject, eventdata, handles) varargout1 = handles.output;function Time_Callback(hObject, eventdata, handles)close(gcf)Time_Repo
48、nse;function One_Callback(hObject, eventdata, handles)function Two_Callback(hObject, eventdata, handles)function Three_Callback(hObject, eventdata, handles)function Four_Callback(hObject, eventdata, handles)function Rlocus_Callback(hObject, eventdata, handles)close(gcf)Rlocus;function Frequency_Call
49、back(hObject, eventdata, handles)close(gcf)Frequency;function Modify_Callback(hObject, eventdata, handles)close(gcf)Modify function OK_Callback(hObject, eventdata, handles)close(gcf)Time_Reponse;function pushbutton3_Callback(hObject, eventdata, handles)close(gcf)Rlocus;function pushbutton4_Callback(
50、hObject, eventdata, handles)close(gcf)Frequency;function pushbutton5_Callback(hObject, eventdata, handles)close(gcf)Modify;%線(xiàn)型系統(tǒng)時(shí)域分析界面的源程序function varargout = Time_Reponse(varargin)gui_Singleton = 1;gui_State = struct('gui_Name', mfilename, . 'gui_Singleton', gui_Singleton, . 'gu
51、i_OpeningFcn', Time_Reponse_OpeningFcn, . 'gui_OutputFcn', Time_Reponse_OutputFcn, . 'gui_LayoutFcn', , . 'gui_Callback', );if nargin && ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, varar
52、gin:);else gui_mainfcn(gui_State, varargin:);end function Time_Reponse_OpeningFcn(hObject, eventdata, handles, varargin)handles.output = hObject; num=str2num(get(handles.edit1,'String');den=str2num(get(handles.edit2,'String');movegui(gcf,'center');set(handles.radiobutton1,
53、9;Value',0);set(handles.radiobutton2,'Value',1);fla=1; %標(biāo)志,用來(lái)確定系統(tǒng)是開(kāi)環(huán)還是閉環(huán),fla=1是閉環(huán),fla=0是開(kāi)環(huán)save('dataDdata','fla');G=tf(num,den);C=dcgain(feedback(G,1); %求階躍響應(yīng)的終值Step=1; %單位階躍輸入essp=Step-C; %位置誤差str=num2str(essp); %將數(shù)字轉(zhuǎn)換為字符set(handles.text18,'String',str); %顯示穩(wěn)態(tài)誤差
54、set(handles.radiobutton4,'Value',1);set(handles.radiobutton5,'Value',0);set(handles.radiobutton3,'Value',0); y,t=step(feedback(G,1); %閉環(huán)階躍響應(yīng)axes(handles.axes2)plot(t,y,'Linewidth',2)hold onY,k=max(y); tp=fix(t(k)*100)/100; %求峰值時(shí)間plot(tp tp,0 Y,'-r','Linewi
55、dth',1.5);plot(0 tp,Y Y,'-r','Linewidth',1.5);plot(tp,0,'o', 'MarkerEdgeColor','k', 'MarkerFaceColor','k','MarkerSize',6); %畫(huà)出峰值時(shí)間的時(shí)間點(diǎn)str0=num2str(tp);str=str0,'s'set(handles.text7,'String',str);C=dcgain(feedback(G,1
56、); %求系統(tǒng)穩(wěn)態(tài)值 M=fix(1000*(Y-C)/C)/10;str0=num2str(M);str=str0,'%'set(handles.text8,'String',str) %求超調(diào)量n=1;while y(n)<0.1*C %通過(guò)循環(huán),求取輸出第一次到達(dá)終值的10%的時(shí)間 n=n+1; endm=k;while y(n)>0.9*C %通過(guò)循環(huán),求取輸出第一次到達(dá)終值的90%時(shí)間 m=m-1; endrisetime=fix(100*(t(m)-t(n)/100; %求上升時(shí)間str0=num2str(risetime);str=str0,'s'set(handles.text6,'String',str) %顯示上升時(shí)間i=length(t);while (y(i)>0.98*C)&(y(i)<1.02*C) i=i-1;endSettingtime=fix(100*t(i)/100; %求調(diào)節(jié)時(shí)間str0=num2str(Settingtime); str=str0,'s'set(ha
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人二手商鋪買(mǎi)賣(mài)合同協(xié)議書(shū)
- 個(gè)人間借款合同樣本:版
- 個(gè)人股權(quán)抵押合同范例
- 三方合同:學(xué)生就業(yè)定向合作
- 專(zhuān)屬應(yīng)屆畢業(yè)生:個(gè)人租賃合同范本
- 中學(xué)教務(wù)主任聘任合同樣本
- 單項(xiàng)木工承包合同
- 中外采購(gòu)與供應(yīng)合同范本
- 專(zhuān)業(yè)水處理設(shè)備維護(hù)合同細(xì)則
- 三人合伙經(jīng)營(yíng)合同范本
- 煙葉復(fù)烤能源管理
- 食品安全管理員考試題庫(kù)298題(含標(biāo)準(zhǔn)答案)
- 執(zhí)業(yè)醫(yī)師資格考試《臨床執(zhí)業(yè)醫(yī)師》 考前 押題試卷絕密1 答案
- 2024年山東濟(jì)寧初中學(xué)業(yè)水平考試地理試卷真題(含答案詳解)
- 社會(huì)保險(xiǎn)課件教學(xué)課件
- 訂婚協(xié)議書(shū)手寫(xiě)模板攻略
- 準(zhǔn)備單元 雪地上的“足跡”(教學(xué)設(shè)計(jì))-2023-2024學(xué)年五年級(jí)下冊(cè)科學(xué)大象版
- 宇航用商業(yè)現(xiàn)貨(COTS)器件保證指南-編制說(shuō)明
- 音樂(lè)學(xué)科閱讀方案
- 《立體倉(cāng)庫(kù)鋼結(jié)構(gòu)貨架技術(shù)規(guī)范(征求意見(jiàn)稿)》
- 2024年貴州蔬菜集團(tuán)有限公司招聘筆試參考題庫(kù)附帶答案詳解
評(píng)論
0/150
提交評(píng)論