《现代控制理论实验报告(共33页).doc》由会员分享,可在线阅读,更多相关《现代控制理论实验报告(共33页).doc(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上现代控制理论实验报告学院:中北大学信息与通信工程学院学号: 姓名: 实验一 线性定常系统模型一 实验目的1. 掌握线性定常系统的状态空间表达式。学会在MATLAB中建立状态空间模型的方法。2. 掌握传递函数与状态空间表达式之间相互转换的方法。学会用MATLAB实现不同模型之间的相互转换。3. 熟悉系统的连接。学会用MATLAB确定整个系统的状态空间表达式和传递函数。4. 掌握状态空间表达式的相似变换。掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。学会用MATLAB进行线性变换。二 实验内容1. 已知系统的传递函数(a) (b) (1
2、)建立系统的TF或ZPK模型。(2)将给定传递函数用函数ss( )转换为状态空间表达式。再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。2. 已知系统的状态空间表达式(a) (b) (1)建立给定系统的状态空间模型。用函数eig( ) 求出系统特征值。用函数tf( ) 和zpk( )将这些状态空间表达式转换为传递函数,记录得到的传递函数和它的零极点。比较系统的特征值和极点是否一致,为什么?(2)用函数canon( )将给定状态空间表达式转换为对角标准型。用函数eig( )求出系统特征值。比较这些特征值和(1)中的特征值是否一致,为什么? 再用函数tf( )和zp
3、k( )将对角标准型或约当标准型转换为传递函数。比较这些传递函数和(1)中的传递函数是否一致,为什么?三 实验结果1 (A)1) num=4;den=1 5 7 3 0;G=tf (num, den) Transfer function: 4-s4 + 5 s3 + 7 s2 + 3 s2) %ex14 num=4;den=1 5 7 3 0;Gtf=tf(num,den); Gss=ss(Gtf)Gtf1=tf(Gss) a = x1 x2 x3 x4 x1 -5 -0.875 -0.04688 0 x2 8 0 0 0 x3 0 8 0 0 x4 0 0 8 0 b = u1 x1 0.0
4、625 x2 0 x3 0 x4 0 c = x1 x2 x3 x4 y1 0 0 0 0.125 d = u1 y1 0 Continuous-time model. Transfer function: 4-s4 + 5 s3 + 7 s2 + 3 s(B)1) z=-2 -4 ;p=-1 -3;k=1;G=zpk(z,p,k) Zero/pole/gain:(s+2) (s+4)-(s+1) (s+3) 2) %ex14z=-2 -4;p=-1 -3;k=1;Gzpk=zpk(z,p,k)Gss=ss(Gzpk)Gtf1=tf(Gss) Zero/pole/gain:(s+2) (s+4
5、)-(s+1) (s+3) 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. Transfer function:s2 + 6 s + 8-s2 + 4 s + 3 2(A)1) A=0 1;-5 -6;B=0 1;C=1 1;G=ss(A,B,C,0)Geig=eig(G)Gzpk=zpk(G) Gtf=tf(G) a = x1 x2 x1 0 1 x2 -5 -6 b = u1 x1 0 x2 1 c = x1 x2 y1 1 1 d = u1 y1
6、0 Continuous-time model.Geig = -1 -5 Zero/pole/gain: (s+1)-(s+1) (s+5) Transfer function: s + 1-s2 + 6 s + 52) A=0 1;-5 -6;B=0 1;C=1 1;G=ss(A,B,C,0); G1=canon(G,modal)Geig=eig(G1)Gzpk=zpk(G1) Gtf=tf(G1) a = 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-
7、time model.Geig = -5 -1 Zero/pole/gain: 1-(s+5) Transfer function: 1-s + 5(B)1) A=0 1 0;3 0 2;-12 -7 -6;B=2;1;7;C=1 1 1;G=ss(A,B,C,0)Geig=eig(G)Gzpk=zpk(G) Gtf=tf(G) a = x1 x2 x3 x1 0 1 0 x2 3 0 2 x3 -12 -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.Geig = -1.00
8、00 -2.0000 -3.0000 Zero/pole/gain:10 (s-1.615) (s+2.415)- (s+1) (s+2) (s+3) Transfer function: 10 s2 + 8 s - 39-s3 + 6 s2 + 11 s + 62) A=0 1 0;3 0 2;-12 -7 -6;B=2;1;7;C=1 1 1;G=ss(A,B,C,0); G1=canon(G,modal)Geig=eig(G1)Gzpk=zpk(G1) Gtf=tf(G1) a = x1 x2 x3 x1 -1 0 0 x2 0 -2 0 x3 0 0 -3 b = u1 x1 -32.
9、04 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 Zero/pole/gain:10 (s-1.615) (s+2.415)- (s+3) (s+2) (s+1) Transfer function: 10 s2 + 8 s - 39-s3 + 6 s2 + 11 s + 6实验二 线性定常系统状态方程的解一、实验目的1. 掌握状态转移矩阵的概念。学会用MATLAB求解状态转移矩阵。2. 掌握线性系统
10、状态方程解的结构。学会用MATLAB求解线性定常系统的状态响应和输出响应,并绘制相应曲线。二、实验内容1. 求下列系统矩阵A对应的状态转移矩阵(a) (b) (c) 2. 已知系统 (1)令初始状态为,输入为零。a) 用MATLAB求状态方程的解析解。选择时间向量t,绘制系统的状态响应曲线。观察并记录这些曲线。b) 用函数initial( )计算系统在初始状态作用下状态响应和输出响应的数值解, 并用函数plot( ) 绘制系统的状态响应曲线和输出响应曲线。观察并记录这些响应曲线,然后将这一状态响应曲线与a)中状态响应曲线进行比较。 (2) 令初始状态为零,输入为。a) 用MATLAB求状态方程
11、的解析解。选择时间向量t,绘制系统的状态响应曲线。观察并记录这些曲线。b) 用函数initial( )计算系统在初始状态作用下状态响应和输出响应的数值解, 并用函数plot( ) 绘制系统的状态响应曲线和输出响应曲线。观察并记录这些响应曲线,然后将这一状态响应曲线与a).中状态响应曲线进行比较。(3)令初始状态为,输入为。求系统状态响应和输出响应的数值解,绘制系统的状态响应曲线、输出响应曲线和状态轨迹。观察和分析这些响应曲线和状态轨迹是否是(1)和(2)中的响应曲线和状态轨迹的叠加。三、实验结果1 (A) A=0 -1;4 0;syms t; phet=expm(A*t) phet = cos
12、(2*t), -1/2*sin(2*t) 2*sin(2*t), cos(2*t)(B)A=0 1 0;0 0 1;2 -5 4;syms t; phet=expm(A*t) phet = -2*t*exp(t)+exp(2*t), -2*exp(2*t)+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),
13、 -8*exp(2*t)+8*exp(t)+3*t*exp(t), -3*exp(t)+4*exp(2*t)-t*exp(t)(C)syms c;A=c 0 0;0 c 0;0 0 c;syms t; phet=expm(A*t) phet = exp(t*c), 0, 0 0, exp(t*c), 0 0, 0, exp(t*c)2 (1)(A) A=0 1;-6 -5;syms s;G=inv(s*eye(size(A)-A);phet=ilaplace(G);X0=1 0;Xt1=phet*X0Xt1 = -2*exp(-3*t)+3*exp(-2*t) -6*exp(-2*t)+6*e
14、xp(-3*t) A=0 1;-6 -5;syms s;G=inv(s*eye(size(A)-A);phet=ilaplace(G);X0=1 0;Xt1=phet*X0;B=0 1;Xt2=ilaplace(G*B*0) Xt2 = 0 0图a A=0 1;-6 -5; B=0;1; C=1 0; D=0; G=ss(A,B,C,D); t=0:0.5:10; x0=1;0;yo,t,xo=initial(G,x0); plot(t,xo,:,t,yo,-)(B)图1b figure(pos,50 50 200 150,color,w);yu,t,xu=initial(G,x0);plot
15、(t,xu,:,t,yu,-)yu = 1.0000 0.9978 0.9917 0.9821 0.9695 0.9544 0.9372 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 0.3713 0.3550 0.3393 0.3242 0.3096 0.2956 0.2821 0.2692
16、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 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 0.0302
17、 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 0.0079 0.0075t = 0 0.0276 0.0552 0.0828 0.1104 0.1380 0.1656 0.1933 0.2209 0.2485 0.2761 0.3037 0.3313 0.3589 0.3865 0.4141 0.4417
18、0.4693 0.4969 0.5245 0.5521 0.5798 0.6074 0.6350 0.6626 0.6902 0.7178 0.7454 0.7730 0.8006 0.8282 0.8558 0.8834 0.9110 0.9386 0.9663 0.9939 1.0215 1.0491 1.0767 1.1043 1.1319 1.1595 1.1871 1.2147 1.2423 1.2699 1.2975 1.3252 1.3528 1.3804 1.4080 1.4356 1.4632 1.4908 1.5184 1.5460 1.5736 1.6012 1.6288
19、 1.6564 1.6840 1.7117 1.7393 1.7669 1.7945 1.8221 1.8497 1.8773 1.9049 1.9325 1.9601 1.9877 2.0153 2.0429 2.0705 2.0982 2.1258 2.1534 2.1810 2.2086 2.2362 2.2638 2.2914 2.3190 2.3466 2.3742 2.4018 2.4294 2.4571 2.4847 2.5123 2.5399 2.5675 2.5951 2.6227 2.6503 2.6779 2.7055 2.7331 2.7607 2.7883 2.815
20、9 2.8436 2.8712 2.8988 2.9264 2.9540 2.9816xu = 1.0000 0 0.9978 -0.1546 0.9917 -0.2886 0.9821 -0.4041 0.9695 -0.5030 0.9544 -0.5870 0.9372 -0.6576 0.9182 -0.7164 0.8978 -0.7645 0.8761 -0.8031 0.8535 -0.8333 0.8301 -0.8561 0.8063 -0.8723 0.7820 -0.8826 0.7576 -0.8879 0.7331 -0.8887 0.7086 -0.8856 0.6
21、842 -0.8791 0.6600 -0.8697 0.6362 -0.8578 0.6127 -0.8438 0.5896 -0.8279 0.5670 -0.8106 0.5449 -0.7921 0.5233 -0.7725 0.5022 -0.7522 0.4817 -0.7313 0.4619 -0.7100 0.4425 -0.6884 0.4238 -0.6666 0.4057 -0.6448 0.3882 -0.6230 0.3713 -0.6014 0.3550 -0.5800 0.3393 -0.5589 0.3242 -0.5382 0.3096 -0.5178 0.2
22、956 -0.4978 0.2821 -0.4783 0.2692 -0.4592 0.2567 -0.4407 0.2448 -0.4226 0.2334 -0.4051 0.2225 -0.3881 0.2120 -0.3717 0.2019 -0.3557 0.1923 -0.3403 0.1831 -0.3255 0.1743 -0.3112 0.1659 -0.2973 0.1579 -0.2840 0.1503 -0.2712 0.1429 -0.2589 0.1360 -0.2471 0.1293 -0.2358 0.1229 -0.2249 0.1169 -0.2144 0.1
23、111 -0.2044 0.1056 -0.1948 0.1003 -0.1856 0.0953 -0.1768 0.0906 -0.1684 0.0860 -0.1603 0.0817 -0.1526 0.0776 -0.1452 0.0737 -0.1382 0.0700 -0.1315 0.0664 -0.1251 0.0631 -0.1190 0.0599 -0.1131 0.0568 -0.1076 0.0539 -0.1023 0.0512 -0.0972 0.0486 -0.0924 0.0461 -0.0878 0.0437 -0.0834 0.0415 -0.0792 0.0
24、393 -0.0753 0.0373 -0.0715 0.0354 -0.0679 0.0336 -0.0645 0.0318 -0.0612 0.0302 -0.0581 0.0286 -0.0552 0.0271 -0.0523 0.0257 -0.0497 0.0244 -0.0472 0.0231 -0.0447 0.0219 -0.0425 0.0208 -0.0403 0.0197 -0.0382 0.0187 -0.0362 0.0177 -0.0344 0.0168 -0.0326 0.0159 -0.0309 0.0150 -0.0293 0.0143 -0.0278 0.0
25、135 -0.0264 0.0128 -0.0250 0.0121 -0.0237 0.0115 -0.0225 0.0109 -0.0213 0.0103 -0.0202 0.0098 -0.0192 0.0093 -0.0182 0.0088 -0.0172 0.0083 -0.0163 0.0079 -0.0155 0.0075 -0.0146A=0 1;-6 -5; B=0;1; C=1 0; D=0; G=ss(A,B,C,D); t=0:0.5:10; x0=1;0;figure(pos,50 50 200 150,color,w);yo,t,xo=initial(G,x0); y
26、u,t,xu=initial(G,x0);y=yo+yu; x=xo+xu; plot(t,x,:,t,y,-)图1 (2)(A) A=0 1;-6 -5;syms s;G=inv(s*eye(size(A)-A);phet=ilaplace(G);X0=1 0;Xt1=phet*X0Xt1 = -2*exp(-3*t)+3*exp(-2*t) -6*exp(-2*t)+6*exp(-3*t) A=0 1;-6 -5;syms s;G=inv(s*eye(size(A)-A);phet=ilaplace(G);X0=1 0;Xt1=phet*X0;B=0 1;Xt2=ilaplace(G*B*
27、(1/s)Xt2 = 1/6-1/2*exp(-2*t)+1/3*exp(-3*t) exp(-2*t)-exp(-3*t)图a A=0 1;-6 -5; B=0;1; C=1 0; D=0; G=ss(A,B,C,D); t=0:0.5:10; x0=1;0;yo,t,xo=initial(G,x0); plot(t,xo,:,t,yo,-)(B) figure(pos,50 50 200 150,color,w);yu,t,xu=step(G,t)plot(t,xu,:,t,yu,-)图2Byu = 0 0.0571 0.1156 0.1455 0.1583 0.1635 0.1655 0
28、.1662 0.1665 0.1666 0.1666 0.1667 0.1667 0.1667 0.1667 0.1667 0.1667 0.1667 0.1667 0.1667 0.1667t = 0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000 4.5000 5.0000 5.5000 6.0000 6.5000 7.0000 7.5000 8.0000 8.5000 9.0000 9.5000 10.0000xu = 0 0 0.0571 0.1447 0.1156 0.0855 0.1455 0.0387 0.1583
29、0.0158 0.1635 0.0062 0.1655 0.0024 0.1662 0.0009 0.1665 0.0003 0.1666 0.0001 0.1666 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000 0.1667 0.0000A=0 1;-6 -5; B=0;1; C=1 0; D=0; G=ss(A,B,C,D); t=0:0.5:10; x0=1;0;figu
30、re(pos,50 50 200 150,color,w);yo,t,xo=initial(G,x0); yu,t,xu=step(G,t);y=yo+yu; x=xo+xu; plot(t,x,:,t,y,-)图2(3) A=0 1;-6 -5; B=0;1; C=1 0; D=0; G=ss(A,B,C,D); t=0:0.5:10; x0=1;-1;figure(pos,50 50 200 150,color,w); yu,t,xu=step(G,t);plot(t,xu,:,t,yu,-)图3a A=0 1;-6 -5; B=0;1; C=1 0; D=0; G=ss(A,B,C,D)
31、; t=0:0.5:10; x0=1;-1;figure(pos,50 50 200 150,color,w);yo,t,xo=initial(G,x0); yu,t,xu=step(G,t);y=yo+yu; x=xo+xu; plot(t,x,:,t,y,-)图3实验三 线性定常系统的能控性和能观测性一、实验目的1. 掌握能控性和能观测性的概念。学会用MATLAB判断能控性和能观测性。2. 掌握系统的结构分解。学会用MATLAB进行结构分解。3. 掌握最小实现的概念。学会用MATLAB求最小实现。二、实验内容1. 已知系统 (1)判断系统状态的能控性和能观测性,以及系统输出的能控性。说明状
32、态能 控性和输出能控性之间有无联系。(3) 将给定的状态空间表达式变换为对角标准型,判断系统的能控性和能观测性,与(1)的结果是否一致?为何?3. 已知系统 用函数minreal( )求最小实现。判断所得系统的能控性和能观测性,验证其是否最小实现。三、实验结果1 (1) A=-3 -4;-1 0; B=4;1; Uc=ctrb(A,B); rank(Uc) ans = 1因为rank(Uc)=1所以状态不完全能控 A=-3 -4;-1 0; B=4;1;C=-1 -1;D=0;Uc=ctrb(A,B);Uy=C*Uc D;rank(Uy)ans = 1因为rank(Uy)=1=m,所以输出能控 A=-3 -4;-1 0; C=-1 -1; Vo=obsv(A,C); rank(Vo)ans = 1因为rank(Vo)=1,所以状态不完全能观测(3)A=-3 -4;-1 0;B=4;1;C=-1 -1;D=0;Gtf=ss(A,B,C,D) a = x1 x2 x1 -3 -4 x2 -1 0 b = u1 x1 4 x2 1 c = x1 x2 y1 -1 -1 d = u1 y1 0 Continuous-time model. G=tf(Gtf) Transfer function: -5 s + 5-s2 + 3 s - 4G1=canon(Gtf