(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)|')
相关推荐
寡人很佛17 小时前
【day16】从零开始学数学建模-日期使用方法汇总
数学建模·matlab·datetime·日期处理·datenum
gihigo199818 小时前
基于MATLAB的LTE物理层仿真系统
开发语言·matlab
机器学习之心HML19 小时前
粒子群算法求解速冻食品冷链配送路径优化问题,MATLAB代码
算法·matlab·冷链配送路径优化
fie888919 小时前
基于粒子群优化(PSO)算法的带STATCOM的IEEE 30节点系统最优潮流MATLAB实现
开发语言·算法·matlab
wearegogog12321 小时前
MATLAB椭圆参数检测算法实现
数据库·算法·matlab
88号技师1 天前
2026年4月一区SCI-狒狒优化算法Baboon optimization algorithm-附Matlab免费代码
开发语言·算法·数学建模·matlab·优化算法
2zcode1 天前
基于MATLAB卷积神经网络的多颜色车牌识别系统设计与实现
开发语言·matlab·cnn
MATLAB代码顾问1 天前
MATLAB实现粒子群算法优化PID参数
开发语言·算法·matlab
爱代码的小黄人1 天前
总谐波畸变率 THD 的计算公式整理:MATLAB 官方公式与论文常用公式对比
开发语言·matlab
2zcode1 天前
基于Matlab不规则颗粒粒径周长面积测量及计数系统
开发语言·算法·matlab