Matlab在控制工程中的应用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Matlab在控制工程中的应用摘要:简要介绍MATLAB软件及其控制系统工具箱的功能,并通过具体实例说明MATLAB软件在《机械控制工程基础》课程教学中的优越性,从多方面探讨在教学过程中,如何更好地利用MATLAB软件.主要从系统的时间响应及频率特性、稳定性分析和系统校正的设计、线性离散系统的分析及系统模型的估计等方面使MATLAB得图形化和交换功能充分的体现了出来,使抽象复杂的理论变得生动形象、加深了对某些概念的理解、激发了我们的学习兴趣。最后总结了关于怎样学好MATLAB的心得体会。1.MATLAB简介MATLAB是矩阵实验室(MatrixLaboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。到目前为止,已经经发展成为优秀的适合多学科的功能强大的科技应用软件之一,在30多个面向不同领域而扩展的工具箱的支持下,MATLAB在许多领域中成为计算机辅助设计与分析、算法研究和应用开发的基本工具和首选平台。MATLAB的发展经历了以下几个重要的发展时期:1)20世纪70年代后期,时任美国新墨西哥大学计算机科学系主任的Cleve?Moler教授为学生开发了矩阵特征值求解及线性方程求解的FORTRAN程序库及接口程序,取名为MATLAB,并开始流传。2)1983年春,Cleve?Moler博士与John?Little等人用c语言开发了MATLAB的第二代专业版,具有数值计算及数据图形化功能。3)1984年,Cleve?Moler与John?Little成立了MathWorks公司,正式把MATLAB推向市场。4)1993年~1995年,MathWorks公司推出了MATLAB?4.0版,充分支持Microsoft?Win—dows下的界面编程,1995年推出4.2C版。5)1997年,MathWorks公司推出了MATLAB?5.0版,支持更多的数据结构,无论界面还是功能都较4.x版有长足进展。1999年推出了5.3版,进一步改善了MATLAB的功能。6)2000年10月,MathWorks公司推出了MATLAB?6.0版,该版的推出是MATLAB软件的一次飞跃,它的可视化界面焕然一新,风格更加平易近人,而且还添加了对JAVA的支持,函数库也进一步进行了扩充,运算速度更快、性能更好。2001年6月,MathWorks公司推出了MATLAB?6.1版。2002年8月,MathWorks公司推出了MATLAB?6.5版。2.MATLAB与控制工程及实例说明Nyquist图和Bode图是系统频率特性的两种重要的图形表示形式,也是对系统进行频率特性分析的重要方法。无论是Nyquist图还是Bode图,都非常适于用计算机进行绘制,Matlab提供了绘制系统频率特性极坐标图的nyquist函数和绘制对数坐标图的bode函数。例如:传递函数为G(s)=24(0.25s+0.5)(5s+2)(0.05s+2)的系统的Nyquist图及Bode图的求取。1)Matlab文本及Nquist图形如下:k=24,nunG1=k*[0.25,0.5];denG1=conv([52],[0.052]);[re,im]=nyquist(nunG1,denG1);plot(re,im);gridk=24,nunG1=k*[0.25,0.5];denG1=conv([52],[0.052]);[re,im]=nyquist(nunG1,denG1);plot(re,im);grid00.511.522.53-1.4-1.2-1-0.8-0.6-0.4-0.202)Matlab文本及Bode图如下:k=24;numG1=k*[0.250.5];denG1=conv([52],[0.052]);w=logspace(-2,3,100);bode(numG1,denG1,w);-40-30-20-10010Magnitude(dB)10-210-1100101102103-90-450Phase(deg)BodeDiagramFrequency(rad/sec)在MATLAB中,可以用impulse函数、step函数和lsim函数对线性连续系统的时间响应进行仿真计算。其中impulse函数用于生成单位脉冲响应;step函数用于生成单位阶跃响应;lsim函数用于生成对任意输入的时间响应。例如:已知某高阶系统的传递函数为求该系统的单位脉冲响应、单位阶跃响应和单位速度响应和单位加速度响应。获得单位脉冲响应程序语句及图形:num=[22050];den=[11584223309240100];impulse(num,den)100240309223841550202)(234562SSSSSSSSSG获得单位阶跃响应程序语句及图形:num=[22050];den=[11584223309240100];step(num,den)获得单位速度响应程序语句及图形:num=[22050];den=[11584223309240100];t=[0:0.01:1];u=(t);lsim(num,den,u,t)获得单位加速度响应程序语句及图形:num=[22050];den=[11584223309240100];t=[0:0.01:1];u=(0.5*t.*t);lsim(num,den,u,t)3,总结:MATLAB其实很简单,只有自己亲自思考,多动手,不怕失败,我们才能好真正的掌握这门技术.其实我们学习Matlab的时候不要试着掌握它的每一个功能,熟悉和你专业最相关的部分就可以了.另外我感觉在MATLAB很好玩,从刚开始的什么都不懂到最后自己写程序并且到处相应的结果,真的是一件很开始的事情.所以说这次学到了很多有用的东西.

1 / 7
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功