Transfer Functions
Transfer functions describe a linear system's input–output behaviour in the Laplace domain. Learn how to derive them, poles and zeros, first- and second-order systems, time-domain specs and the final-value theorem.
Real systems — circuits, motors, heaters, suspensions — are described by differential equations. The Laplace transform turns those into algebra: differentiation becomes multiplication by s. The ratio of output to input, G(s) = Y(s)/U(s) with zero initial conditions, is the transfer function.
Its poles (roots of the denominator) decide speed, oscillation and stability; its zeros shape the response. Almost every control-design tool starts from G(s).
An analogy
A transfer function is like a recipe card for a system: give it any input 'ingredient' and it tells you exactly what comes out, without rebuilding the kitchen each time.
From differential equation to G(s)
For an RC low-pass filter, RC·dv_o/dt + v_o = v_i. Laplace-transform with zero initial conditions: (RCs + 1)V_o = V_i, so G(s) = 1/(RCs + 1). The same form describes a heater, a DC motor's speed (approximately) and a tank's level.
First-order response
A step into K/(τs + 1) rises as K(1 − e^(−t/τ)): 63 % after τ, 98 % after 4τ, no overshoot. The single pole at s = −1/τ sets the speed.
Second-order systems
Mass–spring–damper systems, RLC circuits and position servos give second-order behaviour. Poles s = −ζω_n ± jω_n√(1 − ζ²).
- ζ < 1 underdamped: oscillatory overshoot.
- ζ = 1 critically damped: fastest without overshoot.
- ζ > 1 overdamped: sluggish.
- ζ ≈ 0.7 is a common design target (≈ 5 % overshoot).
Poles, zeros and the s-plane
Poles in the left half-plane decay (stable); further left is faster; imaginary parts mean oscillation. A zero near a pole partly cancels it; a zero in the right half-plane (non-minimum phase) makes the response initially move the wrong way — boilers and aircraft altitude show this.
Dominant poles and higher-order systems
Real systems have many poles, but those much closer to the imaginary axis (slowest) dominate. A pole five or more times further left can often be neglected, reducing design to an approximate second-order model. Time delay e^(−sT) is not rational — Padé approximations handle it.
Formulas
- First order:
G(s) = K / (τs + 1) - Second order:
G(s) = ω_n² / (s² + 2ζω_n s + ω_n²) - Overshoot:
M_p = e^(−πζ/√(1−ζ²)) × 100 % - Settling & peak time:
t_s ≈ 4/(ζω_n), t_p = π/(ω_n√(1−ζ²)) - Final-value theorem:
y(∞) = lim_{s→0} s·Y(s)
Worked example: RC low-pass filter
Given: R = 10 kΩ, C = 10 µF
Find: Transfer function, time constant and cut-off frequency.
- G(s) = 1/(RCs + 1), RC = 10e3 × 10e-6 = 0.1 s
- τ = 0.1 s (63 % after 0.1 s, settled after ~0.4 s)
- f_c = 1/(2πRC) = 1.59 Hz
Answer: G(s) = 1/(0.1s + 1), τ = 0.1 s, f_c ≈ 1.6 Hz
Worked example: Mass–spring–damper
Given: m = 1 kg, b = 4 N·s/m, k = 16 N/m
Find: ω_n, ζ, poles, overshoot and settling time.
- G(s) = 1/(ms² + bs + k) → ω_n = √(k/m) = 4 rad/s
- ζ = b/(2√(mk)) = 4/8 = 0.5
- Poles: −2 ± j3.46
- M_p = e^(−π·0.5/0.866) = 16.3 %; t_s ≈ 4/(0.5 × 4) = 2 s
Answer: ω_n = 4, ζ = 0.5, 16 % overshoot, 2 s settling
Common mistakes
- Wrong: Forgetting that G(s) assumes zero initial conditions. — Right: Add initial-condition terms separately when the system doesn't start at rest.
- Wrong: Applying the final-value theorem to an unstable system. — Right: It only holds when all poles of sY(s) are in the left half-plane.
Applications
- Vehicle suspension: Designers pick spring and damper values for ζ ≈ 0.3–0.5: comfortable but controlled.
- Servo positioning: Position loops are tuned to a target ζ and ω_n to meet overshoot and settling specs.
- Filters: Every analogue filter is a transfer function whose poles are placed for the desired frequency response.
Key takeaways
- G(s) = Y(s)/U(s) with zero initial conditions.
- Poles set speed, oscillation and stability; zeros shape the response.
- Second order: M_p from ζ; t_s ≈ 4/(ζω_n).
- Dominant poles let complex systems be approximated simply.
Going further
- Impulse response and convolution: g(t), the inverse Laplace of G(s), is the impulse response; any output is the convolution of the input with g(t). Transfer functions are just convolution made algebraic.
- Discrete-time transfer functions: Sampled controllers use the z-transform: G(z). Mapping s → z via Tustin (bilinear) or zero-order-hold equivalents is how continuous designs are implemented in firmware.
- System identification: Transfer functions can be estimated from measured input/output data (step tests, PRBS excitation, least squares), which is how real plants are modelled when physics is uncertain.