您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > 控制系统的模拟试验与MATLAB仿真1
-1-《控制工程基础》实验指导书安徽科技学院工学院2009.6-2-《控制工程基础实验》一.预备知识1MATLAB简介MATLAB是Mathworks公司开发的一种集数值计算、符号计算和图形可视化三大基本功能于一体的功能强大、操作简单的优秀工程计算应用软件。MATLAB不仅可以处理代数问题和数值分析问题,而且还具有强大的图形处理及仿真模拟等功能。从而能够很好的帮助工程师及科学家解决实际的技术问题。MATLAB的含义是矩阵实验室(MatrixLaboratory),最初主要用于方便矩阵的存取,其基本元素是无需定义维数的矩阵。经过十几年的扩充和完善,现已发展成为包含大量实用工具箱(Toolbox)的综合应用软件,不仅成为线性代数课程的标准工具,而且适合具有不同专业研究方向及工程应用需求的用户使用。MATLAB最重要的特点是易于扩展。它允许用户自行建立完成指定功能的扩展MATLAB函数(称为M文件),从而构成适合于其它领域的工具箱,大大扩展了MATLAB的应用范围。目前,MATLAB已成为国际控制界最流行的软件,控制界很多学者将自己擅长的CAD方法用MATLAB加以实现,出现了大量的MATLAB配套工具箱,如控制系统工具箱(controlsystemstoolbox),系统识别工具箱(systemidentificationtoolbox),鲁棒控制工具箱(robustcontroltoolbox),信号处理工具箱(signalprocessingtoolbox)以及仿真环境SIMULINK等。(1)MATLAB的安装本节将讨论操作系统为MicrosoftWindows环境下安装MATLAB6的过程。将MATLAB6的安装盘放入光驱,系统将自动运行auto-run.bat文件,进行安装;也可以执行安装盘内的setup.exe文件启动MATLAB的安装程序。启动安装程序后,屏幕将显示安装MATLAB的初始界面,根据Windows安装程序的常识,不断单击[Next],输入正确的安装信息,具体操作过程如下:输入正确的用户注册信息码;选择接收软件公司的协议;-3-输入用户名和公司名;选择MATLAB组件(Toolbox);选择软件安装路径和目录;单击[Next]按钮进入正式的安装界面。安装过程界面如图1所示。安装完毕后,选择[Restartmycomputernow]选项以重新启动计算机。重新启动计算机后,用户就可以点击图标使用MATLAB6了。MATLAB启动过程界面如图2所示。(2)MATLAB桌面系统MATLAB的桌面系统由桌面平台以及桌面组件共同构成,如图3。桌面平台是各桌面组件的展示平台,它提供了一系列的菜单操作以及工具栏操作,而不同功能的桌面组件构成了整个MATLAB操作平台。其组件主要包含如下8个组件部分:①命令窗口(CommandWindow)②历史命令窗口(CommandHistory)③组件平台(LaunchPad)④路径浏览器(CurrentDirectoryBrowser)⑤帮助浏览器(HelpBrowser)⑥工作空间浏览器(WorkspaceBrowser)⑦数组编辑器(ArrayEditor)⑧M文件编辑调试器(Editor-Debugger)。用户可以在View菜单下选择打开或关闭某个窗口。图1MATLAAB安装过程界面图2MATLAAB启动过程界面-4-(3)MATLAB命令窗口MATLAB可以认为是一种解释性语言。在MATLAB命令窗口中,标志为命令提示符,在命令提示符后面键入一个MATLAB命令时,MATLAB会立即对其进行处理,并显示处理结果。这种方式简单易用,但在编程过程中要修改整个程序比较困难,并且用户编写的程序不容易保存。如果想把所有的程序输入完再运行调试,可以用鼠标点击快捷或File|New|M-file菜单,在弹出的编程窗口中逐行输入命令,输入完毕后点击Debug|Run(或F5)运行整个程序。运行过程中的错误信息和运行结果显示在命令窗口中。整个程序的源代码可以保存为扩展名为“.m”的M文件。在介绍MATLAB的强大计算和图象处理功能前,我们可以先运行一个简单的程序。设系统的闭环传递函数为:824)(2ssssG求系统的时域响应图,可输入下面的命令:num=[1,4];den=[1,2,8];step(num,den)图3MATLAB桌面平台-5-程序运行后会在一个新的窗口中显示出系统的时域动态响应曲线,如图4。用鼠标左键点击动态响应曲线的某一点,系统会提示其响应时间和幅值。按住左键在曲线上移动鼠标的位置可以很容易的根据幅值观察出上升时间、调节时间、峰值及峰值时间,进而求出超调量。如果想求根轨迹,可将程序的第三行变为rlocus(num,den),求伯德图可改为bode(num,den)。所不同的是,在根轨迹和伯德图中,G(s)为开环传递函数。MATLAB的语法规则类似于C语言,变量名、函数名都与大小写有关,即变量A和a是两个完全不同的变量。应该注意所有的函数名均由小写字母构成。MATLAB是一个功能强大的工程应用软件,它提供了相当丰富的帮助信息,同时也提供了多种获得帮助的方法。如果用户第一次使用MATLAB,则建议首先在提示符下键入DEMO命令,它将启动MATLAB的演示程序。用户可以在此演示程序中领略MATLAB所提供的强大的运算和绘图功能。图4动态响应时域图-6-2MATLAB基本操作命令本节简单介绍与本书内容相关的一些基本知识和操作命令。(1)简单矩阵的输入MATLAB是一种专门为矩阵运算设计的语言,所以在MATLAB中处理的所有变量都是矩阵。这就是说,MATLAB只有一种数据形式,那就是矩阵,或者数的矩形阵列。标量可看作为1×1的矩阵,向量可看作为n×1或1×n的矩阵。这就是说,MATLAB语言对矩阵的维数及类型没有限制,即用户无需定义变量的类型和维数,MATLAB会自动获取所需的存储空间。输入矩阵最便捷的方式为直接输入矩阵的元素,其定义如下:(1)元素之间用空格或逗号间隔;(2)用中括号([])把所有元素括起来;(3)用分号(;)指定行结束。例如,在MATLAB的工作空间中,输入:]965432[a ; 则输出结果为:965432a矩阵a被一直保存在工作空间中,以供后面使用,直至修改它。MATLAB的矩阵输入方式很灵活,大矩阵可以分成n行输入,用回车符代替分号或用续行符号(…)将元素续写到下一行。例如:]987654321[a, , ; , , ; , , 9]87654321[a]987654321[a, , ; , , ; , , 以上三种输入方式结果是相同的。一般若长语句超出一行,则换行前使用续-7-行符号(…)。在MATLAB中,矩阵元素不限于常量,可以采用任意形式的表达式。同时,除了直接输入方式之外,还可以采用其它方式输入矩阵,如:(1)利用内部语句或函数产生矩阵;(2)利用M文件产生矩阵;(3)利用外部数据文件装入到指定矩阵。(2)复数矩阵输入MATLAB允许在计算或函数中使用复数。输入复数矩阵有两种方法:(1)a=[12;34]+i*[56;78](2)a=[1+5i2+6i;3+7i4+8i]注意,当矩阵的元素为复数时,在复数实部与虚部之间不允许使用空格符。如1+5i将被认为是1和5i两个数。另外,MATLAB表示复数时,复数单位也可以用j。(3)MATLAB语句和变量MATLAB是一种描述性语言。它对输入的表达式边解释边执行,就象BASIC语言中直接执行语句一样。MATLAB语句的常用格式为:变量=表达式[;]或简化为:表达式[;]表达式可以由操作符、特殊符号、函数、变量名等组成。表达式的结果为一矩阵,它赋给左边的变量,同时显示在屏幕上。如果省略变量名和“=”号,则MATLAB自动产生一个名为ans的变量来表示结果,如:1900∕81结果为:4568.23ansans是MATLAB提供的固定变量,具有特定的功能,是不能由用户清除的。常用的固定变量还有eps、pi、Inf、NaN等。其特殊含义可以用7.2.10节介绍的方-8-法查阅帮助。MATAB允许在函数调用时同时返回多个变量,而一个函数又可以由多种格式进行调用,语句的典型格式可表示为:[返回变量列表]=fun-name(输入变量列表)例如用bode()函数来求取或绘制系统的Bode图,可由下面的格式调用:)Wden,num,(bode]phase,mag[其中变量num、den表示系统传递函数分子和分母,W表示指定频段,mag为计算幅值,phase为计算相角。(4)语句以“%”开始和以分号“;”结束的特殊效用在MATLAB中以“%”开始的程序行,表示注解和说明。符号“%”类似于C++中的“//”。这些注解和说明是不执行的。这就是说,在MATLAB程序行中,出现“%”以后的一切内容都是可以忽略的。分号用来取消打印,如果语句最后一个符号是分号,则打印被取消,但是命令仍在执行,而结果不再在命令窗口或其它窗口中显示。这一点在M文件中大量采用,以抑制不必要的信息显示。(5)获取工作空间信息MATLAB开辟有一个工作空间,用于存储已经产生的变量。变量一旦被定义,MATLAB系统会自动将其保存在工作空间里。在退出程序之前,这些变量将被保留在存储器中。为了得到工作空间中的变量清单,可以在命令提示符后输入who或whos命令,当前存放在工作空间的所有变量便会显示在屏幕上。命令clear能从工作空间中清除所有非永久性变量。如果只需要从工作空间中清除某个特定变量,比如“x”,则应输入命令clearx。(6)常数与算术运算符MATLAB采用人们习惯使用的十进制数。如:3–990.00019.639723820e60210.123e62252.62i-3.14159i3e5i其中1i。-9-数值的相对精度为eps,它是一个符合IEEE标准的16位长的十进制数,其范围为:30830810~10。MATLAB提供了常用的算术运算符:+,-,,∕(﹨),^(幂指数)。应该注意:(∕)右除法和(﹨)左除法这两种符号对数值操作时,其结果相同,其斜线下为分母,如1∕4与4﹨1,其结果均为0.25,但对矩阵操作时,左、右除法是有区别的。(7)选择输出格式输出格式是指数据显示的格式,MATLAB提供format命令可以控制结果矩阵的显示,而不影响结果矩阵的计算和存储。所有计算都是以双精度方式完成的。(1)如果矩阵的所有元素都是整数,则矩阵以不带小数点的格式显示。如输入:]101[x则显示:101-x(2)如果矩阵中至少有一个元素不是整数,则有多种输出格式。常见格式有以下四种:①formatshort(短格式,也是系统默认格式)②formatshorte(短格式科学表示)③formatlong(长格式)④formatlonge(长格式科学表示)如:]6e2345.13/4[x对于以上四种格式,其显示结果分别为:0000.01.3333x短格式5位表示06e2345.1001.3333ex短格式科学表示-10-00000000012345.033333333331.3333x长格式16位表示06e000002345000000.100e33333333331.3333x长格式科学表示一旦调用了某种格式,则这种被选用的格式将保持,直到对格式进行了改变为止。(8)MATLAB图形窗口当调用了一个产生图形的函数时,MATLAB会自动建立一个图形窗口。这个窗口还可分裂成多个窗口,并可在它们之间选择,这样在一个屏上可显示多个图形。图形窗口中的图形可通过打印机打印出来。若想将图形导出并保存,可用鼠标点击菜单File|Export,导出格式可选emp、bmp、jpg等。命令窗口的内容也可由打印机打印出来:如果事先选择了一些内容,则可打印出所选择的内容;如果没有选择内容,则可打印出整个工作空间的内容。(9)剪切板的使用利用Windows的剪切板可在MATLA
本文标题:控制系统的模拟试验与MATLAB仿真1
链接地址:https://www.777doc.com/doc-6156282 .html