logo资料库

matlab验证时域采样定理.doc

第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
资料共16页,剩余部分请下载后查看
目 录 第 1 章 摘要 …………………………………………………………………1 第 2 章 基本原理 ……………………………………………………………2 第 3 章 实验步骤 ……………………………………………………………5 第 4 章 MATLAB 实现编程 ……………………………………………………5 第 5 章 实验结果与分析………………………………………………………8 5.1 程序分析 ………………………………………………………………8 5.2 信号的波形及幅度频谱 …………………………………………………8 5.3 结果分析 ………………………………………………………………9 第 6 章 总结 …………………………………………………………………12 参考文献 ………………………………………………………………………13
燕山大学数字信号处理课程设计报告 第 1 章 摘要 一、数字信号处理 数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处 理与模拟信号处理是信号处理的子集。 数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此 在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数 转换器实现。而数字信号处理的输出经常也要变换到模拟域,这是通过数模转 换器实现的。 数字信号处理的算法需要利用计算机或专用处理设备。数字信号处理技术 及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点, 这些都是模拟信号处理技术与设备所无法比拟的。 数字信号处理的核心算法是离散傅立叶变换(DFT),是 DFT 使信号在数字 域和频域都实现了离散化,从而可以用通用计算机处理离散信号。而使数字信 号处理从理论走向实用的是快速傅立叶变换(FFT),FFT 的出现大大减少了 DFT 的运算量,使实时的数字信号处理成为可能、极大促进了该学科的发展。 随着大规模集成电路以及数字计算机的飞速发展,加之从 60 年代末以来 数字信号处理理论和技术的成熟和完善,用数字方法来处理信号,即数字信号 处理,已逐渐取代模拟信号处理。 随着信息时代、数字世界的到来,数字信号处理已成为一门极其重要的学 科和技术领域。 二、实验目的 本次课程设计应用 MATLAB 验证时域采样定理。了解 MATLAB 软件,学习应 用 MATLAB 软件的仿真技术。它主要侧重于某些理论知识的灵活运用,以及一 些关键命令的掌握,理解,分析等。初步掌握线性系统的设计方法,培养独立 工作能力。 加深理解时域采样定理的概念,掌握利用 MATLAB 分析系统频率响应的方 1
燕山大学数字信号处理课程设计报告 法和掌握利用 MATLAB 实现连续信号采样、频谱分析和采样信号恢复的方法。 计算在临界采样、过采样、欠采样三种不同条件下恢复信号的误差,并由此总 结采样频率对信号恢复产生误差的影响,从而验证时域采样定理。 三、MATLAB 的介绍 MATLAB 是一套功能十分强大的工程计算及数据分析软件,广泛应用于各 行各业。MATLAB 是矩阵实验室之意。除具备卓越的数值计算能力外,它还提 供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。 MATLAB 的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形 式十分相似,故用 MATLAB 来解算问题要比用 C,FORTRAN 等语言完全相同的事情 简捷得多.在新的版本中也加入了对 C,FORTRAN,c++ ,JAVA 的支持.可以直接调 用,用户也可以将自己编写的实用程序导入到 MATLAB 函数库中方便自己以后 调用。 (1)时域采样定理 第 2 章 基本原理 1、对连续信号进行等间隔采样形成采样信号,采样信号的频谱是原连续 信号的频谱以采样频率为周期进行周期性的延拓形成的。 2、设连续信号的的最高频率为 maxF ,如果采样频率 Fs  2F max ,那么采 样信号可以唯一的恢复出原连续信号,否则 Fs  2F max 会造成采样信号中的频 谱混叠现象,不可能无失真地恢复原连续信号。 (2)设计原理图 f a )(t 连续信号 抽样信号 f s )(t ( jH ) 理想低通滤波器 f )(0 t 恢复信号 取 样 脉 冲 信 号 )( ts ST )( t (3)信号的时域采样与频谱分析 对一个连续信号 af (t)进行理想采样的过程可以用下式表示 2
燕山大学数字信号处理课程设计报告 ^ f a )( t  f a )()( tst 其中 ^ f a 为 )( t f a 的理想采样,s(t)为周期脉冲信号,即 )(t )( ts   ( t  n   nT ) (1) (2) ^ f a 的傅里叶变换 )( t ^ jFa ( ) 为 ^ ( jF a  ) 1 T  m  ([ jF a  m )] s (3) 上式表明, ^ jFa ( ) 为 ( jFa ) 的周期延拓,其延拓周期为采样角频率 ( s =2π/T)。只有满足采样定理时,才不会发生频率混叠失真。 在计算机上用高级语言编程,直接按照(3)式计算 )( t ^ f a 的频谱 ^ jFa 很不 ) ( 方便,下面导出用序列的傅里叶变换来计算 ^ jFa 的公式。 ) ( 将(2)式代入(1)式,并进行傅里叶变换, ^ ( jF a  )      [ f a )( t   n  ( t   nT ]) e  j t dt      f a ()( t t   nT ) e  j t dt (4) n    n  f a ( ) enT  j nT 式中的 af (nT)就是采样后的序列 f (n),即: f (n)= af (nT), f (n)的 傅里叶变换为 ( eF j  )   n  )( enf  nj  比较(5)和(4)可知 ^ ( jF a  ) ( eF j )   T (5) (6) 说明两者之间只在频率度量上差一个常数因子 T。实验过程中应注意这一 差别 离散信号和系统在时域均可以用序列来表示,序列图形给人以形象直观的 印象,它可以加深我们对信号和系统的时域特征的理解。本实验还将观察分析 3
几种信号及系统的时域特性。 燕山大学数字信号处理课程设计报告 为了观察分析各种序列的频域特性,通常对 F( je 点采样来观察分析。对长度为 N 的有限长序列 f (n),有 )在[0,2π]上进行 M ( eF j  k )  1 N  n  0 ) ( emf  j  k n (7)  2   Mk k , 其中 k  ,...,1,0 M  1 通常 M 应取的大一些,以便观察谱的细节变化。取模 幅频特性曲线。 (4)采样信号的恢复(内插函数法) jeF  ( k ) 可绘出 设信号 )(t f 被采样后形成的采样信号为 )(t f s ,信号的重构是指由 )(t f s 经 过内插处理后,恢复出原来信号 )(t f 的过程。又称为信号恢复。 信号恢复的时域表达式 f )( t  )(*)( t th f s 而 f s )( t  f )( t   n  ( t   (8) ( nTf s () t   nT s ) nT s )    n  )( th 1 [ )]     ( jHF   f s 代入式(8)得: T c s 将 )(th 及 )(t Sa ( t  c ) f )( t  f s *)( Tt s  c  Sa (  c t )  T  c s   n  ( nTf ) [ Sa  c s ( t  nT )] s (9) 式(9)即为用 ( snTf ) 求解 )(t f 的表达式,是利用MATLAB实现信号恢复的 基本关系式,抽样函数 Sa ( c 在此起着内插函数的作用。 ) t 内插公式表明模拟信号 )(t f 等于各采样点函数 ( snTf ) 乘以对应内插函数 的总和,即只要采样频率高于信号频率的两倍,模拟信号就可用它的采样信号 代表,而不会丢失任何信息。这种理想低通滤波器的模拟信号完全等于模拟信 号 )(t f ,是一种无失真的恢复。 4
燕山大学数字信号处理课程设计报告 第 3 章 实验步骤 1、画出连续时间信号的时域波形及其幅频特性曲线,信号为 f (x)= sin(2*pi*60*t)+cos(2*pi*25*t)+cos(2*pi*30*t); 2、对信号进行采样,得到采样序列 ,画出采样频率分别为 80Hz,120 Hz, 150 Hz 时的采样序列波形; 3、对不同采样频率下的采样序列进行频谱分析,绘制其幅频曲线,对比 各频率下采样序列和的幅频曲线有无差别。 4、对信号进行谱分析,观察与 3 中结果有无差别。 5、由采样序列恢复出连续时间信号 ,画出其时域波形,对比与原连续时 间信号的时域波形。 第 4 章 MATLAB 实现编程 %实现采样频谱分析绘图函数 function fz=caiyang(fy,fs) %第一个输入变量是原信号函数,信号函数 fy 以字符串的格式输入 %第二个输入变量是采样频率 tp=0.1; k2=-999:-1; fs0=10000; t=[-tp:1/fs0:tp]; k1=0:999; m1=length(k1); m2=length(k2); f=[fs0*k2/m2,fs0*k1/m1]; w=[-2*pi*k2/m2,2*pi*k1/m1]; fx1=eval(fy); FX1=fx1*exp(-j*[1:length(fx1)]'*w); %求原信号的离散时间傅里叶变换 figure 5 %设置原信号的频率数组
% 画原信号波形 燕山大学数字信号处理课程设计报告 subplot(2,1,1),plot(t,fx1,'r') title('原信号'), xlabel('时间 t (s)') axis([min(t),max(t),min(fx1),max(fx1)]) % 画原信号幅度频谱 subplot(2,1,2),plot(f,abs(FX1),'r') title('原信号幅度频谱') , xlabel('频率 f (Hz)') axis([-100,100,0,max(abs(FX1))+5]) Ts=1/fs; t1=-tp:Ts:tp; f1=[fs*k2/m2,fs*k1/m1]; t=t1; fz=eval(fy); FZ=fz*exp(-j*[1:length(fz)]'*w); %采样信号的离散时间傅里叶变换 %变量替换 %获取采样序列 % 对信号进行采样 %采样周期 %采样时间序列 %设置采样信号的频率数组 figure % 画采样序列波形 subplot(2,1,1),stem(t,fz,'.'), title('取样信号') , xlabel('时间 t (s)') line([min(t),max(t)],[0,0]) % 画采样信号幅度频谱 subplot(2,1,2),plot(f1,abs(FZ),'m') title('取样信号幅度频谱') , xlabel('频率 f (Hz)') %信号的恢复及频谱函数 function fh=huifu(fz,fs) %第一个输入变量是采样序列 %第二个输入变量是得到采样序列所用的采样频率 T=1/fs; dt=T/10; tp=0.1; 6
燕山大学数字信号处理课程设计报告 n=-tp/T:tp/T; t=-tp:dt:tp; TMN=ones(length(n),1)*t-n'*T*ones(1,length(t)); fh=fz*sinc(fs*TMN); k1=0:999; m1=length(k1); m2=length(k2); w=[-2*pi*k2/m2,2*pi*k1/m1]; FH=fh*exp(-j*[1:length(fh)]'*w); % 恢复后的信号的离散时间傅里叶变换 k2=-999:-1; % 由采样信号恢复原信号 figure % 画恢复后的信号的波形 subplot(2,1,1),plot(t,fh,'g'), st1=sprintf('由取样频率 fs=%d',fs); st2='恢复后的信号'; st=[st1,st2]; axis([min(t),max(t),min(fh),max(fh)]) line([min(t),max(t)],[0,0]) f=[10*fs*k2/m2,10*fs*k1/m1]; subplot(2,1,2),plot(f,abs(FH),'g') title('恢复后信号的频谱') , xlabel('频率 f (Hz)') axis([-100,100,0,max(abs(FH))+2]); title(st) , xlabel('时间 t (s)') % 画重构信号的幅度频谱 %设置频率数组 %主函数 f1='sin(2*pi*60*t)+cos(2*pi*25*t)+cos(2*pi*30*t)';%输入一个信号 fs0=caiyang(f1,80); %频率 ,即 欠采样 2 f f  s max fr0=huifu(fs0,80); fs1=caiyang(f1,120);%频率 fr1=huifu(fs1,120); fs2=caiyang(f1,150);%频率 fr2=huifu(fs2,150); f  s 2 f max ,临 界采样 f  s 2 f max ,即 过采样 7
分享到:
收藏