a2_fft.m

来自「使用matlab变成」· M 代码 · 共 47 行

M
47
字号
hold off;
clear;

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

for i=1:1000
    a(i)=CH22(i+250);
end

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



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

%显示25次以下谐波

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

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

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

⌨️ 快捷键说明

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