Is a proportional controller right for you? Ask your control engineer! Part I

In another undergraduate class I teach here at UCSD students develop hands on control projects and many of them have not taken a class in controls. They have to quickly design and implement controllers often using really cheap and noisy sensors and slow processing times. In that context, a proportional controller, which might be the first choice in a search for a suitable controller, is rarely adequate. I will deal with the issue of noisy sensors and how they severely limit the closed-loop bandwidth in another post. In this one I want to address the issue of large delays.

Large delays often spell trouble for feedback systems. See Section 7.7 for a discussion on how the phase margin can get compromised by the presence of delays. Delays also greatly complicate feedback analysis and continue to provide countless motivations for research activity in the field of controls. See the delay example is Section 7.5 for a teaser.

So here is a very simplified setup that captures the issue I would like to analyze:

  1. Your controller is a discrete-time device, for example a computer that collects samples of your system output, $y$, every $\tau>0$ seconds, and that applies a constant system input between consecutive sampling times.
  2. The system you interact with is dynamic, so that the effect of the input signal you apply to the system at time, say, $t – \tau$, that is $u(t- \tau)$, will be reflected on your measurement output only the next sampling time, that is $\tau$ seconds ahead, $y(t)$.
  3. Linear, asymptotically stable with DC gain equal to $G$ is a good assumption for the system you interact with.
  4. $\tau$ seconds is an eternity compared with the time-response of the system you are interacting with so as to be reasonable to expect that after $\tau$ seconds your system output, $y(t)$, has reached steady-state in response to the input you applied, $u(t – \tau)$, at time $t – \tau$.

If all of the above are reasonable assumptions then one might model the system response as a simple delay. That is

$$y(t) = G \, u(t – \tau)$$

where $G$ is the system’s DC gain.

Your controller is also a discrete-time and (potentially) dynamic device, namely

$$u(t) = K(y(t), y(t-\tau), y(t-2\tau), \cdots).$$

A proportional controller is simply the static controller

$$u(t) = K (\bar{y}(t) – y(t)).$$

In closed-loop you would then expect that

$$y(t) = G \, u(t – \tau) = G \, K (\bar{y}(t – \tau)) – y(t – \tau)).$$

Even though we do not deal with discrete-time systems in the book, stability in this case is simple enough to analyze by constructing the response. As in continuous-time linear systems, stability in response to a bounded input can be assessed by assessing stability with respect to the initial conditions alone. That is, consider $\bar{y}(t) = 0$ and $y(t) = 0$, $t < 0$, and $y(0) \neq 0$. In this case

$$\begin{aligned}
y(\tau) &= -G\, K y(0), \\
y(2 \tau) &= -G\, K y(\tau) = G^2 K^2 y(0), \\
\vdots \quad & \quad \quad \vdots \\
y(n \tau) &= (-1)^{n} (G K)^n y(0)
\end{aligned}$$

A couple of comments are in order. First, note that even if $G > 0$ and $K> 0$ that the output oscillates, that is $y(n \tau)$ and $y((n-1)\tau)$ have different signs, even though the system is (discrete-time) first-order (one delay). Second, boundedness of the response is possible only if $(G K)^n$ is bounded. That requires

$$|G K| < 1$$

or $|K| < |G|^{-1}$. Another surprise, even though we have a (discrete-time) first-order system in closed-loop under proportional control, the resulting closed-loop system is not stable for all positive values of $K$. That is in contrast with what one would expect from, say, a root-locus analysis as in Chapter 6, where (stable) first-order systems remained stable for all positive values of $K$. Discrete-time stability seems to be an altogether different concept!

A consequence of the above analysis is that if one implements a discrete-time proportional controller for a system as the one described above with a relatively high gain, say a DC motor where tens of volts will lead to thousands of RPMs, then one will find out that the closed-loop is not stable unless the value of $K$ is made really small!

Not only stability is compromised but also performance. Assume that you have a constant reference signal $\bar{y}(t) = \bar{y}$, $t \geq 0$. In this case a stable closed-loop system will converge to a steady-state constant solution, that is a solution in which $y((n-1)\tau) = y(n\tau) = \tilde{y}$. Such a steady-state solution can be calculated by solving

$$\tilde{y} = G \, K (\bar{y}- \tilde{y})
\quad \implies \quad
\tilde{y} = \frac{G\, K}{1 + G \, K} \bar{y}.$$

The above formula is very similar to what one would have obtained from a steady-state analysis in continous-time. Indeed, the steady-state gain is the same as the familiar $H$ transfer-function found in many parts of the book, including Chapter 1! This time however, stability puts a big constraint on how well we can track the constant reference. This is because $|G \, K| < 1$ implies that, for positive $G$ and $K$, that $(G K)^{-1} > 1$ so that

$$\left | \frac{G \, K}{1 + G\, K} \right | = \left | \frac{1}{1 + (G \, K)^{-1}} \right | < \frac{1}{2}$$

At best the closed-loop system can only reach half of that reference, often less! If one was lucky to start with a low enough gain that was stabilizing in the first place, one will invariably try to increase that gain to try to improve the closed-loop tracking performance. And will reach instability before been able to get tracking performance better than 50%!

That’s when I get called in by a perplexed and frustrated student, even more so if they have taken a controls class before, shouting “It is not working!” What would you tell the desperate student? Stay tuned if you would like to know my answer.

3 thoughts on “Is a proportional controller right for you? Ask your control engineer! Part I”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.