用FFT实现信号的谱分析

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二 用FFT 实现信号的谱分析

实验目的

1.了解FFT 在信号谱分析中的作用; 2.了解谱分析的一般步骤和方法。

实验原理

关于信号谱分析的步骤和方法参见教材第3章相关内容。为了解信号的特点,了解信号频谱分布情况,应该对信号进行谱分析,计算出信号的幅度谱、相位谱和功率谱。信号的谱分析可以用FFT 实现,讨论如下:

1. 谱分析中的参数选择;

A 若已知信号的最高频率c f ,为防止混叠,选定采样频率s f :

c s f f 2≥ (1)

B 根据实际需要,选定频率分辨f ∆,一但选定后,即可确定FFT 所需的点数N

f f N s ∆=/ (2)

我们希望f ∆越小越好,但f ∆越小,N 越大,计算量、存储量也随之增大。一般取N 为2的整次幂,以便用FFT 计算,若已给定N ,可用补零方法便N 为2的整次幂。 C s f 和N 确定后,即可确定所需相应模拟信号)(t x 的长度

s s NT f N T ==/ (3)

分辨率f ∆反比于T ,而不是N ,在给定的T 的情况下,靠减小s T 来增加N 是不能提高分辨率的,因为s NT T =为常数

2.谱分析步骤;

A 数据准备

()()()a a t nT

x n x t x nT === (4) B 使用FFT 计算信号的频谱

10()()N kn N n X k x n

W -==∑ (5)

()()()r i X k X k jX k =+ (6)

C 由频谱计算幅度谱()X k 、相位谱k θ和功率谱()G k

()X k =

(7) ()arctan ()

i k r X k X k θ= (8) 222()()()()r i G k X k X k X k ==+ (9)

3.实验中用到的一些基本函数简介

y=fft(x,n) ; 计算n 点的FFT 。

abs(x) ; 取绝对值。

angle(z) ; 取相角。

[Pxx, f]= periodogram (xn, nfft, fs, window) ;%周期图谱估计

[Pxx, f]=pwelch (xn, nfft, fs, window, noverlap);%平均周期图法

Pxx=psd (xn) ;功率谱密度

实验内容

1. 已知序列x(n)=2sin(0.48πn)+cos(0.52πn) 0≤n<100,试绘制x(n)及它的频谱图。

clear all

N=100;

n=0:N-1;

xn=2*sin(0.48*pi*n)+cos(0.52*pi*n);

XK=fft(xn,N);

magXK=abs(XK);

phaXK=angle(XK);

subplot(1,2,1)

plot(n,xn)

xlabel('n');ylabel('x(n)');

title('x(n)N=100');

subplot(1,2,2)

k=0:length(magXK)-1;

stem(k,magXK,'.');

xlabel('k');ylabel('|X(K)|');

title('X(K)N=100');

若x(n)=sin(0.56πn )+2cos(0.25πn ),结果又如何?

2. 对下面信号进行频谱分析,求幅度谱)(k X 和相位谱)(k θ。

(1)t a t x =)(1,8.0=a ,ms t 40≤≤,Hz f 400max =

(2)t t t x /sin )(2=,s T 125.0=,16=N 3. 给定信号)2sin(2)2sin()(21t f t f t x ππ+=,Hz f 151=,Hz f 181=,现在对)(t x 采样,采样点数16=N ,采样频率s f =50Hz ,设采样序列为)(n x ,编写程序计算)(n x 的频

谱,并绘图;改变采样频率,得到序列)(1n x ,计算)(1n x 的频谱,并绘图;增大采样点数,得到序列)(2n x ,计算)(2n x 的频谱,并绘图;采样点数N=64,采样频率s f =300Hz ,在采样点后补零得到新序列)(3n x ,计算)(3n x 的频谱,并绘图。

4. 试求下列差分方程所描述的输出序列)n (x 的功率谱并作图。

(a))n (w )n (w )n (x .)n (x 12810--+--=

(b))n (w )n (w )n (x 2--=

(c))n (w )n (x .)n (x +--=2810

式中,)n (w 是方差为2w σ(例如,2w σ=1/12)的白噪声。

5. 一序列)n (x 是由两个频率相距为f ∆的模拟信号采样得来的,即

n )f .(cos n ).(sin )n (x ∆ππ++=1350213502 n=0,1,…,15

已知序列长度N=16,试采用周期图法,应用DFT 分别计算当f ∆=0.06及f ∆=0.01时的功率谱估计,并通过作图说明从功率谱估计的分布是否能分辨出这两个正弦信号的真实频谱?若N=64又有什么变化?

6. 用MA TLAB 产生256点白噪声序列,应用Welch 法估计其功率谱,每段长64点,重叠32点,输出平均后的功率谱图以及对256点一次求周期图的功率谱图。

7. 离散信号序列)/2sin(2)(s f fn n x π=,长度N=512,Hz f s 32=,令f 取值分别为16Hz 和15Hz ,计算序列的功率谱,比较谱图的差别。试采用不同的窗函数,再比较谱图的变化。

8. 已知一个被白噪声)(t r 污染的信号)(t x ,

)()2sin(5.0)2sin(5.0)2sin(2)(321t r t f t f t f t x +++=πππ,其中,1f =25Hz ,

2f =75Hz ,3f =150Hz 。应用Welch 法进行功率谱估计并绘制功率谱图。

相关文档
最新文档