現(xiàn)代控制理論實驗報告

上傳人:1888****888 文檔編號:37935080 上傳時間:2021-11-05 格式:DOC 頁數(shù):63 大小:836.02KB
收藏 版權申訴 舉報 下載
現(xiàn)代控制理論實驗報告_第1頁
第1頁 / 共63頁
現(xiàn)代控制理論實驗報告_第2頁
第2頁 / 共63頁
現(xiàn)代控制理論實驗報告_第3頁
第3頁 / 共63頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《現(xiàn)代控制理論實驗報告》由會員分享,可在線閱讀,更多相關《現(xiàn)代控制理論實驗報告(63頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、中北大學現(xiàn)代控制理論實驗報告 現(xiàn)代控制理論 實驗報告 1005044114 信息與通信工程學院 張磊 學生姓名: 學號: 電氣工程及其自動化 學 院: 專 業(yè): 現(xiàn)代控制理論實驗 實驗一 線性定常系統(tǒng)模型 一 實驗目的 1. 掌握線性定常系統(tǒng)的狀態(tài)空間表達式。學會在MATLAB中建立狀態(tài)空間模型的方法。 2. 掌握傳遞函數(shù)與狀態(tài)空間表

2、達式之間相互轉換的方法。學會用MATLAB實現(xiàn)不同模型之間的相互轉換。 3. 熟悉系統(tǒng)的連接。學會用MATLAB確定整個系統(tǒng)的狀態(tài)空間表達式和傳遞函數(shù)。 4. 掌握狀態(tài)空間表達式的相似變換。掌握將狀態(tài)空間表達式轉換為對角標準型、約當標準型、能控標準型和能觀測標準型的方法。學會用MATLAB進行線性變換。 二 實驗內容 1. 已知系統(tǒng)的傳遞函數(shù) (a) (b) (1)建立系統(tǒng)的TF或ZPK模型。 (2)將給定傳遞函數(shù)用函數(shù)ss( )轉換為狀態(tài)空間表達式。再將得到的狀態(tài)空間表達式用函數(shù)tf(

3、)轉換為傳遞函數(shù),并與原傳遞函數(shù)進行比較。 (3)將給定傳遞函數(shù)用函數(shù)jordants( )轉換為對角標準型或約當標準型。再將得到的對角標準型或約當標準型用函數(shù)tf( )轉換為傳遞函數(shù),并與原傳遞函數(shù)進行比較。 (4)將給定傳遞函數(shù)用函數(shù)ctrlts( )轉換為能控標準型和能觀測標準型。再將得到的能控標準型和能觀測標準型用函數(shù)tf( )轉換為傳遞函數(shù),并與原傳遞函數(shù)進行比較。 實驗數(shù)據(jù)為 實驗1 (a) (1) >> z=[],p=[0 -1 -1 -3] z = [] p = 0 -1 -1 -3 >> G=zpk(z,p,4) Zero/po

4、le/gain: 4 --------------- s (s+1)^2 (s+3) (2) >> G=ss(G) a = x1 x2 x3 x4 x1 0 1 0 0 x2 0 -1 1 0 x3 0 0 -1 1 x4 0 0 0 -3 b = u1 x1 0 x2 0 x3 0 x4 2 c = x1 x2 x3 x4

5、 y1 2 0 0 0 d = u1 y1 0 Continuous-time model. >> G=tf(G) Transfer function: 4 ------------------------- s^4 + 5 s^3 + 7 s^2 + 3 s 實驗一 1 b (1) >> z=[-2 -4],p=[-1 -3] z = -2 -4 p = -1 -3 >> G=zpk(z,p,1) Z

6、ero/pole/gain: (s+2) (s+4) ----------- (s+1) (s+3) (2) >> G=ss(G) a = x1 x2 x1 -1 1 x2 0 -3 b = u1 x1 1 x2 1 c = x1 x2 y1 1 1 d = u1 y1 1 Continuous-time model. >> G=tf(G) Transfer fu

7、nction: s^2 + 6 s + 8 ------------- s^2 + 4 s + 3 實驗一 2 ~{J5QiR;~} ~{#(~}2~{#)~}a ~{#(~}1~{#)~} >>A=[0 1;-5 -6];B=[0;1];C=[1 1];D=0;G=ss(A,B,C,D) Geig=eig(G) Gtf=tf(G) Gzpk=zpk(Gtf) a = x1 x2 x1 0 1 x2 -5 -6 b = u1 x1 0 x2 1 c

8、 = x1 x2 y1 1 1 d = u1 y1 0 Continuous-time model. Geig = -1 -5 Transfer function: s + 1 ------------- s^2 + 6 s + 5 Zero/pole/gain: (s+1) ----------- (s+5) (s+1) ~{#(~}2~{#)~} >> A=[0 1;-5 -6];B=[0;1];C=[1 1];D=0

9、;G=ss(A,B,C,D) Gcanon=canon(G) Geig=eig(Gcanon) Gtf=tf(Gcanon) Gzpk=zpk(Gtf) a = x1 x2 x1 0 1 x2 -5 -6 b = u1 x1 0 x2 1 c = x1 x2 y1 1 1 d = u1 y1 0 Continuous-time model. a =

10、x1 x2 x1 -1 0 x2 0 -5 b = u1 x1 0.3536 x2 1.275 c = x1 x2 y1 0 0.7845 d = u1 y1 0 Continuous-time model. Geig = -5 -1 Transfer function: 1 ----- s + 5 Zero/pol

11、e/gain: 1 ----- (s+5) ~{J5QiR;~} 2b ~{#(~}1~{#)~} >> A=[0 1 0;3 0 2;-12 -7 -6];B=[2;1;7];C=[1 1 1];D=0;G=ss(A,B,C,D) Geig=eig(G) Gtf=tf(G) Gzpk=zpk(Gtf) a = x1 x2 x3 x1 0 1 0 x2 3 0 2 x3 -12 -7 -6 b = u1 x1 2 x

12、2 1 x3 7 c = x1 x2 x3 y1 1 1 1 d = u1 y1 0 Continuous-time model. Geig = -1.0000 -2.0000 -3.0000 Transfer function: 10 s^2 + 8 s - 39 ---------------------- s^3 + 6 s^2 + 11 s + 6 Zero/pole/gain: 10 (s+

13、2.415) (s-1.615) ---------------------- (s+3) (s+2) (s+1) ~{#(~}2~{#)~} >> A=[0 1 0;3 0 2;-12 -7 -6];B=[2;1;7];C=[1 1 1];D=0;G=ss(A,B,C,D) Gcanon=canon(G) Geig=eig(Gcanon) Gtf=tf(Gcanon) Gzpk=zpk(Gtf) a = x1 x2 x3 x1 0 1 0 x2 3 0 2 x3 -12

14、-7 -6 b = u1 x1 2 x2 1 x3 7 c = x1 x2 x3 y1 1 1 1 d = u1 y1 0 Continuous-time model. a = x1 x2 x3 x1 -1 0 0 x2 0 -2 0 x3 0 0 -3 b = u1 x1 -32.0

15、4 x2 68.74 x3 58.85 c = x1 x2 x3 y1 0.5774 0.2182 0.2294 d = u1 y1 0 Continuous-time model. Geig = -3.0000 -2.0000 -1.0000 Transfer function: 10 s^2 + 8 s - 39 ---------------------- s^3 + 6 s^2 +

16、11 s + 6 Zero/pole/gain: 10 (s+2.415) (s-1.615) ---------------------- (s+3) (s+2) (s+1) 2. 已知系統(tǒng)的狀態(tài)空間表達式 (a) (b) (c) (d) (1)建立給定系統(tǒng)的狀態(tài)空間模型。用函數(shù)eig( ) 求出系統(tǒng)特征值。用函數(shù)tf( ) 和zpk( )將這些狀態(tài)空間表達式轉換為傳遞函數(shù),記錄得到的傳遞函

17、數(shù)和它的零極點。比較系統(tǒng)的特征值和極點是否一致,為什么? (2)用函數(shù)canon( )將給定狀態(tài)空間表達式轉換為對角標準型。用函數(shù)eig( )求出系統(tǒng)特征值。比較這些特征值和(1)中的特征值是否一致,為什么? 再用函數(shù)tf( )和zpk( )將對角標準型或約當標準型轉換為傳遞函數(shù)。比較這些傳遞函數(shù)和(1)中的傳遞函數(shù)是否一致,為什么? (3)用函數(shù)ctrlss( )將給定的狀態(tài)空間表達式轉換為能控標準型和能觀測標準型。用函數(shù)eig( )求系統(tǒng)的特征值。比較這些特征值和(1)中的特征值是否一致,為什么?再用函數(shù)tf( )將它們轉換為傳遞函數(shù)。比較這些傳遞函數(shù)和(1)中的傳遞函數(shù)是否一致,為什

18、么? 3. 已知兩個子系統(tǒng) (1)建立兩個子系統(tǒng)的傳遞函數(shù)模型。求它們串聯(lián)、并聯(lián)、反饋連接時, 整個系統(tǒng)的傳遞函數(shù)模型。然后將所得傳遞函數(shù)模型轉換為狀態(tài)空間模型。 (2)將兩個子系統(tǒng)的傳遞函數(shù)模型轉換為狀態(tài)空間模型。求它們串聯(lián)、并聯(lián)、反饋連接時, 整個系統(tǒng)的狀態(tài)空間模型。然后將所得狀態(tài)空間模型轉換為傳遞函數(shù)模型。比較(1)和(2)所得的相應的結果。 (3)將(2)中所得的整個系統(tǒng)的狀態(tài)空間模型的系數(shù)矩陣與教材中推導出的整個系統(tǒng)的狀態(tài)空間表達式的系數(shù)矩陣比較,是否符合? 三 附錄 1. 線性定常系統(tǒng)的數(shù)學模型 在MATLAB中,線性定常(linea

19、r time invariant, 簡稱為 LTI)系統(tǒng)可以用4種數(shù)學模型描述,即傳遞函數(shù)(TF)模型、零極點增益(ZPK)模型和狀態(tài)空間(SS)模型以及SIMULINK結構圖。前三種數(shù)學模型是用數(shù)學表達式表示的,且均有連續(xù)和離散兩種類型,通常把它們統(tǒng)稱為LTI模型。 1) 傳遞函數(shù)模型(TF 模型) 令單輸入單輸出線性定常連續(xù)和離散系統(tǒng)的傳遞函數(shù)分別為 (1-1) 和 。 (1-2) 在MATLAB中,連續(xù)系統(tǒng)和離散系統(tǒng)的傳遞函數(shù)都用分子/分母多項式系數(shù)構成的兩個行向量num和den表示,即 ,

20、系統(tǒng)的傳遞函數(shù)模型用MATLAB提供的函數(shù)tf( )建立。函數(shù)tf ( )不僅能用于建立系統(tǒng)傳遞函數(shù)模型,也能用于將系統(tǒng)的零極點增益模型和狀態(tài)空間模型轉換為傳遞函數(shù)模型。該函數(shù)的調用格式如下: 返回連續(xù)系統(tǒng)的傳遞函數(shù)模型。 返回離散系統(tǒng)的傳遞函數(shù)模型。Ts為采樣周期,當Ts=-1或者Ts=[]時,系統(tǒng)的采樣周期未定義。 可將任意的LTI模型轉換為傳遞函數(shù)模型。 例1-1 已知一個系統(tǒng)的傳遞函數(shù)為 建立傳遞函數(shù)模型。 在命令窗中運行下列命令 >>num=6;den=

21、[1 6 11 6];G=tf (num, den) 返回 Transfer function: 6 ---------------------- s^3 + 6 s^2 + 11 s + 6 2) 零極點增益模型(ZPK模型) 系統(tǒng)的零極點增益模型是傳遞函數(shù)模型的一種特殊形式。令線性定常連續(xù)和離散系統(tǒng)的零極點形式的傳遞函數(shù)分別為 (1-3) 和 (1-4) 在MATLAB中,連續(xù)和離散系統(tǒng)的零點和極點都用行向量和表示,即 ,。 系統(tǒng)的零極點增益模型用MATLAB提供的函數(shù)zpk

22、 ( )建立。函數(shù)zpk( )不僅能用來建立系統(tǒng)零極點增益模型,也能用于將系統(tǒng)的傳遞函數(shù)模型和狀態(tài)空間模型轉換為零極點增益模型。該函數(shù)的調用格式如下: 返回連續(xù)系統(tǒng)的零極點增益模型。 返回離散系統(tǒng)的零極點增益模型。Ts為采樣周期,當Ts=-1或者Ts=[]時,系統(tǒng)的采樣周期未定義。 可將任意的LTI模型轉換為零極點增益模型。 例1-2 已知系統(tǒng)的傳遞函數(shù)為 建立系統(tǒng)的零極點增益模型。 在命令窗中運行下列命令 >> z=[ ];p=[-1 -2 -3];k=6;G=zp

23、k(z,p,k) 返回 Zero/pole/gain: 6 ----------------- (s+1) (s+2) (s+3) 注意:無零點時,設z為空。 3) 狀態(tài)空間模型(SS模型) 令多輸入多輸出線性定常連續(xù)和離散系統(tǒng)的狀態(tài)空間表達式分別為 (1-5) 和 (1-6) 在MATLAB中,連續(xù)系統(tǒng)和離散系統(tǒng)的狀態(tài)空間模型都用MATLAB提供的函數(shù)ss ( )建立。函數(shù)ss ( )不僅能用于建立系統(tǒng)的狀態(tài)空間模型,也能用于將系統(tǒng)的傳遞函數(shù)模型和零極點增益模型轉換為

24、狀態(tài)空間模型。該函數(shù)的調用格式如下: 返回連續(xù)系統(tǒng)的狀態(tài)空間模型。 返回離散系統(tǒng)的狀態(tài)空間模型。Ts為采樣周期,當Ts=1或者Ts=[]時,系統(tǒng)的采樣周期未定義。 可將任意的LTI模型轉換為狀態(tài)空間模型。 例1-3 已知系統(tǒng)的狀態(tài)空間表達式為 建立系統(tǒng)的狀態(tài)空間模型。 在命令窗中運行下列命令 >> A=[0 1 0;0 0 1;-6 -11 -6];B=[0;0;1];C=[6 0 0];D

25、=0;G=ss(A,B,C,D) 返回 a = x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -6 -11 -6 b = u1 x1 0 x2 0 x3 1 c = x1 x2 x3 y1 6 0 0 d = u1 y1 0 Continuous-time model. 注意:D=0不能缺省。 2.模型轉換 上述三種LTI模型之間可以通過函

26、數(shù)tf( ),zpk( )和ss( )相互轉換。線性定常系統(tǒng)的傳遞函數(shù)模型和零極點增益模型是唯一的,但系統(tǒng)的狀態(tài)空間模型是不唯一的。函數(shù)ss( )只能將傳遞函數(shù)模型和零極點增益模型轉換為一種指定形式的狀態(tài)空間模型。 例1-4 已知系統(tǒng)的傳遞函數(shù),建立TF模型,將其轉換為ZPK模型和SS模型。再將轉換得到的SS模型轉換為TF模型。 編制如下程序%ex14。 %ex14 num=5;den=[1 4 5 2];Gtf=tf(num,den); Gzp

27、k=zpk(Gtf) Gss=ss(Gtf) Gtf1=tf(Gss) 在命令窗中運行該程序,即 >> ex14 返回 Zero/pole/gain: 5 ------------- (s+2) (s+1)^2 a = x1 x2 x3 x1 -4 -2.5 -0.5 x2 2 0 0 x3 0 2 0 b = u1 x1 1 x2 0 x3 0 c = x

28、1 x2 x3 y1 0 0 1.25 d = u1 y1 0 Continuous-time model. Transfer function: 5 --------------------- s^3 + 4 s^2 + 5 s + 2 傳遞函數(shù)可以轉換為約旦標準型(包括對角標準型)、能控標準型和能觀測標準型。 我們編制的函數(shù)jordants( ) 可用部分分式展開將傳遞函數(shù)轉換為對角標準型或約當標準型。該函數(shù)的調用格式為: 其中num和den分別為傳遞函數(shù)分子和分母多項式系數(shù)的行向

29、量,為轉換得到對角標準型或約當標準型。 該函數(shù)的程序如下: function Gj=jordants(num,den) %用部分分式展開將傳遞函數(shù)轉換為約當標準型 [R,P,K]=residue(num,den); j=1;q=P(1);m(1)=0; for i=1:length(P) if P(i)==q m(j)=m(j)+1; else q=P(i); j=j+1; m(j)=1; end end %計算各極點的重數(shù) Aj=diag(P); for i=1:length

30、(P)-1 if Aj(i,i)==Aj(i+1,i+1) Aj(i,i+1)=1; else Aj(i,i+1)=0; end end %構造系統(tǒng)矩陣Aj B1=0; l=0; for j=1:length(m) l=l+m(j); B1(l)=1; end Bj=B1; %構造輸入矩陣Bj n=1;l=m(1); Cj(:,1:m(1))=rot90(R(1:m(1),:),3); for k=2:length(m) n=l+1;l=l+m(k); Cj(:,n:l)=rot90(

31、R(n:l,:),3); end %構造輸出矩陣Cj if K==[ ] Dj=0; else Dj=K; end %構造直聯(lián)矩陣Dj Gj=ss(Aj,Bj,Cj,Dj); 例1-5 已知系統(tǒng)的傳遞函數(shù)為 將其轉換為對角標準型。 在命令窗中運行下列命令 >> num=6;den=[1 6 11 6];Gj=jordants(num,den) 返回 a = x1 x2 x3 x

32、1 -3 0 0 x2 0 -2 0 x3 0 0 -1 b = u1 x1 1 x2 1 x3 1 c = x1 x2 x3 y1 3 -6 3 d = u1 y1 0 Continuous-time model. 例1-6 已知系統(tǒng)的傳遞函數(shù)為 將其轉換為約當標準型。 在命令窗中運行下列命令 >> num=[2 10 17 1

33、1]; den=[1 5 8 4]; Gj=jordants(num,den) 返回 a = x1 x2 x3 x1 -2 1 0 x2 0 -2 0 x3 0 0 -1 b = u1 x1 0 x2 1 x3 1 c = x1 x2 x3 y1 -1 -2 2 d = u1 y1 2 Continuous-time model. 我們編制的函數(shù)ctrlts( )可將傳遞函數(shù)轉換為能

34、控標準型。該函數(shù)的調用格式為: 其中num和den分別為傳遞函數(shù)的分子和分母多項式系數(shù)的行向量,為轉換得到的能控標準型。 該函數(shù)的程序如下: function Gc=ctrlts(num,den) %將傳遞函數(shù)轉換為能控標準型 m=length(num)-1;n=length(den)-1; if m==n [R,P,K]=residue(num,den); num1=num-K*den; A(n,:)=-1*rot90(den(:,2:n+1),2); A(1:n-1,2:n)=eye(n-1); A(1:n-1,1)=zeros(n-1,1); B=[z

35、eros(n-1,1);1]; C=rot90(num1(:,2:n+1),2); D=K; else A(n,:)=-1*rot90(den(:,2:n+1),2); A(1:n-1,2:n)=eye(n-1); A(1:n-1,1)=zeros(n-1,1); B=[zeros(n-1,1);1]; C(:,1:m+1)=rot90(num,2); C(:,m+2:n)=zeros(1,n-m-1); D=0; end Gc=ss(A,B,C,D); 例1-7 將例1-6中的傳遞函數(shù)轉換為能控標準型。 在命令窗中運行下列命令 >> num=[2 10 17

36、11];den=[1 5 8 4];Gc=ctrlts(num,den) 返回 a = x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -4 -8 -5 b = u1 x1 0 x2 0 x3 1 c = x1 x2 x3 y1 3 1 0 d = u1 y1 2 Continuous-time model. 進一步,求能控標準型的對偶系統(tǒng)可得能觀測標準型。在命令窗

37、中運行下列命令 >> Ao=(Gc.a);Bo=(Gc.c);Co=(Gc.b);Do=Gc.d;Go=ss(Ao,Bo,Co,Do) 返回 a = x1 x2 x3 x1 0 0 -4 x2 1 0 -8 x3 0 1 -5 b = u1 x1 3 x2 1 x3 0 c = x1 x2 x3 y1 0 0 1 d = u1 y1 2 Continuous-time mode

38、l. 下面是介紹MATLAB提供的三個函數(shù)tfdata( ), zpkdata( ), ssdata( )。 函數(shù)tfdata( ) 可得到傳遞函數(shù)模型的分子分母多項式系數(shù)。其調用格式為 其中G為系統(tǒng)LTI模型。和den分別為分子和分母多項式的系數(shù)向量。 函數(shù)zpkdata( ) 可得到零極點增益模型的零點、極點和增益。其調用格式為 其中G為系統(tǒng)LTI模型。z和p分別為零點和極點向量,k為增益。 函數(shù)ssdata( ) 可得到狀態(tài)空間模型的系數(shù)矩陣。其調用格式為 其中G為系統(tǒng)LTI模型。A,B,C,D為系數(shù)矩陣。 3. 模型的連接 1) 串聯(lián)連接 設線性定常系統(tǒng)1和2的L

39、TI模型分別為和。在MATLAB中, 兩者的串聯(lián)連接(參教材)可由命令實現(xiàn),其中G為整個系統(tǒng)的LTI模型。多個系統(tǒng)的串聯(lián)連接可由命令實現(xiàn)。 2) 并聯(lián)連接 設線性定常系統(tǒng)1和2的LTI模型分別為和。在MATLAB中, 兩者的并聯(lián)連接(參教材)可由命令實現(xiàn),其中G為整個系統(tǒng)的LTI模型。多個系統(tǒng)的并聯(lián)連接可由命令實現(xiàn)。 3) 反饋連接 設線性定常系統(tǒng)1和2的LTI模型分別為和。在MATLAB中, 兩者的反饋連接(參教材)可由MATLAB提供的函數(shù)feedback( )實現(xiàn)。該函數(shù)的調用格式為: 其中G為整個系統(tǒng)LTI模型。如果Sign=-1或省略Sign變

40、量,則表示負反饋。如果Sign=1, 則表示正反饋。 4. 狀態(tài)空間表達式的相似變換 線性定常系統(tǒng)狀態(tài)空間表達式為,假設存在一個非奇異矩陣T將原狀態(tài)x變換為z=Tx, 則狀態(tài)z對應的狀態(tài)空間表達式為,其中,,。 MATLAB提供函數(shù)ss2ss( )可完成狀態(tài)空間模型的相似變換。該函數(shù)調用格式為 其中G為原狀態(tài)空間模型。T為變換矩陣。為經變換得到的狀態(tài)空間模型。 例1-8 考慮一個系統(tǒng),它的狀態(tài)空間表達式為 由于該系統(tǒng)的系統(tǒng)矩陣A為友矩陣,所以可

41、由其特征值構造變換矩陣。令變換矩陣T為。 在命令窗中運行下列命令 >> A=[0 1;-2 -3];B=[1 1];C=[1 0];G=ss(A,B,C,0); T=inv([1 1;-1 -2]); G1=ss2ss(G,T) 返回 a = x1 x2 x1 -1 0 x2 0 -2 b = u1 x1 3 x2 -2 c = x1 x2 y1 1 1 d = u1 y1 0 Continuous-time model.

42、 通過線性變換可將狀態(tài)空間表達式變換為約當標準型(包括對角標準型),能控標準型和能觀測標準型。 MATLAB提供的函數(shù)canon( )可將狀態(tài)空間表達式變換為對角標準型或約當標準型。該函數(shù)的調用格式為: 其中G為原狀態(tài)空間模型,而GJ為轉換得到的對角標準型或約當標準型。但該函數(shù)在系統(tǒng)含有重特征值時,效果不甚理想。 例1-9 利用函數(shù)canon( )將例1-8中狀態(tài)空間表達式變換為對角標準型。 在命令窗中運行下列命令 >> A=[0 1;-2 -3];B=[1 1];C=[1 0];G=ss(A,B,C,0); G1=canon(G,’modal’) 返回 a =

43、 x1 x2 x1 -1 0 x2 0 -2 b = u1 x1 4.243 x2 4.472 c = x1 x2 y1 0.7071 -0.4472 d = u1 y1 0 Continuous-time model. 如果SISO線性定常系統(tǒng)完全能控,則可通過非奇異線性變換將狀態(tài)空間表達式變換為能控標準型。 我們編制的函數(shù)ctrlss( ) 可實現(xiàn)這一變換。該函數(shù)的調用格式為: 其中G為原來的狀態(tài)空

44、間模型。Gc為轉換得到的能控標準型。 該函數(shù)程序如下: function Gc=ctrlss(A,B,C,D) %將狀態(tài)空間表達式變換為能控標準型 n=length(A); Uc=ctrb(A,B); U=inv(Uc); p1=U(n,:); for i=1:n T(i,:)=p1*A^(i-1); end Ac=T*A*inv(T); Bc=T*B; Cc=C*inv(T); Gc=ss(Ac,Bc,Cc,D); 例1-10 考慮一個系統(tǒng),它的狀態(tài)空間表達式為 將其轉換為能控標準型。 在命

45、令窗中運行下列命令 >> A=[0 2 -2;1 1 -2;2 -2 1];B=[2 1 1];C=[1 1 1];D=0;Gc=ctrlss(A,B,C,D) 返回 a = x1 x2 x3 x1 -4.441e-016 1 1.665e-016 x2 -8.882e-016 0 1 x3 -2 1 2 b = u1

46、 x1 1.388e-017 x2 0 x3 1 c = x1 x2 x3 y1 -20 -4 4 d = u1 y1 0 Continuous-time model. 試編將狀態(tài)空間表達式變換為能觀測標準型的函數(shù)。 實驗二 線性定常系統(tǒng)狀態(tài)方程的解 一、實驗目的 1. 掌握狀態(tài)轉移矩陣的概念。學會用MATLAB求解狀態(tài)轉移矩陣。 2. 掌握線性系統(tǒng)狀態(tài)方程解的結構。學會用MATLAB求解線性定常系統(tǒng)的狀態(tài)響應和輸出

47、響應,并繪制相應曲線。 二、實驗內容 1. 求下列系統(tǒng)矩陣A對應的狀態(tài)轉移矩陣 (a) (b) (c) (d) 實驗數(shù)據(jù) (1)a A=[0 -1;4 0];syms t; phet=expm(A*t) phet = [ cos(2*t), -1/2*sin(2*t)] [ 2*sin(2*t), cos(2*t)] (1)b phet = [ -2*t*exp(t)+exp(2*t), -2*exp(2*t)

48、+2*exp(t)+3*t*exp(t), exp(2*t)-exp(t)-t*exp(t)] [ 2*exp(2*t)-2*exp(t)-2*t*exp(t), 5*exp(t)+3*t*exp(t)-4*exp(2*t), 2*exp(2*t)-2*exp(t)-t*exp(t)] [ -2*t*exp(t)+4*exp(2*t)-4*exp(t), -8*exp(2*t)+8*exp(t)+3*t*exp(t), -3*exp(t)+4*exp(2*t)-t*exp(t)] (2)1a >> A=[0 1;-6 -5];syms s;G=inv(s*e

49、ye(size(A))-A);phet=ilaplace(G);X0=[1 0];Xt1=phet*X0; >> B=[0 1];Xt2=ilaplace(G*B*(0)) Xt1 = [ -2*exp(-3*t)+3*exp(-2*t)] [ -6*exp(-2*t)+6*exp(-3*t)] Xt2 = [ 0] [ 0] 有圖 >> y=initial(G,x0) y = 1.0000 0.9978 0.9917 0.9821 0.9695 0.9544 0.9372

50、0.9182 0.8978 0.8761 0.8535 0.8301 0.8063 0.7820 0.7576 0.7331 0.7086 0.6842 0.6600 0.6362 0.6127 0.5896 0.5670 0.5449 0.5233 0.5022 0.4817 0.4619 0.4425 0.4238 0.4057 0.3882

51、0.3713 0.3550 0.3393 0.3242 0.3096 0.2956 0.2821 0.2692 0.2567 0.2448 0.2334 0.2225 0.2120 0.2019 0.1923 0.1831 0.1743 0.1659 0.1579 0.1503 0.1429 0.1360 0.1293 0.1229 0.1169

52、0.1111 0.1056 0.1003 0.0953 0.0906 0.0860 0.0817 0.0776 0.0737 0.0700 0.0664 0.0631 0.0599 0.0568 0.0539 0.0512 0.0486 0.0461 0.0437 0.0415 0.0393 0.0373 0.0354 0.0336 0.0318

53、0.0302 0.0286 0.0271 0.0257 0.0244 0.0231 0.0219 0.0208 0.0197 0.0187 0.0177 0.0168 0.0159 0.0150 0.0143 0.0135 0.0128 0.0121 0.0115 0.0109 0.0103 0.0098 0.0093 0.0088 0.0083

54、0.0079 0.0075 2. 已知系統(tǒng) (1)令初始狀態(tài)為,輸入為零。 a) 用MATLAB求狀態(tài)方程的解析解。選擇時間向量t,繪制系統(tǒng)的狀態(tài)響應曲線。觀察并記錄這些曲線。 b) 用函數(shù)initial( )計算系統(tǒng)在初始狀態(tài)作用下狀態(tài)響應和輸出響應的數(shù)值解, 并用函數(shù)plot( ) 繪制系統(tǒng)的狀態(tài)響應曲線和輸出響應曲線。觀察并記錄這些響應曲線,然后將這一狀態(tài)響應曲線與a)中狀態(tài)響應曲線進行比較。 c) 根據(jù)b)中所得的狀態(tài)響應的數(shù)值解,用命令

55、plot(x(:,1), x(:,2))繪制系統(tǒng)的狀態(tài)軌跡。記錄系統(tǒng)狀態(tài)轉移的過程,結合a)和b)中的狀態(tài)響應曲線分析這一過程。 (2) 令初始狀態(tài)為零,輸入為。 a) 用MATLAB求狀態(tài)方程的解析解。選擇時間向量t,繪制系統(tǒng)的狀態(tài)響應曲線。觀察并記錄這些曲線。 b) 用函數(shù)initial( )計算系統(tǒng)在初始狀態(tài)作用下狀態(tài)響應和輸出響應的數(shù)值解, 并用函數(shù)plot( ) 繪制系統(tǒng)的狀態(tài)響應曲線和輸出響應曲線。觀察并記錄這些響應曲線,然后將這一狀態(tài)響應曲線與a).中狀態(tài)響應曲線進行比較。 c) 根據(jù)b)中所得的狀態(tài)響應的數(shù)值解,用命令plot(x(:,1), x(:,2))繪制系統(tǒng)的狀

56、態(tài)軌跡。記錄系統(tǒng)狀態(tài)轉移的過程,結合a)和b)中的狀態(tài)響應曲線分析這一過程。 (3)令初始狀態(tài)為,輸入為。求系統(tǒng)狀態(tài)響應和輸出響應的數(shù)值解,繪制系統(tǒng)的狀態(tài)響應曲線、輸出響應曲線和狀態(tài)軌跡。觀察和分析這些響應曲線和狀態(tài)軌跡是否是(1)和(2)中的響應曲線和狀態(tài)軌跡的疊加。 (4) 令初始狀態(tài)為零,輸入為。用函數(shù)lsim( )計算狀態(tài)響應和輸出響應的數(shù)值解,并繪制系統(tǒng)的狀態(tài)響應曲線、輸出響應曲線和狀態(tài)軌跡。 3. 已知系統(tǒng) 且初始狀態(tài)為。 (1)當輸入為時,用函數(shù)initial( )和impulse

57、( )求解系統(tǒng)的狀態(tài)響應和輸出響應的數(shù)值解,并繪制系統(tǒng)的狀態(tài)響應曲線、輸出響應曲線和狀態(tài)軌跡。 (2)當輸入為時,用函數(shù)initial( )和step( )求解系統(tǒng)的狀態(tài)響應和輸出響應的數(shù)值解,并繪制系統(tǒng)的狀態(tài)響應曲線、輸出響應曲線和狀態(tài)軌跡。 (3)當輸入為時,用函數(shù)initial( )和lsim( )求解系統(tǒng)的狀態(tài)響應和輸出響應的數(shù)值解,并繪制系統(tǒng)的狀態(tài)響應曲線、輸出響應曲線和狀態(tài)軌跡。 (4)當輸入為時,用函數(shù)initial( ) 和lsim( )求解系統(tǒng)的狀態(tài)響應和輸出響應的數(shù)值解,并繪制系統(tǒng)的狀態(tài)響應曲線、輸出響應曲線和狀態(tài)軌跡。 三、附錄 1、線性定常連續(xù)系統(tǒng)狀態(tài)轉移矩陣

58、的計算 線性定常連續(xù)系統(tǒng)的狀態(tài)轉移矩陣為。 (3-2-1) 在MATLAB中, 狀態(tài)轉移矩陣可直接用指數(shù)矩陣法和拉氏反變換法計算。 例2-1 求系統(tǒng)矩陣A對應的狀態(tài)轉移矩陣。 指數(shù)矩陣法: 在命令窗中運行下列命令 >> A=[0 1;-2 -3];syms t; phet=expm(A*t) 返回 phet = [ -exp(-2*t)+2*exp(-t), exp(-t)-exp(-2*t)] [ -2*exp(-t)+2*exp(-

59、2*t), 2*exp(-2*t)-exp(-t)] 拉氏反變換法: 在命令窗中運行下列命令 >> A=[0 1;-2 -3]; syms s;G=inv(s*eye(size(A))-A) 返回 G = [ (s+3)/(s^2+3*s+2), 1/(s^2+3*s+2)] [ -2/(s^2+3*s+2), s/(s^2+3*s+2)] 即。再對其進行拉氏逆變換,即在命令窗中輸入語句 >>phet= ilaplace(G) 返回 phet = [ -exp(-2*t)+2*exp(-t), exp(-t)-exp(-

60、2*t)] [ -2*exp(-t)+2*exp(-2*t), 2*exp(-2*t)-exp(-t)] 2. 線性定常連續(xù)系統(tǒng)的狀態(tài)方程求解 如果線性定常連續(xù)系統(tǒng)的狀態(tài)空間表達式為 且初始狀態(tài)為,那么狀態(tài)方程解的拉氏變換式為 (3-2-2) 其解為 (3-2-3) 其中零輸入響應為 或 (3-2-4) 零狀態(tài)響應為 或

61、 (3-2-5) 系統(tǒng)的輸出響應為 (3-2-6) 例2-2 已知系統(tǒng)的狀態(tài)方程為 試求初始狀態(tài)為,輸入分別為和 時狀態(tài)方程的解。 編制程序%ex22求輸入為時狀態(tài)方程的解。該程序如下: A=[0 1;-2 -3];syms s;G=inv(s*eye(size(A))-A);phet=ilaplace(G);X0=[1 -1];Xt1=phet*X0; >> B=[0 1];Xt2=ilaplace(G*B*(1/s)) 在命令窗中運行該程序,即 >> ex22

62、 返回 xt1 = [ exp(-t)] [ -exp(-t)] xt2 = [ 1/2-exp(-t)+1/2*exp(-2*t)] [ exp(-t)-exp(-2*t)] 其中xt1為零輸入響應,xt2為零狀態(tài)響應。 將該程序中用代替可求出輸入為單位斜坡函數(shù)時狀態(tài)方程的解 xt1 = [ exp(-t)] [ -exp(-t)] xt2 = [ 1/2*t-3/4-1/4*exp(-2*t)+exp(-t)] [ 1/2-exp(-t)+1/2*exp(-2*t)] 上述得到的是狀態(tài)方程的解析解,MATLAB提供的函數(shù)ste

63、p( ) 、impulse( )、lsim( ) 和initial( )可以求得系統(tǒng)響應的數(shù)值解。 函數(shù)step( ) 可直接求取線性連續(xù)系統(tǒng)的單位階躍響應。該函數(shù)的調用格式為: 其中G為給定系統(tǒng)LTI模型,t為時間向量。通常取t=0:dt:t-end,其中t-end為終值時間,而dt為時間步長。y為系統(tǒng)輸出。 這時時間向量t自動生成。 或 如果G為狀態(tài)空間模型,則x為系統(tǒng)狀態(tài)向量,否則x將返回空矩陣。 或 此時不返回任何變量,而自動地繪制單位階躍響應輸出曲線。 函數(shù)impulse( ) 可直接求取線性系統(tǒng)的單位脈沖響應。該函數(shù)的調用格式與函數(shù)

64、step( )的調用格式相似。 函數(shù)lsim( ) 可直接求取線性系統(tǒng)在任意輸入信號作用下的響應。該函數(shù)的調用格式為: 其中u為與時間向量t對應的輸入向量。當然還可以和step( )函數(shù)一樣有其它的調用格式。 函數(shù)initial( ) 可求解系統(tǒng)的零輸入響應。該函數(shù)的調用格式為 或 其中G為狀態(tài)空間模型,x0為初始狀態(tài)。 例2-3 已知系統(tǒng)為 初始狀態(tài)為,試求u(t)為單位階躍函數(shù)時系統(tǒng)狀態(tài)響應和輸出響應,并繪制狀態(tài)響應曲線和輸出響應曲線。 在命令窗中運行下列命令,建立狀態(tài)空間

65、模型,計算系統(tǒng)在初始狀態(tài)作用下的狀態(tài)響應和輸出響應,并繪制相應的響應曲線。 >> A=[0 1;-2 -3]; B=[0;1]; C=[1 1]; D=0; G=ss(A,B,C,D); t=0:0.5:10; x0=[1;-1]; [yo,t,xo]=initial(G,x0,t); plot(t,xo,:,t,yo,-) 返回圖1。 圖1狀態(tài)響應 圖2 輸出響應 在命令窗中繼續(xù)運行下列命令,計算系統(tǒng)在輸入作用下的狀態(tài)響應和輸出響應,并繪制相應的響應曲線。 >>fig

66、ure(pos,[50 50 200 150],color,w); u=ones(size(t)); [yu,t,xu]=lsim(G,u,t); plot(t,xu,:,t,yu,-) 返回圖2。 再繼續(xù)運行下列命令求系統(tǒng)總的狀態(tài)響應和輸出響應,并繪制相應的響應曲線。 >>y=yo+yu; x=xo+xu; plot(t,x,:,t,y,-) 返回圖3。 圖3 圖4 例2-4 已知系統(tǒng) 求出系統(tǒng)在初始狀態(tài)為零,且時系統(tǒng)的狀態(tài)響應和輸出響應。 在命令窗中運行下列命令 >>A=[0 1;-5 -6];B=[2;0];C=[1 2];D=0;G=ss(A,B,C,D);t=0:0.5:20;u=exp(-t); [y,t,x]=lsim(G,u,t);plot(t,x,:k,t,y,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!