通信原理MATLAB验证低通抽样定理实验报告
通信原理实验报告
一、实验名称
MATLAB验证低通抽样定理
二、实验目的
1、掌握抽样定理的工作原理。
2、通过MATLAB编程实现对抽样定理的验证,加深抽样定理的理解。同时训练应用计算机分析问题的能力。
3、了解MATLAB软件,学习应用MATLAB软件的仿真技术。它主要侧重于某些理论知识的灵活运用,以及一些关键命令的掌握,理解,分析等。
4、计算在临界采样、过采样、欠采样三种不同条件下恢复信号的误差,并由此总结采样频率对信号恢复产生误差的影响,从而验证时域采样定理。
三、实验步骤及原理
1、对连续信号进行等间隔采样形成采样信号,采样信号的频谱是原连续信号的频谱以采样频率为周期进行周期性的延拓形成的。
2、设连续信号的的最高频率为Fmax,如果采样频率Fs>2Fmax,那么采样信号可以唯一的恢复出原连续信号,否则Fs<=2Fmax会造成采样信号中的频谱混叠现象,不可能无失真地恢复原连续信号。
四、实验内容
1、画出连续时间信号的时域波形及其幅频特性曲线,信号为
x=cos(4*pi*t)+1.5*sin(6*pi*t)+0.5*cos(20*pi*t)
2、对信号进行采样,得到采样序列,画出采样频率分别为10Hz,20 Hz,50 Hz时的采样序列波形;
3、对不同采样频率下的采样序列进行频谱分析,绘制其幅频曲线,对比各频率下采样序列和的幅频曲线有无差别。
4、对信号进行谱分析,观察与3中结果有无差别。
5、由采样序列恢复出连续时间信号,画出其时域波形,对比与原连续时间信号的时域波形。
五、实验仿真图
(1) x=cos(4*pi*t)+1.5*sin(6*pi*t)+0.5*cos(20*pi*t)的时域波形及幅频特性曲线。clear;
close all;
dt=0.05;
t=-2:dt:2
x=cos(4*pi*t)+1.5*sin(6*pi*t)+0.5*cos(20*pi*t);
N=length(t);
Y=fft(x)/N*2;
fs=1/dt;
df=fs/(N-1);
f=(0:N-1)*df;
plot(t,x)
title('抽样时域波形')
xlabel('t')
grid;
subplot(2,1,2)
plot(f,abs(Y));
title('抽样频域信号 |Y|');
xlabel('f');
grid;
(2)采样频率分别为10Hz时的采样序列波形, 幅频特性曲线,以及由采样序列恢复出连续时间信号时域、频域波形;
clear;
close all;
dt=0.1;
t0=-2:0.01:2
t=-2:dt:2
ts1=0.01
x0=cos(4*pi*t0)+1.5*sin(6*pi*t0)+0.5*cos(20*pi*t0);
x=cos(4*pi*t)+1.5*sin(6*pi*t)+0.5*cos(20*pi*t);
B=length(t0);
Y2=fft(x0)/B*2;
fs2=1/0.01;
df2=fs2/(B-1);
f2=(0:B-1)*df2;
N=length(t);
Y=fft(x)/N*2;
fs=1/dt;
df=fs/(N-1);
f=(0:N-1)*df;
tm=-50:ts1:50
gt=sinc(fs*tm)
st=sigexpand(x,dt/ts1)
x3=conv(st,gt)
A=length(tm(5001:5401));
Y1=fft(x3(5001:5401))/A*2;
fs1=1/ts1;
df1=fs1/(A-1);
f1=(0:A-1)*df1;
subplot(3,2,1)
plot(t0,x0)
title('原始时域波形')
xlabel('t')
subplot(3,2,2)
title('原始频域波形')
xlabel('t')
subplot(3,2,3)
plot(t,x)
title('抽样时域波形')
xlabel('t')
grid;
subplot(3,2,4)
plot(f,abs(Y));
title('抽样频域信号 |Y|');
xlabel('f');
subplot(3,2,5)
plot(t0,x3(5001:5401))
title('恢复后的信号');
xlabel('tm')
subplot(3,2,6)
plot(f1,abs(Y1));
title('恢复频域信号 |Y1|');
xlabel('f1');
grid;
(3)采样频率分别为20 Hz时的采样序列波形,幅频特性曲线,以及由采样序列恢复出连续时间信号时域、频域波形;
clear;
close all;
dt=0.05;
t0=-2:0.01:2
t=-2:dt:2
ts1=0.01
x0=cos(4*pi*t0)+1.5*sin(6*pi*t0)+0.5*cos(20*pi*t0); x=cos(4*pi*t)+1.5*sin(6*pi*t)+0.5*cos(20*pi*t);
B=length(t0);
Y2=fft(x0)/B*2;
fs2=1/0.01;
df2=fs2/(B-1);
f2=(0:B-1)*df2;
N=length(t);
Y=fft(x)/N*2;
fs=1/dt;
df=fs/(N-1);
f=(0:N-1)*df;
tm=-50:ts1:50
gt=sinc(fs*tm)
st=sigexpand(x,dt/ts1)
x3=conv(st,gt)
A=length(tm(5001:5401));
Y1=fft(x3(5001:5401))/A*2;
fs1=1/ts1;
df1=fs1/(A-1);
f1=(0:A-1)*df1;
subplot(3,2,1)
plot(t0,x0)
title('原始时域波形')
xlabel('t')
subplot(3,2,2)
plot(f2,abs(Y2))
title('原始频域波形')
xlabel('t')
subplot(3,2,3)
plot(t,x)
title('抽样时域波形')
xlabel('t')
grid;
subplot(3,2,4)
plot(f,abs(Y));
title('抽样频域信号 |Y|');
xlabel('f');
subplot(3,2,5)
plot(t0,x3(5001:5401))
title('恢复后的信号');
xlabel('tm')
subplot(3,2,6)
plot(f1,abs(Y1));
title('恢复频域信号 |Y1|');
xlabel('f1');
grid;
(4)采样频率分别为50 Hz时的采样序列波形,幅频特性曲线,以及由采样序列恢复出连续时间信号时域、频域波形;;
clear;
close all;
dt=0.02;
t0=-2:0.01:2
t=-2:dt:2
ts1=0.01
x0=cos(4*pi*t0)+1.5*sin(6*pi*t0)+0.5*cos(20*pi*t0);
x=cos(4*pi*t)+1.5*sin(6*pi*t)+0.5*cos(20*pi*t);
B=length(t0);
Y2=fft(x0)/B*2;
fs2=1/0.01;
df2=fs2/(B-1);
f2=(0:B-1)*df2;
N=length(t);
Y=fft(x)/N*2;
fs=1/dt;
df=fs/(N-1);
f=(0:N-1)*df;
tm=-50:ts1:50
gt=sinc(fs*tm)
st=sigexpand(x,dt/ts1)
x3=conv(st,gt)
A=length(tm(5001:5401));
Y1=fft(x3(5001:5401))/A*2; fs1=1/ts1;
df1=fs1/(A-1);
f1=(0:A-1)*df1;
subplot(3,2,1)
plot(t0,x0)
title('原始时域波形') xlabel('t')
subplot(3,2,2)
plot(f2,abs(Y2))
title('原始频域波形') xlabel('t')
subplot(3,2,3)
plot(t,x)
title('抽样时域波形') xlabel('t')
grid;
subplot(3,2,4)
plot(f,abs(Y));
title('抽样频域信号 |Y|'); xlabel('f');
subplot(3,2,5)
plot(t0,x3(5001:5401)) title('恢复后的信号'); xlabel('tm')
subplot(3,2,6)
plot(f1,abs(Y1));
title('恢复频域信号 |Y1|'); xlabel('f1');
grid;
六、实验结论
实验中对模拟信号进行采样,需要根据最高截止频率Fmax,按照采样定理的要求选择采样频率的两倍,即 Fs>2Fmax。设计中对三种频率时采样分析总结:
(1)欠采样:即Fs<2Fmax时,时域波形恢复过程中已经不能完整的表示原信号,有了失真,从频谱上也可看出,同的频谱带互相重叠,已经不能体现原信号频谱的特点了,从而无法得到原来的信号。
(2)临界采样:即Fs=2Fmax时,时域波形任然不能恢复完整的原信号,信号只恢复过程中恢复了低频部分,从频谱上便可看出,但任然不可完全恢复原信号。
(3)过采样:即Fs>2Fmax时,此时的采样是成功的,它能够恢复原信号,从时域波形可看出,比上面采样所得的冲激脉冲串包含的细节要多,在频域中也没出现频谱的交叠,这样我们可以利用低通滤波器m(t)得到无失真的重建。
七、实验体会
通过本实验,认识Matlab这个功能强大的仿真软件,初步了解了Matlab的操作界面以及简单的程序语言和程序运行方式,通过具体的取样和恢复信号的过程,更加深刻了解了采样定理的定义的具体含义:将模拟信号转换成数字信号,即对连续信号进行等间隔采样形式采样,采样信号的频率是原连续信号的频谱以采样频率为周期的延拓形成的,通过MATLAB编程实现对抽样定理的验证,加深了抽样定理的理解。同时自己训练应用计算机分析问题的能力。
(注:文档可能无法思考全面,请浏览后下载,供参考。可复制、编制,期待你的好评与关注)