9 System Type and Integrators

9.1 Theory

In the previous chapter we explored design techniques for second-order systems where the feedback controller was a PD-type control. Since second-order systems have two degrees of freedom, their transient response can be completely determined by the proportional and derivative gains. However, from the simulation results it can easily be observed that if there is a disturbance on the system, or if the controller does not know the system parameters exactly, then there will be a steady-state error in the output. The steady-state error can be effectively removed using an integrator in the control law. In this chapter we will explore these ideas in more detail and explain when and how integral control can be used to enhance steady-state tracking and to reduce the effect of disturbances.

9.1.1 Final Value Theorem

The key theoretical tool to understanding the steady-state error and the effect of integrators is the final value theorem, which we state and prove below.

.
Suppose that \(z(t)\) and \(Z(s)\) are Laplace transform pairs, and suppose that \(\lim_{t\to\infty}z(t)\) is finite, then \[\lim_{t\to\infty}z(t) = \lim_{s\to 0} sZ(s).\]

Interactive check

Final value theorem validity explorer

The final value theorem is useful only when the final value exists. Select a transform, predict whether the theorem applies, and then check the poles of sY(s).

Step 1: form sY(s)

Step 2: check poles of sY(s)

Step 3: make a prediction before checking

conceptual response y(t) time

Numeric final-value check

For Y(s) = 3 / (s(s + 4)), enter the final value if the final value theorem applies.

Show solution

Answer: 0.75. Since sY(s) = 3/(s + 4), the pole is at s = -4 and the theorem applies; lims->0 3/(s + 4) = 3/4.

9.1.2 System Type for Reference Tracking

Block diagram for reference tracking.

Consider the closed-loop system shown in Fig. 9.1. The transfer function from the reference \(r\) to the error \(e=r-y\) is computed as \[\begin{aligned} & E(s) = R(s) - P(s)C(s)E(s) \\ \implies & E(s) = \frac{1}{1+P(s)C(s)}R(s) \end{aligned}\]

Suppose that \(r(t)\) is a step of size one, then \(R(s)=\frac{1}{s}\) and \[E(s) = \frac{1}{1+P(s)C(s)}\frac{1}{s}.\] Assuming that the closed-loop system is stable and therefore that \(\lim_{t\to\infty}e(t)\) is finite, then the final value theorem gives \[\begin{aligned} \lim_{t\to\infty}e(t) &= \lim_{s\to 0} sE(s) \\ &= \lim_{s\to 0} s\frac{1}{1+P(s)C(s)}\frac{1}{s} \\ &= \lim_{s\to 0}\frac{1}{1+P(s)C(s)} \\ &= \frac{1}{1+\lim_{s\to 0} P(s)C(s)}. \end{aligned}\] Let \[M_p \stackrel{\triangle}{=}\lim_{s\to 0} P(s)C(s),\] then \[\lim_{t\to\infty}e(t) = \frac{1}{1+M_p}.\]

Now suppose that \[P(s)C(s) = \frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{(s+p_1)(s+p_2)\cdots(s+p_n)},\] then \[M_p = \lim_{s\to 0} P(s)C(s) = \frac{Kz_1z_2\cdots z_m}{p_1p_2\cdots p_n}.\] In this case, the steady-state error is \(\frac{1}{1+M_p}\) which is finite. Note also that the DC gain of the closed-loop system is \[k_{DC} = \frac{1}{1+M_p}.\]

Now suppose that \(P(s)C(s)\) contains a pole at the origin, or in other words, one free integrator, i.e., \[P(s)C(s) = \frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{s(s+p_1)(s+p_2)\cdots(s+p_n)}.\] In this case we have \[M_p = \lim_{s\to 0} P(s)C(s) = \infty,\] and the steady-state error is \[\lim_{t\to\infty}e(t) = \frac{1}{1+\infty} = 0.\] Therefore, one free integrator in \(P(s)C(s)\) implies that the steady-state error to a step is zero. Note that multiple free integrators, i.e., \[P(s)C(s) = \frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{s^q(s+p_1)(s+p_2)\cdots(s+p_n)},\] gives that same result for \(q\geq 1\).

Now suppose that \(r(t)\) is a unit ramp, or in other words that \(R(s)=\frac{1}{s^2}\). In this case the error is given by \[E(s) = \frac{1}{1+P(s)C(s)}\frac{1}{s^2}.\] Again assuming that the closed-loop system is stable, the final value theorem gives \[\begin{aligned} \lim_{t\to\infty} e(t) &= \lim_{s\to 0} sE(s) \\ &= \lim_{s\to 0} s \frac{1}{1+P(s)C(s)}\frac{1}{s^2} \\ &= \lim_{s\to 0} \frac{1}{s+sP(s)C(s)} \\ &= \frac{1}{\lim_{s\to 0} sP(s)C(s)}. \end{aligned}\] Defining \[M_v = \lim_{s\to 0} sP(s)C(s),\] gives \[\lim_{t\to\infty} e(t) = \frac{1}{M_v}.\] If \(P(s)C(s)\) has no free integrators, i.e., \[P(s)C(s) = \frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{(s+p_1)(s+p_2)\cdots(s+p_n)}\] then \[M_v = \lim_{s\to 0} s\frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{(s+p_1)(s+p_2)\cdots(s+p_n)} = 0.\] Therefore \[\lim_{t\to\infty} e(t) = \frac{1}{0}=\infty.\] If, on the other hand, \(P(s)C(s)\) has one free integrator, i.e., \[P(s)C(s) = \frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{s(s+p_1)(s+p_2)\cdots(s+p_n)}\] then \[M_v = \lim_{s\to 0} s \frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{s(s+p_1)(s+p_2)\cdots(s+p_n)} = \frac{Kz_1z_2\cdots z_m}{p_1p_2\cdots p_n},\] therefore the steady-state error is finite. If \(P(s)C(s)\) has two or more free integrators, then \[M_v = \lim_{s\to 0} s \frac{K(s+z_1)(s+z_2)\cdots(s+z_m)}{s^q(s+p_1)(s+p_2)\cdots(s+p_n)} = \infty,\] when \(q\geq 2\), therefore \[\lim_{t\to\infty} e(t) = \frac{1}{\infty} = 0.\] Therefore, the number of free integrators in \(P(s)C(s)\) is the key parameter for reference tracking with zero steady-state error.

For the reference tracking problem, we say that the system is type \(q\) if the steady-state error to input \(R(s) = \frac{1}{s^{q+1}}\) is finite and if the steady-state error to input \(R(s)=\frac{1}{s^p}\) is zero for \(1\leq p\leq q\). In general, for the feedback system shown in Fig. 9.1, the steady-state tracking error when \(R(s)=\frac{1}{s^{q+1}}\) is given by \[\lim_{t\to\infty}e(t) = \lim_{s\to 0} s E(s) = \lim_{s\to 0} \left(\frac{1}{1+P(s)C(s)}\right)\left(\frac{1}{s^q}\right).\] Table 12.1 summarizes the tracking error for different inputs as a function of system type, where \[\begin{aligned} M_p &= \lim_{s\to 0}P(s)C(s) \\ M_v &= \lim_{s\to 0}sP(s)C(s) \\ M_a &= \lim_{s\to 0}s^2P(s)C(s). \end{aligned}\]

System Type Step (\(\frac{1}{s}\)) Ramp (\(\frac{1}{s^2}\)) Parabola (\(\frac{1}{s^3}\)) \(\cdots\)
\(0\) \(\frac{1}{1+M_p}\) \(\infty\) \(\infty\) \(\cdots\)
\(1\) \(0\) \(\frac{1}{M_v}\) \(\infty\) \(\cdots\)
\(2\) \(0\) \(0\) \(\frac{1}{M_a}\) \(\cdots\)
\(3\) \(0\) \(0\) \(0\) \(\cdots\)
\(\vdots\) \(\vdots\) \(\vdots\) \(\vdots\)

Reference tracking verse system type.

Interactive figure

Reference-tracking system type explorer

Use the controls to connect the table to a visual prediction. The input order is determined by R(s), while the tracking type is determined by the number of free integrators in P(s)C(s).

reference r(t) output y(t) time
Figure 1.3. Reference and output. Finite steady-state error appears as a persistent vertical gap.
tracking error e(t) = r(t) - y(t) time
Figure 1.4. Error response. This is the plot that determines zero, finite, or infinite steady-state error.
Prediction

Why

Error constant effect

As an example, consider the feedback system shown in Fig. 9.2.

The system type for reference tracking for this system is type 1.

The open-loop system \[P(s)C(s) = \frac{k_P}{s(s+2)}\] has one free integrator (pole at zero) and therefore the system is type 1. From Table 12.1 the tracking error when the input is a step is zero, and the tracking error when the input is a ramp of slope one is \[\lim_{t\to\infty}e(t) = \frac{1}{M_v} = \frac{1}{\lim_{s\to 0} sP(s)C(s)} = \frac{1}{\frac{k_P}{2}} = \frac{2}{k_P}.\] The tracking error when the input is a parabola, or higher-order polynomial, is \(\infty\), meaning that \(y(t)\) and \(r(t)\) diverge as \(t\to\infty\).

As another example, consider the system shown in Fig. 9.3.

The system type for reference tracking for this system is type 0.

In this case, the open-loop system \[P(s)C(s) = \frac{k_D s + k_P}{(s+3)(s+4)}\] does not have any free integrators (poles at zero) and therefore the system is type 0. From Table 12.1 the tracking error when the input is a step is \[\lim_{t\to\infty}e(t) = \frac{1}{1+M_p} = \frac{1}{1+\lim_{s\to 0} P(s)C(s)} = \frac{1}{1+\frac{k_P}{12}} = \frac{12}{12+k_P}.\] The tracking error when the input is a ramp, or higher-order polynomial, is \(\infty\), meaning that \(y(t)\) and \(r(t)\) diverge as \(t\to\infty\).

If, on the other hand, a PID controller is used as shown in Fig. 9.4 where \[U(s) = \left(k_P + \frac{k_I}{s} + k_D s\right)E(s) = \left(\frac{k_D s^2 + k_P s + k_I}{s}\right)E(s),\]

The system type for reference tracking for this system is type 1.

then the open-loop system \[P(s)C(s) = \frac{k_D s^2 + k_Ps + k_I}{s(s+3)(s+4)}\] has one free integrator (pole at zero) and therefore the system becomes type 1 by design. From Table 12.1 the tracking error when the input is a step is zero, and the tracking error when the input is a ramp is \[\lim_{t\to\infty}e(t) = \frac{1}{M_v} = \frac{1}{\lim_{s\to 0} sP(s)C(s)} = \frac{1}{\frac{k_I}{12}} = \frac{12}{k_I}.\] The tracking error when the input is a parabola, or higher-order polynomial, is \(\infty\), meaning that \(y(t)\) and \(r(t)\) diverge as \(t\to\infty\).

9.1.3 System Type for Input Disturbances

Consider the general feedback loop shown in Fig. 9.5. There are in general four inputs to the system, namely the reference input \(r(t)\), the input disturbance \(d_{in}(t)\), the output disturbance \(d_{out}(t)\), and the sensor noise \(n(t)\). In general \(r(t)\), \(d_{in}(t)\), and \(d_{out}(t)\) are signals with low frequency content, and the sensor noise \(n(t)\) has high frequency content. The negative sign on the disturbance and noise terms is for notational convenience.

General feedback loop with reference input r(t), input disturbance d_{in}(t), output disturbance d_{out}(t), and sensor noise n(t).

We can compute the transfer function from each input to the error signal by following the signal flow to obtain \[E(s) = R(s) + N(s) + D_{out}(s) + P(s)D_{in}(s) - P(s)C(s)E(s).\] Solving for \(E(s)\) gives \[\begin{gathered} E(s) = \frac{1}{1+P(s)C(s)} R(s) + \frac{1}{1+P(s)C(s)}N(s) \\ + \frac{1}{1+P(s)C(s)}D_{out}(s) + \frac{P(s)}{1+P(s)C(s)}D_{in}(s). \end{gathered}\] Since the transfer function from \(N(s)\) and \(D_{out}(s)\) to \(E(s)\) is identical to the transfer function from \(R(s)\) to \(E(s)\), the system type as defined in the previous section for reference inputs, also characterizes the steady-state response to output disturbances and noise. However, the transfer function from the input disturbance to the error is different, and so we need to further analyze system type with respect to input disturbances.

Suppose that the input disturbance is given by \(D_{in}(s) = \frac{1}{s^{q+1}}\), then by the final value theorem, the steady-state error due to the input disturbance is \[\lim_{t\to\infty} e(t) = \lim_{s\to 0} s\frac{P(s)}{1+P(s)C(s)}D_{in}(s) = \lim_{s\to 0} \left(\frac{P(s)}{1+P(s)C(s)}\right)\left(\frac{1}{s^q}\right).\] The system type with respect to input disturbance is the value of \(q\) such that the steady-state error is finite, and the steady-state error is zero for \(D_{in}(s) = \frac{1}{s^p}\) for \(1\leq p \leq q\).

For example, consider the system shown in Fig. 9.6. Recall from the discussion above, that the system type with respect to the reference input is type 1.

The system type for input disturbances for this system is type 0.

For the input disturbance we have \[\begin{aligned} \lim_{t\to\infty} e(t) &= \lim_{s\to 0} \left(\frac{P(s)}{1+P(s)C(s)}\right)\left(\frac{1}{s^q}\right) \\ &=\lim_{s\to 0} \left(\frac{\frac{1}{s(s+2)}}{1+\left(\frac{1}{s(s+2)}\right)(k_Ds+k_P)}\right)\left(\frac{1}{s^q}\right) \\ &=\lim_{s\to 0} \left(\frac{1}{s(s+2)+(k_Ds+k_P)}\right)\left(\frac{1}{s^q}\right) \\ &=\lim_{s\to 0} \left(\frac{1}{k_P}\right)\left(\frac{1}{s^q}\right) \end{aligned}\] which is finite when \(q=0\). Therefore, the system type with respect to input disturbances is type 0 and the steady-state error to a step input disturbance is \(\frac{1}{k_P}\) whereas the steady-state error with respect to a ramp and higher-order polynomials is infinite.

If, on the other hand, we add an integrator as in Fig. 9.7, then \[\begin{aligned} \lim_{t\to\infty} e(t) &= \lim_{s\to 0} \left(\frac{P(s)}{1+P(s)C(s)}\right)\left(\frac{1}{s^q}\right) \\ &=\lim_{s\to 0} \left(\frac{\frac{1}{s(s+2)}}{1+\left(\frac{1}{s(s+2)}\right)(\frac{k_Ds^2+k_Ps+k_I}{s})}\right)\left(\frac{1}{s^q}\right) \\ &=\lim_{s\to 0} \left(\frac{s}{s^2(s+2)+(k_Ds^2+k_Ps+k_I)}\right)\left(\frac{1}{s^q}\right) \\ &=\lim_{s\to 0} \left(\frac{1}{k_I}\right)\left(\frac{1}{s^{q-1}}\right) \end{aligned}\] which is finite when \(q=1\). Therefore, the system type with respect to input disturbances is type 1 and the steady-state error to a step on the input disturbance is zero. The steady-state error with respect to a ramp on the input disturbance is \(\frac{1}{k_I}\) whereas the steady-state error with respect to a parabola and higher-order polynomials on the input disturbance is infinite.

The system type for input disturbances for this system is type 1.

Therefore, the system type with respect to input disturbances is related to the number of free integrators in the controller \(C(s)\) and not in the open-loop system \(P(s)C(s)\). As a consequence, while an integrator may not be necessary for steady-state tracking, it is often necessary to reject constant input disturbances.

Interactive figure

Disturbance-path explorer

Select a case to highlight where the signal enters the loop and which low-frequency path determines the steady-state error. The key distinction is that an input disturbance passes through P(s), while output disturbance and sensor noise use the same denominator path as reference tracking.

C(s) P(s) + - r d_in d_out n y measured feedback path

The highlighted path shows the signal path being used to compute E(s). First identify the entry point, then use the matching transfer function below.

Error path

System type

Implication

Transfer-path practice

Practice problem: derive the error paths

Use the signs in the block diagram to derive the transfer functions from the external inputs R, D, and N to the error E. Do this before counting free integrators.

R + - Gc(s) - D Gp(s) y N - H(s)
Figure 9.x. Transfer-path diagram for Problem 5. The disturbance D enters with a negative sign before the plant. The sensor noise N is subtracted from the measured output before H(s).

Q1. Transfer functions into the error

Which set gives the transfer functions from R, D, and N to E for the diagram above?

Q2. Intuition for reference input R

For the reference path E/R, which free integrators most directly increase the system type?

Q3. Intuition for disturbance input D

For the disturbance path E/D, which free integrators should you look at first?

Q4. Intuition for sensor noise N(s)

For the low-frequency sensor-noise path E/N, which block or signal has the free integrators that most directly affect the type?

R + - 1 s(s + 1) - D 1 s2(s + 2) y N - s + 2 s(s + 1)
Figure 9.x. Practice problem with specific transfer functions. Use your transfer paths from Q1 and the final value theorem to complete the table.

Final-value computation

For the specific system above, enter the final value of e(t) for each input path and polynomial input. Use infinity for an unbounded error.

Input path Step Ramp Parabola
R to E
D to E
N to E

Show solution

Solution: The loop product is GcGpH = 1/\[s4(s+1)2\]. Therefore, E/R behaves like s4, E/D behaves like s, and E/N behaves like 2s3 near s = 0. Thus, R gives 0 for step, ramp, and parabola; D gives 0 for step, 1 for ramp, and infinity for parabola; N gives 0 for step, ramp, and parabola.

9.2.1 image Example Problem 3.1.12

When the controller for the single-link robot arm is PD control, what is the system type? Characterize the steady-state error when the reference input is a step, a ramp, and a parabola. How does this change if you add an integrator?

Consider the case where a constant disturbance acts at the input to the plant (for example gravity in this case). What is the steady-state error to a constant input disturbance when the integrator is not present and when it is present?

Design Study A guided exercise

Classify tracking and disturbance type

Count free integrators in the relevant loop transfer function before applying the final value theorem.

Closed-loop system diagram for system type analysis.

Use this closed-loop signal map to decide which loop transfer function determines tracking and disturbance error.

Step 1. PD tracking type

Step 2. PID tracking type

Step 3. Error interpretation

9.3 Design Study B. Inverted Pendulum

9.3.1 image Example Problem 3.2.12

When the inner loop controller for the inverted pendulum is PD control, what is the system type with respect to tracking of the inner loop? Characterize the steady-state error when \(\tilde{R}_{\theta}\) is a step, a ramp, and a parabola. What is the system type with respect to an input disturbance?

When the outer loop controller for the inverted pendulum is PD control, what is the system type of the outer loop with respect to tracking? Characterize the steady-state error when \(r_z\) is a step, a ramp, and a parabola. How does this change if you add an integrator? What is the system type with respect to an input disturbance for both PD and PID control?

Design Study B guided exercise

Classify pendulum system type

Count free integrators separately for the inner and outer loops.

Inner-loop system type diagram for pendulum.

Use the inner and outer loop diagrams to decide which loop transfer function determines each steady-state error.

Step 1. Inner-loop tracking type

Step 2. Outer-loop PD tracking type

Step 3. Outer-loop PID tracking type

9.4 Design Study C. Satellite Attitude Control

9.4.1 image Example Problem 3.3.12

When the inner loop controller of the satellite system is PD control, what is the system type of the inner loop with respect to the reference input and with respect to the disturbance input? Characterize the steady-state error when the reference input is a step, a ramp, and a parabola. Characterize the steady-state error when the input disturbance is a step, a ramp, and a parabola.

With PD control for the outer loop, what is the system type of the outer loop with respect to the reference input and with respect to the disturbance input? Characterize the steady-state error when each of the reference and disturbance inputs is a step, a ramp, or a parabola. How does this change if you add an integrator?

Design Study C guided exercise

Classify satellite system type

Separate the reference-tracking and disturbance-rejection paths for the inner and outer loops.

Step 1. Inner loop with PD control

Step 2. Outer loop with PD control

Step 3. Add an integrator

9.5 Knowledge Check

Use these checks to test final-value theorem conditions, reference-tracking type, and disturbance-path type before moving on.

Q1. Final value theorem condition

Before accepting lims->0 sY(s) as the final value, what must be true?

Q2. Type number

For reference tracking, a type 1 system has how many free integrators in P(s)C(s)?

Q3. Tracking consequence

For a stable type 1 reference-tracking system, what steady-state tracking behavior should you expect?

Q4. Input-disturbance type

For input disturbances in the chapter examples, where is the free integrator that most directly improves constant disturbance rejection?

Q5. What integral action most directly helps

Which issue is integral action most directly intended to improve in this chapter?

Q6. Ramp-error calculation

A type 1 reference-tracking system has Mv = 4. For a unit ramp input, enter the steady-state error.

Show solution

Answer: 0.25. For a type 1 system tracking a unit ramp, ess = 1/Mv = 1/4.

Q7. Step-error calculation

For the same type 1 reference-tracking system, enter the steady-state error for a unit step input.

Show solution

Answer: 0. A type 1 system gives zero steady-state error for a step input, assuming the closed loop is stable.

Q8. Classify tracking type

If P(s)C(s) has no free integrators, enter the reference-tracking system type.

Show solution

Answer: Type 0. The type equals the number of free integrators in P(s)C(s) for reference tracking.

Q9. Disturbance-path identification

In one word or expression, where should you look first for the free integrator that improves input-disturbance rejection in the chapter examples?

Show solution

Answer: The controller C(s). For input disturbances, the chapter examples show that adding an integrator to the controller changes the disturbance type.

Q10. Error transfer from reference

For unity negative feedback with plant P(s) and controller C(s), what is the transfer function from R(s) to E(s)?

Q11. Input-disturbance path

For a disturbance D(s) added at the plant input in unity feedback, which closed-loop factor determines the error path magnitude from D(s) to E(s)?

Q12. Count the free integrators

For reference tracking with C(s)P(s)H(s) = 10(s + 2)/(s(s + 5)), what is the system type?

Q13. Disturbance type

When determining the system type for a disturbance input, what should you count?

Q14. Ramp-error constant

A stable type 1 reference-tracking system has Mv = 5. What is the steady-state error for a unit ramp?

9.6 Notes and References

The PID structure analyzed in this chapter uses a differentiator on the error as shown in Fig. 7.1 instead of differentiating the output variable as shown in Fig. 7.2. It is straightforward to show, using the final value theorem, that the system type does not change under the two configurations. However, the value of the steady-state error does change and is not necessarily given by the simple formulas in Table 12.1.