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

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

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

  [复制链接]

该用户从未签到

尚未签到

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

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

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

×
各位~~我根据下图的一个系统用MATLAB编写了一段程序,是电流型前推回代法的三相配电系统潮流计算,但是现在结果不是我想要的,不收敛。请各位帮我看一下,提提建议。图片见附件了。还有个问题:已知的线路都是三相对称线路的阻抗值,那么线路的阻抗矩阵中的互阻抗应该如何计算,是什么样的形式,应用怎样的公式?这里我不是很清楚。
  1. %程序名:qiantuihuitui_I_3.m & M( t9 A, p! H! \+ G" u  C
  2. %功能:支路电流前推回推法求解潮流 8 {! k6 R) u# Y# h1 w4 i% w
  3. clc 0 z) f7 P) H0 @: j
  4. clear all;
    2 z3 Y" l5 e5 }& T3 z# u
  5. %--------------输入网络参数-------------- : ?0 R) z! Z$ u9 ~% E# C
  6. %1-支路编号,2-首节点,3-尾节点,4-自阻抗,5-尾节点复功率,6-支路性质(1-馈线段支路,2-变压器支路),7-尾节点是否带负荷7 O2 S; \( ~: F, G9 \
  7. DB=[1 1 2 0.000167+j*0.000208 0.42+j*0.31 1 1) Z* j' \, |) w# F# G( C" j
  8.     2 2 3 0.000151+j*0.000188 6.15 1 0
    , m, i4 U; k7 |; V' v4 j7 X9 Y
  9.     3 2 4 0.000066+j*0.000082 0.38+j*0.29 1 1
    ; \" K/ `( T  f& o+ V- w2 X% {$ y
  10.     4 2 5 0.000249+j*0.000310 0 1 0
    : \  F9 |3 t0 p4 Q; e! I8 Y
  11.     5 2 6 0.000172+j*0.000215 0 1 0: m! @2 y  u/ a( E
  12.     6 4 7 0.000156+j*0.000195 6.06 1 0
    ( t* e: Q4 _8 v: b
  13.     7 4 8 0.000162+j*0.000202 6.04 1 0 2 Z. G5 c! y- o8 D, a
  14.     8 4 9 0.000345+j*0.000430 0 1 0 ( i7 w1 l6 S8 b3 r( ]$ q: ~. a
  15.     9 4 10 0.000287+j*0.000358 0 1 0
    8 {6 }0 r1 P! D4 z0 V; N0 b
  16.     10  5 11 0.020563+j*0.321594 0 2 0 # f; v3 V4 j2 e, r
  17.     11  6 12 0.020563+j*0.321594 0 2 0& ^, ]! _# B0 u9 @) H. x
  18.     12  9 13 0.020563+j*0.321594 0 2 0
    , f; Z; F1 k4 O# }: {9 _
  19.     13  10 14 0.020563+j*0.321594 0 2 0  , r% C0 r* Q. w9 o; Q
  20.     14  11 15 0.000237+j*0.000408 5.72+j*0.12 1 1 ! O$ W! i3 w0 T& L* N
  21.     15  12 16 0.000237+j*0.000408 5.76+j*0.09 1 1
    7 d9 y8 \+ L  O3 k4 S$ H5 `
  22.     16  13 17 0.000292+j*0.000502 5.86+j*0.11 1 1
    ! n6 N0 E: ^/ w: s
  23.     17  14 18 0.000274+j*0.000470 5.81+j*0.14 1 1]; ' C) Z6 ]0 J3 }2 C' z
  24. [n,m]=size(DB);  " }4 `2 |  ]3 u! i+ r5 V9 ^% H9 k( E
  25. B=[1 sin(2*pi/3)+j*cos(2*pi/3) sin(4*pi/3)+j*cos(4*pi/3)];
    * b3 c( M- C4 n  D) |
  26. C=[1.02 1 1.02 1 1 1 1.02 1.02 1 1 1 1 1 1 1 1 1 1];1 B: f$ h) s# r9 H
  27. U(:,1)=B(1,1)*C';- X4 L' K# v' o6 j
  28. U(:,2)=B(1,2)*C';, z6 j# \' g  f2 C" C4 Y
  29. U(:,3)=B(1,3)*C';
    - d% ~- _. s2 {) r* m6 n
  30. %-------------------求解潮流----------------- & D( B7 L$ a& J/ F
  31. for k=1:15 $ \3 @% Q9 ]+ X
  32. %   I(:,k)=((DB(:,5).')*(diag(1./U(:,k))))';
    " U1 n- ?3 ]  H  @3 z9 B! N# C! ^
  33. for i=n:-1:1 ! e, k5 G6 a* a, k& a9 c" Y
  34.   %如果尾节点带恒功率负荷,需计算节点上负荷注入的电流. T5 ?( ?$ \7 G& Y: ~& m
  35. if DB(i,7)==1+ b9 }* n) q( _$ R! Q% A7 \
  36. c=DB(i,5)/3;% H  V) b: B. P
  37. d=c/U(i+1,(3*k-2));
    - K6 ]4 s2 H( x- M3 l7 V( p
  38. IL(i,3*k-2)=conj(d);" u; i+ D' @* c: Y2 b5 ^0 \
  39. d=c/U(i+1,3*k-1);* o8 y4 g) Z& s5 n( }  @
  40. IL(i,3*k-1)=conj(d);7 {7 X, t3 i; `& o1 h
  41. d=c/U(i+1,3*k);
    ' h. f6 B& l4 Q# Q
  42. IL(i,3*k)=conj(d);
    8 K! y( b' H$ D" Z; @- d. o+ E
  43. else" D* r8 u- J# P8 D
  44. IL(i,3*k-2)=0;( ]9 P! t; R" G7 o
  45. IL(i,3*k-1)=0;3 b  F9 j" N: }1 ^% e. q
  46. IL(i,3*k)=0;
    ' S0 w+ n  E1 ?8 v
  47. end; n; `4 {8 p# {( o8 h/ H* h* T
  48. %找出所有与尾节点相连的支路,计算进支电流(末端电流),存IKj) e3 e9 e5 }! m( o1 V
  49. A=(find(DB(:,2)==(i+1)));
    2 a, d# }  H/ K  i# s; B# F. ~
  50. if isempty(A)~=12 ~5 m/ n5 n( E8 X
  51. IKj(i,3*k-2)=IL(i,3*k-2)-sum(IKj(A,3*k-2));
    ( W. {, s8 y* t, z0 J
  52. IKj(i,3*k-1)=IL(i,3*k-1)-sum(IKj(A,3*k-1));( p$ d7 d- S* v% O4 V2 v, z
  53. IKj(i,3*k)=IL(i,3*k)-sum(IKj(A,3*k));  P" X9 f( N" Q5 g* T
  54. else
    " Y8 k: [& |8 r, F. ^; d
  55. IKj(i,3*k-2)=IL(i,3*k-2);
    ( D& r  p, ~  [7 s# N' g$ B7 A
  56. IKj(i,3*k-1)=IL(i,3*k-1);
    $ P4 A% Z( h: m! O5 J- y
  57. IKj(i,3*k)=IL(i,3*k);/ N+ Y, l* b9 A
  58. end3 e- O/ ?, @  S
  59. %计算出支电流(始端电流),存IKi2 R4 Y% Q5 k* m$ K8 K4 u9 U' B
  60. a=DB(i,2);( S/ l% S4 X- N  ?4 }
  61. b=DB(i,3);
    # ?. @' D0 N5 F1 d0 g: }2 j8 K
  62. Yi=1/DB(i,4)*eye(3);+ Y' S0 j' }  [- G
  63. if DB(A,6)==1
    ! U4 }6 o; \5 }: W; M
  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)]';
    # a: E7 X4 v; f8 n- T
  65. IKi(i,3*k-2)=F(1,1);
    " s+ W+ P: W5 _
  66. IKi(i,3*k-1)=F(2,1);( Z1 R% g& {8 `* G6 \6 Z4 v8 a$ @( r
  67. IKi(i,3*k)=F(3,1);7 a' Z( u7 p& x" w' Z' R4 r) S
  68. else* S+ b1 I" Q7 R0 b
  69. YT=1/real(DB(i,4))+j*(1/imag(DB(i,4)));- m$ t( p0 L7 ?5 p! _$ ]# o% ^! O( g
  70. YI=YT*eye(3);
    " p7 V% C* M7 `% @
  71. YII=YT*eye(3);
    ' Q2 \, w8 `0 Y- K( ]0 v* \
  72. YIII=-YT*eye(3);
    - y2 n5 ^) K& l% b0 T( T; 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)]'));
    3 G) ]- j; |- J6 Y- J; P: X% z3 p
  74. U(a,3*k+1)=D(1,1);# y- Y) U  O( _' t
  75. U(a,3*k+2)=D(2,1);& c1 @# R3 r. Z) G
  76. U(a,3*k+3)=D(3,1);
    ; I5 {0 g# G0 [9 H# p
  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)]';# t, N, M, [) V" `' e
  78. IKi(i,3*k-2)=E(1,1);1 L% ]: o' q0 i
  79. IKi(i,3*k-1)=E(2,1);
    ) Y  W4 m! }# Z+ r- m
  80. IKi(i,3*k)=E(3,1);
    / u) L5 h5 l, _
  81. end
    / Z1 L' S$ J7 u* v" h4 B) {
  82. end
    . P; j4 |7 i/ Y% }0 @% l: _
  83. %前推电压 5 G, F6 _' W7 |! C: I' w
  84. for j=2:n& V9 _4 i5 e4 u+ e# g
  85. U(1,3*k-2)=1.02;
    ; o/ h5 ^2 u) c" y& k
  86. U(1,3*k-1)=1.02*(sin(2*pi/3)+j*cos(2*pi/3));: ~6 H& k* `" J4 t) P6 d) R- x
  87. U(1,3*k)=1.02*(sin(4*pi/3)+j*cos(4*pi/3));/ H, }6 c+ |' Z! b; B. p
  88. a=DB(j-1,2);
    1 W4 k4 j5 g, Z- X$ K. k" K
  89. if DB(j-1,6)==1
    ) z/ }2 d! b" |9 b5 Z1 h) \( o5 O+ q
  90. Yi=1/DB(j-1,4)*eye(3);  c( D( b! n7 b* z5 L* l8 R, ~2 d
  91. G1=[IKi(a,3*k-2) IKi(a,3*k-1) IKi(a,3*k)]';0 x; I) b& m/ r- e& e9 p4 ~
  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)]');
    . R" X8 T% u$ |3 s, V7 q/ |
  93. U(j,3*k+1)=G(1,1); 2 X* N+ s! G9 G- [% r3 S
  94. U(j,3*k+2)=G(2,1);* Z3 i+ `) A( `' U! U
  95. U(j,3*k+3)=G(3,1);
    0 P. u& h  V% `' D3 F
  96. else2 |, L# ], ~" ]. t
  97. YT=1/real(DB(i,4))+j*(1/imag(DB(i,4)));, N# j* a$ \8 }/ P9 [# a( F+ N! S
  98. YI=YT*eye(3);( n# ?+ T$ h/ g1 {
  99. YII=YT*eye(3);" F+ {8 Q  W  W) h6 e5 g. p
  100. YIII=-YT*eye(3);
    6 Z9 n. k; q- S! X# T. {/ Y+ t. x2 L
  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)]');
    " h% U. |# o( w, ^9 ~8 b
  102. U(j,3*k+1)=H(1,1);# T% }2 c4 Y* a! |
  103. U(j,3*k+2)=H(2,1);
    5 v( C. I: A! ?# N0 `. E4 t
  104. U(j,3*k+3)=H(3,1);# `4 b# i/ [7 Q& i' x; U
  105. end 3 W- b# F: |, ?1 N4 Y1 t, G% E
  106. end
    8 o) J) O& p/ p6 U9 R( s1 j6 z5 p7 V
  107. dU1=U(:,3*k+3)-U(:,3*k); " R0 l* g; Z- }- }+ A
  108. dU2=U(:,3*k+2)-U(:,3*k-1); + q5 y  g* p, h; `% F1 |, e/ B
  109. dU3=U(:,3*k+1)-U(:,3*k-2); + z/ y# G$ \" _) K$ ~" h
  110. if (max(abs(dU1))<0.001&&max(abs(dU2))<0.001&&max(abs(dU2))<0.001) 7 s! J$ o7 k/ B) N* G
  111. break;
    ) _9 g+ }" m0 f
  112. else             $ ^5 B' X$ S3 [4 U3 j% J
  113. k=k+1; 8 i& G6 l' {0 `. N3 J- q
  114. end
    / ^" K% l9 z4 z' e6 {9 K
  115. end9 F% A* V+ O( ?' b
  116. U: [: t" ~( o. Q
  117. IL
    ! I' g; j6 U! n2 i
  118. IKj
    + i) ^- ]6 f9 J8 R
  119. IKi& R4 L( m+ e% }$ |" t2 K
  120. k
    : _9 p& r' \8 m. H; T% h3 J! S
复制代码
QQ截图20130517110314.jpg
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    愤怒
    2021-6-12 00:00
  • 签到天数: 1657 天

    连续签到: 28 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    尚未签到

     楼主| 发表于 2013-5-18 08:05:22 | 显示全部楼层
    回复 2# redplum 1 K- b, p4 f" L' H4 Z. W, l

    - @& R1 P+ }# k' N& {9 ?4 u" I) C
        不应该是这样的,这是一个迭代计算,结果不收敛,所以还是哪个环节有问题,但是我还没有找到。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    愤怒
    2021-6-12 00:00
  • 签到天数: 1657 天

    连续签到: 28 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    尚未签到

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

    该用户从未签到

    尚未签到

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2024-3-29 19:13

    Powered by Discuz! X3.5 Licensed

    © 2001-2024 Discuz! Team.

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