计算机仿真cad答案,CAD与计算机仿真作业.doc

a7f4a3f590493a1e451dd952a488fd7c.gif CAD与计算机仿真作业.doc

(15页)

8249f83cd6c5b458f198a83b1cf303a0.gif

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

19.90 积分

兰 州 理 工 大 学《控制系统计算机仿真》上机报告院系: 电信学院 班级: 基地2班 姓名: 学号: 时间: 2011 年 05 月 16 日电气工程与信息工程学院2-2用MATLAB语言求下列系统的状态方程、传递函数、零极点增益和部分分式形式的模型参数,并分别写出其相应的数学模型表达式:(1)(2) 解:(1):1)>> num=[1 7 24 24];>> den=[1 10 35 50 24];>> [A B C D]=tf2ss(num,den)A = -10 -35 -50 -24 1 0 0 0 0 1 0 0 0 0 1 0B = 1 0 0 0C = 1 7 24 24D = 0即状态方程为:2)>> num=[1 7 24 24];den=[1 10 35 50 24];>> [Z P K]=tf2zp(num,den)Z = -2.7306 + 2.8531i -2.7306 - 2.8531i -1.5388 P = -4.0000 -3.0000 -2.0000 -1.0000K = 1即表达式3)>> [R P H]=residue(num,den)R = 4.0000 -6.0000 2.0000 1.0000P = -4.0000 -3.0000 -2.0000 -1.0000H = []即表达式G(s)=4/(s+4)-6/(s+3)+2/(s+2)+1/(s+1)(2):1)>> A=[2.25,-5,-1.25,-0.5;2.25,-4.25,-1.25,-0.25 0.25,-0.5,-1.25,-1;1.25,-1.75,-0.25,-0.75];>> B=[4;2;2;0];>> C=[0,2,0,2];>> D=0;>> [num,den]=ss2tf(A,B,C,D)num = 0 4.0000 14.0000 22.0000 15.0000den = 1.0000 4.0000 6.2500 5.2500 2.2500即表达式2)>> [Z,P,K]=ss2zp(A,B,C,D)Z = -1.0000 + 1.2247i -1.0000 - 1.2247i -1.5000 P = -0.5000 + 0.8660i -0.5000 - 0.8660i -1.5000 -1.5000 K = 4.0000即表达式3)>> [R,P,H]=residue(num,den)R = 4.0000 -0.0000 0.0000 - 2.3094i 0.0000 + 2.3094iP = -1.5000 -1.5000 -0.5000 + 0.8660i -0.5000 - 0.8660iH = []即表达式G(s)=4/(s+1.5)-2.3094i/(s +0.5000 - 0.8660i)+ 2.3094i/(s+0.5000 + 0.8660i)2-3 用殴拉法求下列系统的输出响应在上,时的数值解。,要求保留4位小数,并将结果以图形的方式与真解比较。t=0:0.1:1t = Columns 1 through 8 0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 Columns 9 through 11 0.8000 0.9000 1.0000>> h=0.1;>> y(1)=1;>> for i=1:10y(i+1)=y(i)+h*(-2*y(i));end>> plot(t,y,'g')>> hold on>> m=exp(-2*t)m = Columns 1 through 8 1.0000 0.8187 0.6703 0.5488 0.4493 0.3679 0.3012 0.2466 Columns 9 through 11 0.2019 0.1653 0.1353>> plot(t,m,'r')2-5 用四阶龙格-库塔梯形法求解2-3的数值解,并通过与真值及殴拉法的比较,分析其精度。>> t=0:0.1:1;>> h=0.1;>> y(1)=1;>> for i=1:10k1=-2*y(i);k2=-2*(y(i)+h*k1/2);k3=-2*(y(i)+h*k2/2);k4=-2*(y(i)+h*k3);y(i+1)=y(i)+h*(k1+2*k2+2*k3+k4)/6;end>> plot(t,y,'g-')>> hold on>> m=exp(-2*t)m = Columns 1 through 8 1.0000 0.8187 0.6703 0.5488 0.4493 0.3679 0.3012 0.2466 Columns 9 through 11 0.2019 0.1653 0.1353>> plot(t,m,'r--')>>4-2设典型闭环结构控制系统如下图所示,当阶跃输入幅值时,用sp4_1.m求取输出y(t)的响应。y(t)r(t)_0.002>> a=[1 54 204.2 213.8 63.5];>> b=[ ];>> X0=[0 0 0 0];>> V=0.002;>> n=4;>> T0=0;Tf=10;>> h=0.01;R=20;>> sp4_1附文件sp4_1.mb=b/a(1);a=a/a(1);A=a(2:n+1);A=[rot90(ro。省略部分。sp4_3;plot(t,y,'g-');hold onsp4_2;plot(t,y,'r--');4-8求下图非线性系统的输出响应y(t),并与无非线性环节情况进行比较。y(t)e(t)r(t)=105-5P=[0.1 1 0.5 1;0 1 20 0;2 1 1 0;10 1 1 0]; WIJ=[1 0 1;1 4 -1 ;2 1 1;3 2 1;4 3 1];Z=[0 0 0 0];S=[0 0 0 0]; h=0.01;L1=25; n=4; T0=0;Tf=20; nout=4; Y0=10;sp4_4;plot(t,y,'g')hold onZ=[4 0 0 0];S=[5 0 0 0];sp4_4;plot(t,y,'b')附文件sp4_4.mA=diag(P(:,1));B=diag(P(:,2));C=diag(P(:,3));D=diag(P(:,4));m=length(WIJ(:,1));W0=zeros(n,1);W=zeros(n,n);for k=1:m if(WIJ(k,2)==0);W0(WIJ(k,1))=WIJ(k,3); else W(WIJ(k,1),WIJ(k,2))=WIJ(k,3); end;end;for i=1:n if(A(i,i)==0); FI(i,i)=1; FIM(i,i)=h*C(i,i)/B(i,i); FIJ(i,i)=h*h*C(i,i)/B(i,i)/2; FIC(i,i)=1;FID(i,i)=0; if(D(i,i)~=0); FID(i,i)=D(i,i)/B(i,i); else end else FI(i,i)=exp(-h*A(i,i)/B(i,i)); FIM(i,i)=(1-FI(i,i))*C(i,i)/A(i,i); FIJ(i,i)=h*C(i,i)/A(i,i)-FIM(i,i)*B(i,i)/A(i,i); FIC(i,i)=1;FID(i,i)=0; if(D(i,i)~=0); FIC(i,i)=C(i,i)/D(i,i)-A(i,i)/B(i,i); FID(i,i)=D(i,i)/B(i,i); else end endendY=zeros(n,1);X=Y;y=0;Uk=zeros(n,1);Ubb=Uk;t=T0:h*L1:Tf;N=length(t);for k=1:N-1 for i=1:L1 Ub=Uk; Uk=W*Y+W0*Y0; for i=1:n if(Z(i)~=0) if(Z(i)==1) Uk(i,i)=satu(Uk(i,i),S(i)); end if(Z(i)==2) Uk(i,i)=dead(Uk(i,i),S(i)); end if(Z(i)==3) [Uk(i,i),Ubb(i,i)]=backlash(Ubb(i,i),Uk(i,i),Ub(i,i),S(i)); end end end Udot=(Uk-Ub)/h; Uf=2*Uk-Ub; X=FI'*X+FIM'*Uk+FIJ'*Udot; Yb=Y; Y=FIC'*X+FID'*Uf; for i=1:n if(Z(i)~=0) if(Z(i)==4) Y(i,i)=satu(Y(i,i),S(i)); end if(Z(i)==5) Y(i,i)=dead(Y(i,i),S(i)); end if(Z(i)==6) [Y(i,i),Ubb(i,i)]=backlash(Ubb(i,i),Y(i,i),Yb(i,i),S(i)); end end end end y=[y,Y(nout)];end附文件滞环非线性环节仿真程序backlash.m:function[Uc,Ubb]=backlash(Urb,Ur,Ucb,S1) if(Ur>Urb) if((Ur-S1)>=Ucb) Uc=Ur-S1; else Uc=Ucb; end else if(Ur0) Uc=S1; else Uc=-S1; endelse Uc=Ur;end附文件死区非线性环节仿真程序dead.m:function Uc=dead(Ur,S1)if(abs(Ur)>=S1) if(Ur>0) Uc=Ur-S1; else Uc=Ur+S1; endelse Uc=0;end 关 键 词: cad 作业 仿真 计算机

4d91c43bfc72ca913299809b07b4968f.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值