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

 找回密码
 立即加入
搜索
查看: 3776|回复: 8

【编程实例PSS/E】自己用python写的一个三相短路故障的例子

[复制链接]

该用户从未签到

尚未签到

发表于 2008-8-6 20:46:29 | 显示全部楼层 |阅读模式

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

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

×
import globedef( s# y( O" p7 l0 y
import fault
4 m  Q4 ^* H* ~4 e7 e3 Qpsspy.case('c:\sav.sav')3 f2 x0 q/ S) _# u. L8 o
psspy.close_report()  # close REPORT windows
9 P7 x5 Z! e2 h" C# A1 {; Joptions=(0,0,0,0,0,0,0)1 C" i6 K# A7 k
psspy.progress_output(6, "", options)
! I4 h( y! m! `1 E* M7 L8 cpsspy.report_output(6, "", options)
, L/ E5 ~0 n* |" l. B1 pfault.three_phase(33600)
3 O1 f5 v# r+ ?. D5 ?, X
; W! z3 p% R; g# w[ 本帖最后由 dsyljh 于 2008-8-8 08:40 编辑 ]-%-96529-%-

评分

参与人数 2威望 +6 金币 +2 +450 收起 理由
fionayy + 1 原创
dsyljh + 5 + 2 + 450 原创内容

查看全部评分

"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

该用户从未签到

尚未签到

 楼主| 发表于 2008-8-6 20:52:35 | 显示全部楼层
这是FAULT.PY的内容& `9 U/ E, W# P3 s
import globedef0 \" ^/ M; ]1 ?- u2 Q
import psspy3 k+ d! T/ \2 P8 E- j

0 J( w- t" M& y$ }/ O#a=(1,1,1)
9 K  g% ~* Q2 D6 ?$ g+ k4 g1 U# S#psspy.seqd(a)- B' V; }1 f2 q( J( ]' M

# M( {7 x8 D2 h1 k5 v6 G
) T# X0 ^6 f( G" j/ odef one_phase_ground(bus,r,x):
9 w7 F' g. L' l4 ]* P        options=(1,1,1,0,0,0,0)
( N4 z9 l! A+ \9 A' P) b        rval=(r,x,0.0,0.0,0.0)
4 c8 c% ^( ]" D. [' M1 K        cktarg='') {' D5 T1 d3 M8 Q4 r9 |6 P
        psspy.scmu(1,options,rval,cktarg)
5 J. [, y" |# Z5 k        options=(1,bus,1,0,0,0,0)+ O! @0 p! O% b3 I1 T  W! I# P
        psspy.scmu(2,options,rval,cktarg)
9 g+ O  `8 Y/ a0 N+ c, F( f        psspy.scmu(3,options,rval,cktarg)
! B6 G  i9 b5 s7 U4 _  I9 k! n0 G       
  y' A' a. M( E4 b/ d' O3 c! v( s( v        return 0! T; \; T8 o4 H+ B
       
% ]. j- u3 T' ~def two_phase(i):3 Y2 i( r# q1 E% U. M! ]

- q  ?/ j; o; T1 F0 D" I        return 0
% J: E2 o1 `& B$ ]& b  q) e0 s/ w) D/ |( h. ~4 c) c
def three_phase(bus):. ?: A3 ^5 n( s5 f, S3 D
        options=(1,1,1,0,0,0,0)& D1 P% \+ E5 m2 `1 f9 {9 O2 R
        rval=(0.0,0.0,0.0,0.0,0.0)' ^  b& q& a) m$ Y+ Y0 \
        cktarg=''
4 }$ S! A. T0 p4 Z        psspy.scmu(1,options,rval,cktarg)5 t+ t& y% w* q8 M9 F
        options=(7,bus,1,0,0,0,0)
" b* O. R$ x! n" t1 J3 n" O        psspy.scmu(2,options,rval,cktarg)
2 e. n' P0 b9 h: @2 ^        psspy.scmu(3,options,rval,cktarg)  ~( K) c# r& x0 K
        " n( G2 K+ P, W% D) y* B
        return 02 v! P% `$ N( k  o9 r" m/ q

( C5 X7 x7 c2 Z! I+ n- T2 gdef line_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):
, V- F& O3 @; Y7 c7 d/ s9 x        options=(1,1,1,0,0,0,0)
6 _$ g" {* d" d        rval=(0.0,0.0,0.0,0.0,location)& _7 \) `/ n4 w% a$ w+ E& [
        cktarg=ckt
3 K! J6 Z  O: h. @* k) d1 T" o2 F6 R        psspy.scmu(1,options,rval,cktarg)
" X/ y. z7 x( C        options=(9,bus_i,bus_j,1,1,0,0)9 H0 [, D! I, W6 L1 x- @0 Z  F
        psspy.scmu(2,options,rval,cktarg)
, {- @, `% g! k        psspy.scmu(3,options,rval,cktarg)
' |  l( Y, l6 T0 j       
& Q: V+ z9 C- k& O$ B7 z( R% H. o        return 0
4 E' h; Z6 T. ?1 _7 W4 Z! t5 {, L5 Z" H# O+ U
def line_LL_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):$ X, O! r4 j9 P2 ?7 F
        options=(1,1,1,0,0,0,0)) v) D. T2 M4 J' k
        rval=(0.0,0.0,0.0,0.0,location)& X9 f0 J  }* f
        cktarg=ckt# D, o' z' [/ a, w2 J" r( C
        psspy.scmu(1,options,rval,cktarg)' ~& A' a. H+ b( o  E: _) d
        options=(9,bus_i,bus_j,2,1,0,0)
* V( M& I8 [9 A) r7 x        psspy.scmu(2,options,rval,cktarg)
5 f: D4 |0 L2 c$ i. z! d        psspy.scmu(3,options,rval,cktarg)
+ h8 u. j2 N$ m3 ?        $ {' V! |+ L: G+ r
        return 0
! o; N6 h  z) {1 i& l3 E! q% P  {! N. ?8 r
def get_breaker_cline_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):
3 L! f1 Q) V5 p# l. [        options=(1,1,1,0,0,0,0)
* q6 K; K) q( A- M        rval=(0.0,0.0,0.0,0.0,location)
; g; J, c4 ^" M* Q8 m# O2 \        cktarg=ckt0 T% I* {' h6 x+ ]
        psspy.scmu(1,options,rval,cktarg)
: Z0 C; c1 n7 Y- ^        options=(9,bus_i,bus_j,1,1,0,0)$ P8 V7 J  K4 v5 i2 }
        psspy.scmu(2,options,rval,cktarg)
( }' Y* J2 [+ U  W2 v9 W        psspy.scmu(3,options,rval,cktarg)' ~' k) J8 l" ~: R, ?4 L) X
        7 W, @9 a: Y  W9 t( w4 c
        return 0
"真诚赞赏,手留余香"
还没有人打赏,支持一下
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2008-8-28 17:24:10 | 显示全部楼层
    咋一个三相短路写这么复杂呢?  q  |5 A' C- o# T6 F0 R; a+ O

    4 P* ]. I4 C, H( M9 N  A3 b5 p4 B高手详细对比一下python和IPLAN吧
    / u0 Q# t9 ~: d各有哪些优势
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-15 20:29
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]偶尔看看II

    累计签到:11 天
    连续签到:3 天
    发表于 2008-9-30 15:04:48 | 显示全部楼层
    恩% M) C* R0 H+ e9 P! z2 Z
    高手说说两者各自的优缺点吧
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:46:11 | 显示全部楼层
    楼主上述故障实现没有直接用官方提供的disturbance APIs
    & ~! n* f) o; G' w% _! m. R5 X不知为什么
      ~3 k+ J2 b' T8 L( o1 G& e看起来官方的dist_branch_fault、dist_bus_fault等更简洁
    : U. w- |+ Y9 p1 R  B1 o! w但没试过
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:50:51 | 显示全部楼层
    原先用IPLAN写branch trip:
    " r5 q! x9 S$ c- f5 e, U6 ]  B' X4 U% ^% L/ Z
                    PUSH        'ALTR'1 p* B. _- R: q9 M* d
                    PUSH        '0'/ _1 D: k8 \5 h% ^. L) W
                    PUSH        '1'        !CHANGE NETWORKDATA
    - w# u6 L0 E( g" Q' A                PUSH        '0'
    % e! [& h! ?0 _( L  Y                PUSH        '3'        !BRANCH DATA) ?6 {: E: D/ n# ]+ l+ N+ B
                    PUSH        '151,201,1'
    % [. [' G- x8 O& w                PUSH        '1'
    " Y. a2 X$ a" u2 N# L2 }                PUSH        '0,'        !ISOLATE THIS BRANCH
    4 i* m4 O) G1 Y                PUSH        '0'          !NO MORE CHANGES TO THIS BRANCH
    5 \% ^2 V9 T. D( E+ t1 Q                PUSH        ' '                !NO CHANGE IN METERED END
    0 L! y. L' R2 c1 N                PUSH        ' '          !NO MORE BRANCHES TO BE CHANGED  z  {# r. D* A+ u7 s; Y, l; O
                    PUSH  '0'   !EXIT ALTR ACTIVITY
    1 ~8 L2 h8 v- }+ l- k( |: t* s
    $ X7 z  b6 B) ~$ w" c: u% g; C现在python:
    1 F4 I3 w, m7 u: P/ V/ ~dist_branch_trip(151,201,'1')
    8 C% G! Q7 E! O* O8 q& x: E3 W- Q; |一句就可以了
    " C$ P5 C$ N2 ]5 L6 f& A; p
    8 X$ `& g( ~4 _. W确实比较简洁
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2009-2-27 21:00:51 | 显示全部楼层
    亨利版主是IPLAN的行家。觉得python很多东西藏的太深了。不像直接调用activities这样明显。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 21:06:03 | 显示全部楼层
    用官方提供的应该可靠性高点
    0 U, r# k3 V0 H5 A$ E就是不容易出错4 p; ~( H/ W# E. d4 K3 J0 e; P

    - a3 z$ H: J5 b9 s要想玩PSSE,还是基于最基本命令单元,呵呵
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2015-4-22 17:30:45 | 显示全部楼层
    直接看不懂呀
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-10-14 10:02

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

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