加载中…
个人资料
长笛人倚楼Gloria
长笛人倚楼Gloria
  • 博客等级:
  • 博客积分:0
  • 博客访问:5,844
  • 关注人气:149
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Matlab 中常用的时域分析函数

(2012-10-30 14:04:25)
标签:

时域分析

step

lsim

impulse

initial

分类: 信号处理

注:这里介绍的都是以连续系统为例子的,若是离散系统,要用dstep dimpulse,用法类似。另外对于lsim函数,可以先用tf函数产生一个离散系统如dsys = tf(num,den,Ts),再lsim(dsys,u,T),只要保证Ts与T的间隔一致就可以。详细内容可以参考博文:

1.单位阶跃响应函数

格式:step(sys)                    %给定系统对象sys,求系统的阶跃响应并作图。

                                   %模型对象类型:sys=tf(num,den)  TF模型

sys=zpk(z,p,k)  ZPK模型

step(sys,tf)                 %增加响应终止时间变量tf

step(sys,t)                  %给定时间向量t

step(sys1,sys2,…,t)         %多系统阶跃响应绘图

[y,t]=step(sys)             %返回响应变量y和时间向量t

[y,t,x]=step(sys)           %返回响应变量y、时间向量t以及状态变量x

【例1】系统传递函数为 ,求阶跃响应,并作系统性能分析。

>> num=[4];

den=[1 1 4];

>> sys=tf(num,den);

 

step(sys)

>> [y,t,x]=step(sys);

>> max(y)

tp=spline(y,t,max(y))

ans =

    1.4441

tp =

    1.6062

2、脉冲响应函数

格式:impulse(sys)                %给定系统对象sys,求系统的单位脉冲响应并作图。

impulse(sys,tf)             %增加响应终止时间变量tf。

impulse(sys,t)              %给定时间向量t。

impulse(sys1,sys2,…,t)     %多系统单位脉冲响应绘图

[y,t]=impulse(sys)          %返回响应变量y和时间向量t

[y,t,x]=impulse(sys)        %返回响应变量y、时间向量t以及状态变量x

 

【例2】系统传递函数为 ,求脉冲响应,并作系统性能分析。

>> num=[4];

>> den=[1 1 4];

>> sys=tf(num,den);

>> impulse(sys)

>> max(y)

ans =

1.4441

3、给定输入的响应函数

格式:lsim(sys,u,t)            %给定系统对象sys,控制输入向量u和等间隔时间向%量t,求系统的单位脉冲响应并作图。

      lsim(sys,u,t,x0)        %计算带初始条件x0的时间响应并作图。

      lsim(sys1,sys2,…u,t,x0)%多系统任意输入时间响应并绘图。

      y=lsim(sys,u,t)          %返回娈量格式,不作图。

      [y,t,x]= lsim(sys,u,t,x0)

【例3】系统传递函数为 ,输入正弦信号时,观察输出信号的相位差能分析。

 

>> num=[1];

>> den=[1 1];

>> sys=tf(num,den);

>> t=0:0.01:10;

>> u=sin(2*t);

>> lsim(sys,u,t)

>> hold on

>> plot(t,u,':')

4.求系统的频率响应

利用freqs函数

freqs函数调用方法为
H = freqs(b,a,w)
[H, w] = freqs(b,a,n)(用法参考matlab help)
其中,b为分子,a为分母,w为频率坐标。求得频率响应后,再取模和相位。
【例4】 已知一个LTI因果系统的单位脉冲响应为\(h(t) = [e^{-t} - e^{-2t}]u(t)\),试求频率响应\(H(\omega)\),并绘制曲线
\(H(\omega) = \frac{1}{1+j\omega} - \frac{1}{2+j\omega} = \frac{1}{-\omega^2+2-j3\omega}\)
1;
[1, 3, 2];
-15: 0.05: 15;
freqs(b, a, w);
mag abs(H);
phase angle(H);
subplot(211), plot(w, mag)
axis([-15, 15, 0, 0.5])
xlabel('frequency, rad/s'), ylabel('magnitude'), grid
phase phase*180/pi;
subplot(212), plot(w, phase)
axis([-15, 15, -200, 200]);
xlabel('frequency, rad/s'), ylabel('phase, degrees'), grid

5.零输入响应函数

格式:initial()

http://s11/middle/84024a4a4cd408ec4a72a&690

【例4】

http://s11/middle/84024a4a4cd408ec853ea&690

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有