计算机仿真实验指导书含.docx
《计算机仿真实验指导书含.docx》由会员分享,可在线阅读,更多相关《计算机仿真实验指导书含.docx(12页珍藏版)》请在冰豆网上搜索。
计算机仿真实验指导书含
实验二初试MATLAB
一、实验目的
1.熟悉视窗下的MATLAB环境;
2.掌握MATLAB软件的基本使用方法;
3.应用MATLAB命令建立系统数学模型;
4.掌握利用MATLAB软件进行控制系统模型转换的方法。
二、实验属性(验证性)
三、实验仪器设备及器材
1.硬件要求
基于IBM-PC或与之完全相兼容的带有中央处理器的奔腾及其以上机器至少64KB内存,推荐使用128KB以上内存。
2.软件要求
安装有MATLAB,并且有MicrosoftWord7.0(office95)以上支持的操作系统。
四、实验要求
实验前要求熟悉相关MATLAB函数并预习实验的相关内容,写出预习报告。
实验时要按要求完成上机实验内容并且检验和调整程序,观察并记录仿真结果。
实验后写出实验报告,并对仿真实验结果进行分析、讨论。
五、实验内容与步骤
1.双击MATLAB6.5的图标,运行MATLAB时,展示在用户面前的为桌面环境的缺省界面窗口,如图2-1所示。
图2-1MATLAB的桌面环境
要求熟悉视窗下的MATLAB环境,分别观察和熟悉菜单项、工具栏、历史命令窗口、命令窗口、当前目录浏览器、工作空间浏览器、目录分类窗口、M文件编辑器/调试器、超文本帮助浏览器。
2.单击工具栏中帮助按钮(或者单击Help菜单中的MATLABHelp),打开MATLAB6.5的帮助系统,练习和熟悉MATLAB6.5的帮助系统的使用。
3.应用MATLAB命令编写相应M文件,建立图2-2系统的数学模型——闭环传递函数。
程序代码如下:
G1=tf([1],[0.01,1]);
G2=tf([0.17,1],[0.085,0]);
G3=tf([1],[0.01,1]);
G4=tf([0.15,1],[0.051,0]);
G5=tf([70],[0.0067,1]);
G6=tf([0.21],[0.15,1]);
G7=tf([130],[1,0]);
G8=0.212;
G9=tf([0.1],[0.01,1]);
G10=tf([0.0044],[0.01,1]);
G23=G2*G3;
G45=G4*G5;
G97=G9/G7;
G67=G6*G7;
GG1=feedback(G67,G8,-1);
GG2=G45*GG1;
GG3=feedback(GG2,G97,-1);
GG4=GG3*G23;
GG5=feedback(GG4,G10,-1);
GG6=GG5*G1
实验三基于MATLAB的系统时域分析
实验目的
1.熟悉MATLAB的各种绘图命令;
2.掌握基于MATLAB的控制系统时域分析方法。
实验属性(验证性)
实验仪器设备及器材
1.硬件要求
基于IBM-PC或与之完全相兼容的带有中央处理器的奔腾及其以上机器至少64KB内存,推荐使用128KB以上内存。
3.软件要求
安装有MATLAB,并且有MicrosoftWord7.0(office95)以上支持的操作系统。
实验要求
实验前要求熟悉相关MATLAB函数并预习实验的相关内容,写出预习报告。
实验时要按要求完成上机实验内容并且检验和调整程序,观察并记录仿真结果。
实验后写出实验报告,并对仿真实验结果进行分析、讨论。
实验内容
1.应用MATLAB的绘图命令,绘制y=3x2+4x-7在[-1010]之间的图形。
x=-10:
1:
10;
y=3.*x.^2+4.*x-7;
plot(x,y)
2.应用MATLAB的绘图命令,绘制y=sinx、y=cosx在一个周期内的图形。
x=pi*(0:
0.05:
2);
y1=sin(x);
y2=cos(x);
plot(x,y1,x,y2)
3.已知单位负反馈控制系统的开环传递函数为
,应用MATLAB命令编写相应M文件,绘制系统的
值分别为1.4,2.3,3.5时的单位阶跃响应曲线。
k=[1.4,2.3,3.5];
fori=1:
3;
num=k(i);
den=conv(conv([1,0],[0.5,1]),[4,1]);
g=tf(num,den);
gg=feedback(g,1,-1);
[y,t,x]=step(gg);
plot(t,y)
holdon
end
4.一个二阶系统为
,其中
{1,2,4},
{1.25,2,29},应用MATLAB命令编写相应M文件,绘制系统对应三组不同参数配合下,同一坐标轴里的三条阶跃响应曲线。
t=[0:
0.01:
10];
k=[1.25,2,29];
c=[1,2,4];
fori=1:
3;
num=k(i);
den=[1,c(i),k(i)];
g=tf(num,den);
[y,t,x]=step(g);
plot(t,y)
holdon
end
5.应用MATLAB命令编写相应M文件,分别绘制图3-1各控制系统的单位阶跃响应曲线并比较其动态性能.
g1=tf([1],[1,0,0]);
gg1=feedback(g1,1,-1);
[y1,t1,x1]=step(gg1);
subplot(221);
plot(t1,y1)
g2=tf([1,1],[1,0,0]);
gg2=feedback(g2,1,-1);
[y2,t2,x2]=step(gg2);
subplot(222);
plot(t2,y2)
g3=tf([1],[1,0,0]);
g4=tf([1,0],[1]);
gg3=feedback(g3,g4,-1);
ggg3=feedback(gg3,1,-1);
[y3,t3,x3]=step(ggg3);
subplot(223);
plot(t3,y3)
实验四系统的根轨迹与频域分析
实验目的
1.熟悉MATLAB的各种函数命令的调用格式;
2.掌握基于MATLAB的控制系统根轨迹与频域分析方法。
实验属性(综合性)
实验仪器设备及器材
1.硬件要求
基于IBM-PC或与之完全相兼容的带有中央处理器的奔腾及其以上机器至少64KB内存,推荐使用128KB以上内存。
4.软件要求
安装有MATLAB,并且有MicrosoftWord7.0(office95)以上支持的操作系统。
实验要求
实验前要求熟悉相关MATLAB函数并预习实验的相关内容,写出预习报告。
实验时要按要求完成上机实验内容并且检验和调整程序,观察并记录仿真结果。
实验后写出实验报告,并对仿真实验结果进行分析、讨论。
实验内容与步骤
1.熟悉和掌握MATLAB有关控制系统根轨迹法的函数命令及调用格式。
设单位反馈控制系统的开环传递函数如下,应用MATLAB命令编写相应M文件,绘制出相应的闭环根轨迹。
⑴
⑵
⑶
num1=1;
den1=conv([1,0],conv([0.2,1],[0.5,1]));
num2=[1,1];
den2=conv([1,0],[2,1]);
num3=[1,5];
den3=conv([1,0],conv([1,2],[1,3]));
subplot(2,2,1);
rlocus(num1,den1);
title('
(1)');
subplot(2,2,2);
rlocus(num2,den2);
title('
(2)');
subplot(2,2,3);
rlocus(num3,den3);
title('(3)')
;
2.熟悉和掌握MATLAB有关控制系统根轨迹法的函数命令及分析方法。
设单位反馈控制系统的开环传递函数为
,应用MATLAB命令编写相应M文件,要求:
①绘制闭环根轨迹;
②确定系统的临界稳定开环增益;
③确定与系统临界阻尼比相应的开环增益。
①
num=1;
den=conv(conv([1,0],[0.01,1]),[0.02,1]);
rlocus(num,den);
[k,poles]=rlocfind(num,den)
②
Selectapointinthegraphicswindow
selected_point=
k=149.6960
poles=
1.0e+002*
-1.4994
-0.0003+0.7065i
-0.0003-0.7065i
由上面可以看出:
当K<149.6960时,系统稳定;
当K>149.6960时,系统不稳定;
③
num1=149;
den1=conv(conv([1,0],[0.01,1]),[0.02,1]);
[num,den]=feedback(num1,den1,1,1);
figure
(1)
impulse(num,den,100);
num2=150;
den2=conv(conv([1,0],[0.01,1]),[0.02,1]);
[num,den]=feedback(num2,den2,1,1);
figure
(2)
impulse(num,den,10);
num3=151;
den3=conv(conv([1,0],[0.01,1]),[0.02,1]);
[num,den]=feedback(num3,den3,1,1);
figure(3)
impulse(num,den,100);
K=149
K=150
K=151
由此可得与系统临界阻尼比相应的开环增益为150
3.熟悉和掌握MATLAB有关控制系统根轨迹法的函数命令及分析方法。
设反馈控制系统中
,
,应用MATLAB命令编写相应M文件,要求:
①绘制闭环根轨迹,并判断闭环系统的稳定性;
②若改变反馈通路传递函数,使
,绘制相应的闭环根轨迹,并研究由于
改变所产生的效应。
①
num=1;
den=conv(conv([1,0],[1,2]),[1,5]);
rlocus(num,den);
[k,poles]=rlocfind(num,den)
Selectapointinthegraphicswindow
selected_point=
0.0118-3.1366i
k=
69.1077
poles=
-6.9848
-0.0076+3.1455i
-0.0076-3.1455i
②
num=[2,1];
den=conv(conv([1,0],[1,2]),[1,5]);
rlocus(num,den);
[k,poles]=rlocfind(num,den)
由上面可以看出:
当0<K<69.1077时,系统稳定;
当K>69.1077时,系统不稳定;
由图可得该系统在K的任意值下都稳定
当
时,相当于在系统中附加了一个Z=-0.5的开环零点,从而使根轨迹向s平面左边弯曲,改善了系统的稳定性
4.熟悉和掌握MATLAB有关控制系统频域分析法的函数命令及分析方法。
应用MATLAB命令编写相应M文件,绘制以下系统的频率特性曲线,并计算各系统的相角裕度和幅值裕度。
①
②
③
④
解:
num1=2;
den1=conv([2,1],[8,1]);
figure
(1);
bode(num1,den1);
[gm1,pm1,wcp1,wcg1]=margin(num1,den1)
num2=200;
den2=conv(conv([1,0,0],[1,1]),[10,1]);
figure
(2);
bode(num2,den2);
[gm2,pm2,wcp2,wcg2]=ma