700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【 MATLAB 】模拟信号采样及离散时间傅里叶变换(DTFT)案例分析

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

时间:2019-08-29 11:31:38

相关推荐

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

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

中使用的模拟信号:

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

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

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

题解:

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

我们通过MATLAB验证下:

clcclearclose all% Analog signalDt = 0.00005;t = - 0.005:Dt:0.005;xa = exp(-1000 * abs(t));% Discrete-time signalTs = 0.0002;n = -25:25;x = exp(-1000*abs(n*Ts));%Discrete-time Fourier TransformK = 500;k = 0:1:K;w = pi*k/K;X = x*exp(-j*n'*w);X = real(X);w = [-fliplr(w),w(2:K+1)];X = [fliplr(X),X(2:K+1)];subplot(2,1,1);plot(t*1000,xa);xlabel('t in msec');ylabel('x(n)');title('Discrete signal');hold onstem(n*Ts*1000,x);gtext('Ts = 0.2msec');hold offsubplot(2,1,2);plot(w/pi,X);xlabel('Frequency in pi units');ylabel('X(w)');title('Discrete - time Fourier Transform');

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

clcclearclose all% Analog signalDt = 0.00005;t = - 0.005:Dt:0.005;xa = exp(-1000 * abs(t));% Discrete-time signalTs = 0.001;n = -5:5;x = exp(-1000*abs(n*Ts));%Discrete-time Fourier TransformK = 500;k = 0:1:K;w = pi*k/K;X = x*exp(-j*n'*w);X = real(X);w = [-fliplr(w),w(2:K+1)];X = [fliplr(X),X(2:K+1)];subplot(2,1,1);plot(t*1000,xa);xlabel('t in msec');ylabel('x(n)');title('Discrete signal');hold onstem(n*Ts*1000,x);gtext('Ts = 1msec');hold offsubplot(2,1,2);plot(w/pi,X);xlabel('Frequency in pi units');ylabel('X(w)');title('Discrete - time Fourier Transform');

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。