matlab进行傅里叶分析

license需求:需要使用到simulink工具包simscape

1.在matlab的command window中输入power_fftscope命令,并按回车键,该操作会打开FFT分析的窗口

2.加载用于FFT分析的数据到matlab worksapce,该数据需要按照一定的格式显示才能被FFT分析窗口自动识别到。

能够识别到的数据格式需要是一个结构体:

该结构体包含三个元素:

time: 一维数组

signals:结构体,该结构体包含五个元素,values(一维或多维数组), dimensions(单个数值,表示values的维度),lable(字符串),title字符串),plotStyle(单个数值)

blockName:字符串

将需要进行FFT分析的数据按照上述格式准备好以后,点击FFT分析窗口的Refresh按钮,会自动识别到需要进行分析的数据

3.进行相应项的设置: 

4. 点击Display按钮,显示结果。点击export按钮可以输出matlab figure

示例使用了一个标准的sin波形进行分析sin(2*pi*10),所以FFT出来的结果就只有10Hz的基波,没有谐波。我们对该sin波注入幅值为0.1的5次和7次谐波,0.1*sin(2*pi*50),0.1*sin(2*pi*70)再次进行FFT分析,能明显的看到五七次谐波的存在。

Y轴表示的含义:当我们Display style选择是Bar(relative to fundamental)时,图形显示的是谐波幅值占基波幅值的百分比大小,基波处(harmonic order = 1)显示就是100,因为除以自身得到的结果就是1,即100%。而五次谐波和七次谐波的幅值是0.1,基波的幅值是1,所以结果是10%,图形在五次和七次谐波处的Y轴就是10。

图形title表示的含义

图形的title显示的就是基波的幅值大小(Fundamental(10Hz)= 1),而THD = 14.14%表示的是:

THD(Total Harmonic Distortion),总谐波失真度,表征被输入波形的失真程度,THD数值越大,输入波形的失真越严重。在matlab中定义为信号总谐波的均方根 (RMS) 值除以其基波信号的 RMS 值。这边就是sqrt(0.1^2 + 0.1^2)/sqrt(1^2) = 0.1414。

  • 2
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值