版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
-1-自動(dòng)控制原理第7章控制系統(tǒng)的模擬試驗(yàn)與MATLAB仿真s能于一體的功能強(qiáng)大、操作簡(jiǎn)單的優(yōu)秀工程計(jì)算應(yīng)用軟件。MATLAB不僅可以處理代數(shù)問(wèn)題和數(shù)值分析問(wèn)題,而且還具有強(qiáng)大的圖形處理及仿真模擬等功能。從而能夠很好的幫助工程師及科學(xué)家解決實(shí)際的技術(shù)問(wèn)題。MATLAB的含義是矩陣實(shí)驗(yàn)室(MatrixLaboratory),最初主要用于方便矩陣的存取,其基本元素是無(wú)需定義維數(shù)的矩陣。經(jīng)過(guò)十幾年的擴(kuò)充和完善,現(xiàn)已發(fā)展成為包含大量實(shí)用工具箱(Toolbox)的綜合應(yīng)用軟件,不僅成為線性代數(shù)課程的標(biāo)準(zhǔn)工具,而且適合具有不同專(zhuān)業(yè)研究方向及工程應(yīng)用需求的用戶使用。數(shù)(稱(chēng)為M文件),從而構(gòu)成適合于其它領(lǐng)域的工具箱,大大擴(kuò)展了MATLAB的應(yīng)用范圍。目前,MATLAB已成為國(guó)際控制界最流行的軟件,控制界很多學(xué)者將自己擅長(zhǎng)的CAD方法用MATLAB加以實(shí)現(xiàn),出現(xiàn)了大量的MATLAB配套工具箱,如控制系統(tǒng)工具箱(controlsystemstoolbox),系統(tǒng)識(shí)別工具箱(systemidentificationtoolbox),魯棒控制工具箱(robustMATLAB安裝將MATLAB6的安裝盤(pán)放入光驅(qū),系統(tǒng)將自動(dòng)運(yùn)行auto-run.bat文件,進(jìn)行安裝:也可BNext信息,具體操作過(guò)程如下:輸入正確的用戶注冊(cè)信息碼:選擇接收軟件公司的協(xié)議:輸入用戶名和公司名:選擇MATLAB組件(Toolbox):選擇軟件安裝路徑和目錄:-2-Next7-1所示。安裝完畢后,選擇[Restartmycomputernow]選項(xiàng)以重新啟動(dòng)計(jì)算機(jī)。MATLAB桌面系統(tǒng)件的展示平臺(tái),它提供了一系列的菜單操作以及工具欄操作,而不同功能的桌面組件構(gòu)成了AB調(diào)試器(Editor-Debugger)。-3-MATLABMATLAB可以認(rèn)為是一種解釋性語(yǔ)言。在MATLAB命令窗口中,標(biāo)志>>為命令提示符,在命令提示符后面鍵入一個(gè)MATLAB命令時(shí),MATLAB會(huì)立即對(duì)其進(jìn)行處理,并顯示處理結(jié)果。這種方式簡(jiǎn)單易用,但在編程過(guò)程中要修改整個(gè)程序比較困難,并且用戶編寫(xiě)的程序不容易保存。如果想把所有的程序輸入完再運(yùn)行調(diào)試,可以用鼠標(biāo)點(diǎn)擊快捷或File|New|M-file菜單,在彈出的編程窗口中逐行輸入命令,輸入完畢后點(diǎn)擊Debug|Run(或F5)運(yùn)行整個(gè)程序。運(yùn)行過(guò)程中的錯(cuò)誤信息和運(yùn)行結(jié)果顯示在命令窗口中。整個(gè)程序的源代碼可以保存為擴(kuò)展名為".m"的M文件。在介紹MATLAB的強(qiáng)大計(jì)算和圖象處理功能前,我們可以先運(yùn)行一個(gè)簡(jiǎn)單的程序。設(shè)系統(tǒng)的閉環(huán)傳遞函數(shù)為:s+2s+8G(s)=s+2s+8求系統(tǒng)的時(shí)域響應(yīng)圖,可輸入下面的命令:num4];den8];den-4-程序運(yùn)行后會(huì)在一個(gè)新的窗口中顯示出系統(tǒng)的時(shí)域動(dòng)態(tài)響應(yīng)曲線,如圖7-4。用鼠標(biāo)左鍵點(diǎn)擊動(dòng)態(tài)響應(yīng)曲線的某一點(diǎn),系統(tǒng)會(huì)提示其響應(yīng)時(shí)間和幅值。按住左鍵在曲線上移動(dòng)鼠標(biāo)的位置可以很容易的根據(jù)幅值觀察出上升時(shí)間、調(diào)節(jié)時(shí)間、峰值及峰值時(shí)間,進(jìn)而求出超調(diào)量。如果想求根軌跡,可將程序的第三行變?yōu)閞locus(num,den),求伯德圖可改為bode(num,den)。所不同的是,在根軌跡和伯德圖中,G(s)為開(kāi)環(huán)傳遞函數(shù)。兩個(gè)完全不同的變量。應(yīng)該注意所有的函數(shù)名均由小寫(xiě)字母構(gòu)成。MATLAB是一個(gè)功能強(qiáng)大的工程應(yīng)用軟件,它提供了相當(dāng)豐富的幫助信息,同時(shí)也提供了多種獲得幫助的方法。如果用戶第一次使用MATLAB,則建議首先在>>提示符下鍵入DEMO。7.2MATLAB基本操作命令本節(jié)簡(jiǎn)單介紹與本書(shū)內(nèi)容相關(guān)的一些基本知識(shí)和操作命令。7.2.1簡(jiǎn)單矩陣的輸入-5-這就是說(shuō),MATLAB只有一種數(shù)據(jù)形式,那就是矩陣,或者數(shù)的矩形陣列。標(biāo)量可看作為1型沒(méi)有限制,即用戶無(wú)需定義變量的類(lèi)型和維數(shù),MATLAB會(huì)自動(dòng)獲取所需的存儲(chǔ)空間。輸入矩陣最便捷的方式為直接輸入矩陣的元素,其定義如下:(1)元素之間用空格或逗號(hào)間隔:(2)用中括號(hào)([])把所有元素括起來(lái):(3)用分號(hào)(:)指定行結(jié)束。例如,在MATLAB的工作空間中,輸入:>>a=[234:569]則輸出結(jié)果為:a=a234569矩陣a被一直保存在工作空間中,以供后面使用,直至修改它。MATLAB的矩陣輸入方式很靈活,大矩陣可以分成n行輸入,用回車(chē)符代替分號(hào)或用續(xù)行符號(hào)(…)將元素續(xù)寫(xiě)到下一行。例如:a=[1,2,3:4,5,6:7,8,9]a=[123456789]a=[1,2,3:4,5,???6:7,8,9]。在MATLAB中,矩陣元素不限于常量,可以采用任意形式的表達(dá)式。同時(shí),除了直接輸入方式之外,還可以采用其它方式輸入矩陣,如:(1)利用內(nèi)部語(yǔ)句或函數(shù)產(chǎn)生矩陣:(2)利用M文件產(chǎn)生矩陣:(3)利用外部數(shù)據(jù)文件裝入到指定矩陣。7.2.2復(fù)數(shù)矩陣輸入-6-MATLAB允許在計(jì)算或函數(shù)中使用復(fù)數(shù)。輸入復(fù)數(shù)矩陣有兩種方法:ai;78](2)a=[1+5i2+6i;3+7i4+8i]注意,當(dāng)矩陣的元素為復(fù)數(shù)時(shí),在復(fù)數(shù)實(shí)部與虛部之間不允許使用空格符。如1+5i和5i兩個(gè)數(shù)。另外,MATLAB表示復(fù)數(shù)時(shí),復(fù)數(shù)單位也可以用j。MATLAB語(yǔ)句和變量MATLAB是一種描述性語(yǔ)言。它對(duì)輸入的表達(dá)式邊解釋邊執(zhí)行,就象BASIC語(yǔ)言中直接執(zhí)行語(yǔ)句一樣。MATLAB語(yǔ)句的常用格式為:變量=表達(dá)式[;]或簡(jiǎn)化為:表達(dá)式[;]給左邊的變量,同時(shí)顯示在屏幕上。如果省略變量名和"="號(hào),則MATLAB自動(dòng)產(chǎn)生一個(gè)名為ans的變量來(lái)表示結(jié)果,如:1900/81結(jié)果為:8ans是MATLAB提供的固定變量,具有特定的功能,是不能由用戶清除的。常用的固定MATAB允許在函數(shù)調(diào)用時(shí)同時(shí)返回多個(gè)變量,而一個(gè)函數(shù)又可以由多種格式進(jìn)行調(diào)用,語(yǔ)句的典型格式可表示為:[返回變量列表]=fun-name(輸入變量列表)例如用bode()函數(shù)來(lái)求取或繪制系統(tǒng)的Bode圖,可由下面的格式調(diào)用:其中變量num、den表示系統(tǒng)傳遞函數(shù)分子和分母,W表示指定頻段,mag為計(jì)算幅值,7.2.4語(yǔ)句以"%"開(kāi)始和以分號(hào)":"結(jié)束的特殊效用在MATLAB中以"%"開(kāi)始的程序行,表示注解和說(shuō)明。符號(hào)"%"類(lèi)似于C++中的"http://"。-7-這些注解和說(shuō)明是不執(zhí)行的。這就是說(shuō),在MATLAB程序行中,出現(xiàn)"%"以后的一切內(nèi)容略的。分號(hào)用來(lái)取消打印,如果語(yǔ)句最后一個(gè)符號(hào)是分號(hào),則打印被取消,但是命令仍在執(zhí)行,顯示。7.2.5獲取工作空間信息MATLAB開(kāi)辟有一個(gè)工作空間,用于存儲(chǔ)已經(jīng)產(chǎn)生的變量。變量一旦被定義,MATLAB系統(tǒng)會(huì)自動(dòng)將其保存在工作空間里。在退出程序之前,這些變量將被保留在存儲(chǔ)器中。為了得到工作空間中的變量清單,可以在命令提示符>>后輸入who或whos命令,當(dāng)前存放在工作空間的所有變量便會(huì)顯示在屏幕上。r特定變量,比如"x",則應(yīng)輸入命令clearx。7.2.6常數(shù)與算術(shù)運(yùn)算符MATLAB采用人們習(xí)慣使用的十進(jìn)制數(shù)。如:3-990.00019.63972381.60210e?206.62252e232i-3.14159i3e5i數(shù)值的相對(duì)精度為eps,它是一個(gè)符合IEEE標(biāo)準(zhǔn)的16位長(zhǎng)的十進(jìn)制數(shù),其范圍為:MATLAB提供了常用的算術(shù)運(yùn)算符:+,一,*,/(\),^(冪指數(shù))。應(yīng)該注意:(/)右除法和(\)左除法這兩種符號(hào)對(duì)數(shù)值操作時(shí),其結(jié)果相同,其斜線下為分母,如1/4與4\1,其結(jié)果均為0.25,但對(duì)矩陣操作時(shí),左、右除法是有區(qū)別的。7.2.7選擇輸出格式輸出格式是指數(shù)據(jù)顯示的格式,MATLAB提供format命令可以控制結(jié)果矩陣的顯示,而不影響結(jié)果矩陣的計(jì)算和存儲(chǔ)。所有計(jì)算都是以雙精度方式完成的。(1)如果矩陣的所有元素都是整數(shù),則矩陣以不帶小數(shù)點(diǎn)的格式顯示。如輸入:x=[?101]則顯示:-8-x=-1012)如果矩陣中至少有一個(gè)元素不是整數(shù),則有多種輸出格式。常見(jiàn)格式有以下四種:如:short(短格式,也是系統(tǒng)默認(rèn)格式)shorte(短格式科學(xué)表示)long(長(zhǎng)格式)longe(長(zhǎng)格式科學(xué)表示)對(duì)于以上四種格式,其顯示結(jié)果分別為:x=1.33330.0000x=短格式科學(xué)表示x=1.333333333333330.00000123450000x=長(zhǎng)格式科學(xué)表示一旦調(diào)用了某種格式,則這種被選用的格式將保持,直到對(duì)格式進(jìn)行了改變?yōu)橹?。MATLAB圖形窗口當(dāng)調(diào)用了一個(gè)產(chǎn)生圖形的函數(shù)時(shí),MATLAB會(huì)自動(dòng)建立一個(gè)圖形窗口。這個(gè)窗口還可分裂成多個(gè)窗口,并可在它們之間選擇,這樣在一個(gè)屏上可顯示多個(gè)圖形。機(jī)打印出來(lái)。若想將圖形導(dǎo)出并保存,可用鼠標(biāo)點(diǎn)擊菜單mpjpg果事先選擇了一些內(nèi)容,則可打印出所選擇的內(nèi)容:如果沒(méi)有選擇內(nèi)容,則可打印出整個(gè)工作空間的內(nèi)容。7.2.9剪切板的使用)要將MATLAB的圖形移到其它應(yīng)用程序,首先按Alt-PrintScreen鍵,將圖形-9-復(fù)制到剪切板中,然后激活其它應(yīng)用程序,選擇edit(編輯)中的paste(粘貼),就可以在應(yīng)用程序中得到MATLAB中的圖形。當(dāng)然還可以借助于copytoBitmap或copytoMetafile選項(xiàng)來(lái)傳遞圖形信息。(2)要將其它應(yīng)用程序中的數(shù)據(jù)傳遞到MATLAB,應(yīng)先將數(shù)據(jù)放入剪切板,然后在如鍵入:q=[然后選擇Edit中的paste,最后加上"]",這樣可將應(yīng)用程序中的數(shù)據(jù)送入MATLABMATLAB編程指南小規(guī)模的程序時(shí),可直接在命令提示符>>后面逐行輸入,逐行執(zhí)行。對(duì)于較復(fù)雜且經(jīng)常重復(fù)使用的程序,可按7.1.3介紹的方法進(jìn)入程序編輯器編寫(xiě)M文件。M文件是用MATLAB語(yǔ)言編寫(xiě)的可在MATLAB環(huán)境中運(yùn)行的磁盤(pán)文件。它為腳本文件(ScriptFile)和函數(shù)文件(FunctionFile),這兩種文件的擴(kuò)展名都是.m。腳本文件是將一組相關(guān)命令編輯在一個(gè)文件中,也稱(chēng)命令文件。腳本文件的語(yǔ)如下述語(yǔ)句如果以.m為擴(kuò)展名存盤(pán),就構(gòu)成了M腳本文件,我們不妨將其文件名取為"Step_Response"。%用于求取一階躍響應(yīng)。num=[14];den28];den當(dāng)你鍵入helpStep_Response時(shí),屏幕上將顯示文件開(kāi)頭部分的注釋:用于求取一階躍響應(yīng)。大量的命令和函數(shù),想記住所有函數(shù)及調(diào)用方法一般不太可能,通過(guò)聯(lián)機(jī)幫助命令help可容易地對(duì)想查詢(xún)的各個(gè)函數(shù)的有關(guān)信息進(jìn)行查詢(xún)。該命令使用格式為:help命令或函數(shù)名注意:若用戶把文件存放在自己的工作目錄上,在運(yùn)行之前應(yīng)該使該目錄處在MATLAB的搜索路徑上。當(dāng)調(diào)用時(shí),只需輸入文件名,MATLAB就會(huì)自動(dòng)按順序執(zhí)行文件中的命令。-10-的,后面為注釋和函數(shù)體語(yǔ)句。函數(shù)就像一個(gè)黑箱,把一些數(shù)據(jù)送進(jìn)去,經(jīng)加工處理,再把結(jié)果送出來(lái)。在函數(shù)體內(nèi)使都是局部變量,執(zhí)行完后,這些內(nèi)部變量就被清除了。函數(shù)文件的文件名與函數(shù)名相同(文件名后綴為.m),它的執(zhí)行與命令文件不同,不能鍵入其文件名來(lái)運(yùn)行函數(shù),M函數(shù)必須由其它語(yǔ)句來(lái)調(diào)用,這類(lèi)似于C語(yǔ)言的可被其它函數(shù)調(diào)用的子程序。M函數(shù)文件一旦建立,就可以同MATLAB基本函數(shù)庫(kù)一樣加以使用。例7-1求一系列數(shù)的平均數(shù),該函數(shù)的文件名為"mean.m"functiony=mean(x)%這是一個(gè)用于求平均數(shù)的函數(shù)xysumxwsun函數(shù)表示求各元素的和該文件第一行為定義行,指明是mean函數(shù)文件,y是輸出變量,x是輸入變量,其后量,程序執(zhí)行完后,便不存在了。anr運(yùn)行結(jié)果顯示ans該例就是直接使用了所建立的M函數(shù)文件,求取數(shù)列r的平均數(shù)。7.3MATLAB在控制系統(tǒng)中的應(yīng)用MATLAB是國(guó)際控制界目前使用最廣的工具軟件,幾乎所有的控制理論與應(yīng)用分支中都有MATLAB工具箱。本節(jié)結(jié)合前面所學(xué)自控理論的基本內(nèi)容,采用控制系統(tǒng)工具箱(ControlSystemsToolbox)和仿真環(huán)境(Simulink),學(xué)習(xí)MATLAB的應(yīng)用。AB1.有理函數(shù)模型-11-線性系統(tǒng)的傳遞函數(shù)模型可一般地表示為:G(s)=n≥m(7-1)den,就可以輕易地將傳遞函數(shù)模型輸入到MATLAB環(huán)境中。命令格式為:在MATLAB控制系統(tǒng)工具箱中,定義了tf()函數(shù),它可由傳遞函數(shù)分子分母給出的變量構(gòu)造出單個(gè)的傳遞函數(shù)對(duì)象。從而使得系統(tǒng)模型的輸入和處理更加方便。該函數(shù)的調(diào)用格式為:G=tf(num,den);(7-4)7-2一個(gè)簡(jiǎn)單的傳遞函數(shù)模型:ss>>num=[1,5];den=[1,2,3,4,5];G=tf(num,den)運(yùn)行結(jié)果:Transferfunction:s5s^4+2s^3+3s^2+4s+5例7-3一個(gè)稍微復(fù)雜一些的傳遞函數(shù)模型:>>num=6*[1,5];den=conv(conv([1,3,1],[1,3,1]),[1,6]);-12-mden運(yùn)行結(jié)果Transferfunction:s0s^5+12s^4+47s^3+72s^2+37s+6其中conv()函數(shù)(標(biāo)準(zhǔn)的MATLAB函數(shù))用來(lái)計(jì)算兩個(gè)向量的卷積,多項(xiàng)式乘法當(dāng)然也可以用這個(gè)函數(shù)來(lái)計(jì)算。該函數(shù)允許任意地多層嵌套,從而表示復(fù)雜的計(jì)算。2.零極點(diǎn)模型線性系統(tǒng)的傳遞函數(shù)還可以寫(xiě)成極點(diǎn)的形式: KGainZP以將系統(tǒng)的零極點(diǎn)模型輸入到MATLAB工作空間中,命令格式為:KGainK(7-6)B零極點(diǎn)對(duì)象,用于簡(jiǎn)單地表述零極點(diǎn)模型。該函數(shù)的調(diào)用格式為:G=zpk(Z,P,KGain)(7-9)例7-4某系統(tǒng)的零極點(diǎn)模型為: (s+1.9294)(s+0.0353±0.9287j)G(s)=6(s+0.9567±1.2272j)(s?0.0433±0.6412j)z=[-1.9294:-0.0353+0.9287j:-0.0353-0.9287j];p=[-0.9567+1.2272j:-0.9567-1.2272j:0.0433+0.6412j:0.0433-0.6412j];G=zpk(Z,P,KGain)運(yùn)行結(jié)果:-13-Zero/pole/gain:6(s+1.929)(s^2+0.0706s+0.8637)ss13)(s^2+1.913s+2.421)注意:對(duì)于單變量系統(tǒng),其零極點(diǎn)均是用列向量來(lái)表示的,故Z、P向量中各項(xiàng)均用分3.反饋系統(tǒng)結(jié)構(gòu)圖模型控制系統(tǒng)工具箱中提供了feedback()函數(shù),用來(lái)求取反饋連接下總的系統(tǒng)模型,該函數(shù)調(diào)用格式如下:GfeedbackGGsign(7-10)其中變量sign用來(lái)表示正反饋或負(fù)反饋結(jié)構(gòu),若sign=-1表示負(fù)反饋系統(tǒng)的模型,若性時(shí)不變)對(duì)象。例7-5若反饋系統(tǒng)圖7-5中的兩個(gè)傳遞函數(shù)分別為:G1(s)=,G2(s)=G1=tf(1,[1,2,1]);G2=tf(1,[1,1]);G=feedback(G1,G2)運(yùn)行結(jié)果:Transferfunction:-14-s+1s^3+3s^2+3s+2若采用正反饋連接結(jié)構(gòu)輸入命令>G=feedback(G1,G2,1)則得出如下結(jié)果:Transferfunction:s+1s^3+3s^2+3sG1(s)=,G2(s)=,H(s)=則閉環(huán)系統(tǒng)的傳遞函數(shù)可以由下面的MATLAB命令得出:>>G1=tf([1,7,24,24],[1,10,35,50,24]);G2=tf([10,5],[1,0]);H=tf([1],[0.01,1]);G_a=feedback(G1*G2,H)得到結(jié)果:Transferfunction:0.1s^5+10.75s^4+77.75s^3+278.6s^2+361.2s+1200.01s^6+1.1s^5+20.35s^4+110.5s^3+325.2s^2+384s+1204.有理分式模型與零極點(diǎn)模型的轉(zhuǎn)換-15-有了傳遞函數(shù)的有理分式模型之后,求取零極點(diǎn)模型就不是一件困難的事情了。在控制函數(shù)的調(diào)用格式為:G=zpk(G)G=zpk(G)例7-7給定系統(tǒng)傳遞函數(shù)為: 6.8s2+61.2s+95.2G(s)=s4+7.5s3+22s2+19.5s對(duì)應(yīng)的零極點(diǎn)格式可由下面的命令得出>>num=[6.8,61.2,95.2];den=[1,7.5,22,19.5,0];G=tf(num,den);G=zpk(G)顯示結(jié)果:Zero/pole/gain:.8(s+7)(s+2)s(s+1.5)(s^2+6s+13)可見(jiàn),在系統(tǒng)的零極點(diǎn)模型中若出現(xiàn)復(fù)數(shù)值,則在顯示時(shí)將以二階因子的形式表示相應(yīng)同樣,對(duì)于給定的零極點(diǎn)模型,也可以直接由MATLAB語(yǔ)句立即得出等效傳遞函數(shù)模型。調(diào)用格式為:G=tf(G)例7-8給定零極點(diǎn)模型:ss±j2)(s+1.5)G(s)=ss±j2)(s+1.5)。>>Z=[-2,-7];P=[0,-3-2j,-3+2j,-1.5];K.8;-16-G=zpk(Z,P,K);G=tf(G)結(jié)果顯示:Transferfunction:6.8s^2+61.2s+95.2s^4+7.5s^3+22s^2+19.5s在一些實(shí)際應(yīng)用中,如果系統(tǒng)的結(jié)構(gòu)過(guò)于復(fù)雜,不適合用前面介紹的方法建模。在這種功能:Simul(仿真)與Link(連接),亦即可以利用鼠標(biāo)在模型窗口上"畫(huà)"出所需的控制系輸入命令相比,這樣輸入更容易,分析更直觀。下面簡(jiǎn)單介紹SIMULINK建立系統(tǒng)模型的基本步驟:SIMULINKMATLAB在命令提示符>>下鍵入simulink命令,回車(chē)后即可啟動(dòng)Simulink程序。啟動(dòng)后軟件自動(dòng)打開(kāi)SimullinkFileNew菜單中的Model選項(xiàng),或選擇工具欄上newModel按鈕,打開(kāi)一個(gè)-17-(2)畫(huà)出系統(tǒng)的各個(gè)模塊:打開(kāi)相應(yīng)的子模塊庫(kù),選擇所需要的元素,用鼠標(biāo)左鍵點(diǎn)中后拖到模型編輯窗口的合適位置。(3)給出各個(gè)模塊參數(shù):由于選中的各個(gè)模塊只包含默認(rèn)的模型參數(shù),如默認(rèn)的傳遞函數(shù)模型為1/(s+1)的簡(jiǎn)單格式,必須通過(guò)修改得到實(shí)際的模塊參數(shù)。要修改模塊的參數(shù),可以用鼠標(biāo)雙擊該模塊圖標(biāo),則會(huì)出現(xiàn)一個(gè)相應(yīng)對(duì)話框,提示用戶修改模塊參數(shù)。(4)畫(huà)出連接線:當(dāng)所有的模塊都畫(huà)出來(lái)之后,可以再畫(huà)出模塊間所需要的連線,構(gòu)成完整的系統(tǒng)。模塊間連線的畫(huà)法很簡(jiǎn)單,只需要用鼠標(biāo)點(diǎn)按起始模塊的輸出端(三角符號(hào)),再拖動(dòng)鼠標(biāo),到終止模塊的輸入端釋放鼠標(biāo)鍵,系統(tǒng)會(huì)自動(dòng)地在兩個(gè)模塊間畫(huà)出帶箭頭的連線。若需要從連線中引出節(jié)點(diǎn),可在鼠標(biāo)點(diǎn)擊起始節(jié)點(diǎn)時(shí)按住Ctrl鍵,再將鼠標(biāo)拖動(dòng)到目的模塊。(5)指定輸入和輸出端子:在Simulink下允許有兩類(lèi)輸入輸出信號(hào),第一類(lèi)是仿真信號(hào),接模塊庫(kù))圖標(biāo),從中選取相應(yīng)的輸入輸出端子。NK(1)按前面步驟,啟動(dòng)simulink并打開(kāi)一個(gè)空白的模型編輯窗口。(2)畫(huà)出所需模塊,并給出正確的參數(shù):●在sources子模塊庫(kù)中選中階躍輸入(step)圖標(biāo),將其拖入編輯窗口,并用鼠標(biāo)左鍵雙擊該圖標(biāo),打開(kāi)參數(shù)設(shè)定的對(duì)話框,將參數(shù)steptime(階躍時(shí)刻)設(shè)為0?!裨贛ath(數(shù)學(xué))子模塊庫(kù)中選中加法器(sum)圖標(biāo),拖到編輯窗口中,并雙擊該圖標(biāo)將參數(shù)Listofsigns(符號(hào)列表)設(shè)為|+-(表示輸入為正,反饋為負(fù))。-18-Fcn)圖標(biāo)拖到編輯窗口中,并將傳遞函數(shù)分子(Numerator)改為(900),分母(Denominator)改為(1,9)。拖到編輯窗口中。(3)將畫(huà)出的所有模塊按圖7-9用鼠標(biāo)連接起來(lái),構(gòu)成一個(gè)原系統(tǒng)的框圖描述如圖7-10(4)選擇仿真算法和仿真控制參數(shù),啟動(dòng)仿真過(guò)程。●在編輯窗口中點(diǎn)擊Simulation|Simulationparameters菜單,會(huì)出現(xiàn)一個(gè)參數(shù)對(duì)話框,rtTimeStopTimeeMininumstepsizemulationStart仿真。雙擊示波器,在彈出的圖形上會(huì)"實(shí)時(shí)地"顯示出仿真結(jié)果。輸出結(jié)果如圖7-11-19-兩種輸出結(jié)果是完全一致的。B1.線性系統(tǒng)穩(wěn)定性分析型可以直接被用來(lái)判斷系統(tǒng)的穩(wěn)定性。另外,MATLAB語(yǔ)言中提供了有關(guān)多項(xiàng)式的操作函數(shù),也可以用于系統(tǒng)的分析和計(jì)算。(1)直接求特征多項(xiàng)式的根范圍內(nèi)的解v,該函數(shù)的調(diào)用格式為:vrootsvrootsp)例7-10已知系統(tǒng)的特征多項(xiàng)式為:x5+3x3+2x2+x+1p=[1,0,3,2,1,1];vrootsp)結(jié)果顯示:v=v-20-.3202+1.7042i.3202-1.7042i7209.0402+0.6780i.0402-0.6780i利用多項(xiàng)式求根函數(shù)roots(),可以很方便的求出系統(tǒng)的零點(diǎn)和極點(diǎn),然后根據(jù)零極點(diǎn)分析系統(tǒng)穩(wěn)定性和其它性能。(2)由根創(chuàng)建多項(xiàng)式如果已知多項(xiàng)式的因式分解式或特征根,可由MATLAB函數(shù)poly()直接得出特征多項(xiàng)式系數(shù)向量,其調(diào)用格式為:p=poly(v)(7-14)如上例中:polyv示p=p1.0000-0.00003.00002.00001.00001.0000由此可見(jiàn),函數(shù)roots()與函數(shù)poly()是互為逆運(yùn)算的。(3)多項(xiàng)式求值在MATLAB中通過(guò)函數(shù)polyval()可以求得多項(xiàng)式在給定點(diǎn)的值,該函數(shù)的調(diào)用格式為:polyval(p,v)(7-15)對(duì)于上例中的p值,求取多項(xiàng)式在x點(diǎn)的值,可輸入如下命令:p=[1,0,3,2,1,1];polyval(p,x)示ans=8-21-考慮下列傳遞函數(shù):MATLAB函數(shù)可將展開(kāi)成部分分式,直接MATLAB函數(shù)可將展開(kāi)成部分分式,直接求出展開(kāi)式中的留數(shù)、極點(diǎn)和余項(xiàng)。該N(s)函數(shù)的調(diào)用格式為:M(s)M(s)N(s)式中p(1)=?p1,p(2)=?p2,…,p(n)=?pn,為極點(diǎn),r(1)=?r1,r(2)=?r2,…,r(n)=?rn為各極點(diǎn)的留數(shù),k(s)為余項(xiàng)。例7-11設(shè)傳遞函數(shù)為:2s3+5s2+3s+6G(s)=s3+6s2+11s+6該傳遞函數(shù)的部分分式展開(kāi)由以下命令獲得:num[2,5,3,6];den6,11,6];命令窗口中顯示如下結(jié)果r=p=k=-6.0000-3.00002-4.0000-2.00003.0000-1.0000中留數(shù)為列向量r,極點(diǎn)為列向量p,余項(xiàng)為行向量k。由此可得出部分分式展開(kāi)式:-22-G(s)=+++2M(s)該函數(shù)也可以逆向調(diào)用,把部分分式展開(kāi)轉(zhuǎn)變回多項(xiàng)式之比的形式,命令格式為:NM(s)numdenresiduerpk(7-17)對(duì)上例有:>>[num,den]=residue(r,p,k)示2.00005.00003.00006.00006.000011.00006.0000下,部分分式展開(kāi)式將包括下列諸項(xiàng):例7-12設(shè)傳遞函數(shù)為:s2+2s+3s2+2s+3G(s)=(s+1)3=s3+3s2+3s+1則部分分式展開(kāi)由以下命令獲得:>>v=[-1,-1,-1]num=[0,1,2,3];npolyv示r=r0-23-1.00001.00001.0000其中由poly()命令將分母化為標(biāo)準(zhǔn)降冪排列多項(xiàng)式系數(shù)向量den,k=[]為空矩陣。由上可得展開(kāi)式為:(5)由傳遞函數(shù)求零點(diǎn)和極點(diǎn)。在MATLAB控制系統(tǒng)工具箱中,給出了由傳遞函數(shù)對(duì)象G求出系統(tǒng)零點(diǎn)和極點(diǎn)的函數(shù),其調(diào)用格式分別為:ZtzeroG)PG.P{1}注意:式(7-19)中要求的G必須是零極點(diǎn)模型對(duì)象,且出現(xiàn)了矩陣的點(diǎn)運(yùn)算"."和大括號(hào)()表示的矩陣元素,詳細(xì)內(nèi)容參閱后面章節(jié)。例7-13已知傳遞函數(shù)為: 6.8s2+61.2s+95.2G(s)=s4+7.5s3+22s2+19.5s輸入如下命令:num=[6.8,61.2,95.2];den=[1,7.5,22,19.5,0];G=tf(num,den);G1=zpk(G);ZtzeroG)P=G1.P{1}示Z=-7-2-24-P=0-3.0000+2.0000i-3.0000-2.0000i5000零極點(diǎn)分布圖。在MATLAB中,可利用pzmap()函數(shù)繪制連續(xù)系統(tǒng)的零、極點(diǎn)圖,從而分析系統(tǒng)的穩(wěn)定性,該函數(shù)調(diào)用格式為:pzmap(num,den) 3s4+2s3+5s2+4s+6G(s)=s5+3s4+4s3+2s2+7s+2利用下列命令可自動(dòng)打開(kāi)一個(gè)圖形窗口,顯示該系統(tǒng)的零、極點(diǎn)分布圖,如圖7-13num=[3,2,5,4,6];den1,3,4,2,7,2];pzmap(num,den)titlePole-ZeroMap1)%圖形標(biāo)題。-25-性分析。(1)時(shí)域響應(yīng)解析算法一一部分分式展開(kāi)法。用拉氏變換法求系統(tǒng)的單位階躍響應(yīng),可直接得出輸出c(t)隨時(shí)間t變化的規(guī)律,對(duì)于高階系統(tǒng),輸出的拉氏變換象函數(shù)為:scsnumden示c(s)的分子和分母。例7-15給定系統(tǒng)的傳遞函數(shù): s3+7s2+24s+24G(s)=s4+10s3+35s2+50s+24G(s)用以下命令對(duì)G(s)snum[1,7,24,24]den1,10,35,50,24]den輸出結(jié)果為r=p=k=1.00004.00003.0000-26-1.00001.00002.00001.00000輸出函數(shù)c(s)為:C(s)=+??++0拉氏變換得:t(2)單位階躍響應(yīng)的求法:控制系統(tǒng)工具箱中給出了一個(gè)函數(shù)step()來(lái)直接求取線性系統(tǒng)的階躍響應(yīng),如果已知傳遞函數(shù)為:則該函數(shù)可有以下幾種調(diào)用格式:denumdent或該函數(shù)將繪制出系統(tǒng)在單位階躍輸入條件下的動(dòng)態(tài)響應(yīng)圖,同時(shí)給出穩(wěn)態(tài)值。對(duì)于式時(shí)間由系統(tǒng)根據(jù)輸出曲線的形狀自行設(shè)定。如果需要將輸出結(jié)果返回到MATLAB工作空間中,則采用以下調(diào)用格式:c=step(G)(7-26)此時(shí),屏上不會(huì)顯示響應(yīng)曲線,必須利用plot()命令去查看響應(yīng)曲線。plot可以根據(jù)兩個(gè)或多個(gè)給定的向量繪制二維圖形,詳細(xì)介紹可以查閱后面的章節(jié)。例7-16已知傳遞函數(shù)為:-27-num0,0,25];den,25];dengrid繪制網(wǎng)格線。title(1Unit-StepResponseofG(s)=25/(s^2+4s+25)1)%圖像標(biāo)題我們還可以用下面的語(yǔ)句來(lái)得出階躍響應(yīng)曲線>>G=tf([0,0,25],[1,4,25]);cstep(G,t);%動(dòng)態(tài)響應(yīng)的幅值賦給變量cplot(t,c)%繪二維圖形,橫坐標(biāo)取t,縱坐標(biāo)取c。Css=dcgain(G)%求取穩(wěn)態(tài)值。系統(tǒng)顯示的圖形類(lèi)似于上一個(gè)例子,在命令窗口中顯示了如下結(jié)果1(3)求階躍響應(yīng)的性能指標(biāo)MATLAB提供了強(qiáng)大的繪圖計(jì)算功能,可以用多種方法求取系統(tǒng)的動(dòng)態(tài)響應(yīng)指標(biāo)。我們首先介紹一種最簡(jiǎn)單的方法一一游動(dòng)鼠標(biāo)法。對(duì)于例7-16,在程序運(yùn)行完畢后,用鼠標(biāo)左鍵點(diǎn)擊時(shí)域響應(yīng)圖線任意一點(diǎn),系統(tǒng)會(huì)自動(dòng)跳出一個(gè)小方框,小方框顯示了這一點(diǎn)的橫坐標(biāo)-28-(時(shí)間)和縱坐標(biāo)(幅值)。按住鼠標(biāo)左鍵在曲線上移動(dòng),可以找到曲線幅值最大的一點(diǎn)一一即曲線最大峰值,此時(shí)小方框中顯示的時(shí)間就是此二階系統(tǒng)的峰值時(shí)間,根據(jù)觀察到的穩(wěn)態(tài)法簡(jiǎn)單易用,但同時(shí)應(yīng)注意它不適用于用plot()命令畫(huà)出的圖形。游動(dòng)鼠標(biāo)法相比,編程方法稍微復(fù)雜,但通過(guò)下面的學(xué)習(xí),讀者可以掌握一定的編程技巧,程序,獲取一些較為復(fù)雜的性能指標(biāo)。通過(guò)前面的學(xué)習(xí),我們已經(jīng)可以用階躍響應(yīng)函數(shù)step()獲得系統(tǒng)輸出量,若將輸出量返回到變量y中,可以調(diào)用如下格式[y,t]=step(G)(7-27)到時(shí)域性能指標(biāo)。①峰值時(shí)間(timetopeak)可由以下命令獲得:metopeaktkttimetopeak②最大(百分比)超調(diào)量(percentovershoot)可由以下命令得到:C=dcgain(G);percentovershoot=100*(Y-C)/Cdcgain()函數(shù)用于求取系統(tǒng)的終值,將終值賦給變量C,然后依據(jù)超調(diào)量的定義,一下循環(huán)語(yǔ)句while的使用。while循環(huán)語(yǔ)句的一般格式為:while<循環(huán)判斷語(yǔ)句>循環(huán)體其中,循環(huán)判斷語(yǔ)句為某種形式的邏輯判斷表達(dá)式。-29-當(dāng)表達(dá)式的邏輯值為真時(shí),就執(zhí)行循環(huán)體內(nèi)的語(yǔ)句:當(dāng)表達(dá)式的邏輯值為假時(shí),就退出當(dāng)前的循環(huán)體。如果循環(huán)判斷語(yǔ)句為矩陣時(shí),當(dāng)且僅當(dāng)所有的矩陣元素非零時(shí),邏輯表達(dá)式要求出上升時(shí)間,可以用while語(yǔ)句編寫(xiě)以下程序得到:C=dcgain(G);whiley(n)<Cnn;risetime=t(n)在階躍輸入條件下,y的值由零逐漸增大,當(dāng)以上循環(huán)滿足y=C時(shí),退出循環(huán),此時(shí)對(duì)應(yīng)的時(shí)刻,即為上升時(shí)間。對(duì)于輸出無(wú)超調(diào)的系統(tǒng)響應(yīng),上升時(shí)間定義為輸出從穩(wěn)態(tài)值的10%上升到90%所需時(shí)間,則計(jì)算程序如下:C=dcgain(G);whiley(n)<0.1*Cnn;m1;whiley(n)<0.9*Cm=m+1;risetime=t(m)-t(n)④調(diào)節(jié)時(shí)間(setllingtime)可由while語(yǔ)句編程得到:C=dcgain(G);while(y(i)>0.98*C)&(y(i)<1.02*C)-30-ingtimeti7-17已知二階系統(tǒng)傳遞函數(shù)為:3>>G=zpk([],[-1+3*i,-1-3*i],3);%計(jì)算最大峰值時(shí)間和它對(duì)應(yīng)的超調(diào)量。C=dcgain(G)plott,y)metopeaktkpercentovershoot=100*(Y-C)/C%計(jì)算上升時(shí)間。whiley(n)<Cnn;risetime=t(n)%計(jì)算穩(wěn)態(tài)響應(yīng)時(shí)間。while(y(i)>0.98*C)&(y(i)<1.02*C)ingtimeti運(yùn)行后的響應(yīng)圖如圖7-15,命令窗口中顯示的結(jié)果為C=timetopeak=-31-percentovershoot=etllingtimerisetime=例7-18得出的結(jié)果相比較,會(huì)發(fā)現(xiàn)它們是一致的。假設(shè)閉環(huán)系統(tǒng)中的開(kāi)環(huán)傳遞函數(shù)可以表示為:則閉環(huán)特征方程為:特征方程的根隨參數(shù)K的變化而變化,即為閉環(huán)根軌跡。控制系統(tǒng)工具箱中提供了rlocus()函數(shù),可以用來(lái)繪制給定系統(tǒng)的根軌跡,它的調(diào)用格式有以下幾種:rlocus(num,den)(7-32)rlocus(num,den,K)(7-33)rlocusGrlocus(G,K)-32-函數(shù)調(diào)用中需要返回參數(shù),則調(diào)用格式將引入左端變量。如[R,K]=rlocus(G)(7-36)此時(shí)屏幕上不顯示圖形,而生成變量R和K。行。若需要畫(huà)出根軌跡,則需要采用以下命令:plot(R,11)(7-37)plot()函數(shù)里引號(hào)內(nèi)的部分用于選擇所繪制曲線的類(lèi)型,詳細(xì)內(nèi)容見(jiàn)表1??刂葡到y(tǒng)工具箱中還有一個(gè)rlocfind()函數(shù),該函數(shù)允許用戶求取根軌跡上指定點(diǎn)處的開(kāi)環(huán)增益值,并將該增益下所有的閉環(huán)極點(diǎn)顯示出來(lái)。這個(gè)函數(shù)的調(diào)用格式為:[K,P]=rlocfind(G)(7-38)這個(gè)函數(shù)運(yùn)行后,圖形窗口中會(huì)出現(xiàn)要求用戶使用鼠標(biāo)定位的提示,用戶可以用鼠標(biāo)左所有的閉環(huán)極點(diǎn)直接在根軌跡曲線上顯示出來(lái)。例7-18已知系統(tǒng)的開(kāi)環(huán)傳遞函數(shù)模型為:Gk(s)==KG0(s)>>G=tf(1,[conv([1,1],[1,2]),0]);rlocusG);title(1Root_LocusPlotofG(s)=K/[s(s+1)(s+2)]1)xlabel(1RealAxis1)%給圖形中的橫坐標(biāo)命名。ylabel(1ImagAxis1)%給圖形中的縱坐標(biāo)命名。G用鼠標(biāo)點(diǎn)擊根軌跡上與虛軸相交的點(diǎn),在命令窗口中可發(fā)現(xiàn)如下結(jié)果selectpoint0.0000+1.3921i-33-p=p.29830-0.0085+1.3961i-0.0085-1.3961i所以,要想使此閉環(huán)系統(tǒng)穩(wěn)定,其增益范圍應(yīng)為0<K<5.81。K化,觀察對(duì)應(yīng)根處階躍響應(yīng)的變化。考慮K=0.1,0.2,…,1,2,…,5,這些增益下閉環(huán)系統(tǒng)的t:15;Y=[];forK=[0.1:0.1:1,2:5]GK=feedback(K*G,1);ystepGK,t);Y[Y,y];plott,Y)對(duì)于for循環(huán)語(yǔ)句,循環(huán)次數(shù)由K給出。系統(tǒng)畫(huà)出的圖形如圖7-17所示。可以看出,-34-性能變壞。t方式都是相似的,它們只是在如何給坐標(biāo)軸進(jìn)行分度和如何顯示數(shù)據(jù)上有所差別。(1)二維圖形繪制plot(x,y)(7-39)例7-19如果想繪制出一個(gè)周期內(nèi)的正弦曲線,則首先應(yīng)該用t=0:0.01:2*pi(pi是y-35-(2)一幅圖上畫(huà)多條曲線。利用具有多個(gè)輸入變量的plot()命令,可以在一個(gè)繪圖窗口上同時(shí)繪制多條曲線,命令格式為:plot(x1,Y1,x2,Y2,…,xn,Yn)(7-40)x1、Y1、x2、Y2等一系列變量是一些向量對(duì),每一個(gè)x-y對(duì)都可以用圖解表示出來(lái),顯示出來(lái)。每一對(duì)向量采用不同的線型以示區(qū)別。,在一幅圖上疊畫(huà)一條以上的曲線時(shí),也可以利用hold命令。hold命令可以保持當(dāng)前的圖形,并且防止刪除和修改比例尺。因此,后來(lái)畫(huà)出的那條曲線將會(huì)重疊在原曲線圖(3)圖形的線型和顏色為了區(qū)分多幅圖形的重疊表示,MATLAB提供了一些繪圖選項(xiàng),可以用不同的線型或顏色來(lái)區(qū)分多條曲線,常用選項(xiàng)見(jiàn)下表1表1MATLAB繪圖命令的多種選項(xiàng)''''--'''''-.'-36-'r''*'用星號(hào)繪制各個(gè)數(shù)據(jù)點(diǎn)'b''o'用圓圈繪制各個(gè)數(shù)據(jù)點(diǎn)'g'''.'用圓點(diǎn)繪制各個(gè)數(shù)據(jù)點(diǎn)'y'''用又號(hào)繪制各個(gè)數(shù)據(jù)點(diǎn)表1中繪出的各個(gè)選項(xiàng)有一些可以并列使用,能夠?qū)σ粭l曲線的線型和顏色同時(shí)作出規(guī)定。例如'--g'表示綠色的短劃線。帶有選項(xiàng)的曲線繪制命令的調(diào)用格式為:plot(X1,Y1,S1,X2,Y2,S2,…)(7-41)將網(wǎng)絡(luò)格線、圖形標(biāo)題、x、y軸標(biāo)記疊加在圖形上。命令格式如下:grid(網(wǎng)絡(luò)線)(7-42)title('圖形標(biāo)題')(7-43)xlabel('x軸標(biāo)記')(7-44)ylabel('y軸標(biāo)記')(7-45)函數(shù)引號(hào)內(nèi)的字符串將被寫(xiě)到圖形的坐標(biāo)軸上或標(biāo)題位置。(5)在圖形屏幕上書(shū)寫(xiě)文本。如果想在圖形窗口中書(shū)寫(xiě)文字,可以單擊按鈕,選擇屏幕上一點(diǎn),點(diǎn)擊鼠標(biāo),在光標(biāo)處輸入文字。另一種輸入文字的方法是用text()命令。它可以在屏幕上以(x,y)為坐標(biāo)的某處書(shū)寫(xiě)文字,命令格式如下:text(x,y,'text')(7-46)例如,利用語(yǔ)句text(3,0.45,'sint')將從點(diǎn)(3,0.45)開(kāi)始,水平的寫(xiě)出"sint"。(6)自動(dòng)繪圖算法及手工坐標(biāo)軸定標(biāo)在MATLAB圖形窗口中,圖形的橫、縱坐標(biāo)是自動(dòng)標(biāo)定的,在另一幅圖形畫(huà)出之前,這幅圖形作為現(xiàn)行圖將保持不變,但是在另一幅圖形畫(huà)出后,原圖形將被刪除,坐標(biāo)軸自動(dòng)地來(lái),它們對(duì)于各類(lèi)系統(tǒng)具有廣泛的適用性,但是并非總是理想的。因此,在某些情況下,可-37-能需要放棄繪圖命令中的坐標(biāo)軸自動(dòng)標(biāo)定特性,由用戶自己設(shè)定坐標(biāo)范圍,可以在程序中加入下列語(yǔ)句:vxminxmaxyminymax(7-47)axis(v)(7-48)式中v是一個(gè)四元向量。axis(v)把坐標(biāo)軸定標(biāo)建立在規(guī)定的范圍內(nèi)。對(duì)于對(duì)數(shù)坐標(biāo)圖,v的元素應(yīng)為最小值和最大值的常用對(duì)數(shù)。執(zhí)行axis(v)會(huì)把當(dāng)前的坐標(biāo)軸標(biāo)定范圍保持到后面的圖中,再次鍵入axis可恢復(fù)系A(chǔ)xis('sguare')能夠把圖形的范圍設(shè)定在方形范圍內(nèi)。對(duì)于方形長(zhǎng)寬比,其斜率為1的直線恰位于45o上,它不會(huì)因屏幕的不規(guī)則形狀而變形。Axis('normal')將使長(zhǎng)寬比恢復(fù)到正常狀態(tài)。5、線性系統(tǒng)的頻域分析。Gj。設(shè)線性系統(tǒng)傳遞函數(shù)為:則頻率特性函數(shù)為:Gjw)=GW=polyval(num,i*w)./polyval(den,i*w)其中(num,den)為系統(tǒng)的傳遞函數(shù)模型。而w為頻率點(diǎn)構(gòu)成的向量,點(diǎn)右除(./)運(yùn)算符表示操作元素點(diǎn)對(duì)點(diǎn)的運(yùn)算。從數(shù)值運(yùn)算的角度來(lái)看,上述算法在系統(tǒng)的極點(diǎn)附近精度不會(huì)很理想,甚至出現(xiàn)無(wú)窮大值,運(yùn)算結(jié)果是一系列復(fù)數(shù)返回到變量GW中??刂葡到y(tǒng)工具箱中提供了一個(gè)MATLAB函數(shù)nyquist(),該函數(shù)可以用來(lái)直接求解Nyquist陣列或繪制奈氏圖。當(dāng)命令中不包含左端返回變量時(shí),nyquist()函數(shù)僅在屏幕上產(chǎn)生奈氏圖,命令調(diào)用格式為:-38-nyquist(num,den)nyquist(num,den,w)nyquistG)nyquist(G,w)該命令將畫(huà)出下列開(kāi)環(huán)系統(tǒng)傳遞函數(shù)的奈氏曲線:G(s)G(s)=den(s)點(diǎn)上,將對(duì)系統(tǒng)的頻率響應(yīng)進(jìn)行計(jì)算,若沒(méi)有指定的w向量,則該函數(shù)自動(dòng)選擇頻率向量進(jìn)會(huì)自動(dòng)計(jì)算這些點(diǎn)的頻率響應(yīng)。當(dāng)命令中包含了左端的返回變量時(shí),即:[re,im,w]=nyquist(G)(7-55)或reim,w]=nyquist(G,w)(7-56)eim分別表示頻率響應(yīng)的實(shí)部和虛部,它們都是由向量w中指定的頻率點(diǎn)計(jì)算得到的。在運(yùn)行結(jié)果中,w數(shù)列的每一個(gè)值分別對(duì)應(yīng)re、im數(shù)列的每一個(gè)值。環(huán)節(jié):G(s)=利用下面的命令,可以得出系統(tǒng)的奈氏圖,如圖7-19所示。num0,0,1];den,0.8,1];nyquist(num,den)%設(shè)置坐標(biāo)顯示范圍-39-v=[-2,2,-2,2];svtitle('NyquistPlotofG(s)=1/(s^2+0.8s+1)')左端返回變量時(shí),函數(shù)運(yùn)行后會(huì)在屏幕上直接畫(huà)出伯德圖。如果命令表達(dá)式的左端含有返回變量,bode()函數(shù)計(jì)算出的幅值和相角將返回到相應(yīng)的矩陣中,這時(shí)屏幕上不顯示頻率響應(yīng)圖。命令的調(diào)用格式為:enmdenw或[mag,phase,w]=bode(G,w)[mag,phase,w]=bode(G,w)(7-60)矩陣mag、phase包含系統(tǒng)頻率響應(yīng)的幅值和相角,這些幅值和相角是在用戶指定的各點(diǎn)計(jì)算幅值和相角。這時(shí)的相角是以度來(lái)表示的,幅值為增益值,在畫(huà)伯德圖時(shí)要轉(zhuǎn)換成分貝值,因?yàn)榉重愂亲鞣l圖時(shí)常用單位。可以由以下命令把幅值轉(zhuǎn)變成分貝:magdb=20*log10(mag)(7-61)繪圖時(shí)的橫坐標(biāo)是以對(duì)數(shù)分度的。為了指定頻率的范圍,可采用以下命令格式:-40-logspace(d1,d2)(7-62)或logspace(d1,d2,n)(7-63)公式(7-62)是在指定頻率范圍內(nèi)按對(duì)數(shù)距離分成50等分的,即在兩個(gè)十進(jìn)制數(shù)值。例如要在ω1=0.1弧度/秒與ω2=100弧度/秒之間的頻區(qū)畫(huà)伯德圖,則輸入命令時(shí),dlogdlog到工作空間中,即w=logspace(-1,2)要對(duì)計(jì)算點(diǎn)數(shù)進(jìn)行人工設(shè)定,則采用公式(7-63)。例如,要在ω1=1與ω2=1000之間產(chǎn)生100個(gè)對(duì)數(shù)等分點(diǎn),可輸入以下命令:w=logspace(0,3,100)w方便地畫(huà)出希望頻率的伯德圖。由于伯德圖是半對(duì)數(shù)坐標(biāo)圖且幅頻圖和相頻圖要同時(shí)在一個(gè)繪圖窗口中繪制,因此,要用到半對(duì)數(shù)坐標(biāo)繪圖函數(shù)和子圖命令。對(duì)數(shù)坐標(biāo)繪圖函數(shù)利用工作空間中的向量x,y繪圖,要調(diào)用plot函數(shù),若要繪制對(duì)數(shù)或半對(duì)數(shù)坐標(biāo)圖,只需要用相應(yīng)函數(shù)名取代plot即可,其余參數(shù)應(yīng)用與plot完全一致。命令公式有:semilogx(x,y,s)(7-64)表示只對(duì)x軸進(jìn)行對(duì)數(shù)變換,y軸仍為線性坐標(biāo)。semilogy(x,y,s)(7-65)Loglog(x,y,s)(7-66)上式是全對(duì)數(shù)坐標(biāo)圖,即x軸和y軸均取對(duì)數(shù)變換。t函數(shù),其調(diào)用格式為:subplot(m,n,k)該函數(shù)將把一個(gè)圖形窗口分割成m×n個(gè)子繪圖區(qū)域,m為行數(shù),n為列數(shù),用戶可以通的圖形設(shè)置不會(huì)影響到其它子圖,而且允許各子圖具有不同的坐標(biāo)系。例如,subplot(4,3,例7-21給定單位負(fù)反饋系統(tǒng)的開(kāi)環(huán)傳遞函數(shù)為:s(s+7)s(s+7)出伯德圖。利用以下MATLAB程序,可以直接在屏幕上繪出伯德圖如圖7-20。-41-num0*[1,1];den0];bode(num,den)title('BodeDiagramofG(s)=10*(s+1)/[s(s+7)]')值,ω軸取對(duì)數(shù),圖形分成2個(gè)子圖,均是自動(dòng)完成的。的伯德圖如果希望顯示的頻率范圍窄一點(diǎn),則程序修改為:num0*[1,1];den0];ewbodenumdenwmagdB=20*log10(mag)%增益值轉(zhuǎn)化為分貝值。%第一個(gè)圖畫(huà)伯德圖幅頻部分。ubplotsemilogx(w,magdB,'-r')%用紅線畫(huà)title('BodeDiagramofG(s)=10*(s+1)/[s(s+7)]')xlabel(1Frequency(rad/s)1)ylabel(1Gain(dB)1)%第二個(gè)圖畫(huà)伯德圖相頻部分。ubplotsemilogxwphase1-r1);xlabel(1Frequency(rad/s)1)-42-ylabel('Phase(deg)')畫(huà)出的伯德圖按住鼠標(biāo)左鍵游動(dòng)鼠標(biāo),找出縱坐標(biāo)(Magnitude)趨近于零的點(diǎn),從提示框圖中讀出其頻率約為7.25dB。然后在相頻曲線上用同樣的方法找到橫坐標(biāo)(Frequence)最接近7.25dB的點(diǎn),可讀出其相角為-53.9度,由此可得,此系統(tǒng)的相角裕量為126.1度。幅值裕量的計(jì)算方法與此類(lèi)似。此外,控制系統(tǒng)工具箱中提供了margin()函數(shù)來(lái)求取給定線性系統(tǒng)幅值裕量和相位裕量,該函數(shù)可以由下面格式來(lái)調(diào)用:可以看出,幅值裕量與相位裕量可以由LTI對(duì)象G求出,返回的變量對(duì)(Gm,Wcg)為幅值裕量的值與相應(yīng)的相角穿越頻率,而(Pm,Wcp)則為相位裕量的值與相應(yīng)的幅值穿越頻率。若得出的裕量為無(wú)窮大,則其值為Inf,這時(shí)相應(yīng)的頻率值為NaN(表示非數(shù)值),Inf如果已知系統(tǒng)的頻率響應(yīng)數(shù)據(jù),我們還可以由下面的格式調(diào)用此函數(shù)。mPmWcgWcpmarginmagphasew例7-22已知三階系統(tǒng)開(kāi)環(huán)傳遞函數(shù)為:72(s+2s+3s2(s+2s+3s+2)利用下面的MATLAB程序,畫(huà)出系統(tǒng)的奈氏圖,求出相應(yīng)的幅值裕量和相位裕量,并求出-43->>G=tf(3.5,[1,2,3,2]);ubplot%第一個(gè)圖為奈
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版木工模板租賃與園林景觀設(shè)計(jì)施工承包合同范本3篇
- 二零二五年度寵物醫(yī)院寵物食品研發(fā)與生產(chǎn)合作協(xié)議3篇
- 二零二五年度辦公家具銷(xiāo)售合同(含安裝)2篇
- 二零二五年度天使投資協(xié)議書(shū):生物科技研發(fā)項(xiàng)目風(fēng)險(xiǎn)投資合同
- 二零二五年度商標(biāo)授權(quán)及商標(biāo)市場(chǎng)推廣合同范本2篇
- 二零二五出租車(chē)公司股權(quán)轉(zhuǎn)讓與智能化改造協(xié)議4篇
- 2025年度個(gè)人債務(wù)重組擔(dān)保合同參考8篇
- 2025年度個(gè)人收入證明模板制作與市場(chǎng)調(diào)研服務(wù)合同4篇
- 二零二五年度寵物貓寵物用品電商平臺(tái)運(yùn)營(yíng)合作協(xié)議4篇
- 2025版房地產(chǎn)營(yíng)銷(xiāo)策劃投標(biāo)文件招標(biāo)合同示范3篇
- 2024-2030年中國(guó)招標(biāo)代理行業(yè)深度分析及發(fā)展前景與發(fā)展戰(zhàn)略研究報(bào)告
- 醫(yī)師定期考核 (公共衛(wèi)生)試題庫(kù)500題(含答案)
- 基因突變和基因重組(第1課時(shí))高一下學(xué)期生物人教版(2019)必修2
- 內(nèi)科學(xué)(醫(yī)學(xué)高級(jí)):風(fēng)濕性疾病試題及答案(強(qiáng)化練習(xí))
- 音樂(lè)劇好看智慧樹(shù)知到期末考試答案2024年
- 辦公設(shè)備(電腦、一體機(jī)、投影機(jī)等)采購(gòu) 投標(biāo)方案(技術(shù)方案)
- 案卷評(píng)查培訓(xùn)課件模板
- 2024年江蘇省樣卷五年級(jí)數(shù)學(xué)上冊(cè)期末試卷及答案
- 人教版初中英語(yǔ)七八九全部單詞(打印版)
- 波浪理論要點(diǎn)圖解完美版
- 金融交易數(shù)據(jù)分析與風(fēng)險(xiǎn)評(píng)估項(xiàng)目環(huán)境敏感性分析
評(píng)論
0/150
提交評(píng)論