《《计算机仿真技术与CAD》习题答案.pdf》由会员分享,可在线阅读,更多相关《《计算机仿真技术与CAD》习题答案.pdf(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)第第 0 0 章章绪论绪论01 什么是仿真?它所遵循的基本原则是什么?答:仿真是建立在控制理论、相似理论、信息处理技术和计算机技术等理论基础之上的,以计算机和其他专用物理效应设备为工具,利用系统模型对真实或假想的系统进行试验,并借助专家经验知识、统计数据和信息资料对试验结果进行分析和研究,进而做出决策的一门综合性的试验性科学。它所遵循的基本原则是相似原理.02 仿真的分类有几种?为什么?答:依据相似原理来分:物理仿真、数学仿真和混合仿真。物理仿真:就是应用几何相似原理,制作一个与实际系统相似但几何尺寸较小或较大的物理模型(例如
2、飞机模型放在气流场相似的风洞中)进行实验研究。数学仿真:就是应用数学相似原理,构成数学模型在计算机上进行研究.它由软硬件仿真环境、动画、图形显示、输出打印设备等组成。混合仿真又称数学物理仿真,它是为了提高仿真的可信度或者针对一些难以建模的实体,在系统研究中往往把数学仿真、物理仿真和实体结合起来组成一个复杂的仿真系统,这种在仿真环节中有部分实物介入的混合仿真也称为半实物仿真或者半物理仿真。03 比较物理仿真和数学仿真的优缺点.答:在仿真研究中,数学仿真只要有一台数学仿真设备(如计算机等),就可以对不同的控制系统进行仿真实验和研究,而且,进行一次仿真实验研究的准备工作也比较简单,主要是受控系统的建
3、模、控制方式的确立和计算机编程。数学仿真实验所需的时间比物理仿真大大缩短,实验数据的处理也比物理仿真简单的多.与数学仿真相比,物理仿真总是有实物介入,效果直观逼真,精度高,可信度高,具有实时性与在线性的特点;但其需要进行大量的设备制造、安装、接线及调试工作,结构复杂,造价较高,耗时过长,灵活性差,改变参数困难,模型难以重用,通用性不强。04 简述计算机仿真的过程。答:第一步:根据仿真目的确定仿真方案根据仿真目的确定相应的仿真结构和方法,规定仿真的边界条件与约束条件。第二步:建立系统的数学模型对于简单的系统,可以通过某些基本定律来建立数学模型。而对于复杂的系统,则必须利用实验方法通过系统辩识技术
4、来建立数学模型。数学模型是系统仿真的依据,所以,数学模型的准确性是十分重要。1计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)第三步:建立仿真模型即通过一定算法对原系统的数学模型进行离散化处理,就连续系统言,就是建立相应的差分方程.第四步:编制仿真程序对于非实时仿真,可用一般高级语言或仿真语言。对于快速的实时仿真,往往需要用汇编语言。第五步:进行仿真实验并输出仿真结果通过实验对仿真系统模型及程序进行校验和修改,然后按系统仿真的要求输出仿真结果.0-5 什么是 CAD 技术?控制系统 CAD 可解决哪些问题?答:CAD 技术,即计算机辅助设计(Computer Aided D
5、esign),是将计算机高速而精确的计算能力、大容量存储和数据处理能力与设计者的综合分析、逻辑判断以及创造性思维结合起来,以加快设计进程、缩短设计周期、提高设计质量的技术。控制系统 CAD 可以解决以频域法为主要内容的经典控制理论和以时域法为主要内容的现代控制理论。此外,自适应控制、自校正控制以及最优控制等现代控制策略都可利用 CAD 技术实现有效的分析和设计。2计算机仿真技术与 CAD 基于 MA TLAB的控制系统(第 3 版)第第 1 1 章章仿真软件仿真软件-MATLABMATLAB11 对于矩阵 A=1 2;3 4,MATLAB以下四条命令:A。(0。5);A(0。5);sqrt(A
6、);sqrtm(A)所得结果相同吗?它们中哪个结果是复数矩阵,为什么?答:A.(0.5)=1。00001.4142;1。73212。0000;A(0.5)=0。5537+0.4644i 0.8070-0。2124i;1。2104 0。3186i1。7641+0。1458i;sqrt(A)=1.00001.4142;1。73212。0000;sqrtm(A)=0。5537+0.4644i 0。8070 0。2124i;1。2104 0.3186i 1.7641+0.1458i ;其中,“A.(0。5)”表示向量的乘方,“A(0.5)表示矩阵的乘方,“sqrt(A)”只定义在矩阵的单个元素上,即分
7、别对矩阵的每个元素进行运算,“sqrtm(A)”表示对矩阵(方阵)的超越函数进行运算。1-4 求二元函数方程组:sin(x y)=0,cos(x+y)=0 的解。答:x,y=solve(sin(xy)=0,cos(x+y)=0,x,y)x=1/4pi1/4*pi-1/4*pi1/4*pi15 求函数 y(t)=exp(t)*|sin cost 的最大值(0f=(-1)exp(abs(x))abs(sin(cos(abs(x));x=fminsearch(f,0),ymax=exp(-(abs(x))*abs(sin(cos(abs(x))))x=0ymax=0。84151-6 设 D2y-3D
8、y+2y=x,y(0)=1,Dy(0)=0,求 y(0.5)的值。答:f=D2y-3 Dy+2 y=x;g=dsolve(f,y(0)=1,Dy(0)=0,x);x=0。5;y=eval(g)y=0。61003y=计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)17 求方程 cos(t)2exp(0。1t)=0。5t 的解。答:t1=solve(cos(t)2*exp(0.1*t)=0.5 t,t)t=eval(t1)t=0.832918 求方程组:x2+y2=1,xy=2的解.答:x,y=solve(x2+y2=1,x*y=2,x,y)x=-1/2(1/2*5(1/2)+
9、1/2*i*3(1/2)3+1/4 5(1/2)+1/4*i 3(1/2)-1/2*(1/25(1/2)1/2*i*3(1/2))3+1/4 5(1/2)-1/4 i3(1/2)-1/2*(-1/2 5(1/2)+1/2*i 3(1/2)3-1/4 5(1/2)+1/4 i*3(1/2)1/2(-1/2*5(1/2)1/2i3(1/2))3-1/4 5(1/2)1/4i3(1/2)y=1/2*5(1/2)+1/2 i*3(1/2)1/2*5(1/2)-1/2*i*3(1/2)1/2*5(1/2)+1/2 i*3(1/2)-1/2*5(1/2)-1/2i*3(1/2)19 求 f(kT)=kex
10、p(-akT)的 Z 变换表达式.答:syms k t z;f=k exp(at);F=ztrans(f,t,z)f=kz/exp(-a)/(z/exp(a)1)1-10 求一阶微分方程 Dx=ax+by(t),x(0)=x0的解。答:f=Dx=a x+by;x=dsolve(f,x(0)=x0,t)x=by/a+exp(a*t)(b*y+x0 a)/a1-12 求以下方程组边值问题的解.Df=3f+4g,Dg=-4f+3g,f(0)=0,g(0)=1答:f=Dx1=3 x1+4*x2,Dx2=-4 x1+3 x2x1,x2=dsolve(f,x1(0)=0,x2(0)=1,t)x1=exp(
11、3*t)*sin(4*t)x2=exp(3*t)cos(4t)4计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)5计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)第第 2 2 章章 控制系统的数学模型及其转换控制系统的数学模型及其转换2-1 已知系统的传递函数为s2 s 1Gs3s 6s211s 6试用 MATLAB 建立其状态空间表达式。答:num=1 1 1;den=1 6 11 6 ;A,B,C,D=tf2ss(num,den)A=611-6100010B=100C=111D=022 已知系统的状态空间表达式为x1t 0 1x1t1 0u1t-2
12、-31 1xtut 22x2t1 0 x1tyt1 1xt 2试用 MATLAB 求其传递函数阵。答:A=0 1;2-3;B=1 0;1 1;C=1 0;1 1;D=zeros(2,2);num1,den1=ss2tf(A,B,C,D,1),num2,den2=ss2tf(A,B,C,D,2)num1=01。00004。000002。00002.0000den1=132num2=00。00001.000001。00001.00006计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)den2=1322-3 已知两子系统的传递函数分别为G1s1s 1s 2,G2s1ss 3试利用
13、 MATLAB 求两子系统串联和并联时系统的传递函数。答:num1=1;den1=1 3 2;num2=1;den2=1 3 0;num,den=series(num1,den1,num2,den2)num=00001den=161160 num1=1;den1=1 3 2;num2=1;den2=1 3 0 ;num,den=parallel(num1,den1,num2,den2)num=00262den=1611602-4 设系统的状态空间表达式为x1t 0 1x1t1u t x2t2x2t-2 -3xtyt3 01x2t若取线性变换阵P 1 -11 1设新的状态变量为x P1x,则利用
14、 MATLAB 求在新状态变量下,系统状态空间表达式。答:A=0 1;2-3;B=1;2;C=3 0;D=0;P=1 1;1-1;A1,B1,C1,D1=ss2ss(A,B,C,D,P)A1=203-1B1=31C1=1.50001.50007计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)D1=025 已知离散系统状态空间表达式x1k 10 1x1k0ut 1 31xk 1xk 22 x k1 yk1 1x2k试用 MATLAB 求其系统的脉冲传递函数。答:A=0 1;1 3;B=0;1;C=1 1;D=0;T=1;A1,B1,C1,D1=c2dm(A,B,C,D,T)A
15、1=B1=1。95987.33571102.95987。33577。335724。9669C1=D1=8计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)第第 3 3 章章 连续系统的数字仿真连续系统的数字仿真31 已知线性定常系统的状态空间表达式为x1t 0 1x1t2u t x2t0 x2t-5 -6xtyt1 21x2t且初始状态为零,试利用四阶龙格库塔法求系统的单位阶跃响应。答:ex3_1。mr=1;A=0 1;5-6;B=2;0;C=1 2;d=0;Tf=5;h=0.1;x=zeros(length(A),1);y=0;t=0;for i=1:Tf/hK1=A*x+
16、B*r;K2=A(x+hK1/2)+B*r;K3=A*(x+h*K2/2)+Br;K4=A(x+h*K3)+B*r;x=x+h(K1+2*K2+2 K3+K4)/6;y=y;Cx;t=t;t(i)+h;endplot(t,y)3-2 设单位反馈系统的开环传递函数Gs4ss 2试利用二阶-龙格库塔法求系统的单位阶跃响应.9计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)答:%ex3_2。mr=1;numo=4;deno=1,2,0;num,den=cloop(numo,deno);A,b,C,d=tf2ss(num,den);Tf=5;h=0。1;x=zeros(length
17、(A),1);y=0;t=0;for i=1:Tf/hK1=A x+br;K2=A(x+h*K1)+br;x=x+h*(K1+K2)/2;y=y;C*x;t=t;t(i)+h;endplot(t,y)34 利用 input()函数修改例 3-1 所给程序 ex3_1.m,将其中给定的参数r,numo,deno,numh 和 denh 利用键盘输入,使其变为连续控制系统面向传递函数的通用数字仿真程序。答:10计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)35 利用 input()函数修改例 32 所给程序 ex3_2。m,将其中给定的参数r,P,W,W0和 Wc 利用键盘输
18、入,使其变为连续控制系统面向结构图的通用数字仿真程序。答:11计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)第第 4 4 章章 连续系统按环节离散化的数字仿真连续系统按环节离散化的数字仿真4-1 已知非线性习题如图题41 所示,试利用连续系统按环节离散化的数字仿真方法,求输出量 y 的动态响应,并与无非线性环节进行比较.(图略)答:%ex4_1.m%主程序R=10;P=0.1 1 0。5 1 5 5;0 1 1 0 0 0;2 1 2 0 0 0;10 1 10 0 0 0;W=0 0 0-1;1 0 0 0;0 1 0 0;0 0 1 0;W0=1;0;0;0;Wc=0
19、 0 0 1;Tf=25;T=0.02;A=P(:,1);B=P(:,2);C=P(:,3);D=P(:,4);FZ=P(:,5);S=P(:,6);n=length(A);for i=1:nif(A(i)=0)if(B(i)=0)E(i)=0;F(i)=0;G(i)=0;H(i)=0;L(i)=(C(i)+D(i)/T)/A(i);Q(i)=D(i)/(A(i)T);else E(i)=exp(-A(i)*T/B(i));F(i)=(D(i)/B(i)C(i)/A(i))(1E(i)*B(i)/(A(i)*T)-1);G(i)=(D(i)/B(i)-C(i)/A(i))*(1+(E(i)-1
20、)(1+B(i)/(A(i)*T)));H(i)=1;L(i)=D(i)/B(i);Q(i)=0;endelseif(B(i)=0)E(i)=1;F(i)=0.5*C(i)T/B(i);G(i)=F(i);H(i)=1;L(i)=D(i)/B(i);Q(i)=0;else disp(A(i)=B(i)=0);endendendx=zeros(length(A),1);x0=x;z=x;u=zeros(length(A),1);u0=u;y=zeros(length(Wc(:,1),1);t=0;for j=1:Tf/T u1=u;u=W*x+W0*R;for i=1:nif(FZ(i)=0)i
21、f(FZ(i)=1)u(i)=saturation(u(i),S(i));endif(FZ(i)=2)u(i)=deadzone(u(i),S(i);end12计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)if(FZ(i)=3)u(i),u0(i)=backlash(u0(i),u(i),u1(i),S(i));endif(FZ(i)=4)u(i)=sign1(u(i),S(i);endendendx1=x;for i=1:n z(i)=E(i)*z(i)+F(i)u(i)+G(i)*u1(i);x(i)=H(i)z(i)+L(i)u(i)+Q(i)u1(i);endfo
22、r i=1:nif(FZ(i)=0)if(FZ(i)=5)x(i)=saturation(x(i),S(i));endif(FZ(i)=6)x(i)=deadzone(x(i),S(i));endif(FZ(i)=7)x(i),x0(i)=backlash(x0(i),x(i),x1(i),S(i));endif(FZ(i)=8)x(i)=sign1(x(i),S(i);end endendy=y,Wc*x;t=t,t(j)+T;endplot(t,y)%saturation。m子程序function x=saturation(u,s)if(abs(u)=s)if(u0)x=s;else x=
23、s;endelsex=u;end13计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)修改“P=0.1 1 0。5 1 0 0;0 1 1 0 0 0;2 1 2 0 0 0;10 1 10 0 0 0;”ex4_14-2 针对例 32 所给线性定常系统,试利用第4 章所给程序,求系统的单位阶跃响应,并对其结果进行比较。答:ex3_2 ex4_114计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)43 针对例 41 所给系统,去掉饱和非线性环节后求系统的单位阶跃响应,并与例4-1 所得结果进行比较。答:ex4_1修改“P=0.1 1 0.5 1 0 0;0
24、 1 1 0 0 0;2 1 2 0 0 0;10 1 10 0 0 0;”ex4_115计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)4-4 利用 input()函数修改例 41 所给程序 ex4_1。m,将其中给定的参数R,P,W,W0 和 Wc 利用键盘输入,使其变为连续控制系统按环节离散化的通用数字仿真程序。答:略16计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)第第 5 5 章章 采样控制系统的数字仿真采样控制系统的数字仿真5-1 已知采样控制系统的结构图如图题51 所示(图略)。试利用采样控制系统的数字仿真方法,求当采样周期T=0.1s,
25、且初始状态为零时,离散系统的单位阶跃响应.答:%ex5_1。mR=1;Gr=1;Fr=0;P=1 1 1 0 0 0;1 2 1 0 0 0;W=0 0;1 0;W0=1;0;Wc=0 1;Tf=25;Tm=0。1;T=0。01;A=P(:,1);B=P(:,2);C=P(:,3);D=P(:,4);FZ=P(:,5);S=P(:,6);n=length(A);n1=length(Fr);m1=length(Gr);for i=1:nif(A(i)=0)if(B(i)=0)E(i)=0;F(i)=0;G(i)=0;H(i)=0;L(i)=(C(i)+D(i)/T)/A(i);Q(i)=D(i)
26、/(A(i)*T);else E(i)=exp(A(i)T/B(i));F(i)=(D(i)/B(i)C(i)/A(i)(1-E(i)B(i)/(A(i)*T)-1);G(i)=(D(i)/B(i)C(i)/A(i)(1+(E(i)-1)(1+B(i)/(A(i)*T));H(i)=1;L(i)=D(i)/B(i);Q(i)=0;endelseif(B(i)=0)E(i)=1;F(i)=0。5*C(i)*T/B(i);G(i)=F(i);H(i)=1;L(i)=D(i)/B(i);Q(i)=0;else disp(A(i)=B(i)=0);endendendx=zeros(length(A),
27、1);x0=x;z=x;u=zeros(length(A),1);u0=u;y=zeros(length(Wc(:,1),1);t=0;Ur=zeros(n1,1);Er=zeros(m1,1);for ij=0:Tf/Tm;e=Rx(n);Er=e;Er(1:m1-1);ur=Fr*Ur+Gr*Er;Ur=ur;Ur(1:n1-1);for j=1:Tm/T17计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)u1=u;u=W*x+W0ur;for i=1:nif(FZ(i)=0)if(FZ(i)=1)u(i)=saturation(u(i),S(i));endif(FZ(
28、i)=2)u(i)=deadzone(u(i),S(i));endif(FZ(i)=3)u(i),u0(i)=backlash(u0(i),u(i),u1(i),S(i);endif(FZ(i)=4)u(i)=sign1(u(i),S(i);endendend x1=x;for i=1:n z(i)=E(i)*z(i)+F(i)u(i)+G(i)u1(i);x(i)=H(i)*z(i)+L(i)*u(i)+Q(i)u1(i);endfor i=1:nif(FZ(i)=0)if(FZ(i)=5)x(i)=saturation(x(i),S(i);endif(FZ(i)=6)x(i)=deadzo
29、ne(x(i),S(i);endif(FZ(i)=7)x(i),x0(i)=backlash(x0(i),x(i),x1(i),S(i));endif(FZ(i)=8)x(i)=sign1(x(i),S(i);endendendy=y,Wcx;t=t,t(length(t)+T;endendplot(t,y)ex5_15-2 针对例 32 和例 41 所给连续系统,试利用第5 章所给程序,求系统的单位阶跃响应,并对其结果进行比较分析。18计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)答:ex3_2ex4_1ex5_219计算机仿真技术与 CAD基于 MATLAB 的控制系
30、统(第 3 版)54 略20计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)第第 6 6 章章 动态仿真集成环境动态仿真集成环境SimulinkSimulink6-1 已知单变量系统如图题6-1 所示(图略),试利用 Simulink 求输出量 y 的动态响应。答:6-2 假设某一系由图题62 所示的四个典型环节组成(图略),试利用 Simulink 求输出量 y 的动态响应。答:6-3 已知非线性系统如图题6-3 所示,试利用 Simulink 求输出量 y 的动态响应。21计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)答:6-4 已知采样系统结构如
31、图题6-4 所示,试利用 Simulink 求输出量 y 的动态响应。答:6-5 已知非线性系统如图65 所示,试利用 Simulink 分析非线性环节的c 值与输入幅值对系统输出性能的影响。答:22计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)(1)r=1 c=0(2)r=0。5 c=0(3)r=1 c=1(4)r=1 c=223计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)66 已知线性定常系统的状态方程为x1t 0 1x1t0u t -2 -3xt 1x2t2x0 1 1=-1x20试利用 Simulink 求 u(t)为单位阶跃函数时系统状态方程的解.答:t,x,y=sim(ex6_6,10);plot(t,y(:,1),:b,t,y(:,2),r);legend(y1,y2)24