信号错误生成的相位谱matlab

Posted

技术标签:

【中文标题】信号错误生成的相位谱matlab【英文标题】:phase spectrum of signal wrong generation matlab 【发布时间】:2013-11-12 17:36:47 【问题描述】:

我有 129 个信号样本。我必须发现它是什么信号(它有什么组件)并尝试重建它。 所以在我完成 FFT 之后,我想找到信号的相位,所以我尝试:

       phs=unwrap(angle(y));
    pha_wek=(0:length(y)-1)'/length(y)*129; 
    plot(pha_wek,phs)

结果我得到了它不是我所期望的。你能指出我有什么问题吗?

【问题讨论】:

您遗漏了关键信息!你期待什么,你得到了什么? 图中不同轴上的内容是什么,预期的输出是什么? 您好,很抱歉没有回复。第一张图片是 FFT,第二张我试图根据我的信号中的 fft 来做相位频谱。我基于 mathworks.com/help/signal/ref/angle.html 。我想根据频率找到我的信号的相位。但不知道如何为 130 个样本找到 x 轴的正确频率 【参考方案1】:

情节在我看来完全正确,具体取决于原始信号是什么。相位角的不连续性是由于幅度过零造成的。但是,相位跳变小于 pi(如果输入信号最初是真实的并且在应用 FFT 时已加窗,则这是您可能期望的)。所以我的猜测是,这个信号是某种形式的复杂调制,带有一些离散的频率。

通常查看相位比信号幅度更能说明信号。它对于重建信号至关重要,但更难以解释(特别是因为它会因时域的简单变化而发生巨大变化)。

不使用 unwrap 命令可能会更好地绘制相位 在这种情况下,问题在于 unwrap 命令 - 它的目的是将相位跳跃限制为小于 pi,这就是为什么最终相位约为 -4pi .

我不确定您的挑战是什么,但不清楚您所说的重构样本是什么意思。你已经有了这些,那有什么问题呢? (是否要求您重建插值样本)?

【讨论】:

以上是关于信号错误生成的相位谱matlab的主要内容,如果未能解决你的问题,请参考以下文章

求matlab周期三角波信号频谱分析的代码,能画出三角波信号、幅度谱和相位谱。

用matlab进行傅里叶变换。傅里叶变换得到的相位谱、幅值谱有啥用?怎么分析?

信号的频谱幅度谱相位谱及能量谱密度功率谱密度

转载时域信号的频谱功率谱和功率谱密度计算

短时幅度谱短时幅度谱估计在语音增强方面的MATLAB仿真

用matlab实现连续时间周期信号(方波信号,三角波信号)的频谱分析