MATLAB论文.docx
- 文档编号:26334607
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:11
- 大小:57.87KB
MATLAB论文.docx
《MATLAB论文.docx》由会员分享,可在线阅读,更多相关《MATLAB论文.docx(11页珍藏版)》请在冰豆网上搜索。
MATLAB论文
河南理工大学万方科技学院
MATLAB在自动控制原理中的应用
姓名:
常世超
学号:
专业:
09电子信息工程
班级:
电信11升
指导老师:
赵鸿图
2011年12月21日
MATLAB选修课论文
MATLAB简介
MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
当代教育理念中对实践性教学的重视程度与日俱增,教育手段也逐步先进,类似信号与系统这一类课程的教学方式,面临变革与挑战。
国内外各大院校在实践理论与实践相结合的教学活动中,目光不约而同地投向一款优秀的计算机软件—MATLAB。
国内外教育人士对结合MATLAB进行信号与系统教学已达成共识,在教学过程中增加MATLAB仿真实验室流行的做法。
随着计算机技术和信息技术的飞快发展,数字信号处理技术在各种工程技术领域,特别是新兴高科技术产业内获得了越来越广泛的应用。
因而信号与系统课程作为学习数字信号处理技术的基础课程,越发受到师生的重视。
利用MATLAB强大的计算仿真功能和方便易用的图形绘制功能可以将抽象的数学和技术理论以易于理解的可视化形式展示给学生,起到更好的教学效果。
这学期我选修了这门课程,学到了不少得东西尤其是MATLAB对我学的自动控制原理课程应用有很大的帮助在自动控制中,帮助我进一步的理解自动控制的概念。
自动控制原理中的MATLAB的基本操作:
1、定义传递函数;g1=tf([分子],[分母])
2、多项式相乘;conv([多项式1],[多项式2]);最多两个多项式
Eg.若三个多项式
g3=tf([1],conv(conv([10.31],[15.06]),[10.64]))
Transferfunction:
1
----------------------------------------
s^3+6.01s^2+5.005s+1.004
二、自动控制原理
控制系统的分析包括系统的稳定性分析、时域分析、频域分析及根轨迹分析。
1、控制系统的稳定性分析
1.1系统稳定及最小相位系统判据
1)对于连续时间系统,如果闭环极点全部在S平面左半平面,则系统是稳定的。
2)对于离散时间系统,如果系统全部极点都位于Z平面的单位圆内,则系统是稳定的。
3)若连续时间系统的全部零极点都位于S左半平面;或若离散时间系统的全部零极点都位于Z平面单位圆内,则系统是最小相位系统。
qpzmap(p,z);根据系统已知的零极点p和z绘制出系统的零极点图
2、控制系统的时域分析
step();求取系统单位阶跃响应;
impulse();求取系统的冲激响应;
3、控制系统的频域分析
bode();求取系统对数频率特性图(波特图或对数幅频特性曲线);
nyquist();求取系统奈奎斯特图(幅相频率特性曲线图或极坐标图);
4、常用频域分析函数
margin:
求幅值裕度和相角裕度及对应的转折频率
freqs:
模拟滤波器特性
nichols:
求连续系统的尼科尔斯频率响应曲线(即对数幅相曲线)
ngrid:
尼科尔斯方格图
5、控制系统的根轨迹分析
所谓根轨迹是指,当开环系统某一参数从零变到无穷大时,闭环系统特征方程的根在s平面上的轨迹。
一般来说,这一参数选作开环系统的增益K,而在无零极点对消时,闭环系统特征方程的根就是闭环传递函数的极点。
根轨迹分析方法是分析和设计线性定常控制系统的图解方法,使用十分简便。
利用它可以对系统进行各种性能分析
(1)稳定性
当开环增益K从零到无穷大变化时,图中的根轨迹不会越过虚轴进入右半s平面,因此这个系统对所有的K值都是稳定的。
如果根轨迹越过虚轴进入右半s平面,则其交点的K值就是临界稳定开环增益。
(2)稳态性能
开环系统在坐标原点有一个极点,因此根轨迹上的K值就是静态速度误差系数,如果给定系统的稳态误差要求,则可由根轨迹确定闭环极点容许的范围。
(3)动态性能
当0
5.1根轨迹分析函数
通常来说,绘制系统的根轨迹是很繁琐的事情,因此在教科书中介绍的是一种按照一定规则进行绘制的概略根轨迹。
在MATLAB中,专门提供了绘制根轨迹的有关函数。
pzmap:
绘制线性系统的零极点图
rlocus:
求系统根轨迹。
rlocfind:
计算给定一组根的根轨迹增益。
[k,p]=rlocfind(num,den)
它要求在屏幕上先已经绘制好有关的根轨迹图。
然后,此命令将产生一个光标以用来选择希望的闭环极点。
命令执行结果:
k为对应选择点处根轨迹开环增益;p为此点处的系统闭环特征根。
不带输出参数项[k,p]时,同样可以执行,只是此时只将k的值返回到缺省变量ans中。
sgrid:
在连续系统根轨迹图和零极点图中绘制出阻尼系数和自然频率栅格。
sgrid:
在现存的屏幕根轨迹或零极点图上绘制出自然振荡频率wn、阻尼比矢量z对应的格线。
sgrid(‘new’):
是先清屏,再画格线。
sgrid(z,wn):
则绘制由用户指定的阻尼比矢量z、自然振荡频率wn的格线。
在自动控制控制系的时间响应分析中系统的传递函数求其阶跃响应常用MATLAB会比较简单直观:
例如:
在某闭环系统,其传递函数如下
10s+25
G(s)=-------------------------
0.16s3+1.96s2+10s+25
求其阶跃响应。
这个式子用MATLAB编辑的程序如下:
num=[1025];
den=[0.161.961025];
t=0:
0.02:
2
c=step(num,den,t);
plot(t,c);
xlable('Time-Sec');
ylabel('y(t)');
grid;
把其输入到MATLAB软件中并执行得到如下图:
例:
典型的二阶系统如下:
ω2n
G(s)=----------------------------------
S2+2ξωnS+ω2n
绘制出当ξ=0.7时,ωn取2,4,6,8,10,12时的单位阶跃响应。
其MATLAB程序如下:
w=[2:
2:
12];
kosai=0.7
figure
(1)
holdon
forwn=w
num=wn.^2;
den=[1,2*kosai*wn,wn.^2];
Step(num,den)
end
title('StepResponse')
holdoff
把去输入到MATLAB中能得到如下图:
从图中可以明确的看出,ωn越大,系统的响应速度就越快。
除了在阶跃系统中的应用在自动控制中的根轨迹中也对学习有很大的应用,根轨迹是一种求解闭环特征方程根的简便图解方法,由于它计算量小和直观化等优点,从一诞生起就被广泛的应用于工程之中。
该方法根据系统开环传递函数的几点和零点分布,依照一些简单的规则,用作图的方法求出闭环几点分布,并指出系统闭环极点随赠一增加的变化趋势,从而避免了复杂的的数学运算。
下面通过对实例的分析来显现出MATLAB的优越性。
例:
设系统的开环传递函数如下:
k(s+5)
G(s)=-------------------
s(s+2)(s+3)
绘制出闭环系统的根轨迹,并确定交点处的增益k。
其在MATLAB中的程序如下:
num=[15];
den=[1560];
rlocus(num,den)
title('RootLocus');
[k,p]=rlocfind(num,den)
gtext('k=0.5')
执行后先得到根轨迹,并有十字光标提示用户在窗口选择根轨迹上的一点,以计算出增益k及相应的几点。
这时将十字光标放到根轨迹的交点处即可得到想要的数据。
例:
已知开环传递函数如下:
K(s+2)
G(s)=---------------
(s2+4s+3)2
要求绘制该系统的闭环根轨迹,分析其稳定性,并绘制出当k=55时和k=56时系统的闭环冲击响应。
其需要执行的MATLAB程序如下:
num=[12];
den1=[143];
den=conv(den1,den1);
figure
(1)
k=0:
0.1:
150;
rlocus(num,den,k)
title('RootLocus');
[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
(2)
k=56;
num1=k*[12];
den=[143];
den1=conv(den,den);
[num,den]=cloop(num1,den1,-1);
impulse(num,den)
title('ImpulseResponse(k=56)');
改程序先绘制出闭环系统的根轨迹图,然后求出系统的临界稳定增益。
最后用两组特定的k值所对应的系统闭环冲击响应来验证系统的稳定性。
总结
经过这学期对MATLAB的学习让我学到了很多的东西;例如:
本系统基本实现了信号的基本运算、信号抽样、调制、系统仿真、滤波器等功能模块。
借助该教学系统学生可以从传统的既费时又费力的计算中摆脱出来,而把学习重点放在对概念原理的理解和实际应用中来,相信可以很好地提高教学效果,同时也能有效提高学生利用计算机编程解决实际问题的能力。
但由于本人对自动控制课程和MATLAB语言认识有限,该实验系统会存在诸多缺陷。
通过这阵子对MATLAB的学习,我发觉该软件在科学分析和数学计算等方面功能确实十分强大,因此我们也可以利用MATLAB的上述功能应用于其他电子信息课程的辅助教学,如数字信号处理,电磁场与电磁波等等。
另外,我们也可以尝试使用其他计算机仿真软件来编写简单实用的信号与系统实验系统。
如SystemView、Pspice、EWB等,相信由于这些软件各具特色,各有所长,应用它们编制出来的实验系统也会各有千秋,能对信号与系统的教学起到很好的辅助作用。
以后希望自己能有机会更多的来学习这个软件!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 论文