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

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

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

[复制链接]

该用户从未签到

尚未签到

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

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

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

×
import globedef
4 G4 A) K% |7 T6 E2 [import fault
& s/ G" Y+ V' j9 c2 N' Ypsspy.case('c:\sav.sav'); ~& A9 e+ G' X8 ~
psspy.close_report()  # close REPORT windows
, l$ b% T7 B0 K) n6 E( ^options=(0,0,0,0,0,0,0)# d- Z- V& s6 |
psspy.progress_output(6, "", options)
% H: C: \% s8 Gpsspy.report_output(6, "", options)6 R) C( E( b; N; }1 B9 s
fault.three_phase(33600)
. q+ L  C3 |  N9 |
/ q+ ~0 ~7 z8 w/ B+ D* @, e: \; `[ 本帖最后由 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的内容6 ^, Z, g$ o2 b5 o" ?
import globedef
0 i$ H& z& I! ]- Aimport psspy
: v9 t5 V% k( O6 r. d. f
. ^) u5 @. I$ ~#a=(1,1,1)
) D* r0 q! A. F- f8 d#psspy.seqd(a)% p) h8 V" a; P* ?5 R

1 Q+ A# T4 e- K! s, C
% g" {- d7 y0 g+ t4 M! h" _, Rdef one_phase_ground(bus,r,x):* z' I/ i! b  e! t  g
        options=(1,1,1,0,0,0,0)) ~, E" {/ r+ k. q# P8 e
        rval=(r,x,0.0,0.0,0.0); U5 Q1 o4 p+ c: U8 C* ~: J
        cktarg=''
" \: W% |/ J" v4 v4 b        psspy.scmu(1,options,rval,cktarg)
2 c' ]$ O# i! R0 L        options=(1,bus,1,0,0,0,0)0 _' {* V3 H+ b/ N8 m- V" o/ Z
        psspy.scmu(2,options,rval,cktarg)
6 b5 h, D* V0 S; o& n* X        psspy.scmu(3,options,rval,cktarg)
5 D% ]# E# U4 D3 Y% _" V8 x* k4 O        & Q7 j8 i! @' M$ c! P( l, l
        return 0
9 X% q- l# D) f' f       
5 e7 i$ P5 N/ a& X( L4 udef two_phase(i):4 e* x2 p5 `$ ?0 }/ D

/ _1 D& p2 T2 c3 n3 A        return 0
+ }# d/ W7 l5 C; m3 R9 C' {4 A, O/ U$ d: o
def three_phase(bus):9 T. X+ j3 l$ |  c3 A4 |1 Y# Y
        options=(1,1,1,0,0,0,0)
& b- B( w# L! F4 K        rval=(0.0,0.0,0.0,0.0,0.0)- W4 U& }( M! A* R' a0 G4 R( G
        cktarg=''( y+ A: J& I- h9 w6 X
        psspy.scmu(1,options,rval,cktarg)
4 w( m( M  `+ r$ m# k: v& f        options=(7,bus,1,0,0,0,0)
( I% E2 C* G% C' X- q' D) M0 O; p        psspy.scmu(2,options,rval,cktarg)+ ^+ G# }: H. Y" a
        psspy.scmu(3,options,rval,cktarg)
1 R. A& U( j- S$ h5 j: ], [& [# c2 J! @# l        6 O1 r+ I3 x6 s  Q. y
        return 0
+ X! A* @+ E4 P9 }5 ?1 w
) N& ~2 M3 y( X# Zdef line_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):* h, p5 R) k! k! A# t* H
        options=(1,1,1,0,0,0,0)5 @5 i1 |  n# I9 q% l9 B/ E, [
        rval=(0.0,0.0,0.0,0.0,location)
* `+ \1 H" ]6 @: M; e        cktarg=ckt! W9 K# G* c& s6 D. H* d$ K+ z
        psspy.scmu(1,options,rval,cktarg)
# ?; Y+ _, B6 |' Z: B+ s        options=(9,bus_i,bus_j,1,1,0,0)
/ L* j1 H8 |% K2 ~9 Y( B        psspy.scmu(2,options,rval,cktarg)2 j9 u$ I4 K$ ^
        psspy.scmu(3,options,rval,cktarg)
6 G- t# H: B1 T) k        ' c& O1 B7 l3 f
        return 0
' d) W9 m8 f4 w  w! j8 j% o$ I5 U2 R3 m+ ^
def line_LL_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):4 b0 l% e! W; Y: f$ ?
        options=(1,1,1,0,0,0,0)7 v: \6 P' f7 i" V" g
        rval=(0.0,0.0,0.0,0.0,location)6 M/ g# W9 H- q; m7 `
        cktarg=ckt
1 N' O) E" }" I        psspy.scmu(1,options,rval,cktarg)2 \0 u8 w6 y; c4 H% n4 ], T3 G
        options=(9,bus_i,bus_j,2,1,0,0)
$ @. B: o* j' ?  X& m: F        psspy.scmu(2,options,rval,cktarg)
% }1 f2 [! W2 p& o        psspy.scmu(3,options,rval,cktarg)+ k6 R9 h) c6 I, r) _
        # e( g( H3 z1 _7 @9 j/ d
        return 0
1 v# M+ N; W/ ^: N* n& A' M9 q1 V3 E" m0 R7 p
def get_breaker_cline_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):
) g% d* n9 z9 D$ G        options=(1,1,1,0,0,0,0)
3 U  ]. b- B6 ]- }        rval=(0.0,0.0,0.0,0.0,location)
' n/ ]. c, t3 p; H        cktarg=ckt+ b  t* a  _5 u3 U$ F6 J
        psspy.scmu(1,options,rval,cktarg)7 _( }9 _8 H( h( G+ t
        options=(9,bus_i,bus_j,1,1,0,0)
" d1 h- u  r6 ]0 _1 E        psspy.scmu(2,options,rval,cktarg)
6 x# {4 D1 Q1 F/ R        psspy.scmu(3,options,rval,cktarg)" C: ^2 }. `, t" ]% T, @7 }
        ! A- R% F- X) W
        return 0
"真诚赞赏,手留余香"
还没有人打赏,支持一下
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2008-8-28 17:24:10 | 显示全部楼层
    咋一个三相短路写这么复杂呢?5 B6 r; i' F9 u. }0 |! b5 w

    8 q" h9 z+ O2 {2 A高手详细对比一下python和IPLAN吧
    $ T$ F/ E3 Y6 u" I% ^, a# ~各有哪些优势
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-15 20:29
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]偶尔看看II

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

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:46:11 | 显示全部楼层
    楼主上述故障实现没有直接用官方提供的disturbance APIs8 z/ a% n5 _5 E' S, u5 \$ o
    不知为什么
    ( ~9 t" k3 b2 s5 v看起来官方的dist_branch_fault、dist_bus_fault等更简洁5 v" o! @! F, @$ [' D( V5 p
    但没试过
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:50:51 | 显示全部楼层
    原先用IPLAN写branch trip:% \4 }6 Y- ^1 v) d9 ^6 V5 Y  v* H: W
    7 C: S+ I+ }& g  C% q  C; |
                    PUSH        'ALTR'
    . k0 A4 D/ ?/ Q9 D% M& B. ?                PUSH        '0'0 b0 E, B, p, g( x8 L
                    PUSH        '1'        !CHANGE NETWORKDATA( k0 o6 N7 Q- }8 ?) r
                    PUSH        '0'! w! H7 U/ u$ O4 R3 L  h2 B
                    PUSH        '3'        !BRANCH DATA" S5 ?( X* \0 ?
                    PUSH        '151,201,1'
    " O7 R) K- E$ R8 Q$ l  Y                PUSH        '1'
    " w1 h8 g) T5 J% u" s3 J$ v                PUSH        '0,'        !ISOLATE THIS BRANCH3 D, _& @, E3 b8 v6 q) u. v
                    PUSH        '0'          !NO MORE CHANGES TO THIS BRANCH5 F. `4 d6 W: |5 a* A
                    PUSH        ' '                !NO CHANGE IN METERED END; v& j  m& K( l7 h
                    PUSH        ' '          !NO MORE BRANCHES TO BE CHANGED# w. A' v9 E0 z0 ?
                    PUSH  '0'   !EXIT ALTR ACTIVITY
    6 j8 B! F. ^" Z7 h- q9 x1 w' D- x
    9 f  p& W, T, g# L现在python:* A& p, z- x7 ]8 O+ ]! {
    dist_branch_trip(151,201,'1')
    " i' Q8 K; m" I# t% o一句就可以了
    6 h! C* }. R3 @' f
    : u! O* v8 i( w/ [% q6 z( v确实比较简洁
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 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 | 显示全部楼层
    用官方提供的应该可靠性高点
    4 K) r  y$ ~# j4 m" i就是不容易出错
    . p, q1 {6 U! `, Y8 W% H
    * r! P5 O, A& e) K' @# r9 Z要想玩PSSE,还是基于最基本命令单元,呵呵
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2025-2-23 13:16

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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