Ask Your Question
0

How to model a substation using node-breaker?

asked 2024-02-27 06:29:56 -0500

SpadesEE gravatar image

Hello, I am trying to model a substation that has breaker-and-half implementation. My end goal is to do some contingency testing, so I am taking the .raw file I have and making it match the breaker setup in the real substation. I am currently using "psspy.stationbuildconfig()" but it seemingly generates the nodes and connects the associated branches randomly. I have to repeat this for a few different substations so I am trying to figure out the pattern so I can repeat it. I am using PSSE35.6 and python 3.9. Thanks in advance!

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
0

answered 2024-03-02 17:24:05 -0500

mtpacific gravatar image

updated 2024-03-04 22:26:54 -0500

Make each substation its own script. Then run a python script to run python scripts. This is the example code for one 'large' substation.

Substation Information

psspy.stationdata(10000,[f,f,f],r"""SUB""")

345 kV Nodes 10000 Bus

psspy.stationnodedata(10000,101,[10000,i],s) psspy.stationnodedata(10000,102,[10000,i],s) psspy.stationnodedata(10000,111,[10000,i],s) psspy.stationnodedata(10000,112,[10000,i],s) psspy.stationnodedata(10000,113,[10000,i],s) psspy.stationnodedata(10000,114,[10000,i],s) psspy.stationnodedata(10000,115,[10000,i],s) psspy.stationnodedata(10000,116,[10000,i],s)

230 kV Nodes 10001 Bus

psspy.stationnodedata(10000,201,[10001,i],s) psspy.stationnodedata(10000,202,[10001,i],s) psspy.stationnodedata(10000,211,[10001,i],s) psspy.stationnodedata(10000,212,[10001,i],s) psspy.stationnodedata(10000,213,[10001,i],s) psspy.stationnodedata(10000,214,[10001,i],s) psspy.stationnodedata(10000,215,[10001,i],s) psspy.stationnodedata(10000,216,[10001,i],s) psspy.stationnodedata(10000,217,[10001,i],s) psspy.stationnodedata(10000,218,[10001,i],s)

345 kV Switching Devices

psspy.stationswddata(10000,101,111,r"""1""",[i,i,2],[f,f,f,f],r"""192""") psspy.stationswddata(10000,101,113,r"""1""",[i,i,2],[f,f,f,f],r"""496""") psspy.stationswddata(10000,101,115,r"""1""",[i,i,2],[f,f,f,f],r"""792""") psspy.stationswddata(10000,111,112,r"""1""",[i,i,2],[f,f,f,f],r"""296""") psspy.stationswddata(10000,113,114,r"""1""",[i,i,2],[f,f,f,f],r"""596""") psspy.stationswddata(10000,115,116,r"""1""",[i,i,2],[f,f,f,f],r"""896""") psspy.stationswddata(10000,112,102,r"""1""",[i,i,2],[f,f,f,f],r"""392""") psspy.stationswddata(10000,114,102,r"""1""",[i,i,2],[f,f,f,f],r"""692""") psspy.stationswddata(10000,116,102,r"""1""",[i,i,2],[f,f,f,f],r"""992""")

230 kV Switching Devices

psspy.stationswddata(10000,201,211,r"""1""",[i,i,2],[f,f,f,f],r"""182""") psspy.stationswddata(10000,201,213,r"""1""",[i,i,2],[f,f,f,f],r"""486""") psspy.stationswddata(10000,201,215,r"""1""",[i,i,2],[f,f,f,f],r"""782""") psspy.stationswddata(10000,201,217,r"""1""",[i,i,2],[f,f,f,f],r"""1082""") psspy.stationswddata(10000,211,212,r"""1""",[i,i,2],[f,f,f,f],r"""286""") psspy.stationswddata(10000,213,214,r"""1""",[i,i,2],[f,f,f,f],r"""586""") psspy.stationswddata(10000,215,216,r"""1""",[i,i,2],[f,f,f ... (more)

edit flag offensive delete link more

Comments

Thank you!! Definitely a brute force strategy, but it works for what I need. If applicable for others, use station_shunt_term_chng() for fixed shunts

SpadesEE gravatar imageSpadesEE ( 2024-03-05 12:41:38 -0500 )edit

This example is a big substation and it looks like a lot of code, which it is, but the process is pretty formulaic. You'd be surprised how fast you can get through you're typical 3-, 4-, 5-Breaker ring bus substations.

mtpacific gravatar imagemtpacific ( 2024-03-15 18:17:24 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

[hide preview]

Question Tools

Stats

Asked: 2024-02-27 06:29:56 -0500

Seen: 308 times

Last updated: Mar 04