数字信号处理报告
- 格式:doc
- 大小:262.50 KB
- 文档页数:17
实验一 信号、系统及系统响应一、实验目的1、熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对时域采样定理的理解。
2、熟悉离散信号和系统的时域特性。
3、熟悉线性卷积的计算编程方法:利用卷积的方法,观察、分析系统响应的时域特性。
4、掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号、系统及其系统响应进行频域分析。
二、 实验原理1.理想采样序列:对信号x a (t)=A e −αt sin(Ω0t )u(t)进行理想采样,可以得到一个理想的采样信号序列x a (t)=A e −αt sin(Ω0nT ),0≤n ≤50,其中A 为幅度因子,α是衰减因子,Ω0是频率,T 是采样周期。
2.对一个连续时间信号x a (t)进行理想采样可以表示为该信号与一个周期冲激脉冲的乘积,即x ̂a (t)= x a (t)M(t),其中x ̂a (t)是连续信号x a (t)的理想采样;M(t)是周期冲激M(t)=∑δ+∞−∞(t-nT)=1T ∑e jm Ωs t +∞−∞,其中T 为采样周期,Ωs =2π/T 是采样角频率。
信号理想采样的傅里叶变换为X ̂a (j Ω)=1T ∑X a +∞−∞[j(Ω−k Ωs )],由此式可知:信号理想采样后的频谱是原信号频谱的周期延拓,其延拓周期为Ωs =2π/T 。
根据时域采样定理,如果原信号是带限信号,且采样频率高于原信号最高频率分量的2倍,则采样以后不会发生频率混叠现象。
三、简明步骤产生理想采样信号序列x a (n),使A=444.128,α=50√2π,Ω0=50√2π。
(1) 首先选用采样频率为1000HZ ,T=1/1000,观察所得理想采样信号的幅频特性,在折叠频率以内和给定的理想幅频特性无明显差异,并做记录;(2) 改变采样频率为300HZ ,T=1/300,观察所得到的频谱特性曲线的变化,并做记录;(3) 进一步减小采样频率为200HZ ,T=1/200,观察频谱混淆现象是否明显存在,说明原因,并记录这时候的幅频特性曲线。
《数字信号处理》实验报告学院:信息科学与工程学院专业班级:通信1303姓名学号:实验一 常见离散时间信号的产生和频谱分析一、 实验目的(1) 熟悉MATLAB 应用环境,常用窗口的功能和使用方法;(2) 加深对常用离散时间信号的理解;(3) 掌握简单的绘图命令;(4) 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号进行频域分析。
二、 实验原理(1) 常用离散时间信号a )单位抽样序列⎩⎨⎧=01)(n δ00≠=n n 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ0≠=n k n b )单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n c )矩形序列 ⎩⎨⎧=01)(n R N 其他10-≤≤N nd )正弦序列)sin()(ϕ+=wn A n xe )实指数序列f )复指数序列()()jw n x n e σ+=(2)离散傅里叶变换:设连续正弦信号()x t 为0()sin()x t A t φ=Ω+这一信号的频率为0f ,角频率为002f πΩ=,信号的周期为00012T f π==Ω。
如果对此连续周期信号()x t 进行抽样,其抽样时间间隔为T ,抽样后信号以()x n 表示,则有0()()sin()t nT x n x t A nT φ===Ω+,如果令w 为数字频率,满足000012s sf w T f f π=Ω=Ω=,其中s f 是抽样重复频率,简称抽样频率。
为了在数字计算机上观察分析各种序列的频域特性,通常对)(jw e X 在[]π2,0上进行M 点采样来观察分析。
对长度为N 的有限长序列x(n), 有∑-=-=10)()(N n n jw jw k k e n x e X其中 1,,1,02-==M k k Mw k ,π 通常M 应取得大一些,以便观察谱的细节变化。
取模|)(|k jw e X 可绘出幅频特性曲线。
《数字信号处理》课程设计报告设计一信号的基本运算【一】设计目的熟悉信号的基本运算,通过仿真结果加深理解。
【二】设计内容1.现有一段以采样频率8192Hz采样得到的语音数据x(k),为了模仿出回音的效果,可以对数据进行如下处理:x(k)=x(k)+a*x(k-d),其中d为时延,a为时延信号的衰减幅度。
根据上述原理,进行仿真实验,并演示回声的效果。
(参数:时延d=0.4秒,衰减幅度a=0.5)2.对上述语音信号进行时间反转x(-k)、上采样x(2k)、下采样x(k/2)操作,并演示这些运算的效果。
【三】设计过程,调试,分析。
数字信号处理的主要研究对象是语音信号和图像信号,语音信号的研究可以从时域和频域两个方面来进行。
其中时域的分析处理有两种方法: 一种是进行语音信号分析, 这属于线性处理的范畴,主要是通过信号的加减、时移、倍乘、卷积、求相关函数等来实现;另一种是生成和变换成各种调制信号, 这属于非线性的范畴,主要是对信号平均累加器的动态范围进行压缩扩张, 用门限方法对噪声的抑制。
对频域分析处理, 即对信号的频率特性在频谱中加以分析研究, 这拓展了信号分析的范围, 是对不确定信号分析的主要方法。
在实际应用中, 信号的时域频分析经常同时进行。
1 语音信号的采集与时频分析1. 1 语音信号的采集利用 PC 机上的声卡和WINDOWS操作系统可以进行数字信号的采集。
将话筒输入计算机的语音输入插口上, 启动录音机。
按下录音按钮, 接着对话筒说话/大家好0 ,说完后停止录音, 屏幕左侧将显示所录声音的长度。
点击放音按钮,可以实现所录音的重现。
以文件名/ dajiahao0 保存入 g:\MATLAB\ work中。
可以看到, 文件存储器的后缀默认wav。
在 Matlab 软件平台下可以利用函数wavread对语音信号进行采样,得到了声音数据变量x,同时把x的采样频率Fs= 8000Hz和数据位Nbits= 8Bit放进了MATALB的工作空间。
实验一 信号、系统及系统响应一、 实验目的1、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解;2、熟悉时域离散系统的时域特性;3、利用卷积方法观察分析系统的时域特性;4、掌握序列傅立叶变换的计算机实现方法,利用序列的傅立叶变换对连续信号、离散信号及系统响应进行频域分析。
二、 实验原理及方法采样是连续信号数字处理的第一个关键环节。
对采样过程的研究不仅可以了解采样前后信号时域和频域特性发生变化以及信号信息不丢失的条件,而且可以加深对傅立叶变换、Z 变换和序列傅立叶变换之间关系式的理解。
对一个连续信号)(t x a 进行理想采样的过程可用下式表示:)()()(^t p t t xx aa=其中)(^t x a 为)(t x a 的理想采样,p(t)为周期脉冲,即∑∞-∞=-=m nT t t p )()(δ)(^t x a的傅立叶变换为)]([1)(^s m a m j X T j a XΩ-Ω=Ω∑∞-∞=上式表明^)(Ωj Xa为)(Ωj Xa的周期延拓。
其延拓周期为采样角频率(T /2π=Ω)。
只有满足采样定理时,才不会发生频率混叠失真。
在实验时可以用序列的傅立叶变换来计算^)(Ωj X a 。
公式如下:Tw jw ae X j X Ω==Ω|)()(^离散信号和系统在时域均可用序列来表示。
为了在实验中观察分析各种序列的频域特性,通常对)(jw e X 在[0,2π]上进行M 点采样来观察分析。
对长度为N 的有限长序列x(n),有:n jw N n jw k ke m x eX--=∑=)()(1其中,k Mk πω2=,k=0,1,……M-1 时域离散线性非移变系统的输入/输出关系为 ∑∞-∞=-==m m n h m x n h n x n y )()()(*)()(上述卷积运算也可在频域实现)()()(ωωωj j j e H e X eY =三、 实验程序s=yesinput(Please Select The Step Of Experiment:\n 一.(1时域采样序列分析 s=str2num(s); close all;Xb=impseq(0,0,1); Ha=stepseq(1,1,10);Hb=impseq(0,0,3)+2.5*impseq(1,0,3)+2.2*impseq(2,0,3)+impseq(3,0,3); i=0;while(s);%时域采样序列分析 if(s==1) l=1; k=0;while(1)if(k==0)A=yesinput('please input the Amplitude:\n',...444.128,[100,1000]); a=yesinput('please input the Attenuation Coefficient:\n',...222.144,[100,600]); w=yesinput('please input the Angle Frequence(rad/s):\n',...222.144,[100,600]); end k=k+1;fs=yesinput('please input the sample frequence:\n',...1000,[100,1200]); Xa=FF(A,a,w,fs); i=i+1;string+['fs=',num2str(fs)]; figure(i)DFT(Xa,50,string); 1=yesinput 1=str2num(1); end%系统和响应分析else if(s==2)kk=str2num(kk);while(kk)if(kk==1)m=conv(Xb,Hb);N=5;i=i+1;figure(i)string=('hb(n)');Hs=DFT(Hb,4,string);i=i+1;figure(i)string('xb(n)');DFT(Xb,2,string);string=('y(n)=xb(n)*hb(n)');else if (kk==2)m=conv(Ha,Ha);N=19;string=('y(n)=ha(n)*(ha(n)');else if (kk==3)Xc=stepseq(1,1,5);m=conv(Xc,Ha);N=14;string=('y(n)=xc(n)*ha(n)');endendendi=i+1;figure(i)DFT(m,N,string);kk=yesinputkk=str2num(kk);end卷积定理的验证else if(s==3)A=1;a=0.5;w=2,0734;fs=1;Xal=FF(A,a,w,fs);i=i+1;figure(i)string=('The xal(n)(A=1,a=0.4,T=1)'); [Xa,w]DFT(Xal,50,string);i=i+1;figure(i)string =('hb(n)');Hs=DFT(Hb,4,string);Ys=Xs.*Hs;y=conv(Xal,Hb);N=53;i=i+1;figure(i)string=('y(n)=xa(n)*hb(n)');[yy,w]=DFT(y,N,string);i=i+1;figure(i)subplot(2,2,1)plot(w/pi,abs(yy));axis([-2 2 0 2]);xlabel('w/pi');ylabel('|Ys(jw)|');title(FT[x(n)*h(n)]');subplot(2,2,3)plot(w/pi,abs(Ys));axis([-2 2 0 2]);xlabel('w/pi');ylabel('|Ys(jw)|');title('FT[xs(n)].FT[h(n)]');endendend子函数:离散傅立叶变换及X(n),FT[x(n)]的绘图函数function[c,l]=DFT(x,N,str)n=0:N-1;k=-200:200;w=(pi/100)*k;l=w;c=x*Xc=stepseq(1,1,5);子函数:产生信号function c=FF(A,a,w,fs)n=o:50-1;c=A*exp((-a)*n/fs).*sin(w*n/fs).*stepseq(0,0,49); 子函数:产生脉冲信号function [x,n]=impseq(n0,n1,n2)n=[n1:n2];x=[(n-n0)==0];子函数:产生矩形框信号function [x,n]=stepseq(n0,n1,n2) n=[n1:n2];x=[(n-n0>=0)];四、 实验内容及步骤1、认真复习采样理论,离散信号与系统,线性卷积,序列的傅立叶变换及性质等有关内容,阅读本实验原理与方法。
综合实验1. 实验目的能综合利用信号处理的理论和Matlab 工具实现对信号进行分析和处理(1)熟练对信号进行时域和频域分析;(2)熟练进行滤波器设计和实现;(3)掌握对信号的滤波处理和分析。
2.实验原理设计并实现滤波器对信号进行分析和处理是信号处理课程学习的主要内容。
通过对信号进行频谱分析,能发现信号的频率特性,以及组成信号的频率分量。
对信号进行滤波处理,能改善信号的质量,或者为数据处理(如传输,分类等)提供预处理,等。
本次实验是对特定信号进行分析并进行滤波处理,需要综合应用之前的实验内容,主要有以下几个方面。
(1)离散时间信号与系统的时域分析Matlab 为离散时间信号与系统的分析提供了丰富且功能强大的计算函数和绘图分析函数,便于离散时间信号和系统的时域表示和分析。
(2)信号的频域分析信号处理课程主要学习了离散信号和系统的频域分析方法与实现,以及滤波器的设计与实现。
离散信号与系统的频域分析包括DTFT DFT Z变换等,FFT则是DFT的快速实现。
用Matlab分析信号的频谱可以用freqz函数或者FFT函数。
(3)滤波器设计滤波器的设计首先要确定滤波器的类型,即低通、高通、带通还是带阻。
滤波器的边缘频率可以通过对信号的频谱分析得到,滤波器的幅度指标主要有阻带最小衰减As 和通带最大衰减Ap。
一般来说,As越大,对截止通过的频率分量的衰减越大;Ap越小,对需要保留的频率分量的衰减越小。
因此,As 越大,Ap 越小,滤波器的性能越好,但随之而来,滤波器的阶数越大,实现的代价(包括计算时间和空间)越大。
由此,滤波器的设计需要对滤波器性能和实现代价进行均衡考虑。
另外根据冲激响应的长度可以分为IIR 和FIR 两种类型。
两种类型的滤波器各有特点。
用FIR 滤波器可以设计出具有严格线性相位的滤波器,但在满足同样指标的条件下,FIR 滤波器的阶数高于IIR 滤波器。
Matlab 为各种类型的滤波器的设计提供了丰富的函数,可以借助这些函数方便地设计出符合要求地滤波器。
数字信号处理实验报告实验目的一、加深对离散傅立叶变换(DFT )和快速傅立叶变换(FFT )的理解,掌握通过两种变换求卷积的编程方法; 二、掌握设计巴特沃斯低通双线性IIR 数字滤波器的原理和方法,以及从低通转换到高通的技术; 三、掌握用窗函数设计FIR 数字滤波器的原理及方法,了解各种不同窗函数对滤波器性能的影响; 四、提高综合应用和分析的能力,Matlab 编程能力等。
实验内容实验一一、实验名称 快速傅立叶变换 二、实验要求编程利用FFT 进行卷积计算,通过实验比较出快速卷积优越性。
三、实验原理利用FFT 进行离散卷积的步骤归纳如下: (1)、设x(n)的列长为N 1,h(n)的列长为N 2,要求y(n)=x(n)*h(n)=∑-=1N k x(k)h((n-k))N R N (n)=∑-=-1)()(N k k n h k x[1](2)、为使两有限长序列的线性卷积可用其圆周卷积来代替而不产生混淆,必须选择N ≥N 1+ N 2-1。
为使用基-2FFT 来完成卷积计算,故要求N=2v(v 是整数)。
用补零的办法使x(n),h(n)具有列长N ,即x(n)= ⎩⎨⎧⋯⋯+=⋯⋯=1-N 1,N1N1 n 01-1210nx(n),,,,Nh(n)= ⎩⎨⎧⋯⋯+=⋯⋯=1-N 1,N2N2 n01-2210nh(n),,,,N(3)为用圆周卷积定理计算线性卷积,先用FFT 计算x(n) ,h(n) 的N 点离散傅立叶变换x(n)−−→−FFTX(k) [2] h(n) −−→−FFTH(k)[3](4)组成卷积Y(k)=X(k)H(k) [4](5)利用IFFT 计算Y(k)的离散傅立叶逆变换得到线性卷积y(n)。
由于 y(n)=∑-=1)]()/1[(N k k Y N W N -nk =[∑-=1)](*)/1[(N k k Y N WNnk ]* [5]可见,y(n)可由求(1/N)Y*(k)的FFT 再取共轭得到。
数字信号处理实验报告引言数字信号处理(Digital Signal Processing,DSP)是一门研究数字信号的获取、分析、处理和控制的学科。
在现代科技发展中,数字信号处理在通信、图像处理、音频处理等领域起着重要的作用。
本次实验旨在通过实际操作,深入了解数字信号处理的基本原理和实践技巧。
实验一:离散时间信号的生成与显示在实验开始之前,我们首先需要了解信号的生成与显示方法。
通过数字信号处理器(Digital Signal Processor,DSP)可以轻松生成和显示各种类型的离散时间信号。
实验设置如下:1. 设置采样频率为8kHz。
2. 生成一个正弦信号:频率为1kHz,振幅为1。
3. 生成一个方波信号:频率为1kHz,振幅为1。
4. 将生成的信号通过DAC(Digital-to-Analog Converter)输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的正弦信号和方波信号的图片)实验分析:通过示波器的显示结果可以看出,正弦信号在时域上呈现周期性的波形,而方波信号则具有稳定的上下跳变。
这体现了正弦信号和方波信号在时域上的不同特征。
实验二:信号的采样和重构在数字信号处理中,信号的采样是将连续时间信号转化为离散时间信号的过程,信号的重构则是将离散时间信号还原为连续时间信号的过程。
在实际应用中,信号的采样和重构对信号处理的准确性至关重要。
实验设置如下:1. 生成一个正弦信号:频率为1kHz,振幅为1。
2. 设置采样频率为8kHz。
3. 对正弦信号进行采样,得到离散时间信号。
4. 对离散时间信号进行重构,得到连续时间信号。
5. 将重构的信号通过DAC输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的连续时间信号和重构信号的图片)实验分析:通过示波器的显示结果可以看出,重构的信号与原信号非常接近,并且能够还原出原信号的形状和特征。
这说明信号的采样和重构方法对于信号处理的准确性有着重要影响。
最新数字信号处理实验报告一、实验目的本次实验旨在加深对数字信号处理(DSP)理论的理解,并通过实践操作掌握数字信号处理的基本方法和技术。
通过实验,学习如何使用相关软件工具进行信号的采集、分析、处理和重构,提高解决实际问题的能力。
二、实验内容1. 信号采集与分析- 使用数字示波器采集模拟信号,并将其转换为数字信号。
- 利用傅里叶变换(FFT)分析信号的频谱特性。
- 观察并记录信号的时域和频域特性。
2. 滤波器设计与实现- 设计低通、高通、带通和带阻滤波器。
- 通过编程实现上述滤波器,并测试其性能。
- 分析滤波器对信号的影响,并调整参数以优化性能。
3. 信号重构实验- 应用所学滤波器对采集的信号进行去噪处理。
- 使用逆傅里叶变换(IFFT)重构经过滤波处理的信号。
- 比较重构信号与原始信号的差异,评估处理效果。
三、实验设备与材料- 计算机及DSP相关软件(如MATLAB、LabVIEW等)- 数字示波器- 模拟信号发生器- 数据采集卡四、实验步骤1. 信号采集- 连接并设置好数字示波器和模拟信号发生器。
- 生成一系列不同频率和幅度的模拟信号。
- 通过数据采集卡将模拟信号转换为数字信号。
2. 滤波器设计- 在DSP软件中设计所需的滤波器,并编写相应的程序代码。
- 调整滤波器参数,如截止频率、增益等,以达到预期的滤波效果。
3. 信号处理与重构- 应用设计的滤波器对采集的数字信号进行处理。
- 利用IFFT对处理后的信号进行重构。
- 通过对比原始信号和重构信号,评估滤波器的性能。
五、实验结果与分析- 展示信号在时域和频域的分析结果。
- 描述滤波器设计参数及其对信号处理的影响。
- 分析重构信号的质量,包括信噪比、失真度等指标。
六、实验结论- 总结实验中所学习到的数字信号处理的基本概念和方法。
- 讨论实验中遇到的问题及其解决方案。
- 提出对实验方法和过程的改进建议。
七、参考文献- 列出实验过程中参考的书籍、文章和其他资源。
实验1 利用DFT 分析信号频谱一、实验目的1.加深对DFT 原理的理解。
2.应用DFT 分析信号的频谱。
3.深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。
二、实验设备与环境 计算机、MATLAB 软件环境 三、实验基础理论1.DFT 与DTFT 的关系有限长序列 的离散时间傅里叶变换 在频率区间 的N 个等间隔分布的点 上的N 个取样值可以由下式表示:212/0()|()()01N jkn j Nk N k X e x n eX k k N πωωπ--====≤≤-∑由上式可知,序列 的N 点DFT ,实际上就是 序列的DTFT 在N 个等间隔频率点 上样本 。
2.利用DFT 求DTFT方法1:由恢复出的方法如下:由图2.1所示流程可知:101()()()N j j nkn j nN n n k X e x n eX k W e N ωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑ 由上式可以得到:IDFTDTFT( )12()()()Nj k kX e X k Nωπφω==-∑ 其中为内插函数12sin(/2)()sin(/2)N j N x eN ωωφω--= 方法2:实际在MATLAB 计算中,上述插值运算不见得是最好的办法。
由于DFT 是DTFT 的取样值,其相邻两个频率样本点的间距为2π/N ,所以如果我们增加数据的长度N ,使得到的DFT 谱线就更加精细,其包络就越接近DTFT 的结果,这样就可以利用DFT 计算DTFT 。
如果没有更多的数据,可以通过补零来增加数据长度。
3.利用DFT 分析连续信号的频谱采用计算机分析连续时间信号的频谱,第一步就是把连续信号离散化,这里需要进行两个操作:一是采样,二是截断。
对于连续时间非周期信号,按采样间隔T 进行采样,阶段长度M ,那么:1()()()M j tj nT a a a n X j x t edt T x nT e ∞--Ω-Ω=-∞Ω==∑⎰对进行N 点频域采样,得到2120()|()()M jkn Na a M kn NTX j T x nT eTX k ππ--Ω==Ω==∑因此,可以将利用DFT 分析连续非周期信号频谱的步骤归纳如下: (1)确定时域采样间隔T ,得到离散序列(2)确定截取长度M ,得到M 点离散序列,这里为窗函数。
一、实验目的1. 理解数字信号处理的基本概念和原理。
2. 掌握离散时间信号的基本运算和变换方法。
3. 熟悉数字滤波器的设计和实现。
4. 培养实验操作能力和数据分析能力。
二、实验原理数字信号处理(Digital Signal Processing,DSP)是利用计算机对信号进行采样、量化、处理和分析的一种技术。
本实验主要涉及以下内容:1. 离散时间信号:离散时间信号是指时间上离散的信号,通常用序列表示。
2. 离散时间系统的时域分析:分析离散时间系统的时域特性,如稳定性、因果性、线性等。
3. 离散时间信号的变换:包括离散时间傅里叶变换(DTFT)、离散傅里叶变换(DFT)和快速傅里叶变换(FFT)等。
4. 数字滤波器:设计、实现和分析数字滤波器,如低通、高通、带通、带阻滤波器等。
三、实验内容1. 离散时间信号的时域运算(1)实验目的:掌握离散时间信号的时域运算方法。
(2)实验步骤:a. 使用MATLAB生成两个离散时间信号;b. 进行时域运算,如加、减、乘、除等;c. 绘制运算结果的时域波形图。
2. 离散时间信号的变换(1)实验目的:掌握离散时间信号的变换方法。
(2)实验步骤:a. 使用MATLAB生成一个离散时间信号;b. 进行DTFT、DFT和FFT变换;c. 绘制变换结果的频域波形图。
3. 数字滤波器的设计和实现(1)实验目的:掌握数字滤波器的设计和实现方法。
(2)实验步骤:a. 设计一个低通滤波器,如巴特沃斯滤波器、切比雪夫滤波器等;b. 使用MATLAB实现滤波器;c. 使用MATLAB对滤波器进行时域和频域分析。
4. 数字滤波器的应用(1)实验目的:掌握数字滤波器的应用。
(2)实验步骤:a. 采集一段语音信号;b. 使用数字滤波器对语音信号进行降噪处理;c. 比较降噪前后的语音信号,分析滤波器的效果。
四、实验结果与分析1. 离散时间信号的时域运算实验结果显示,通过MATLAB可以方便地进行离散时间信号的时域运算,并绘制出运算结果的时域波形图。
数字信号处理实验报告实验目的一、加深对离散傅立叶变换(DFT )和快速傅立叶变换(FFT )的理解,掌握通过两种变换求卷积的编程方法; 二、掌握设计巴特沃斯低通双线性IIR 数字滤波器的原理和方法,以及从低通转换到高通的技术; 三、掌握用窗函数设计FIR 数字滤波器的原理及方法,了解各种不同窗函数对滤波器性能的影响; 四、提高综合应用和分析的能力,Matlab 编程能力等。
实验内容实验一一、实验名称 快速傅立叶变换 二、实验要求编程利用FFT 进行卷积计算,通过实验比较出快速卷积优越性。
三、实验原理利用FFT 进行离散卷积的步骤归纳如下: (1)、设x(n)的列长为N 1,h(n)的列长为N 2,要求y(n)=x(n)*h(n)=∑-=1N k x(k)h((n-k))N R N (n)=∑-=-1)()(N k k n h k x[1](2)、为使两有限长序列的线性卷积可用其圆周卷积来代替而不产生混淆,必须选择N ≥N 1+ N 2-1。
为使用基-2FFT 来完成卷积计算,故要求N=2v(v 是整数)。
用补零的办法使x(n),h(n)具有列长N ,即x(n)= ⎩⎨⎧⋯⋯+=⋯⋯=1-N 1,N1N1 n 01-1210nx(n),,,,Nh(n)= ⎩⎨⎧⋯⋯+=⋯⋯=1-N 1,N2N2 n01-2210nh(n),,,,N(3)为用圆周卷积定理计算线性卷积,先用FFT 计算x(n) ,h(n) 的N 点离散傅立叶变换x(n)−−→−FFTX(k) [2] h(n) −−→−FFTH(k)[3](4)组成卷积Y(k)=X(k)H(k) [4](5)利用IFFT 计算Y(k)的离散傅立叶逆变换得到线性卷积y(n)。
由于 y(n)=∑-=1)]()/1[(N k k Y N W N -nk =[∑-=1)](*)/1[(N k k Y N WNnk ]* [5]可见,y(n)可由求(1/N)Y*(k)的FFT 再取共轭得到。
四、实验题目(1)两个正弦序列的卷积(均为两个周期,256点)输入序列:卷积输出:(2)正弦序列与三角序列的卷积(正弦序列为两个周期,256点;三角序列为一个周期,256个点)输入序列:卷积输出:(3)两个矩形序列的卷积(均为两个周期,256个点,占空比0.5)输入序列:卷积输出:(4)单位冲击与正弦波(单位冲击序列为256个点,正弦序列为1.7个周期,256个点)输入序列:卷积输出:任何序列与单位冲击序列的卷积为原序列,所以结果正确。
(5)正弦序列与矩形序列的卷积(两序列均为256个点,正弦序列为两个周期,矩形序列为两个周期,占空比为0.2)输入序列:卷积输出:主要代码(只选一个参考,下同):%(1)的代码k=1:256;s1=sin(k/64*pi); s2=s1;xk=fft(s1,2*length(k)-1); yk=fft(s2,2*length(k)-1); rm=ifft(xk.*yk); m=(-255):(255); stem(m,rm)xlabel('m'); ylabel('·ù¶È');实验二一、实验名称 IIR 数字滤波器 二、实验要求:设计巴特沃斯低通双线性IIR 数字滤波器,N=3,ωc=0.2π。
输入信号为以下三种序列(选择点数为128或256):1. 单位取样2. 三角序列(两个周期) 3. 矩形序列(占空比0.1或0.5)给出输出的时域及频域效果,并进行简单的分析。
三、实验原理:滤波器的作用是滤除信号中某一部分的频率分量。
信号经过滤波器处理,就相当与信号频谱与滤波器的频率响应相乘的结果。
在时域里来看,这就是信号与滤波器的冲激响应相卷积。
可以说滤波器就是一个卷积器。
IIR 滤波器的系统函数对应的差分方程为模拟滤波器系统函数)(s H a 的一般表示式为∑∑==-+-=Mr Nk k r k n y a r n x b n y 01)()()(∑∑=-=--=N k kk Mr rr z a zb z H 101)(数字滤波器系统函数H(z)的普遍表示式为三阶次巴特沃斯滤波器的系统函数为由Ha(s)的系数表示经双极性变换后的Y(z)的表达式(三阶)ωc=0.2π Y(Z)=0.018099*X(Z)*Z -3+0.054297*X(Z)*Z -2+0.054297*X(Z)*Z -1+0.018099*X(Z)+0.27806*Y(Z)*Z -3-1.18289*Y(Z)*Z -2+1.76004*Y(Z)*Z -1)22/(32233c c c c s s s Ω+Ω+Ω+Ω)]2tan(2[ωT c =ΩNN N N Nk kkNr r ra s C s C s C C s d s d s d d s Cs d s H ++++++++==∑∑==ΛΛ2210221000)(NN N N Nk kkNr r rz A z A z A z B z B z B B z azb z H ------=-=-++++++++==∑∑ΛΛ221122110001)(即y(n)=0.018099*x(n-3)+0.054297*x(n-2)+0.054297*x(n-1)+0.018099*x(n)+0.27806*y(n-3)-1.18289*y(n-2)+1.76004*y(n-1)由低通数字滤波器原形变换为高通数字滤波器由截止频率ωc=0.2π三阶低通变换为截止频率ωc=0.6π三阶高通,经计算,其表达式为: y(n)=-0.098531x(n-3)+0.295594x(n-2)-0.295594x(n-1)+0.098531x(n)-0.056297y(n-3)-0.42179y(n-2)-0.57724y(n-1)计算过程:由给定的条件可计算出巴特沃斯系统函数的系数,相应可知摸拟系统函数的系数,经双极性变换法求出数字滤波器的系数,最后由差分方程实现低通滤波效果。
经相应的Z 平面映射,由映射公式变换得出数字高通滤波器系统函数的系数,从而由差分方程实现高通效果。
四、实验结果及分析: A.低通滤波:(1).单位取样(256个点) 输入序列:低通滤波后的傅立叶变换和输出序列:The result of FilterThe signal of y(2).三角序列(256个点,两个周期) 输入序列:1111---Z ++Z -=a a z )2cos()2cos(c c c c a ωθωθ-+-=低通滤波后的频谱和输出序列:-1-0.50.51The result of Filter -1-0.50.51The signal of y5010015050100150(3).矩形序列(两个周期,256个点,占空比0.5)输入序列:低通滤波后的频谱和输出序列:-2-1012 The result of Filter-1-0.500.51 The signal of y50100150200050100150200主要代码:%y=[ones(1,64) -ones(1,64) ones(1,64) -ones(1,64)]; %y=[1 zeros(1,255)];y=[1:32 31:-1:-32 -31:32 31:-1:-32 -31:0]./32; k=2*length(y);[B,A]=butter(3,0.2*pi);[num1,den1]=impinvar(B,A);[h1,w]=freqz(num1,den1); [HH,TT]=impz(B,A);YY1=conv(HH,y); %YY=filter(B,A,y); f=fft(y,k);FF1=fft(YY1,k);subplot(2,2,2);stem(YY1(1:length(y)),'.');title(' The result of Filter '); subplot(2,2,1);stem(y,'.');title(' The signal of y '); subplot(2,2,3); plot(w,abs(f)); subplot(2,2,4); plot(w,abs(FF1));B.高通滤波:(1)矩形序列(256个点,两个周期,占空比0.5) 输入序列:高通滤波输出的频谱:高通滤波输出:-1-0.50.51-22 The result of Filter -1-0.50.51The signal of y501001502000.51-20(2)矩形序列(256个点,两个周期,占空比0.1)输入序列:高通滤波输出的频谱和高通滤波输出:-0.50.5-22 The result of Filter0.5The signal of y-20主要代码:y=[ones(1,13) -ones(1,115) ones(1,13) -ones(1,115)];k=2*length(y);[B,A]=butter(3,0.2*pi,'high');[num1,den1]=impinvar(B,A);[h1,w]=freqz(num1,den1);[HH,TT]=impz(B,A,'high');YY1=conv(HH,y);%YY=filter(B,A,y);f=fft(y,k);FF1=fft(YY1,k);subplot(2,2,2);stem(YY1(1:length(y)),'.');title(' The result of Filter ');subplot(2,2,1);stem(y,'.');title(' The signal of y ');subplot(2,2,3);plot(w,abs(f));subplot(2,2,4);plot(w,abs(FF1));实验三一、实验名称FIR数字滤波器二、实验要求:设计一个截止频率为ωc=0.2π的线性相位低通数字滤波器,ω1=0.3π,ω2=0.3π的线性相位带通滤波器,分别用矩形窗和海明窗对其进行截断,N为61。
输入序列64-128点,输出128-256点。
输入单位取样及矩形序列(占空比0.1),画出输出序列及其频谱。
三、实验原理:理想低通数字滤波器,其频率特性为H d(e jω),现假设其幅频特性|H d(e jω)|=1,相频特性φ(ω)=0,那么,该滤波器的单位抽样响应h d(n)是以为h d(0)为对称的sinc函数,h d(0)=ωc/π。