设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 3407|回复: 5

配电系统三相潮流计算 matlab仿真 结果不正确 求解答

  [复制链接]

该用户从未签到

尚未签到

发表于 2013-5-17 11:12:13 | 显示全部楼层 |阅读模式

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
各位~~我根据下图的一个系统用Matlab编写了一段程序,是电流型前推回代法的三相配电系统潮流计算,但是现在结果不是我想要的,不收敛。请各位帮我看一下,提提建议。图片见附件了。还有个问题:已知的线路都是三相对称线路的阻抗值,那么线路的阻抗矩阵中的互阻抗应该如何计算,是什么样的形式,应用怎样的公式?这里我不是很清楚。
  1. %程序名:qiantuihuitui_I_3.m
    % T9 I" V  B; r0 \& S3 e
  2. %功能:支路电流前推回推法求解潮流 ) }( A" O9 q% ?5 _9 y- L. T
  3. clc ) t; b! q/ l+ N, i; L
  4. clear all; 2 d2 |- f% |6 b& q% T2 r9 ?
  5. %--------------输入网络参数--------------
    , y& B, P' ^7 V* B7 |: C
  6. %1-支路编号,2-首节点,3-尾节点,4-自阻抗,5-尾节点复功率,6-支路性质(1-馈线段支路,2-变压器支路),7-尾节点是否带负荷& G! R  y9 q  Q- \* P
  7. DB=[1 1 2 0.000167+j*0.000208 0.42+j*0.31 1 1
    $ ^( s0 Z* x7 R3 A& a
  8.     2 2 3 0.000151+j*0.000188 6.15 1 00 J* A  L% i* ]0 T6 s; n0 n
  9.     3 2 4 0.000066+j*0.000082 0.38+j*0.29 1 15 L) i' g6 a0 l# ]# }* B
  10.     4 2 5 0.000249+j*0.000310 0 1 0
    , x5 _' f* a3 o
  11.     5 2 6 0.000172+j*0.000215 0 1 0
    / n% Y  H+ L- D, r% k
  12.     6 4 7 0.000156+j*0.000195 6.06 1 0
    % H4 r" i4 X3 h% o2 _6 C
  13.     7 4 8 0.000162+j*0.000202 6.04 1 0
    6 {& G% w) K3 q
  14.     8 4 9 0.000345+j*0.000430 0 1 0
    - g0 t2 }. f' A- C1 l7 K7 k
  15.     9 4 10 0.000287+j*0.000358 0 1 0
    * q7 d# r7 m. L  K. O; _
  16.     10  5 11 0.020563+j*0.321594 0 2 0
    . u" G# m3 ]. C, p- Z( x" k1 I
  17.     11  6 12 0.020563+j*0.321594 0 2 0
    - U* |  X/ F: c/ _, w- D
  18.     12  9 13 0.020563+j*0.321594 0 2 0
    8 _& Z7 a% I8 R. l
  19.     13  10 14 0.020563+j*0.321594 0 2 0  8 `: E  I5 k0 K* |: ^
  20.     14  11 15 0.000237+j*0.000408 5.72+j*0.12 1 1
    " N& W% i' Y& M3 G$ Y  i
  21.     15  12 16 0.000237+j*0.000408 5.76+j*0.09 1 1
    4 I  _& q; N2 N2 m- M. z* W
  22.     16  13 17 0.000292+j*0.000502 5.86+j*0.11 1 1
    ' O5 |* k' T$ E0 I3 g/ V
  23.     17  14 18 0.000274+j*0.000470 5.81+j*0.14 1 1]; # c. D  |* d: z0 V5 @0 K
  24. [n,m]=size(DB);  6 h6 `. d* a1 ]0 Y
  25. B=[1 sin(2*pi/3)+j*cos(2*pi/3) sin(4*pi/3)+j*cos(4*pi/3)];
    " n, j1 E% H  g; f
  26. C=[1.02 1 1.02 1 1 1 1.02 1.02 1 1 1 1 1 1 1 1 1 1];
    5 ^' y9 f1 K$ t1 z6 J1 z6 a, ?. k# L
  27. U(:,1)=B(1,1)*C';1 v1 u' @; i; o* q( @- P
  28. U(:,2)=B(1,2)*C';5 D1 ?$ P5 b' O& J( z: l8 ^
  29. U(:,3)=B(1,3)*C';" ]' d8 e9 T5 V3 p/ Y$ H
  30. %-------------------求解潮流----------------- : h" k) c" `2 [+ D9 Z" K
  31. for k=1:15 1 }/ m1 f$ Q$ m  ^7 B
  32. %   I(:,k)=((DB(:,5).')*(diag(1./U(:,k))))'; ! u/ |0 d& S* `+ j
  33. for i=n:-1:1 * K5 l4 {' Y: P, |/ }
  34.   %如果尾节点带恒功率负荷,需计算节点上负荷注入的电流
    ' w+ M5 t" C3 Q: T* |6 I; @+ G8 i, }
  35. if DB(i,7)==1
    4 Z5 ?) v8 }! G9 f+ Z
  36. c=DB(i,5)/3;  ^- E* g3 M" u1 O. F
  37. d=c/U(i+1,(3*k-2));3 A. e5 R2 b$ M+ R/ f
  38. IL(i,3*k-2)=conj(d);7 K6 ]+ M/ `# G2 z6 B
  39. d=c/U(i+1,3*k-1);
    - f7 ?* ^& X7 L
  40. IL(i,3*k-1)=conj(d);
    # e4 _, }- k* P* g! \
  41. d=c/U(i+1,3*k);  u. A! y, m( u; w" `3 N# Q
  42. IL(i,3*k)=conj(d);
    1 _0 O+ w  w' t6 @1 H6 O
  43. else
    - s# w) }# k9 N6 M
  44. IL(i,3*k-2)=0;
    7 ^- a; o) W9 {$ B- C, b
  45. IL(i,3*k-1)=0;/ p1 g5 l1 }6 F# w3 }% d$ V
  46. IL(i,3*k)=0;
      `4 m! D3 |8 w" x
  47. end7 Z* X3 \+ C# G" e" w/ T9 o
  48. %找出所有与尾节点相连的支路,计算进支电流(末端电流),存IKj
    , Q- |2 P8 h3 Z+ G; x9 r
  49. A=(find(DB(:,2)==(i+1)));
    7 m( c9 D3 a0 y' X5 C
  50. if isempty(A)~=1) z5 L# F" s  V% y9 l
  51. IKj(i,3*k-2)=IL(i,3*k-2)-sum(IKj(A,3*k-2));
    0 M/ f9 y7 X# C. }+ T
  52. IKj(i,3*k-1)=IL(i,3*k-1)-sum(IKj(A,3*k-1));
    ) G$ P* ?0 r" x4 a! w: s
  53. IKj(i,3*k)=IL(i,3*k)-sum(IKj(A,3*k));* ]5 o: T  z$ Z$ F
  54. else' d/ ~0 u; b3 m; {9 B% y
  55. IKj(i,3*k-2)=IL(i,3*k-2);& \& w- u( p" y& {( F9 v8 X0 U
  56. IKj(i,3*k-1)=IL(i,3*k-1);
    % w* R6 M/ y/ Y* P6 \! M! Q& Z9 b
  57. IKj(i,3*k)=IL(i,3*k);: ?0 J5 N+ _- X6 J
  58. end
    + ?5 s; r) a& B% |' y- g  A0 Z
  59. %计算出支电流(始端电流),存IKi' t$ v$ r4 d- U8 s7 q; G0 j1 P/ N- l
  60. a=DB(i,2);
    ' o- F% y& A: w* X
  61. b=DB(i,3);
    & @0 m- e  y7 n
  62. Yi=1/DB(i,4)*eye(3);
    , T1 o5 g9 g2 B  C
  63. if DB(A,6)==1
    1 O; g2 g# q! M/ Z7 A4 R$ S( ^
  64. F=0.5*Yi*[(U(a,3*k-2)+U(b,3*k-2)) (U(a,3*k-1)+U(b,3*k-1)) (U(a,3*k)+U(b,3*k))]'+[IKj(i,3*k-2) IKj(i,3*k-1) IKj(i,3*k)]';
    2 _: E* U) @* e! _! p
  65. IKi(i,3*k-2)=F(1,1);2 t2 u( I+ G4 I% W1 C& Q! _
  66. IKi(i,3*k-1)=F(2,1);- f2 n% U( l4 [& Y
  67. IKi(i,3*k)=F(3,1);: n% A% n7 @0 x% c& u& f1 D
  68. else: p! ~6 n3 V" T7 h, @+ g; o
  69. YT=1/real(DB(i,4))+j*(1/imag(DB(i,4)));# o# x) s6 x$ R7 C
  70. YI=YT*eye(3);% m5 k" S2 M5 `) M; X( H0 h
  71. YII=YT*eye(3);5 S1 x. m! `5 ?; l5 y2 J
  72. YIII=-YT*eye(3);
    ! n4 `" l( ]9 x! J" p- |
  73. D=inv(YIII)*(-[IKj(i,3*k-2) IKj(i,3*k-1) IKj(i,3*k)]'-YII*([U(b,3*k-2) U(b,3*k-1) U(b,3*k)]'));4 M' f+ m7 I7 U3 Y8 Q, Q
  74. U(a,3*k+1)=D(1,1);
    & J3 _1 P9 l2 y9 _( e( \$ d, Y1 N, K' w
  75. U(a,3*k+2)=D(2,1);! k- t' u- q0 a: b* z2 L
  76. U(a,3*k+3)=D(3,1);5 {6 h1 ^# g8 j# j4 v7 ]" H
  77. E=YI*[U(a,3*k+1) U(a,3*k+2) U(a,3*k+3)]'-YIII*[U(b,3*k-2) U(b,3*k-1) U(b,3*k)]';) m6 E( z5 W. A$ H2 X2 j3 V* d' C
  78. IKi(i,3*k-2)=E(1,1);# v9 ^" ?3 \7 t! }6 @) I
  79. IKi(i,3*k-1)=E(2,1);. l. ^7 c, j6 S" N  j/ k5 C
  80. IKi(i,3*k)=E(3,1);
      f& n9 u1 Z8 ~( U* K! i' l) q' G' }
  81. end
    # x- [$ k: B, J+ a/ d! l' s- a
  82. end 5 ?& p- P! \' j0 w+ j1 c
  83. %前推电压 . J/ ~; ~# O  C) q- X$ r# [
  84. for j=2:n  c- B8 N: o4 l! x
  85. U(1,3*k-2)=1.02;
    ) i% d* G/ I4 r8 E( W) [: M+ a
  86. U(1,3*k-1)=1.02*(sin(2*pi/3)+j*cos(2*pi/3));
    6 b) r, a8 q2 g( O5 w$ d' w& K
  87. U(1,3*k)=1.02*(sin(4*pi/3)+j*cos(4*pi/3));/ E+ S8 B* C. H1 }2 N; i: V
  88. a=DB(j-1,2);
    4 A: _, m4 m) Q' Q7 A+ A9 q! A
  89. if DB(j-1,6)==1
    # |1 d  d4 y* f. O- ]
  90. Yi=1/DB(j-1,4)*eye(3);
    3 q3 X" [* ~" c5 H
  91. G1=[IKi(a,3*k-2) IKi(a,3*k-1) IKi(a,3*k)]';1 h8 a, s) J1 ]; A6 Z0 p
  92. G=[U(a,3*k-2) U(a,3*k-1) U(a,3*k)]'-DB(j-1,4)*eye(3)*(G1-0.5*Yi*[U(a,3*k-2) U(a,3*k-1) U(a,3*k)]');4 o; n$ N1 F- S, @$ M' h* Q
  93. U(j,3*k+1)=G(1,1); 5 ~/ b/ \& }4 o* w- e% n. g! Y% ^
  94. U(j,3*k+2)=G(2,1);$ p% k8 j+ T' W  u
  95. U(j,3*k+3)=G(3,1);
    $ \# I$ i3 D+ J6 |
  96. else
    * B  u9 Q; o! B* b2 i
  97. YT=1/real(DB(i,4))+j*(1/imag(DB(i,4)));; n) ^1 r! _$ R" S$ _, h/ ?
  98. YI=YT*eye(3);
    0 J% U- `1 X2 p/ f8 |: H/ }
  99. YII=YT*eye(3);
    7 S$ \2 S. V+ Z+ e) _
  100. YIII=-YT*eye(3);( P  ]. v  H3 s, Z) B. S+ {
  101. H=inv(YIII)*([IKi(a,3*k-2) IKi(a,3*k-1) IKi(a,3*k)]'-YI*[U(a,3*k+1) U(a,3*k+2) U(a,3*k+3)]');0 \! l; A+ f2 W  E0 W7 B
  102. U(j,3*k+1)=H(1,1);
    2 }7 L. |, q/ Z% a
  103. U(j,3*k+2)=H(2,1);! j; b/ p: C- H1 r, A1 Z
  104. U(j,3*k+3)=H(3,1);
      o9 Y5 V, w0 X4 U; h4 R
  105. end ; |: K) Z% w( M! B  Z" O/ m
  106. end! I) S* ?! M# `# C$ [9 W
  107. dU1=U(:,3*k+3)-U(:,3*k); 8 D8 h. S) s, H4 ~! B, @
  108. dU2=U(:,3*k+2)-U(:,3*k-1);
    ) g$ |! C8 U: r/ E* G
  109. dU3=U(:,3*k+1)-U(:,3*k-2);
    " B0 ^( k8 x* r) v
  110. if (max(abs(dU1))<0.001&&max(abs(dU2))<0.001&&max(abs(dU2))<0.001) " i/ R$ m% \4 u6 m: i) M
  111. break;
    4 t, T3 X$ `' W2 L9 y% H( Q. N
  112. else            
    0 A4 u& f% r& r0 `4 [
  113. k=k+1;
    8 q: G7 A* D( Z, _, Y. L$ ?
  114. end ( J. s! B9 o2 {! _( b$ Q
  115. end* _8 x9 l+ L6 ~, B
  116. U; k. T4 ?' n& W3 J% Q- ^( i7 p# k
  117. IL
    # \; z# U5 k1 n/ c  X
  118. IKj
    % [$ t" U, \- r* p% Y
  119. IKi
    % j; ^+ P  _& U
  120. k  c4 H7 z& L& ?) C0 a: H0 u9 t# o9 Z! N
复制代码
QQ截图20130517110314.jpg
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    愤怒
    2021-6-12 00:00
  • 签到天数: 1657 天

    连续签到: 28 天

    [LV.Master]伴坛终老

    累计签到:3089 天
    连续签到:5 天
    发表于 2013-5-17 14:45:43 | 显示全部楼层
    我运行了楼主的这段代码,发现最后结果矩阵中很多元素都是Nan或Inf,是不是潮流计算阻抗矩阵中多数情况是这样的,还是不应该很多元素是NaN或Inf
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

     楼主| 发表于 2013-5-18 08:05:22 | 显示全部楼层
    回复 2# redplum 1 m1 l  m3 T2 K( {' i( ?

    " k8 n2 J6 G4 r" a& Q# c
    3 e* q& Y6 T2 w  a; A4 }    不应该是这样的,这是一个迭代计算,结果不收敛,所以还是哪个环节有问题,但是我还没有找到。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    愤怒
    2021-6-12 00:00
  • 签到天数: 1657 天

    连续签到: 28 天

    [LV.Master]伴坛终老

    累计签到:3089 天
    连续签到:5 天
    发表于 2013-5-18 13:43:28 | 显示全部楼层
    这段代码的原始数据有17行7列,K=1:15计算了15次循环。建议将数据弄少一些,这样才能更好判断到底是哪里不收敛
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

     楼主| 发表于 2013-5-21 16:38:26 | 显示全部楼层
    回复 4# redplum 6 i1 M3 w. z, h" w  n; \/ n
    就是即使我弄成迭代次数为2,结果也不啊~~
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2014-6-17 20:04:48 | 显示全部楼层
    这个问题解决了吗 求答案~
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

    小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

    GMT+8, 2026-6-13 08:24

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

    快速回复 返回顶部 返回列表