西南科技大学信号与系统A实验二(信号频谱分析)

一、实验目的

1.掌握用 matlab 软件绘制信号频谱的方法;

2.进一步理解抽样定理;

3.理解傅里叶变换的性质(频移特性).

二、实验原理

(一)fft 函数的调用

matlab 提供 fft 函数来计算信号 x(n)的快速离散傅里叶变换 (FFT).

z 格式:y=fft(x)

计算信号 x 的快速离散傅里叶变换 y.若 x 的数据长度为 2 的整数次幂时,用基-2 算法,运算速度较快,否则采用较慢的分裂算法.

z 格式:y=fft(x,N)

计算信号 x 的 N 点快速离散傅里叶变换,若 x 的数据长度大于 N,截断 x,若 x 的数据实际长度小于 N,则自动补一些零,使之长度等于 N.

快速离散傅里叶反变换(IFFT).

z x=ifft(Y)

注意: 1.频率计算.若 N 点序列 x(n)(n=0,1,…,N-1)是在采样频率 fs(Hz)下获得,它的快速离散傅里叶 变换(FFT)也是 N 点序列. 即 X(k)(k=0,1,…,N-1),则第 k 点所对应的实际频率 f=k×fs/N. 2.作快速离散傅里叶变换时,幅值大小与选择点数 N 有关,但不影响分析结果.

(二)频谱分析

例:用 FFT 分析信号频率成分

一被噪声污染的信号,很难看出它所包含的频率分量,如一个由 50Hz 和 150Hz 正弦信号

构成的信号,受到均值为零、均方差为 0.5 的高斯随机信号的于扰,数据采样率 fs=500Hz.通过FFT 来分析其信号频率成分,用 matlab 实现如下:

fs=500; %采样频率 fs=500Hz.

t=0:1/fs:1; %采样周期为 1/fs.

f=sin(2*pi*50*t); % 产生信号 f(t)

subplot(3,1,1);plot(t,f);title('原始信号');

y=f+0.5*randn(1,length(t)); %加噪

subplot(3,1,2);plot(t,y);title('受噪声污染的信号');

N=250;

Y=fft(y,N); %对加噪信号进行 FFT

k=0:N-1;

f=fs*k/N;

subplot(3,1,3);plot(f,abs(Y));title('FFT(幅度谱)');

(由频谱图可见,在 50Hz 和

你可能感兴趣的:(信号与系统实验,信号与系统实验,matlab,西南科技大学)