繁体   English   中英

如何从FFT获得调幅信号的相位角

[英]How to get phase angle from FFT for an amplitude modulated signal

我有一个调幅信号的测量。 我用fft() matlab函数分析了。 在我用“书”计算一切之后,我只有一个问题。 调制信号的相位不合适。 只有当我从计算的相位中减去pi/2 ,才能得到正确的值。 调制信号是第六个组成部分:

X [6] = -8.2257e + 001 -1.6158e + 002i
阶段(x [6])= atan(-8.2257e + 001 / -1.6158e + 002)= 1.0999

真正的阶段是: pahse(x[6])-pi/2 = -0.4709

为什么我要减去pi/2 如果我使用<code> atan2(imag(X(6)),real(X(6)))</ code>如果我使用<code> atan(imag(X(6))/ real(X(6))) -  pi / 2 </ code>

如果我使用atan2(imag(X(6)),real(X(6))) - 第一张图像

如果我使用atan(imag(X(6))/real(X(6)))-pi/2 - 秒图像

您遇到象限模糊。 atan()的范围是[-pi/2 ... +pi/2] ,当超出该范围时重复。 这意味着,当角度恰好位于圆的“另一侧”时,您无法唯一地确定角度的正确象限。

要避免这种情况,请使用angle (或phase )和/或atan2atan的四象限版本):

>> X = -8.2257e+001 - 1.6158e+002i;
>> angle(X)
ans =
   -2.041680802478084e+000
>> atan2(imag(X), real(X))
ans =
   -2.041680802478084e+000

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM