配电系统的线性三相潮流研究【IEEE123节点】(Matlab代码实现)

欢迎来到本博客❤️❤️

博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

本文目录如下:

目录

1 概述

2 运行结果

3 参考文献

4 Matlab代码、数据、文章讲解


1 概述

文献来源:

配电系统的线性三相潮流研究【IEEE123节点】(Matlab代码实现)_第1张图片

 本文提出了三相配电系统的线性潮流。考虑平衡和非平衡运行以及负载的ZIP模型。该方法不需要任何与R/X率。尽管它很简单,但与传统的后向扫描算法相比,它非常准确。

直流功率流是电力系统分析和运行研究最多的方法之一[1]。然而,这种线性近似不适用于配电系统,因为它们高R/X比率和不平衡操作[2]。这封信通过在复平面上使用线性近似来解决这个问题。不需要径向拓扑。不考虑光伏节点,但在电网规范强制这些发电机单位功率因数运行的情况下,可以包括配电发电机。

2 运行结果

配电系统的线性三相潮流研究【IEEE123节点】(Matlab代码实现)_第2张图片

 配电系统的线性三相潮流研究【IEEE123节点】(Matlab代码实现)_第3张图片

部分代码:

function ShowResults(Res,Feeder);

fprintf('---------------%s---------------\n',Feeder.Options.Name);
fprintf('Total Losses : %5.4f  kW\n',Res.Perd);
%fprintf('N Iterations : %i  \n',Res.iter);
if Feeder.Options.DeltaLoadFlow
%% Voltajes de linea
  disp('------- LINE TO LINE VOLTAGES ----------------------------------------------------------');
  format short
  fprintf('NODE\tVAB(pu)\t VAB(deg)\t VBC(pu)\tVBC(deg)\tVCA(pu)\tVCA(deg)\n'); 
  for k = 1:Feeder.NumN
      V = abs(Res.Vpu_line(k,:));
      A = angle(Res.Vpu_line(k,:))*180/pi;
      n = Feeder.Nodes_ID(k);
      if (n<10)
        fprintf('N%i  \t',Feeder.Nodes_ID(k));
      else
        if (n<100)
        fprintf('N%i \t',Feeder.Nodes_ID(k));    
        else
        fprintf('N%i\t',Feeder.Nodes_ID(k));
        end
      end
      for m = 1:3     
          if (V(m)>0.1)
             fprintf('%5.4f < ',V(m));
             if (A(m)>0)
                 fprintf(' %5.4f \t ',A(m));
             else
                 fprintf('%5.4f \t ',A(m));
             end
          else
             fprintf('.                  \t ') 
          end
      end
      fprintf('\n');            
  end
else 
% Voltajes de fase
disp('--------PHASE VOLTAGES ---------------------------------------------------------');
 format short
  fprintf('NODE\tVAn(pu)\t VAn(deg)\t VBn(pu)\tVBn(deg)\tVCn(pu)\tVCn(deg)\n'); 
  for k = 1:Feeder.NumN
      V = abs(Res.Vpu_phase(k,:));
      A = angle(Res.Vpu_phase(k,:))*180/pi;
      n = Feeder.Nodes_ID(k);
      if (n<10)
        fprintf('N%i  \t',Feeder.Nodes_ID(k));
      else
        if (n<100)
        fprintf('N%i \t',Feeder.Nodes_ID(k));    
        else
        fprintf('N%i\t',Feeder.Nodes_ID(k));
        end
      end
      for m = 1:3     
          if (V(m)>0)
             fprintf('%5.4f < ',V(m));
             if (A(m)>0)
                 fprintf(' %5.4f \t ',A(m));
             else
                 fprintf('%5.4f \t ',A(m));
             end
          else
                fprintf('.                  \t ') 
          end
      end
      fprintf('\n');            
  end
end
% %disp([Feeder.Nodes_ID,abs(Res.Vpu_line(:,1)),angle(Res.Vpu_line(:,1))*180/pi,abs(Res.Vpu_line(:,2)),angle(Res.Vpu_line(:,2))*180/pi,abs(Res.Vpu_line(:,3)),angle(Res.Vpu_line(:,3))*180/pi]);    


%disp('Reguladores')
%lin = Feeder.Regulators(:,1);    
%N1 = Feeder.Nodes_ID(Feeder.Topology(lin,1));
%N2 = Feeder.Nodes_ID(Feeder.Topology(lin,2));
%disp([N1 N2]);


%Res.Vpu_phase = conj(Vs')/Vbase_fase;
% Res.Vpu_line  = Vlin/Vbase_lin;
% Res.Inodes = -conj(Inodal');  % entrando al nodo
% Res.Ilines = conj(Is');
% Res.iter = iter;
% Res.err = err;
% Res.Perd = Sperdidas;
% Res.Sort = Sort;
 

3 参考文献

部分理论来源于网络,如有侵权请联系删除。

配电系统的线性三相潮流研究【IEEE123节点】(Matlab代码实现)_第4张图片

4 Matlab代码、数据、文章讲解

你可能感兴趣的:(电力系统,matlab,开发语言)