控制工程基礎(chǔ)-控制系統(tǒng)的計算機仿真.ppt
《控制工程基礎(chǔ)-控制系統(tǒng)的計算機仿真.ppt》由會員分享,可在線閱讀,更多相關(guān)《控制工程基礎(chǔ)-控制系統(tǒng)的計算機仿真.ppt(48頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、2020/7/4,第七章控制系統(tǒng)的綜合與校正,1,控制工程基礎(chǔ),第十章Matlab軟件工具在控制系統(tǒng)分析和綜合中的應(yīng)用主講人:趙治國副教授,2020/7/4,第七章控制系統(tǒng)的綜合與校正,2,主要內(nèi)容,Matlab基本特點控制系統(tǒng)在Matlab中的描述進行部分分式展開控制系統(tǒng)的時間響應(yīng)分析控制系統(tǒng)的頻域響應(yīng)分析控制系統(tǒng)的根軌跡圖系統(tǒng)穩(wěn)定性分析Simulink仿真工具,2020/7/4,第七章控制系統(tǒng)的綜合與校正,3,Matlab基本特點(1),Matlab簡介:1980年前后,美國moler博士構(gòu)思并開發(fā);最初的matlab版本是用fortran語言編寫,現(xiàn)在的版本用c語言改寫;1992年推出了
2、具有劃時代意義的matlab4.0版本;并于1993年推出了其windows平臺下的微機版,現(xiàn)在比較新的版本是7.1版,2020/7/4,第七章控制系統(tǒng)的綜合與校正,4,Matlab基本特點(2),Matlab以復(fù)數(shù)矩陣為最基本的運算單元,既可以對它整體地進行處理,也可以對它的某個或某些元素進行單獨地處理。在Matlab中,數(shù)據(jù)的存儲/輸入/輸出都是以矩陣為基礎(chǔ)的,矩陣和其它變量不需要預(yù)先定義。Matlab語言最基本的賦值語句結(jié)構(gòu)為變量名列表=表達式,2020/7/4,第七章控制系統(tǒng)的綜合與校正,5,matlab基本特點(3),等號右邊的表達式可以由分號結(jié)束,也可以由逗號或換行結(jié)束,但它們的含
3、義是不同的。如果用分號結(jié)束,則左邊的變量結(jié)果將不在屏幕上顯示出來,否則將把左邊返回矩陣的內(nèi)容全部顯示出來。如A=1,0,1;1,0,0;2,1,0;B=1,0,2;2,1,1;1,0,1B=102211101,2020/7/4,第七章控制系統(tǒng)的綜合與校正,6,matlab基本特點(4),在Matlab下,矩陣A和矩陣B的乘積(假定其中A,B矩陣是可乘的)可以簡單地由運算C=A*B求出C=A*BC=203102415,2020/7/4,第七章控制系統(tǒng)的綜合與校正,7,而D=A.*B稱點乘積運算,即表示A和B矩陣的相應(yīng)元素之間直接進行乘法運算,然后將結(jié)果賦給D矩陣,點乘積運算要求A和B矩陣的維數(shù)相
4、同。D=A.*BD=102200200,matlab基本特點(5),Matlab下提供了兩種文件格式:m文件,matlab函數(shù)M文件是普通的ascii碼構(gòu)成的文件,在這樣的文件中只有由matlab語言所支持的語句,類似于dos下的批處理文件,它的執(zhí)行方式很簡單,用戶只需在matlab的提示符下鍵入該m文件的文件名,這樣matlab就會自動執(zhí)行該m文件中的各條語句。它采用文本方式,編程效率高,可讀性很強。Matlab函數(shù)是最常用的特殊m文件,這樣的函數(shù)是由function語句引導(dǎo),其基本格式如下Function返回變量列表=函數(shù)名(輸入變量列表)注釋說明語句段函數(shù)體語句調(diào)用時在matlab的提示
5、符下鍵入函數(shù)名,并包括輸入變量。類似于c語言的子程序調(diào)用。如Functionplot_sin(xmin,xmax)X=xmin:min(0.01,(xmax-xmin)/100):xmax;Plot(x,sin(x));%Thisisademo,2020/7/4,第七章控制系統(tǒng)的綜合與校正,9,控制系統(tǒng)在Matlab中的描述,要分析系統(tǒng),首先需要能夠描述這個系統(tǒng)。例如用傳遞函數(shù)的形式描述系統(tǒng),在matlab中,用num=b1,b2,,bm,bm1和den=a1,a2,,an,an1分別表示分子和分母多項式系數(shù),然后利用下面的語句就可以表示這個系統(tǒng)sys=tf(num,den)其中tf()代表傳
6、遞函數(shù)的形式描述系統(tǒng),還可以用零極點形式來描述,語句為sys1=zpk(sys)而且傳遞函數(shù)形式和零極點形式之間可以相互轉(zhuǎn)化,語句為z,p,k=tf2zp(num,den)num,den=zp2tf(z,p,k)當傳遞函數(shù)復(fù)雜時,應(yīng)用多項式乘法函數(shù)conv()等實現(xiàn)。例如den1=1,2,2den2=2,3,3,2den=conv(den1,den2),2020/7/4,第七章控制系統(tǒng)的綜合與校正,11,進行部分分式展開(1),對于下列傳遞函數(shù),2020/7/4,第七章控制系統(tǒng)的綜合與校正,12,num和den分別表示傳遞函數(shù)的分子和分母的系數(shù),即numbo,bl,,bnden1,al.,an
7、命令r,p,kresidue(num,den)將求出傳遞函數(shù)的部分分式展開式中的留數(shù)、極點和余項,即得到,進行部分分式展開(2),例:對于下列系統(tǒng)傳遞函數(shù)分子分母表示為num0,1,3den1,3,2采用命令r,p,kresidue(num,den)得到r,p,kresidue(num,den)r2000010000p100002.0000k即,反之,利用下列命令num,denresidue(r,p,k)可以將部分分式展開式返回到傳遞函數(shù)多項式之比的形式,即得到num,denresidue(r,p,k)num0.00001.00003.0000den=1.00003.00002.0000,當包
8、含m重極點時,部分分式展開式將包括下列m項:,例對于下列系統(tǒng)傳遞函數(shù)分子分母表示為num0,1,2,3den1,3,3,1采用命令r,p,kresidue(num,den),得到num0123;den1331;r,p,kresidue(num,den)r1.00000.00002.0000p1.00001.0000l.0000k即,2020/7/4,第七章控制系統(tǒng)的綜合與校正,17,線性系統(tǒng)的時間響應(yīng)分析(1),Matlab的Control工具箱提供了很多線性系統(tǒng)在特定輸入下仿真的函數(shù),例如連續(xù)時間系統(tǒng)在階躍輸入激勵下的仿真函數(shù)step(),脈沖激勵下的仿真函數(shù)impulse()及任意輸入激勵
9、下的仿真函數(shù)lsim()等,其中階躍響應(yīng)函數(shù)step()的調(diào)用格式為y,x=step(sys,t)或y,x=step(sys)其中sys可以由tf()或zpk()函數(shù)得到,t為選定的仿真時間向量,如果不加t,仿真時間范圍自動選擇。此函數(shù)只返回仿真數(shù)據(jù)而不在屏幕上畫仿真圖形,返回值y為系統(tǒng)在各個仿真時刻的輸出所組成的矩陣,而x為自動選擇的狀態(tài)變量的時間響應(yīng)數(shù)據(jù)。如果用戶對具體的響應(yīng)數(shù)值不感興趣,而只想繪制出系統(tǒng)的階躍響應(yīng)曲線,則可以由如下的格式調(diào)用step(sys,t)或step(sys),2020/7/4,第七章控制系統(tǒng)的綜合與校正,18,線性系統(tǒng)的時間響應(yīng)分析(2),求取脈沖響應(yīng)的函數(shù)imp
10、ulse()和step()函數(shù)的調(diào)用格式完全一致,而任意輸入下的仿真函數(shù)lsim()的調(diào)用格式稍有不同,因為在此函數(shù)的調(diào)用時還應(yīng)該給出一個輸入表向量,該函數(shù)的調(diào)用格式為y,x=lsim(sys,u,t)式中,u為給定輸入構(gòu)成的列向量,它的元素個數(shù)應(yīng)該和t的個數(shù)是一致的。當然該函數(shù)若調(diào)用時不返回參數(shù),也可以直接繪制出響應(yīng)曲線圖形。例如t=0:0.01:5;u=sin(t);lsim(sys,u,t)為單輸入模型sys對u(t)=sin(t)在5秒之內(nèi)的輸入響應(yīng)仿真。,2020/7/4,第七章控制系統(tǒng)的綜合與校正,19,線性系統(tǒng)的時間響應(yīng)分析(3),MATLAB還提供了離散時間系統(tǒng)的仿真函數(shù),包括
11、階躍響應(yīng)函數(shù)dstep(),脈沖響應(yīng)函數(shù)dimpulse()和任意輸入響應(yīng)函數(shù)dlsim()等,它們的調(diào)用方式和連續(xù)系統(tǒng)的不完全一致,讀者可以參閱MATLAB的幫助,如在MATLAB的提示符下鍵入helpdstep來了解它們的調(diào)用方式。時域分析常用函數(shù)如下:step-階躍響應(yīng)impulse-脈沖響應(yīng)lsim-對指定輸入的連續(xù)輸出gensig-對LSIM產(chǎn)生輸入信號stepfun-產(chǎn)生單位階躍輸入,例對于下列系統(tǒng)傳遞函數(shù)下列MATLABPrograml1.1將給出該系統(tǒng)的單位階躍響應(yīng)曲線。該單位階躍響應(yīng)曲線如圖1所示。----MATLABPrograml1.1----num0,0,50;den2
12、5,2,1;step(num,den)gridtitle(Unit-StepResponseofG(s)=50/(25s2+2s+1)),例對于下列系統(tǒng)傳遞函數(shù)下列MATLABPrograml1.2將給出該系統(tǒng)的單位脈沖響應(yīng)曲線。該單位脈沖響應(yīng)曲線如圖2所示。----MATLABPrograml1.2----num0,0,50;den25,2,1;impulse(num,den)gridtitle(Unit-ImpulseResponseofG(s)=50/(25s2+2s+1)),在MATLAB中沒有斜坡響應(yīng)命令,可利用階躍響應(yīng)命令求斜坡響應(yīng),先用s除G(s),再利用階躍響應(yīng)命令。例如,考慮
13、下列閉環(huán)系統(tǒng):,對于單位斜坡輸入量則,下列MATLABPrograml1.3將給出該系統(tǒng)的單位斜坡響應(yīng)曲線。該單位斜坡響應(yīng)曲線如圖3所示。----MATLABPrograml1.3----num0,0,0,50;den25,2,1,0;t=0:0.01:100;step(num,den,t)gridtitle(Unit-SteprampResponseofG(s)=50/(25s2+2s+1)),2020/7/4,第七章控制系統(tǒng)的綜合與校正,27,控制系統(tǒng)的頻域響應(yīng)分析,已知系統(tǒng)的傳遞函數(shù)模型如第2節(jié)所示,則該系統(tǒng)的頻率響應(yīng)為可以由下面的語句來實現(xiàn),如果有一個頻率向量w,則Gw=polyval
14、(num,sqrt(-1)*w)./polyval(den,sqrt(-1)*w);其中num和den分別為系統(tǒng)的分子分母多項式系數(shù)向量。,頻率響應(yīng)曲線繪制,MATLAB提供了多種求取并繪制系統(tǒng)頻率響應(yīng)曲線的函數(shù),如Bode圖繪制函數(shù)bode(),Nyquist曲線繪制函數(shù)等,其中bode()函數(shù)的調(diào)用格式為m,p=bode(num,den,w)這里,num,den和前面的敘述一樣,w為頻率點構(gòu)成的向量,該向量最好由logspace()函數(shù)構(gòu)成。m,p分別代表Bode響應(yīng)的幅值向量和相位向量。如果用戶只想繪制出系統(tǒng)的Bode圖,而對獲得幅值和相位的具體數(shù)值并不感興趣,則可以由以下更簡潔的格式調(diào)
15、用bode()函數(shù)bode(num,den,w)或更簡潔地bode(num,den)這時該函數(shù)會自動地根據(jù)模型的變化情況選擇一個比較合適的頻率范圍。,Nyquist曲線繪制函數(shù)nyquist()類似于bode()函數(shù),可以利用helpnyquist來了解它的調(diào)用方法。在分析系統(tǒng)性能的時候經(jīng)常涉及到系統(tǒng)的幅值裕量與相位裕量的問題,使用Control工具箱提供的margin()函數(shù)可以直接求出系統(tǒng)的幅值裕量與相位裕量,該函數(shù)的調(diào)用格式為Gm,Pm,wcg,wcp=margin(num,den)可以看出,該函數(shù)能直接由系統(tǒng)的傳遞函數(shù)來求取系統(tǒng)的幅值裕量Gm和相位裕度裕量Pm,并求出幅值裕量和相位裕量
16、處相應(yīng)的頻率值wcg和wcp。,常用頻域分析函數(shù)如下:bode-頻率響應(yīng)伯德圖nyquist-頻率響應(yīng)乃奎斯特圖nichols-頻率響應(yīng)尼柯爾斯圖freqresp-求取頻率響應(yīng)數(shù)據(jù)margin-幅值裕量與相位裕量pzmap-零極點圖使用時可以利用他們的幫助,如helpbode。另外,命令ltiview可以畫時域響應(yīng)和頻域響應(yīng)圖,利用helpltiview查看使用說明。,例對于下列系統(tǒng)傳遞函數(shù)下列MATLABPrograml1.4將給出該系統(tǒng)對應(yīng)的伯德圖。其伯德圖如圖4所示。----MATLABPrograml1.4----num0,0,50;den25,2,1;bode(num,den)gri
17、dtitle(BodeDiagramofG(s)=50/(25s2+2s+1)),如果希望從0.01弧度秒到1000弧度/秒畫伯德圖,可輸入下列命令:w=logspace(-2,3,100)bode(num,den,w)該命令在0.01弧度秒和100弧度秒之間產(chǎn)生100個在對數(shù)刻度上等距離的點,例對于下列系統(tǒng)傳遞函數(shù)下列MATLABPrograml1.5將給出該系統(tǒng)對應(yīng)的伯德圖。其伯德圖如圖5所示。----MATLABPrograml1.5----num=10,30;den1=1,2,0;den2=1,1,2;den=conv(den1,den2)w=logspace(-2,3,100)bod
18、e(num,den,w)gridtitle(BodeDiagramofG(s)=10(s+3)/s(s+2)(s2+s+2)),例對于下列系統(tǒng)傳遞函數(shù)下列MATLABPrograml1.6將給出該系統(tǒng)對應(yīng)的乃奎斯圖。其乃奎斯特圖如圖6所示。----MATLABPrograml1.6----num0,0,50;den25,2,1,;nyquist(num,den)title(NyquistPlotofG(s)=50/(25s2+2s+1)),2020/7/4,第七章控制系統(tǒng)的綜合與校正,38,控制系統(tǒng)的根軌跡圖,通常采用下列MATLAB命令畫根軌跡rlocus(num,den)利用該命令,可以在
19、屏幕上得到畫出的根軌跡圖。增益向量K自動被確定。命令rlocus既適用于連續(xù)系統(tǒng),也適用于離散時間系統(tǒng)。對于定義在狀態(tài)空間內(nèi)的系統(tǒng),其命令為rlocus(A,B,C,D)MATLAB在繪圖命令中還包含自動軸定標功能。,例對于一單位反饋控制系統(tǒng),其開環(huán)傳遞函數(shù)為下列MATLABPrograml1.7將給出該系統(tǒng)對應(yīng)的根軌跡圖。其根軌跡圖如圖7所示。---------MATLABPrograml1.7-----------num=1,3;den1=1,2,0;den2=1,1,2;den=conv(den1,den2)rlocus(num,den)v=-10101010;axis(v)gridti
20、tle(Root-LocusPlotofG(s)=K(s+3)/s(s+2)(s2+s+2)),2020/7/4,第七章控制系統(tǒng)的綜合與校正,41,系統(tǒng)穩(wěn)定性分析,給定一個控制系統(tǒng),可利用MATLAB在它的時域、頻域圖形分析中看出系統(tǒng)的穩(wěn)定性,并可直接求出系統(tǒng)的相角裕量和幅值裕量。此外,我們還可通過求出特征根的分布更直接地判斷出系統(tǒng)穩(wěn)定性。如果閉環(huán)系統(tǒng)所有的特征根都為負實部則系統(tǒng)穩(wěn)定。,例如,給出控制系統(tǒng)閉環(huán)傳遞函數(shù)為num=3,2,1,4,2num=32142den=3,5,1,2,2,1den=351221z,p=tf2zp(num,den),z=0.4500+0.9870i0.4500-
21、0.9870i-1.0000-0.5666p=-1.60670.4103+0.6801i0.4103-0.6801i-0.4403+0.3673i-0.4403-0.3673Ipzmap(num,den),ii=find(real(p)0)ii=23n1=length(ii)n1=2if(n10),disp(Systemisunstable,withint2str(n1)unstablepoles);elsedisp(Syatemisstable);endSystemisunstable,with2unstablepolesdisp(Theunstablepolesare:),disp(p(i
22、i))Theunstablepolesare:0.4103+0.6801i0.4103-0.6801i以上求出具體的零極點、畫出零極點分布、明確指出系統(tǒng)不穩(wěn)定,并指出引起系統(tǒng)不穩(wěn)定的具體右根。,2020/7/4,第七章控制系統(tǒng)的綜合與校正,46,Simulink仿真工具,如果控制系統(tǒng)的結(jié)構(gòu)很復(fù)雜,則若不借助專用的系統(tǒng)建模軟件,在過去很難準確地把一個控制系統(tǒng)的復(fù)雜模型輸入給計算機,對之進行分析和仿真。1990年MathWorks軟件公司為MATLAB提供了新的控制系統(tǒng)模型圖形輸入與仿真工具,命名為SIMULINK,這一名字的含義相當直觀,SIMU(仿真)與LINK(連接),亦即可以利用鼠標器在模型窗口上“畫”出所需的控制系統(tǒng)模型,然后利用SIMULINK提供的功能來對系統(tǒng)進行仿真或線性化。這種法的一個優(yōu)點是,可以使得一個很復(fù)雜系統(tǒng)的輸入變得相當容易且直觀。,首先根據(jù)一個例子來說明控制系統(tǒng)框圖模型的建立,這是一個簡化的調(diào)速系統(tǒng)。我們看如何利用Simulink工具輸入這個框圖,然后再進行分析。,下圖是Matlab中Simulink工具建立的例題框圖??梢渣c擊圖中Simulation下的Start圖標開始仿真,然后雙擊框圖中的Scope,查看仿真圖形。其他仿真命令大家可以自行學(xué)習(xí)。,
- 溫馨提示:
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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年六年級數(shù)學(xué)下冊6整理和復(fù)習(xí)2圖形與幾何第7課時圖形的位置練習(xí)課件新人教版
- 2023年六年級數(shù)學(xué)下冊6整理和復(fù)習(xí)2圖形與幾何第1課時圖形的認識與測量1平面圖形的認識練習(xí)課件新人教版
- 2023年六年級數(shù)學(xué)下冊6整理和復(fù)習(xí)1數(shù)與代數(shù)第10課時比和比例2作業(yè)課件新人教版
- 2023年六年級數(shù)學(xué)下冊4比例1比例的意義和基本性質(zhì)第3課時解比例練習(xí)課件新人教版
- 2023年六年級數(shù)學(xué)下冊3圓柱與圓錐1圓柱第7課時圓柱的體積3作業(yè)課件新人教版
- 2023年六年級數(shù)學(xué)下冊3圓柱與圓錐1圓柱第1節(jié)圓柱的認識作業(yè)課件新人教版
- 2023年六年級數(shù)學(xué)下冊2百分數(shù)(二)第1節(jié)折扣和成數(shù)作業(yè)課件新人教版
- 2023年六年級數(shù)學(xué)下冊1負數(shù)第1課時負數(shù)的初步認識作業(yè)課件新人教版
- 2023年六年級數(shù)學(xué)上冊期末復(fù)習(xí)考前模擬期末模擬訓(xùn)練二作業(yè)課件蘇教版
- 2023年六年級數(shù)學(xué)上冊期末豐收園作業(yè)課件蘇教版
- 2023年六年級數(shù)學(xué)上冊易錯清單十二課件新人教版
- 標準工時講義
- 2021年一年級語文上冊第六單元知識要點習(xí)題課件新人教版
- 2022春一年級語文下冊課文5識字測評習(xí)題課件新人教版
- 2023年六年級數(shù)學(xué)下冊6整理和復(fù)習(xí)4數(shù)學(xué)思考第1課時數(shù)學(xué)思考1練習(xí)課件新人教版