Analyzing Closed-Loop Behavior with Convolution
The second in a two-part series explaining how linear process behavior can be predicted mathematically.
Vance VanDoren, Ph.D., P.E. Control Engineering -- Control Engineering, 7/1/2008
The repeatable behavior of a linear process allows a process controller to predict the future effects of its current efforts. As described in “Process Controllers Predict the Future” (March 2008), a controller’s predictive abilities can be reduced to a mathematical formula by conducting the following experiment:
1) Stimulate the process in open-loop mode by forcing the controller to apply a unity impulse; that is, a single control effort that is one unit in magnitude and Δt seconds in duration.
2) Determine the process’s open-loop impulse response by measuring the process variable every Δt seconds after the impulse.
3) Label those measurements in chronological order as h(0), h(1), h(2), etc. and construct a single infinitely long “number” H using those values as “digits”. That is, let
H = h(0), h(1), h(2), …
4) Start over and let the controller apply an arbitrary sequence of control efforts to the process. Label those values u(0), u(1), u(2), etc., and use them to construct a second infinitely long number U:
U = u(0), u(1), u(2), …
5) Compute Y = H*U using convolution, which multiplies H and U together just as if they were normal multi-digit numbers. That is, use normal multiplication and addition to compute
y(0) = u(0) · h(0)
y(1) = u(0) · h(1) + u(1) · h(0)
y(2) = u(0) · h(2) + u(1) · h(1) + u(2) · h(0)
and so on until the kth sampling interval when
y(k) = u(0) · h(k) + u(1) · h(k-1) + …
+u(k-1) · h(1) + u(k) · h(0)
|
|
The behavior of this closed-loop control system can be predicted by constructing four “numbers” – S, D, G, and H - with “digits” consisting of sampled values of the setpoint, the disturbance, the open-loop impulse response of the process, and the open-loop impulse response of the controller, respectively. The sequence of process variable measurements Y that will result from any given combination of S, D, G, and H can then be computed from
|
where the star (*) indicates convolution and the two quotients indicate deconvolution. |
If the process is truly linear and there are no other influences affecting the process variable, then these computed values should match the actual process variable measurements that will eventually result from the control efforts U.
Conversely, the equations in step 5 could be solved for the open-loop control efforts U that would be necessary to generate a specified sequence of process variable measurements Y. That is, pick the desired values of
Y = y(0), y(1), y(2), …
and let
| |
| and so on until the kth sampling interval when |
| |
This operation, known appropriately enough as deconvolution, is essentially the long division algorithm applied to dividing Y by H to get U = Y/H. See the “Deconvolution example” graphic.
Closed-loop analysis
In practice, process controllers typically compute their control efforts using algorithms more sophisticated than open-loop control, but convolution and deconvolution can be used to analyze the behavior of closed-loop control systems as well.
Consider, for example, the basic feedback control system shown in the “Analyzing feedback loops” graphic. The process variable is sampled at regular intervals, and each measurement is subtracted from the setpoint to generate a sequence of error measurements. Those are fed into a controller that, in turn, generates a sequence of control efforts chosen to drive the process variable toward the setpoint.
The resulting process variable measurements Y will equal the results of the controller’s efforts added to any uncontrollable disturbances D that might also be affecting the process. In terms of the convolution operator, that sum can be expressed as
Y = H * U + D
If the controller is also a linear process (and most are), then
U = G * E
where G is the impulse response of the controller, S is the setpoint sequence and
E = S - Y
is the error sequence. These three relationships can be combined by means of simple algebra, treating convolution just like multiplication and deconvolution just like division. That is,
Y = G * H * (S - Y) + D
or
|
|
|
This formula predicts the process variable measurements Y that will result from any given combination of setpoints S and disturbances D when a process with an open-loop impulse response of H is controlled by a feedback controller with an open-loop impulse response of G. It is the fundamental mathematical tool used by control theorists to design controllers and analyze their closed-loop behavior. For example, the quantity |
known as the transfer function between the setpoint and the process variable, can be used to determine how the process variable Y will react to any given sequence of setpoints S in the absence of disturbances. That is, let D=0 so that |
|
The sequence TS is also the impulse response of the closed-loop system. That is, TS shows what the process variable would look like if a unity impulse were to be substituted for the setpoint while the controller is on-line controlling the process.
This phenomenon yields a test for closed-loop stability of a feedback control system. If the impulse responses of the controller and open-loop process are both known, then their convolution product G*H can be used to compute TS. If all of the digits of TS turn out to be finite, then the closed-loop system will be stable. Otherwise, Y = TS*S will grow forever no matter what values are chosen for S, and the closed-loop system will be unstable. See the “Stability test” graphic.
On the other hand, if the setpoint S is zero and the controller is only concerned with counteracting the effects of disturbances, then
Y = TD * D
where the quantity
|
is the transfer function between the disturbance sequence D and the process variable Y. It shows what the process variable would look like if the closed-loop system were to be stimulated with a single, unity-impulse disturbance. It too can be computed from G*H, though it will typically have a different value than TS. This is why a closed-loop system’s disturbance response typically differs from its setpoint response, though if one is stable, so will the other.
The transfer functions TS and TD can also be used to design the controller if H is known and G has not already been selected. For example, if the controller will be used primarily to track setpoint changes, TS can be assigned a suitable value that will produce some desirable closed-loop setpoint response. The controller required to achieve that particular setpoint response would then be given by
|
|
| Similarly, if the controller will be used primarily to reject disturbances, then TD can be assigned a suitable value, and the controller’s impulse response can be set to |
Devising a controller that will demonstrate either of these impulse response sequences exactly can be a bit tricky, but there are mathematical techniques collectively known as transform theory that can help. The first step is to express G and H as fractions with numerators and denominators of finite length. For example, the infinitely long open-loop impulse response
H = 16, 4, 1, ¼, ...
can also be expressed as H=A/B with
A = 16
B = 1, -¼
in much the same way as the infinitely long decimal value 0.14285... can be expressed as 1/7. In fact, deconvolution and normal division are essentially the same algorithm. See the “Deconvolution example” graphic.
The simplified version of H can also be converted into a Z transform that can be used to analyze a closed-loop system’s behavior without having to perform any convolution operations involving infinitely long sequences of sampled data. Unfortunately, it takes considerably more mathematical expertise to understand how and why Z transforms work.
Z transforms can be converted into Laplace and Fourier transforms by decreasing the sampling interval Δt to zero. These transforms can be used to analyze the behavior of analog control systems where data is processed in a continuous stream rather than at regular intervals.
-
What C. Schaaff is describing is the theoretical unity impulse that is often used to analyze continuous time processes; that is, processes where data is available via analog sensors at every instant of time. My article addresses discrete time system where data is available only at regularly spaced sampling intervals. The continuous-time impulse is not physically realizable, though it is conceptually very useful for analyzing teh behavior of continuous-time processes. On the other hand, once a computer-based controller is introduced into a control loop, the process is no longer continuous. It becomes discrete by virtue of the computer’s sampling interval. And since computer-based controllers have all but eliminated analog controllers for industrial applications, there really are no continuous processes left to analyze. Besides, the discrete-time unity impulse is physically realizable and the associated analysis of a discrete process’s behavior is much simpler – all algebra, no calculus.
Vance VanDoren - 2008-22-8 18:24:00 CDT -
Two things;
1) The "Deconvolution Example" is missing from the web site. This is typical of trade publications.
2) The beginning of the article mentions "unity impulse; that is, a single control effort that is one unit in magnitude and Δt seconds in duration."
I may be wrong, but is not a unity impulse one of (ideally) infinite amplitude and 1/infinite time in duration so that the -AREA- of the pulse is unity?
C. Schaaff - 2008-17-7 08:55:00 CDT
Assessing Control Loop Performance
05/01/1999Process Controllers Predict the Future
02/29/2008Relay Method Automates PID Loop Tuning
09/01/2009Models Aid Controller Design
02/29/2008






























