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

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

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

  [复制链接]

该用户从未签到

尚未签到

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

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

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

×
各位~~我根据下图的一个系统用Matlab编写了一段程序,是电流型前推回代法的三相配电系统潮流计算,但是现在结果不是我想要的,不收敛。请各位帮我看一下,提提建议。图片见附件了。还有个问题:已知的线路都是三相对称线路的阻抗值,那么线路的阻抗矩阵中的互阻抗应该如何计算,是什么样的形式,应用怎样的公式?这里我不是很清楚。
  1. %程序名:qiantuihuitui_I_3.m
    " i5 M8 X0 z7 Y5 _) L: A6 D9 i! V
  2. %功能:支路电流前推回推法求解潮流
    6 s3 N( l, b' F, Y4 l
  3. clc ' r" r) a' ~- a! y
  4. clear all;
      g3 ?4 ?- B1 Q; h
  5. %--------------输入网络参数--------------
    % l$ z% y. N+ j# s, M1 q
  6. %1-支路编号,2-首节点,3-尾节点,4-自阻抗,5-尾节点复功率,6-支路性质(1-馈线段支路,2-变压器支路),7-尾节点是否带负荷# w# L$ J, k2 f
  7. DB=[1 1 2 0.000167+j*0.000208 0.42+j*0.31 1 1
    & x% A$ y# w$ H0 Q+ `5 y
  8.     2 2 3 0.000151+j*0.000188 6.15 1 00 N2 z6 m( J4 @. c3 B8 |& z
  9.     3 2 4 0.000066+j*0.000082 0.38+j*0.29 1 1
    # o6 b  p' G" m' `: ]
  10.     4 2 5 0.000249+j*0.000310 0 1 0
    0 y0 z2 [+ v9 G) D$ O" T6 }
  11.     5 2 6 0.000172+j*0.000215 0 1 0
    / V9 H# L# K/ z; p$ T6 ~
  12.     6 4 7 0.000156+j*0.000195 6.06 1 0" y* L* |+ S3 W, T& S0 U, U
  13.     7 4 8 0.000162+j*0.000202 6.04 1 0 # ^8 G8 G. ]5 F! @9 i
  14.     8 4 9 0.000345+j*0.000430 0 1 0 * R, n+ l. v% _9 {; S
  15.     9 4 10 0.000287+j*0.000358 0 1 05 J: ~% u+ p/ v
  16.     10  5 11 0.020563+j*0.321594 0 2 0 + [" C! R8 Y6 ]- c
  17.     11  6 12 0.020563+j*0.321594 0 2 0: O  K; M9 i$ x8 P0 E4 C
  18.     12  9 13 0.020563+j*0.321594 0 2 0 . m9 o$ [* f% K
  19.     13  10 14 0.020563+j*0.321594 0 2 0  
      W( P0 ^* _% q: W3 z8 a
  20.     14  11 15 0.000237+j*0.000408 5.72+j*0.12 1 1 - x4 N9 m+ K, z5 a( i1 n) {/ o
  21.     15  12 16 0.000237+j*0.000408 5.76+j*0.09 1 1
    # q& J/ v& P9 d+ m2 d
  22.     16  13 17 0.000292+j*0.000502 5.86+j*0.11 1 1- b! d6 V: {5 X+ c# Z! G
  23.     17  14 18 0.000274+j*0.000470 5.81+j*0.14 1 1];
    6 W1 g; f# q; C
  24. [n,m]=size(DB);  
    8 }2 n' e8 g3 K5 n5 j: n/ Q& t: [
  25. B=[1 sin(2*pi/3)+j*cos(2*pi/3) sin(4*pi/3)+j*cos(4*pi/3)];$ h( w3 q( ]) p, J5 P/ t6 P7 U
  26. C=[1.02 1 1.02 1 1 1 1.02 1.02 1 1 1 1 1 1 1 1 1 1];
    " `; u4 c) u+ Y
  27. U(:,1)=B(1,1)*C';
    # N5 p; b4 x  v" S
  28. U(:,2)=B(1,2)*C';
    " j5 b  R7 Y1 f; y* [" X
  29. U(:,3)=B(1,3)*C';
    8 @- ], n" }5 }. ]
  30. %-------------------求解潮流----------------- 0 _+ |6 ]4 w0 j( a2 y8 Z% O
  31. for k=1:15 ; w  Z  ^, G: c- y: h
  32. %   I(:,k)=((DB(:,5).')*(diag(1./U(:,k))))'; - w/ F% c- r* P! ~% V4 X6 v/ |
  33. for i=n:-1:1 ! ]7 G9 `0 g. v6 n+ U
  34.   %如果尾节点带恒功率负荷,需计算节点上负荷注入的电流
    1 n. N' F4 H# Y  S0 d1 r7 A( O
  35. if DB(i,7)==19 A1 p( Y5 z) _6 X/ V1 r( X. |
  36. c=DB(i,5)/3;/ h* U0 W0 @4 b- m. @3 p: f: {4 D
  37. d=c/U(i+1,(3*k-2));
      Z' ~+ `; f( r& c
  38. IL(i,3*k-2)=conj(d);5 e1 {. R+ c4 a8 W
  39. d=c/U(i+1,3*k-1);
    - R$ a1 m# U$ b$ d3 ?( M% T7 L* O( N
  40. IL(i,3*k-1)=conj(d);
      S9 u" l1 Y" ~: d5 Y# K, u9 m6 P' v
  41. d=c/U(i+1,3*k);) a& v! y; y$ u7 }6 U. `7 ~* _7 l2 B* A
  42. IL(i,3*k)=conj(d);* w- d: {9 H2 K5 n$ k
  43. else+ }9 t* n! }* A' B9 ?3 \  I
  44. IL(i,3*k-2)=0;, _) v+ C* r1 E
  45. IL(i,3*k-1)=0;
    4 `* T/ u4 N& {# ?7 C: i& q2 @0 |
  46. IL(i,3*k)=0;
    2 M) d7 ^  b" w1 S1 w2 m3 e
  47. end
    . w4 l( J8 V+ ^3 F1 b, ~6 N
  48. %找出所有与尾节点相连的支路,计算进支电流(末端电流),存IKj. a( D* [8 k# ]
  49. A=(find(DB(:,2)==(i+1)));. v4 c# b! Z- J6 ]+ m1 T) v* N
  50. if isempty(A)~=17 B- ]. u% K/ R" b2 r* s( s' X& G' W
  51. IKj(i,3*k-2)=IL(i,3*k-2)-sum(IKj(A,3*k-2));6 J2 P2 w; p  b0 S: J! z
  52. IKj(i,3*k-1)=IL(i,3*k-1)-sum(IKj(A,3*k-1));' k  |2 B3 D9 A3 W& ?& X
  53. IKj(i,3*k)=IL(i,3*k)-sum(IKj(A,3*k));
    , m& U& D' `+ T. U. ]
  54. else
    . U5 T: @: c% h; `
  55. IKj(i,3*k-2)=IL(i,3*k-2);  r" d. g5 J; O1 G: {# a0 Q. }
  56. IKj(i,3*k-1)=IL(i,3*k-1);" P' ]) H0 f7 U8 b9 \
  57. IKj(i,3*k)=IL(i,3*k);, I  i" B& }0 ?  v7 @( a
  58. end4 E7 I7 ^, s# J; g& F4 u* S
  59. %计算出支电流(始端电流),存IKi; i0 }, h1 J6 {  _  I: U5 w
  60. a=DB(i,2);0 R% l3 K9 y; C# H1 ?8 |% i
  61. b=DB(i,3);
    / |7 k9 N' C- ?  W5 W
  62. Yi=1/DB(i,4)*eye(3);8 C% {+ I0 |4 Y! i! T- J0 g
  63. if DB(A,6)==1( l. w" x% D( ?: n  G: g
  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)]';+ V; x: W  R. `9 ~, J
  65. IKi(i,3*k-2)=F(1,1);
    / b- T. W% U- c& f; f+ U+ T* ?' R
  66. IKi(i,3*k-1)=F(2,1);
    ; W( o* G4 B8 n* l& M2 e
  67. IKi(i,3*k)=F(3,1);
    ( f& o2 {" B5 s9 N4 t, I
  68. else
    3 x2 u0 o$ g8 S; i
  69. YT=1/real(DB(i,4))+j*(1/imag(DB(i,4)));6 z7 a) Z# s4 T& ]. ?9 J8 ]
  70. YI=YT*eye(3);* W+ p4 H1 m& r# \5 \
  71. YII=YT*eye(3);
    $ \- C1 {' p* u" D( D+ }
  72. YIII=-YT*eye(3);# J) B1 C& t8 j7 i
  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)]'));- l5 c  P9 ?7 P* P- V
  74. U(a,3*k+1)=D(1,1);3 l5 D/ Z" m( s. ]7 a
  75. U(a,3*k+2)=D(2,1);
    , [3 J! f" M& q
  76. U(a,3*k+3)=D(3,1);
    8 {8 f7 {! }5 V  |0 j9 Y4 Y
  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)]';2 K# {6 L, a# n$ b2 _! F* W" g' a) P
  78. IKi(i,3*k-2)=E(1,1);% J: n4 P4 o( O$ S7 e$ [& g# H* T
  79. IKi(i,3*k-1)=E(2,1);
    # ]6 B' e3 O. u. l' C  E
  80. IKi(i,3*k)=E(3,1);
    ! {- V2 n: k' G' Q1 \; p
  81. end
    2 n4 {  l, [. @( U0 Y1 B% L
  82. end 7 {. G5 j7 b( I9 L7 W2 V: N! v
  83. %前推电压 ' \3 [7 t9 T* B
  84. for j=2:n
    . r3 J: d! v7 u/ d* h! {
  85. U(1,3*k-2)=1.02;& x) M/ U3 u5 S
  86. U(1,3*k-1)=1.02*(sin(2*pi/3)+j*cos(2*pi/3));! ^$ }* d: q( C0 y2 `
  87. U(1,3*k)=1.02*(sin(4*pi/3)+j*cos(4*pi/3));
    % q- y; M( }9 C2 W" I) u% [
  88. a=DB(j-1,2);
    3 Z$ z7 C: F* Q3 ~
  89. if DB(j-1,6)==1# a; x1 ]/ Y# u/ W0 \
  90. Yi=1/DB(j-1,4)*eye(3);; I- L8 v0 W, z+ l! ^/ X/ n
  91. G1=[IKi(a,3*k-2) IKi(a,3*k-1) IKi(a,3*k)]';
    ; i5 x- p* l, `: W+ E8 f
  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)]');
    5 w4 l$ A$ I7 W0 c/ \2 w
  93. U(j,3*k+1)=G(1,1);
    ; A3 d7 `$ ^/ }: Y$ {% Y
  94. U(j,3*k+2)=G(2,1);
    7 l. A7 D! j) T. ]+ E
  95. U(j,3*k+3)=G(3,1);
    + g9 C$ x; i. a) a" s3 L
  96. else
    " m; [! X/ z: N- t+ h9 b' [
  97. YT=1/real(DB(i,4))+j*(1/imag(DB(i,4)));' b, y' b3 A! G* y# S% z' D
  98. YI=YT*eye(3);# U. ~" x" p" G' ]7 A
  99. YII=YT*eye(3);
    & j& C% q5 I6 y  u3 u8 \7 b' W
  100. YIII=-YT*eye(3);# j2 K0 Q6 |! f9 R
  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)]');3 _2 M! z8 N. _8 e1 b5 c
  102. U(j,3*k+1)=H(1,1);6 z# |7 _; `8 [7 a* y
  103. U(j,3*k+2)=H(2,1);* }: A& a" I, b/ q" {* J
  104. U(j,3*k+3)=H(3,1);
    4 h/ T/ ]( }; b7 a( M
  105. end
    2 g3 s9 @7 U" h( M, e
  106. end) H; a5 t- ~* w4 S; U; A. c
  107. dU1=U(:,3*k+3)-U(:,3*k);
    4 ]. b( R; u3 f1 l
  108. dU2=U(:,3*k+2)-U(:,3*k-1); , k' g; M; G: A5 D8 ^
  109. dU3=U(:,3*k+1)-U(:,3*k-2); 0 i/ a% I! N0 [
  110. if (max(abs(dU1))<0.001&&max(abs(dU2))<0.001&&max(abs(dU2))<0.001)
      T( A6 p/ [7 M9 y* L4 _
  111. break; ' }2 b* t- z3 A, t' U
  112. else            
    % M" {9 g6 I  z+ i/ ^: |/ ~
  113. k=k+1;
      b5 W* ^: A7 z9 C- R! Q
  114. end
    + z1 @+ [7 W  g" h3 j
  115. end
    : ?5 n9 b5 h( c" V8 a- x
  116. U6 W' ~) d: L3 c
  117. IL
    ( g# v3 ~$ A4 c/ A5 k% `' \' K% G
  118. IKj4 b, h. r, V! S/ g8 c- R
  119. IKi
    ) ?# Z% C" B5 k: c9 F
  120. k
    ( |( z: ~1 f2 D- I
复制代码
QQ截图20130517110314.jpg
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    愤怒
    2021-6-12 00:00
  • 签到天数: 1657 天

    连续签到: 28 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    尚未签到

     楼主| 发表于 2013-5-18 08:05:22 | 显示全部楼层
    回复 2# redplum
    : ?- d9 e" F7 s
    1 w8 d3 {7 R& _' ?2 k) `% C: o6 g, w4 k; U2 k, \2 c, {/ }
        不应该是这样的,这是一个迭代计算,结果不收敛,所以还是哪个环节有问题,但是我还没有找到。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    愤怒
    2021-6-12 00:00
  • 签到天数: 1657 天

    连续签到: 28 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    尚未签到

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

    该用户从未签到

    尚未签到

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-9-2 21:34

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

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