(MATLAB)应用实例13-时域信号的频谱分析

采用傅里叶变换来计算存在噪声的适于信号频谱。

假设数据采样频率为1000Hz,一个信号包含两个正弦波,频率50Hz、120Hz,振幅0.7、1,噪声为零平均值的随机噪声,采用FFT方法分析其频谱。

Matlab 复制代码
 clear
 Fs = 1000;                     % 采样频率
 T = 1/Fs;                      % 采样时间
 L = 1000;                      % 信号长度
 t = (0:L-1)*T;                 % 时间向量
 x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t); 
 y = x + 2*randn(size(t));      % 加噪声正弦信号

 figure
 plot(Fs*t(1:50),y(1:50))       %绘制添加了随机噪声的信号波
 title('零平均值噪声信号');
 xlabel('time (milliseconds)')

 NFFT = 2^nextpow2(L);          %传递fft的信号长度
 Y = fft(y,NFFT)/L;             %对信号进行快速傅里叶变换,将时域信号转化为频谱
 f = Fs/2*linspace(0,1,NFFT/2); %FFT变换后的频率

 figure
 plot(f,2*abs(Y(1:NFFT/2))) 
 title('y(t)单边振幅频谱')
 xlabel('Frequency (Hz)')
 ylabel('|Y(f)|')
相关推荐
Evand J3 小时前
【代码介绍】RSSI定位程序,N个锚点、三维空间,使用CKF对轨迹进行滤波,MATLAB代码
matlab·滤波·定位·三维
加成BUFF5 小时前
《机器人学》MATLAB 机器人工具箱 应用指南二
matlab·机器人·机器人工具箱
吃好睡好便好6 小时前
矩阵的左乘和右乘
人工智能·学习·线性代数·算法·matlab·矩阵
jllllyuz8 小时前
通信信号调制识别系统(MATLAB实现)
开发语言·matlab
彬鸿科技19 小时前
bhSDR Studio/Matlab入门指南(十一):AI数据集采集实验界面全解析
人工智能·matlab·软件定义无线电
yuan199971 天前
基于 MATLAB PSO 工具箱的函数寻优算法
开发语言·算法·matlab
wearegogog1231 天前
基于MATLAB实现雷达RCS Swerling模型
开发语言·matlab
强盛机器学习~1 天前
2026热门方向!基于强化学习的多无人机移动边缘计算与路径规划研究(完整代码&数据)
人工智能·matlab·无人机·边缘计算·强化学习·无人机路径规划
nwsuaf_huasir1 天前
哈工大latex模板学位论文参考文献引用方法
matlab
机器学习之心1 天前
BiLSTM-BP加权组合模型回归预测:MATLAB实现与三模型对比分析
matlab·回归·bilstm-bp