数字信号处理课设实验报告.docx
- 文档编号:27089544
- 上传时间:2023-06-26
- 格式:DOCX
- 页数:31
- 大小:333.57KB
数字信号处理课设实验报告.docx
《数字信号处理课设实验报告.docx》由会员分享,可在线阅读,更多相关《数字信号处理课设实验报告.docx(31页珍藏版)》请在冰豆网上搜索。
数字信号处理课设实验报告
数字信号处理
—课程设计报告
学院:
信息工程学院
专业:
姓名:
井底之蛙
学号:
********
指导老师:
日期:
2018年
题目一:
用Matlab验证时域采样定理和频域采样定理
1、设计目的:
(1)掌握模拟信号时域采样前后频谱的变化规律及时域采样定理;
(2)掌握频域采样的概念及频域采样定理;
(3)掌握时域采样频率的选择方法及频域采样点数的选择方法。
2、设计内容:
编制Matlab程序,完成以下功能,对给定模拟信号进行时域采样,观察不同采样频率对采样信号频谱的影响,验证时域采样定理;对给定序列进行傅里叶变换,并在频域进行采样,观察不同采样点数对恢复序列的影响,验证频域采样定理;绘制相关信号的波形。
具体要求如下:
(1)验证时域采样定理
给定模拟信号
式中,A=444.128,
。
现用DFT(FFT)求该模拟信号的幅频特性,以验证时域采样理论。
(问答)时域采样定理:
当时间信号函数f(t)的最高频率分量为fM时,f(t)的值可由一系列采样间隔小于或等于1/(2fM)的采样值来确定,即采样点的重复频率f≥(2fM)
按照xa(t)的幅频特性曲线,选取三种采样频率,即Fs=1kHz,300Hz,200Hz。
观测时间选Tp=64ms。
为使用DFT,首先用下面的公式产生时域离散信号,对三种采样频率,采样序列按顺序用x1(n)、x2(n)、x3(n)表示。
因为采样频率不同,得到的x1(n)、x2(n)、x3(n)的长度不同,长度(点数)用公式N=Tp×Fs计算。
选FFT的变换点数为M=64,序列长度不够64的尾部加零。
X(k)=FFT[x(n)],k=0,1,2,3,…,M-1
式中,k代表的频率为
要求:
编写实验程序,计算x1(n)、x2(n)和x3(n)的幅度特性,并绘图显示。
观察分析频谱混叠失真,并结合时域采样定理给出解释。
程序:
n=0:
63;%定义序列的长度是64
M=64;
A=444.128;%设置信号有关的参数
a=50*sqrt(2.0)*pi;
T=0.001;%采样率
F=1000;
F1=300;
F2=200;
w0=50*sqrt(2.0)*pi;
f=n*F/M;
f1=n*F1/M;
f2=n*F2/M;
x=A*exp(-a*n*T).*sin(w0*n*T);
subplot(3,2,1);
stem(x);%绘制x(n)的图形
title('理想采样信号采样频域为1000');
subplot(3,2,2);
magx=abs(fft(x,64));%绘制x(n)的图形
stem(f,magx);
xlabel('f/Hz');
ylabel('|x1(jf)|');
title('理想采样信号采样频域为1000FFT');
n1=0:
20;
T1=1/300;
x1=A*exp(-a*n1*T1).*sin(w0*n1*T1);
subplot(3,2,3);
stem(x1);%绘制x(n)的图形
title('理想采样信号采样频率为300');
subplot(3,2,4);
magx1=abs(fft(x1,64));%绘制x(n)的图形
stem(f1,magx1);
xlabel('f/Hz');
ylabel('|x2(jf)|');
title('理想采样信号采样频域为300FFT');
n2=0:
12;
T2=0.005;
x2=A*exp(-a*n2*T2).*sin(w0*n2*T2);
subplot(3,2,5);
stem(x2);%绘制x(n)的图形
title('理想采样信号采样频率为200');
subplot(3,2,6);
magx2=abs(fft(x2,64));
title('理想采样信号采样频域为200FFT');
stem(f2,magx2);
xlabel('f/Hz');
ylabel('|x3(jf)|');
由上图可见,我们所做的以上采样序列的频谱的确是以采样频率为周期对模拟信号频谱的周期延拓。
当采样频率为1000Hz时频谱混叠就很小;当采样频率为300Hz时,可以看到在折叠频率150Hz附近频谱混叠已经很严重;当采样频率为200Hz时,在折叠频率100Hz附近频谱混叠就更加严重了。
而题目要求保持信号时间64ms,所以在改变频率的同时采样点也要改变以保证信号持续时间不变,时域采样定理即是对信号进行离散化处理,但是要保证在频域中能够将信号完整分离出来,所以要保证采样频率ws>=2wm。
(2)频域采样理论的验证。
(问答)频域采样定理:
对信号x(n)x(n)的频谱函数X(ejw)X(ejw)在[0,2π)[0,2π)上等间隔采样N点,得到:
XN(k)=X(ejw)|w=2πk/N , k=0,1,2,...,N−1
XN(k)=X(ejw)|w=2πk/N , k=0,1,2,...,N−1
则N点IDFT[XN(k)][XN(k)]得到的序列就是原序列x(n)x(n)以N为周期延拓后的主值区序列,公式为:
xN(n)=IDFT[XN(k)]N=[∑i=−∝∝x(n+iN)]RN(n)
给定信号如下:
编写程序分别对频谱函数X(ejω)=FT[x(n)]在区间[0,2π]上等间隔采样32点和16点,得到X32(k)和X16(k):
再分别对X32(k)和X16(k)进行32点和16点IFFT,得到x32(n)和x16(n):
分别画出X(ejω)、X32(k)和X16(k)的幅度谱,并绘图显示x(n)、x32(n)和x16(n)的波形,进行对比和分析,验证总结频域采样理论。
提示:
频域采样用以下方法容易编程实现。
(1)直接调用MATLAB函数fft计算X32(k)=FFT[x(n)]32就得到X(ejω)在[0,2π]的32点频率域采样X32(k)。
(2)抽取X32(k)的偶数点即可得到X(ejω)在[0,2π]的16点频率域采样X16(k),即X16(k)=X32(2k),k=0,1,2,…,15。
(3)当然,也可以按照频域采样理论,先将信号x(n)以16为周期进行周期延拓,取其主值区(16点),再对其进行16点DFT(FFT),得到的就是X(ejω)在[0,2π]的16点频率域采样X16(k)。
程序:
M=26
N=32;
n=0:
M;
xa=0:
floor(M/2);
xb=ceil(M/2)-1:
-1:
0;
xn=[xa,xb]+1;
Xk=fft(xn,1024);
X32k=fft(xn,32);
x32n=ifft(X32k);
X16k=X32k(1:
2:
N);
x16n=ifft(X16k,N/2);
k=0:
1023;
wk=2*k/1024;
subplot(3,2,1);
plot(wk,abs(Xk));
title('(a)FT[x(n)]');
xlabel('\om/\pi');
ylabel('|Xe^j^\om|');
axis([0,1,0,200]);
subplot(3,2,2);
plot(n,xn,'.');
title('(b)三角波序列x(n)');
xlabel('n');
ylabel('x(n)');
axis([0,32,0,20]);
k=0:
N/2-1;
subplot(3,2,3);
plot(k,abs(X16k),'.');
title('(c)16点频域采样');
xlabel('k');
ylabel('|X_1_6(k)|');
axis([0,8,0,200]);
n1=0:
N/2-1;
subplot(3,2,4);
plot(n1,x16n,'.');
title('16IDFT[X_1_6(k)]');
xlabel('n');
ylabel('x_1_6(n)');
axis([0,32,0,20]);
k=0:
N-1;
subplot(3,2,5);
plot(k,abs(X32k),'.');
title('32点频域采样');
xlabel('k');
ylabel('|X_3_2(k)|');
axis([0,16,0,200]);
n1=0:
N-1;
subplot(3,2,6);
plot(n1,x32n,'.');
title('32IDFT[X_3_2(n)]');
xlabel('n');
ylabel('x_3_2(n)');
axis([0,32,0,20]);
由于N 当N32时,由于N>M,采取的点是偶数点,所以依据频域采样定理,不存在时域混叠失真,XN(x)与x(n)相等。 题目二: 正余弦信号的谱分析 1、设计目的: (1)用DFT实现对正余弦信号的谱分析; (2)观察DFT长度和窗函数长度对频谱的影响; (3)对DFT进行谱分析中的误差现象获得感性认识。 2、设计内容: (1)对一个频率为10Hz,采样频率为64Hz的32点余弦序列进行谱分析,画出其频谱图;若将频率改为11Hz,其他参数不变,重新画出该序列的频谱图,观察频谱泄漏现象,分析原因; 程序: %10Hz和11Hz的谱分析 t=0: 0.001: 0.2; n=0: 31; f1=10; f2=11; x11=cos(2*pi*f1*t); x21=cos(2*pi*f2*t); x12=cos(2*pi*f1*n*1/64); x22=cos(2*pi*f2*n*1/64); X1=abs(fft(x12,32)); X2=abs(fft(x22,32)); subplot(3,2,1); plot(n,X1,'.'); xlabel('n'); ylabel('X(k)'); axis([0,32,0,20]); title('10Hz的32点谱分析'); subplot(3,2,2); plot(n,X2,'.'); xlabel('n'); ylabel('X(k)'); axis([0,32,0,20]); title('11Hz的32点谱分析'); 上图看出,频率为10Hz的余弦曲线DFT谱分析只有两个点不等于零,位于k=5和k=27处,这样DFT确实正确的分辨了余弦信号的频率。 将频率改为11Hz,采样频率和窗长度依然为32点,频谱图上k=6和k=26处都有较大的峰值,而其它的点上幅度不再为零。 信号的峰值位于两者之间,本来是单一的11Hz频率的能量会分不到许多DFT频率上,这种现象就是截断效应。 (2)考察DFT的长度对双频率信号频谱分析的影响。 设待分析的信号为 令两个长度为16的正余弦序列的数字频率为 及 。 取N为四个不同值16,32,64,128。 画出四个DFT幅频图,分析DFT长度对频谱分辨率的影响。 程序: %f1为0.22,f2为0.34的DFT分析 n=0: 15; N1=16; N2=32; N3=64; N4=128; f1=0.22; f2=0.34; x=0.5*sin(2*pi*f1*n)+sin(2*pi*f2*n); F=abs(fft(x,N1)); k1=0: N1-1; subplot(2,2,1); plot(k1/N1,F); xlabel('k1'); ylabel('F(k1)'); axis([0,0.5,0,10]); title('16点DFT幅频'); F1=abs(fft(x,N2)); k2=0: N2-1; subplot(2,2,2); plot(k2/N2,F1); xlabel('k2'); ylabel('F1(k2)'); axis([0,0.5,0,10]); title('32点DFT幅频'); F2=abs(fft(x,N3)); k3=0: N3-1; subplot(2,2,3); plot(k3/N3,F2); xlabel('k3'); ylabel('F2(k3)'); axis([0,0.5,0,10]); title('64点DFT幅频'); F3=abs(fft(x,N4)); k4=0: N4-1; subplot(2,2,4); plot(k4/N4,F3); xlabel('k4'); ylabel('F3(k4)'); axis([0,0.5,0,10]); title('128点DFT幅频'); 由上图可知,可确定峰值的位置大体在f=0.21和0.35之附近,与信号的给定频率有一定的误差,这也是截断和泄露带来的问题,在这图上还可以看到一些较小的峰,这是很难判断是输入信号固有的,还是由泄露引起的。 但随着采样点的增加,到32,64,128逐渐增大的分辨率。 (3)在上题中若把两个正弦波的频率取得较近,令 , ,试问怎样选择FFT参数才能在频谱分析中分辨出这两个分量? 0.22和0.25在n为16时 0.22和0.25在n为32时 0.22和0.25在n为64时 0.22和0.25在n为128时 由上面四个图可以很明了的看出,分清0.22和0.25两个频率,分辨率至少应达到f=0.03.总的样本数至少要达到1/0.03=33个, 因为此处的数字频率是对采样频率Fs进行归一化后的,即fr最大为1。 n信号长度从16,32,64,128逐渐增大,在频率采样原理下的情况下,可以从图中看出,16长度时采样为16,32,64,128下都无法分辨,这是肯定的;32长度采样32根本无法分辨,64和128下有很大模糊,信号长度64和128分辨率大,能分出0.22和0.25了。 (问答)谱分析中的误差现象 混叠误差。 产生混叠误差的原因是: 信号的离散化是通过抽样实现的,而抽样频率再高总是有限的。 除带限信号外,如果信号的最高频率Ω趋于无穷,则实际器件无法满足抽样定理。 而抽样过程如果不满足抽样定理,就会产生频谱的混叠,即混叠误差。 要减少或避免混叠误差,应该提高抽样频率,以设法满足抽样定理,或者采用抗混叠滤波这样的信号预处理措施。 栅栏效应。 对于非周期信号来说,理论上应具有连续的频谱,但数字谱分析是用DFT 来近似的,是用频谱的抽样值逼近连续频谱值,只能观察到有限个频谱值,每一个间隔中的频谱都观察不到。 如同通过“栅栏”观察景物一样,一部分被“栅栏”所阻挡,看不见,把这种现象称为栅栏效应。 连续时间信号只要采用数字谱分析的方法,就必定产生栅栏效应,栅栏效应只能减小而无法避免。 能够感受的频谱最小间隔值,称为频谱分辨率,而频率分辨率与信号截断长度成反比,且频率分辨率越小,插值效果越好。 因此即使连续信号是有限时间的,也应选择一个大的截断长度来改善栅栏效应。 截断误差。 截断误差是由于对信号进行截断,把无限长的信号限定为有限长,即令有限区间以外的函数值均为零值的近似处理而产生的,这种处理相当于用一个矩形(窗)信号乘待分析的连续时间信号。 必然会引起吉布斯效应(波动),也会把窗函数的频谱引入信号频谱 ,造成混叠,所以需要考虑其误差的问题。 题目三: 利用数字滤波器实现信号分离 1、设计目的: (1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;熟悉用窗函数法设计FIR数字滤波器的原理与方法; (2)学会调用MATLAB信号处理工具箱中滤波器设计函数设计各种IIR数字滤波器和FIR数字滤波器,学会根据滤波需求确定滤波器指标参数。 (3)掌握IIR数字滤波器和FIR数字滤波器的MATLAB实现方法。 (4)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。 2、设计内容: 编制Matlab程序,完成以下功能,调用给定信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,通过观察st的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。 完成相应滤波器设计,将st中三路调幅信号分离出来。 具体要求如下: (1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如下图所示。 由图可见,三路信号时域混叠无法在时域分离。 但频域是分离的,所以可以通过滤波的方法在频域分离。 (2)要求将st中三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。 设计相应的IIR数字滤波器,并绘图显示其幅频特性曲线,要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB。 提示: 抑制载波单频调幅信号的数学表示式为 其中, 称为载波,fc为载波频率, 称为单频调制信号,f0为调制正弦波信号频率,且满足 。 由上式可见,所谓抑制载波单频调幅信号,就是2个正弦信号相乘,它有2个频率成分: 和频 和差频 ,这2个频率成分关于载波频率fc对称。 所以,1路抑制载波单频调幅信号的频谱图是关于载波频率fc对称的2根谱线,其中没有载频成分,故取名为抑制载波单频调幅信号。 容易看出,图中三路调幅信号的载波频率分别为250Hz、500Hz、1000Hz。 如果调制信号m(t)具有带限连续频谱,无直流成分,则 就是一般的抑制载波调幅信号。 其频谱图是关于载波频率fc对称的2个边带(上下边带),在专业课通信原理中称为双边带抑制载波(DSB-SC)调幅信号,简称双边带(DSB)信号。 如果调制信号m(t)有直流成分,则 就是一般的双边带调幅信号。 其频谱图是关于载波频率fc对称的2个边带(上下边带),并包含载频成分。 (问答)4种IIR滤波器的性能特点 IIR数字滤波器采用递归型结构,即结构上带有反馈环路。 IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。 由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。 IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。 在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。 1.数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。 因此,它本身即可以是用数字硬件装配成的一台完成给定运算的专用数字计算机,也可以是将所需运算编成程序,让通用计算机来执行。 2.巴特沃斯滤波器的特点是通频带内的频率响应曲线最大限度平坦,没有起伏,而在阻频带则逐渐下降为零。 在振幅的对数对角频率的波特图上,从某一边界角频率开始,振幅随着角频率的增加而逐步减少,趋向负无穷大。 巴特沃斯滤波器的频率特性曲线,无论在通带内还是阻带内都是频率的单调函数。 因此,当通带的边界处满足指标要求时,通带内肯定会有裕量。 所以,更有效的设计方法应该是将精确度均匀的分布在整个通带或阻带内,或者同时分布在两者之内。 这样就可用较低阶数的系统满足要求。 这可通过选择具有等波纹特性的逼近函数来达到。 3.贝赛尔滤波器是具有最大平坦的群延迟(线性相位响应)的线性过滤器。 贝赛尔滤波器常用在音频天桥系统中。 模拟贝赛尔滤波器描绘为几乎横跨整个通频带的恒定的群延迟,因而在通频带上保持了被过滤的信号波形。 贝塞尔(Bessel)滤波器具有最平坦的幅度和相位响应。 带通(通常为用户关注区域)的相位响应近乎呈线性。 Bessel滤波器可用于减少所有IIR滤波器固有的非线性相位失真。 4.切比雪夫滤波器是在通带或阻带上频率响应幅度等波纹波动的滤波器,振幅特性在通带内是等波纹。 在阻带内是单调的称为切比雪夫I型滤波器;振幅特性在通带内是单调的,在阻带内是等波纹的称为切比雪夫II型滤波器。 采用何种形式的切比雪夫滤波器取决于实际用途。 (2)简述线性相位FIR滤波器的特点及条件;简述窗函数法FIR滤波器的设计步骤;解释吉布斯效应,比较各种典型窗函数的性能特点; 1)FIR是有限冲击响应: FIR是线性相位;FIR滤波器却可以得到严格的线性相位,然而由于FIR滤波器传输函数的极点固定在原点(输出只与有限项输入有关,所以传递函数分母为1,极点在零点),所以只能用较高的阶数达到高的选择性;对于同样的滤波器设计指标,FIR滤波器所要求的阶数可以比IIR滤波器高5~10倍,结果,成本较高,信号延时也较大;如果按相同的选择性和相同的线性要求来说,则IIR滤波器就必须加全通网络进行相位较正,同样要大增加滤波器的节数和复杂性。 2)FIR滤波器的设计方法有许多种: 如窗函数设计法、频率采样设计法和最优化设计法等。 窗函数设计法的基本原理是用一定宽度窗函数截取无限脉冲响应序列获得有限长的脉冲响应序列,主要设计步骤为: 1.通过傅里叶逆变换获得理想滤波器的单位脉冲响应hd(n)。 2.由性能指标确定窗函数W(n)和窗口长度N。 3.求得实际滤波器的单位脉冲响应h(n),h(n)即为所设计FIR滤波器系数向量b(n)。 4.检验滤波器性能。 3)吉布斯效应 将具有不连续点的周期函数(如矩形脉冲)进行傅里叶级数展开后,选取有限项进行合成。 当选取的项数越多,在所合成的波形中出现的峰起越靠近原信号的不连续点。 当选取的项数很大时,该峰起值趋于一个常数,大约等于总跳变值的9%。 这种现象称为吉布斯效应效应。 4)比较各种窗函数的特点 1.矩形窗 矩形窗使用最多,习惯上不加窗就是使函数通过了矩形窗。 这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄露,甚至出现负谱现象。 2.三角窗 三角窗与矩形窗比较,主瓣宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。 三角窗是改善边界连续性的最直观的一种窗。 3.汉宁窗 汉宁窗可以看作是3个矩形时间窗的频谱之和,或者说是3个sin c(t)函数之和,而括号中的两项相对于第一个谱窗向左、右各移动了π/T,从而使旁瓣相互抵消,消去高频干扰和漏能。 比较汉宁窗和矩形窗,从减小泄露观点出发,汉宁窗优于矩形窗。 但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨率下降。 4.海宁窗 海明窗和汉宁窗都是余弦窗,只是加权系数不同。 海明窗加权的系数能使旁瓣达到更小。 程序: functionst=mstg %产生信号序列向量st,并显示st的时域波形和频谱 %st=mstg返回三路调幅信号相加形成的混合信号,长度N=1600 N=1600%N为信号st的长度。 Fs=10000;T=1/Fs;Tp=N*T;%采样频率Fs=10kHz,Tp为采样时间 t=0: T: (N-1)*T;k=0: N-1;f=k/Tp; fc1=Fs/10;%第1路调幅信号的载波频率fc1=1000Hz, fm1=fc1/10;%第1路调幅信号的调制信号频率fm1=100Hz fc2=Fs/20;%第2路调幅信号的载波频率fc2=500Hz fm2=fc2/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 实验 报告