MATLAB-控制系统分析与设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MATLAB:经典控制系统的分析和设计

9.3.1 基本操作及命令

1. 访问和退出MATLAB

在大多数系统中,一旦安装了MATLAB,在调用时,应执行命令MATLAB。退出MATLAB应执行命令exit或quit。

2. 如何应用MATLAB

通常以命令驱动方式应用MATLAB。当输入单个命令时,MATLAB会立即对其进行处理,并且显示处理结果。MATLAB 也能够执行存储在文件中的命令序列。

通过键盘输入的命令,应用向上箭头键可以被存取。通过输入某个最新命令和调用特定的命令行,可以使屏幕内容向上滚动。

3. MATLAB的变量

MATLAB的一个特点是变量在应用之前不必是维数确定的。在MATLAB中,变量一旦被采用,会自动产生(如果必要,变量的维数以后还可以改变)。在命令exit或quit输入之前,这些变量将保留在存储器中。

为了得到工作空间内的变量清单,可以通过键盘输入命令who,当前存放在工作空间内的所有变量便会显示在屏幕上。

命令clear能从工作空间中清除所有非永久性变量。如果只需要从工作空间中清除某个特定变量,比如“x”,则应输入命令clear x。

4. 以“%”开始的程序行

在本书中,许多MATLAB程序在编写时附有注解和说明,这些注解和说明阐明了发生在程序中的具体进程。在MATLAB 中以“%”开始的程序行,表示注解和说明。符号“%”类似于BASIC中“REM”。以“%”开始的行,用来存储程序的注解或说明,这些注解和说明是不执行的。这就是说,在MATLAB程序行中,出现在“%”以后的一切内容都是可以忽略的。如果注解或说明需要一行以上程序行,则每一行均需以“%”为起始。

5. 应用分号操作符

分号用来取消打印。如果语句的最后一个符号是分号,则打印被取消,但是命令仍在执行,而结果不再显示。这是一个有益的特性,因为打印中间结果可能不必要。此外,在输入矩阵时,除非最后一行,分号用来指示一行的结束。

6. 应用冒号操作符

冒号操作符在MATLAB中起着重要作用。该操作符用来建立向量,赋予矩阵下标和规定叠代。例如,j:k表示[j j+1 … k],A(:,j)表示矩阵A的第j列,A(i,:)表示矩阵A的第i行。

7. 输入超过一行的长语句

一个语句通常以回车键或输入键终结。如果输入的语句太长,超出了一行,则回车键后面应跟随由3个或3个以上圆点组成的省略号(…),以表明语句将延续到下一行。下面是一个例子:

x = 1.234+2.345+3.456+4.567+5.678+6.789…

+7.890+8.901-9.012

符号=、+和-前后的空白间隔可以任选。这种间隔通常可以起到改善语句清晰度的效果。

8. 在一行内输入数个语句

如果在一行内可以把数个语句用逗号或分号隔开,则可以把这数个语句放在一行内。

例如

plo t(x,y,’o’), text(1,20,’System 1’), text(1,15,’System 2’)

plot(x,y,’o’);text(1,20,’System 1’);text(1,15,’System 2’)

9. 选择输出格式

MATLAB中的所有计算都是以双精度方式完成的,但是显示输出可以是具有4个小数位的定点输出。例如,对于向量

x = [1/3 0.00002]

MATLAB有下列输出:

x=

0.3333 0.0000

如果在矩阵中至少有一个元素不是严格的整数,则有4种可能的输出格式。显示的输出量可以利用下列命令加以控制:

format short

format long

format short e

format long e

一旦调用了某种格式,则这种被选用的格式将保持,直到对格式进行了改变为止。

在控制系统分析中,format short和format long是经常采用的格式。一旦调用了MATLAB,即使没有输入格式命令,MATLAB也将以format short格式显示数值结果。如果矩阵或向量的所有元素都是严格的整数,则format short和format long的结果是相同的。

10. 退出MATLAB时如何保存变量

当键入“exit”或“quit”时,MATLAB中的所有变量将消失。如果在退出以前输入命令save,则所有的变量被保存在磁盘文件matlab.mat中。当再次进入MATLAB时,命令load将使工作空间恢复到以前的状态。

9.3.2 MATLAB函数

在当前的MATLAB5.0及以上版本中,MATLAB函数的调用格式和其它编程语言是不同的,其典型的调用格式为

[返回变量列表] = func_name(输入变量列表)

其中等号左边的变量为返回变量,等号右边的变量为输入变量。MATLAB允许在函数调用时同时返回多个变量。而一个函数又可以由多种格式进行调用,例如bode( )函数可以由下面的格式调用

[mag, phase] = bode(num, den, w)

其中bode( )函数用来求取或绘制系统的Bode图,而系统在这里由传递函数分子num和分母den表示,还可以用下面的格式调用此函数

[mag, phase] = bode(A,B,C,D,w)

其中(A,B,C,D)为系统的状态方程模型。尽管两种调用格式是完全不同的,MATLAB函数还是会自动识别到底是用哪种格式调用该函数的,从而得出正确的结论。

在当前版本的控制系统工具箱中还允许用线性模型对象变量G来描述系统,例如

[mag, phase] = bode(G, w)

MATLAB函数在返回变量的格式上可以不同,例如若上面的语句中若没有返回变量,则将自动地绘制系统的Bode图,否则将返回计算结果数据。

9.3.3 绘制响应曲线

MATLAB具有丰富的获取图形输出的程序集。命令plot可以产生线性x-y图形(用命令loglog、semilogx、semilogy或polar取代plot,可以产生对数坐标图和极坐标图)。所有这些命令的应用方式都是相同的,它们只对如何对坐标轴进行分度和如何显示数据产生影响。

1. x-y图

如果x和y是同一长度的向量,则命令

plot(x, y)

将画出y值对于x值的关系图。

相关文档
最新文档