Watt Flyball Governor - 2D Lab

Flyballs swing out as the engine speeds up and close the throttle. Raise the gain and watch the loop start to hunt.

Switch to 3D

Presets

Playback

Governor

Arm length, masses, damping and the speed setting. Sleeve mass 0 is a Watt governor.

Engine and loop

Linkage gain, steam-chest lag, flywheel and load. Use the buttons to disturb the engine.

Simulation

Layers

Model checks

The science

The governor

Two balls of mass m hang on arms of length l from a spindle that turns at w_g. In the rotating frame each ball feels its weight and a centrifugal pull m w_g^2 l sin(th). With a sleeve of mass M on lower links of the same length (a Porter governor), the Lagrangian L = m l^2 th'^2 + 2 M l^2 sin^2(th) th'^2 + m l^2 w_g^2 sin^2(th) + 2 (m+M) g l cos(th) gives I(th) th'' + (1/2) I'(th) th'^2 = 2 m l^2 w_g^2 sin th cos th - 2 (m+M) g l sin th - c th' with I = 2 m l^2 + 4 M l^2 sin^2 th. At rest, cos th = (m+M) g / (m l w_g^2); for M = 0 this is the conical pendulum, height h = l cos th = g / w_g^2: the sleeve lift depends only on speed.

The engine and the loop

The linkage sets the valve command u_cmd = u0 - G (cos th_set - cos th), where th_set is the arm angle at the speed setting. The steam chest lags: u' = (u_cmd - u) / tau_v. The engine obeys J Om' = Tmax u - T_load - b Om. This closed loop is a proportional controller, so a load increase lowers the steady speed: the droop. Steady speed solves Tmax u(Om) = T_load + b Om; a larger gain G means less droop but a less stable loop.

Hunting

Linearising the four state equations about the fixed point gives a 4 x 4 Jacobian; its eigenvalues are the loop poles. If any pole has a positive real part the speed oscillates with growing amplitude until the mechanical stops and the valve limits cap it (a limit cycle): this is hunting, the instability that led Maxwell to write "On Governors" (1868). Too much gain, too much lag in the steam chest, too little damping, or too little flywheel inertia make hunting more likely.

What is simplified

The arm pivots lie on the spindle axis; the governor's own angular momentum does not feed back on the engine speed; the lever and rod are drawn for illustration (the sleeve lift drives the valve through the gain G, not through measured link geometry); steam flow is a linear torque Tmax u with no cylinder cycle; friction is viscous. The model reproduces droop and hunting qualitatively and the equilibrium and pole values quantitatively within these assumptions.

What to try
  • Start with the Watt preset, press Load +30 twice: the speed dips, then settles to a lower value. That difference is the droop. Double the gain G and the droop on the droop chart roughly halves.
  • Choose Hunting: the poles on the pole map cross to the right half-plane and the strip chart on the wall grows an oscillation. Add friction or flywheel inertia until they come back.
  • Set the sleeve mass to 6 kg (Porter): the same speed now needs a smaller arm angle change, so the governor is stiffer.
  • Press Governor on/off while running: with the linkage disconnected the engine runs away to a much higher speed.
Engine speed vs time
Arm angle and valve opening
Droop: steady speed vs load
Loop poles (stability map)