Ask Your Question

Dynamic Simulation Bus Monitoring (psspy.chsb) Pointer Limit?

asked 2015-03-16 17:09:29 -0500

wassup_doc gravatar image

Hello all,

I am working on a dynamic simulation of a 2383 bus system in PSS/e 33. I am driving pss/e from Python.

I have successfully built the static topology (.sav file) and I have loaded a (.dyr) file with machine parameters for the 327 buses that have machines. I have gone through all of the necessary conversions etc. to get from static "power flow mode" to "dynamic simulation mode."

Now I would like to monitor the machine speeds, bus voltages and angles, and frequency at every bus in the system. HOWEVER, I am having trouble with monitoring the voltages and angles at every bus in the system -- I am using the command below to add the necessary channels to the channel output file:

p.chsb(0,1,[-1,-1,-1,1,14,0]) # monitor bus voltage and angle pu

In the python terminal psspy throws the error:

psspy.ChsbError: chsb Error: ierr=7

Concurrently, in the text output of PSS/e, I am seeing the following:

Generator models use:
  CONS        1-  4578
  STATES      1-  1962



  4579   1963      1      1

Messages for api CHSB
2000 monitoring models specified--pointer table full   (002342)
4000 Output channels have been added

Next available addresses are:
   4001   4001   2001

I think the key point here is the pointer table is full. Does anyone know how to add more than 2000 monitoring models?

My first thought was to increase the initialization bus number for PSS/e as described here

Any help would be much appreciated. Thanks

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted

answered 2015-03-24 19:56:09 -0500

wassup_doc gravatar image

Well Folks I happened to figure out the solution, via a partial response from Siemens that I received. It seems that my issue is that there are a limited number of "subsystem-based monitoring models" that you can add to a simulation. I am not entirely sure if this is the same thing as subsystem-based monitoring channels, but I assume this is the case. Anyway, the response from Siemens stated: "that given a 150,000 bus initialization, the maximum number of subsystem-based monitoring models allowed is 2000."

The work around for me then, to get all the bus voltages, angles, and frequencies, was to add "non-subsystem based channels" to the dynamics file (.snp file). The pseudo-python code below does just that:

busnum = 1
while busnum < #ofBusesInSystem:
    psspy.voltage_and_angle_channel([-1,-1,-1,busnum], '')
    psspy.bus_frequency_channel([-1,busnum], '')

These can be found in the PSS/e API manual chapter 4.2. Hope this is helpful to someone... I wish rules like that 2000 subystem-based channel limit were more readily available to users... I guess that's why Siemens makes the big bucks with their support services.

edit flag offensive delete link more

answered 2015-03-17 23:12:01 -0500

sheng gravatar image

Check the dimensional capacity you have used to start up PSSE--see Section 3.3.1 of Program Operation Manual

edit flag offensive delete link more


Unfortunately that is not the solution. I am initializing PSS/e to the maximum 150,000 bus topology. According to Siemens this yields 66,000 channels.

wassup_doc gravatar imagewassup_doc ( 2015-03-23 16:56:31 -0500 )edit

Thanks for the suggestion though.

wassup_doc gravatar imagewassup_doc ( 2015-03-23 16:57:09 -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


Asked: 2015-03-16 17:09:29 -0500

Seen: 2,798 times

Last updated: Mar 24 '15