系统仿真实验报告Word文档格式.docx

上传人:b****3 文档编号:17679385 上传时间:2022-12-08 格式:DOCX 页数:35 大小:1.48MB
下载 相关 举报
系统仿真实验报告Word文档格式.docx_第1页
第1页 / 共35页
系统仿真实验报告Word文档格式.docx_第2页
第2页 / 共35页
系统仿真实验报告Word文档格式.docx_第3页
第3页 / 共35页
系统仿真实验报告Word文档格式.docx_第4页
第4页 / 共35页
系统仿真实验报告Word文档格式.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

系统仿真实验报告Word文档格式.docx

《系统仿真实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《系统仿真实验报告Word文档格式.docx(35页珍藏版)》请在冰豆网上搜索。

系统仿真实验报告Word文档格式.docx

b=A/B

c=inv(A)*B

d=B*inv(A)

a=

-3-4

45

b=

3.0000-2.0000

2.0000-1.0000

c=

-3.0000-4.0000

4.00005.0000

d=

-1.00002.0000

-2.00003.0000

7.roots(p)

symsx;

a=3*x.^3+2*x+1;

p=[3,0,2,1];

roots(p)

0.2012+0.8877i

0.2012-0.8877i

-0.4023

8.poly

poly(A)

1.0000-5.0000-2.0000

9.conv、deconv

A=[12];

B=[56];

a=conv(A,B)

b=deconv(A,B)

51612

0.2000

10.A*B与A.*B的区别

B=[56]'

;

a=A*B

b=A.*B

17

512

11.who与whos的使用

who

whos

Yourvariablesare:

A

NameSizeBytesClassAttributes

A2x232double

12.disp、size(a)、length(a)的使用

a='

ABCDEF'

disp(a)

a=[1234];

B=size(a)

C=length(a)

ABCDEF

B=

14

C=

4

三、实验要求

根据实验内容和相关命令进行实验,自拟输入元素,将上述各命令的输入和输出结果写成实验报告一(全部实验完成后交实验报告)。

实验二MATLAB绘图命令

熟悉MATLAB基本绘图命令,掌握如下绘图方法:

1.坐标系的选择、图形的绘制;

2.图形注解(题目、标号、说明、分格线)的加入;

3.图形线型、符号、颜色的选取。

1.plot2.loglog3.semilogx4.semilogy

5.polar6.title7.xlabel8.ylabel

9.text10.grid11.bar12.stairs

13.contour

三、实验举例

1.t=[0:

pi/360:

2*pi*22/3];

x=93*cos(t)+36*cos(t*4.15);

y=93*sin(t)+36*sin(t*4.15);

plot(y,x),grid;

%绘制二维坐标网格图

2.t=0:

0.05:

100;

x=t;

y=2*t;

z=sin(2*t);

plot3(x,y,z,'

r-.'

)%绘制三维坐标图

3.t=0:

pi/20:

2*pi;

y=sin(x);

stairs(x,y)%绘制阶梯图

4.th=[pi/200:

pi/200:

2*pi]'

r=cos(2*th);

polar(th,r),grid%在网格里画极坐标图

5.th=[0:

pi/10:

2*pi];

x=exp(j*th);

%x为复数

plot(real(x),imag(x),'

r*'

);

%以实部为横轴,虚部为纵轴画图

grid;

四、实验要求

在两种或两种以上坐标系绘制3~5个图形,要有颜色、图形种类、注解的不同

实验结果写成实验报告二(全部实验完成后交实验报告)。

实验三MATLAB程序设计

1.熟悉MATLAB程序设计的方法和思路;

2.掌握循环、分支语句的编写,学会使用lookfor、help命令。

二、程序举例

1.计算1~1000之内的斐波那契亚数列

f=[1,1];

i=1;

whilef(i)+f(i+1)<

1000

f(i+2)=f(i)+f(i+1);

i=i+1;

end

f,i

f=

Columns1through14

1123581321345589144233377

Columns15through16

610987

i=

15

2.m=3;

n=4;

fori=1:

m

forj=1:

n

a(i,j)=1/(i+j-1);

end

formatrat

a

11/21/31/4

1/21/31/41/5

1/31/41/51/6

3.m=3;

1/31/41/51/6

请比较程序2与程序3的区别

4.x=input('

请输入x的值:

'

ifx==10

y=cos(x+1)+sqrt(x*x+1);

else

y=x*sqrt(x+sqrt(x));

y

请输入x的值:

2

y=

2391/647

5.去掉多项式或数列开头的零项

p=[0001302009];

length(p),ifp

(1)==0,p=p(2:

length(p));

end;

end;

p

p=

Columns1through5

13020

Columns6through7

09

6.建立MATLAB的函数文件,程序代码如下,以文件名ex2_4.m存盘

functionf=ffibno(n)

%ffibno计算斐波那契亚数列的函数文件

%n可取任意自然数

%程序如下

f=[1,1];

>

edit

ex2_4(200)

Columns1through5

11235

Columns6through10

813213455

Columns11through12

89144

lookforffibno

ex2_4-ffibno计算斐波那契亚数列的函数文件

helpex2_4

ffibno计算斐波那契亚数列的函数文件

n可取任意自然数

程序如下

输入完毕后在MATLAB的命令窗口输入ex2_4(200),得到运行结果。

在MATLAB的命令窗口输入lookforffibno,得到结果:

ex2_4.m:

%ffibno计算斐波那契亚数列的函数文件

在MATLAB的命令窗口输入helpex2_4,得到结果:

ffibno计算斐波那契亚数列的函数文件

n可取任意自然数

程序如下

三、程序设计题

用一个MATLAB语言编写一个程序:

输入一个自然数,判断它是否是素数,如果是,输出“Itisoneprime”,如果不是,输出“Itisnotoneprime.”。

要求通过调用子函数实现。

最好能具有如下功能:

①设计较好的人机对话界面,程序中含有提示性的输入输出语句。

②能实现循环操作,由操作者输入相关命令来控制是否继续进行素数的判断。

如果操作者希望停止这种判断,则可以退出程序。

③如果所输入的自然数是一个合数,除了给出其不是素数的结论外,还应给出至少一种其因数分解形式。

例:

输入6,因为6不是素数。

则程序中除了有“Itisnotoneprime”的结论外,还应有:

“6=2*3”的说明。

closeall;

c=1;

c=input('

是否进行素数运算1为是0为否:

'

whilec==1

a=input('

请输入一个自然数:

iffactor(a)==a

disp('

Itisoneprime'

else

Itisnotoneprime'

b=factor(a);

fprintf('

%3d='

a)

forj=1:

(length(b)-1)

%3d*'

b(j))

end

%3d\n'

b(length(b)))

20

Itisnotoneprime

20=2*2*5

Itisoneprime

1.参照已知程序,改动程序中的参数和输入量,验证输出结果。

2.使用lookfor、help命令,验证输出结果

3.实验结果写成实验报告三(全部实验完成后交实验报告)。

实验四MATLAB的符号计算与SIMULINK的使用

1.掌握MATLAB符号计算的特点和常用基本命令;

2.掌握SIMULINK的使用。

1.求矩阵对应的行列式和特征根

a=sym('

[a11a12;

a21a22]'

da=det(a)

ea=eig(a)

da=

a11*a22-a12*a21

ea=

1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)

1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)

2.求方程的解(包括精确解和一定精度的解)

r1=solve('

x^2-x-1'

rv=vpa(r1)

rv4=vpa(r1,4)

rv20=vpa(r1,20)

r1=

1/2*5^(1/2)+1/2

-1/2*5^(1/2)+1/2

rv=

1.6180339887498948482045868343656

-.61803398874989484820458683436560

rv4=

1.618

-.6180

rv20=

1.6180339887498948482

-.61803398874989484820

3.a=sym('

a'

b=sym('

b'

c=sym('

c'

d=sym('

d'

%定义4个符号变量

w=10;

x=5;

y=-8;

z=11;

%定义4个数值变量

A=[a,b;

c,d]%建立符号矩阵A

B=[w,x;

y,z]%建立数值矩阵B

det(A)%计算符号矩阵A的行列式

det(B)%计算数值矩阵B的行列式

A=

[a,b]

[c,d]

105

-811

a*d-b*c

150

4.symsxy;

s=(-7*x^2-8*y^2)*(-x^2+3*y^2);

expand(s)%对s展开

collect(s,x)%对s按变量x合并同类项(无同类项)

factor(ans)%对ans分解因式

7*x^4-13*x^2*y^2-24*y^4

(8*y^2+7*x^2)*(x^2-3*y^2)

5.对方程AX=b求解

A=[34,8,4;

3,34,3;

3,6,8];

b=[4;

6;

2];

X=linsolve(A,b)%调用linsolve函数求解

A\b%用另一种方法求解

X=

0.0675

0.1614

0.1037

ans=

6.对方程组求解

a11*x1+a12*x2+a13*x3=b1

a21*x1+a22*x2+a23*x3=b2

a31*x1+a32*x2+a33*x3=b3

symsa11a12a13a21a22a23a31a32a33b1b2b3;

A=[a11,a12,a13;

a21,a22,a23;

a31,a32,a33];

b=[b1;

b2;

b3];

XX=A\b%用左除运算求解

XX=

(a12*a23*b3-a12*b2*a33+a13*a32*b2-a13*a22*b3+b1*a22*a33-b1*a32*a23)/(a11*a22*a33-a11*a32*a23-a21*a12*a33+a32*a21*a13-a22*a31*a13+a31*a12*a23)

-(a11*a23*b3-a11*b2*a33-a21*a13*b3-a23*a31*b1+b2*a31*a13+a21*b1*a33)/(a11*a22*a33-a11*a32*a23-a21*a12*a33+a32*a21*a13-a22*a31*a13+a31*a12*a23)

(a32*a21*b1-a11*a32*b2+a11*a22*b3-a22*a31*b1-a21*a12*b3+a31*a12*b2)/(a11*a22*a33-a11*a32*a23-a21*a12*a33+a32*a21*a13-a22*a31*a13+a31*a12*a23)

7.symsabtxyz;

f=sqrt(1+exp(x));

diff(f)%未指定求导变量和阶数,按缺省规则处理

f=x*cos(x);

diff(f,x,2)%求f对x的二阶导数

diff(f,x,3)%求f对x的三阶导数

f1=a*cos(t);

f2=b*sin(t);

diff(f2)/diff(f1)%按参数方程求导公式求y对x的导数

1/2/(1+exp(x))^(1/2)*exp(x)

ans=

-2*sin(x)-x*cos(x)

-3*cos(x)+x*sin(x)

-b*cos(t)/a/sin(t)

三、SIMULINK的使用

1.在命令窗口中输入:

simulink(回车)得到如下simulink模块:

2.双击打开各模块,选择合适子模块构造控制系统,例如:

3.双击各子模块可修改其参数,选择Simulation菜单下的start命令运行仿真,在示波器(Scope)中观察结果。

1.符号计算部分:

参照所给示例,自拟输入量,验证求矩阵的特征根、行列式及

方程求解命令

2.Simulink部分:

逐一熟悉各模块的使用,对下面的随动系统模型进行仿真,

实验报告中包含:

连好的系统模型及用Scope观测的结果

其中:

R(s)为阶跃输入,C(s)为输出

3.实验结果写成实验报告四

备注:

全部实验完成后,在实验报告的封面注明:

课程、班级、姓名、学号等信息。

按时交实验报告。

实验五MATLAB在控制系统分析中的应用

1.求下面系统的单位阶跃响应

%程序如下:

num=[4];

den=[1,1,4];

step(num,den)

[y,x,t]=step(num,den);

tp=spline(y,t,max(y))%计算峰值时间

max(y)%计算峰值

tp=

1.6062

1.4441

2.求如下系统的单位阶跃响应

a=[0,1;

-6,-5];

b=[0;

1];

c=[1,0];

d=0;

[y,x]=step(a,b,c,d);

plot(y);

grid;

3.求下面系统的单位脉冲响应:

den=[1,1,4];

impulse(num,den)

4.已知二阶系统的状态方程为:

求系统的零输入响应和脉冲响应。

%程序如下:

a=[0,1;

-10,-2];

b=[0;

1];

c=[1,0];

d=[0];

x0=[1,0];

subplot(1,2,1);

initial(a,b,c,d,x0);

subplot(1,2,2);

impulse(a,b,c,d);

5:

系统传递函数为:

输入正弦信号时,观察输出信号的相位差。

num=[1];

den=[1,1];

t=0:

0.01:

10;

u=sin(2*t);

holdon

plot(t,u,'

r'

lsim(num,den,u,t)

6.有一二阶系统,求出周期为4秒的方波的输出响应

num=[251];

den=[123];

t=(0:

0.1:

10);

period=4;

u=(rem(t,period)>

=period./2);

%看rem函数功能

lsim(num,den,u,t);

7.已知开环系统传递函数,绘制系统的根轨迹,并分析其稳定性

num=[12];

den1=[143];

den=conv(den1,den1);

figure

(1)

rlocus(num,den);

[k,p]=rlocfind(num,den)

figure

(2)

k=55;

num1=k*[12];

den=[143];

den1=conv(den,den);

[num,den]=cloop(num1,den1,-1);

impulse(num,den);

title('

impulseresponse(k=55)'

figure(3)

k=56;

impulseresponse(k=56)'

Selectapointinthegraphicswindow

selected_point=

2.0142-8.1739i

k=

766.4105

p=

-11.2238

2.6126+7.8623i

2.6126-7.8623i

-2.0013

8.作如下系统的bode图:

n=[1,1];

d=[1,4,11,7];

bode(n,d);

9.系统传函如下

求有理传函的频率响应,然后在同一张图上绘出以四阶伯德近似表示的系统频率响应

num=[1];

den=conv([12],conv([12],[12]));

w=logspace(-1,2);

t=0.5;

[m1,p1]=bode(num,den,2);

p1=p1-t*w'

*180/pi;

[n2,d2]=pade(t,4);

numt=conv(n2,num);

dent=(conv(den,d2));

[m2,p2]=bode(numt,dent,w);

subplot(2,1,1);

semilogx(w,20*log10(m1),w,20*log10(m2),'

g--'

gridon;

title('

bodeplot'

xlabel('

frequency'

ylabel('

gain'

subplot(2,1,2);

semilogx(w,p1,w,p2,'

gridon;

phase'

10.已知系统模型为

求它的幅值裕度和相角裕度

n=[3.5];

d=[1232];

[Gm,Pm,Wcg,Wcp]=margin(n,d)

Gm=

1.1433

Pm=

7.1688

Wcg=

1.7323

Wcp=

1.6541

11.二阶系统为:

令wn=1,分别作出ξ=2,1,0.707,0.5时的nyquist曲线。

n=[1];

d1=[1,4,1];

d2=[1,2,1];

d3=[1,1.414,1];

d4=[1,1,1];

nyquist(n,d1);

nyquist(n,d2);

nyq

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

当前位置:首页 > 初中教育 > 政史地

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

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