SimuveliqLearnEspañolOpen the simulators
Learn › Engineering

Control systems: blocks, response and stability

A control system makes a variable (a motor's speed, an oven's temperature, an arm's position) follow a reference despite disturbances. This topic explains how it is described with transfer functions and block diagrams, how it responds in time, when it is stable and how much error it leaves; the next topic deals with designing the controller.

Open loop and closed loop

In open loop the controller drives the plant without looking at the result: if something changes (a load, wear), the output drifts and nothing corrects it. In closed loop a sensor measures the output, it is compared with the reference and the controller acts on the difference, the error . Feedback corrects disturbances and model errors, but it can make unstable a system that was not.

+−Gc(s)Gp(s)++H(s)R(s)referenceE(s)U(s)C(s)outputD(s)disturbancecontrollerplantsensor
Control loop: reference, controller, plant, disturbance and sensor.

Transfer function, poles and zeros

With the Laplace transform and zero initial conditions, a linear differential equation becomes a ratio of polynomials in : the transfer function . The roots of the denominator are the poles and those of the numerator, the zeros. For example, a motor with inertia and friction driven by a torque :

Each pole contributes a term to the response: a negative real pole gives an exponential that dies out, a complex pair an oscillation of frequency with envelope . That is why a system is stable if and only if all its poles have negative real part.

ReImstable (Re < 0)unstable
Pole location in the s-plane and the shape of the response: farther left, it dies out faster; higher up, it oscillates faster.

Block diagram algebra

A block diagram reduces to a single transfer function with three rules, plus moving summing or pickoff points when loops overlap (when a summing point moves across a block, the other input must go through the same block):

SeriesG1G2=G1G2ParallelG1G2++=G1 + G2Feedback+−GH=G / (1 + GH)
The three basic reductions. With positive feedback the denominator is 1 − GH.

The denominator set to zero is the characteristic equation: its roots are the closed-loop poles. is the open-loop function, the gain a signal goes through when it travels around the loop.

First- and second-order response

A first-order system responds to a step with : it reaches 63.2% at and stays within 2% of the final value after about . A second-order one is written with its natural frequency and its damping ratio :

With (underdamped) the response oscillates and overshoots the final value. The performance measures are:

ζ0.20.30.40.50.60.70.8
52.7 %37.2 %25.4 %16.3 %9.5 %4.6 %1.5 %

The overshoot depends only on , that is, on the angle of the poles; the settling time, on their real part . With (critical damping) there is no overshoot, and with both poles are real and the response is slower. comes from the envelope: it is a bound, and the real response usually enters the band earlier.

Higher-order systems look like a second-order one when two complex poles (the dominant ones) are much closer to the imaginary axis than the rest (about 5 times). A zero near the dominant poles raises the overshoot; that is why the formulas above are a guide and the simulated response is what counts.

Stability: the Routh–Hurwitz criterion

To know whether the poles are on the left there is no need to compute them. With the characteristic equation the Routh array is built: the first two rows are the alternate coefficients and each next row comes from the two before it:

  • The number of sign changes in the first column is the number of poles in the right half plane; with no changes, the system is stable.
  • If a coefficient is missing or negative (with ), there is already a pole outside: the array is not needed.
  • With a gain in the equation, requiring the first column to be positive gives the stable range of . At the limit a row of zeros appears: the auxiliary polynomial of the row above gives the poles on the axis, the frequency at which the system oscillates without growing or dying out.

Steady-state error

The error that remains once the response settles comes from the final value theorem, (valid only if the closed loop is stable). With unity feedback it depends on the system type, the number of integrators () in , and on the error constants:

InputType 0Type 1Type 2
Step 00
Ramp ∞0
Parabola ∞∞

Raising the gain reduces the error, but moves the poles toward instability: it is the basic trade-off of control. An integrator in the controller (PI action) raises the type and removes the step error. With non-unity feedback, the error is computed with the equivalent unity loop .

Common mistakes

  • Using with negative feedback (or the other way around): the sign in the denominator is the opposite of the summing point's.
  • Applying the final value theorem to an unstable system: it gives a number, but the output grows without bound.
  • Counting the integrators of instead of those of the open-loop function for the system type.
  • Taking as exact: it is the envelope; the response usually settles earlier.
  • Forgetting that with a sensor the output settles at times the reference, not at the reference.

Worked examples

Example 1Reducing a diagram with several loops

, , , with an inner loop around , another from the output of back to the second summing point, and the outer unity feedback. Find and, with , its poles and the final value for a unit step.

Solution

  1. The outer loop returns to the first summing point, before , and overlaps the loop, so it cannot be closed as it is. That summing point is moved to the right of : the reference enters as and the feedback must also go through , so it reaches the second summing point as .
  2. Now two feedbacks reach the second summing point from , and : in parallel, . The inner loop gives , in series with ; it is closed with and multiplied by the at the input:
  3. . Substituting and multiplying top and bottom by : .
  4. With : , poles and : stable. Final value: , so the step error is (the system is type 0 with respect to ).
; with : poles , and .

Solve it in Simuveliq

  1. In Engineering → Control systems, in Examples, «Load diagram» → Multiple loops (classic reduction).
  2. Step-by-step reduction walks through the 4 steps (move summing point, parallel, two closed loops) with ▶; Closed-loop transfer function gives the polynomial in K, and with Value of K = 2 the Poles and zeros table gives −2 and −1 ± 1.414j, and the step response, c(∞) = 0.3333.

Example 2Second-order response and disturbance

A proportional controller drives the plant with unity feedback; a disturbance is added at the output. Find , , the overshoot, the times and the ramp error, and the effect of a disturbance step.
t [s]c(t)0.511.522.50.51Mp = 20.8%tp = 0.785ts = 1.87 (2 %)tr = 0.34 (10–90 %)

Solution

  1. . Comparing with the standard form: rad/s and → . Poles: .
  2. , s and s (the envelope bound; the curve enters the 2% band at 1.87 s).
  3. The plant has an integrator: type 1. , so (unit ramp) , and the step error is zero.
  4. From the disturbance: , which is 0 at : a disturbance step at the output is fully corrected. The closed loop has the same poles for both inputs.
, rad/s, , s, s (bound 2 s), ; the disturbance step leaves no error.

Solve it in Simuveliq

  1. «Load diagram» → Output disturbance (K = 20). The poles table gives −2 ± 4j with ζ = 0.447 and ωn = 4.472; the step response measures Mp = 20.79%, tp = 0.7867 s, tr = 0.344 s and ts 2% = 1.869 s (tp comes from the sampled curve, which is why it is not exactly π/4).
  2. Step · ramp error gives 0 · 0.2 and the error table, Kv = K/4 = 5. In Input to analyze choose D(s): T(s) = (s² + 4s)/(s² + 4s + K) and the response dies out to c(∞) = 0.

Example 3Stable range of K with Routh

with unity feedback. For which is it stable? At what frequency does it oscillate at the limit? What ramp error does it leave with , and can it be brought down to 0.1 with the gain alone?

Solution

  1. Characteristic equation: .
  2. Routh array: : 1, 5; : 6, ; : ; : . The first column is positive if .
  3. With the row is zero. The auxiliary polynomial gives : it oscillates at 2.236 rad/s.
  4. Type 1, . With : and . For it would need , that is , which is outside the stable range: the gain alone cannot do it; a compensator is needed (lag or PI, next topic).
Stable for ; at it oscillates at 2.236 rad/s. With , ; an error of 0.1 would need , unstable.

Solve it in Simuveliq

  1. «Load diagram» → Closed loop with K (Routh). The Stable range of K card gives 0 < K < 30 and the Stability (Routh–Hurwitz) block shows the array with K = 10 (row s¹ = 3.333).
  2. Step · ramp error = 0 · 0.5. In Which K gives a given error?, ramp with error 0.1, it answers K = 50 and marks it unstable. In the root locus, the «jω-axis crossing» step gives K = 30 and ω = ±2.236 rad/s.

Example 4Non-unity feedback

and in series, with a sensor in the feedback path. Find , the final value for a unit step and the error .

Solution

  1. Series: . Loop: .
  2. Routh: : 1, 5; : 6, 20; : (30 − 20)/6 = 1.667; : 20. Stable.
  3. Final value: . Even though the loop has an integrator, the output does not go to 1: the loop makes zero the difference between and what the sensor measures, , so .
  4. Error . For the output to follow the reference, the sensor must have a gain of 1 in steady state (or the reference is scaled by ).
, stable, and .

Solve it in Simuveliq

  1. «Load diagram» → Non-unity feedback. Closed-loop transfer function gives (10s + 50)/(s³ + 6s² + 5s + 20), the step response c(∞) = 2.5 and Step · ramp error = −1.5 · ∞.
  2. Notice the overshoot too, 81.31%: the dominant poles −0.1319 ± 1.863j have ζ = 0.0706, almost no damping.

Related topics