我要发布
仪器网/ 仪器社区/ 频谱分析仪/ 怎么用matlab画出信号频谱分析图

怎么用matlab画出信号频谱分析图

呵呵呵呵驱蚊器    2009-04-19    频谱分析仪    浏览 387 次

请问一下,怎么使用matlab将数据采集卡采集到的信号进行频谱分析,学校毕业设计要用,但matlab只用来做图像处理,没做过信号分析,进行信号频域分析,画出频谱图!!!!!

精彩问答
milkneng1 发布日期:2017-10-06
在命令窗口输入doc fft回车后,可看到例子。

%构造出信号(如已有信号,此步可省略)
Fs = 1000; % Sampling frequency
T = 1/Fs; % Sample time
L = 1000; % Length of signal
t = (0:L-1)*T; % Time vector
% Sum of a 50 Hz sinusoid and a 120 Hz sinusoid
x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
y = x + 2*randn(size(t)); % Sinusoids plus noise
plot(Fs*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)')

NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2+1);

%FFT分析
% Plot single-sided amplitude spectrum.
plot(f,2*abs(Y(1:NFFT/2+1)))
title('Single-Sided Amplitude Spectrum of y(t)')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
被采纳
全世界我只欺负 发布日期:2017-10-08 04:55:09
较完整的频谱图:
设抽样频率为Fs(Hz),信号点数为N,信号序列为x。
f = fftshift(fft(x));
w = linspace(-Fs/2, Fs/2, N);%频率坐标,单位Hz
plot(w,abs(f));
title('信号的频谱');
xlabel('频率(Hz)');
全部评论
只喜欢女人丶 发布日期:2009-04-29
试试simulink看看
肖瑶哥哥418 发布日期:2009-04-20
单单做频谱图上面的回答是可以的
直接对数据矩阵做fourier变换,然后画图就好了
bolzoxwg 发布日期:2009-04-20
设a为数字的序列,
b=fft(a);
bar(abs(b));
小燕CHU 发布日期:2015-07-13
一般有两种方式话频谱图
diyi种是用matlab自带的频谱分析的画图函数 (可以尝SYplomb)直接画图
第二种是先通过,fft,psd,plomb 返回频谱功率或者频谱密度,然后在直接用plot等函数画图。

如果说只是想画个频谱图看一下,那么推荐直接用plomb就足够了。
最新主题
相关版块
我要评论
X您尚未登录
账号登录
X您尚未登录
手机动态密码登录
X您尚未登录
扫码登录
官方微信

仪器网微信服务号

扫码获取最新信息


仪器网官方订阅号

扫码获取最新信息

在线客服

咨询客服

在线客服
工作日:  9:00-18:00
联系客服 企业专属客服
电话客服:  400-822-6768
工作日:  9:00-18:00
订阅商机

仪采招微信公众号

采购信息一键获取海量商机轻松掌控