MATLAB与控制系统.docx
《MATLAB与控制系统.docx》由会员分享,可在线阅读,更多相关《MATLAB与控制系统.docx(13页珍藏版)》请在冰豆网上搜索。
MATLAB与控制系统与控制系统一、前言MATLAB是目前世界上最流行的、应用最广泛的工程计算和仿真软件,它将计算、可视化和编程等功能同时集于一个易于开发的环境。
MATLAB主要应用于数学计算、系统建模与仿真、数学分析与可视化、科学与工程绘图和用户界面设计等。
MATLAB是MatrixLaboratory的缩写,它的产生是与数学计算紧密联系在一起的。
MATLAB是一个交互式开发系统,其基本数据要速速是矩阵。
MATLAB的语法规则简单,适合于专业科技人员的思维方式和书写习惯。
目前MATLAB已经成为应用代数、自动控制原理、数理统计、数字信号处理、动态系统仿真和金融等专业的基本数学工具。
以下主要介绍MATLAB在自动控制系统中的应用。
二、MATLAB特点1.运算功能强大:
它的数值运算要素不是单个数据而是矩阵,每个变量代表一个矩阵,矩阵有m*n个元素,每个元素都可看做复数,所有的运算包括加减乘除函数运算等都对矩阵和复数有效;通过MATLAB的符号工具箱可以解决数学、应用科学和工程计算领域常常遇到的符号计算问题,强大的运算功能使其成为世界顶尖的数学应用软件之一。
2.编程效率高:
MATLAB是以解释方式工作的,它对每条语句解释后立即执行,键入算式无需编译即得出结果,若有错误也是立即做出反应,便于编程者立即改正。
3.强大而智能化的作图功能:
MATLAB可以方便的用图形显示二维或三维数组,将工程计算的结果可视化,使数据间的内在联系清晰明了。
MATLAB能智能化的根据输入的数据自动确定最佳坐标,可规定多种坐标系(如极坐标系、对数坐标系等),可设置不同颜色、线性、视角等。
4可扩展性强:
MATLAB有一套程序扩展系统和工具箱,具有良好的可扩展性。
工具箱是MATLAB函数的子程序阵,每个工具箱都是为某个学科领域的应用而定制的,MATLAB每年都会增加一些新的工具箱。
5.simulink动态仿真功能:
simulink是一个交互式动态系统建模、仿真和分析图形环境,用户通过框图的绘制来模拟一个系统,simulink能够针对控制系统、信号处理和通信系统等进行系统建模、仿真和分析。
三、MATLAB在控制系统中的应用MATLAB是国际控制届目前使用最广的工具软件,几乎所有的控制理论与应用分支中都有MATLAB工具箱。
以下将结合本学期所学的MATLAB的基本内容,采用控制系统工具箱和仿真(simulink)环境进行本学期所学的自动控制的相关内容。
(1)自动控制概念在现代科学技术的许多领域中,自动控制技术得到了广泛的应用,自动控制技术最显著的特征就是通过对各类机器,各种物理参量、工业生产过程等的控制直接造福于社会。
所谓自动控制,就是指在无人直接参与的情况下,利用控制装置操纵受控对象,使受控对象的被控量等于给定值或按给定信号变化规律去变化。
为达到某一目的,由相互制约的各个部分,按一定的规律组织成的,具有一定功能的整体,称为系统,它一般由控制装置(控制器)和被控对象所组成。
自动控制有两种最基本的形式,即开环控制和闭环控制。
开环控制:
控制装置与受控对象之间只有顺向作用而无反向联系时,称为开环控制。
其特点是:
系统结构和控制过程均很简单。
开环控制的示意框图如下图所示:
控制量输出量输入量被控对象控制器开环控制是一种简单的无反馈控制方式,在开环控制系统中只存在控制器对被控量对象的单方向控制作用,不存在被控制量(输出量)对被控量的反向作用,系统的精度取决于组成系统的元器件的精度和特性调整的精确度。
开环系统对外扰及内部参量变化的影响缺乏抑制能力,但开环系统内构简单,比较容易设计和调整,可用于输出量与输入量关系为已知,内外扰动对系统影响不大,并且控制精度要求不高的场合。
闭环控制:
控制装置与受控对象之间,不但有顺向作用,而且还有反向联系,即有被控量对控制过程的影响。
+输入量输出量控制量闭环控制的特点是:
在控制器和被控对象之间,不仅存在着正向作用,而且存在反馈作用,即系统的输出量对控制量有直接影响,将检测出来的输出量送回到系统的输入端,并与信号比较的过程称为反馈,若反馈信号与输入信号相减,则称负反馈。
反之,若相加,则称正反馈,输入信号与反馈信号之差称为偏差信号,偏差信号作用于控制器上,控制器对偏差信号进行某种运算,产生一个控制作用,使系统的输出量趋向于给定数值,闭环的实质就是利用负反馈的作用来减小系统的误差,因此闭环控制又称为反馈控制。
其示意图如下所示:
控制器被控对象-测量变送器反馈控制是一种基本的控制规律,它具有自动修正被控量偏离给定值的作用,使系统因而可以抑制内扰和外扰所引起的误差,达到自动控制的目的。
(2)自动控制系统的分类根据不同的分类方法,自动控制系统的类型可概括如下:
a、恒值系统、随动系统和程序控制系统b、随机系统与自动调整系统c、线性系统和非线性系统d、连续系统与离散系统(3)自动控制系统的典型环节a.比例环节:
G(s)=-K比例环节的特点是,其输出不失真,不延迟,成比例地复现输入信号的变化,即信号的传递没有惯性。
例:
b.积分环节:
G(s)=积分环节的特点是,输出量与输入量对时间的积分成正比。
若输入突变,输出值要等时间T之后才等于输入值,故有滞后作用。
输出积累一段时间后,即使使输入为零,输出也将保持原值不变,即具有记忆功能。
只有当输入反向时,输出才反向积分而下降。
常利用积分环节来改善系统的稳态性能。
c.微分环节:
G(s)=-Ts微分环节的特点是,其输出与输入信号对时间的微分成正比,即输出反映了输入信号的变化率,而不反映输入量本身的大小。
因此,可由微分环节的输出来反映输入信号的变化趋势,加速系统控制作用的实现。
常利用微分环节来改善系统的动态性能。
d.惯性环节:
惯性环节的特点是,其输出量不能瞬时完成与输出量完全一致的变化。
e.二阶振荡环节:
(4)利用simulink的模块集对系统仿真simulink是MATLAB下的一个用来对动态系统进行建模、仿真和分析的软件包。
它支持连续、离散、及两者混合的线性和非线性系统,同时也支持具有不同部分拥有不同采样率的多种采样速率的系统仿真。
并能直观、快速地分析系统的动态和稳态性能,还可灵活的改变系统的结构和参数,通过快速、直观的仿真达到系统的优化设计。
simulink拥有信号源、接收、连续系统、离散系统、数学运算等十几个模块库,这些模块库中的模块可直接使用,按系统各部分相互连接组成系统的仿真模型。
例如,对典型二阶振荡系统时域分析的仿真,对于典型的二阶系统,试绘制无阻尼自然振荡频率=6,阻尼板分别为0.2,0.4,1.0,2.0时系统的单位阶跃响应曲线。
传递函数:
程序仿真:
wn=6;zeta=0.2:
0.2:
1.0,2.0;figure
(1);holdonforI=zetanum=wn.2;den=1,2*I*wn,wn.2;step(num,den);endtitle(StepResponse);holdoff执行程序后单位阶跃响应曲线如下:
从图形中可清晰地看到系统的动态性能指标与有关,描述了系统从欠阻尼振荡到临界阻尼振荡再到欠阻尼振荡。
在几条曲线中,临界阻尼响应具有最短的上升时间,响应速度最快。
在欠阻尼(00);n=length(ii);%闭环极点实部大于0的个数if(n0),disp(systemisunable);end运行结果为:
说明:
本例条件是real(p0),其含义就是找出极点向量p中满足实部的值大于0的所有元素下标,并将结果返回到ii向量中去。
这样如果找到了实部大于0的极点,则会将极点的序号返回到ii下。
如果最终的结果里ii的元素个数大于0,则认为找到了不稳定的极点,因而给出系统不稳定的提示,若产生的ii向量的元素个数为0,则认为没有找到不稳定的极点,因而得出系统稳定的结论。
已知一个离散控制系统的闭环传递函数为,输入下面的MATLAB语句来判定系统的稳定性。
num=21.56;den=51.4-1.30.68;z,p=tf2zp(num,den)ii=find(abs(p)1);n=length(ii);if(n0),disp(systemisunable);elsedisp(systemisable);程序运行结果如下:
说明:
abs(p)表示取极点p的绝对值或幅值(复数)。
自动控制在MATLAB中常用函数汇总:
函数名功能格式tf生成(或将其它模型转换为)描述状态空间模型tf(num,den,)zpk生成(或将其它模型转换为)零极点增益模型zpk(z,p,k,)pzmap绘制系统的零极点图pzmap(sys)tzero求系统的传输零点z=tzero(sys)rlocfind计算给定根轨迹增益K,poles=rlocfind(sys)rloccus求系统根轨迹K,poles=rlocfind(sys)damp求系统极点的固有频率和阻尼系统Wn,Z=damp(sys)ploe求系统的极点p=pole(sys)dcgain求系统的直流(稳态)增益k=dcgain(sys)dsort离散系统极点按幅值降序排列s=dsort(p)esort连续系统极点按实部降序排列s=esort(p)五、心得与体会经过一个学期的MATLAB学习,使我更加确信,它是一款集数据分析、矩阵运算、信号处理和图形显示于一体,可方便地应用于数学计算、算法开发、数据采集、系统建模和仿真、数据分析和可视化、科学和工程绘图、应用软件开发等方面的强悍软件,是研究人员、工程人员研究工作中不可多得的工具。
这次通过对MATLAB和自动控制原理的探究,深刻体会到了理论与实践之间的差距,明白了在今后的学习中我们要融会贯通,理论联系实际,不能仅仅满足于书本上的知识,更要将所学变为所用。
充分利用MATLAB的simulink仿真,运用到自动控制里面的各种绘图要求。
MATLAB用更直观更符合我们思维方式的代码,给我们带来最直观最简洁的程序开发环境。
当然,在这学期的MATLAB的学习过程,并不是一帆风顺的,我也遇到了很多的问题与挫折,也曾经因为程序的许多错误感到沮丧。
但是,在老师的悉心教导下,在同学们的互帮互助中,我们共同克服了遇到的诸多困难,也让我更加深刻体会到了做科学研究、做学问需要的不仅仅是小聪明,更应该是踏实严谨的学习态度,精益求精的求知精神,坚忍不拔的学术品格。
六、参考文献控制系统的MATLAB仿真与设计王海丽袁丽英吴勃编著MATLAB控制系统设计仿真应用王丹力赵剡邱治平编著控制系统仿真党宏社主编MATLAB教程及实训曹弋主编