一、实验目的
时域采样理论与频域采样理论是数字信号处理中的重要理论。要求掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号不丢失信息;要求掌握频率域采样会引起时域周期化的概念,以及频率域采样定理及其对频域采样点数选择的指导作用。 二、实验原理及方法 1、时域采样定理的要点:
a)对模拟信号xa(t)以间隔T进行时域等间隔理想采样,
ˆ(j)是原模拟信号频谱X(j)以采形成的采样信号的频谱Xa样角频率s(s
2/T)为周期进行周期延拓。公式为:
1ˆ(j)FT[xˆa(t)]Xa(jjns) XaTnb)采样频率s必须大于等于模拟信号最高频率的两倍以上,才能使采样信号的频谱不产生频谱混叠。利用计算机计算上式并不方便,下面我们导出另外一个公式,以便用计算机上进行实验。
ˆa(t)和模拟信号xa(t)之间的关系为: 理想采样信号xˆa(t)xa(t)(tnT) xn对上式进行傅立叶变换,得到:
ˆ(j)[x(t)(tnT)]ejtdt Xaan =nxa(t)(tnT)ejtdt
在上式的积分号内只有当tnT时,才有非零值,因此:
ˆ(j)Xanxa(nT)ejnT
上式中,在数值上xa(nT)=x(n),再将T代入,得到:
ˆ(j)Xanx(n)ejn
,即
上式的右边就是序列的傅立叶变换
ˆ(j)X(ej)XaTX(ej)
上式说明理想采样信号的傅立叶变换可用相应的采样序列的傅立叶变换得到,只要将自变量ω用T代替即可。 2、频域采样定理的要点:
a)对信号x(n)的频谱函数X(ejω)在[0,2π]上等间隔采样N点,得到
XN(k)X(ej)2kN , k0,1,2,,N1
则N点IDFT[XN(k)]得到的序列就是原序列x(n)以N为周期进行周期延拓后的主值区序列,公式为:
xN(n)IDFT[XN(k)]N[x(niN)]RN(n)i
b)由上式可知,频域采样点数N必须大于等于时域离散信号的长度M(即N≥M),才能使时域不产生混叠,则N点IDFT[XN(k)]得到的序列xN(n)就是原序列x(n),即xN(n)=x(n)。
如果N>M,xN(n)比原序列尾部多N-M个零点;如果N N 也比x(n)的长度M短,因此。xN(n)与x(n)不相同。 在数字信号处理的应用中,只要涉及时域或者频域采样,都必须服从这两个采样理论的要点。 对比上面叙述的时域采样原理和频域采样原理,得到一个有用的结论,这两个采样理论具有对偶性:“时域采样频谱周期延拓,频域采样时域信号周期延拓”。因此放在一起进行实验。 三、实验内容及步骤 1、时域采样理论的验证 tx(t)Aesin(0t)u(t) a给定模拟信号, 式中A=444.128,=50频特性曲线如图2.1 2π ,0=50 2πrad/s,它的幅 图2.1 xa(t)的幅频特性曲线 现用DFT(FFT)求该模拟信号的幅频特性,以验证时域采 样理论。 按照xa(t)的幅频特性曲线,选取三种采样频率,即 Fs=1kHz,300Hz,200Hz。观测时间选Tp50ms。 为使用DFT,首先用下面公式产生时域离散信号,对三种采样频率,采样序列按顺序用x1(n),x2(n),x3(n)表示。 nTx(n)x(nT)Aesin(0nT)u(nT) a 因为采样频率不同,得到的x1(n),x2(n),x3(n)的长度不同, 长度(点数)用公式NTpFs计算。选FFT的变换点数为M=64,序列长度不够64的尾部加零。 X(k)=FFT[x(n)] , k=0,1,2,3,-----,M-1 式中k代表的频率为 k2kM。 要求: 编写实验程序,计算x1(n)、x2(n)和x3(n)的幅度特性,并绘图显示 析频谱混叠失真。 Matlab源代码: A=444.128;a=50*sqrt(2)*pi;w0=50*sqrt(2)*pi; Tp=50/1000;F1=1000;F2=300;F3=200; %观察时间Tp=50ms T1=1/F1;T2=1/F2;T3=1/F3; %不同的采样频率 n1=0:Tp*F1-1;n2=0:Tp*F2-1;n3=0:Tp*F3-1; %产生不同的长度区间n1,n2,n3 x1=A*exp(-a*n1*T1).*sin(w0*n1*T1); %产生采样序列x1(n) x2=A*exp(-a*n2*T2).*sin(w0*n2*T2); %产生采样序列x2(n) x3=A*exp(-a*n3*T3).*sin(w0*n3*T3); %产生采样序列x3(n) f1=fft(x1,length(n1)); %x1(n)的FFT变换 f2=fft(x2,length(n2)); %x2(n)的FFT变换 f3=fft(x3,length(n3)); %x3(n)的FFT变换 k1=0:length(f1)-1; fk1=k1/Tp; %x1(n)谱的横坐标的取值 k2=0:length(f2)-1; fk2=k2/Tp; %x2(n)谱的横坐标的取值 k3=0:length(f3)-1; fk3=k3/Tp; %x3(n)谱的横坐标的取值 subplot(3,2,1) 采样序列采样序列采样序列的频的频的频stem(n1,x1,'.') title('(a)Fs=1000Hz'); xlabel('n');ylabel('x1(n)'); subplot(3,2,3) stem(n2,x2,'.') title('(b)Fs=300Hz'); xlabel('n');ylabel('x2(n)'); subplot(3,2,5) stem(n3,x3,'.') title('(c)Fs=200Hz'); xlabel('n');ylabel('x3(n)'); subplot(3,2,2) plot(fk1,abs(f1)) title('(a) FT[xa(nT)],Fs=1000Hz'); xlabel('f(Hz)');ylabel('幅度') subplot(3,2,4) plot(fk2,abs(f2)) title('(b) FT[xa(nT)],Fs=300Hz'); xlabel('f(Hz)');ylabel('幅度') subplot(3,2,6) plot(fk3,abs(f3)) title('(c) FT[xa(nT)],Fs=200Hz'); xlabel('f(Hz)');ylabel('幅度') 实验图像: (a)Fs=1000Hz2001000(a) FT[xa(nT)],Fs=1000Hzx1(n)0-2000204060幅度500005001000f(Hz)(b) FT[xa(nT)],Fs=300Hzn(b)Fs=300Hz200400x2(n)0-200051015幅度20000100200300n(c)Fs=200Hz200200f(Hz)(c) FT[xa(nT)],Fs=200Hzx3(n)0-20005n10幅度1000050100f(Hz)150200 结果分析: 由图2.2可见,采样序列的频谱的确是以采样频率为周期对模拟信号频谱的周期延拓。当采样频率为1000Hz时频谱混叠很小;当采样频率为300Hz时,在折叠频率150Hz附近频谱混叠很严重;当采样频率为200Hz时,在折叠频率110Hz附近频谱混叠更很严重。 由实验图像可以看出,时域非周期对应着频域连续。对连续时间函数对采样使其离散化处理时,必须满足时域采样定理的要求,否则,必将引起频域的混叠。要满足要求信号的最高频率Fc不能采样频率的一半(Fs/2),不满足时域采样定理,频率将会在ω=π附近,或者f=Fs/2混叠而且混叠得最 严重。 2、频域采样理论的验证 给定信号如下: n10n13x(n)27n14n260其它 X(ej)FT[x(n)]在区间[0,2]上等 编写程序分别对频谱函数间隔采样32 和16点,得到X32(k)和X16(k): X32(k)X(ej)X16(k)X(ej)2k32 , k0,1,2,31 2k16 , k0,1,2,15再分别对X32(k)和X16(k)进行32点和16点IFFT,得到 x32(n)和x16(n): x32(n)IFFT[X32(k)]32 , n0,1,2,x16(n)IFFT[X16(k)]16 , n0,1,2,,31 ,15 jX(e)、X32(k)和X16(k)的幅度谱,分别画出并绘图显示 x(n)、 x32(n)和x16(n)的波形,进行对比和分析,验证总结频域采样理 论。 提示:频域采样用以下方法容易变程序实现。 ① 直接调用MATLAB函数fft计算X32(k)FFT[x(n)]32就得到 X(ej)在[0,2]的 32点频率域采样 jX(k)X(e)在[0,2]的16点频率32② 抽取的偶数点即可得到 域采样X16(k),即X16(k)X32(2k) , k0,1,2,,15。 3 当然也可以按照频域采样理论,先将信号x(n)以16○ 为周期进行周期延拓,取其主值区(16点),再对其进行16点 jX(e)在[0,2]的DFT(FFT),得到的就是 16点频率域采样 X16(k)。 Matlab源代码: M=27;N=32;n=0:M; %产生M长三角波序列x(n) xa=0:floor(M/2); xb= ceil(M/2)-1:-1:0; xn=[xa,xb]; Xk=fft(xn,1024); %1024点FFT[x(n)], 用于近似序列x(n)的TF X32k=fft(xn,32) ;%32点FFT[x(n)] x32n=ifft(X32k); %32点IFFT[X32(k)]得到x32(n) X16k=X32k(1:2:N); %隔点抽取X32k得到X16(K) x16n=ifft(X16k,N/2); %16点IFFT[X16(k)]得到x16(n) subplot(3,2,2);stem(n,xn,'.');box on title('(b) 三 角 波 序 列 x(n)');xlabel('n');ylabel('x(n)');axis([0,32,0,20]) k=0:1023;wk=2*k/1024; % subplot(3,2,1);plot(wk,abs(Xk));title('(a)FT[x(n)]'); xlabel('\\omega/\\pi');ylabel('|X(e^j^\\omega)|');axis([0,1,0,200]) k=0:N/2-1; subplot(3,2,3);stem(k,abs(X16k),'.');box on title('(c) 16 点 频 域 采 样 ');xlabel('k');ylabel('|X_1_6(k)|');axis([0,8,0,200]) n1=0:N/2-1; subplot(3,2,4);stem(n1,x16n,'.');box on title('(d) 16 点 IDFT[X_1_6(k)]');xlabel('n');ylabel('x_1_6(n)');axis([0,32,0,20]) k=0:N-1; subplot(3,2,5);stem(k,abs(X32k),'.');box on title('(e) 32 点 频 域 采 样 ');xlabel('k');ylabel('|X_3_2(k)|');axis([0,16,0,200]) n1=0:N-1; subplot(3,2,6);stem(n1,x32n,'.');box on title('(f) 32点 IDFT[X_3_2(k)]');xlabel('n');ylabel('x_3_2(n)');axis([0,32,0,20]) 实验图像 (a)FT[x(n)]20020(b) 三角波序列x(n)|X(ej)|100000.5/(c) 16点频域采样2001x(n)1000102030n(d) 16点IDFT[X16(k)]20|X16(k)|1000024k68x16(n)1000102030(e) 32点频域采样20020n(f) 32点IDFT[X32(k)]|X32(k)|100005k1015x32(n)100010n2030 结果分析: 该图验证了频域采样理论和频域采样定理。对信号x(n)的频谱函数X(ejω)在[0,2π]上等间隔采样N=16时, N点IDFT[XN(k)]得到的序列正是原序列x(n)以16为周期进行周期延拓后的主值区序列: xN(n)IDFT[XN(k)]N[x(niN)]RN(n)i 由于N 四、实验思考及解答 如果序列x(n)的长度为 jX(e)在[0,2]M,希望得到其频谱 上的N点等间隔采样,当N xN(n)[x(niN)]RN(n)i 再计算N点DFT则得到N点频域采样: XN(k)DFT[xN(n)]N =X(ej)2kN , k0,1,2,,N1 但是,所求的N点离散频谱对应的时域离散序列是原序列x(n)以N为周期进行周期延拓后取主值区序列,而不是原序列x(n) 五、实验小结 通过此次实验,对时域采样和频域采样的理论、定理的理解更加深入。采样是模/数中最重要的一步,采样方法的正确与否,关系到信号处理过程的成功与否。所以,无论是在时域还是频域,对信号采样必须仔细考虑采样的参数:采样频谱、采样周期、采样点数。对一个域进行采样,必将引起另一个域的周期延拓,所以,我们要做,就是选取好采样的参数,避免另一个域周期延拓时发生混叠,否则,我们采样 所得的数据肯定丢失一部分原信号的信息,我们便无法对原信号对原信号进行恢复和正确分析。 此次实验所遇到的问题:主要是时域非周期对应频域连续,频域周期对应着时域离散(DFT隐含周期性),频域非周期对应时域连续。对时域与频域的关系,还没彻底弄懂,stem和plot绘图函数有时会用错。 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yule263.com 版权所有 湘ICP备2023023988号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务