matlab 基2时域抽取法,MATLAB辅助DSP实现基2时域抽取法FFT

微机保护

第21卷第5期 制造业信息化2008年9月

机电产品开发与创新

Development&InnovationofMachinery&ElectricalProducts

Vol.21,No.5

Sep.,2008

MATLAB辅助DSP实现基2时域抽取法FFT

郭小莉,黄钉劲,阮照军

(西安工业大学光电工程学院,陕西西安710032)

摘要:介绍了基2时域抽取法FFT的原理和算法,并在MATLAB仿真软件的辅助下、在数字信号处理

DSP上实现。

关键词:时域抽取;DSP;FFT;仿真;MATLAB中图分类号:TP391.4

文献标识码:A

文章编号:1002-6673(2008)05-134-02

0引言

对于确定时域信号的频谱来说,通常采用离散傅立叶变换DFT的方式来实现。随着微电子技术和计算机技术的发展,数字信号处理DSP得以广泛应用。实际中,在DSP的软件中实现信号从时域到频域的转换并未应用DTF而是快速傅立叶变换FFT,这是因为FFT的输出与DFT的输出相同,但运算量要小得多。因此采用DSP实现FFT,可进行信号高速的实时处理。在具有强大数值计算和图形、图像显示能力的MATLAB软件的辅助下实现FFT,缩短设计周期,验证结果,大大提高设计效率。

X(k)=!x(n)WN=!x(2m)WN

n=0

m=0

N-1

kn

(N/2)-1

2mk

+!x(2m+1)WN

m=0

(N/2)-1

(2m+1)k

(K=0,1,...,N-1)(4)

因为:

WN=e

2mk

-j2!2mk=e

-j2!mk=WN/2

mk

(5)

所以式(4)可写成:

X(k)=!x1(m)WN/2+WN!x2(m)WN/2(k=0,1,...N-1)

m=0

m=0

(N/2)-1

mkk

(N/2)-1

mk

(6)

式(6)便是基2时域抽取法FFT的结果,它是把长度的序列一分为二,将点DFT表示成为两个N/2点

1基2时域抽取法FFT的原理及设计方法

1.1基2时域抽取法FFT的原理

设输入时域信号为x(n),其转换后的频域信号为X(n),则离散傅立叶变换DFT为:

N-1

-j2!kn

DFT的线性组合。然后再把N/2点DFT一分为二,表示

为两个N/4点的DFT。如此重复下去,直至分解成两点

DFT的运算,两点DFT实际上只是加减运算。这就是基2时域抽取FFT算法的原理

[1]

1.2MATLAB设计仿真

现就使用MATLAB软件来实现如下所示的时域信

(1)

号x(t)的频谱。设此时域信号为x(t)=0.075cos(600!),对此信号以30KHz采样频率进行采集得到512个采样点,则x(t)经采样后为x(n)=0.075cos(n2!)。按照这一要

X(n)=!x(n)e

n=0

(k=0,1,...,N-1)

在基2时域抽取法中,将此时域信号为x(n)根据采样号n分解为偶采样点和奇采样点,则偶数序列为:

x1(m)=x(2m),m=0,1,...,(N/2)-1

奇数序列为:

(2)(3)

求,通过MATLAB进行设计

[2]

,其程序如下:

x2(m)=x(2m+1),m=0,1,...,(N/2)-1DFT。即:

收稿日期:2008-08-07

N=512;

x=0.075*cos(2*pi*(0:N-1)/100);subplot(2,1,1);plot(x(1:N));ylabel('原始信号')N=0:N-1;X=fft(x)subplot(2,1,2);

对于式(1)表示的DFT,便可分成两个长度为N/2的

作者简介:郭小莉(1983-),女,在读硕士研究生。主要研究方向:精密仪器及机械;黄钉劲(1965-),男,副教授,硕士生导师。主要研究方向:测控技术。

134

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值