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

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

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

[复制链接]

该用户从未签到

尚未签到

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

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

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

×
import globedef
- @7 A. s9 g3 V! }; n' ?- f$ timport fault
2 R3 Z6 x- r) o( p6 U/ E% S# z: Ypsspy.case('c:\sav.sav')1 @$ y5 v1 ?; X+ S; f. B
psspy.close_report()  # close REPORT windows6 I$ X/ X. J+ l0 ^! a: F8 W; e) z, T- b' A
options=(0,0,0,0,0,0,0)$ Y+ b$ ]2 W; J9 h: W* c
psspy.progress_output(6, "", options), p, Z. i3 Y, R) w! _
psspy.report_output(6, "", options)  n4 p: [' c. }# b' y9 A1 m
fault.three_phase(33600)
% m; B1 Y! x. q$ T* t. Z0 W7 T/ X0 c  Q& h
[ 本帖最后由 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的内容: s7 f, a% o/ _  h+ |( J/ L
import globedef
/ J/ U, H5 \% _" B7 _import psspy" i/ [. ^. z  J& w: A1 ~% c2 |
) X- J9 H) P/ t; w
#a=(1,1,1)
8 ~. F! Z0 V+ _#psspy.seqd(a)
# g2 P, m  `3 ]5 ^& _7 q4 H5 _3 S
7 Y( j5 i1 j2 @& [3 C# l' r# o$ X' F5 r0 @8 n+ D
def one_phase_ground(bus,r,x):/ J4 R9 y4 k# Y0 m
        options=(1,1,1,0,0,0,0)
. S/ J- u9 P. w( g8 C& ^        rval=(r,x,0.0,0.0,0.0): b' w, l( B7 J& z. Q
        cktarg=''
* q8 A' p0 r: Z2 n        psspy.scmu(1,options,rval,cktarg); Q6 b' y2 K# [1 F. |9 B# H
        options=(1,bus,1,0,0,0,0)7 f& S$ Z# Z  M& _/ `3 h
        psspy.scmu(2,options,rval,cktarg)
% c# L0 X- B: l! t4 m8 c        psspy.scmu(3,options,rval,cktarg)7 Z, U" [; s3 y  b1 P+ k
       
. r9 _( X+ n! l0 L6 H9 E        return 0
- Q" x% X( ?0 b2 s' j, w( z       
6 x1 [) J# i. [3 A: w" G& V! Xdef two_phase(i):
" ]7 d+ s0 L/ B) \) Y3 q$ e# Y% Z3 a7 W( ?3 d
        return 0
+ K/ h. t' [7 {0 Y, X
9 L* E9 }% \5 I2 [: X8 V6 Xdef three_phase(bus):! T' `* \7 [* }- F# z: H
        options=(1,1,1,0,0,0,0)0 M' H+ I, V7 g% k: p1 [
        rval=(0.0,0.0,0.0,0.0,0.0)
6 \. |; d# P; z0 B# w        cktarg=''  u, f# W5 r* G  \: J+ e- w+ ~
        psspy.scmu(1,options,rval,cktarg)8 v, t9 }$ u8 _' k9 \4 E  O
        options=(7,bus,1,0,0,0,0)
( @; z$ d. Z# S  V        psspy.scmu(2,options,rval,cktarg)
- A  r; S# x' |0 A( ^& \( w2 P. _        psspy.scmu(3,options,rval,cktarg)
5 h6 a# T+ B. E; ?  A9 G- @       
0 g& V& j. t$ N' r6 L9 N        return 0
& m5 d5 Z! K9 _* }% w* \+ p: N2 \" i7 i( O
def line_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):" i7 Q" z1 O: ^
        options=(1,1,1,0,0,0,0)
3 K( p# g5 M1 }2 \) ^        rval=(0.0,0.0,0.0,0.0,location)
3 M% I. S1 A5 _5 o        cktarg=ckt
& e/ U5 i: S+ Q( g        psspy.scmu(1,options,rval,cktarg)% R$ a* S; S. |& u" r. J
        options=(9,bus_i,bus_j,1,1,0,0); E) z" E' I0 {
        psspy.scmu(2,options,rval,cktarg)
' }8 O7 e* N: F  `& z# x        psspy.scmu(3,options,rval,cktarg)! x8 y9 [3 N! ~0 B% `( N
        + q9 B" ~. S% r& j* ^
        return 09 F  W' _) _' u4 G' d1 c
, h, m0 z/ ?4 x0 k- H
def line_LL_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):
, S% _, W3 c7 u  F2 k( C1 \  e        options=(1,1,1,0,0,0,0)
0 [! p' j" [2 g! ]        rval=(0.0,0.0,0.0,0.0,location)8 j) i  H& y; z6 K/ ?; Y
        cktarg=ckt
5 ?- K0 w& Q! {& N+ ~        psspy.scmu(1,options,rval,cktarg)
/ S) T# H8 r3 ^- b  k        options=(9,bus_i,bus_j,2,1,0,0); @; c# P' Y* c: w) h
        psspy.scmu(2,options,rval,cktarg)
3 s/ ~" h0 v9 A% l  P        psspy.scmu(3,options,rval,cktarg)
. g) C) V- Y' a- s/ Q        : |- l+ X$ V2 M* E3 J' ?: D8 D
        return 0
4 i5 ^9 Z3 [' @5 C7 l! i: j; V0 Q# |! N9 `# N3 J9 J# w' `0 B% R' s
def get_breaker_cline_LG_fault_both_ends_close(bus_i,bus_j,ckt,location,r,x):
2 s8 {) k! V- I7 c0 Y        options=(1,1,1,0,0,0,0)  B7 _: F; q, e) z* a9 N
        rval=(0.0,0.0,0.0,0.0,location)" c9 d3 Z7 Q; m4 |
        cktarg=ckt
6 l5 T2 {/ t# U" ~        psspy.scmu(1,options,rval,cktarg)! b4 f7 m. B6 s+ d8 a) n6 u2 b1 ]
        options=(9,bus_i,bus_j,1,1,0,0)8 Y1 p4 V; q/ M+ `) }
        psspy.scmu(2,options,rval,cktarg)) [/ A5 S) n9 a5 g
        psspy.scmu(3,options,rval,cktarg)
) u7 y  L! _" V+ v7 B, h       
) d+ V% Q- {& p! y0 z  I; ]% E        return 0
"真诚赞赏,手留余香"
还没有人打赏,支持一下
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2008-8-28 17:24:10 | 显示全部楼层
    咋一个三相短路写这么复杂呢?
    9 x. j! M6 d3 |& j$ m$ K6 r3 h
    ( S5 F) v, O  l9 e8 Y2 \! ?高手详细对比一下python和IPLAN吧
    # G  N9 n7 U( p& w0 F8 T: y各有哪些优势
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-15 20:29
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]偶尔看看II

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

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:46:11 | 显示全部楼层
    楼主上述故障实现没有直接用官方提供的disturbance APIs1 s: j: p. D8 b/ Y, h9 A
    不知为什么
    5 m' Q- H! Z" k: D1 G  p看起来官方的dist_branch_fault、dist_bus_fault等更简洁& P; [* ^# J. Q( y1 n
    但没试过
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-11-18 14:05
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:2 天
    连续签到:1 天
    发表于 2009-2-27 20:50:51 | 显示全部楼层
    原先用IPLAN写branch trip:, N) R. w" X5 s! ?6 p* T3 c

    , c" B  i: o" E* d( S                PUSH        'ALTR'
    $ a" v) u4 W# a" F% X) S                PUSH        '0'
    ; D6 x. l: W$ A( _9 T) F$ v1 |                PUSH        '1'        !CHANGE NETWORKDATA
    0 k1 b! Y- P! m2 X6 t( e                PUSH        '0'
    & F! [1 k! F) |9 ^' v, W                PUSH        '3'        !BRANCH DATA
    : @, d- }/ M# S" g2 L, V                PUSH        '151,201,1'
    ! b4 y1 P; G/ Y; X' W/ A                PUSH        '1'. n) Q4 m! y" L$ q8 v5 e  U
                    PUSH        '0,'        !ISOLATE THIS BRANCH$ [) }0 P& B6 d; V. T6 L* Z) C
                    PUSH        '0'          !NO MORE CHANGES TO THIS BRANCH
    % s  E8 x+ D3 K- g6 q: Y0 e1 n                PUSH        ' '                !NO CHANGE IN METERED END
    $ t! N& G% p4 i) a                PUSH        ' '          !NO MORE BRANCHES TO BE CHANGED4 _5 F% N. S1 x: P
                    PUSH  '0'   !EXIT ALTR ACTIVITY
    ) s$ M) a+ y: Q. R) g& }/ R: g' K- L+ U, {# u5 N
    现在python:) P( K' q7 B. I8 ^: Y( ~, {  W
    dist_branch_trip(151,201,'1'); ^, {- B, K% z! Y
    一句就可以了8 p% J; n" }: L! I& m7 e- p

    5 u0 G! Z+ r1 |! K1 M确实比较简洁
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 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 | 显示全部楼层
    用官方提供的应该可靠性高点
    % e2 ^9 L# J/ y5 f就是不容易出错
    2 ^0 @& {. N3 @* Q. v& R
    2 @# a) N$ \8 ^& y( Q- x$ b要想玩PSSE,还是基于最基本命令单元,呵呵
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-3-18 05:49

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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