控制工程基礎(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)當(dāng)傳遞函數(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,當(dāng)包
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ù)是一致的。當(dāng)然該函數(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在繪圖命令中還包含自動軸定標(biāo)功能。,例對于一單位反饋控制系統(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)建模軟件,在過去很難準(zhǔn)確地把一個控制系統(tǒng)的復(fù)雜模型輸入給計算機,對之進行分析和仿真。1990年MathWorks軟件公司為MATLAB提供了新的控制系統(tǒng)模型圖形輸入與仿真工具,命名為SIMULINK,這一名字的含義相當(dāng)直觀,SIMU(仿真)與LINK(連接),亦即可以利用鼠標(biāo)器在模型窗口上“畫”出所需的控制系統(tǒng)模型,然后利用SIMULINK提供的功能來對系統(tǒng)進行仿真或線性化。這種法的一個優(yōu)點是,可以使得一個很復(fù)雜系統(tǒng)的輸入變得相當(dāng)容易且直觀。,首先根據(jù)一個例子來說明控制系統(tǒng)框圖模型的建立,這是一個簡化的調(diào)速系統(tǒng)。我們看如何利用Simulink工具輸入這個框圖,然后再進行分析。,下圖是Matlab中Simulink工具建立的例題框圖。可以點擊圖中Simulation下的Start圖標(biāo)開始仿真,然后雙擊框圖中的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)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 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é)上冊易錯清單十二課件新人教版
- 標(biāo)準(zhǔn)工時講義
- 2021年一年級語文上冊第六單元知識要點習(xí)題課件新人教版
- 2022春一年級語文下冊課文5識字測評習(xí)題課件新人教版
- 2023年六年級數(shù)學(xué)下冊6整理和復(fù)習(xí)4數(shù)學(xué)思考第1課時數(shù)學(xué)思考1練習(xí)課件新人教版