教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 基础教育 >

matlab在自控原理中的应用(8)

来源:网络收集 时间:2026-07-30
导读: rlocus(num,den) (32) rlocus(num,den,K) (33) 或者 rlocus(G) (34) rlocus(G,K) (35) 以上给定命令可以在屏幕上画出根轨迹图,其中G为开环系统G0(s)的对象模型,K为用户自己选择的增益向量。如果用户不给出K

rlocus(num,den) (32) rlocus(num,den,K) (33) 或者 rlocus(G) (34) rlocus(G,K) (35)

以上给定命令可以在屏幕上画出根轨迹图,其中G为开环系统G0(s)的对象模型,K为用户自己选择的增益向量。如果用户不给出K向量,则该命令函数会自动选择K向量。如果在函数调用中需要返回参数,则调用格式将引入左端变量。如

[R,K]=rlocus(G) (36)

此时屏幕上不显示图形,而生成变量R和K。

R为根轨迹各分支线上的点构成的复数矩阵,K向量的每一个元素对应于R矩阵中的一行。若需要画出根轨迹,则需要采用以下命令:

plot(R,11) (37)

plot()函数里引号内的部分用于选择所绘制曲线的类型,详细内容见表1。控制系统工具箱中还有一个rlocfind()函数,该函数允许用户求取根轨迹上指定点处的开环增益值,并将该增益下所有的闭环极点显示出来。这个函数的调用格式为:

[K,P]=rlocfind(G) (38)

这个函数运行后,图形窗口中会出现要求用户使用鼠标定位的提示,用户可以用鼠标左键点击所关心的根轨迹上的点。这样将返回一个K变量,该变量为所选择点对应的开环增益,同时返回的P变量则为该增益下所有的闭环极点位置。此外,该函数还将自动地将该增益下所有的闭环极点直接在根轨迹曲线上显示出来。

例18 已知系统的开环传递函数模型为:

Gk(s)?K?KG0(s)

s(s?1)(s?2)利用下面的MATLAB命令可容易地验证出系统的根轨迹如图16所示。 >> G=tf(1,[conv([1,1],[1,2]),0]); rlocus(G); grid

title(1Root_Locus Plot of G(s)=K/[s(s+1)(s+2)]1) xlabel(1Real Axis1) % 给图形中的横坐标命名。 ylabel(1Imag Axis1) % 给图形中的纵坐标命名。 [K,P]=rlocfind(G)

用鼠标点击根轨迹上与虚轴相交的点,在命令窗口中可发现如下结果 select_point=0.0000+1.3921i K=

5.8142

- 21 -

p=

-2.29830

-0.0085+1.3961i -0.0085-1.3961i

所以,要想使此闭环系统稳定,其增益范围应为0

参数根轨迹反映了闭环根与开环增益K的关系。我们可以编写下面的程序,通过K的变化,观察对应根处阶跃响应的变化。考虑K=0.1,0.2,?,1,2,?,5,这些增益下闭环系统的阶跃响应曲线。可由以下MATLAB命令得到。

>> hold off; % 擦掉图形窗口中原有的曲线。

图16 系统的根轨迹

t=0:0.2:15; Y=[ ];

for K=[0.1:0.1:1,2:5]

GK=feedback(K*G,1); y=step(GK,t); Y=[Y,y];

end

plot(t,Y)

对于for循环语句,循环次数由K给出。系统画出的图形如图17所示。可以看出,当K的值增加时,一对主导极点起作用,且响应速度变快。一旦K接近临界K值,振荡加剧,性能变坏。

- 22 -

图17 不同K值下的阶跃响应曲线

4. MATLAB绘图的基本知识

通过以上实例的应用,我们已初步尝试了MATLAB的绘图功能。MATLAB具有丰富的获取图形输出的程序集。我们已用命令plot()产生线性x-y图形(用命令loglog、semilogx、semilogy或polar取代命令plot,可以产生对数坐标图和极坐标图)。所有这些命令的应用方式都是相似的,它们只是在如何给坐标轴进行分度和如何显示数据上有所差别。 (1)二维图形绘制

如果用户将X和Y轴的两组数据分别在向量x和y中存储,且它们的长度相同,则命令

plot(x,y) (39)

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

例19 如果想绘制出一个周期内的正弦曲线,则首先应该用t=0:0.01:2*pi(pi是系统自定义的常数,可用help命令显示其定义)命令来产生自变量t;然后由命令y=sin(t)对t向量求出正弦向量y,这样就可以调用plot(t,y)来绘制出所需的正弦曲线,如图18所示。

图18一个周期内的正弦曲线

(2)一幅图上画多条曲线。

- 23 -

利用具有多个输入变量的plot( )命令,可以在一个绘图窗口上同时绘制多条曲线,命令格式为:

plot(x1,Y1,x2,Y2,?,xn,Yn) (40)

x1、Y1、x2、Y2等一系列变量是一些向量对,每一个x-y对都可以用图解表示出来,因而可以在一幅图上画出多条曲线。多重变量的优点是它允许不同长度的向量在同一幅图上显示出来。每一对向量采用不同的线型以示区别。

另外,在一幅图上叠画一条以上的曲线时,也可以利用hold命令。hold命令可以保持当前的图形,并且防止删除和修改比例尺。因此,后来画出的那条曲线将会重叠在原曲线图上。当再次输入命令hold,会使当前的图形复原。也可以用带参数的hold命令――hold on 和hold off来启动或关闭图形保持。 (3)图形的线型和颜色

为了区分多幅图形的重叠表示,MATLAB提供了一些绘图选项,可以用不同的线型或颜色来区分多条曲线,常用选项见下表1

表1MATLAB绘图命令的多种选项

选项 ′-′ ′: ′ ′r′ ′b′ ′g′ ′y′

表1中绘出的各个选项有一些可以并列使用,能够对一条曲线的线型和颜色同时作出规定。例如′--g′表示绿色的短划线。带有选项的曲线绘制命令的调用格式为:

plot(X1,Y1,S1,X2,Y2,S2,?) (41) (4)加进网络线、图形标题、x轴和y轴标记

一旦在屏幕上显示出图形,就可以依次输入以下相应的命令将网络格线、图形标题、x、y轴标记叠加在图形上。命令格式如下:

grid(网络线) (42)

title(′图形标题′) (43) xlabel(′x轴标记′) (44) ylabel(′y轴标记′) (45)

函数引号内的字符串将被写到图形的坐标轴上或标题位置。 (5)在图形屏幕上书写文本。

如果想在图形窗口中书写文字,可以单击按钮

,选择屏幕上一点,点击鼠标,在光

意义 实线 虚线 红色 蓝色 绿色 黄色 选项 ′--′ ′-.′ ′*′ ′o′ ′.′ ′×′ 意义 短划线 点划线 用星号绘制各个数据点 用圆圈绘制各个数据点 用圆点绘制各个数据点 用叉号绘制各个数据点 标处输入文字。另一种输入文字的方法是用text()命令。它可以在屏幕上以(x,y)为坐标的某处书写文字,命令格式如下:

text(x,y,′text′) (46)

- 24 -

例如,利用语句

text(3,0.45,′sint′)

将从点(3,0.45)开始,水平的写出“sint”。 (6)自动绘图算法及手工坐标轴定标

在MATLAB图形窗口中,图形的横、纵坐标是自动标定的,在另一幅图形画出之前,这幅图形作为现行图将保持不变,但是在另一幅图形画出后,原图形将被删除,坐标轴自动地 …… 此处隐藏:2442字,全部文档内容请下载后查看。喜欢就下载吧 ……

matlab在自控原理中的应用(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/564234.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)