控制系统的时域分析法--控制系统的时域分析法

2012-03-17 15:25:27来源: 互联网
3.7 用MATLAB进行暂态响应分析

3.7.1 线性系统的MATLAB表示

系统的传递函数用两个数组来表示。考虑下列系统:

(3-17)

该系统可以表示为两个数组,每一个数组由相应的多项式系数组成,并且以s的降幂排列如下:
    num=[0 0 25]
    den=[1 4 25]
注意,必要时需补加数字零。

如果已知num和den(即闭环传递函数的分子和分母),则命令step(num,den),step(num,den,t) 将会产生出单位阶跃响应图(在阶跃命令中,t为用户指定时间)。

当阶跃命令的左端含有变量时,如:[y,x,t]=step(num,den,t)显示屏上不会显示出响应曲线。因此,必须利用plot命令去查看响应曲线。矩阵y和x分别包含系统在计算时间点t求出的输出响应和状态响应(y的列数与输出量数相同,每一行对应一个相应的时间t单元。x的列数与状态数相同,每一行对应一个相应的时间t单元)。

3.7.2传递函数系统单位阶跃响应的求法

下面讨论由方程(3-17)描述的系统的单位阶跃响应。MATLAB Program3-1将给出该系统的单位阶跃响应曲线。该单位阶跃响应曲线如图3-13所示。

其源程序为:

MATLAB Program 3-1
num=[0 0 25];
den=[1 4 25];
step(num,den)
grid
title('Unit-Step Response of G(s)=25/(s^2+4s+25)')


图3-13 单位阶跃响应曲线

3.7.3在图形屏幕上书写文本

为了在图形屏幕上书写文本,例如,可以输入下列语句:
text(3.4, -0.06, 'Y1')

text(3.4, 1.4, 'Y2')

第一个语句告诉计算机,在坐标点x=3.4,y=-0.06上写出"Y1"。类似地,第二个语句告诉计算机,在坐标点x=3.4,y=1.4上写出"Y1"。

3.7.4脉冲响应

利用下列MATLAB命令中的一种命令,可以得到控制系统的单位脉冲响应:
impulse(num,den)
[y,x,t]=impulse(num,den)
[y,x,t]=impulse(num,den,t)

例3-11

试求下列系统的单位脉冲响应: 。MATLAB Program3-2将产生脉冲响应。由此得到的单位脉冲响应曲线如图3-14所示。

其源程序为:

MATLAB Program 3-2

num=[0 0 1];

den=[1 0.2 1];

impulse(num,den);

grid

title(‘Unit-Impulse Response of G(s)=1/(s^2+0.2s+1)’)


图3-14 单位脉冲响应曲线

3.7.5求脉冲响应的另一种方法

当初始条件为零时,G(s)的单位脉冲响应与sG(s)的单位阶跃响应相同。
考虑上例中讨论过的系统的单位脉冲响应。因为对于单位脉冲输入量,R(s)=1,所以

因此,可以将G(s)的单位脉冲响应变换成sG(s)的单位阶跃响应。

如果向MATLAB输入下列num和den:
num=[0 1 0]
den=[1 0.2 1]


利用在MATLAB Program3-2中给出的阶跃响应命令,可以得到系统的单位脉冲响应曲线,如图3-15所示。在图3-15中,x轴和y轴都是自动地进行标注的。如果希望对x轴和y轴做不同的标注,则需要改变阶跃命令。例如,如果需要在x轴上标注"t Sec",在y轴上标注"Input and Output",则应利用带有左端变量的阶跃响应命令,其源程序如下:

MATLAB Program 3-3
num=[0 1 1];
den=[1 0.2 1];
impulse(num,den);
grid;
title('G(s)=s/(s^2+0.2s+1)的单位脉冲响应')



图3-15 用 的单位阶跃响应求得的单位脉冲响应曲线

c=step(num,den,t)
或者
[y,x,t]=step(num,den,t)
参见MATLAB Program3-4。



3.7.6斜坡响应

在MATLAB中没有斜坡响应命令,因此,需要利用阶跃响应命令求斜坡响应。特别是当求传递函数系统G(s)的斜坡响应时,可以先用s除G(s),再利用阶跃响应命令。例如,考虑下列闭环系统:

对于单位斜坡输入量,R(s)=1/(s2),因此

为了得到系统的单位斜坡响应,往MATLAB程序中输入下列分子和分母:
num=[0 0 0 1];
den=[1 1 1 0];
并应用阶跃响应命令。参见MATLAB Program3-4,利用此程序获得的响应曲线如图3-16所示。其源程序如下:

MATLAB Program 3-4
num=[0 0 0 1];
den=[1 1 1 0];
t=0:0.1:7;
c=step(num,den,t);
plot(t,c,'o',t,t,'-')
grid;
title('Unit-Ramp Response Curve for System G(s)=1/(s^2+s+1)')
xlabel('t Sec')
ylabel('Input and Output')


图3-16 单位斜坡响应曲线

关键字:控制系统  时域  分析法

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2012/0317/article_15187.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
控制系统
时域
分析法

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved