《计算机仿真技术》试题含完整答案docx.docx

上传人:b****6 文档编号:15510247 上传时间:2023-07-05 格式:DOCX 页数:45 大小:288.82KB
下载 相关 举报
《计算机仿真技术》试题含完整答案docx.docx_第1页
第1页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第2页
第2页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第3页
第3页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第4页
第4页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第5页
第5页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第6页
第6页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第7页
第7页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第8页
第8页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第9页
第9页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第10页
第10页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第11页
第11页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第12页
第12页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第13页
第13页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第14页
第14页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第15页
第15页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第16页
第16页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第17页
第17页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第18页
第18页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第19页
第19页 / 共45页
《计算机仿真技术》试题含完整答案docx.docx_第20页
第20页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《计算机仿真技术》试题含完整答案docx.docx

《《计算机仿真技术》试题含完整答案docx.docx》由会员分享,可在线阅读,更多相关《《计算机仿真技术》试题含完整答案docx.docx(45页珍藏版)》请在冰点文库上搜索。

《计算机仿真技术》试题含完整答案docx.docx

《计算机仿真技术》试题含完整答案docx

精品文档

 

一、数值计算,编程完成以下各题(共20分,每小题5分)

1、脉冲宽度为d,周期为T的矩形脉冲的傅里叶级数如下式描述:

f()

d

2

sin(nd/T)

cos(2n)

[1

n

d/T

T

n1

当n150

,dT

14

1/2

1/2,绘制出函数

f()的图形。

解:

symsnt;

f=((sin(n*pi/4))/(n*pi/4))*cos(2*pi*n*t);

 

s=symsum(f,n,1,150);

y=(1+2*s)/4;

 

x=-0.5:

0.01:

0.5;

 

Y=subs(y,'t',x);

plot(x,Y)

 

2、画出函数f(x)(sin5x)2e0.05x25x5cos1.5x1.5x5.5x5在区间[3,

 

5]的图形,求出该函数在区间[3,5]中的最小值点xmin和函数的最小值fmin.

 

解:

程序如下

x=3:

0.05:

5;

 

y=(sin(5*x).^2).*exp(0.05*x.^2)-5*(x.^5).*cos(1.5*x)+1.5*abs(x+5.5)+x.^2.5;

mix_where=find(y==min(y));

 

xmin=x(mix_where);

holdon;

 

plot(x,y);

plot(xmin,min(y),'go','linewidth',5);

 

str=strcat('(',num2str(xmin),',',num2str(min(y)),')');

 

text(xmin,min(y),str);

Xlabel('x')

 

.

精品文档

 

Ylabel('f(x)')

 

经过运行后得到的图像截图如下:

 

运行后的最小值点xmin=4.6,fmin=-8337.8625

 

3、画出函数f(x)

cos2xe0.3x

2.5x在[1,3]区间的图形,并用编程求

解该非线性方程f(x)

0的一个根,设初始点为x02.

 

解:

x=1:

0.02:

3;

 

x0=2;

y=@(x)(cos(x).^2).*exp(-0.3*x)-2.5*abs(x);

 

fplot(y,[1,3]);

Xlabel('x')

 

Ylabel('f(x)')

X1=fzero('(cos(x).^2).*exp(-0.3*x)-2.5*abs(x)',x0)

 

运行后求得该方程的一个根为z=0.3256。

 

4、已知非线性方程组如下,编程求方程组的解,设初始点为

[10.5-1].

x2

x7

2

x

5z2

3

yz30

 

.

精品文档

 

解:

%在新建中建立函数文件fun2_4.m

functionf=fun2_4(x)

f=[x

(1).^2+x

(1)*sqrt(7)+2;x

(1)+5*x(3).^2-3;x

(2).*x(3)+3];

 

%非线性方程组求解主程序fxxfcz.m

x0=[10.5-1];

 

fsolve(@fun2_4,x0)

 

运行后结果为:

ans=-1.32293.2264-0.9298

即是x=-1.3229y=3.2264z=-0.9298.

 

二、控制系统仿真(15分)

 

.

精品文档

 

某控制系统的开环传递函数为:

6(1.5s

1)(0.12s

1)

G(S)

1)(0.05s

,要求:

编制一个完整

s(6s

1)

的程序完成以下各小题的要求,所绘制的图形分别定义为四张图。

1)

绘制出系统的阶跃信号响应曲线(响应时间为

0

~30s)

2)

绘制出系统的脉冲信号响应曲线(响应时间为

0

~20s)

3)

绘制出系统的斜坡信号响应曲线(响应时间为

0

~10s)

4)

绘制出系统的Bode图(要求频率范围为

102~102rad/sec)

 

解:

由传递函数知,该传递函数是将其用零极点描述法描述的,将其化为用传递函数表

1.08s2

9.72s

6

G(S)

6.05s2

s,所以num=[01.089.726],den=[0.36.0510]。

述的形式为:

0.3s3

%用传递函数编程求解

num=[01.089.726];

den=[0.36.0510];

 

sys=tf(num,den);

t1=0:

0.1:

30;

 

figure

(1)

step(sys)%绘制出系统的阶跃信号响应曲线

 

t2=0:

0.1:

20;

 

figure

(2)

impulse(sys)%绘制出系统的脉冲信号响应曲线

 

t3=0:

0.1:

10;

figure(3)

 

ramp=t3;

lsim(sys,ramp,t3);%绘制出系统的斜坡信号响应曲线

 

figure(4)

w=10^(-2):

10^2;

 

bode(sys,w);%绘制出系统的Bode图

 

.

精品文档

 

fig

(1)系统的阶跃信号响应曲线

 

fig

(2)系统的脉冲信号响应曲线

 

fig(3)系统的斜坡信号响应曲线

 

.

精品文档

 

fig(4)系统的Bode图

 

三、曲线拟合(15分)

 

已知某型号液力变矩器原始特性参数,要求用多项式拟合的方法编程完成以下各小题:

 

1)用二阶多项式拟合出K(i)曲线;用三阶多项式拟合出(i)曲线;用三阶多项式

 

拟合出B(i)曲线。

 

2)用不同的颜色和不同的线型,将K(i)的原始特性参数数据点和二阶拟合曲线绘制

 

在同一张图形中;将(i)的原始特性参数数据点和三阶拟合曲线绘制在同一张图形中;

B(i)的原始特性参数数据点和四阶拟合曲线绘制在同一张图形中。

3)运行程序,写出K(i)曲线的二阶拟合公式、

(i)曲线的三阶拟合公式和

B(i)

曲线的四阶拟合公式。

 

.

精品文档

 

解:

%曲线拟合(Curvefitting)

disp('InputData--i;OutputData--k(i),\eta(i),\lambdaB(i):

')x=[0.065,0.098,0.147,0.187,0.243,0.295,0.344,0.398,0.448,0.499];

y1=[2.37,2.32,2.23,2.15,2.05,1.96,1.87,1.78,1.69,1.59];

y2=[0.154,0.227,0.327,0.403,0.497,0.576,0.644,0.707,0.757,0.795];

 

y3=[26.775,26.845,27.147,27.549,28.052,28.389,28.645,28.756,28.645,28.243];

figure

(1)

 

pf1=polyfit(x,y1,2)

 

px1=polyval(pf1,x)

plot(x,px1,'k')

 

grid

xlabel('转速比i')

 

ylabel('变矩比K')

title('二阶多项式拟合k曲线')

%

pause

 

figure

(2)

 

pf2=polyfit(x,y2,3)

px2=polyval(pf2,x)

 

.

精品文档

 

plot(x,px2,'b')

 

grid

xlabel('转速比i')

ylabel('效率\eta')

title('三阶多项式拟合\eta曲线')

 

%

pause

 

figure(3)

pf3=polyfit(x,y3,4)

 

px3=polyval(pf3,x)

 

plot(x,px3,'-r')

grid

 

xlabel('转速比i')

ylabel('泵轮转矩系数\lambdaB')

 

title('四阶多项式拟合\lambdaB曲线')

%

 

figure(4)

pf1=polyfit(x,y1,2)

 

px1=polyval(pf1,x)

 

plot(x,y1,'or',x,px1,'k')

grid

 

xlabel('转速比i')

ylabel('变矩比K')

 

title('二阶多项式拟合k曲线')

Legend('原始数据','拟合曲线')

%将的原始特性参数数据点和二阶拟合曲线绘制在同一张图形中

pause

 

figure(5)

 

pf2=polyfit(x,y2,3)

px2=polyval(pf2,x)

 

.

精品文档

 

plot(x,y2,'*m',x,px2,'b')

 

grid

xlabel('转速比i')

ylabel('效率\eta')

title('三阶多项式拟合\eta曲线')

 

Legend('原始数据','拟合曲线',0)

%将的原始特性参数数据点和三阶拟合曲线绘制在同一张图形中

pause

figure(6)

 

pf3=polyfit(x,y3,4)

 

px3=polyval(pf3,x)

plot(x,y3,'pk',x,px3,'-r')

 

grid

xlabel('转速比i')

 

ylabel('泵轮转矩系数\lambdaB')

title('四阶多项式拟合\lambdaB曲线')

 

Legend('原始数据','拟合曲线',0)

%将的原始特性参数数据点和四阶拟合曲线绘制在同一张图形中

 

y1=poly2str(pf1,'x')

%

K(i)曲线的二阶拟合公式

y2=poly2str(pf2,'x')

%

(i)曲线的三阶拟合公式

y3=poly2str(pf3,'x')

%

B(i)曲线的四阶拟合公式

运行后的结果如下:

 

运行后的二阶,三阶,四阶拟合曲线函数为:

y1=0.01325x^2-1.8035x+2.491

y2=-0.12713x^3-1.6598x^2+2.4499x+0.0025474

 

y3=106.7407x^4-199.9852x^3+95.8404x^2-8.7272x+26.9754

 

.

精品文档

 

四、微分方程求解。

(25

分)

自己选择确定一个三阶微分方程,自己设置初始条件,用

ode45方法求微分方程的解。

要求:

(例如:

d3y(t)

2d2y(t)

4dy(t)

8y(t)

1,y(0)

0,dy(0)

1,

dt3

dt2

dt

dt

d2y(0)

dt

20)

1)仿真时间t=30

2)结果绘制在一张图中,包括y

t曲线,一阶y

t曲线,二阶y

t曲线,三阶yt

 

曲线

 

3)用图例命令分别说明四条曲线为“yt”,“yt”,“yt”,“yt”

 

4)定义横坐标为“时间”,纵坐标为“输出”,图形标题名称为“微分方程的解”

 

解:

系统方程为

d3y(t)

2d2y(t)

4dy(t)

8y(t)1,这是一个单变量三阶常微

dt3

dt2

dt

分方程。

将上式写成一个一阶方程组的形式,这是函数

ode45调用规定的格式。

令:

y

(1)

y

y

(2)y

y

(1)

 

y(3)yy

(1)y

(2)

 

y

(1)

y

(2)

y

(2)

y(3)

18y

(1)2y(3)4y

(2)

y(3)

 

函数文件程序:

functionydot=myfun1(t,y)

ydot=[y

(2);y(3);1-8*y

(1)-2*y(3)-4*y

(2)];

主文件程序:

 

.

精品文档

 

t=[030];

y0=[0;1;0];

[tt,yy]=ode45(@myfun1,t,y0);

y=(1-yy(:

3)-2*yy(:

2)-4*yy(:

1))/8;

plot(tt,y,'r',tt,yy(:

1),'k',tt,yy(:

2),'-g',tt,yy(:

3),'-.b');

legend('y-t','y-t','yˊˊˊ-t','y-ˊˊˊt')

title('微分方程的解')

xlabel('时间')

ylabel('输出')

运行程序后输出图形如下:

 

五、PID设计(25分)

 

自己选定一个控制系统,(例如:

某单位负反馈系统的开环传递函数为

 

400

G(s)),设计一个PID控制器,使系统响应满足较快的上升时间和

s(s230s200)

 

过渡过程时间、较小的超调量、静态误差尽可能小。

方法要求:

用Ziegler——Nichols方法

对三个参数Kp、Ki、Kd进行整定,并比较PID控制前后的性能,性能的比较要求编

 

.

精品文档

 

程实现(用未加PID控制的系统闭环传递函数阶跃响应与加PID控制后的闭环传递函数的

 

阶跃响应进行比较)

解:

1)分析:

用Ziegler——Nichols方法是一种经验方法,关键是首先通过根轨迹图找出Km和ωm,然后利用经验公式求增益,微分,积分时间常数。

程序:

ng=400;dg=[1302000];

rlocus(ng,dg);%画根轨迹图

axis([-301-2020]);grid

[km,pole]=rlocfind(ng,dg)

wm=imag(pole

(2))

kp=0.6*km

kd=kp*pi/(4*wm)

ki=kp*wm/pi

nk=[kdkpki],dk=[10]

pause

nd=conv(nk,ng),dd=conv(dk,dg)

[n1,d1]=feedback(ng,dg,1,1)

[n2,d2]=feedback(nd,dd,1,1);%加PID后的闭环传函

figure

step(n1,d1,2)

grid

holdon

pause

step(n2,d2,2)

holdoff

 

在程序中,首先使用rlocus及rlocfind命令求出系统穿越增益Km=12.2961

 

和穿越频率ωm=13.0220rad/s,然后使用Z—N方程求出参数。

 

.

精品文档

 

selected_point=-0.4325+12.9814i

kp=7.3777kd=0.4450ki=30.5807

 

为采用PID控制前后的系统闭环阶跃响应情况比较。

 

图6-1系统的根轨迹图

 

图6-2PID控制前后的系统闭环阶跃响应

 

.

精品文档

 

三参数KP,Ki,Kd的整定

利用系统的等幅振荡曲线的Ziegler——Nichols方法

 

控制类

控制器的控制参数

Kp

Ki

Kd

P

0.5Km

0

PI

0.45Km

0.54Km/Tm

0

PID

0.6Km

1.2Km/Tm

0.072Km/T

d

2)PID控制系统的开环传函为:

KpKDSKIG(s)

S

因为式中具有积分项,故如果G(s)是n型系统,加PID控制后系统变

为n+1型,可由下式根据给定的稳态误差指标确定参数

K。

i

limn

KIG(s)

1

sos

ess,

G(s)

400

s(s2

30s200)是个I型系统,由于系统的开环传递函数中有

因为

积分项,故为II

型系统,假定单位斜坡输入稳态误差

ess0.1,则可以计算出

Ki。

即:

 

K2sKiG(s)s02Ki

1

10Ki5

0.1

 

已知系统性能指标为:

系统相角裕量PM=80°,增益穿越频率n=4rad/s,

故利用这两个参数来求Kp,Kd。

程序如下:

ng=400;dg=[1302000];

 

.

精品文档

 

ki=5;

wgc=4;pm=80;

ngv=polyval(ng,j*wgc);dgv=polyval(dg,j*wgc);

g=ngv/dgv;

thetar=(pm-180)*pi/180;

ejtheta=cos(thetar)+j*sin(thetar);

eqn=(ejtheta/g)+j*(ki/wgc);

x=imag(eqn);

r=real(eqn);

kp=r

kd=x/wgc

ifki~=0

dk=[10];nk=[kdkpki];

elsedk=1;nk=[kdkp];

end

pause

nd=conv(nk,ng),dd=conv(dk,dg)

[n1,d1]=feedback(ng,dg,1,1)

[n2,d2]=feedback(nd,dd,1,1)%加PID控制后的闭环系统传递函数

pause

[g1m,p1m,wpc1,wgc1]=margin(ng,dg)

[g2m,p2m,wpc2,wgc2]=margin(nd,dd)

%幅值裕度,相角裕度,相频曲线穿越-180°时的频率,截止频率

w=logspace(-1,2,200);

pause

figure

bode(ng,dg,w)

grid

holdon

 

.

精品文档

 

bode(nd,dd,w)

holdoff

figure

step(n1,d1,5)

grid

holdon

pause

step(n2,d2,5)

holdoff

可以得到:

 

KP2.0204

Kd0.5281

p2m=80.0044

wgc2=4.0004(即:

系统相角裕量PM=80°,增益穿越

频率

n=4rad/s)

 

图6-3系统Bode图

 

.

精品文档

 

图6-4闭环系统的阶跃响应

 

.

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2