In [1]:
%pylab inline
%precision %.4g
Out[1]:
A generating station for a power system consists of four 300-MVA, 15-kV, 0.85-PF-lagging synchronous generators with identical speed droop characteristics operating in parallel. The governors on the generators’ prime movers are adjusted to produce a 3-Hz drop from no load to full load. Three of these generators are each supplying a steady 200 MW at a frequency of 60 Hz, while the fourth generator (called the swing generator) handles all incremental load changes on the system while maintaining the system's frequency at 60 Hz.
In [2]:
Sload = 300e6 # [VA]
PF = 0.85
f_drop = 3.0 # [Hz]
f_sys = 60.0 # [Hz]
At a given instant, the total system loads are 650 MW at a frequency of 60 Hz.
If the system load rises to 725 MW and the generator’s governor set points do not change
If the system is operating at the conditions described in part (c)
In [3]:
Pfl = Sload * PF
Pfl/1e6
Out[3]:
and the droop from no-load to full-load is 3 Hz. Therefore, the slope of the power-frequency curve for these four generators is:
In [4]:
sp = Pfl / f_drop
print('sp = {:.0f} MW/Hz'.format(sp/1e6))
If generators 1, 2, and 3 are supplying 200 MW each, then generator 4 must be supplying 50 MW. The no-load frequency of the first three generators is:
$$P = s_{P}(f_\text{nl} - f_\text{sys})$$
In [5]:
P1 = 200e6 # [W]
P2 = 200e6 # [W]
P3 = 200e6 # [W]
P4 = 50e6 # [W]
f_nl_1 = P1/sp + f_sys
f_nl_2 = P2/sp + f_sys
f_nl_3 = P3/sp + f_sys
f_nl_4 = P4/sp + f_sys
print('''
f_nl_1 = {:.2f} Hz
f_nl_2 = {:.2f} Hz
f_nl_3 = {:.2f} Hz
f_nl_4 = {:.2f} Hz
================='''.format(f_nl_1, f_nl_2, f_nl_3, f_nl_4))
In [6]:
Pload = 725e6 # [W]
f_sys_b = (sp*f_nl_1 + sp*f_nl_2 + sp*f_nl_3 + sp*f_nl_4 - Pload) /
(sp + sp + sp + sp)
print('''
f_sys = {:.2f} Hz
================'''.format(f_sys_b))
In [7]:
P4_c = Pload - 3*P1
P4_c/1e6
Out[7]:
Therefore, the swing generator’s setpoint must be set to:
$$P_4 = s_{P4}(f_\text{nl4} - f_\text{sys})$$
In [8]:
f_nl4_c = P4_c/sp + f_sys
print('''
f_nl4_c = {:.2f} Hz
=================='''.format(f_nl4_c))
In [9]:
f_sys_d = (sp*f_nl_1 + sp*f_nl_2 + sp*f_nl_3 - Pload) / (sp + sp + sp)
print('''
f_sys_d = {:.2f} Hz and each generator will supply {:.1f} MW to the loads.
========================================================================
'''.format(f_sys_d, Pload/3/1e6))