a2_fft.asv

来自「使用matlab变成」· ASV 代码 · 共 48 行

ASV
48
字号
hold off;
clear;

load Idata.dat;%导入数据文件:CH1.DAT(单列的数据文件1×2500个数据)

for i=1:360
    a(i)=Idata(i);
end

%绘制原始数据波形图;
figure;
subplot(1,1,1);
plot(a);grid on;
title(' 电 流 波 形  ');
xlabel('\fontsize{14}\bfωt\rightarrow'),                      
ylabel('\fontsize{14}\bfi\rightarrow'),



%FFT计算频谱;
a0=fft(a)
a1=abs(fft(a))/1000;
a2=a1/a1(2)*100;
a2(1)=0;

%显示25次以下谐波

for i=1:100
    a3(i)=a2(i);
end

%计算2-25次谐波的总畸变率
hmr=0;
for i=3:100
    hmr=hmr+a3(i)^2;
end
hmr=sqrt(hmr);

%绘制棒形频谱图
figure;
subplot(1,1,1);
bar(1:100,a3);
axis([0,100,0,110]);grid on;
title('电 流 频 谱');
xlabel('\fontsize{14}\bfωt\rightarrow'),                      
ylabel('\fontsize{14}\bfFFT\rightarrow'),

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?