本文介绍信号频域分析中幅值谱和相位谱的相关代码和分析过程!
这个内容相关博主可能也分享过,但是着急想用找不到一些参考代码,感觉不方便,所以还是想梳理一下这块的内容。
该内容参考了一些资料:
1、书籍:MATLAB数字信号处理85个实用按比例——入门到进阶 宋知用 编著
2、matlab官网的一些例子:
https://ww2.mathworks.cn/help/signal/ug/practical-introduction-to-frequency-domain-analysis_zh_CN.html#d126e17836
代码采用了Matlab 2024a进行运行,欢迎大家测试和提出问题!
前言
说到信号处理,绕不开的话题就是信号的频域分析,频域分析的基础是傅里叶变换(FFT),它认为信号可以由正弦信号和余弦信号组成,而不论正弦信号还是余弦信号,它的两个重要参数分别是频率和初始相位。
在信号的频域分析中,幅值谱和相位谱是平稳信号分析两个手段,它能直观地反映信号的频域特性。
具体案例
这里有四个信号y1、y11、y2、y22,他们的表达式如下。
这里,noise表示一个符合标准正态分布的随机噪声。采样频率设置为1000,信长度为1000,即每个信号的时间长度为1s。上述这个信号的时域波形如下图所示。
图1
图中,从上到下依次对应信号y1、y11、y2、y22,从图中能发现,在噪声的干扰下,y11和y22的波形发生了变形。
下面利用绘制上述这几个信号频域的幅值谱和相位谱如下。
y1信号的幅值谱(左)和相位谱(右):
图2
从y1的幅值谱中能找到幅值为0.8的直流分量、频率为50Hz幅值为0.7的余弦分量、频率为300Hz幅值为0.8的余弦分量。
从y1相位谱中能找到频率为50Hz的余弦分量的初始相位为-0.25pi,频率为300Hz的余弦分量的初始相位为0.2pi,直流分量的初始相位为0(好奇请往下看)。(注意相位谱的单位为pi)
这验证了幅值谱和相位谱代码的准确性。
y11信号的幅值谱(左)和相位谱(右)