实验二 用MATLAB处理连续系统
数学模型
一、实验目的
1. 学会LTI系统模型的建立;
2. 掌握相关函数的调用格式及作用;
3. 掌握连续信号的基本运算。
二、实验设备
计算机一台,装有MATLAB软件
三、实验原理及基本操作
1.典型信号
(1)阶跃信号
t=-1:0.01:3;
f=t>0;
plot(t,f);
axis([-1,3,-0.2,1.2]);
注:参见函数Heaviside
(2)单位冲激信号
定义冲激函数
function chongji(t1,t2,t0)
dt=0.01;
t=t1:dt:t2;
n=length(t);
x=zeros(1,n);
x(1,(t0-t1)/dt+1)=1/dt;
stairs(t,x);
axis([t1,t2,0,1.2/dt])
title('单位冲击信号δ(t)')
图中调用的是chongji(-1,5,0);可以试着给别的t1,t2,t0,可以得到δ(t-t0)的波形。
注:参见函数dirac
2.连续信号的时域基本运算
相加、相乘、移位、反折、尺度变换、倒相
已知信号,用matlab求f(t+2),f(t-2),f(-t),f(2t),-f(t),并绘出时域波形。
syms t
f=sym('(t/2+1)*(heaviside(t+2)-heaviside(t-2))')
subplot(2,3,1);
ezplot(f,[-3,3])
title('f(t)')
y1=subs(f,t,t+2)
subplot(2,3,2),ezplot(y1,[-5,1])
title('f(t+2)')
y2=subs(f,t,t-2)
subplot(2,3,3),ezplot(y2,[-1,5])
title('f(t-2)')
y3=subs(f,t,-t)
subplot(2,3,4),ezplot(y3,[-3,3])
title('f(-t)')
y4=subs(f,t,2*t)
subplot(2,3,5),ezplot(y4,[-2,2])
title('f(2t)')
y5=-f
subplot(2,3,6),ezplot(y5,[-3,3])
title('-f')
注:
Matlab提供了函数fliplr()实现信号的左右翻转,其调用格式为y=fliplr(x)。
如:
t=-5:0.001:5;
x=exp(t);
y=fliplr(x);
figure
subplot(211)
plot(t,x)
title('x=exp(t)');
subplot(212)
plot(t,y);
title('y=x(-t) ');
3. 卷积运算
卷积是信号与系统中一个最基本、也是最重要的概念之一。在时域中,对于LTI 连续时间系统,其零状态响应等于输入信号与系统冲激响应的卷积;
MATLAB信号处理工具箱提供了一个计算两个离散序列卷积和的函数conv。设向量a、b代表待卷积的两个序列,则c = conv(a, b)就是a与b卷积后得到的新序列。
两个序列卷积以后,一般而言所得新序列的时间范围、序列长度都会发生变化。例如设f1(
n)长度为5,-3≤n≤1;f2(n)长度为7,2≤n≤8;则卷积后得到的新序列长度为11,-如何用matlab将已知点连线1≤n≤9。但是用conv函数求出卷积后没有给出新序列所对应的时间变量。为此,要根据被卷积序列的时间变量产生一个对应新序列的时间变量。
对于连续卷积,我们用离散卷积来代替连续卷积,只要取样时间间隔足够小时,就可得到满意的效果。
,
令(为整数),则
(*)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论