本帖最后由 yszh0836 于 2017-2-28 17:40 编辑

案例场景:

现通过AD采集电网信号进行谐波分析的课题研究,电网为正弦波,周期50Hz(周期20ms),AD采样率6400(即每个电网周期采样128个点)。

现在用matlab进行前期仿真分析来分析一个直流+50Hz+1500Hz的正弦波叠加后的波形。

代码基本按照matlab的fft帮助文件里的代码修改过来,代码可以正常运行。问题描述如下:

1:Fs=6400,L=128 或者更高的2^N时,分析没有问题,3条幅度从左往右依次是1,2,3。

2:Fs=6400,L=64,则分析后显示频谱幅值就有比较大的误差了,取32就更不对。

我的问题:

1:按理说,L取64时相当于刚好分析半个电网周期的数据,难道FFT分析时一定要分析至少一个完整周期的信号?

2:plot后频谱图上如果两个频率相差太近,可以在每条频谱线的X轴标上频率 值?

代码如下:

Fs = 6400;            % Sampling frequency

T = 1/Fs;             % Sampling period

L = 64;             % Length of signal

t = (0:L-1)*T;        % Time vector

%%

% Form a signal containing a 50 Hz sinusoid of amplitude 0.7 and a 120 Hz

% sinusoid of amplitude 1.

S = 1+2*sin(2*pi*50*t) + 3*sin(2*pi*1500*t);

%%

% Corrupt the signal with zero-mean white noise with a variance of 4.

X = S + 2*randn(size(t));

%%

% Plot the noisy signal in the time domain. It is difficult to identify

% the frequency components by looking at the signal |X(t)|.

% plot(1000*t(1:50),X(1:50))

title('Signal Corrupted with Zero-Mean Random Noise')

xlabel('t (milliseconds)')

ylabel('X(t)')

%%

% Compute the Fourier transform of the signal.

Y = fft(X);

%%

% Compute the two-sided spectrum |P2|.  Then compute the single-sided

% spectrum |P1| based on |P2| and the even-valued signal length |L|.

P2 = abs(Y/L);

P1 = P2(1:L/2+1);

P1(2:end-1) = 2*P1(2:end-1);

%%

% Define the frequency domain |f| and plot the single-sided amplitude

% spectrum |P1|.  The amplitudes are not exactly at 0.7 and 1, as expected, because of the added

% noise. On average, longer signals produce better frequency approximations.

f = Fs*(0:(L/2))/L;

plot(f,P1)

title('Single-Sided Amplitude Spectrum of X(t)')

xlabel('f (Hz)')

ylabel('|P1(f)|')

%%

% Now, take the Fourier transform of the original, uncorrupted signal and

% retrieve the exact amplitudes, 0.7 and 1.0.

Y = fft(S);

P2 = abs(Y/L);

P1 = P2(1:L/2+1);

P1(2:end-1) = 2*P1(2:end-1);

% plot(f,P1)

bar(f,P1,1)

title('Single-Sided Amplitude Spectrum of S(t)')

xlabel('f (Hz)')

ylabel('|P1(f)|')

N=128.png

(67.56 KB, 下载次数: 6)

2017-2-28 11:23 上传

N=128时正常的图

2.png

(70.26 KB, 下载次数: 1)

2017-2-28 11:25 上传

N=64时幅度不正常

matlab fft 历程,MATLAB利用FFT分析不足一个完整周期的信号时的问题相关推荐

  1. 利用过采样技术提高ADC测量微弱信号时的分辨率

    1. 引言 随着科学技术的发展,人们对宏观和微观世界逐步了解,越来越多领域(物理学.化学.天文学.军事雷达.地震学.生物医学等)的微弱信号需要被检测,例如:弱磁.弱光.微震动.小位移.心电.脑电等[1 ...

  2. 【 MATLAB 】信号处理工具箱之 fft 案例分析

    上篇博文:[ MATLAB ]信号处理工具箱之fft简介及案例分析介绍了MATLAB信号处理工具箱中的信号变换 fft 并分析了一个案例,就是被噪声污染了的信号的频谱分析. 这篇博文继续分析几个小案例 ...

  3. 【 MATLAB 】信号处理工具箱之fft简介及案例分析

    目录 Syntax Description Y = fft(X) Y = fft(X,n) Y = fft(X,n,dim) Examples Noisy Signal Syntax Y = fft( ...

  4. MATLAB利用FFT对信号进行频谱分析

    1.实验目的 (1)进一步加深DFT算法原理和基本性质的理解(因为FFT只是DFT的一种快速算法,所以FFT的运算结果必然满足DFT的基本性质). (2)熟悉FFT算法原理和FFT程序的应用. (3) ...

  5. 信号功率谱密度matlab,Matlab2019b中常用的音频信号分析,快速傅里叶(FFT),功率谱密度(PSD),以及通过FFT求取功率谱密度的问题...

    本应该为基础知识的维纳辛钦定理的证明,在matlab调试中遇到的大坑.为了验证,本人编写了一个从求取FFT,到多种方法求取PSD的matlab程序. 问题主要集中在x轴和y轴应该如何取值的问题上,单纯 ...

  6. 在matlab上利用fft进行信号频谱分析_使用示波器进行信号频谱分析(FFT)的设置教学...

    对信号中的频率分量进行分析是十分重要的,因为他们常常会在设计中引起噪声,一旦超出允许的公差,就可能进而导致器件发生故障功能失常.严重的还可能导致电压尖峰,损坏器件.如果我们在设计的时候没有进行正确的测 ...

  7. 离散傅里叶变换DFT与FFT,MATLAB的FFT函数使用(原创)——如何使用fft()绘制出真正的频谱图像

    以前一直对MATLAB中fft()函数的使用一直存在疑惑,为什么要加一 些参数,并且如何确定这些参数,也查了许多资料,但很多都感觉只是 表面一说根本没有讲清其本质.但随着学习的推进,慢慢有所领悟,所 ...

  8. 如何避免FFT(matlab)计算傅里叶级数与傅里叶变换时存在的混叠(aliasing)和泄露(leakage)问题

    文章目录 前言 1. 周期信号的傅里叶级数 1.1 周期信号的多种傅里叶表示形式 1.2 周期信号傅里叶级数系数的计算 2 非周期信号的傅里叶变换 2.1 非周期信号的傅里叶变换 2.2 傅里叶级数与 ...

  9. Matlab数字图像的傅里叶变换(FFT)

    查看全文 http://www.taodudu.cc/news/show-6182241.html 相关文章: 使用matlab对图像进行傅里叶变换 [ MATLAB ]离散傅里叶变换(DFT)以及逆 ...

  10. [Matlab科学计算] 频谱分析和FFT算法总结

    频谱分析是一种非常重要的信号处理方法,在机械设备故障诊断.振动系统分析.电力系统.无线电通信.信息图像处理和自动控制等学科中都有重要应用.频谱分析的核心是1965年Cooely-Tukey发表的快速傅 ...

最新文章

  1. nslookup默认服务器修改,Nslookup命令的使用 - [详细]
  2. python pyside简单布局_python – pyside显示/隐藏布局
  3. 做了一个网页,顺便录制了一个视频,大家看看高端不
  4. 基于MM2的跨IDC kafka热备多活方案
  5. 分页的limit_Presto分页功能概述
  6. python画猴子_Python学习笔记(1)
  7. Linux磁盘分区/格式化/挂载目录
  8. 为什么需要使用Git客户端?
  9. 开放大学计算机应用基础第三次,江苏开放大学-计算机应用基础第三次.doc
  10. 区块链应用大数据的优势有哪些
  11. 如何提升Java应用程序性能
  12. 计算机知识竞赛策划案,计算机基础知识竞赛策划书.doc
  13. pc安装android,在电脑上安装安卓的过程
  14. 网络发现已关闭。网络计算机和设备不可见。请启用网络和共享中心中的网络发现。
  15. c语言学生班级通讯录,C语言做学生通讯录
  16. consonant combination
  17. Ubuntu 升级显卡驱动
  18. 【对比Java学Kotlin】协程-创建和取消
  19. The specified target project directory 项目名\src\main\resources does not exist 问题解决
  20. 年货节买蓝牙耳机哪个品牌最好?数码达人力荐的几大机型!

热门文章

  1. 荣耀5G,三刀拍案惊奇
  2. 工业镜头、相机的结构、参数解释及选型指南
  3. 手机工商银行怎么转账_工行手机银行可以转账吗
  4. Vue项目-2首页开发(header)
  5. 字道-最美中国字硬笔书法教学|培养孩子正确的执笔写字姿势有多重要?看完你就明白了!
  6. 对接微信公众(开放)平台,获取微信用户信息,实现第三方登录
  7. 国产低代码开发平台,这5个值得一试
  8. 圆形时间html,html5 canvas实现圆形时钟代码分享
  9. 第十四周 项目一 二叉排序树
  10. 新编16 32位微型计算机答案,新编1632位微型计算机原理及应用.习题解答.ppt