Skip to content

Turbine-Governor (HYGOV) ​

HYGOV hydro turbine-governor (IEEE PES-TR1), the hydro model most used in North American planning databases. It senses rotor speed ω and drives the synchronous machine's mechanical-torque input Tm. A mechanical-hydraulic governor with permanent droop R and temporary droop r: the speed error nref − Δω − R·c passes a filter 1/(1+sTf) and the governor (1+sTr)/(r·Tr·s), whose integrator is held to the gate velocity limit ±VELM and the position limits [GMIN, GMAX], giving the desired gate c; a servo 1/(1+sTg) moves the gate g. The nonlinear, inelastic water column gives the head h = (q/g)² and the flow TW·dq/dt = 1 − h, and the turbine delivers Pm = At·h·(q − qNL) − Dturb·g·Δω as torque Tm = Pm/ω. Opening the gate first drops the head, so the power dips before it rises: the non-minimum-phase response of a hydro unit. Pairs with the synchronous machine for bumpless load-flow initialization. The right-edge ω (in) and Tm (out) ports line up with the machine's left-edge speed (out) and Tm (in) ports for a direct connection.

Category: Control / Governor

Overview ​

The HYGOV turbine-governor models a hydro unit: a mechanical-hydraulic governor with permanent and temporary droop moving the wicket gate, and a nonlinear water column between the gate and the turbine. IEEE PES-TR1 describes it as its mechanical-hydraulic governor combined with the nonlinear inelastic water column, and names it among the hydro models most used in North American planning databases.

It senses the machine rotor speed ω and outputs the mechanical torque Tm that drives the machine. With the load-flow auto-initialization (below) the governor starts on its operating point, so a study begins in steady state with no torque transient.

The water column gives a hydro unit its signature response: when the gate opens, the water has to accelerate before more of it flows, so the head at the turbine first drops and the power dips before it rises. Steam and gas models cannot show this.

Block diagram ​

HYGOV block diagram: nref minus the speed deviation ω − 1 minus R times the desired gate c passes a filter 1/(1+sTf), the governor (1+sTr)/(r·Tr), a velocity limit ±VELM and an integrator held in [GMIN, GMAX] giving c; a servo 1/(1+sTg) gives the gate g; q/g squared is the head h, 1 − h integrated over TW is the flow q, and At·h·(q − qNL) − Dturb·g·Δω is the mechanical power Pm, with Tm = Pm/ω.

Signal flow, block by block (all quantities per-unit on the machine rating, s=d/dt, Δω=ω−1):

  1. Speed error and filter —
e=nref−Δω−Rc1+sTf,

where R is the permanent droop acting on the desired gate c and nref is the speed reference.

  1. Governor — the temporary-droop compensation
dcdt=clamp(e+Tre˙rTr,−VELM,VELM),

which is (1+sTr)/(rTrs) with the gate velocity limit on its integrator input. The desired gate c is held inside [Gmin,Gmax] by a non-windup limit. Its transient gain 1/r is much lower than the steady gain 1/R, which keeps the gate from chasing the water column.

  1. Gate servo — g=c/(1+sTg).

  2. Water column — with flow q and head h at the turbine,

h=(qg)2,TWdqdt=1−h.
  1. Turbine power and torque —
Pm=Ath(q−qNL)−DturbgΔω,Tm=Pmω.

A zero Tf or Tg bypasses its lag. TW=0 removes the water column (flow equals gate, head stays 1). With r=0 or Tr=0 the governor gain is unbounded and the gate moves as fast as VELM allows.

Droop in terms of power ​

R is a droop on gate position. In steady state a speed change Δω moves the gate by −Δω/R, and at rated head the power follows the gate with slope At, so with Dturb=0

ΔPm=−AtRΔω.

The power droop is therefore R/At: with the defaults R=0.05 and At=1.2, a 1% speed drop raises the power by 0.24 pu, not 0.2 pu. Keep this in mind when you share load with a steam unit whose droop is stated on power. R=0 makes the unit isochronous.

The water column ​

Linearized around an operating point with flow q0 and head h0=1, the gate-to-power response is

ΔPmΔg=At1−(q0−qNL)TWs1+q0TWs/2,

a right-half-plane zero: a gate step first moves the power the wrong way, by 2(q0−qNL)/q0 times the final change (up to twice it), then recovers over a few q0TW. The effective water time constant q0TW grows with load, so the dip is deepest at full output. This is why hydro governors use a large temporary droop and a slow reset.

The flow integrator is stepped implicitly, so the model stays stable as the gate closes and the water column's own time constant gTW/2 shrinks toward zero. A fully shut gate stops the flow and returns the head to 1; the turbine then absorbs the no-load loss AtqNL.

Load-flow auto-initialization ​

After the load flow solves, the apply pass back-calculates the speed reference and the gate seed so every derivative in the diagram is zero at t=0:

  • Pairing is wire-traced. The initializer follows the Tm wire (through GoTo/From labels) to the unique synchronous machine whose Tm it feeds. Fan-out to several machines skips initialization with a warning.
  • The gate holds the machine's power at rated head. With the water column at rest the head is 1 and the flow equals the gate, so
g(0)=q(0)=Pm0At+qNL,nref=Rg(0),

with Pm0 the mechanical power of the paired machine at its operating point.

A warning is raised, and the seed still proposed, when g(0) lies outside [Gmin,Gmax]. The initialization is skipped when At=0 or when the flow would not be positive (the machine's power is below the no-load loss −AtqNL). When the paired machine has a multi-mass shaft, the governor is initialized on the machine's total mechanical torque, with a warning.

These quantities populate nref and g(0) on the Initialization tab. On the first time step the model uses ω=1 in place of the not-yet-available speed signal.

Wiring ​

  • ω ← the synchronous machine's speed output.
  • Tm → the synchronous machine's Tm input.

Enable Monitor Pm / gate / head on the Monitoring tab to record the mechanical power, the gate opening and the turbine head.

When to use something else ​

  • A steam unit: use IEEEG1 (or the minimal TGOV1).
  • A gas turbine or a governor with load and acceleration limiters: use GGOV1.

Ports ​

NameDirectionValue typeNotes
speedinputdouble
Tmoutputdouble

Parameters ​

Governor ​

NameLabelTypeDefaultUnitsDescription
RR (permanent droop)double0.05—Permanent droop (pu gate per pu speed): in steady state a speed drop Δω opens the gate by Δω/R, so the mechanical power rises by about At·Δω/R. R = 0 makes the governor isochronous: it returns the speed to its reference.
rtempr (temporary droop)double0.3—Temporary droop r (pu): the governor's transient gain is 1/r, much lower than the steady 1/R, so the gate does not chase the water column's fast dynamics. With r = 0 (or Tr = 0) the gain is unbounded and the gate moves at the velocity limit.
TrTrdouble5s (s, ms)Governor reset (dashpot) time constant: the temporary droop washes out with Tr, leaving the permanent droop R.
TfTfdouble0.05s (s, ms)Filter (pilot valve) time constant on the speed error. 0 bypasses the filter.
TgTgdouble0.5s (s, ms)Gate servo time constant. 0 bypasses the servo, so the gate follows the desired gate c directly.
VELMVELMdouble0.2—Gate velocity limit (pu/s), the reciprocal of the time the gate takes to travel from fully open to fully closed. Applies to opening and closing alike; read as its magnitude.
GMAXGMAXdouble1—Maximum gate opening (pu): the gate limit set at the governor, at most 1. Non-windup upper limit on the desired gate c.
GMINGMINdouble0—Minimum gate opening (pu), normally 0. Non-windup lower limit on the desired gate c.

Turbine ​

NameLabelTypeDefaultUnitsDescription
TWTWdouble1s (s, ms)Water starting time at rated flow and head: the time the head needs to accelerate the water column to rated flow. A larger TW gives a deeper initial power dip. 0 drops the water column, so the flow equals the gate and the head stays at 1.
AtAt (turbine gain)double1.2—Turbine gain, 1/(gFL − gNL) for the full-load and no-load gate openings gFL and gNL: converts flow above the no-load flow into power on the machine rating.
DturbDturbdouble0—Turbine damping (pu on the machine rating): subtracts Dturb·g·Δω from the mechanical power, the turbine's own self-regulation against speed. 0 leaves damping to the machine and the network.
qNLqNL (no-load flow)double0.08—No-load flow (pu of rated flow): the flow that spins the unloaded unit at rated speed, covering the turbine's fixed losses.

Monitoring ​

NameLabelTypeDefaultUnitsDescription
measure_pmechMonitor Pmenum (Off / On)0—Record the turbine mechanical power Pm (pu) as a named observable.
measure_gateMonitor gateenum (Off / On)0—Record the gate opening g (pu) as a named observable.
measure_headMonitor headenum (Off / On)0—Record the turbine head h (pu) as a named observable.

Signal Names ​

NameLabelTypeDefaultUnitsDescription
pmech_namePm namestring(empty)—Observable name for the mechanical power Pm. Blank = skip.
gate_nameGate namestring(empty)—Observable name for the gate opening g. Blank = skip.
head_nameHead namestring(empty)—Observable name for the turbine head h. Blank = skip.

Initialization ​

NameLabelTypeDefaultUnitsDescription
pref0nrefdouble0—Speed reference nref (pu): R·g(0), the value that balances the permanent droop at synchronous speed. Normally computed by the load-flow auto-initialization so the governor starts in balance; set manually only for standalone use.
gate0g(0)double0—Initial gate opening at t = 0 (pu), Pm(0)/At + qNL at rated head. Seeds the desired gate, the gate and the flow (equal to the gate at rated head). Normally set by the load-flow auto-initialization from the paired machine's operating point.

Observables ​

SignalTypeDefault nameEnableDescription
pmechsignalfrom pmech_namemeasure_pmechTurbine mechanical power Pm (pu): At·h·(q − qNL) − Dturb·g·Δω.
gatesignalfrom gate_namemeasure_gateGate opening g (pu), the servo output.
headsignalfrom head_namemeasure_headTurbine head h = (q/g)² (pu of rated head); it dips below 1 while the water column accelerates after the gate opens.

Used in samples ​