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

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

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

[复制链接]

该用户从未签到

尚未签到

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

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

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

×
import globedef  k) [- m. k7 p7 i$ ?
import fault
& X/ T8 |& y% J+ @: a. tpsspy.case('c:\sav.sav')
8 }' z8 w: @" F, W1 gpsspy.close_report()  # close REPORT windows
) j6 e) q& W1 Toptions=(0,0,0,0,0,0,0)% i8 e9 ]- g: S
psspy.progress_output(6, "", options)$ O4 p; V! _5 |7 Z+ r
psspy.report_output(6, "", options)
* J3 c( l4 ?$ O' p9 j7 Tfault.three_phase(33600)' d  e8 U8 @+ o# e2 Y* X

1 ]* N; C0 ?. T1 z5 J[ 本帖最后由 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的内容, U5 \& p# n; x' x! f1 U
import globedef
4 _" A5 a4 w! o) ^7 d# @) Kimport psspy' W" g7 j$ e( \

2 d, f! B4 c7 a. G+ p( h#a=(1,1,1)/ k7 |& v  U7 H* G
#psspy.seqd(a)
# |: E' U" [) |. w1 V
0 P: b# I# P+ G4 ^# ^4 D! h, B
3 k1 S, o, I/ ~' Vdef one_phase_ground(bus,r,x):7 Z7 F* t6 V; t! \8 t
        options=(1,1,1,0,0,0,0)
# w9 c# H7 ^: n% T        rval=(r,x,0.0,0.0,0.0)5 V1 U5 _8 T( ^0 P8 w
        cktarg=''
( V3 P! }& u% G) q4 N' S5 V* _        psspy.scmu(1,options,rval,cktarg)$ Q( F* v( @( ]3 ]( F+ J( }
        options=(1,bus,1,0,0,0,0)
% H" Z+ M! e* v  C4 t4 O- x6 k        psspy.scmu(2,options,rval,cktarg)
; ]* X" i7 U( z  o1 D- ?        psspy.scmu(3,options,rval,cktarg)
. A/ q( F8 }( B( p       
9 C- B  u+ Y! ?' b7 W+ K' f' y        return 0+ {$ q  B$ x. b4 H( C
        , U7 I" ]( }: s1 J, l) P7 a8 a4 i
def two_phase(i):
* H2 p5 ]" |5 ?" O+ s( _3 t
; x$ V5 B) r* }1 }/ r' e/ d        return 0
8 [6 V6 Y, ~% ~$ t
* c9 b$ B# b& d9 d# G3 b& S: V8 zdef three_phase(bus):4 T7 J, q) p  Y7 p6 H, B  Z
        options=(1,1,1,0,0,0,0)  j3 \& ]7 T, g6 [4 T
        rval=(0.0,0.0,0.0,0.0,0.0)# A* H/ r/ C& v, v, a& N' I8 W
        cktarg=''& w, I  P" w; u( ~5 p$ u+ o1 }
        psspy.scmu(1,options,rval,cktarg)4 Z# R. G' e6 n- V, h
        options=(7,bus,1,0,0,0,0). P/ C4 ]- n8 U+ u" ]4 h
        psspy.scmu(2,options,rval,cktarg)
8 F4 M. R# q) O        psspy.scmu(3,options,rval,cktarg)
9 S$ c# ?0 S( }) m% Z! G       
; l1 B# c" |0 ~2 w% O1 g        return 0! B* }2 _" G$ ~! K% q* A
) a3 c* M: G% s) _
def line_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):$ j% H( _8 j3 H3 e
        options=(1,1,1,0,0,0,0)
& R. q; k2 B9 b" i( K        rval=(0.0,0.0,0.0,0.0,location)4 E- t6 j/ X$ J/ H+ Y/ z
        cktarg=ckt3 U8 _, J) P- X1 N3 \# ~
        psspy.scmu(1,options,rval,cktarg)% ~6 B& ?( u& J8 B0 H" r, X8 ?1 i
        options=(9,bus_i,bus_j,1,1,0,0)% D  F. \+ ?% V' ]5 s
        psspy.scmu(2,options,rval,cktarg); O; |& f( ~4 K9 x; w3 e0 m
        psspy.scmu(3,options,rval,cktarg)
/ q3 |% y3 ~4 m2 ~        * i& y3 I( s  Z6 ~* B
        return 0* W" {" G) c" g/ I; B" F* _
% L2 }7 l  e/ w6 L
def line_LL_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):- p$ B* f6 P9 Z5 D! ]# A$ P
        options=(1,1,1,0,0,0,0)
' }" b2 o! h, f) k; L        rval=(0.0,0.0,0.0,0.0,location), a' r  A$ y' E* [, x
        cktarg=ckt
$ y8 e: g% `/ K4 c* U$ v2 V' U. D. K        psspy.scmu(1,options,rval,cktarg)
1 S8 L' F- |/ q" V7 }! {5 y. O        options=(9,bus_i,bus_j,2,1,0,0)
+ \4 ]" |4 p; [( l7 Z; |: a        psspy.scmu(2,options,rval,cktarg)
- w5 U  T* Q7 z        psspy.scmu(3,options,rval,cktarg)+ u* U8 P1 U# w( d: }- K' x+ m7 ]
        9 J% \: E9 F/ o- W! Y! v2 P& P4 `
        return 0; ?# ^! d# K$ M& `9 `. c) j
0 g, V  `' w: X
def get_breaker_cline_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):5 z+ C5 Z7 S% K
        options=(1,1,1,0,0,0,0)
  D# }: p5 [1 x. s, F+ `* s        rval=(0.0,0.0,0.0,0.0,location)
0 B4 Z/ Q7 H1 i2 X1 ~- N3 d; V9 X        cktarg=ckt
' u4 |/ H" c: M9 n( L        psspy.scmu(1,options,rval,cktarg)
: }$ v6 [1 N4 E6 Q        options=(9,bus_i,bus_j,1,1,0,0)
( H6 ~* G# K# d. k. w        psspy.scmu(2,options,rval,cktarg)
6 S3 d. R2 {6 H3 l4 P2 }) H9 [4 x        psspy.scmu(3,options,rval,cktarg)/ x9 ]# X' s6 N' E! w- R( I9 j, m8 \7 b
        4 z4 W9 b) a8 k
        return 0
"真诚赞赏,手留余香"
还没有人打赏,支持一下
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2008-8-28 17:24:10 | 显示全部楼层
    咋一个三相短路写这么复杂呢?
    7 {- N1 X6 B! V* S; ?2 x. u5 h* h# c
    高手详细对比一下python和IPLAN吧- I, v8 c, K9 t, ~
    各有哪些优势
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-15 20:29
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]偶尔看看II

    累计签到:11 天
    连续签到:3 天
    发表于 2008-9-30 15:04:48 | 显示全部楼层

    5 o. b/ w: ?' k2 v  d4 m高手说说两者各自的优缺点吧
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:46:11 | 显示全部楼层
    楼主上述故障实现没有直接用官方提供的disturbance APIs$ s0 V3 V! I& r$ w3 ^0 B) D1 D
    不知为什么. m! ]& S$ N  x! H" O  @7 i& x
    看起来官方的dist_branch_fault、dist_bus_fault等更简洁
    7 _" w- q  b2 o" t5 N9 \, O6 x3 P但没试过
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:50:51 | 显示全部楼层
    原先用IPLAN写branch trip:! }  V* G! D! _
    ; G% c: W1 v. D  l
                    PUSH        'ALTR'# Y2 x& _+ v7 I, J5 M, F
                    PUSH        '0', Z. S# g2 e4 C7 }) Y+ b
                    PUSH        '1'        !CHANGE NETWORKDATA! D# D  Q+ ?9 B$ m/ G
                    PUSH        '0'; |+ o  m: j! x6 q: O$ ]5 D
                    PUSH        '3'        !BRANCH DATA
    & u4 O: g8 _) }( z                PUSH        '151,201,1'7 y5 x2 ^: p% x4 M- X5 _
                    PUSH        '1'. o* S+ [3 Z: L' z4 ]$ o8 B
                    PUSH        '0,'        !ISOLATE THIS BRANCH. i6 j" W* E6 q+ u2 M% n0 e
                    PUSH        '0'          !NO MORE CHANGES TO THIS BRANCH2 u4 v0 m, P7 D0 g3 a. D1 F# e5 {
                    PUSH        ' '                !NO CHANGE IN METERED END5 J4 i5 a% X% {& _* O
                    PUSH        ' '          !NO MORE BRANCHES TO BE CHANGED
    / p( ^4 B" X' _# }                PUSH  '0'   !EXIT ALTR ACTIVITY9 ^/ [" }% Q9 w' ?" P

    : G4 G  G& t3 ^6 D9 ^) Q现在python:
    , N/ S2 H, z7 L$ A4 ndist_branch_trip(151,201,'1')
    & `1 x$ v4 S2 P1 b" A$ p一句就可以了5 H" W5 G1 A( \' |5 Y

    * L8 ], c! n* {4 C. y5 `确实比较简洁
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 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 | 显示全部楼层
    用官方提供的应该可靠性高点
    $ k# S/ K( e" f- u0 I1 _+ `' g' g  K- c就是不容易出错
    / t9 j+ R9 t  z) N7 M. Z  F4 Z' H- s1 t5 n
    要想玩PSSE,还是基于最基本命令单元,呵呵
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2025-5-12 16:24

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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