MATLAB论文基于MATLAB的自动控制系统及案例分析.docx
- 文档编号:8860612
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:19
- 大小:151.87KB
MATLAB论文基于MATLAB的自动控制系统及案例分析.docx
《MATLAB论文基于MATLAB的自动控制系统及案例分析.docx》由会员分享,可在线阅读,更多相关《MATLAB论文基于MATLAB的自动控制系统及案例分析.docx(19页珍藏版)》请在冰豆网上搜索。
MATLAB论文基于MATLAB的自动控制系统及案例分析
MATLAB论文
基于MATLAB的自动控制系统及案例分析
姓名
学号
指导老师
物理与电子工程学院
基于MATLAB的自动控制系统及案例分析
引言
摘要:
MATLAB是一种数值计算型科技应用软件,其全称是MatrixLaboratory,也即矩阵实验室。
MATLAB具有编程直观简单,用户界面友善,开放性强等优点,因此自面世以来,在国际上很快得到推广和应用.
MATLAB具有强大的数值计算与符号计算功能,以及强大的数据可视化、人机智能交互能力,其发展不断推陈出新.现今的MATLAB拥有更丰富的数据类型和结构、更友善的面向对象、更加快速精美的图形可视、更广泛的数学和数据分析资源、更多的应用开发工具.
这里主要介绍MATLAB在控制器设计、仿真和分析方面的功能,即MATLAB的控制工具箱。
目前MATLAB软件已经成为控制领域最流行的设计和计算的工具之一。
本文将主要介绍运用MATLAB进行控制系统分析与设计的全过程,并结合具体实例深入探讨[1]。
关键词:
MATLAB自动控制系统时域频域
Introduction
Abstract:
MATLABisanumericalcomputingtechnologyapplicationsoftware,anditsfullnameisMatrixLaboratory,whichiscalledthematrixlaboratory。
MATLABhasmanyadvantages,suchassimpleprogramming,simpleinterface,friendlyuserinterfaceandstrongopenness,soithasbeenpopularizedandappliedquicklyintheworldsinceitcameout.
MATLABhaspowerfulfunctionsofnumericalcalculationandsymboliccomputation,aswellaspowerfuldatavisualizationandhuman-computerintelligentinteractiveability,anditsdevelopmentisconstantlybringingforthnewideas。
Today'sMATLABhasaricherdatatypeandstructure,amorefriendlyobject-oriented,faster,morebeautifulgraphicsvisualization,awiderrangeofmathematicalanddataanalysisresources,andmoreapplicationdevelopmenttools。
ThisarticlemainlyintroducesthefunctionofMATLABincontrollerdesign,simulationandanalysis,thatisMATLABcontroltoolbox.Atpresent,MATLABsoftwarehasbecomeoneofthemostpopulardesignandcalculationtoolsinthefieldofcontrol。
ThispapermainlyintroducesthewholeprocessoftheanalysisanddesignofthecontrolsystembyusingMATLAB。
Keywords:
MATLABAutomaticcontrolsystemTimedomainFrequencydomain
一绪论
1.1MATLAB基础介绍
MATLAB程序设计语言是MathWorks公司于20世纪80年代推出的高性能的数值矩阵计算软件。
其功能强大,适用范围广泛,提供了丰富的库函数,编程简单、易懂、效率高.MATLAB无论作为科学研究与工程运算的工具,还是作为控制系统方阵的教学工具,都是必不可少的.目前,MATLAB已经成为国际学术界公认的最流行的科学计算软件。
MATLAB主要由以下三个部分组成,下面分别加以介绍[2]。
1、MATLAB图形处理系统
这是MATLAB图形系统的基础,它包括生成二维数据和三维数据可视化、图像处理、动画及演示图形和创建完整的图形用户接口的命令。
2、MATLAB数学函数库
MATLAB提供了非常丰富的数学计算函数,可以进行简单和复杂的数学计算,比如矩阵求逆、级数求和、贝塞尔函数和快速傅里叶变换等.
3、MATLAB应用程序接口
MATLAB用户能够在MATLAB环境中使用其它程序,也可以从MATLAB中调用其它程序。
1.2研究内容
1、熟悉自动控制系统理论和MATLAB软件。
2、了解MATLAB软件的编程思路与方法。
3、完成使用MATLAB软件对自动控制系统进行时域、频域分析与仿真和线性系统状态空间分析的方法,编写相关程序。
4、对仿真结果进行分析,评价控制系统的性能。
二自动控制系统基础
2。
1自动控制系统的概述
在现代社会生产过程中,为了提高产品的质量,需要对生产设备和生产过程进行自动控制,使被控的量按照期望的规律去变化。
这些被控制的设备称为控制对象,被控制的量称为被控量或输出量。
生产设备或生产过程中,一般只考虑对输出量影响最大的物理量,这些量称为输入量。
输入量可以分为两种类型,一种保证对象的行为达到所要求的目标,这类输入量称为控制量.另一种是妨碍对象的行为达到目标,这一类输入量称为扰动量。
自动控制系统是在无人直接参与的情况下,可使生产过程按照期望的运行规律去运行的控制系统.系统是完成要求和任务的部分的组合[2]。
2。
2开环、闭环控制系统
如果控制系统的输出量对系统运行过程或结果没有控制作用,这种系统称为开环控制系统。
图2-1表示了开环控制系统输入量与输出量之间的关系。
图2—1开环控制系统示意图
这里,输入量直接作用于控制对象,不需要将输出量反馈到输入端与输入量进行比较,所以只有输入量影响输出量.当出现扰动时,若没有人的干预,输出量将不能按照输入量所希望的状态工作.
闭环控制系统是把输出量检测出来,再反馈到输入端与输入量进行相减或者相加,利用比较后的偏差信号,经过控制器对控制对象进行控制的系统。
图2-2表示了闭环控制系统输入量、输出量和反馈量之间的关系。
图2-2闭环控制系统示意图
这种系统把输出量经检查后,变成输入量相同的物理量反馈到输入端形成闭环,参与系统的控制,所以称为闭环控制系统。
由于系统是根据负反馈原理按偏差进行控制的,所以也称为反馈系统或偏差控制系统。
2.3控制系统的性能要求
在控制过程中,当扰动量发生变化时,通过反馈控制的作用,经过短暂的过渡过程,被控量又恢复到原来的稳定值,或按照新的给定量稳定下来,这时系统从原来的平衡状态过渡到新的平衡状态,我们把被控量处于变化的状态称为动态或暂态,而把被控量在相对稳定的状态称为静态或稳态。
对控制系统性能有三个方面的要求[3]。
1、稳定性
稳定性定义为系统受到外扰或内扰作用以后,恢复原来状态或形成新的平衡状态的能力.稳定是系统正常工作的首要条件.
2、快速性
自动控制系统不仅要满足动态性能的要求,还应能满足暂态性能的要求.为了满足生产过程中的要求,往往要求系统暂态过程不但是稳定的,而且进行得越快越好,振荡程度越小越好。
3、准确性
稳态误差是指系统达到稳定时,输出量的实际值和期望值之间的误差。
这一性能反映了稳定时系统的控制精度,稳态误差越小,系统性能越好.
给定稳态误差是在参考输入信号的作用下,当系统达到稳定后,其稳态输出与参考输入所要求的期望输出之差.
三自动控制系统的时域分析
3.1时域分析简介
时域分析法是根据微分方程,利用拉氏变换直接求出系统的时间响应,然后按照响应曲线来分析系统的性能,是一种直接在时域中对系统进行分析的方法,具有直观和准确的优点。
控制系统时域分析法最常用的方法有两种:
一是当输入为单位阶跃信号时,求出系统的响应;二是当输入为单位冲激信号时,求出系统的响应[3].
3.2动态过程与动态性能
动态过程又称为过渡过程或瞬态过程,是指系统在典型输入信号作用下,其输出量从初始状态到最终状态的响应过程。
通常,在单位阶跃信号作用下,稳定系统的动态过程随时间t变化的指标称为动态性能指标.控制系统的动态性能指标一般有以下几个:
1、上升时间
系统响应从零首次上升到稳态值h(∞)所需的时间定义为上升时间.
2、延时时间
从输入信号开始施加时起,系统输出时间响应第一次达到稳态值50%所需要的时间定义为延时时间.
3、峰值时间
系统响应超过其终值达到第一个峰值所需要的时间定义为峰值时间。
它反映了系统对输入信号反应的快速性,值越小,系统对输入信号反映越快。
4、调整时间
响应达到并保持在终值±2%或±5%误差内所需要的最短时间定义为调节时间。
在默认情况下MATLAB计算动态性能时,取误差范围为±2%。
它反应了动态过程进行得快慢,是系统快速性指标,值越小,系统的快速性就越好。
5、超调量
%
响应的最大偏差量h(t
)与终值h(∞)的差与终值h(∞)之比的百分数,定义为超调量,即:
(3—1)
它反应了动态过程的平稳性,值越小,平稳性越好。
3.3稳态过程与稳态性能
稳态过程又称为稳态响应,指系统在典型输入信号作用下,当时间t趋于无穷大时,系统输出量的表现方式。
它表现系统输出量最终复现输入量的程度,提供系统有关稳态误差的信息[4]。
稳态误差是控制系统控制准确度的一种量度,也称为稳态性能,若时间趋于无穷大时系统的输出量不等于输入量或输入量的确定函数,则系统存在稳态误差。
对于图3—2所示的控制系统,输入信号
至误差信号
之间的误差传递函数为
(3-2)
则系统的误差信号为
(3—3)
当
的极点均位于
左半平面时,应用拉普拉斯变换的终值定理可求出系统的稳态误差为
(3-4)
3.4控制系统的稳定性
稳定性是控制系统的重要性能,也是系统能正常运行的首要条件。
系统原处于某一平衡状态,若它受到瞬间的某一扰动作用而偏离原来的平衡状态,当扰动撤消后,系统仍能回到原有的平衡状态,则称该系统是稳定的.反之,系统为不稳定的。
线性系统的稳定性只取决于系统本身,与外界无关。
若系统是连续时间控制系统,其闭环传递函数的极点均严格位于s左半平面,则此系统是稳定系统.若系统是离散时间控制系统,其闭环特征根位于z平面上的单位圆周内部,即其闭环特征根的模小于1。
3.5时域分析法的MATLAB实现
3。
5。
1控制系统的动态性能分析
MATLAB提供了线性定常系统的各种时间响应函数和各种动态性能分析函数,部分函数如下表所示[5]。
本文主要介绍step()函数和impulse()函数.
表3—1部分时域响应分析函数
函数名称
功能
step
计算并绘制线性定常系统阶跃响应
impulse
计算并绘制连续时间系统冲激响应
initial
计算并绘制连续系统零输入响应
lism
仿真线性定常连续模型对任意输入的响应
dstep
计算并绘制离散时间系统阶跃响应
1、step()函数
功能:
求线性定常系统的单位阶跃响应。
其调用格式如下:
step(sys)%绘制系统sys的单位阶跃响应曲线
【例3—1】已知典型系统的传递函数为
,求系统的单位阶跃响应。
MATLAB编程:
sys=tf(2,conv([2,1],[8,1]));
step(sys);
xlabel('t');
ylabel('y’);
title(’单位阶跃响应’);
gridon;
图3—1系统的单位阶跃响应图形
由图可知:
上升时间
=18.5s;峰值时间
〉45s,此值大,说明系统对输入信号反应慢;调节时间
=33.6s,此值较大,系统的快速性差,输出信号复现输入信号的能力弱;超调量
%=0%,此值小,说明系统的平稳性较好。
2、impulse()函数
功能:
求线性定常系统的单位冲激响应。
其调用格式若下:
impulse(sys)%绘制系统的单位冲激响应曲线
【例3—2】已知典型系统的传递函数为
,求系统的冲激响应.
MATLAB编程:
sys=tf(conv(20,[1,1]),conv([1,0],conv([1,5],[1,2,10])));
impulse(sys);
xlabel('t');
ylabel('y’);
title(’单位冲激响应’);
gridon;
图3-2系统的冲激响应图形
3。
5.2控制系统的稳定性分析
应用MATLAB可以方便快捷的对控制系统进行时域分析。
由于控制系统的闭环极点在s平面上的分布决定了控制系统的稳定性,所以要判断控制系统的稳定性,只需要确定控制系统闭环极点在s平面上的分布。
在MATLAB中,可以使用函数pzmap()绘制系统的零极点图判断系统的稳定性.
【例3-3】已知系统的传输函数为
判断该系统的稳定性。
MATLAB编程:
sys=tf(200,conv([1,0,0],conv([1,5],[1,2,10])));
pzmap(sys);
xlabel('实轴');
ylabel('虚轴');
title(’系统的零极点图');
gridon;
图3—3系统零极点分布图
由图3-3可知,该系统所有极点位于s的左半平面,所以该系统是稳定系统。
四自动控制系统的频域分析
4。
1频域分析法简介
频域分析法是自动控制领域中应用又一种数学工具频率特性来研究控制系统过程性能,即稳定性、快速性及稳定精度的方法。
这种方法可以直观地表达出系统频率特性,而且分析方法简单,物理概念明确,可以从系统的频率特性上直接地看出物理实质。
频域分析法里主要用到2种曲线:
Bode图、Nyquist曲线图.Bode图在频域分析法里占有重要的地位[6]。
4.2有关频率分析法的几个概念
1、频率响应
当线性系统受到正弦信号作用时,系统稳定后输出的稳态分量仍然是同频率的正弦信号,这种过程叫做系统的频率响应.
2、频率特性
正弦信号的作用下,系统输出的稳态分量为同频率的正弦信号,其振幅与输入正弦信号振幅的比相对于正弦信号角频率间的关系
叫做幅频特性,其相位与输入正弦信号的相位之差相对于正弦信号角频率间的关系
叫做相频特性。
系统频率响应与输入正弦信号的复数比叫做系统的频率特性。
记作:
(4—1)
系统的频率特性与系统的传递函数之间有着简单而直接的关系:
(4-2)
3、Bode图
Bode图即对数频率特性曲线。
Bode图有两条曲线,分别是对数幅频特性曲线和对数相频特性曲线.横坐标都是角频率
,是按常用对数(以10为底的对数)刻度的,即
,其单位是弧度每秒。
对数相频特性的纵坐标是
,等分刻度,其单位为度或弧度;而对数幅频特性的纵坐标是
=20lg
也是等分刻度,其单位为分贝。
4、幅相特性
系统的频率特性
里既有振幅信息又有相位信息,所以又叫做系统的幅相特性。
幅相特性图形化的形式,即是幅相特性曲线。
4.3频率特性的性能指标
采用频域方法进行线性控制系统设计时,时域内采用的诸如超调量,调整时间等描述系统性能的指标不能使用,需要在频域内定义频域性能指标[7],主要有以下几个:
1、峰值
它是幅频特性
的最大值,一般来说,峰值的大小表明闭环控制系统相对稳定性的好坏,峰值越大,表明系统对某个频率的正弦信号反映强烈。
2、带宽
它是幅频特性
的数值衰减到0。
707
时对应的角频率。
带宽用于衡量控制系统的快速性,带宽越宽,表明系统复现快速变化信号的能力越强,阶跃响应的上升时间和调整时间就越短。
3、相频宽
它是相频特性
等于
时对应的角频率。
相频宽也用于衡量系统的快速性。
相频宽高,表明输入信号的频率越高,即系统反应快速,快速性好.
4、剪切频率:
系统开环对数幅频特性曲线20lg|G|与横坐标轴
交点的角频率,常用
来表示.
5、
穿越频率:
系统开环对数相频特性曲线
与
线交点所对应的角频率,常用
来表示。
6、稳定欲度
(1)相角稳定欲度
系统开环幅相特性曲线
上模值等于1的向量与负实轴的夹角,常用
表示,即:
=
(4—3)
(2)幅值稳定裕度
系统开环幅相特性曲线
与负实轴交点
模值
的倒数,常用
来表示,即:
(4-4)
4。
4频域分析法的MATLAB实现
4.4。
1Bode图的绘制
MATLAB提供的频域分析函数如表4-1所示。
本文主要介绍函数bode(),其基本调用格式为:
bode(sys)
bode(sys,w)
[mag,phase,w]=bode(sys)
表4—1频域分析函数
函数名
功能
bode
绘制Bode图
nyquist
绘制Nyquist图
margin
计算系统的增益和相位裕度
Bode()函数用来计算并绘制系统的Bode图,当函数命令为等式左边输出变量的格式时,函数在当前窗口中直接绘制出系统的Bode图.
线性时不变系统对象sys可以是由函数tf()、zpk()、ss()中的任何一个函数建立的系统模型[12].w用来定义绘制Bode图时的频率范围或者频率点.第三条语句只计算系统Bode图的输出数据,而不绘制曲线。
mag为系统Bode图的振幅值,phase为Bode图的相位值。
【例4—1】已知系统的传递函数为
绘制系统的Bode图。
MATLAB编程:
num=conv([1,0],[1/0。
1,1]);
den=conv([1,0],conv([1,1,1],[1/4,1]));
sys=tf(num,den);
bode(sys);
gridon;
图4—1系统的bode图
4.4。
2Bode图分析控制系统的稳定性
MATLAB提供了直接求解系统的幅值稳定裕度和相位稳定裕度的函数margin(),其调用格式为:
[Gm,Pm,Wcg,Wcp]=margin(sys)
[Gm,Pm,Wcg,Wcp]=margin(mag,phase,w)
这些语句只计算系统Bode图的输出数据,而不绘制曲线。
margin()函数可以从频率响应数据中计算出幅值稳定裕度、相位稳定裕度及其对应的角频率。
有了控制系统的Bode图,就可以计算频域性能指标。
当计算出的相角稳定裕度
〉0时,则系统闭环稳定,否则不稳定.
【例4-2】已知系统开环传递函数为
试用Bode图判断闭环系统的稳定性,并绘制系统的单位阶跃响应曲线来验证。
MATLAB编程:
sys=tf(conv(20,[1,1]),conv([1,0],conv([1,5],[1,2,10])));
margin(sys);
gridon;
[Gm,Pm,Wcg,Wcp]=margin(sys)
程序执行结果为:
Gm=3。
1369;Pm=103.6573;Wcg=4。
0132;Wcp=0.4426;模值稳定裕度Lh=20lg3。
1369dB;穿越频率wg=4。
0132rad/s。
相角稳定裕度
。
截止频率wc=0。
4426。
由奈氏判据知,系统闭环稳定.
图4-2开环系统的Bode图
绘制系统的单位阶跃响应曲线来验证系统的稳定性。
MATLAB编程:
s=tf(conv(20,[1,1]),conv([1,0],conv([1,5],[1,2,10])));
sys=feedback(s,1);
t=0:
0.01:
10;
step(sys,t);
gridon;
title('单位阶跃响应');
ylabel('y');
xlabel(’t');
运行程序,绘制出系统的单位阶跃响应曲线如图4-3所示。
系统的单位阶跃响应曲线是汇聚的振荡,说明系统稳定,验证了用Bode图判断系统稳定的结论。
图4-3系统的单位阶跃响应曲线
五总结
本文对自动控制系统进行了初步的分析,在本文中我用到了时域与频域分析法;时域分析法是一种直接法,它以传递函数为系统的数学模型,以拉氏变换为数学工具,可以直接求出系统的响应;这种方法虽然直观,分析控制系统的动态性能十分有用。
而频域分析法不仅是一种通过开环传递函数研究系统闭环传递函数性能的分析方法,而且当系统的数学模型未知时,还可以通过实验的方法建立;此外,大量丰富的图形方法使得频域分析法分析高阶系统时,分析的复杂性并不随阶次的增加而显著增加.
时域分析法和频域分析法是经典控制理论的基础,但经典控制理论存在一定的局限性,即不宜用来解决多输入多输出系统,特别是对非线性、时变系统更无能为力,所以查阅相关资料可知,我们可以通过现代控制理论里的状态空间分析理论,可以分析系统的可控性和可观性,还可以进行极点配置,在很大的程度上可以改变系统品质特性,但这种方法我还未学习,所以在本文中没有进行相关的描述分析.
综上可得我们在进行控制系统分析时,可以根据实际情况,针对不同数学模型选用最简洁、合适的方法,从而使用相应的分析方法,达到预期的实验目的.
参考文献
[1]胡寿松.自动控制原理基础教程[第三版]。
科技出版社.2015
[2]姚俊,马松辉.Simulink建模与仿真[M]。
西安电子科技大学出版社,2008。
[3]张晓江,黄云志。
MATLAB在自动控制系统中的应用[M].武汉:
机械工业出版社,2010。
[4]吴晓燕。
自动控制系统计算机仿真[J].电信技术,2009,
(1):
64—67。
[5]刘永,彭正洪.MATLAB的控制系统的设计与仿真[J]。
自动控制技术,2008,(3):
41-45.
[6]陈怀深,吴大正等。
MATLAB在控制系统中的应用[M]。
北京:
清华大学出版社,2004.
[7]谢仕宏。
MATLABR2008控制系统动态仿真实例教程[M]。
北京:
化学工业出版社,2009。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 论文 基于 自动控制系统 案例 分析