信号与系统仿真连续时间LTI系统的时域分析.docx

上传人:b****1 文档编号:13243635 上传时间:2023-06-12 格式:DOCX 页数:11 大小:97.64KB
下载 相关 举报
信号与系统仿真连续时间LTI系统的时域分析.docx_第1页
第1页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第2页
第2页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第3页
第3页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第4页
第4页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第5页
第5页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第6页
第6页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第7页
第7页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第8页
第8页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第9页
第9页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第10页
第10页 / 共11页
信号与系统仿真连续时间LTI系统的时域分析.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

信号与系统仿真连续时间LTI系统的时域分析.docx

《信号与系统仿真连续时间LTI系统的时域分析.docx》由会员分享,可在线阅读,更多相关《信号与系统仿真连续时间LTI系统的时域分析.docx(11页珍藏版)》请在冰点文库上搜索。

信号与系统仿真连续时间LTI系统的时域分析.docx

信号与系统仿真连续时间LTI系统的时域分析

电子信息工程系实验报告

 

成绩:

课程名称:

 计算机仿真技术     

 

指导教师(签名):

实验项目名称:

实验4 信号与系统仿真—连续时间LTI系统的时域分析

实验时间:

2011-11-22 班级:

电信092  姓名:

XXX  学号:

910706201

    

一、实验目的:

学会运用MATLAB符号求解连续系统的零输入响应和零状态响应;学会运用MATLAB数值求解连续系统的零状态响应;学会运用MATLAB求解连续系统的冲激响应和阶跃响应;思考运用MATLAB卷积积分法求解系统的零状态响应。

二、实验环境:

硬件:

PC机,PII以上CPU,内存1G;

软件:

Matlab7.1

三、实验原理:

连续时间系统零状态响应的数值求解:

对于零状态响应,MATLAB控制系统工具箱提供了对LTI系统的零状态响应进行数值仿真的函数lsim,该函数可求解零初始条件下微分方程的数值解,语句格式为:

y=lsim(sys,f,t)

其中,t表示计算系统响应的时间抽样点向量;f是系统的输入信号向量;sys表示LTI系统模型,用来表示微分方程、差分方程或者状态方程。

在求微分方程时,sys是由MATLAB的tf函数根据微分方程系数生成的系统函数对象,其语句格式为:

sys=tf(b,a)

其中,b和a分别为微分方程右端和左端的系数向量。

例如,对于微分方程

可用

获得其LTI模型。

注意,如果微分方程的左端或右端表达式中有缺项,则其向量a或者b中对应的元素应为0,不能省略不写,否则会出错。

连续时间系统冲激响应和阶跃响应的求解:

在MATLAB中,对于连续LTI系统的冲激响应和阶跃响应的数值解,可分别用控制系统工具箱提供的函数impulse和step来求解。

其语句格式分别为:

y=impulse(sys,t);

y=step(sys,t);

其中,t表示计算机系统响应的时间抽样点向量,sys表示LTI系统模型。

四、实验内容及过程:

1.1、已知系统的微分方程和激励信号

如下,试用MATLAB命令绘出系统零状态响应的时域仿真波形图。

(1)

(2)

思路:

建立关于单位阶跃函数的源文件,即创建名为uCT的M文件:

functionf=uCT(t)

f=(t>0);

保存后,就可调用该函数。

利用函数式y=lsim(sys,f,t)求LTI系统的零状态响应。

(1)按要求可编写如下程序代码:

clear;clc;

ts=0;te=5;dt=0.01;

sys=tf([1],[1,4,3]);

t=ts:

dt:

te;

f=1.*uCT(t);

y=lsim(sys,f,t);

plot(t,y),gridon

xlabel('Time(sec)'),ylabel('y(t)')

title('零状态响应');

(2)同理,按要求编写如下程序代码:

clear;clc;

ts=0;te=5;dt=0.01;

sys=tf([1,3],[1,4,4]);

t=ts:

dt:

te;

f=exp(-t).*uCT(t);

y=lsim(sys,f,t);

plot(t,y),gridon

xlabel('Time(sec)'),ylabel('y(t)')

title('零状态响应');

1.2、利用卷积积分法求题1.1的系统零状态响应。

思路:

利用卷积积分法求系统的零状态响应,可先求单位冲激响应,接着将输入信号与冲激响应进行卷积即可。

利用MATLAB中的function命令建立连续时间信号卷积运算的函数ctsconv.m。

其源程序为:

function[f,t]=ctsconv(f1,f2,t1,t2,dt)

f=conv(f1,f2);

f=f*dt;

ts=min(t1)+min(t2);

te=max(t1)+max(t2);

t=ts:

dt:

te;

subplot(221)

plot(t1,f1);gridon

axis([min(t1),max(t1),min(f1)-abs(min(f1)*0.2),max(f1)+abs(max(f1)*0.2)])

title('f1(t)');xlabel('t');

subplot(222)

plot(t2,f2);gridon

axis([min(t2),max(t2),min(f2)-abs(min(f2)*0.2),max(f2)+abs(max(f2)*0.2)])

title('f2(t)');xlabel('t');

subplot(212)

plot(t,f);gridon

axis([min(t),max(t),min(f)-abs(min(f)*0.2),max(f)+abs(max(f)*0.2)])

title('f(t)=f1(t)*f2(t)');xlabel('t');

(1)按要求可在命令窗口中编写如下程序代码:

clear;clc;

dt=0.01;

t1=0:

dt:

5;

f1=1.*uCT(t1);

t2=t1;

sys=tf([1],[1,4,3]);

f2=impulse(sys,t2);

[t,f]=ctsconv(f1,f2,t1,t2,dt);

(2)按要求可在命令窗口中编写如下程序代码:

clear;clc;

dt=0.01;

t1=0:

dt:

5;

f1=exp(-t1).*uCT(t1);

t2=t1;

sys=tf([1,3],[1,4,4]);

f2=impulse(sys,t2);

[t,f]=ctsconv(f1,f2,t1,t2,dt);

2、已知系统的微分方程如下,试用MATLAB命令求系统冲激响应和阶跃响应的数值解,并绘出系统冲激响应和阶跃响应的时域波形图。

(1)

(2)

思路:

利用控制系统工具箱提供的函数impulse和函数step来求解。

(1)可在命令窗口编写如下程序代码:

clear;clc;

t=0:

0.001:

4;

sys=tf([1],[1,3,2]);

h=impulse(sys,t);

g=step(sys,t);

subplot(211)

plot(t,h),gridon

xlabel('Time(sec)'),ylabel('h(t)')

title('冲激响应')

subplot(212)

plot(t,g),gridon

xlabel('Time(sec)'),ylabel('g(t)')

title('阶跃响应')

(2)可在命令窗口编写如下程序代码:

clear;clc;

t=0:

0.001:

4;

sys=tf([1],[1,2,2]);

h=impulse(sys,t);

g=step(sys,t);

subplot(211)

plot(t,h),gridon

xlabel('Time(sec)'),ylabel('h(t)')

title('冲激响应')

subplot(212)

plot(t,g),gridon

xlabel('Time(sec)'),ylabel('g(t)')

title('阶跃响应')

五、实验结果及分析:

题1.1、在命令窗口中分别输入以上程序代码并执行此文件,可在窗口中分别看到

的零状态响应的时域仿真波形图,如图1、2所示:

图1

    图2

题1.2、利用上述编写的关于卷积积分法的程序代码,输入到命令窗口中并运行,可分别看到如图3、4所示的零状态响应的时域仿真波形图。

        

图3 卷积法求

零状态响应

图4 卷积法求

零状态响应

综合图1、2、3、4可知,利用卷积积分法求系统的零状态响应和利用函数lsim求解所得的图形大体一致,方法可行。

题2、在命令窗口中分别输入以上程序代码并执行此文件,可在窗口中分别看到系统冲激响应和阶跃响应的时序波形图,如图5、6所示:

图5 

波形图     图6 

波形图

六、问题与思考:

1、思考如何用卷积积分法求系统的零状态响应,叙述详细的编程求解思路。

答:

用卷积积分法求系统的零状态响应,可先求单位冲激响应,接着将输入信号与冲激响应进行卷积,即可求得系统的零状态响应。

利用卷积函数conv自定义编写以M文件形式存在的函数ctsconv.m,编程如下:

function[f,t]=ctsconv(f1,f2,t1,t2,dt)

f=conv(f1,f2);

f=f*dt;

ts=min(t1)+min(t2);中文论坛

te=max(t1)+max(t2);

t=ts:

dt:

te;文论坛

subplot(2,2,1);plot(t1,f1);

gridon;

axis([min(t1),max(t1),min(f1)-abs(min(f1)*0.2),max(f1)+abs(max(f1)*0.2)]);

title('f1(t)');xlabel('t');

subplot(2,2,2);plot(t2,f2);文论坛

gridon;

axis([min(t2),max(t2),min(f2)-abs(min(f2)*0.2),max(f2)+abs(max(f2)*0.2)]);

title('f2(t)');xlabel('t');

subplot(2,1,2);plot(t,f);

gridon;

axis([min(t),max(t),min(f)-abs(min(f)*0.2),max(f)+abs(max(f)*0.2)]);

title('f(t)=f1(t)*f2(t)');xlabel('t');

若f(t)为系统的激励信号即输入信号,f

(2)即为单位冲激响应,求单位冲激响应可利用式子f

(2) =impulse(sys,t2)求得。

综上所述,明显可用卷积积分法求系统的零状态响应。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2