实验三 连续系统的时域分析
目录
- 一、实验目的
- 二、实验原理
- 1.连续时间系统零状态响应的数值计算
- 2.连续时间系统冲激响应和阶跃响应的求解
- 3. 用MATLAB实现连续时间信号的卷积
- 三、实验内容
- 四、实验报告要求
- 心得体会:
一、实验目的
1.学会用MATLAB求解连续系统的零状态响应;
2. 学会用MATLAB求解冲激响应及阶跃响应;
3.学会用MATLAB实现连续信号卷积的方法;
二、实验原理
LTI连续系统数学模型为
(1)连续系统的冲激响应h(t)的求取可调用impulse(b, a)实现。其中a=[a2 a1 a0]是响应y侧系数向量,b=[b2 b1 b0]是激励f侧系数向量。
(2)连续系统的零状态响应yzs(t)的求取可调用lsim(b, a, f, t)实现。其中f是激励向量,t表示计算连续系统响应的时间抽样点向量,a、b向量同上。
(3)连续系统的零状态响应yzf(t)的求取也可调用conv(f, h)实现,也就是下面将要介绍的连续信号卷积的近似计算。
1.连续时间系统零状态响应的数值计算
在MATLAB中,控制系统工具箱提供了一个用于求解零初始条件微分方程数值解的函数lsim。其调用格式
y=lsim(sys,f,t)
式中,t表示计算系统响应的抽样点向量,f是系统输入信号向量,sys是LTI系统模型,表示微分方程,差分方程或状态方程。其调用格式
sys=tf(b,a)
式中,b和a分别是微分方程的右端和左端系数向量。例如
用 获得其LTI模型。
NOTE: 如果微分方程的左端或右端表达式中有缺项,则其向量a或b中的对应元素应为补零,不能省略。
例2-1 已知某LTI系统的微分方程为 y’’(t)+ 2y’(t)+100y(t) = f(t)
其中,,求系统的输出y(t) .
解:这是一个求系统零状态响应的问题。其MATLAB计算程序如下:
ts=0; te=5;dt=0.01;sys=tf([1],[1,2,100]);t=ts:dt:te;f=10*sin(2*pi*t);y=lsim(sys,f,t);plot(t,y);xlabel('Time(sec)'); ylabel('y(t)');
2.连续时间系统冲激响应和阶跃响应的求解
在MATLAB中,对于连续LTI系统的冲激响应和阶跃响应,可分别用控制系统工具箱提供的函数impluse和step来求解。其调用格式为
y=impluse(sys,t) , y=step(sys,t)
式中,t表示计算系统响应的抽样点向量,sys是LTI系统模型。
例2-2已知某LTI系统的微分方程 y’’(t)+ 2y’(t)+100y(t)=10f(t)
求系统的冲激响应和阶跃响应的波形.
解:
ts=0;te=5;dt=0.01;sys=tf([10],[1,2,100]);
t=ts:dt:te;
h=impulse(sys,t);
figure;
plot(t,h);xlabel('Time(sec)');ylabel('h(t)');
g=step(sys,t);
figure;
plot(t,g);xlabel('Time(sec)');
ylabel('g(t)');
3. 用MATLAB实现连续时间信号的卷积
信号的卷积运算需调用MATLAB的conv( )函数近似计算信号的卷积积分。连续信号的
卷积积分定义是
如果对连续信号f1(t)和f2(t)进行等时间间隔均匀抽样,则f1(t)和f2(t)分别变为离散时间信号和。其中,为整数。当足够小时,和为连续时间信号f1(t)和f2(t)。因此
采用数值计算时,只求当时卷积积分f(t) 的值,其中,n为整数
其中,实际就是离散序列和的卷积和。当足够小时,序列就是连续信号的数值近似
上式表明,连续信号f1(t)和f2(t)的卷积,可用各自抽样后的离散时间序列的卷积再乘以抽样间隔。抽样间隔越小,误差越小。
例2-3用数值计算法求与 的卷积积分。
解:因为是一个持续时间无限长的信号,而计算机数值计算不可能计算真正的无限长信号,所以在进行f2(t)的抽样离散化时,所取的时间范围让f2(t)衰减到足够小就可以,本例取。
dt=0.01; t=-1:dt:2.5;
f1=heaviside(t)-heaviside(t-2);
f2=exp(-3*t).*heaviside(t);
f=conv(f1,f2)*dt; n=length(f); tt=(0:n-1)*dt-2;
subplot(221), plot(t,f1), grid on;
axis([-1,2.5,-0.2,1.2]); title('f1(t)'); xlabel('t')
subplot(222), plot(t,f2), grid on;
axis([-1,2.5,-0.2,1.2]); title('f2(t)'); xlabel('t')
subplot(223), plot(tt,f), grid on;
title('f(t)=f1(t)*f2(t)'); xlabel('t')
由于f1(t)和f2(t)的时间范围都是从t = -1开始,所以卷积结果的时间范围从 t = -2开始.
三、实验内容
1. 验证实验原理中所述的相关程序
2. 已知描述系统的微分方程和激励信号f(t)如下,试用解析法求系统的零状态响应y(t),并用MATLAB绘出系统零状态响应的时域仿真波形,验证结果是否相同;
程序如下:
a = [1,3,6];
n = length(a)-1;
Y0 = [0,10];
b = [1,6,8];
te = 0;dt = 0.001;ts = 9;
t = te:dt:ts;
f = sin(2*t)+cos(5*t);
p = roots(a); %求出其次解
V = rot90(vander(p)); %生成2*2矩阵并旋转90度
c = V\Y0'; %求出待定系数r1,r2的值
y1 = zeros(1,length(t)); %建立一个1*length(t)的矩阵
for k = 1:n ,y1 = y1+c(k)*exp(p(k)*t);end %求出冲激响应
dt = ts/(length(t)-1);
[r,p,k] = residue(b,a);
h = r(1)*exp(p(1)*t)+r(2)*exp(p(1)*t);
y2 = conv(f,h)*dt;
subplot(2,1,1);
plot(t,y1);
grid on
title('零输入响应')
xlabel('t');ylabel('y1');
subplot(2,1,2);
plot(t,y2(1:length(t)));
grid on
title('零状态响应')
xlabel('t');ylabel('y2');
运行结果如下:
3.已知两连续时间信号如下图所示,试用MATLAB求f(t)=f1(t)*f2(t),并绘出f(t)的时域波形图。(设定取样时间间隔为p)
程序如下:
ts = -3;dt = 0.01;te = 3;
t = ts:dt:te;
f1 = 2*(heaviside(t+1)-heaviside(t-1));
f2 = heaviside(t+2)-heaviside(t-2);
f = conv(f1,f2)*dt;n = length(f);tt = (0:n-1)*dt-2;
axis([-3,3,-2,2]);
subplot(1,3,1);
plot(t,f1);
grid on
title('f1')
xlabel('t');axis([-3,3,-2,2]);
subplot(1,3,2);
plot(t,f2);
grid on
title('f2')
xlabel('t');axis([-3,3,-2,2]);
subplot(1,3,3);
plot(tt,f);
grid on
title('fi*f2')
xlabel('f1*f2');
运行结果如下:
四、实验报告要求
1.简述实验目的和实验原理;
2.写出其对应的matlab程序;
3.计算相应的冲激响应、零状态响应及卷积积分的理论值,并与实验结果进行比较。
4.上机调试程序的方法及实验中的心得体会。
心得体会:
本此实验,在操作过程中遇到的最大问题是冲激函数不能调用,之前以为定义了就可以调用,不过是不可以的,只好直接在程序中定义一个冲激函数,总的来说在这次实验中我基本上理解卷积运算,学会用MATLAB求解系统的零状态响应、冲激响应及阶跃响应的方法。
答疑资料qq群:1007576722
实验三 连续系统的时域分析相关推荐
- 信号与系统仿真实验——实验三 连续系统频率响应特性分析及系统函数极零点分布特性
[ 实验目的] 1.利用MATLAB分析连续系统频率响应特性: 2.通过系统极.零点分布分析系统时域.频域特性 [ 实验内容] [ 实验方法] 1.系统的频率响应特性可以通过函数freqs( )函数得 ...
- 信号系统笔记(二)连续系统的时域分析
信号系统笔记(二)连续系统的时域分析 2 连续系统的时域分析 2.1 连续系统的响应 2.1.1 连续系统建立微分方程 2.1.2 微分方程的模拟框图 2.1.3 微分方程的经典解法 2.1.4 连续 ...
- 实验三 连续系统分析
实验三 连续系统分析 文章目录 实验三 连续系统分析 实验目的 实验内容 1. 计算并画出该系统的单位冲激响应h(t),单位阶跃响应g(t): 2. 求输入分别为u(t),sintu(t),e^(-t ...
- 信号与系统_第2章 连续系统的时域分析
2.1 LTI连续系统的响应 前言 LTI连续系统的时域分析,归结为:建立并求解线性微分方程. 由于在其分析过程涉及的函数变量均为时间t,故称为时域分析法.这种方法比较直观,物理概念 ...
- 【信号与系统】笔记(2)连续系统的时域分析
Author:AXYZdong 自动化专业 工科男 有一点思考,有一点想法,有一点理性! 文章目录 前言 一.系统的微分方程及其响应 1.1 LTI系统的微分方程 1.2 系统的响应 1.2.1 零输 ...
- matlab c2d 零阶保持器,计控实验二 连续系统变换为离散系统
实验二 连续系统变换为离散系统 一.实验目的 在对连续系统进行实时计算机控制时,往往需要把连续系统转换成离散系统. 二.实验指导 为了得到连续系统的离散化数学模型,Matlab 提供了c2d()函数. ...
- linux用户登录实验,实验三 Linux系统登录及用户管理
实验三 Linux系统登录及用户管理 一.实验目的 (1)掌握系统远处登录的几个常用命令. (2)理解与用户账号及组账号有关的几个重要文件. (3)掌握命令行和图形方式下查看.添加.删除用户账号的用法 ...
- 信号与系统_第二章 连续系统的时域分析
第二章 连续系统的时域分析 ( 连续系统在时域上进行分析 ) 2.1 引言 2.2 LTI系统的微分方程表示及响应 2.3 零输入响应与零状态响应 2.4 单位冲激响应 2.5 卷积积分 2.6 卷积 ...
- 实验4 LTI系统的时域分析
实验4 LTI系统的时域分析 1.冲激响应:y=impulse(syt,t) 2.阶跃响应:y=step(sys,t) t表示系统响应的时间抽样点向量,sys表示LTI系统模型 表示系统的特性参数:s ...
最新文章
- vuex之state-状态对象的获取方法(三)
- 编写UEditor插件
- codevs 1085 数字游戏 dp或者暴搜
- 【原】SQL 取当前年 (年初 1月1号) 当前月 (月初 1号) 当前日 (零点)
- WebRTC安全体系架构的8个组件
- Matlab|基于粒子群优化算法及鲁棒MPPT控制器提高光伏并网的效率
- linux服务器运维基础学习
- 手机上怎么换证件照底色?手机一键照片改背景颜色
- 中国拖车洒水器市场趋势报告、技术动态创新及市场预测
- 【免费资源分享】给大家分享一款自己编写的免费语音合成软件,免费文字转语音,无需提供任何接口么,傻瓜式使用!
- CAJ(caj)阅读器下载
- FairGuard游戏加固兼容摸摸鱼和TAPTAP云玩
- 泥瓦匠这几年 Java ...
- 微信小程序:去水印工具微信小程序源码
- ecshop 小京东 微信公众号链接打开,报错appid不能为空,错误码10012
- Java之BlockingQueue
- 几个简单的时间复杂度计算问题
- 10038错误,无法连接上阿里云服务器上的MySQL
- 架构衍变过程----58同城沈剑:好的架构源于不停地衍变,而非设计
- 带你认识什么是一级指针、二级指针、三级指针
热门文章
- Linux进阶-开发板、服务器、PC端互联
- RFID电子标签对比传统条形码有哪些优势
- Js电子显示屏特效-模拟LED显示屏文字滚动代码
- 【发表案例】计算机科学类SCI,仅1个月零6天录用,涵盖软件、信息、数据云计算、网络、建模等研究方向
- honeycomb开发_完整的Android 3.0 Honeycomb SDK发布
- ps压缩证件照(自己动手,丰衣足食,主打一个免费)
- 区块链大佬排行榜,这些创始人个个都是人才
- 微信三方及AE,PR资源
- python程序设计教程 赵璐 第五章课后习题
- [附源码]Nodejs计算机毕业设计汽车出租平台Express(程序+LW)