FFT分析频谱图导出的话可以参考这里
2.THD谐波总畸变率计算参考这里
3.谐波分量提取参考这里
4.谐波PLOT:HIT ME!!
基本指令格式:
power_fftscope
FFTDATA = power_fftscope(ScopeData)
FFTDATA = power_fftscope(FFTDATA)
power_fftscope(ScopeData)
power_fftscope(FFTDATA)例子:
假设要分析的信号是电流iL(在scope里命名为"iL1a")
先在powergui里分析一遍
然后在command窗口里输入:
>> FFTDATA = power_fftscope(iL1a) % FFTDATE是傅立叶分析相关参数的结构体
FFTDATA =
time: [120001x1 double]
signals: [1x1 struct]
blockName: 'apf6_PR/Scope13'
input: 1
signal: 1
startTime: 'last'
cycles: 1
fundamental: 60
maxFrequency: 1000
THDmaxFrequency: Inf
THDbase: 'fund'
mag: [17x1 double]
phase: [17x1 double]
freq: [17x1 double]
THD: 27.5218
samplingTime: 1.0000e-06
samplesPerCycle: 16667
DCcomponent: 0.0662
magFundamental: 8.9817
>> FFTDATE.fundamental=50 % 修改基频
FFTDATE =
fundamental: 50
y=a.signals.values;
Fs = 300; % Sampling frequency
T = 1/Fs; % Sample time
L=length(y); % Length of signal
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)
z=2*abs(Y(1:NFFT/2+1))
% 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)|');
插入FFT模块进行傅里叶分解。
程序估计给你也不合适,我做的是电力电子方面的。你要先在simulink定好你的节点图,添加电流和电压互感器,用示波器测出电流和电压~~用powergui的FFT(傅里叶分析)进行分析,LIST里全部都有~~自己查看一下~~