【 MATLAB 】模拟信号采样及离散时间傅里叶变换(DTFT)案例分析

举报
李锐博恩 发表于 2021/07/15 05:50:32 2021/07/15
【摘要】 这篇博文中使用的模拟信号为上篇博文:【 MATLAB 】使用 MATLAB 实现模拟信号的近似及其连续傅里叶变换 中使用的模拟信号: 为了研究在频域数量上的采样效果,对该信号使用两种不同的采样频率采样。 a. 在 fs = 5000 对信号进行采样,求出并画出其离散时间傅里叶变换; b. 在 fs = 1000 对信号采样,求出并画出其离散时间傅里叶变换。 题解...

这篇博文中使用的模拟信号为上篇博文:【 MATLAB 】使用 MATLAB 实现模拟信号的近似及其连续傅里叶变换

中使用的模拟信号:

x_a(t) = e^{-1000\left |t \right |}

为了研究在频域数量上的采样效果,对该信号使用两种不同的采样频率采样。

a. 在 fs = 5000 对信号进行采样,求出并画出其离散时间傅里叶变换;

b. 在 fs = 1000 对信号采样,求出并画出其离散时间傅里叶变换。

题解:

上篇博文也分析了,信号的带宽为2kHz,奈奎斯特频率就为 4000 样本/s,它小于第一问给出的采样频率,所以频谱混叠几乎不存在。

我们通过MATLAB验证下:


  
  1. clc
  2. clear
  3. close all
  4. % Analog signal
  5. Dt = 0.00005;
  6. t = - 0.005:Dt:0.005;
  7. xa = exp(-1000 * abs(t));
  8. % Discrete-time signal
  9. Ts = 0.0002;
  10. n = -25:25;
  11. x = exp(-1000*abs(n*Ts));
  12. %Discrete-time Fourier Transform
  13. K = 500;
  14. k = 0:1:K;
  15. w = pi*k/K;
  16. X = x*exp(-j*n'*w);
  17. X = real(X);
  18. w = [-fliplr(w),w(2:K+1)];
  19. X = [fliplr(X),X(2:K+1)];
  20. subplot(2,1,1);
  21. plot(t*1000,xa);
  22. xlabel('t in msec');ylabel('x(n)');
  23. title('Discrete signal');
  24. hold on
  25. stem(n*Ts*1000,x);
  26. gtext('Ts = 0.2msec');
  27. hold off
  28. subplot(2,1,2);
  29. plot(w/pi,X);
  30. xlabel('Frequency in pi units');ylabel('X(w)');
  31. title('Discrete - time Fourier Transform');

 

继续作答第二问,将采样间隔改为0.001s,10ms时间区间内能采样11个点。


  
  1. clc
  2. clear
  3. close all
  4. % Analog signal
  5. Dt = 0.00005;
  6. t = - 0.005:Dt:0.005;
  7. xa = exp(-1000 * abs(t));
  8. % Discrete-time signal
  9. Ts = 0.001;
  10. n = -5:5;
  11. x = exp(-1000*abs(n*Ts));
  12. %Discrete-time Fourier Transform
  13. K = 500;
  14. k = 0:1:K;
  15. w = pi*k/K;
  16. X = x*exp(-j*n'*w);
  17. X = real(X);
  18. w = [-fliplr(w),w(2:K+1)];
  19. X = [fliplr(X),X(2:K+1)];
  20. subplot(2,1,1);
  21. plot(t*1000,xa);
  22. xlabel('t in msec');ylabel('x(n)');
  23. title('Discrete signal');
  24. hold on
  25. stem(n*Ts*1000,x);
  26. gtext('Ts = 1msec');
  27. hold off
  28. subplot(2,1,2);
  29. plot(w/pi,X);
  30. xlabel('Frequency in pi units');ylabel('X(w)');
  31. title('Discrete - time Fourier Transform');

很明显,这个DTFT7已经变了,也就是发生了频谱混叠。

文章来源: reborn.blog.csdn.net,作者:李锐博恩,版权归原作者所有,如需转载,请联系作者。

原文链接:reborn.blog.csdn.net/article/details/83387980

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。