Matlab問(wèn)題狀態(tài)方程的解課件_第1頁(yè)
Matlab問(wèn)題狀態(tài)方程的解課件_第2頁(yè)
Matlab問(wèn)題狀態(tài)方程的解課件_第3頁(yè)
Matlab問(wèn)題狀態(tài)方程的解課件_第4頁(yè)
Matlab問(wèn)題狀態(tài)方程的解課件_第5頁(yè)
已閱讀5頁(yè),還剩62頁(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)介

Ch.2線性系統(tǒng)的時(shí)域分析Ch.2線性系統(tǒng)的時(shí)域分析1Matlab問(wèn)題(1/3)3.6Matlab問(wèn)題本章中涉及的計(jì)算問(wèn)題主要有矩陣指數(shù)函數(shù)的計(jì)算、系統(tǒng)運(yùn)動(dòng)軌跡的計(jì)算(即狀態(tài)空間模型的求解)以及連續(xù)系統(tǒng)的離散化(采樣)?;贛atlab的基本函數(shù)和工具箱,可以進(jìn)行上述系統(tǒng)運(yùn)動(dòng)分析的計(jì)算和仿真。Matlab問(wèn)題(1/3)3.6Matlab問(wèn)題2Matlab問(wèn)題(2/3)為更好地進(jìn)行動(dòng)態(tài)系統(tǒng)運(yùn)動(dòng)分析的計(jì)算和仿真,編著者設(shè)計(jì)了一個(gè)Matlab符號(hào)化和圖形化的控制系統(tǒng)運(yùn)動(dòng)分析軟件平臺(tái)lti_analysis。這里將涉及新的Matlab程序設(shè)計(jì)方法,如使用符號(hào)計(jì)算工具箱進(jìn)行矩陣指數(shù)函數(shù)和運(yùn)動(dòng)軌跡的符號(hào)計(jì)算、使用圖形用戶界面(GUI)設(shè)計(jì)控制系統(tǒng)仿真與實(shí)驗(yàn)的軟件平臺(tái)。Matlab問(wèn)題(2/3)為更好地進(jìn)行動(dòng)態(tài)系統(tǒng)運(yùn)動(dòng)分析的計(jì)算3Matlab問(wèn)題(3/3)下面分別介紹基于Matlab的上述問(wèn)題的程序編制和計(jì)算方法,主要有矩陣指數(shù)函數(shù)的計(jì)算線性定常連續(xù)系統(tǒng)的狀態(tài)空間模型求解

連續(xù)系統(tǒng)的離散化線性定常離散系統(tǒng)的狀態(tài)空間模型求解

線性定常系統(tǒng)的運(yùn)動(dòng)分析的符號(hào)計(jì)算和仿真平臺(tái)

Matlab問(wèn)題(3/3)下面分別介紹基于Matlab的上述4矩陣指數(shù)函數(shù)的計(jì)算(1/1)3.6.1矩陣指數(shù)函數(shù)的計(jì)算矩陣指數(shù)函數(shù)的計(jì)算問(wèn)題有兩類,一類是數(shù)值計(jì)算,即給定矩陣A和具體的時(shí)間t的值,計(jì)算矩陣指數(shù)eAt的值;另一類是符號(hào)計(jì)算,即在給定矩陣A下,計(jì)算矩陣指數(shù)函數(shù)eAt的封閉的(解析的)矩陣函數(shù)表達(dá)式。數(shù)值計(jì)算問(wèn)題可由基本的Matlab函數(shù)完成,符號(hào)計(jì)算問(wèn)題后一類則需要用到Matlab的符號(hào)工具箱。下面就分別介紹eAt的數(shù)值計(jì)算eAt的符號(hào)計(jì)算矩陣指數(shù)函數(shù)的計(jì)算(1/1)3.6.1矩陣指數(shù)函數(shù)的計(jì)算5eAt的數(shù)值計(jì)算(1/4)1.eAt的數(shù)值計(jì)算在Matlab中,給定矩陣A和時(shí)間t的值,計(jì)算矩陣指數(shù)eAt的值可以直接采用基本矩陣函數(shù)expm()。Matlab的expm()函數(shù)采用帕德(Pade)逼近法計(jì)算矩陣指數(shù)eAt,精度高,數(shù)值穩(wěn)定性好。expm()函數(shù)的主要調(diào)用格式為Y=expm(X)其中,X為輸入的需計(jì)算矩陣指數(shù)的矩陣,Y為計(jì)算的結(jié)果。eAt的數(shù)值計(jì)算(1/4)1.eAt的數(shù)值計(jì)算6eAt的數(shù)值計(jì)算(2/4)Matlab問(wèn)題3-1試在Matlab中計(jì)算例3-1中矩陣A在t=0.3時(shí)的矩陣指數(shù)eAt的值。Matlab程序m3-1如下。Matlab程序m3-1執(zhí)行結(jié)果如下。A=[01;-2-3];t=0.3;eAt=expm(A*t)eAt=0.93280.1920-0.38400.3568eAt的數(shù)值計(jì)算(2/4)Matlab問(wèn)題3-1試在Mat7在Matlab中還有3個(gè)計(jì)算矩陣指數(shù)eAt的函數(shù),分別是expmdemo1(),expmdemo2()和expmdemo3()。expmdemo1()就是expm(),采用帕德逼近法計(jì)算矩陣指數(shù);而expmdemo2()采用3.2.1節(jié)中介紹的利用泰勒級(jí)數(shù)展開(kāi)法來(lái)計(jì)算,精度較低;expmdemo3()采用3.2.2節(jié)中介紹的利用特征值和特征向量來(lái)計(jì)算對(duì)角線矩陣,進(jìn)而通過(guò)對(duì)角線矩陣的矩陣指數(shù)計(jì)算原矩陣的矩陣指數(shù)。eAt的數(shù)值計(jì)算(3/4)在Matlab中還有3個(gè)計(jì)算矩陣指數(shù)eAt的函數(shù),分別是ex8eAt的數(shù)值計(jì)算(4/4)expmdemo3()的計(jì)算精度取決于特征值、特征向量、指數(shù)函數(shù)exp()的計(jì)算精度,由于這3種計(jì)算有良好的計(jì)算方法,因此expmdemo3()的計(jì)算精度最高。但expmdemo3()只能計(jì)算矩陣的獨(dú)立特征向量數(shù)等于矩陣的維數(shù),即矩陣能變換為對(duì)角線矩陣的情況,因此,在不能判定矩陣是否能變換為對(duì)角線矩陣時(shí),盡量采用函數(shù)expm()。eAt的數(shù)值計(jì)算(4/4)expmdemo3()的計(jì)算精度取9eAt的符號(hào)計(jì)算(1/8)2.eAt的符號(hào)計(jì)算在Matlab中,對(duì)給定矩陣A,可通過(guò)符號(hào)計(jì)算工具箱的函數(shù)expm()計(jì)算變量t的矩陣指數(shù)函數(shù)eAt的表達(dá)式。在使用Matlab的符號(hào)計(jì)算工具箱計(jì)算時(shí),需要定義符號(hào)變量,輸入符號(hào)表達(dá)式與符號(hào)矩陣。下面介紹使用符號(hào)計(jì)算工具箱需要的基本操作。eAt的符號(hào)計(jì)算(1/8)2.eAt的符號(hào)計(jì)算10eAt的符號(hào)計(jì)算(2/8)1)定義符號(hào)變量定義(指定)符號(hào)變量的語(yǔ)句的格式為symstsx...該語(yǔ)句將符號(hào)t,s,x,…定義為符號(hào)變量。在該語(yǔ)句后,就可以輸入和計(jì)算符號(hào)表達(dá)式與符號(hào)矩陣。eAt的符號(hào)計(jì)算(2/8)1)定義符號(hào)變量11eAt的符號(hào)計(jì)算(3/8)2)輸入符號(hào)表達(dá)式符號(hào)表達(dá)式的輸入可采用賦值語(yǔ)句的方式,如賦值語(yǔ)句f1=sin(x)^2+cos(y)^3-3為定義符號(hào)表達(dá)式變量f1為表達(dá)式。在Matlab中,符號(hào)表達(dá)式的輸入采用符號(hào)串的形式,其表達(dá)式的格式與Matlab的數(shù)值計(jì)算的格式基本一致。eAt的符號(hào)計(jì)算(3/8)2)輸入符號(hào)表達(dá)式12eAt的符號(hào)計(jì)算(4/8)3)輸入符號(hào)矩陣Matlab中符號(hào)矩陣的輸入采用函數(shù)sym()。sym()的調(diào)用格式為S=sym(A)該函數(shù)的功能為將符號(hào)串A轉(zhuǎn)換為符號(hào)矩陣,其中符號(hào)串A的格式與使用Matlab進(jìn)行數(shù)值計(jì)算時(shí)矩陣的計(jì)算公式格式基本一致。如f2=sym([x^2+sqrt(1-x)y*x;1+zx+z^3])的函數(shù)sym()將符號(hào)串[x^2+sqrt(1-x)y*x;1+zx+z^3]轉(zhuǎn)換為如下表示的符號(hào)矩陣eAt的符號(hào)計(jì)算(4/8)3)輸入符號(hào)矩陣13eAt的符號(hào)計(jì)算(5/8)在給符號(hào)表達(dá)式變量和符號(hào)矩陣變量賦值后,在Matlab7.0中就可以像數(shù)值計(jì)算公式那樣直接采用算術(shù)運(yùn)算符“+”,“-”,“*”,“/”,“^”,以及exp(),expm()等函數(shù)進(jìn)行符號(hào)計(jì)算。如,在前面的符號(hào)表達(dá)式變量f1和符號(hào)矩陣變量f2賦值后,執(zhí)行符號(hào)計(jì)算公式f3=f1*f2就進(jìn)行如下符號(hào)表達(dá)式的計(jì)算eAt的符號(hào)計(jì)算(5/8)在給符號(hào)表達(dá)式變量和符號(hào)矩陣變量賦14eAt的符號(hào)計(jì)算(6/8)使用Matlab的符號(hào)工具箱的函數(shù)expm()可直接計(jì)算關(guān)于符號(hào)矩陣變量A的矩陣指數(shù)函數(shù)eA的表達(dá)式。符號(hào)計(jì)算函數(shù)expm()的調(diào)用格式為expA=expm(A)其中,輸入矩陣A為Matlab的符號(hào)矩陣,輸出矩陣expA為計(jì)算所得的eA的Matlab符號(hào)矩陣。Matlab問(wèn)題3-2試在Matlab中計(jì)算例3-1中矩陣A的矩陣指數(shù)eAt。eAt的符號(hào)計(jì)算(6/8)使用Matlab的符號(hào)工具箱的函數(shù)15eAt的符號(hào)計(jì)算(7/8)Matlab程序m3-2如下。其中t定義為符號(hào)變量,輸入矩陣A為一般Matlab的數(shù)值矩陣,表達(dá)式A*t即為Matlab的符號(hào)矩陣。Matlab程序m3-2執(zhí)行結(jié)果如下。上述計(jì)算結(jié)果與例3-1的計(jì)算結(jié)果完全一致。symst;A=[01;-2-3];eAt=expm(A*t)%定義符號(hào)變量t%計(jì)算矩陣A對(duì)應(yīng)的矩陣指數(shù)函數(shù)eAt=[2*exp(-t)-exp(-2*t),-exp(-2*t)+exp(-t)][2*exp(-2*t)-2*exp(-t),-exp(-t)+2*exp(-2*t)]例3-1的計(jì)算結(jié)果eAt的符號(hào)計(jì)算(7/8)Matlab程序m3-2如下。sy16eAt的符號(hào)計(jì)算(8/8)Matlab有著功能非常強(qiáng)大的符號(hào)計(jì)算功能,包括符號(hào)微分、符號(hào)積分、符號(hào)矩陣運(yùn)算、符號(hào)線性方程組解、符號(hào)非線性方程組解、符號(hào)常微分方程組解等,還可以與符號(hào)計(jì)算軟件Maple混合編程,調(diào)用Maple的其他符號(hào)計(jì)算功能。eAt的符號(hào)計(jì)算(8/8)Matlab有著功能非常強(qiáng)大的符號(hào)17線性定常連續(xù)系統(tǒng)的狀態(tài)空間模型求解(1/2)3.6.2線性定常連續(xù)系統(tǒng)的狀態(tài)空間模型求解

Matlab提供了非常豐富的線性定常連續(xù)系統(tǒng)的狀態(tài)空間模型求解(即系統(tǒng)運(yùn)動(dòng)軌跡的計(jì)算)的功能,主要的函數(shù)有初始狀態(tài)響應(yīng)函數(shù)initial()、階躍響應(yīng)函數(shù)step()以及可計(jì)算任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim(),但這里主要是計(jì)算其系統(tǒng)響應(yīng)的數(shù)值解。線性定常連續(xù)系統(tǒng)的狀態(tài)空間模型求解(1/2)3.6.2線18線性定常連續(xù)系統(tǒng)的狀態(tài)空間模型求解(2/2)對(duì)系統(tǒng)運(yùn)動(dòng)分析問(wèn)題,有時(shí)需要求解系統(tǒng)響應(yīng)的函數(shù)表達(dá)式。為此,編著者編寫(xiě)了專門(mén)用于求解系統(tǒng)響應(yīng)函數(shù)表達(dá)式的Matlab符號(hào)計(jì)算函數(shù)sym_lsim()。下面將分別介紹狀態(tài)空間模型求解的Matlab程序編制和計(jì)算問(wèn)題,主要內(nèi)容有:初始狀態(tài)響應(yīng)函數(shù)initial()、階躍響應(yīng)函數(shù)step()、任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim(),以及任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()。線性定常連續(xù)系統(tǒng)的狀態(tài)空間模型求解(2/2)對(duì)系統(tǒng)運(yùn)動(dòng)分析19初始狀態(tài)響應(yīng)函數(shù)initial()(1/8)1.初始狀態(tài)響應(yīng)函數(shù)initial()初始狀態(tài)響應(yīng)函數(shù)initial()主要是計(jì)算狀態(tài)空間模型(A,B,C,D)的初始狀態(tài)響應(yīng),其主要調(diào)用格式為initial(sys,x0,t)[y,t,x]=initial(sys,x0,t)其中sys為輸入的狀態(tài)空間模型;x0為給定的初始狀態(tài);t為指定仿真計(jì)算狀態(tài)響應(yīng)的時(shí)間區(qū)間變量(數(shù)組)。第1種調(diào)用格式的輸出格式為輸出響應(yīng)曲線圖,第2種調(diào)用格式的輸出為數(shù)組形式的輸出變量響應(yīng)值y,仿真時(shí)間坐標(biāo)數(shù)組t,狀態(tài)變量響應(yīng)值x。初始狀態(tài)響應(yīng)函數(shù)initial()(1/8)1.初始狀態(tài)響20初始狀態(tài)響應(yīng)函數(shù)initial()(2/8)Matlab中,時(shí)間區(qū)間變量(數(shù)組)t有三種格式:t=Tintial:dt:Tfinal表示仿真時(shí)間段為[Tintial,Tfinal],仿真時(shí)間步長(zhǎng)為dtt=Tintial:Tfinal表示仿真時(shí)間段為[Tintial,Tfinal],仿真時(shí)間步長(zhǎng)dt缺省為1t=Tfinal表示仿真時(shí)間段為[0,Tfinal],系統(tǒng)自動(dòng)選擇仿真時(shí)間步長(zhǎng)dt若時(shí)間數(shù)組缺省(沒(méi)有指定),表示系統(tǒng)自動(dòng)選擇仿真時(shí)間區(qū)間[0,Tfinal]和仿真時(shí)間步長(zhǎng)dt。初始狀態(tài)響應(yīng)函數(shù)initial()(2/8)Matlab中,21初始狀態(tài)響應(yīng)函數(shù)initial()(3/8)Matlab問(wèn)題3-3試在Matlab中計(jì)算例3-1中如下系統(tǒng)在[0,5s]的初始狀態(tài)響應(yīng)。Matlab程序m3-3如下。其中,最后一句語(yǔ)句plot(t,x)是以時(shí)間坐標(biāo)數(shù)組t為橫坐標(biāo),繪出x中存儲(chǔ)的2維狀態(tài)向量x(t)的隨時(shí)間變化的軌跡。A=[01;-2-3];B=[];C=[];D=[];x0=[1;2];sys=ss(A,B,C,D);[y,t,x]=initial(sys,x0,0:5);plot(t,x)%輸入狀態(tài)空間模型各矩陣,若沒(méi)有相應(yīng)值,可賦空矩陣%輸入初始狀態(tài)%求系統(tǒng)在[0,5s]的初始狀態(tài)響應(yīng)%繪以時(shí)間為橫坐標(biāo)的狀態(tài)響應(yīng)曲線圖初始狀態(tài)響應(yīng)函數(shù)initial()(3/8)Matlab問(wèn)題22初始狀態(tài)響應(yīng)函數(shù)initial()(4/8)Matlab程序m3-3執(zhí)行結(jié)果如圖3-4所示。圖3-4Matlab問(wèn)題3-3的狀態(tài)響應(yīng)曲線圖初始狀態(tài)響應(yīng)函數(shù)initial()(4/8)Matlab程序23初始狀態(tài)響應(yīng)函數(shù)initial()(5/8)Matlab提供的函數(shù)initial()只能計(jì)算出狀態(tài)響應(yīng)的計(jì)算值,若需要計(jì)算狀態(tài)響應(yīng)的表達(dá)式則需要根據(jù)前面介紹的符號(hào)工具箱,自己編程實(shí)現(xiàn)狀態(tài)響應(yīng)函數(shù)表達(dá)式的求解。Matlab問(wèn)題3-4

試在Matlab中計(jì)算Matlab問(wèn)題3-3的初始狀態(tài)響應(yīng)表達(dá)式。Matlab程序m3-4如下。A=[01;-2-3];sysmt;x0=[1;2];xt=expm(A*t)*x0初始狀態(tài)響應(yīng)函數(shù)initial()(5/8)Matlab提供24初始狀態(tài)響應(yīng)函數(shù)initial()(6/8)Matlab程序m3-4執(zhí)行結(jié)果如下。在Matlab程序m3-3中運(yùn)用了繪圖函數(shù)plot()。Matlab提供了非常強(qiáng)大的繪圖功能,可以繪2維曲線圖、3維曲面圖、4維切片圖以及動(dòng)態(tài)圖形(動(dòng)畫(huà)),其中函數(shù)plot()是主要的2維曲線繪圖函數(shù),主要調(diào)用格式為:plot(Y)plot(X,Y)plot(X,Y,LineSpec,'PropertyName',PropertyValue)xt=-3*exp(-2*t)+4*exp(-t)

-4*exp(-t)+6*exp(-2*t)例3-3的計(jì)算結(jié)果初始狀態(tài)響應(yīng)函數(shù)initial()(6/8)Matlab程序25初始狀態(tài)響應(yīng)函數(shù)initial()(7/8)第1種調(diào)用格式的輸入Y為mn矩陣,其輸出為矩陣Y的每一列畫(huà)一條曲線,共n條曲線的曲線圖。該曲線圖的橫坐標(biāo)為1至m的自然數(shù)。對(duì)第2種調(diào)用格式,若X和Y為向量,則長(zhǎng)度必須相等,輸出為一條X為橫坐標(biāo)軸的曲線。若X為向量,Y為矩陣,則X的長(zhǎng)度等于Y的行數(shù)或者列數(shù)。這時(shí)輸出為Y的列向量或者行向量對(duì)應(yīng)的,以X為橫坐標(biāo)軸的一組曲線。若Y為向量,X為矩陣,則Y的長(zhǎng)度等于X的行數(shù)或者列數(shù)。這時(shí)輸出為X的列向量或者行向量對(duì)應(yīng)的,以Y為縱坐標(biāo)軸的一組曲線。初始狀態(tài)響應(yīng)函數(shù)initial()(7/8)第1種調(diào)用格式的26初始狀態(tài)響應(yīng)函數(shù)initial()(8/8)第3種調(diào)用格式的LineSpec為指定輸出曲線的線型、顏色、曲線數(shù)據(jù)點(diǎn)的標(biāo)記符號(hào)。而'PropertyName'和PropertyValue則用于指定圖的一些特性,如圖名、坐標(biāo)名與刻度等。初始狀態(tài)響應(yīng)函數(shù)initial()(8/8)第3種調(diào)用格式的27階躍響應(yīng)函數(shù)step()(1/2)2.階躍響應(yīng)函數(shù)step()階躍響應(yīng)函數(shù)step()可用于計(jì)算在單位階躍輸入和零初始狀態(tài)(條件)下傳遞函數(shù)模型的輸出響應(yīng),或狀態(tài)空間模型的狀態(tài)和輸出響應(yīng),其主要調(diào)用格式為step(sys,t)[y,t]=step(sys,t)[y,t,x]=step(sys,t)其中,對(duì)第1、2種調(diào)用格式,sys為傳遞函數(shù)模型變量或狀態(tài)空間模型變量;對(duì)第3種方式,sys為狀態(tài)空間模型變量。t為指定仿真計(jì)算狀態(tài)響應(yīng)的時(shí)間數(shù)組,其格式與初始狀態(tài)響應(yīng)函數(shù)initial()一樣,也可以缺省。階躍響應(yīng)函數(shù)step()(1/2)2.階躍響應(yīng)函數(shù)step28階躍響應(yīng)函數(shù)step()(2/2)第1種調(diào)用格式的輸出為輸出響應(yīng)的圖形輸出,而第2、3種調(diào)用格式的輸出為將輸出響應(yīng)、時(shí)間坐標(biāo)數(shù)組、狀態(tài)響應(yīng)賦值給指定的數(shù)組變量。階躍響應(yīng)函數(shù)step()的使用方法與前面介紹的initial()函數(shù)相似,這里不再贅述。階躍響應(yīng)函數(shù)step()(2/2)第1種調(diào)用格式的輸出為輸出29任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(1/10)3.任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()可用于計(jì)算在給定的輸入信號(hào)序列(輸入信號(hào)函數(shù)的采樣值)下傳遞函數(shù)模型的輸出響應(yīng),或狀態(tài)空間模型的狀態(tài)和輸出響應(yīng),其主要調(diào)用格式為lsim(sys,u,t,x0)[y,t,x]=lsim(sys,u,t,x0)其中,sys為傳遞函數(shù)模型變量或狀態(tài)空間模型變量;t為時(shí)間坐標(biāo)數(shù)組;u是輸入信號(hào)u(t)對(duì)應(yīng)于時(shí)間坐標(biāo)數(shù)組t的各時(shí)刻輸入信號(hào)采樣值組成的數(shù)組,是求解系統(tǒng)響應(yīng)必須給定的;任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(1/10)3.任意輸入30任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(2/10)x0是初始狀態(tài)向量。當(dāng)輸入的sys為傳遞函數(shù)模型時(shí),x0的值不起作用,可以缺省。函數(shù)lsim()的第1種調(diào)用格式的輸出為將輸出響應(yīng)和輸入信號(hào)序列繪在一起的曲線圖,第2種調(diào)用格式的輸出與前面介紹的2個(gè)響應(yīng)函數(shù)一樣。任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(2/10)x0是初始狀態(tài)31任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(3/10)輸入變量u(t)的值u可以為用戶需要的任意輸入函數(shù)根據(jù)時(shí)間坐標(biāo)數(shù)組t進(jìn)行采樣獲得,也可以采用Matlab中的信號(hào)生成函數(shù)gensig()產(chǎn)生。gensig()的調(diào)用格式為[u,t]=gensig(type,tau)[u,t]=gensig(type,tau,Tf,Ts)其中,type為選擇信號(hào)類型的符號(hào)串變量;tau為以秒為單位的信號(hào)周期;Tf和Ts分別為產(chǎn)生信號(hào)的時(shí)間長(zhǎng)度和信號(hào)的采樣周期。gensig函數(shù)可以產(chǎn)生的信號(hào)類型type為正弦信號(hào)sin、方波信號(hào)square、周期脈沖信號(hào)pulse。所有信號(hào)的幅值為1。任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(3/10)輸入變量u(t32任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(4/10)Matlab問(wèn)題3-5試在Matlab中計(jì)算如下系統(tǒng)在[0,10s]內(nèi)周期為3s的單位方波輸入下的狀態(tài)響應(yīng)

。Matlab程序m3-5如下。A=[01;-2-3];B=[0;1];C=[];D=[];x0=[1;2];sys=ss(A,B,C,D);[ut]=gensig(square,3,10,0.1)[y,t,x]=lsim(sys,u,t,x0)plot(t,u,t,x);%產(chǎn)生周期為3s,時(shí)間為10s,采樣周期為0.1s的方波信號(hào)%計(jì)算系統(tǒng)在輸入序列u下的響應(yīng)%將輸入和狀態(tài)響應(yīng)繪于一張圖內(nèi)任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(4/10)Matlab33任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(5/10)Matlab程序m3-5執(zhí)行結(jié)果如圖3-5所示。圖3-5Matlab問(wèn)題3-5的狀態(tài)響應(yīng)曲線圖任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(5/10)Matlab34任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(6/10)Matlab提供的函數(shù)lsim()只能計(jì)算出狀態(tài)響應(yīng)的計(jì)算值,若需要計(jì)算狀態(tài)響應(yīng)的表達(dá)式則需要根據(jù)前面介紹的符號(hào)工具箱,自己編程實(shí)現(xiàn)狀態(tài)響應(yīng)函數(shù)表達(dá)式的求解。Matlab問(wèn)題3-6試在Matlab中計(jì)算Matlab問(wèn)題3-5的系統(tǒng)的單位階躍狀態(tài)響應(yīng)表達(dá)式。Matlab程序m3-6如下。A=[01;-2-3];B=[0;1];x0=[1;2];ut=1;%輸入ut為單位階躍信號(hào)symsttau;%指定符號(hào)變量%求系統(tǒng)的狀態(tài)響應(yīng)函數(shù)表達(dá)式xt=expm(A*t)*x0+int(expm(A*(t-tau))*B*ut,tau,0,t)任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(6/10)Matlab35任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(7/10)Matlab程序m3-6執(zhí)行結(jié)果如下。xt=-5/2*exp(-2*t)+3*exp(-t)+1/2-3*exp(-t)+5*exp(-2*t)例3-3的計(jì)算結(jié)果任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(7/10)Matlab36任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(8/10)在Matlab程序m3-6中涉及符號(hào)積分的計(jì)算函數(shù)int(),該函數(shù)的調(diào)用格式為:R=int(S)R=int(S,v)R=int(S,a,b)R=int(S,v,a,b)其中,輸入S為待求積分的符號(hào)表達(dá)式,v為積分變量,a和b分別為積分變量的下限和上限。符號(hào)積分函數(shù)int()的意義為求解符號(hào)表達(dá)式S對(duì)應(yīng)于積分變量v在積分區(qū)間[a,b]內(nèi)的積分,積分結(jié)果R為符號(hào)表達(dá)式。任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(8/10)在Matla37任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(9/10)符號(hào)積分函數(shù)int()的積分變量v和積分上限a與下限b可以缺省。當(dāng)v缺省時(shí),則積分變量為程序中指定的惟一符號(hào)變量,或由符號(hào)工具箱符號(hào)變量自動(dòng)確定規(guī)則確定符號(hào)表達(dá)式S的符號(hào)變量.符號(hào)工具箱符號(hào)變量自動(dòng)確定規(guī)則為:符號(hào)變量為符號(hào)x或與x最近的單文字符號(hào),如y,z,w,v,…。當(dāng)積分限a與b缺省時(shí)(只能同時(shí)缺省),則符號(hào)積分函數(shù)int()求解為S的不定積分式。任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(9/10)符號(hào)積分函數(shù)38任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(10/10)在Matlab程序m3-6中符號(hào)積分計(jì)算int(expm(A*(t-tau))*B*ut,tau,0,t)中,待積分函數(shù)為eA(t-tau),積分變量指定為tau,積分區(qū)間為[0,t]。該積分式計(jì)算的是零狀態(tài)響應(yīng)函數(shù)的表達(dá)式,進(jìn)行的是卷積的符號(hào)計(jì)算。任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()(10/10)在Matl39任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(1/9)4.任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()Matlab提供的函數(shù)lsim()只能計(jì)算出狀態(tài)響應(yīng)的計(jì)算值,若需要計(jì)算狀態(tài)響應(yīng)的表達(dá)式,則需要根據(jù)前面介紹的符號(hào)工具箱,自己編程實(shí)現(xiàn)狀態(tài)響應(yīng)函數(shù)表達(dá)式的求解。編著者開(kāi)發(fā)了專門(mén)進(jìn)行任意輸入下系統(tǒng)響應(yīng)函數(shù)的符號(hào)表達(dá)式的符號(hào)計(jì)算函數(shù)sym_lsim(),以計(jì)算任意輸入下的線性系統(tǒng)響應(yīng)函數(shù)。任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(1/9)4.任40任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(2/9)sym_lsim()的主要調(diào)用格式為:[yt,xt]=sym_lsim(sys,x0,in_signal,a,b,amplit)[yt,xt]=sym_lsim(sys,x0,in_signal,a,b)[yt,xt]=sym_lsim(sys,x0,in_signal)其中,sys為系統(tǒng)狀態(tài)空間模型;x0、amplit、a和b分別為系統(tǒng)的初始狀態(tài)、輸入信號(hào)幅值、求解的系統(tǒng)狀態(tài)軌跡的起始時(shí)間和結(jié)束時(shí)間;in_signal為輸入信號(hào)符號(hào)串。輸出項(xiàng)yt和xt的格式為符號(hào)表達(dá)式(矩陣)。由于采用符號(hào)工具箱計(jì)算,因此,x0,a,b和amplit可以為數(shù)值與數(shù)值變量,也可以為符號(hào)表達(dá)式或符號(hào)變量。任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(2/9)sym_41任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(3/9)在sym_lsim中,in_signal可以是表示系統(tǒng)輸入函數(shù)的符號(hào)表達(dá)式或符號(hào)變量,但為方便輸入常用的階躍信號(hào)和脈沖信號(hào),分別規(guī)定這兩類輸入信號(hào)的in_signal為step和impulse。通過(guò)in_signal和amplit這兩個(gè)輸入項(xiàng),可以實(shí)現(xiàn)任意的系統(tǒng)輸入信號(hào)設(shè)置。如,當(dāng)輸入信號(hào)u(t)=sin(2t+0.5)+e-3t時(shí),in_signal為符號(hào)表達(dá)式sin(2*t+0.5)+exp(-3*t)當(dāng)輸入信號(hào)為5個(gè)單位脈沖信號(hào)時(shí),in_signal和amplit分別為in_signal=impulse;amplit=5任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(3/9)在sym42任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(4/9)Matlab問(wèn)題3-7試在Matlab中計(jì)算如下系統(tǒng)在輸入u(t)=e-2t下的輸出響應(yīng)表達(dá)式。Matlab程序m3-7如下。A=[01;-2-3];B=[0;1];C=[10];D=0;x0=[1;2];sys=ss(A,B,C,D);symst;yt=sym_lsim(sys,x0,exp(-2*t),0,t,1)%指定符號(hào)變量%計(jì)算輸入exp(-2t)下系統(tǒng)的輸出響應(yīng)函數(shù)任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(4/9)Matl43任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(5/9)Matlab程序m3-7執(zhí)行結(jié)果如下。在Matlab中,計(jì)算得到符號(hào)表達(dá)式后,可以使用函數(shù)subs()和ezplot()很方便地求取所需要的函數(shù)值和繪出函數(shù)圖形。下面加以簡(jiǎn)單介紹.yt=5*exp(-t)-4*exp(-2*t)-t*exp(-2*t)任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(5/9)Matl44任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(6/9)1)

函數(shù)subs()。函數(shù)subs()可用于符號(hào)表達(dá)式的函數(shù)值計(jì)算和變量代換,其主要調(diào)用格式為R=subs(S,new)R=subs(S,old,new)其中,S為要計(jì)算或代換的符號(hào)表達(dá)式(矩陣);old為要計(jì)算或被代換的符號(hào)變量;new為要計(jì)算的變量的值或代換的新變量。在第1種調(diào)用格式中沒(méi)有指定需計(jì)算或代換的變量,系統(tǒng)自動(dòng)根據(jù)符號(hào)變量自動(dòng)確定規(guī)則確定符號(hào)表達(dá)式S的變量。任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(6/9)1)函45任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(7/9)如,欲計(jì)算Matlab程序m3-7計(jì)算好的輸出響應(yīng)的符號(hào)表達(dá)式y(tǒng)t在t=0.6時(shí)刻的值,只需執(zhí)行subs(yt,t,0.6)即可得系統(tǒng)輸出響應(yīng)y(t)在t=0.6時(shí)刻的值為1.3586。任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(7/9)如,欲計(jì)46任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(8/9)2)

函數(shù)ezplot()。符號(hào)表達(dá)式繪圖函數(shù)ezplot()可以直接繪制符號(hào)表達(dá)式所表示的函數(shù)的2維曲線圖,其主要調(diào)用格式為ezplot(f,[min,max])ezplot(f,[xmin,xmax,ymin,ymax])其中,f為給定的符號(hào)表達(dá)式;[min,max]為需繪圖曲線的自變量的區(qū)間;[xmin,xmax,ymin,ymax]為繪圖曲線的2維變量的區(qū)間。當(dāng)[min,max]缺省時(shí),系統(tǒng)自動(dòng)設(shè)置繪圖區(qū)間為[-2,2]。任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(8/9)2)47任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(9/9)如,欲繪出Matlab程序m3-7得到的符號(hào)表達(dá)式y(tǒng)t在[0,4s]內(nèi)的曲線,只需執(zhí)行ezplot(yt,[0,4])即可得系統(tǒng)輸出響應(yīng)y(t)在[0,4s]內(nèi)的曲線圖如圖3-6所示。圖3-6輸出響應(yīng)的符號(hào)表達(dá)式的函數(shù)圖任意輸入的符號(hào)響應(yīng)函數(shù)sym_lsim()(9/9)如,欲繪48連續(xù)系統(tǒng)的離散化(1/6)3.6.3連續(xù)系統(tǒng)的離散化Matlab語(yǔ)言提供了連續(xù)系統(tǒng)經(jīng)采樣而進(jìn)行離散化的函數(shù)c2d()。該函數(shù)的功能為將連續(xù)系統(tǒng)的傳遞函數(shù)模型和狀態(tài)空間模型變換為離散系統(tǒng)的傳遞函數(shù)模型和狀態(tài)空間模型,其主要調(diào)用格式為sysd=c2d(sys,Ts)sysd=c2d(sys,Ts,method)其中,sys為輸入的連續(xù)系統(tǒng)傳遞函數(shù)模型或狀態(tài)空間模型;sysd為離散化所得的離散系統(tǒng)傳遞函數(shù)模型或狀態(tài)空間模型;連續(xù)系統(tǒng)的離散化(1/6)3.6.3連續(xù)系統(tǒng)的離散化49連續(xù)系統(tǒng)的離散化(2/6)Ts為采樣周期;method為離散化方法選擇變量,它可以為zoh、foh、tustin和matched等,分別對(duì)應(yīng)于基于0階和1階保持器的離散化法、雙線性法和零極點(diǎn)匹配法。與3.4.1節(jié)精確離散法對(duì)應(yīng)的method的值為zoh,其意義為采樣系統(tǒng)的輸入信號(hào)采樣后將通過(guò)0階保持器。連續(xù)系統(tǒng)的離散化(2/6)Ts為采樣周期;50連續(xù)系統(tǒng)的離散化(3/6)Matlab問(wèn)題3-8試在Matlab中計(jì)算例3-11的如下系統(tǒng)在采樣周期為0.1s時(shí)的離散化狀態(tài)方程。Matlab程序m3-8如下。A=[01;0-2];B=[0;1];C=[];D=[];Ts=0.1;sys=ss(A,B,C,D);sys_d=c2d(sys,Ts,zoh)%賦值采樣時(shí)間%對(duì)連續(xù)系統(tǒng)sys進(jìn)行離散化,其中保持器為0階連續(xù)系統(tǒng)的離散化(3/6)Matlab問(wèn)題3-8試在Mat51連續(xù)系統(tǒng)的離散化(4/6)Matlab程序m3-8執(zhí)行結(jié)果如下。a=x1x2x110.09063x200.8187b=u1x10.004683x20.09063Samplingtime:0.1Discrete-timemodel.連續(xù)系統(tǒng)的離散化(4/6)Matlab程序m3-8執(zhí)行結(jié)果如52連續(xù)系統(tǒng)的離散化(5/6)對(duì)近似離散法,可以根據(jù)近似離散化公式,直接編程實(shí)現(xiàn)。Matlab問(wèn)題3-9試用近似離散化方法計(jì)算Matlab問(wèn)題3-8的系統(tǒng)的離散化狀態(tài)方程。Matlab程序m3-9如下。A=[01;0-2];B=[0;1];C=[];D=[];Ts=0.1;[n,m]=size(A);A_d=eye(n)+A*Ts;B_d=B*Ts;sys_d=ss(A_d,B_d,C,D,Ts)

%查詢矩陣A的各維的大小%計(jì)算近似離散法的系統(tǒng)矩陣%計(jì)算輸入矩陣連續(xù)系統(tǒng)的離散化(5/6)對(duì)近似離散法,可以根據(jù)近似離散化公53連續(xù)系統(tǒng)的離散化(6/6)Matlab程序m3-9執(zhí)行結(jié)果如下。a=x1x2x110.1x200.8b=u1x10x20.1Samplingtime:0.1Discrete-timemodel.連續(xù)系統(tǒng)的離散化(6/6)Matlab程序m3-9執(zhí)行結(jié)果如54線性定常離散系統(tǒng)的狀態(tài)空間模型求解(1/5)3.6.4線性定常離散系統(tǒng)的狀態(tài)空間模型求解

Matlab提供的初始狀態(tài)響應(yīng)函數(shù)initial()、階躍響應(yīng)函數(shù)step()和任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()也同樣適用于線性定常離散系統(tǒng),其使用方法與連續(xù)系統(tǒng)時(shí)基本一致。下面簡(jiǎn)單介紹如何運(yùn)用任意輸入的系統(tǒng)響應(yīng)函數(shù)lsim()計(jì)算線性定常離散系統(tǒng)的響應(yīng)。線性定常離散系統(tǒng)的狀態(tài)空間模型求解(1/5)3.6.4線55線性定常離散系統(tǒng)的狀態(tài)空間模型求解(2/5)在計(jì)算離散系統(tǒng)的系統(tǒng)響應(yīng)時(shí),函數(shù)lsim()的主要調(diào)用格式為lsim(sys,u,t,x0,type)[yt,t,xt]=lsim(sys,u,t,x0,type)其中sys為離散系統(tǒng)的傳遞函數(shù)模型或狀態(tài)空間模型;t為時(shí)間坐標(biāo)數(shù)組;u為時(shí)間坐標(biāo)數(shù)組t指定時(shí)刻的輸入信號(hào)序列,其采樣周期需與離散系統(tǒng)模型sys的采樣周期定義一致;x0為初始狀態(tài);type為輸入信號(hào)采樣保持器的選擇變量,type=zoh和foh分別表示為0階和1階采樣信號(hào)保持器。線性定常離散系統(tǒng)的狀態(tài)空間模型求解(2/5)在計(jì)算離散系統(tǒng)56線性定常離散系統(tǒng)的狀態(tài)空間模型求解(3/5)若type缺省,Matlab將采用高階保持器對(duì)輸入的采樣信號(hào)進(jìn)行光滑處理后,再進(jìn)行系統(tǒng)響應(yīng)求解。對(duì)應(yīng)于前面3.5.1節(jié)求取離散系統(tǒng)的狀態(tài)響應(yīng)方法,type變量應(yīng)為zoh。線性定常離散系統(tǒng)的狀態(tài)空間模型求解(3/5)若type缺省57線性定常離散系統(tǒng)的狀態(tài)空間模型求解(4/5)Matlab問(wèn)題3-10試在Matlab中計(jì)算例3-14的線性離散系統(tǒng)在采樣周期為0.1s,系統(tǒng)輸入為sin(t)時(shí)的[0,6s]的狀態(tài)響應(yīng)。Matlab程序m3-10如下。G=[01;-0.16-1];H=[1;1];C=[];D=[];x0=[1;-1];Ts=0.1;sys=ss(G,H,C,D,Ts);[u,t]=gensig(sin,2,6,Ts);[y,t,x]=lsim(sys,u,t,x0,zoh)plot(t,u,t,x);%定義采樣周期%建立離散系統(tǒng)狀態(tài)空間模型%產(chǎn)生周期為2s,時(shí)間為6s的正弦信號(hào)%計(jì)算離散系統(tǒng)在給定輸入下的響應(yīng)%將輸入與狀態(tài)繪于一張圖內(nèi)線性定常離散系統(tǒng)的狀態(tài)空間模型求解(4/5)Matlab問(wèn)題58線性定常離散系統(tǒng)的狀態(tài)空間模型求解(5/5)Matlab程序m3-10執(zhí)行結(jié)果如圖3-7

溫馨提示

  • 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)論