《控制系统仿真与CAD实验报告.doc》由会员分享,可在线阅读,更多相关《控制系统仿真与CAD实验报告.doc(33页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、!-控制系统仿真与CAD实验课程报告 一、实验教学目标与基本要求上机实验是本课程重要的实践教学环节。实验的目的不仅仅是验证理论知识,更重要的是通过上机加强学生的实验手段与实践技能,掌握应用MATLAB/Simulink 求解控制问题的方法,培养学生分析问题、解决问题、应用知识的能力和创新精神,全面提高学生的综合素质。通过对MATLAB/Simulink进行求解,基本掌握常见控制问题的求解方法与命令调用,更深入地认识和了解MATLAB语言的强大的计算功能与其在控制领域的应用优势。上机实验最终以书面报告的形式提交,作为期末成绩的考核内容。二、题目及解答第一部分:MATLAB 必备基础知识、控制系统
2、模型与转换、线性控制系统的计算机辅助分析1. f=inline(-x(2)-x(3);x(1)+a*x(2);b+(x(1)-c)*x(3),t,x,flag,a,b,c);t,x=ode45(f,0,100,0;0;0,0.2,0.2,5.7);plot3(x(:,1),x(:,2),x(:,3),grid,figure,plot(x(:,1),x(:,2),grid2.y=(x)x(1)2-2*x(1)+x(2);ff=optimset;ff.LargeScale=off;ff.TolFun=1e-30;ff.TolX=1e-15;ff.TolCon=1e-20;x0=1;1;1;xm=0
3、;0;0;xM=;A=;B=;Aeq=;Beq=;x,f,c,d=fmincon(y,x0,A,B,Aeq,Beq,xm,xM,wzhfc1,ff)Warning: Options LargeScale = off and Algorithm =trust-region-reflective conflict.Ignoring Algorithm and running active-set algorithm. To runtrust-region-reflective, setLargeScale = on. To run active-set without this warning,
4、useAlgorithm = active-set. In fmincon at 456 Local minimum possible. Constraints satisfied.fmincon stopped because the size of the current search direction is less thantwice the selected value of the step size tolerance and constraints are satisfied to within the selected value of the constraint tol
5、erance.Active inequalities (to within options.TolCon = 1e-20): lower upper ineqlin ineqnonlin 2 x = 1.0000 0 1.0000f = -1.0000c = 4d = iterations: 5funcCount: 20lssteplength: 1stepsize: 3.9638e-26algorithm: medium-scale: SQP, Quasi-Newton, line-searchfirstorderopt: 7.4506e-09constrviolation: 0messag
6、e: 1x766 char3.(a) s=tf(s);G=(s3+4*s+2)/(s3*(s2+2)*(s2+1)3+2*s+5)G = s3 + 4 s + 2 - s11 + 5 s9 + 9 s7 + 2 s6 + 12 s5 + 4 s4 + 12 s3 Continuous-time transfer function.(b) z=tf(z,0.1);H=(z2+0.568)/(z-1)*(z2-0.2*z+0.99)H = z2 + 0.568 - z3 - 1.2 z2 + 1.19 z - 0.99Sample time: 0.1 secondsDiscrete-time tr
7、ansfer function.4. A=0 1 0;0 0 1;-15 -4 -13;B=0 0 2;C=1 0 0;D=0;G=ss(A,B,C,D),Gs=tf(G),Gz=zpk(G)G = a = x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -15 -4 -13 b = u1 x1 0 x2 0 x3 2 c = x1 x2 x3 y1 1 0 0 d = u1 y1 0Continuous-time state-space model.Gs = 2 - s3 + 13 s2 + 4 s + 15 Continuous-time transfer function.G
8、z = 2 - (s+12.78) (s2 + 0.2212s + 1.174) Continuous-time zero/pole/gain model.5.设采样周期为0.01s z=tf(z,0.01);H=(z+2)/(z2+z+0.16)H = z + 2 - z2 + z + 0.16 Sample time: 0.01 secondsDiscrete-time transfer function.6. syms J Kp Ki s;G=(s+1)/(J*s2+2*s+5);Gc=(Kp*s+Ki)/s;GG=feedback(G*Gc,1) GG = (Ki + Kp*s)*(s
9、 + 1)/(J*s3 + (Kp + 2)*s2 + (Ki + Kp + 5)*s + Ki)7.(a)s=tf(s);G=(211.87*s+317.64)/(s+20)*(s+94.34)*(s+0.1684);Gc=(169.6*s+400)/(s*(s+4);H=1/(0.01*s+1);GG=feedback(G*Gc,H),Gd=ss(GG),Gz=zpk(GG)GG = 359.3 s3 + 3.732e04 s2 + 1.399e05 s + 127056 - 0.01 s6 + 2.185 s5 + 142.1 s4 + 2444 s3 + 4.389e04 s2 + 1
10、.399e05 s + 127056Continuous-time transfer function.Gd = a = x1 x2 x3 x4 x5 x6 x1 -218.5 -111.1 -29.83 -16.74 -6.671 -3.029 x2 128 0 0 0 0 0 x3 0 64 0 0 0 0 x4 0 0 32 0 0 0 x5 0 0 0 8 0 0 x6 0 0 0 0 2 0 b = u1 x1 4 x2 0 x3 0 x4 0 x5 0 x6 0 c = x1 x2 x3 x4 x5 x6 y1 0 0 1.097 3.559 1.668 0.7573 d = u1
11、 y1 0Continuous-time state-space model.Gz = 35933.152 (s+100) (s+2.358) (s+1.499) - (s2 + 3.667s + 3.501) (s2 + 11.73s + 339.1) (s2 + 203.1s + 1.07e04)Continuous-time zero/pole/gain model.(b)设采样周期为0.1sz=tf(z,0.1);G=(35786.7*z2+108444*z3)/(1+4*z)*(1+20*z)*(1+74.04*z);Gc=z/(1-z);H=z/(0.5-z);GG=feedbac
12、k(G*Gc,H),Gd=ss(GG),Gz=zpk(GG)GG = -108444 z5 + 1.844e04 z4 + 1.789e04 z3 - 1.144e05 z5 + 2.876e04 z4 + 274.2 z3 + 782.4 z2 + 47.52 z + 0.5 Sample time: 0.1 secondsDiscrete-time transfer function.Gd = a = x1 x2 x3 x4 x5 x1 -0.2515 -0.00959 -0.1095 -0.05318 -0.01791 x2 0.25 0 0 0 0 x3 0 0.25 0 0 0 x4
13、 0 0 0.125 0 0 x5 0 0 0 0.03125 0 b = u1 x1 1 x2 0 x3 0 x4 0 x5 0 c = x1 x2 x3 x4 x5 y1 0.3996 0.6349 0.1038 0.05043 0.01698 d = u1 y1 -0.9482 Sample time: 0.1 secondsDiscrete-time state-space model.Gz = -0.94821 z3 (z-0.5) (z+0.33) - (z+0.3035) (z+0.04438) (z+0.01355) (z2 - 0.11z + 0.02396) Sample
14、time: 0.1 secondsDiscrete-time zero/pole/gain model.8.s=tf(s);g1=1/(s+1);g2=s/(s2+2);g3=1/s2;g4=(4*s+2)/(s+1)2;g5=50;g6=(s2+2)/(s3+14);G1=feedback(g1*g2,g4);G2=feedback(g3,g5);GG=3*feedback(G1*G2,g6)GG = 3 s6 + 6 s5 + 3 s4 + 42 s3 + 84 s2 + 42 s - s10 + 3 s9 + 55 s8 + 175 s7 + 300 s6 + 1323 s5 + 265
15、6 s4 + 3715 s3 + 7732 s2 + 5602 s + 1400 Continuous-time transfer function.9.s=tf(s);T0=0.01;T1=0.1;T2=1;G=(s+1)2*(s2+2*s+400)/(s+5)2*(s2+3*s+100)*(s2+3*s+2500);Gd1=c2d(G,T0),Gd2=c2d(G,T1),Gd3=c2d(G,T2),step(G),figure,step(Gd1),figure,step(Gd2),figure,step(Gd3)Gd1 = 4.716e-05 z5 - 0.0001396 z4 + 9.5
16、96e-05 z3 + 8.18e-05 z2 - 0.0001289 z + 4.355e-05 - z6 - 5.592 z5 + 13.26 z4 - 17.06 z3 + 12.58 z2 - 5.032 z + 0.8521 Sample time: 0.01 secondsDiscrete-time transfer function.Gd2 = 0.0003982 z5 - 0.0003919 z4 - 0.000336 z3 + 0.0007842 z2 - 0.000766 z + 0.0003214 - z6 - 2.644 z5 + 4.044 z4 - 3.94 z3
17、+ 2.549 z2 - 1.056 z + 0.2019 Sample time: 0.1 secondsDiscrete-time transfer function.Gd3 = 8.625e-05 z5 - 4.48e-05 z4 + 6.545e-06 z3 + 1.211e -05 z2 - 3.299e-06 z + 1.011e-07 - z6 - 0.0419 z5 - 0.07092 z4 - 0.0004549 z3 + 0.002495 z2 - 3.347e-05 z + 1.125e-07 Sample time: 1 secondsDiscrete-time tra
18、nsfer function.10.(a) G=tf(1,1 2 1 2);eig(G),pzmap(G)ans = -2.0000 -0.0000 + 1.0000i -0.0000 - 1.0000i系统为临界稳定。(b) G=tf(1,6 3 2 1 1);eig(G),pzmap(G)ans = -0.4949 + 0.4356i -0.4949 - 0.4356i 0.2449 + 0.5688i 0.2449 - 0.5688i有一对共轭复根在右半平面,所以系统不稳定。(c) G=tf(1,1 1 -3 -1 2);eig(G),pzmap(G)ans = -2.0000 -1.0
19、000 1.00001.0000有两根在右半平面,故系统不稳定。11.(1) H=tf(-3 2,1 -0.2 -0.25 0.05);pzmap(H),abs(eig(H)ans = 0.5000 0.50000.2000系统稳定。(2) H=tf(3 -0.39 -0.09,1 -1.7 1.04 0.268 0.024);pzmap(H),abs(eig(H)ans = 1.1939 1.1939 0.1298 0.1298系统不稳定。12.(1) A=-0.2 0.5 0 0 0;0 -0.5 1.6 0 0;0 0 -14.3 85.8 0;0 0 0 -33.3 100;0 0 0
20、 0 -10;B=0 0 0 0 30;C=zeros(1,5);D=0;G=ss(A,B,C,D),eig(G)G = a = x1 x2 x3 x4 x5 x1 -0.2 0.5 0 0 0 x2 0 -0.5 1.6 0 0 x3 0 0 -14.3 85.8 0 x4 0 0 0 -33.3 100 x5 0 0 0 0 -10 b = u1 x1 0ans = -0.2000 -0.5000 -14.3000 -33.3000 -10.0000 x2 0 x3 0 x4 0 x5 30 c = x1 x2 x3 x4 x5 y1 0 0 0 0 0 d = u1 y1 0Contin
21、uous-time state-space model.系统稳定。13. A=-5 2 0 0; 0 -4 0 0; -3 2 -4 -1; -3 2 0 -4; A=sym(A);syms t;x=expm(A*t)*1;2;0;1x =4*exp(-4*t) - 3*exp(-5*t)2*exp(-4*t)12*exp(-4*t) - 18*exp(-5*t) + 3*t*exp(-4*t) - 4*t2*(exp(-4*t)/(4*t) + exp(-4*t)/(2*t2) + 8*t2*(exp(-4*t)/2 - exp(-4*t)/(2*t) - 16*t*(exp(-4*t) -
22、 exp(-4*t)/(2*t)6*exp(-4*t) - 9*exp(-5*t) - 8*t*(exp(-4*t) - exp(-4*t)/(2*t) G=ss(-5 2 0 0; 0 -4 0 0; -3 2 -4 -1; -3 2 0 -4,1;2;0;1,eye(4),zeros(4,1);tt=0:0.01:2; xx=;for i=1:length(tt) t=tt(i); xx=xx eval(x);endy=impulse(G,tt); plot(tt,xx,tt,y,:)解析解和数值解的脉冲响应曲线如图所示,可以看出他们完全一致。14.(a) s=tf(s);G=(s+6)*
23、(s-6)/(s*(s+3)*(s+4-4j)*(s+4+4j);rlocus(G),grid不存在K使得系统稳定。(b) G=tf(1,2,2,1 1 14 8 0);rlocus(G),grid放大根轨迹图像,可以看到,根轨迹与虚轴交点处,K值为5.53,因此,0K tau=2;n,d=paderm(tau,1,3);s=tf(s);G=tf(n,d)*(s-1)/(s+1)5,rlocus(G)G = -1.5 s2 + 4.5 s - 3 - s8 + 8 s7 + 29.5 s6 + 65.5 s5 + 95 s4 + 91 s3 + 55.5 s2 + 19.5 s + 3Cont
24、inuous-time transfer function.由图得0Ks=tf(s);G=8*(s+1)/(s2*(s+15)*(s2+6*s+10);bode(G),figure,nyquist(G),figure,nichols(G),Gm,y,wcg,wcp=margin(G),figure,step(feedback(G,1)Gm = 30.4686y = 4.2340wcg = 1.5811wcp =0.2336系统稳定。(b)z=tf(z);G=0.45*(z+1.31)*(z+0.054)*(z-0.957)/(z*(z-1)*(z-0.368)*(z-0.99);bode(G)
25、,figure,nyquist(G),figure,nichols(G),Gm,y,wcg,wcp=margin(G),figure,step(feedback(G,1)Warning: The closed-loop system is unstable. In warning at 26 In DynamicSystem.margin at 63 Gm = 0.9578y = -1.7660wcg = 1.0464wcp =1.0734系统不稳定。17.s=tf(s);G=100*(1+s/2.5)/(s*(1+s/0.5)*(1+s/50);Gc=1000*(s+1)*(s+2.5)/(
26、s+0.5)*(s+50);GG=G*Gc;nyquist(GG),grid,figure,bode(GG),figure,nichols(GG),grid,figure,step(feedback(GG,1)由奈氏图可得,曲线不包围(-1,j0)点,而开环系统不含有不稳定极点,所以根据奈氏稳定判据闭环系统是稳定的。用阶跃响应来验证,可得系统是稳定的。第二部分:Simulink 在系统仿真中的应用、控制系统计算机辅助设计、控制工程中的仿真技术应用2. syms y t;y=dsolve(D4y+5*D3y+6*D2y+4*Dy+2*y=exp(-3*t)+exp(-5*t)*sin(4*t+p
27、i/3),y(0)=1,Dy(0)=1/2,D2y(0)=1/2,D3y(0)=1/5);tt=0:.05:10; yy=;for k=1:length(tt) ti=tt(k); yy=yy subs(y,t,ti);endplot(tout,yout,tt,yy,:)3.输出曲线及误差曲线4.5. A,B,C,D=linmod(part2_5);G=ss(A,B,C,D)Warning: Using a default value of 0.2 for maximum step size. The simulation stepsize will be equal to or less t
28、han this value. You can disable this diagnostic bysetting Automatic solver parameter selection diagnostic to none in theDiagnostics page of the configuration parameters dialog. In dlinmod at 172 In linmod at 60 a = x1 x2 x3 x4 x5 x6 x1 0 0 0 0 0 0 x2 0 -100 0 0 0 0 x3 130 0 -100 0 0 0 x4 0 200 -0.88
29、 -100 0 0 x5 0 0 0 0 -100 0 x6 0 0 0 294.1 -29.41 -149.3 x7 0 100 -0.44 0 0 0 x8 -27.56 0 0 0 0 1.045e+004 x9 0 0 0 100 -10 0 x10 0 0 0 0 0 0 x7 x8 x9 x10 x1 0 1.4 0 0 x2 0 0 0 0 x3 0 0 0 0 x4 11.76 0 0 0 x5 0 1.4 0 0 x6 0 0 19.61 0 x7 0 0 0 0 x8 0 -6.667 0 0 x9 0 0 0 0 x10 0 0 0 0 b = u1 x1 0 x2 1 x3