当前位置:文档之家› 线性系统理论Matlab实践仿真报告

线性系统理论Matlab实践仿真报告

线性系统理论Matlab实验报告1、本题目是在已知状态空间描述的情况下要求设计一个状态反馈控制器,从而使得系统具有实数特征根,并要求要有一个根的模值要大于5,而特征根是正数是系统不稳定,这样的设计是无意义的,故而不妨设采用状态反馈后的两个期望特征根为-7,-9,这样满足题目中所需的要求。

(1)要对系统进行状态反馈的设计首先要判断其是否能控,即求出该系统的能控性判别矩阵,然后判断其秩,从而得出其是否可控;判断能控程序设计如下:>> A=[-0.8 0.02;-0.02 0];B=[0.05 1;0.001 0];Qc=ctrb(A,B)Qc =0.0500 1.0000 -0.0400 -0.80000.0010 0 -0.0010 -0.0200Rc=rank(Qc)Rc =2Qc =0.0500 1.0000 -0.0400 -0.80000.0010 0 -0.0010 -0.0200得出结果能控型判别矩阵的秩为2,故而该系统是完全可控的,故可以对其进行状态反馈设计。

(2)求取状态反馈器中的K,设的期望特征根为-7,-9;其设计程序如下:>> A=[-0.8 0.02;-0.02 0];B=[0.05 1;0.001 0];P=[-7 -9];k=place(A,B,P)k =1.0e+003 *-0.0200 9.00000.0072 -0.4500程序中所求出的k即为所求状态反馈控制器的状态反馈矩阵,即由该状态反馈矩阵所构成的状态反馈控制器能够满足题目要求。

2、(a)要求求该系统的能控型矩阵,并验证该系统是不能控的。

设计程序:>> A=[0 1 0 0 0;-0.1 -0.5 0 0 0;0.5 0 0 0 0;0 0 10 0 0;0.5 1 0 0 0];>> B=[0;1;0;0;0];>> C=[0 0 0 1 0];>> Qc=ctrb(A,B)Qc =0 1.0000 -0.5000 0.1500 -0.02501.0000 -0.5000 0.1500 -0.0250 -0.00250 0 0.5000 -0.2500 0.07500 0 0 5.0000 -2.50000 1.0000 0 -0.1000 0.0500>> Rc=rank(Qc)Rc =4从程序运行的结果可得,系统能控型判别矩阵的秩为4,而系统为5阶系统,故而就验证了该系统为不可控的。

而该系统的能控型矩阵就为程序中的Qc矩阵。

(b)要求求出其传递函数,并建立新的状态变量模型。

设计程序:>> A=[0 1 0 0 0;-0.1 -0.5 0 0 0;0.5 0 0 0 0;0 0 10 0 0;0.5 1 0 0 0];B=[0;1;0;0;0];C=[0 0 0 1 0];I=eye(5);syms s;E=s*I-A;F=collect(inv(E));G=C*F*BG =50/(10*s^4 + 5*s^3 + s^2)>> num=[50];>> den=[10 5 1 0 0];>> Gf=tf(num,den)Transfer function:50--------------------10 s^4 + 5 s^3 + s^2>> sys=ss(Gf)a =x1 x2 x3 x4x1 -0.5 -0.4 0 0x2 0.25 0 0 0x3 0 0.125 0 0x4 0 0 0.25 0b =u1x1 32x2 0x3 0x4 0c =x1 x2 x3 x4y1 0 0 0 20d =u1y1 0Continuous-time model.结果分析:可以看到所求得的新系统为4阶系统,其原因就在于原系统为不可控的,并且其能控型判别矩阵的秩为4,从而其传递函数表现的也只是可控部分的4个变量,从而导致了新系统为4阶系统。

(c)要求证明其上所求的新系统为可控的,只需求其新系统能控型判别矩阵的秩,看是否为4即可。

设计程序:>> A1=[ -0.5 -0.4 0 0;0.25 0 0 0;0 0.125 0 0;0 0 0.25 0];>> B1=[32;0;0;0];>> C1=[0 0 0 20];>> Qc1=ctrb(A1,B1)Qc1 =32.0000 -16.0000 4.8000 -0.80000 8.0000 -4.0000 1.20000 0 1.0000 -0.50000 0 0 0.2500>> Rc1=rank(Qc1)Rc1 =4其程序运行结果为能控型判别矩阵的秩为4,从而说明该新系统是完全能控的。

其实在求得其能控矩阵时就可以判断出其为能控的,因为该矩阵为上三角矩阵,即为满秩矩阵,即秩为4,也即说明该新系统为完全可控。

(d)要求判断系统的稳定性,可以采用李雅普洛夫特征值法进行判定;设计程序:A=[0 1 0 0 0;-0.1 -0.5 0 0 0;0.5 0 0 0 0;0 0 10 0 0;0.5 1 0 0 0];>> d=eig(A)d =-0.2500 + 0.1936i-0.2500 - 0.1936i从求得的结果中可以看出其特征值的根的实部都不是正数,从而就说明了该系统是李雅普洛夫意义下稳定的。

(c)讨论状态变量模型的能控性元复杂性的关系。

很直观地讲,一个系统要能控,必须要其能控型判别矩阵的秩等于系统的阶数也即就是状态变量的数目,但是反过来,系统越复杂,状态变量的个数越多,能控型判别矩阵要求满足的秩也就越大,也即意味着越难达到要求,从而其能控性也就越不容易满足。

从而可以得出结论,即越复杂的系统越不容易达到完全可控。

3、(a)求系统矩阵A的特征值,并判断其稳定性,即就是利用李雅普洛夫特征值判决,进行系统稳定性的判定。

设计程序:>> A=[-0.0366 0.0271 0.0188 -0.4555;0.0482 -1.0100 0.0024 -4.0208;0.1002 0.3681 -0.707 1.42;0 0 1 0];>> d=eig(A)d =0.2758 + 0.2576i0.2758 - 0.2576i-0.2325-2.0727很显然系统矩阵特征值有两个根的实部为正数,从而说明该系统是不稳定的。

(b)用poly函数来求取系统矩阵A 的特征值设计程序:A=[-0.0366 0.0271 0.0188 -0.4555;0.0482 -1.0100 0.0024 -4.0208;0.1002 0.3681 -0.707 1.42;0 0 1 0];>> poly(A)ans =1.0000 1.7536 -0.6472 0.0625 0.0686可以看出用poly函数求出的特征值与eig函数求出的特征值不同,但是都可以的出该系统是不稳定的。

(c)分别判断当u1与u2发挥作用时,系统的能控性。

求得u1与u2发挥作用时不同的能控型判别矩阵,从而可判断出其能控性。

设计程序:>> A=[-0.0366 0.0271 0.0188 -0.4555;0.0482 -1.0100 0.0024 -4.0208;0.1002 0.3681 -0.707 1.42;0 0 1 0];>> B1=[0.4422;3.5446;-5.52;0];>> B2=[0.1761;-7.5922;4.49;0];>> Qc1=ctrb(A,B1)Qc1 =0.4422 -0.0239 2.5172 -2.02673.5446 -3.5720 25.8140 -47.0978-5.5200 5.2517 -12.8686 26.30990 -5.5200 5.2517 -12.8686>> Rc1=rank(Qc1)Rc1 =4>> Qc2=ctrb(A,B2)Qc2 =0.1761 -0.1278 -1.9441 2.3338-7.5922 7.6874 -25.8381 49.96464.4900 -5.9515 13.4004 -27.63100 4.4900 -5.9515 13.4004>> Rc2=rank(Qc2)Rc2 =4求得当u1与u2发挥作用时所对应的能控型判别矩阵的秩都为4,即其秩等于系统的阶数,从而说明在这两种情况下,系统均为能控。

4、(a)卫星定点位置是否稳定?即判断该系统的稳定性,求取系统矩阵A的特征值,然后利用李雅普洛夫特征值判据进行稳定性判断。

设计程序:A=[0 0 0 1 0 0;0 0 0 0 1 0;0 0 0 0 0 1;7.3809 0 0 0 2 0;0 -2.1904 0 -2 0 0;0 0 -3.1904 0 0 0];>> d=eig(A)d =-2.15872.15870.0000 + 1.8626i0.0000 - 1.8626i0 + 1.7862i0 - 1.7862i可以看到系统矩阵A的特征值中有一个为正数,从而可得出该系统为不稳定的。

(b)如果只有u1发挥作用,卫星是否能控?求取当u1发挥作用时的能控型判别矩阵,并求取其秩,从而判别其能控性。

设计程序:>> A=[0 0 0 1 0 0;0 0 0 0 1 0;0 0 0 0 0 1;7.3809 0 0 0 2 0;0 -2.1904 0 -2 0 0;0 0 -3.1904 0 0 0]; >> B1=[0;0;0;1;0;0];>> Qc1=ctrb(A,B1)Qc1 =0 1.0000 0 3.3809 0 20.19210 0 -2.0000 0 -2.3810 00 0 0 0 0 01.0000 0 3.3809 0 20.1921 00 -2.0000 0 -2.3810 0 -35.16880 0 0 0 0 0>> Rc1=rank(Qc1)Rc1 =4当u1发挥作用时其能控型判别矩阵的秩为4,不为6,从而此情况下系统是不能控的。

(c)如果只有u2发挥作用,卫星是否能控?求取当u2发挥作用时的能控型判别矩阵,并求取其秩,从而判别其能控性。

设计程序:A=[0 0 0 1 0 0;0 0 0 0 1 0;0 0 0 0 0 1;7.3809 0 0 0 2 0;0 -2.1904 0 -2 0 0;0 0 -3.1904 0 0 0]; B2=[0;0;0;0;1;0];>> Qc2=ctrb(A,B2)Qc2 =0 0 2.0000 0 2.3810 00 1.0000 0 -6.1904 0 8.79750 0 0 0 0 00 2.0000 0 2.3810 0 35.16881.0000 0 -6.1904 0 8.7975 00 0 0 0 0 0>> Rc2=rank(Qc2)Rc2 =4当u2发挥作用时其能控型判别矩阵的秩为4,不为6,从而此情况下系统是不能控的。

相关主题