MATLAB自动控制课程设计报告.docx
- 文档编号:1467548
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:20
- 大小:281KB
MATLAB自动控制课程设计报告.docx
《MATLAB自动控制课程设计报告.docx》由会员分享,可在线阅读,更多相关《MATLAB自动控制课程设计报告.docx(20页珍藏版)》请在冰豆网上搜索。
MATLAB自动控制课程设计报告
一、实训目的:
了解matlab软件的基本特点和功能,熟悉其界面,菜单和工具条;掌握线性系统模型的计算机表示方法,变换以及模型间的相互转换。
了解控制系统工具箱的组成,特点及应用;掌握求线性定常连续系统输出响应的方法,运用连续系统时域响应函数(impulse,step,lsim),得到系统的时域响应曲线。
掌握使用MATLAB软件作出系统根轨迹;利用根轨迹图对控制系统进行分析;掌握使用MATLAB软件作出开环系统的波特图,奈奎斯图;观察控制系统的开环频率特性,对控制系统的开环频率特性进行分析。
掌握MATLAB软件中simulink工具箱的使用;熟悉simulink中的功能模块,学会使用simulink对系统进行建模;掌握simulink的仿真方法。
二、软件介绍:
MATLAB是Mathworks公司开发的一种集数值计算、符号计算和图形可视化三大基本功能于一体的功能强大、操作简单的优秀工程计算应用软件。
MATLAB不仅可以处理代数问题和数值分析问题,而且还具有强大的图形处理及仿真模拟等功能。
从而能够很好的帮助工程师及科学家解决实际的技术问题。
MATLAB是矩阵实验室(MatrixLaboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连matlab开发工作界面接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB最重要的特点是易于扩展。
它允许用户自行建立完成指定功能的扩展MATLAB函数(称为M文件),从而构成适合于其它领域的工具箱,大大扩展了MATLAB的应用范围。
目前,MATLAB已成为国际控制界最流行的软件,控制界很多学者将自己擅长的CAD方法用MATLAB加以实现,出现了大量的MATLAB配套工具箱,如控制系统工具箱(controlsystemstoolbox),系统识别工具箱(systemidentificationtoolbox),鲁棒控制工具箱(robustcontroltoolbox),信号处理工具箱(signalprocessingtoolbox)以及仿真环境SIMULINK等。
三、实训原理
在自动控制系统中,对于线性定常系统,可以用常系数线性激分方程加以描述。
当给定输入的时间函数时,通过解微分方程,可以得出系统的输出响应。
根据输出响应的数学表达式可以画出时间响应曲线,直观地反映出系统工作的动态过程。
通常采用传递函数这种与微分方程等价的数学模型。
1、数学模型的建立
(1)、由结构图求传递函数,主要的函数有:
parallel,series,feedback等
(2)、模型变换
主要函数有:
tf2ss,ss2tf,ss2zp,tf2zp,zp2ss,zp2tf可以完成传递函数与状态空间模型间的变换。
函数c2d,c2dt,c2dm,d2c,d2cm可进行连续系统与离散系统间的变换。
函数ctrbf,obsvf可对状态空间实现进行可控、可观测性分解。
函数minereal可完成传递函数的零、极相消及状态空间模型的最小实现。
2、时域响应
主要函数有:
roots,step,impulse,lsim,initial
3、根轨迹
主要函数有:
pzmap,rlocus,rlocfind,sgrid,zgrid。
4、频率法
主要函数有:
bode,nyquist,margin
当系统复杂连接时其等效的整体传递函数可用simulink来实现传递函数的求取。
四、实训内容
(1)、用matlab语言编制程序,实现以下系统:
1)、G(s)=
输入程序:
num=[524018];
den=[14622];
G=tf(num,den)
运行结果:
Transferfunction:
5s^3+24s^2+18
-----------------------------
s^4+4s^3+6s^2+2s+2
2)、G(s)=
输入程序:
n1=4*[12];
n2=[166];
n3=[166];
num=conv(n1,conv(n2,n3));
d1=[11];
d2=[11];
d3=[11];
d4=[1325];
den1=conv(d1,d2);
den2=conv(d3,d4);
den=conv((den1,den2),[10]);
h=tf(num,den)
运行结果:
Transferfunction:
4s^5+56s^4+288s^3+672s^2+720s+288
-----------------------------------------------------
s^7+6s^6+14s^5+21s^4+24s^3+17s^2+5s
(2)、两环节G1,G2串联,求等效的整体传递函数G(s)
G1(s)=G2(s)=
输入程序:
num1=[2];
den1=[13];
sys1=tf(num1,den1);
num2=[7];
den2=[121];
sys2=tf(num2,den2);
G=sys1*sys2
运行结果:
Transferfunction:
14
---------------------
s^3+5s^2+7s+3
(3)、两环节G1,,G2并联,求等效的整体传递函数G(s)
G1(s)=G2(s)=
输入程序:
num1=[2];
den1=[13];
sys1=tf(num1,den1);
num2=[7];
den2=[121];
sys2=tf(num2,den2);
G=sys1+sys2
运行结果:
Transferfunction:
2s^2+11s+23
---------------------
s^3+5s^2+7s+3
(4)、已知系统结构如图,求闭环传递函数。
其中的两环节G1,G2分别为G1(s)=G2(s)=
输入程序:
num1=[3100];
den1=[1281];
sys1=tf(num1,den1);
num2=[2];
den2=[25];
sys2=tf(num2,den2);
G=feedback(sys1,sys2)
运行结果:
Transferfunction:
6s^2+215s+500
---------------------------
2s^3+9s^2+178s+605
(5)、已知某闭环系统的传递函数为G(s)=,求其单位阶跃响应曲线,单位脉冲响应曲线。
1)、单位阶跃响应
输入程序:
num=[1025];
den=[0.161.961025];
G=tf(num,den)
y=step(G);
plot(y);
figure
(1)
grid;
title('单位阶跃响应');
xlabel('时间')
ylabel('振幅')
运行结果:
图5.1.1系统的阶跃响应曲线
2)、单位脉冲响应
输入程序:
num=[1025];
den=[0.161.961025];
G=tf(num,den)
y=impulse(G);
figure
(2)
plot(y);
grid;
title('单位脉冲响应')
xlabel('时间')
ylabel('振幅')
运行结果:
图5.1.2系统的脉冲响应曲线
(6)、典型二阶系统的传递函数为,为自然频率,为阻尼比,试绘制出当=0.5,分别取-2,0,2,4,6,8,10时该系统的单位阶跃响应曲线;分析阻尼比分别为-0.5,-1时系统的稳定性。
输入程序:
i=0;
t=0:
0.1:
10;
forwn=-2:
10
i=i+1;
zeta=[0.5];
num=[wn^2];den=[1,2*zeta*wn,wn^2];
sys=tf(num,den);
y(:
i)=step(sys,t);
end
plot(t,y(:
1),t,y(:
2),t,y(:
3),t,y(:
4),t,y(:
5),t,y(:
6),t,y(:
7));
grid
xlabel('time(s)')
ylabel('stepresponse')
运行结果:
图6.1.1系统的单位跃阶响应曲线
输入程序:
假设wn=10,
num=[100];zeta=[-0.5,-1];t=0:
0.1:
10;y=zeros(length(t),2);
fori=1:
2
den=[1,2*zeta(i)*10,100];
sys=tf(num,den);
y(:
i)=step(sys,t);
end
plot(t,y(:
1),t,y(:
2));
f=[1,2*zeta(i)*10,100];
p=roots(f)
运行结果为:
p=
10
10
所以系统稳定。
(7)、设有一高阶系统开环传递函数为,试绘制该系统的零极点图和闭环根轨迹图。
1)系统的零极点
输入程序:
num=[0.0160.2181.4369.359];
den=[0.060.2680.6356.271];
sys=tf(num,den);
Pzmap(sys)
[ZPK]=Pzmap(sys)
运行结果:
Z=
-10.4027
-1.6111+7.3235i
-1.6111-7.3235i
P=
-5.7710
0.6522+4.2054i
0.6522-4.2054i
K=
0.2667
图7.1.1系统的零极点图
2)系统的闭环根轨迹
输入程序:
num=[0.0160.2181.4369.359];
den=[0.060.2680.6356.271];
sys=tf(num,den);
rlocus(sys)
运行结果:
图7.1.2系统的闭环根轨迹图
(8)、单位反馈系统前向通道的传递函数为:
试绘制该系统的Bode图和Nyquist曲线,说明软件绘制曲线与手动绘制曲线的异同。
1)、绘制该系统的Bode图:
输入程序:
num=[281282];
den=[151010510];
sys=tf(num,den);
margin(sys)
运行结果:
图8.1.1系统的Bode图
2)、系统的Nyquist图
输入程序:
num=[281282];
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 自动控制 课程设计 报告