数字信号处理实验(MATLAB版)实验15时域抽样与信号的重建优质PPT.pptx
《数字信号处理实验(MATLAB版)实验15时域抽样与信号的重建优质PPT.pptx》由会员分享,可在线阅读,更多相关《数字信号处理实验(MATLAB版)实验15时域抽样与信号的重建优质PPT.pptx(40页珍藏版)》请在冰豆网上搜索。
反之,如果Fs的取值小于两倍的信号最高频率fm,则频谱,将发生混叠,抽样信号将无法不失真地还原出原模拟信号。
下面,我们用MATLAB程序来仿真演示信号从抽样到恢复的全过程。
1,实验15时域抽样与信号的重建,1.对连续信号进行采样在实际使用中,绝大多数信号都不是严格意义上的带限信号。
为了研究问题的方便,我们选择两个正弦频率叠加的信号作为研究对象。
例15-1已知一个连续时间信号,f01Hz,取最高有限带宽频率fm5f0。
分别显示原连续时间信号波形和Fs2fm、Fs2fm、Fs2fm三种情况下抽样信号的波形。
1,实验15时域抽样与信号的重建,解分别取Fsfm、Fs2fm和Fs3fm来研究问题。
MATLAB程序如下:
dt0.1;
f01;
T01/f0;
fm5*f0;
Tm1/fm;
t2:
dt:
2;
fsin(2*pi*f0*t)1/3*sin(6*pi*f0*t);
%建立原连续信号subplot(4,1,1),plot(t,f);
axis(min(t)max(t)1.1*min(f)1.1*max(f);
title(原连续信号和抽样信号);
fori1:
3;
1,实验15时域抽样与信号的重建fsi*fm;
Ts1/fs;
%确定采样频率和周期n2:
Ts:
fsin(2*pi*f0*n)1/3*sin(6*pi*f0*n);
%生成抽样信号subplot(4,1,i1),stem(n,f,filled);
axis(min(n)max(n)1.1*min(f)1.1*max(f);
end结果如图15-3所示。
1,实验15,时域抽样与信号的重建,图15-3连续信号及其抽样信号波形,1,实验15时域抽样与信号的重建,2.连续信号和抽样信号的频谱根据理论分析已知,信号的频谱图可以很直观地反映出抽样信号能否恢复还原模拟信号波形。
因此,我们对上述三种情况下的时域信号波形求振幅频谱,来进一步分析和证明时域抽样定理。
1,实验15时域抽样与信号的重建,例15-2求解例15-1中原连续信号波形和Fs2fm三种情况下的抽样信号波形所对应的幅度谱。
解图15-4依次表示原连续信号和Fs2fm抽样信号的频谱,与图15-3上各时域信号一一对应。
由图可见,当满足Fs2fm条件时,抽样信号的频谱没有混叠现象;
当不满足Fs2fm条件时,抽样信号的频谱发生了混叠,即图15-4第2行Fs2fm的频谱图,在fm5f0的范围内,频谱出现了镜像对称的部分。
1,实验15,时域抽样与信号的重建,图15-4连续信号及其抽样信号的振幅频谱,1,实验15时域抽样与信号的重建,抽样信号波形所对应的幅度谱MATLAB程序如下:
%输入基波的频率、计算周期t2:
Nlength(t);
%求时间轴上采样点数fsin(2*pi*f0*t)1/3*sin(6*pi*f0*t);
%建立原连续信号fm5*f0;
%最高频率取基波的5倍频wm2*pi*fm;
k0:
N1;
1,实验15时域抽样与信号的重建w1k*wm/N;
%在频率轴上生成N个采样频率点F1f*exp(j*t*w1)*dt;
%对原信号进行傅里叶变换subplot(4,1,1),plot(w1/(2*pi),abs(F1);
axis(0max(4*fm)1.1*min(abs(F1)1.1*max(abs(F1);
%生成fs2fm三种抽样信号的振幅频谱fori1:
ifi2c0,elsec1,endfs(ic)*fm;
1,实验15时域抽样与信号的重建fsin(2*pi*f0*n)1/3*sin(6*pi*f0*n);
%生成抽样信号Nlength(n);
%求时间轴上采样点数wm2*pi*fs;
wk*wm/N;
Ff*exp(j*n*w)*Ts;
%对抽样信号进行傅里叶变换subplot(4,1,i1),plot(w/(2*pi),abs(F);
axis(0max(4*fm)1.1*min(abs(F)1.1*max(abs(F);
end,1,实验15时域抽样与信号的重建,3.由内插公式重建信号满足奈奎斯特(Nyquist)抽样定理的信号,,只,要经过一个理想的低通滤波器,将原信号有限带宽以外的频率部分滤除,就可以重建xa(t)信号,如图15-5(a)所示。
信号重建一般采用两种方法:
一是用时域信号与理想滤波器系统的单位冲激响应进行卷积积分来求解;
二是设计实际的模拟低通滤波器对信号进行滤波。
我们首先来讨论第一种方法。
1,实验15,时域抽样与信号的重建,图15-5抽样信号经过理想低通滤波器重建xa(t)信号,1,实验15时域抽样与信号的重建理想低通滤波器的频域特性为一矩形,如图15-5(b)所示,其单位冲激响应为,信号通过滤波器输出,其结果应为与h(t)的卷积积分:
1,实验15,时域抽样与信号的重建,1,实验15时域抽样与信号的重建,(15-1)式(15-1)称为内插公式。
由式可见,xa(t)信号可以由其抽样值xa(nT)及内插函数重构。
MATLAB中提供了sinc函数,可以很方便地使用内插公式。
1,实验15时域抽样与信号的重建例15-3用时域卷积推导出的内插公式重建例15-1给定的信号。
解MATLAB程序如下:
dt0.01;
%输入基波的频率、周期fm5*f0;
%最高频率为基波的5倍频t0:
3*T0;
xsin(2*pi*f0*t)1/3*sin(6*pi*f0*t);
%建立原连续信号subplot(4,1,1),plot(t,x);
1,实验15时域抽样与信号的重建axis(min(t)max(t)1.1*min(x)1.1*max(x);
title(用时域卷积重建抽样信号);
fsi*fm;
%确定采样频率和周期,n0:
(3*T0)/Tst10:
%生成n序列%生成t序列,x1sin(2*pi*n*f0/fs)1/3*sin(6*pi*n*f0/fs);
%生成抽样信号TNones(length(n),1)*t1n*Ts*ones(1,length(t1);
%生成tnT矩阵,1,实验15时域抽样与信号的重建xax1*sinc(fs*pi*TN);
%内插公式subplot(4,1,i1),plot(t1,xa);
axis(min(t1)max(t1)1.1*min(xa)1.1*max(xa);
end,原信号与重建信号的结果如图15-6所示。
1,实验15,时域抽样与信号的重建,图15-6用时域卷积内插公式重建信号,1,实验15时域抽样与信号的重建,*4.由模拟滤波器重建信号图15-5(a)所示电路中的滤波器也可以选择实际设计的模拟滤波器(参考实验22)。
此时须注意的问题是,实际设计的模拟滤波器一般与理想滤波器的幅频特性有一定的差别,设计时应尽量选择幅频响应接近理想曲线的实际滤波器。
1,实验15时域抽样与信号的重建,例15-4由例15-2原信号频谱图可见,xa(t)信号的基波频率为f01Hz,有限带宽取fm5Hz,假定模拟低通滤波器的3dB截止频率fcfm,电路阶数N6,通带波动RP1dB,阻带衰减AS20dB。
试用图形表示理想的低通滤波器和实际模拟低通滤波器的幅频响应曲线。
1,实验15时域抽样与信号的重建解分别设计巴特沃斯和切比雪夫型、切比雪夫型低通滤波器并描绘曲线,进行比较。
MATLAB程序如下:
fm1;
N6;
rp1;
as20;
Wp2*pi*fm;
%计算截止角频率dw(2*Wp)/399;
%确定频率轴上采样点间的间隔w0:
dw:
2*Wp;
%在频率轴上生成采样序列h0ones(1,201),zeros(1,199);
%建立理想低通滤波频响特性%设计巴特沃斯低通滤波器,1,实验15时域抽样与信号的重建b,abutter(N,Wp,s);
hfreqs(b,a,w);
subplot(3,1,1),plot(w/(2*pi),abs(h),w/(2*pi),,abs(h0);
gridaxis(0max(2*fm)1.1*min(abs(h)1.1*max(abs(h);
%设计切比雪夫型低通滤波器b,acheby1(N,rp,Wp,s);
subplot(3,1,2),plot(w/(2*pi),abs(h),w/(2*pi),abs(h0);
grid,1,实验15时域抽样与信号的重建,axis(0max(2*fm)1.1*min(abs(h)1.1*max(abs(h);
%设计切比雪夫型低通滤波器b,acheby2(N,as,Wp,s);
subplot(3,1,3),plot(w/(2*pi),abs(h),w/(2*pi),abs(h0);
1,实验15时域抽样与信号的重建图15-7分别表示了设计出的巴特沃斯和切比雪夫型、型低通滤波器的幅频响应曲线,同时用较细的线条标出了理想低通滤波器曲线。
由曲线观察可见,切比雪夫型的幅频曲线与理想滤波器曲线最为接近。
1,实验15,时域抽样与信号的重建,图15-7巴特沃斯和切比雪夫型、型低通滤波器的幅频响应,1,实验15时域抽样与信号的重建例15-5选定使用切比雪夫型滤波器对Fs2fm抽样信号进行滤波,重建xa(t)信号,由此验证奈奎斯特定理。
解用切比雪夫型低通滤波器滤波,MATLAB程序如下:
%最高频率为基波的5倍频t2:
0.1:
%建立原连续信号,1,实验15时域抽样与信号的重建subplot(4,1,1),plot(t,f);
gridtitle(原信号与重建的信号);
axis(min(t)max(t)