MATLAB仿真 课后习题_第1页
MATLAB仿真 课后习题_第2页
MATLAB仿真 课后习题_第3页
MATLAB仿真 课后习题_第4页
MATLAB仿真 课后习题_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章习题3.请指出以下的变量名(函数名、M文件名)中,哪些是合法的? Abc 2004x lil-1 wu_2004 a&b qst.u _xyz 解: 合法的变量名有:Abc wu_20044指令窗操作(1)求12+2×(7-4)÷32的运算结果解:>> 12+2*(7-4)/32ans = 2(2)输入矩阵A=1,2,3;4,5,6;7,8,9,观察输出。解:>> A=1,2,3;4,5,6;7,8,9A = 1 2 3 4 5 6 7 8 9(3)输入以下指令,观察运算结果;clear;x=-8:0.5:8;y=x'X=one

2、s(size(y)*x;Y=y*ones(size(x);R=sqrt(X.2+Y.2)+eps;Z=sin(R)./R;mesh(X,Y,Z);colormap(hot)xlabel('x'),ylabel('y'),zlabel('z')解:7指令行编辑(1)依次键入以下字符并运行:y1=2*sin(0.3*pi)/(1+sqrt(5)解:>>y1=2*sin(0.3*pi)/(1+sqrt(5)y1 =0.5000(2)通过反复按键盘的箭头键,实现指令回调和编辑,进行新的计算;y2=2*cos(0.3*pi)/(1+sqrt(5

3、)解:>>y2=2*cos(0.3*pi)/(1+sqrt(5)y2 = 0.363311.编写题4中(3)的M脚本文件,并运行之。解:第二章习题1.在指令窗中键入x=1:0.2:2和y=2:0.2:1,观察所生成的数组。解:>> x=1:0.2:2x =1.0000 1.2000 1.4000 1.6000 1.8000 2.0000>> y=2:0.2:1y = Empty matrix: 1-by-02要求在0,2上产生50个等距采样数据的一维数组,试用两种不同的指令实现。解: y1=0:2*pi/49:2*pi y2=linspace(0,2*pi,

4、50)3.计算e-2tsint,其中t为0,2上生成的10个等距采样的数组。解:>> t=linspace(0,2*pi,10);x=exp(-2*t).*sin(t)x =0 0.1591 0.0603 0.0131 0.0013 -0.0003 -0.0002 -0.0001 -0.0000 -0.00004.已知A= , B=,计算矩阵A、B乘积和点乘.解:>> A=1,2;3,4;B=5,6;7,8;x=A*Bx = 19 22 43 50>> x=A.*Bx = 5 1221 325.已知A=,B=,计算A&B, A|B, A, A=B,

5、A>B.解:>> A=0,2,3,4;1,3,5,0;B=1,0,5,3;1,5,0,5;a1=A&Ba2=A|Ba3=Aa4=(A=B)a5=(A>B)a1 = 0 0 1 1 1 1 0 0a2 = 1 1 1 1 1 1 1 1a3 = 1 0 0 0 0 0 0 1a4 = 0 0 0 0 1 0 0 0a5 = 0 1 0 1 0 0 1 07.将题5中的A阵用串转换函数转换为串B,再size指令查看A、B的结构,有何不同?解:>> A=0,2,3,4;1,3,5,0B=num2str(A)size(A)size(B)A = 0 2 3 4

6、 1 3 5 0B =0 2 3 41 3 5 0ans = 2 4ans = 2 10第三章习题1.已知系统的响应函数为,其中 ,要求用不同线型或颜色,在同一张图上绘制取值分别为0.2、0.4、0.6、0.8时,系统在t0,18 区间内的响应曲线,并要求用=0.2和 =0.8对他们相应的两条曲线进行文字标志。解:clcclose allclear allt=0:0.02:18;xi=0.2,0.4,0.6,0.8'sxi=sqrt(1-xi.2);sita=atan(sxi./xi);y=1-exp(-xi*t).*sin(sxi*t+sita*ones(1,901)./(sxi*o

7、nes(1,901)plot(t,y(1), 'r-', t,y(2), ' b*', t,y(3), ' g+', t,y(4), ' k.')text(4.2,1.4,'xi =0.2')text(3.8,0.9,'xi=0.8')2.用plot3、mesh、surf指令绘制三维图(x,y范围自定)。解:clc;close all;clear all;x=-5:0.1:5;y=-5:0.1:5;X,Y=meshgrid(x,y);a=sqrt(1-X).2+Y.2);b=sqrt(1+X).2+

8、Y.2);Z=1./(a+b);a1=sqrt(1-x).2+y.2);b1=sqrt(1+x).2+y.2);z=1./(a1+b1);subplot(1,3,1),plot3(x,y,z),xlabel('x'),ylabel('y'),zlabel('z');box on;subplot(1,3,2),surf(X,Y,Z),xlabel('x'),ylabel('y'),zlabel('z');box on;subplot(1,3,3),mesh(X,Y,Z),xlabel('x&#

9、39;),ylabel('y'),zlabel('z');box on;3.对向量t进行以下运算可以构成三个坐标的值向量:x=sin(t),y=cos(t),z=t.利用指令plot3,并选用绿色的实线绘制相应的三维曲线.解:t=(0:0.01:2)*pi;x=sin(t);y=cos(t);z=t;plot3(x,y,z,'b-');box on第四章习题1.请分别用for和while循环语句计算K=的程序,再写出一种避免循环的计算程序。(提示:可考虑利用MATLAB的sum(X,n)函数,实现沿数组X的第n维求和。)解:1)K=0;for i

10、=0:63; K=K+2i;endKK =1.8447e+0192)i=0;K=0;while i<=63; K=K+2i; i=i+1;end;KK =1.8447e+0193)i=0;X=0:63;for i=0:63; X(i+1)=2i;endsum(X,2)ans =1.8447e+019第五章习题1.将下列系统的传递函数模型用MATLAB语言表达出来。(1)解:num=1,35,291,1093,1700;den=1,289,254,2541,4684,1700;sys=tf(num,den)(2)解:z=-3;p=-1,-5,-15;k=15;sys=zpk(z,p,k)(

11、3)解:z=0,-2,-2;p=-1,1;k=100;sys1=zpk(z,p,k);num=1,3,2;den=1,2,5,2;sys2=tf(num,den);sys=series(sys1,sys2)4.求题3中的系统模型的等效传递函数模型和零极点模型。解:A=3,2,1;0,4,6;0,-3,-5;B=1,2,3' ;C=1,2,5;D=0;sys=ss(A,B,C,D);systf=tf(sys)syszpk=zpk(sys)Transfer function: 20 s2 - 83 s + 138-s3 - 2 s2 - 5 s + 6 Zero/pole/gain:20

12、(s2 - 4.15s + 6.9)- (s-3) (s-1) (s+2)5.已知系统的动力学方程如下,试用MATLAB语言写出它们的传递函数。(1)解:num=1,2,0;den=1,15,50,500;sys=tf(num,den)Transfer function: s2 + 2 s-s3 + 15 s2 + 50 s + 500(2) 解:num=4,0;den=1,3,6,4;sys=tf(num,den)Transfer function: 4 s-s3 + 3 s2 + 6 s + 46.试用MATLAB语言表示图5-13所示系统。当分别以y=x2和f为系统输出、输入时的传递函数

13、模型和状态空间模型(图中k=7N/m,c1=0.5N/m.s-1, c2=0.2N/m.s-1,m1=3.5kg, m2=5.6kg)。解:k=7;c1=0.5;c2=0.2;m1=3.5;m2=5.6;num=m1,c1,k;den=m1*m2,c1*m1+c2*m1+c1*m2,c1*c2+m2*k,c1*k+c2*k,0;sys=tf(num,den)Transfer function: 3.5 s2 + 0.5 s + 7-19.6 s4 + 5.25 s3 + 39.3 s2 + 4.9 s7.试用MATLAB语言分别表示图5-14所示系统质量m1,m2的位移x1,x2对输入f的传递

14、函数X2(s)/F(s)和X1(s)/F(s),其中m1=12kg, m2=38kg,k=1000N/m, c=0.1N/m.s-1。解:m1=12;m2=38;k=1000;c=0.1;num=c,k;den=m1*m2,m1*c+m2*c,m1*k+m2*k,0,0;sys1=tf(num,den)num=m1,c,k;den=m1*m2,m1*c+m2*c,m1*k+m2*k,0,0;sys2=tf(num,den)Transfer function: 0.1 s + 1000-456 s4 + 5 s3 + 50000 s2 Transfer function: 12 s2 + 0.1

15、 s + 1000-456 s4 + 5 s3 + 50000 s2补充题求图示传递函数sys1=tf(1,2,1,3,4);sys2=tf(1,4,5 ,1,6,7,8);sys3=tf(1,0,1,2);sys4=tf(1,1,3);sys5=parallel(sys3,sys4);sys=feedback(sys1*sys2*sys5,1,-1)结果 s5 + 10 s4 + 39 s3 + 74 s2 + 66 s + 20-s7 + 14 s6 + 81 s5 + 262 s4 + 530 s3 + 684 s2 + 538 s + 212第六章习题2.将例6-2中的微分方程改写为以

16、下形式:求分别为1、2时,在时间区间t=0,20微分方程的解。解:M函数文件function dx=wffc(t,x,flag,ps)dx=zeros(2,1);dx(1)=x(2);dx(2)=ps*(1-x(1)2)*x(2)-x(1);调用程序clc;close all;clear all;tspan=0,20;x0=0,1;ps=1;T1,X1=ode45('wffc',tspan,x0,odeset,ps);ps=2;T2,X2=ode45('wffc',tspan,x0,odeset,ps);plot(T1,X1(:,1),'r',T

17、2,X2(:,1),'b-.')X1(:,1)X2(:,1)3.对图6-18所示反馈系统进行单位阶跃响应和方波响应(方波周期为30s)仿真。要求:(1)利用MATLAB模型连接函数求出系统闭环传递函数。(2)利用step函数求单位阶跃响应。(3)利用gensig函数产生方波信号,利用lsim函数求方波响应。解:clc;close all;clear all;% (1)sys1=tf(1,0.5,1,0.1);sys2=ZPK(,0,-2,-10,20);sys3=series(sys1,sys2);sys4=feedback(sys3,1,-1);% (2)subplot(1,

18、2,1)step(sys4);% (3)u,t=gensig('square',30,60);subplot(1,2,2)lsim(sys4,'r',u,t)20 (s+0.5)-(s+10.23) (s+0.8195) (s2 + 1.052s + 1.193)4.已知系统传递函数 (1)绘制系统阶跃响应曲线。(2)绘出离散化系统阶跃响应曲线,采样周期Ts=0.3s。解:clc;close all;clear all;% (1)sys=tf(1,1,0.2,1.01);subplot(1,2,1)step(sys)% (2)sys=tf(1,1,0.

19、2,1.01);sys1=c2d(sys,0.3,'zoh');num,den=tfdata(sys1,'v');subplot(1,2,2)dstep(num,den)附加题1、已知二阶微分方程,其初始条件为,求在时间范围t=0 5内该微分方程的解。M函数为:function dy=vdp(t,y)dy=zeros(2,1); dy(1)= y(2); dy(2)= 4*y(2)-(y(1)2)*y(2)+3*y(1);调用函数为:T,Y=ode45('vdp',0 5,0,1); plot(T,Y(:,1),'r-',T,Y(

20、:,2),'b:')2、已知系统模型为,计算系统在周期10s的方波信号作用下5个周期内的时间响应,并在同一图形窗口中绘制输入信号和时间响应曲线。sys=tf(1,2,1,0,2,7); u,t=gensig('square',10,50); %产生方波信号数据lsim(sys,'r',u,t) , hold on %产生方波响应并绘曲线plot(t,u,'-.') %在同一坐标系绘方波波形hold off第七章习题1.绘制下列各单位反馈系统开环传递函数的Bode图和Nyquist图,并根据其稳定裕度判断系统的稳定性。(1)解:cl

21、c;clear all;close all;% (1)Gk=zpk(,0,-0.5,-1/3,5/3);subplot(1,2,1)margin(Gk)grid onsubplot(1,2,2)nyquist(Gk)由上图的稳定裕度知系统临界稳定。(2)解:clc;clear all;close all;% (2)Gk=zpk(,0,-1,-0.1,1);subplot(1,2,1)margin(Gk)grid onsubplot(1,2,2)nyquist(Gk)由上图的稳定裕度知系统不稳定。(3)解:clc;clear all;close all;% (3)Gk=zpk(,0,0,-10,

22、-5,500);subplot(1,2,1)margin(Gk)grid onsubplot(1,2,2)nyquist(Gk)由上图的稳定裕度知系统不稳定。(4) 解:clc;clear all;close all;% (4)Gk=zpk(,0,0,-10,-0.1,2);subplot(1,2,1)margin(Gk)grid onsubplot(1,2,2)nyquist(Gk)由上图的稳定裕度知系统不稳定。2.设单位反馈系统的开环传递函数为,其中无阻尼固有频率wn=90rad/s,阻尼比=0.2,试确定使系统稳定的K的范围。解:方法1g=tf(1,1/902 0.4/90 1 0);%

23、系统开环模型w=logspace(0,3,1000); %生成频率向量bode(g,w)mag,phase,w=bode(g,w); %产生幅值(非分贝)和相位向量mag1=reshape(mag,1000,1); %重构幅值向量(1000*1)phase1=reshape(phase,1000,1);%重构相频向量(1000*1)wc=interp1(phase1,w,-180) %插值求-180度所对应的频率wcgk=interp1(w,mag1,wc) %插值求wc所对应的增益gkk=1/gk %该增益的倒数即为可增加的最大增益wc = 90.0004gk = 0.0278gkk = 3

24、6.0033方法2wc=0;wg=0.01;k=1;while wc<wg sys=tf(k,1/(90*90),2*0.2/90,1,0); gm,pn,wg,wc=margin(sys); k=k+0.1;endk-0.1ans = 36.0000方法3xi=0.2;omega=90;w=90;sys1=tf(1,1,0);sys2=tf(1,1/w2,2*xi/w,1);sys=series(sys1,sys2);Gm,Pm,Wcg,Wcp=margin(sys);k=Gmk =363.设系统结构如图7-22所示,试用LTI Viewer分析系统的稳定性,并求出系统的稳定裕度及单位阶跃响应峰值。clc;close all;clear all;G11=0.5;G12=zpk(0,-0.5,1);G1=G11-G12;G2=tf(1,1 2 0);Gk=G1*G2;Gb=feedback(Gk,1,-1);Gm,Pm,Wcg,Wcp=margin(Gb)step(Gb)y,t=step(Gb);yp,k=max(y)ypGm = 0.6667Pm =-21.6345yp =1.49944. 设闭环离散系统结构如图7-23所示,其中G(s)=10/(s.(s+1),H(s)=1,绘制T=0.01s、1s时离散系统开环传递函数的Bode图和Nyquist图,以及系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论