实验二、信号的变换

一、实验目的

1.掌握信号时移、反折和尺度运算的法则。
2.学习利用Matlab进行波形的平移、反折、尺度变换等。
3.掌握信号的微积分运算。

二、实验器材

计算机、MATLAB软件

三、实验原理

1.信号的平移

用代替原来的t或k。

2.信号的反折

用-t代替原来的t。

3.信号的尺度变换

用at代替t。

4.信号的微积分

信号的微分就是信号对时间的求导,即
在这里插入图片描述

信号的积分就是信号对时间在区间(-∞,t)上的累加,即
在这里插入图片描述

matlab里面用于信号变换的函数有subs()、diff()、int(),下面分别介绍这三个函数。
(1)subs()
subs函数是用来实现信号变换的函数,其调用格式为
subs(f,t,v)
其中,f为原始函数,t是原函数的变量,v是新函数的变量,v和t的关系为。
(2)diff()
diff()是用来求微分的函数。其调用格式为
diff(f)、 diff(f,v)、diff(f,v,n)
其中f是符号表达式,默认求导是对变量x的求导,默认的求导是一阶,v是新的求导变量,n是求导的阶数。
(3)int()
int()函数是用来求积分的函数。其调用格式为
inf(f)、inf(f,a,b)、inf(f,v)、inf(f,v,a,b)
其中f是符号表达式,默认为求对x的不定积分,a、b表示积分的上下限,v是新的积分变量。
MATLAB实现的序列移位函数程序为:
function[y,k]=sigshift(f,m,k0)
k=m+k0;y=x;
该函数不是MATLAB自带的函数,所以将此函数以sigshift作为文件名存盘才能调用。

四、示例演示

例1:已知连续时间信号的波形如图2.1所示,试用matlab绘出、、、、、的时域波形,并观察时域变换后信号波形的变换。

在这里插入图片描述

图2.1 连续信号的波形

% Program2.1.m
syms t;
f=sym('(t+1)*(heaviside(t+1)-heaviside(t))');
f=f+sym('(heaviside(t)-heaviside(t-1))');
axis([-3,3,-1.2,1.2])
title('f(t)')
pause 
f1=subs(f,t,-t);
ezplot(f1,[-3,3])
title('f(-t)')
pause 
f2=-f;
ezplot(f2,[-3,3])
title('-f(t)')
pause
f3=subs(f,t,t-2);
ezplot(f3,[-3,3])
title('f(t-2)')
pause 
f4=subs(f,t,0.5*t);
ezplot(f4,[-3,3])
title('f(0.5t)')
pause 
f5=subs(f,t,-3*t-2);
ezplot(f5,[-3,3])
title('f(-3t-2)')

程序运行结果如图2.2所示
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

图2.2 连续信号的时域变换图
例2:已知在这里插入图片描述,求在这里插入图片描述

matlab程序如下

% Program2.2.m
syms t;
f=sym('t^2');
g=diff(f)
d=int(f)
运行结果如下
g =
2*t
d =
1/3*t^3

在这里插入图片描述

五、实验内容

1.已知连续时间信号在这里插入图片描述
,试用matlab绘出在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述的时域波形。
程序如下

syms t;
y = sym((3*t-2).*(heaviside(t)-heaviside(t-2)));
axis([-3,3,-3,3]);%对坐标轴缩放
 
f0 = subs(y,t,t);
subplot(2,3,1)%分块画图
ezplot(f0,[-3,3]);
title('f(t)')
 
f1 = subs(y,t,-t);
subplot(2,3,2);
ezplot(f1,[-3,3]);
title('f(-t)')
 
f2 = subs(y,t,t-2);
subplot(2,3,3);
ezplot(f2,[-3,3]);
title('f(t-2)')
 
f3 = subs(y,t,0.5*t);
subplot(2,3,4);
ezplot(f3,[-3,3]);
title('f(0.5t)')
 
f4 = subs(y,t,-3*t-2);
subplot(2,3,5);
ezplot(f4,[-3,3]);
title('f(-3t-2)')

运行结果如下
在这里插入图片描述

2.已知在这里插入图片描述,试用matlab法求在这里插入图片描述

程序如下

syms t;
f = sym((t^3).*heaviside(t));
g = diff(f,t,2)
d = int(f,t,1,2)

运行结果如下
在这里插入图片描述

3.已知在这里插入图片描述,试用matlab绘出在这里插入图片描述在这里插入图片描述在这里插入图片描述
的波形。
程序如下

k = -5:5;
k0=0;
f = 2*(stepfun(k,k0)-stepfun(k,k0+2));
 
subplot(1,3,1);
stem(k,f);
title('f(k)');
 
f1 =2*(-stepfun(k,k0)+stepfun(k,k0-2));
subplot(1,3,2);
stem(k,f1);
title('f(-k)');
 
f2 =2*(stepfun(k,k0+2)-stepfun(k,k0+4));
subplot(1,3,3);
stem(k,f2);
title('f(k-2)');

运行结果如下
在这里插入图片描述

实验总结与心得体会:
第二次的实验相比较第一次而言难度加大了许多,不仅仅需要我上课认真听讲,更需要课下对每一句程序语句的理解和研究。另外还自己百度学习了绘制离散的图形和setfun方法,增强自我探索和学习能力。期待下一次的实验我会有更大的进步。

六、实验报告要求

1.实验内容中详细说明信号变换的原理;
2.写出其对应的matlab程序;
3.上机调试程序的方法及实验中的心得体会。

  • 7
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡毛毛_三月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值