声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1560|回复: 7

[FFT] 求助apFFT实际数据程序

[复制链接]
发表于 2010-3-22 10:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
王老师,您好,希望你可以看到我的帖子,我刚开始学习apFFT,出现了点问题,就是如何实现实测数据的apFFT,我们知道apFFT序列中
t=-N+1:N-1,而实测数据t从0开始,如果我们取序列中2N个点,第N个点为中心,相当与仿真信号中t=0的位置,不知到我的理解是否正确。
编程如下:
clc
clear
N=1024;
Fs = 400;    % Sampling frequency               
T = 1/Fs;       % Sample time              
L=2*N;                          % Length of signal
f = Fs/2*linspace(0,1,N/2+1);   
t = (0:L-1)*T;
y=cos(2*pi*t*20+20*pi/180)+cos(2*pi*t*50+50*pi/180)+cos(2*pi*t*70+70*pi/180);
win=hanning(N)';
win1=win/sum(win);
x1=y(N:2*N-1);
y1=x1.*win1;
y1_fft=fft(y1,N);
a1=abs(y1_fft);
p1=mod(phase(y1_fft)*180/pi,360);     %FFT
winn=conv(win,win);
win2=winn/sum(winn);
x2=y(1:2*N-1);
y2=x2.*win2;
y2=y2(N:end)+[0 y2(1:N-1)];
y2_fft=fft(y2,N);
a2=abs(y2_fft);
p2=mod(phase(y2_fft)*180/pi,360);
ee=mod((p1-p2)/180/(1-1/N),1);
aa=(a1.^2)./(a2*2);
subplot(211);plot(f,a2(1:N/2+1));
subplot(212);stem(f,p2(1:N/2+1))

数据结果,频率正确,而相位信号出错,见图1
如果将时间t改为:t = (-N+1:N+1)*T,则频率和相位均正确,见图2;
所以我就想知道如果是实测数据,该如何实现apFFT?
1.JPG
2.JPG
回复
分享到:

使用道具 举报

发表于 2010-3-22 14:05 | 显示全部楼层

回复 楼主 碧潭 的帖子

本帖最后由 wdhd 于 2016-9-20 14:08 编辑

  apFFT测的是2N-1数据中心点的相位
  cos信号 t=-N+1 : N-1, 中心点是t=0, 测的是cos信号的初相位(t=0)
  实测数据y=y(1 : 2N-1), 第N个点为中心, 测的实测数据第N个点的相位
  你的理解正确。程序结果正确
  你想知道实测数据如何实现apFFT?
  输入实测数据y=y(1 : 2N-1); (Matlab中数据从1开始), 测的实测数据第N点的相位
  [ 本帖最后由 zhwang554 于 2010-3-22 14:11 编辑 ]

 楼主| 发表于 2010-3-22 14:29 | 显示全部楼层
谢谢您的帮助,您的意思是实测数据经过apFFT后是相对于中心点N的相位吗?如果这样的话,程序结果是没问题的,可是对于实测数据又如何求它的初相位呢?
 楼主| 发表于 2010-3-22 14:35 | 显示全部楼层
我用FFT对实测数据处理后,求相角,得到的相位值却是是初相位,两者之间的差异在什么地方?FFT的相位结果又是相对于哪个点呢??
发表于 2010-3-22 18:12 | 显示全部楼层

回复 板凳 碧潭 的帖子

本帖最后由 wdhd 于 2016-9-20 14:08 编辑

  DFT和FFT相位谱测的是序列第1个样点的相位
  [ 本帖最后由 zhwang554 于 2010-3-22 18:16 编辑 ]

发表于 2010-3-22 18:19 | 显示全部楼层

回复 地板 碧潭 的帖子

本帖最后由 wdhd 于 2016-9-20 14:08 编辑

  你说的实测数据的初相位是第1个样点的相位吗?
  实用时, 我们对一个正弦波连续取样2N-1点,测出的是第N个样点的相位,但若要知道第一个取样时刻的样点相位,即初相位,须
  知第N个样点的时间T, 从测量值减去相隔T的相位. . 减去的相位是与cos信号的频率相关的, 而这个精确的频率是用校正法求出
  [ 本帖最后由 zhwang554 于 2010-3-22 18:28 编辑 ]

 楼主| 发表于 2010-3-22 19:09 | 显示全部楼层
嗯,基本明白了,谢谢王老师
发表于 2010-4-21 22:32 | 显示全部楼层
我也明白了,谢谢
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-29 09:39 , Processed in 0.064654 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表