← Research library
SCHEMATEX / RESEARCH NOTEWorked analysis · Control systems

Closed-loop transfer function: a negative-feedback worked example

Reduce a proportional controller, first-order plant, and unity sensor to one transfer function; then verify the pole, time constant, unit-step values, steady-state error, and feedback sign.

KEY RESULT0.4 s

closed-loop time constant, with a final unit-step output of 0.8

FIGURE 01 / REPRODUCIBLE OUTPUTSVG · SCHEMATEX
Negative-feedback control block diagram with reference entering a plus input, measured output entering a minus input, proportional controller C of s equals 4, first-order plant G of s equals 1 over 2s plus 1, and unity sensor H of s equals 1
Rendered deterministically by Schematex 1.0.12 from the validated source reproduced here; algebra and unit-step values were independently recomputed from the stated continuous-time model.

For C(s) = 4, G(s) = 1/(2s + 1), and unity negative feedback H(s) = 1, the closed-loop transfer function is T(s) = 4/(2s + 5) = 0.8/(0.4s + 1). For a unit step and zero initial conditions, the output approaches 0.8, the steady-state error is 0.2, and the closed-loop time constant is 0.4 s.

Reference R of s enters the positive side of a summing junction; measured output Y sub m of s returns through H of s equals 1 to the negative side; error passes through C of s equals 4 and G of s equals 1 over 2s plus 1
The minus sign at the feedback input is part of the model, not decoration. It produces E(s) = R(s) - Y_m(s) and the 1 + C(s)G(s)H(s) closed-loop denominator.

Scope and notation before the algebra

This is a continuous-time, single-input single-output, linear time-invariant teaching model. Transfer functions describe input/output behavior in the Laplace domain under stated assumptions; they are not equipment specifications by themselves. MathWorks documents transfer functions as continuous- or discrete-time LTI representations with numerator and denominator polynomials, while Åström and Murray use them as a core tool for reasoning from open-loop dynamics to closed-loop behavior.

The symbols are:

  • R(s): reference input;
  • E(s): error after the summing junction;
  • U(s): controller output and plant input;
  • Y(s): plant output;
  • Y_m(s): measured output returned by the sensor;
  • C(s), G(s), and H(s): controller, plant, and sensor transfer functions;
  • s: the Laplace variable, with units of inverse seconds in this example.

All signals are normalized and dimensionless here. The coefficient 2 in 2s + 1 therefore represents a plant time constant of 2 s; C(s) = 4 and H(s) = 1 are dimensionless gains. The model assumes zero initial conditions, exact parameters, no transport delay, no sampling, no actuator saturation, no rate limit, no noise, and no unmodeled dynamics. Those omissions make the arithmetic reproducible, not universally predictive.

Reproducible Schematex source

blockdiagram "Negative-feedback first-order control loop"
C = block("C(s) = 4") [role: controller]
G = block("G(s) = 1/(2s + 1)") [role: plant]
H = block("H(s) = 1") [role: sensor, route: below]
err = sum(+in, -H)
in -> err ["R(s)"]
err -> C ["E(s)"]
C -> G ["U(s)"]
G -> out ["Y(s)"]
G -> H
H -> err ["Y_m(s)"]

Schematex 1.0.12 strictly validated this source with no diagnostics on August 21, 2026. The rendered SVG contains three blocks, one summing junction, and six directed signals; its two summing labels were also checked as + for the reference path and for the sensor path. The current control block-diagram syntax reference documents block roles, signed summing inputs, edge labels, and feedback routing.

The signed IDs in sum(+in, -H) must match the actual source IDs of incoming connections. Writing sum(+r, -ym) while connecting in -> err and H -> err may look semantically descriptive, but it does not bind the signs to those incoming nodes in the current renderer. Successful parsing alone is therefore insufficient; inspect the rendered polarity marks.

Step 1: calculate the loop transfer function

The loop transfer function is the product around the loop:

L(s) = C(s) G(s) H(s)
     = 4 × [1/(2s + 1)] × 1
     = 4/(2s + 1)

This is sometimes called loop gain, although it varies with s; it is not merely the controller's scalar gain of 4. Keeping H(s) in the product prevents a common mistake when the feedback sensor is not unity.

Step 2: reduce the negative-feedback loop

The diagram defines four equations:

E(s)   = R(s) - Y_m(s)
U(s)   = C(s)E(s)
Y(s)   = G(s)U(s)
Y_m(s) = H(s)Y(s)

Substitute from the bottom upward:

Y = CG(R - HY)
Y = CGR - CGHY
Y + CGHY = CGR
Y(1 + CGH) = CGR

Therefore the reference-to-output closed-loop transfer function is:

T(s) = Y(s)/R(s)
     = C(s)G(s) / [1 + C(s)G(s)H(s)]

Insert the three example models and clear the nested fraction:

T(s) = [4/(2s + 1)] / [1 + 4/(2s + 1)]
     = [4/(2s + 1)] / [(2s + 5)/(2s + 1)]
     = 4/(2s + 5)
     = 0.8/(0.4s + 1)

MIT's unity-feedback lecture writes the same negative-feedback structure as KG/(1 + KG) and uses it to analyze sensitivity and disturbance attenuation. MathWorks likewise defines negative feedback as the default sign for its feedback interconnection. For high-order numerical models, use a system-interconnection routine rather than manually forming G/(1 + GK): MathWorks warns that the literal algebraic expression can introduce cancelling poles and zeros and degrade numerical accuracy.

Step 3: read the pole and time constant

The closed-loop pole is the root of the denominator:

2s + 5 = 0
s = -5/2 = -2.5 s^-1

The pole is in the open left half-plane, so this first-order model is asymptotically stable. Rewriting the denominator as 0.4s + 1 exposes the time constant:

tau = 1/2.5 s^-1 = 0.4 s

Do not confuse the s in G(s) with the unit symbol s for seconds. In G(s), it names the Laplace variable; in 0.4 s, it names elapsed time.

Step 4: verify the unit-step response

For a unit step, R(s) = 1/s. The output transform and time response are:

Y(s) = [0.8/(0.4s + 1)] × (1/s)
y(t) = 0.8(1 - exp(-t/0.4)),  t >= 0

Evaluate fixed checkpoints with seconds carried through the exponent ratio:

TimeCalculationOutputInterpretation
0 s0.8(1 - exp(0))0.0000strictly proper model starts at zero
0.4 s = 1 tau0.8(1 - exp(-1))0.505763.2% of the final value
1.2 s = 3 tau0.8(1 - exp(-3))0.760295.0% of the final value, not of the reference
2.0 s = 5 tau0.8(1 - exp(-5))0.794699.3% of the final value
infinity0.8(1 - 0)0.8000steady state

The last distinction matters. “95% at three time constants” means 95% of 0.8, so the output is about 0.76; it does not mean the output has reached 0.95 of the unit reference.

The steady-state tracking error is:

e_ss = 1 - y(infinity)
     = 1 - 0.8
     = 0.2

Equivalently, for this type-0 unity-feedback loop, e_ss = 1/(1 + L(0)) = 1/(1 + 4) = 0.2. Increasing proportional gain would reduce that idealized step error and shorten the idealized time constant, but this example does not claim that arbitrary gain is safe or robust in a real plant with delay, higher-order poles, noise, and saturation.

Checks that should survive every edit

  1. The feedback arrow returns from Y(s) through H(s) to the negative input, and the reference enters the positive input.
  2. The forward numerator is C(s)G(s); the loop denominator includes C(s)G(s)H(s).
  3. Negative feedback produces 1 + L(s) in the denominator under the stated sign convention.
  4. Units are consistent: every term added to 2s + 1 is dimensionless, so the coefficient on s carries seconds.
  5. The only pole is -2.5 s^-1; the stated 0.4 s time constant is its reciprocal magnitude.
  6. The unit-step final value from T(0) is 4/5 = 0.8, matching the exponential response.
  7. Every numeric checkpoint uses t/tau in the exponential and is rounded only after evaluation.
  8. The source version, model assumptions, and feedback sign travel with the figure.

One high-value negative test is to change sum(+in, -H) to sum(+in, +H). The algebra becomes positive feedback:

T_positive(s) = 4/(2s + 1 - 4)
              = 4/(2s - 3)

Its pole is +1.5 s^-1, in the right half-plane, so the simplified linear model is unstable. A missing minus mark is therefore a changed system, not a typographic defect.

Failure modes and engineering boundary

Common review failures are tracing the feedback line to the wrong summing input, dropping the sensor transfer function from the loop product, treating controller gain as the entire loop gain, cancelling factors without checking hidden unstable dynamics, mixing continuous and discrete models, omitting delay, and quoting a settling value without saying whether it is relative to the final value or the reference.

Schematex renders topology and notation deterministically; it does not simplify transfer functions, simulate a response, identify a plant, calculate margins, test robustness, or select a controller. The worked model also says nothing about actuator authority, saturation recovery, sensor range, sampling rate, quantization, noise amplification, mechanical limits, or failure behavior.

Paste the source into the Schematex playground, confirm the rendered + and marks, and then replace one model element at a time. Recompute L(s), T(s), poles, units, final value, and at least the five time checkpoints after every change; if the real system is higher-order, delayed, sampled, nonlinear, or safety-related, move the validated model into the project's approved analysis and simulation workflow before drawing conclusions.

References

  1. Karl J. Åström and Richard M. Murray. Feedback Systems: An Introduction for Scientists and Engineers. Second edition, copyedited manuscript, Second edition, July 24, 2020, 2020. https://www.cds.caltech.edu/~murray/books/AM08/pdf/fbs-copyedit_24Apr20.pdf Accessed August 21, 2026.
  2. Massachusetts Institute of Technology OpenCourseWare. Principles of Automatic Control, Lecture 2. MIT 16.06, Fall 2012, Lecture notes, 2012. https://ocw.mit.edu/courses/16-06-principles-of-automatic-control-fall-2012/495d6e7f415fcffb27611c2eca2c71bc_MIT16_06F12_Lecture_2.pdf Accessed August 21, 2026.
  3. Massachusetts Institute of Technology OpenCourseWare. Systems and Controls, Lecture 9. MIT 2.04A, Spring 2013, Lecture notes, 2013. https://ocw.mit.edu/courses/2-04a-systems-and-controls-spring-2013/4ffff321ba1041bd4f76233f5adaf614_MIT2_04AS13_Lecture9.pdf Accessed August 21, 2026.
  4. MathWorks. feedback - Feedback connection of multiple models. Control System Toolbox documentation. https://www.mathworks.com/help/control/ref/inputoutputmodel.feedback.html Accessed August 21, 2026.
  5. MathWorks. tf - Transfer function model. Control System Toolbox documentation. https://www.mathworks.com/help/control/ref/tf.html Accessed August 21, 2026.
  6. MathWorks. step - Step response of dynamic system. Control System Toolbox documentation. https://www.mathworks.com/help/control/ref/dynamicsystem.step.html Accessed August 21, 2026.

Cite this article

Mara Voss. “Closed-loop transfer function: a negative-feedback worked example.” Schematex Research. Version 2026-08-21. Updated August 21, 2026. https://schematex.js.org/research/closed-loop-transfer-function-worked-example