Generator trip simulation¶
Before current script the folllowing codes have to be placed:
Channel definition synchronous machines¶
name2sym = {}
for sym in syms:
name2sym.update({sym.cDisplayName:sym})
elmres.AddVars(sym,
's:ve', # p.u Excitation Voltage
's:pt', # p.u. IN Turbine Power
's:ut', # p.u. OUT Terminal Voltage
's:ie', # p.u. OUT Excitation Current
's:xspeed',# p.u. OUT Speed
's:xme', # p.u. OUT Electrical Torque
's:xmt', # p.u. OUT Mechanical Torque
's:cur1', # p.u. OUT Positive-Sequence Current, Magnitude
's:P1', # MW OUT Positive-Sequence, Active Power
's:Q1', # Mvar OUT Positive-Sequence, Reactive Power
'c:firel', # deg Rotor angle with reference to reference machine angle
)
Define trip event for ‘G1’ synchronous machine¶
evt1 = events_folder.CreateObject('EvtSwitch', 'G1 trip event'); # generator switch event is created here
evt1[0].p_target = name2sym['G1'] # event target is the second synchronous generator replace 'G1' with the particular name
evt1[0].time = 1.0 # the event will be executed at t=1s
Power flow and run simulation¶
ldf.Execute() # executes power flow
ini.Execute() # executes initialization
sim.Execute() # executes simulation
Export results to file¶
comres = app.GetFromStudyCase('ComRes');
comres.iopt_csel = 0
comres.iopt_tsel = 0
comres.iopt_locn = 2
comres.ciopt_head = 1
comres.pResult=elmres
comres.f_name = r'C:\results.txt' # change 'C:\results.txt' with your path
comres.iopt_exp=4
comres.Execute()
Clear events an reset calculations¶
events_folder.Delete()
app.ResetCalculation()