控制系统仿真及CAD试题研.docx

上传人:b****1 文档编号:381596 上传时间:2022-10-09 格式:DOCX 页数:26 大小:285.04KB
下载 相关 举报
控制系统仿真及CAD试题研.docx_第1页
第1页 / 共26页
控制系统仿真及CAD试题研.docx_第2页
第2页 / 共26页
控制系统仿真及CAD试题研.docx_第3页
第3页 / 共26页
控制系统仿真及CAD试题研.docx_第4页
第4页 / 共26页
控制系统仿真及CAD试题研.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

控制系统仿真及CAD试题研.docx

《控制系统仿真及CAD试题研.docx》由会员分享,可在线阅读,更多相关《控制系统仿真及CAD试题研.docx(26页珍藏版)》请在冰豆网上搜索。

控制系统仿真及CAD试题研.docx

控制系统仿真及CAD试题研

控制系统仿真及CAD试题(研2012)

1、4-2某反馈控制系统的开环传递函数为

试绘制其根轨迹。

解:

在MATLAB命令窗口中输入下列命令:

ng=1.0;

dg=poly([0,-4,-2+4j,-2-4j]);

rlocus(ng,dg)

运行结果为:

4-3已知某系统传递函数为

试绘制其伯德图。

解:

分子分母同乘100*200得到

在Matlab窗口中输入下列命令:

k=80*200;

num=[1100];

den=conv([2.5100],[(1/200)2*0.3200]);

w=logspace(-1,1,100);

[m,p]=bode(k*num,den,w);

subplot(2,1,1);

semilogx(w,20*log10(m));

grid;

xlabel('Frequency(rad/sec)');

ylabel('Gain(dB)');

subplot(2,1,2);

semilogx(w,p);

grid;

xlabel('Frequency(rad/s)');

ylabel('Phase(deg)');

可绘制该系统的伯德图如下所示。

4-4设控制系统具有如下的开环传递函数

试求取当K=10时的相角裕度和幅值裕度,并画出其伯德图。

解:

在MATLAB命令窗口中输入下列命令:

k=10;

num=1;

den=poly([0,-1,-5]);

[m,p,w]=bode(k*num,den);

subplot(2,1,1);

semilogx(w,20*log10(m));

gridon;

ylabel('Gain(dB)');

subplot(2,1,2);

semilogx(w,p);

gridon;

xlabel('Frequency(rad/sec)');

ylabel('Phase(deg)');

[gm,pm,wcg,wcp]=margin(m,p,w)

这里gm,wcg为幅值裕度值与相应的频率pm,wcp为相角裕度值与相应的频率,运行结果为:

gm=3.0000,pm=25.4489,wcg=2.2361,wcp=1.2241。

因此,系统的幅值裕度和相角裕度分别为3dB和25.4489°。

系统的伯德图如下所示。

4-13对于高阶系统的设计问题,往往要进行降阶近似处理,并要验证近似效果。

已知某高阶系统模型为

经简化处理后,模型等效为

试比较两个模型在单位阶跃信号作用下的响应情况,并分析近似效果。

解:

在Matlab命令窗口中输入下列命令:

num1=[35,10861,13285,82402,278376,511812,422964,194480];

den1=[1,33,437,3017,11870,27470,37492,28880,9600];

sys1=tf(num1,den1);

num2=[35,284.98];

den2=[1,10.114,12.31];

sys2=tf(num2,den2);

step(sys1,'-',sys2,':

r',15)

legend('原模型','简化后模型');

gridon

程序运行结果如下:

从曲线中可以看出,降阶后系统响应无超调,调整时间缩短,系统响应变快,但是简化前后终值有差异。

2-5用四阶龙格-库塔法求解题2-3数值解,并与前两题结果相比较。

解:

四阶龙格-库塔法表达式

,其截断误差为

同阶无穷小,当h步距取得较小时,误差是很小的.

(1)程序如下:

h=0.1;

disp('四阶龙格-库塔方法求解函数数值解为');

disp('y=');

y=1;

fort=0:

h:

1

disp(y);

k1=-y;

k2=-(y+k1*h/2);

k3=-(y+k2*h/2);

k4=-(y+k3*h);

y=y+(k1+2*k2+2*k3+k4)*h/6;

end

得到结果四阶龙格-库塔方法求解函数数值解为

y=10.90480.81870.74080.67030.60650.54880.49660.44930.40660.3679

(2)比较这几种方法:

对于四阶龙格-库塔方法

真值

1

0.9048

0.8187

0.7408

0.6703

0.6065

0.5488

0.4966

0.4493

0.4066

0.3679

龙库

1

0.9048

0.8187

0.7408

0.6703

0.6065

0.5488

0.4966

0.4493

0.4066

0.3679

误差

0

0

0

0

0

0

0

0

0

0

0

显然四阶龙格-库塔法求解精度很高,基本接近真值。

三种方法比较可以得到

精度(四阶)〉精度(二阶)〉精度(欧拉)

2-9用题2-8仿真程序求解题2-7系统的闭环输出响应y(t).

解:

题2-7单位反馈系统的开环传递函数已知如下

已知开环传递函数,求得闭环传递函数为

在matlab命令行里键入>>a=[10];

>>b=[14.6];

>>c=[13.416.35];

>>d=conv(a,b);

>>e=conv(d,c)

e=1.00008.000031.990075.21000

>>f=[0005100];

>>g=e+f

g=1.00008.000031.990080.2100100.0000

%以上是计算闭环传递函数的特征多项式%

>>m=[5100];

>>z=roots(m)

z=-20%计算零点%

那么A=

B=

C=

D=[0]

m文件为:

functiony=hs(A,B,C,D,R,T,h)%T为观测时间,h为计算步长,R为输入信号幅值%

disp('数值解为');

y=0;

r=R;

x=[0;0;0;0];

N=T/h;

fort=1:

N;

k1=A*x+B*R;

k2=A*(x+h*k1/3)+B*R;

k3=A*(x+2*h*k2/3)+B*R;

x=x+h*(k1+3*k3)/4;

y(t)=C*x+D*R;

end

在命令行里键入>>A=[0100

0010

0001

-100-80.21-31.99-8];

>>B=[0001]';

>>C=[-100500];

>>D=[0];

>>T=1;

>>R=1;

>>h=0.01;

>>y=hs(A,B,C,D,R,T,h)

数值解为

0

8.3333e-007

5.8659e-006

1.8115e-005

3.9384e-005

7.0346e-005

%仅取一部分%

3-5图3-61中,若各环节的传递函数已知为:

;重新列写联接矩阵

和非零元素矩阵

,将程序sp4_2.m完善后,应用sp4_2.m求输出

的响应曲线。

解:

根据图中

拓扑连结关系,可写出每个环节输入

受哪些环节输出

的影响,

现列如入下:

把环节之间的关系和环节与参考输入的关系分别用矩阵表示出来,

(2)

程序为:

P=[1,0.01,1,0;0,0.085,1,0.17;1,0.01,1,0;

0,0.051,1,0.15;1,0.0067,70,0;1,0.15,0.21,0;

0,1,130,0;1,0.01,0.1,0;1,0.01,0.0044,0];

WIJ=[1,0,1;2,1,1;2,9,-1;3,2,1;4,3,1;4,8,-1;5,4,1;6,5,1;6,7,-0.212;7,6,1;8,6,1;9,7,1];

n=9;

Y0=10;

Yt0=[0,0,0,0,0,0,0,0,0];

h=0.001;

L1=10;

T0=0;

Tf=5;

nout=7;

%....形成闭环各系数阵….

A=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);

fork=1:

m

if(WIJ(k,2)==0);W0(WIJ(k,1))=WIJ(k,3);

elseW(WIJ(k,1),WIJ(k,2))=WIJ(k,3);

end;

end;

Q=B-D*W;Qn=inv(Q);

R=C*W-A;V1=C*W0;

Ab=Qn*R;b1=Qn*V1;

%.....数值积分求解……

Y=Yt0';y=Y(nout);t=T0;

N=round(Tf-T0)/(h*L1);

R=Y0;

fori=1:

N;

forj=1:

L1;

k1=Ab*Y+b1*R;

k2=Ab*(Y+h*k1/2)+b1*R;

k3=Ab*(Y+h*k2/2)+b1*R;

k4=Ab*(Y+k3*h)+b1*R;

Y=Y+(k1+2*k2+2*k3+k4)*h/6;

end;

y=[y,Y(nout)];

t=[t,t(i)+h*L1];

end;

[t',y']

plot(t,y);xlabel('Timet/s')ylabel('幅度')

3-7用离散相似法仿真程序sp3_4.m重求题3-5输出

的数据与曲线,并与四阶龙格-库塔法比较精度。

解:

离散相似法:

P=[1,0.01,1,0;0,0.085,1,0.17;1,0.01,1,0;0,0.051,1,0.15;1,0.0067,70,0;

1,0.15,0.21,0;0,1,130,0;1,0.01,0.1,0;1,0.01,0.0044,0];

WIJ=[1,0,1;2,1,1;2,9,-1;3,2,1;4,3,1;4,8,-1;5,4,1;6,5,1;6,7,-0.212;7,6,1;8,6,1;9,7,1];

n=9;Y0=10;Yt0=[0,0,0,0,0,0,0,0,0];h=0.001;L1=10;T0=0;Tf=5;

nout=7;

A=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);

fork=1:

m

if(WIJ(k,2)==0);W0(WIJ(k,1))=WIJ(k,3);

elseW(WIJ(k,1),WIJ(k,2))=WIJ(k,3);

end;

end;

fori=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,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 育儿理论经验

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1