Optimal Design of PID Controllers with Filter on D Satisfying Gain Margin and Sensitivity Constraints Simultaneously on a Set of Plants Yaniv O. ∗ August 25, 2003 Abstract This paper introduces a design methodology for PID-type controllers, including those augmented by a filter on the D element, satisfying required gain margin and an upper bound on the (complementary) sensitivity for a finite set of plants. Important properties of the methodology are: (i) the optimal controller for a practical definition of optimality can easily be identified, (ii) the algorithm can be applied to a plant of any order including non-minimum phase plants, plants with delay, plants characterized by quasi-polynomials, unstable plants and plants described by measured data, (iii) the sensor used for the PI terms can be different than the one used with the D term (i.e., they can have different transfer functions), (iv) the algorithm relies on explicit equations, and thus is efficient and fast and can be used in near real-time to determine a controller for on-line modification of the plant’s model including its uncertainty and/or modification of the specifications, and (v) a single plot graphically highlights tradeoffs among the gain margin, (complementary) sensitivity bound, low frequency sensitivity and high frequency sensor noise amplification. Keywords: PID control, Dual loop control, Cascaded control, robustness, gain and phase margin, sensitivity. 1 Introduction Methods for tuning PI and PID controllers have been widely reported and active research continues due to the extensive use of such controllers in industry. The tuning methods can ∗ Faculty of Engineering, Department of Electrical Engineering Systems, Tel Aviv University, Tel Aviv 69978, Israel. E-mail: yaniv@eng.tau.ac.il 1 be divided into two main categories, those emphasizing gain and phase margin specifications and those emphasizing sensitivity specifications. Design techniques based on gain and phase margin specifications include those by Ho et al [1] and Ho et al [2]. They developed simple analytical formulae to tune PI and PID controllers for commonly used first-order and secondorder plus dead time plant models to meet gain and phase margin specifications. Ho et al [3] reported a method for designing PI controllers that meet gain and phase margin constraints and optimized for setpoint response. Ho et al [4] presented tuning formulae for the design of PID controllers that satisfy both robustness and performance requirements. Crowe and Johnson [5] presented an automatic PI control design algorithm to satisfy gain and phase margins based on a converging algorithm. Suchomoski [6] developed a tuning method for PI and PID controllers that can shape the nominal stability, dynamic properties, and gain and phase margins. Gain and phase margin specifications may fail to guarantee a reasonable bound on the sensitivity, which is a very important control design property. This point was considered by several researchers. Ogawa [7] used the QFT-framework to propose a PI design technique that satisfies a bound on the sensitivity for an uncertain plant. Poulin and Pomerleau [8] developed a PI design methodology for integrating processes that bounds the maximum peak resonance of the closed-loop transfer-function. The peak resonance constraint is equivalent to bounding the complementary sensitivity, which can be converted to bounding the sensitivity. In [9] a design method for bounding the sensitivity while achieving desired steady state performance is given, the method can also be applied on measured data. However, plant uncertainty is not considered, and the procedure fits a simple compensation structures. Crowe and Johnson [10] reported a design approach to find a PI/PID controller that bounds the sensitivity while satisfying a phase margin condition. Kristiansson and Lennartson [11] emphasized the need to bound the sensitivity and complementary sensitivity. They suggested the use of an optimization routine to design PI/PID controllers with low-pass filters on the derivative gain to optimize for control efforts, disturbance rejection and bound on the sensitivity. They also gave tuning rules for non-oscillatory stable plants or plants with a single 2 integrator. Astrom et al. [12] described a numerical method for designing PI controllers based on optimization of load disturbance rejection with constraints on sensitivity and weighting of set point response. Other tuning methods have been proposed. Yeung et al [14] presented a non-trial and error graphical design technique for controller design of the lead-lag structure that enables simultaneous fulfillment of gain margin, phase margin and crossover frequency. Guillermo et al [15] developed a theorem to calculate all stabilizing PID controllers for first-order delayed plants. However, uncertainty, sensitivity and margins were not discussed. These papers and others apply gain and phase margin constraints in finding PI and PID controller designs. Some add limitations on the (complementary) sensitivity. However, there are several differences between approaches reported in the literature and the idea proposed here. First, the approach presented here bounds the sensitivity of the closed-loop transfer function for all frequencies, not just at the crossover frequencies where the gain and phase margins are satisfied. (It is possible that the gain and phase margin conditions are met with a given PI design, but the sensitivity can be very high.) Second, the approach developed here accounts for plant uncertainty, in that the controller design satisfies the specifications for a set of plants. Third, the approach here provides explicit equations to determine the set of all possible controllers. Fourth, with this method it is possible to extract the optimal solution for many practical optimization criteria. Fifth, the algorithm presented can be applied to any plant order including pure delay, unstable plants, and on plants given by measured data. Sixth, it allows the PI terms (integration and proportional) to use different sensors then the derivative term, D. Seventh, it is possible to extend the method to design dual loops and other control structure and to sensitivity specifications depending on the frequency. Eighth, the algorithm uses explicit equations, and, as such, it does not rely on optimization routines and is very fast. 3 2 Problem Statement and Motivation Consider the open-loop transfer function, L(s), L(s) = a [P1 (s) + bP2 (s)] . (1) If P1 (s) = (1 + ki /s)P (s) and P2 (s) = sP (s), (1) corresponds to the open-loop transfer function of plant, P (s), with a PID controller C(s) = aki + a + abs. s It is possible to use a different sensor for the D term than for the PI terms. In this case, if the transfer function of the sensor used by the D term is taken as H(s) (with H(s) being a delay and/or a low-pass filter to decrease noise) and the transfer function of the sensor used by the PI terms is 1(s), then P1 (s) = (1 + ki /s)P (s), P2 (s) = sH(s)P (s), and the controller can be written as C(s) = aki + a + absH(s). s The gain and phase margin conditions, the typical measures of robustness, are replaced by a condition on the closed-loop sensitivity inequality, 1 1 + kL(s) ≤M for s = jω, ∀ω ≥ 0, k ∈ [1, K], (2) where the sensitivity bound M > 1 and the gain uncertainty of the plant, k, is in the interval [1, K]. It can be shown [16] that when arg L(jω) = −π rad, then (2) requires |L(jω)| ≤ (M − 1)/M for K = 1, and thus the gain margin for a given K is at least GM = 20 log10 (K) + 20 log10 M . M −1 (3) Similarly, when |L(jω)| = 1, (2) requires arg L(jω) > −π + 2 arcsin [(2M )−1 ], and thus the phase margin is at least P M = 2 arcsin 4 1 . 2M (4) Inequality (2) is a more encompassing measure of robustness than gain and phase margin. It places a bound on the sensitivity at all frequencies, not just at the two frequencies associated with the gain and phase margins. Two design problems are considered here: 1. Determine all (a, b) pairs that satisfy (2) where the pair (P1 , P2 ) is uncertain in the sense that they belong to a finite set of pairs (P1m , P2m ), m = 1, ..., n, and extract an optimal pair (ao , bo ) for a given optimality criterion. 2. Replacing L(s) in (2) by L(s) = a " ! # ki 1+ P1 (s) + bP2 (s)H(s) , s (5) find all a, b, ki and filters H(s) of a given structure that satisfy (2), and, in particular, extract an optimal solution ao , bo , kio and Ho (s) for a given optimality criterion. These two problems for the special case of P2 = P1 s, without considering plant and gain uncertainty, were solved in [12] and in [13] to determine a single controller for the case of maximum ki a or a, where their proposed solutions were not solved explicitly, but with the Matlab 5 Optimization Toolbox. 3 Development of Methodology In order to determine the (a, b) values for which the closed-loop system is stable and (2) is satisfied, consider first the special case of no gain uncertainty, i.e., K = 1, and a single plant pair (P1 (s), P2 (s)). Substituting (1) into (2) gives, U + a(U1 + bU2 ) + a2 (V1 + bV2 + b2 V3 ) ≥ 0, ∀ω ≥ 0 . where U = 1 − 1/M 2 , U1 = 2 · Real(P1 ), U2 = 2 · Real(P2 ), V1 = |P1 |2 , V2 = 2 · Real(P1 P2∗ ), V3 = |P2 |2 . 5 (6) For an (a, b) pair which is on the boundary region of the allowed (a, b) values, there exists ω such that (6) is an equality. Moreover, since at that particular ω, (6) is minimum, its derivative (with respect to ω) at the same ω is zero (this observation was also used by [12] to design a controller for maximum a). Thus, U̇1 + bU̇2 + a(V̇1 + bV̇2 + b2 V̇3 ) = 0. (7) Solving (7) for a gives a=− U̇1 + bU̇2 . V̇1 + bV̇2 + b2 V̇3 (8) Substituting (8) into the equality of (6) gives the following fourth-order equation for b whose coefficients are functions of ω. x4 b4 + x3 b3 + x2 b2 + x1 b + x0 = 0 (9) where1 x4 = U V̇32 + U̇22 V3 − U̇2 U2 V̇3 x3 = (−U2 V̇3 + 2U̇2 V3 )U̇1 − U̇2 U1 V̇3 + 2U V̇2 V̇3 + U̇22 V2 − U̇2 U2 V̇2 x2 = U̇12 V3 + (2U̇2 V2 − U2 V̇2 − U1 V̇3 )U̇1 + U̇22 V1 − U̇2 U1 V̇2 + U V̇22 + 2U V̇1 V̇3 − U̇2 U2 V̇1 x1 = U̇12 V2 + (−U1 V̇2 − U2 V̇1 + 2U̇2 V1 )U̇1 + 2U V̇1 V̇2 − U̇2 U1 V̇1 x0 = −U̇1 U1 V̇1 + U V̇12 + U̇12 V1 . The allowed (a, b) region for a given M value can be calculated as follows: For a given ω solve (9) for b. Noting that b has four solutions (for a given ω), pick the positive real solution(s) and use (8) to find their corresponding a. Select the (a, b) pairs for which the resulting closed-loop system is stable and (2) is satisfied. Searching over a range of frequencies, ω, gives two vectors of ω, (a(ω), b(ω)) which lie on the boundary of the allowed (a, b) region. Note that for point (a, b) on the boundary, one of the following conditions can occur: 1 The equations were derived using Matlab’s Symbolic Mathematics Toolbox from MathWorks, Inc., Natick, MA. 6 (i) increasing a is inside the region, (ii) decreasing a is inside the region, or (iii) neither increasing nor decreasing a is inside the region. Thus, for two points, (a1 , b) and (a2 , b), on the boundary where a1 < a2 , any a ∈ [a1 , a2 ] and b is a pair within the region only if there exist no (a, b) points on the boundary for any a ∈ (a1 , a2 ) and the following is true 1. increasing a1 is within the region, and 2. decreasing a2 is within the region. However it is enough to validate 1 or 2 because 1 implies 2 and vise versa. This validation can be done easily according to the following algorithm. Let (a, b) be a boundary pair calculated at frequency ω then (i) if |L(jω)| ≥ q 1 − 1/M 2 , only increasing a is within the boundary; (ii) otherwise only decreasing a is within the boundary. Since, as will be shown later, the optimal pair lies on the boundary of the (a, b) region, internal points are not of interest. Remark 3.1 The question arises as to how many frequencies should be chosen for calculating (a, b) pairs? If the frequencies are not dense enough the outcome can be that the (a, b) boundary is not dense enough, and the optimal solution calculated from the given (a, b) list is too far from the true optimum. The recommended density of the frequencies depends on two factors: (i) how close a solution to the global optimum can be considered practically optimal, and (ii) the particular plant, with more frequencies selected around under-damped poles or zeros and less elsewhere. Remark 3.2 If L(s) of (1) is replaced by the more general expression of (a, b) L(s) = a (P1 (s)f (b, s) + P2 (s)g(b, s)) = aL0 , then the derivative condition which gave a of (8) will be replaced by (∗ denotes complex conjugate) a=− L̇0 + L̇∗0 . L̇0 L∗0 + L̇∗0 L0 7 (10) Therefore, if f and g are rational polynomial in b, then from (10) a is also a rational polynomial in b. Substituting (10) in (7) gives a polynomial equation in b (replacing (9)), whose coefficients are function of ω. The proposed design process will remain the same except that the polynomial equation (9) for b will be replaced by a higher order equation. Examples: Designing a lead element or two lead elements, 1 + bs 1 + bs , or L(s) = aP (s) L(s) = aP (s) 1 + αbs 1 + αbs !2 where α is a chosen parameter (the chosen lead element depends on α, a parameter that will be searched over as will be explained latter). Remark 3.3 A PI controller exists if and only if there exists a frequency for which an (a, b) pair solving (9) makes the resulting closed-loop system stable and (2) for K = 1 is satisfied. 3.1 Example 1 Consider an armature-controlled DC motor with the input being motor current and the output being position. The motor transfer function is P (s) = 1 −sT e , T = 0.001 sec. s2 (11) It is required to find the region of the (a, b) pairs such that the complementary sensitivity M ≤ 1.46, which allows for gain uncertainty k ∈ [1, K] and the pair for which a is maximum. This is equivalent to a 40 deg phase margin or greater and a [10 + 20 log(K)] dB gain margin or greater. Define ! ki P1 (s) = 1 + P (s), P2 (s) = sP (s) s (12) Fig. 1 depicts the boundary of the allowed (a, b) pairs for ki = 80 and K = 1 (the (a, b) values fall in both shaded regions). Fig. 1 can also be used to find the (a, b) values which satisfy any gain uncertainty constraint k ∈ [1, K]. For example, if 6 dB gain uncertainty is desired (that is, K = 2), then for any b, the allowed a values should be 6 dB less in order to cope with the increase of a between 0 and 6 dB. The (a, b) region will therefore be the 8 lower shaded region depicted in Fig. 1 where the upper curve is shifted down by 6 dB. The maximum a for K = 1 occurs at (a, b) = (94.2 dB, 0.063) and maximum a for K = 2 occurs at (a, b) = (84.9 dB, 0.011), giving the controller designs corresponding to lowest sensitivity at low frequencies. Qualitatively, this means that the price of protecting the system from a possible gain uncertainty of 6 dB is increasing the low frequency sensitivity by 9.5 dB while the high frequency noise decreases by 48 percent. The open-loop Nichols plot for maximum a and K = 2 is shown in Fig. 2 for verification. It does not enter the ‘forbidden’ region and confirms system stability. 93 a (dB) 90 87 K (dB) 0 84 81 6 78 0.004 0.008 0.012 b 0.016 0.02 Figure 1: Region of (a, b) values for M = 1.46, equivalent to 40 deg phase margin (P M ) or greater and 10 dB gain margin or greater (GM for K = 1). Lower shaded region is for M = 1.46 with additional 6 dB plant gain uncertainty (K = 2), for a total of 16 dB or greater. 9 30 40 20 50 Amplitude (dB) 60 70 10 80 0 −10 −20 3000 −30 −270 2800 −240 2100 2500 2300 −210 90 100 110 120130 140 150 170 180 200 220 240 260 280 310 340 370 400 440 480 520 570 620 680 740 810 880 960 1100 1100 1300 1400 16001500 1900 1800 −180 −150 Phase (deg) −120 −90 Figure 2: Nichols plot for M = 1.46 and K = 2, corresponding to 40 deg phase margin or greater and 16 dB gain margin or greater. Frequencies are marked in rad/sec. The openloop transfer function must not enter the shaded region in order to satisfy the M and K constraint. 3.2 Example 2 Let the plant be a loaded DC motor whose transfer function from current to position includes two integrators, a real pole and a complex zero and pole P (s) = 1 + 2d1 ω1 /s + w12 /s2 1 . s2 (1 + s/p) 1 + 2d2 ω2 /s + w22 /s2 It is assumed that a speed sensor measures the speed with a pure delay of T . Thus, P1 (s) = (1 + ki /s) P (s), P2 (s) = sP (s)e−sT . (13) The parameters for this example are ki = 10, p = 200, d1 = 0.03, ω1 = 120 rad/sec, d2 = 0.05, ω2 = 150 rad/sec and T = 0.001 sec. It is required to find the region of the (a, b) pairs such that the complementary sensitivity M ≤ 1.46, which allows for gain uncertainty k ∈ [1, K] and the (a, b) pair for which a is 10 maximum. This is equivalent to a 40 deg phase margin or greater and a [10 + 20 log(K)] dB gain margin or greater. Fig. 3 depicts the boundary of the allowed (a, b) pairs for K = 1. (The (a, b) values fall in both shaded regions.) Fig. 3 can also be used to find the (a, b) values which satisfy any gain uncertainty constraint k ∈ [1, K]. For example, if 6 dB gain uncertainty is desired (that is K = 2), then for any b, the allowed a values should be 6 dB less in order to cope with the increase of a between 0 and 6. The (a, b) region will therefore be the lower shaded region depicted in Fig. 3 where the upper curve is shifted down by 6 dB. The maximum a for K = 1 occurs at (a, b) = (62.1 dB, 0.037) and maximum a for K = 2 occurs at (a, b) = (53.0 dB, 0.060), giving the controller designs corresponding to lowest sensitivity at low frequencies. Qualitatively this means that the price of protecting the system from a possible gain uncertainty of 6 dB is increasing the low frequency sensitivity by 9.1 dB while the high frequency noise decreases by 43%. For validation, the open-loop Nichols plot for maximum a and K = 2 is shown in Fig. 4 3.3 Extension to Complementary Sensitivity Requirements It is possible to replace the sensitivity margin constraint (2) by the complementary sensitivity, kL(jω) 1 + kL(jω) ≤ M, ∀ω ≥ 0, k ∈ [1, K]. It can be shown that L = L0 satisfies (2) if and only if L = M2 L M 2 −1 0 (14) satisfies (14). This leads to the following lemma: Lemma 3.1 The pair (a, b) solves problem 1 (problem 2) stated in Section 2 if and only if the pair M2 − 1 a, b M2 ! solves problem 1 (problem 2) where (2) is replaced by (14). 3.4 Extension to Lower and Upper Gain Margin The sensitivity margin constraint (2) has been written with k ∈ [1, K] under the assumption of K ≥ 1, i.e., the system is protected against a plant gain increase. However, conditionally 11 65 60 a (dB) 55 K (dB) 0 50 45 6 40 35 0.02 0.04 0.06 0.08 0.1 b 0.12 0.14 0.16 0.18 0.2 Figure 3: Region of (a, b) values for M = 1.46, equivalent to 40 deg phase margin (P M ) or greater and 10 dB gain margin or greater (GM for K = 1). Lower shaded region is for M = 1.46 with additional 6 dB plant gain uncertainty (K = 2), for a total of 16 dB or greater. stable plants must be protected against a plant gain decrease, that is, the closed-loop transfer function should satisfy the M constraints where k ∈ [1, K] and K < 1. It is possible to modify (2) to satisfy which is equivalent to 1 1 + kL(jω) 1 1 + kK1 L(jω) ≤ M, ∀ω ≥ 0, k ∈ [K1 , K2 ] (15) ≤ M, ∀ω ≥ 0, k ∈ [1, K2 /K1 ]. (16) The design process will then be: Replace the pair (P1 , P2 ) by the pair (K1 P1 , K1 P2 ) and the gain uncertainty by k ∈ [1, K2 /K1 ], and then calculate the (a, b) boundary. The boundary (a/K1 , b) will be the boundary for (15). Example: Fig. 5 is the (a, b) region for the plant of Example 1 where the gain uncertainty is k ∈ [0.5, 2] and M = 1.46. Fig. 6 is the open-loop Nichols plot for the (a, b) pair for which a is maximum. 12 30 6 20 8 10 Amplitude (dB) 10 12 15 20 0 25 30 40 160 150 155 145 60 −10 200 140 80 135 100 −20 300 400 −30 130 110 125 115 120 600 800 −40 −270 −240 −210 −180 −150 −120 −90 Phase (deg) −60 −30 0 Figure 4: Nichols plot for M = 1.46 and K = 2, corresponding to 40 deg phase margin or greater and 16 dB gain margin or greater. Frequencies are marked in rad/sec. The openloop transfer function must not enter the shaded region in order to satisfy the M and K constraint. 4 Optimization The answer to the question “Which is the best (a, b) pair?” of course depends on the optimization criterion. Seron and Goodwin [18] note that “In general, the process noise spectrum is typically concentrated at low frequencies, while the measurement noise spectrum is typically more significant at high frequencies.” The conclusion is that an optimal controller is a result of weighting the performance at low frequencies and of noise at high frequencies. Since the high frequency noise is proportional to ab and low frequency performance to 1/a, a practical optimal criterion can be J = α · (1/a) + β · (ab) whose solution must lie on the boundary of the (a, b) curve. When β is small enough or zero (meaning the sensor noise is neglected), the optimal solution is the maximum possible 13 82 80 a (dB) 78 76 74 72 70 0.015 0.02 0.025 0.03 b 0.035 0.04 0.045 Figure 5: Region of (a, b) values for M = 1.46 and k ∈ [0.5, 2], equivalent to 40 deg phase margin (P M ) or greater, 16 dB lower gain margin or greater and 10.6 dB upper gain margin or greater. The chosen ki = 40 a. This is the criterion corresponding to the Nichols plots of examples 1 and 2. Another practical optimal criterion is based on the observation that the noise should be below a certain level. The optimal criterion will then be the (a, b) pair for which a is maximum and ab is below a given level. This controller lies on the boundary of the (a, b) region. Another required controller can be the one whose high frequency noise, ab, is the lowest while the low frequency sensitivity, a, is better than a given figure. This controller also lies on the boundary. Any optimal criterion which is the absolute value of an analytic function of z = 1/a + jb gets its maximum or minimum on the boundary of the (a, b) region. This is also true for other definitions of z, for example, z = α/a + jβab, or z = f (a) + jg(ab) where f (a) and g(ab) are monotonic, etc. In many applications the criterion is to find a controller whose crossover frequency is 14 30 30 20 40 Amplitude (dB) 50 60 10 80 0 −10 −20 3000 −30 −270 −240 1700 2000 2500 −210 1400 1200 −180 −150 Phase (deg) 950 90 110 140 170 200 250 300 360 440 530 650 780 −120 −90 Figure 6: Nichols plot for M = 1.46 and k ∈ [0.5, 2]. Frequencies are marked in rad/sec. The open-loop transfer function must not enter the shaded region in order to satisfy the M and K constraint. Note that the minimum lower gain margin (dictated by the shaded region) is 16 dB and the minimum upper gain margin is 10.6 dB given, where the optimality criterion is a controller whose low frequency sensitivity, 1/a, is minimum and/or high frequency noise is minimum. Under reasonable condition, given in the following lemma, this optimal solution lies also on the boundary of the (a, b) region. Lemma 4.1 Let (a, b) denote the set of all controllers solving the problem stated herein and (aω , bω ) denote the subset of (a, b) whose crossover frequency is ω, that is all (aω , bω ) pairs in (a, b) satisfying |aω (P1 (jω) + bω P2 (jω))| = 1. (17) Assuming all a’s and b’s in (a, b) are positive, all a’s are uniformly bounded from above and a solution with cross-over frequency ω exist, then 1. If |P1 (jω) + bω P2 (jω)| is an increasing function of bω , the maximum value of aω belong to the boundary of (a, b); 15 2. The minimum value of aω bω belong to the boundary of (a, b). Proof: We start with three observations: The first is that any pair a, b ∈ (a, b) which is not on its boundary has an Euclidean neighborhood, inside (a, b). This is immediately from (6) which defines the set (a, b). The second is that aω is a continuous function of bω and of aω bω . The third is that there exist maximum aω and minimum aω bω , because the a values are bounded from above and the ab from below and the set of solutions is closed. Proof of 1: Let us assume that the pair(s) aω , bω ∈ (aω , bω ) for which aω is maximum is internal to (a, b), then there exist a > aω and b < bω in (a, b) satisfying (17), which is a contradiction to the assumption. Proof of 2: (17) can be written in the form aω = −aω bω (real(P2 /P1 )) ± q |1/P1 |2 − (aω bω )2 (imag(P2 /P1 ))2 , hence if (aω , bω ) is a solution of (17), there exists another solution, (a, b), in any small enough neighborhood of (aω , bω ) for which ab < aω bω . This fact will contradict the assumption that minimum of aω bω satisfying (17) is internal to the (a, b) region. 2. Example 1: C(s) = a(1 + bs). Condition 1 of lemma (4.1) is satisfied because |P1 (jω) + bω P2 (jω)| = q (1 + b2 ω 2 )|P (jω)| is an increasing function of b. Example 2: C(s) = a(1 + bH(s)). Condition 1 of lemma (4.1) is satisfied if |1 + bH(jω)||P (jω)| is an increasing function of b. This will be true if the phase of H(jω) is in the interval [−π/2, π/2]. This condition can be relaxed to b|H(jω)| > −real(H(jω)). Important H(s) filters with phase in the interval [−π/2, π/2] are: H = s/(1 + s/p), that is, a low pass filter of order 1 on the derivative term, and (ii) H = s/(1 + 2ξs/ω + s2 /ω 2 ), that is, a low pass filter of order 2 on the derivative. 4.1 Constraint Optimization Other practical optimal criteria would include any optimal criterion subject to hard limitation constraints on the control efforts. Two options are addressed here, one in which there 16 exist two independent actuators, which are the inputs to P1 and P2 , and the second with a single actuator. The rest of this section is devoted to finding the boundary of the (a, b) region subjected to the hard limitation constraint. The properties of the optimal criteria described above are valid on these regions. 4.1.1 Two Actuator Case It is required to find a controller whose input to P1 , that is, ae(k) where e(k) is the input to the controller at time k, is bounded, and the input to P2 , that is, abe(k), is also bounded. Given the constants umin1 , umax1 , umin2 and umax2 , the controller should satisfy umin1 ≤ ae(k) ≤ umax1 umin2 ≤ abe(k) ≤ umax2 , (18) which, geometrically, is all (a, ab) pairs in and on a rectangle in the a − ab plane. Assume that the chosen (a, ab) pair is updated at any sampling time. Then the boundary of all allowed (a, ab) pairs will be the boundary of the intersection of the original (a, ab) region and the rectangular region dictated by (18). 4.1.2 Single Actuator Case Consider the discrete version of the controller, that is, C(z) = a + ab(1 − z −1 ). It is required to find a controller whose output is ae(k) + ab(e(k) − e(k − 1)) and is bounded where e(k) is the input to the controller at time k. Given the constants umin and umax , the controller should satisfy umin ≤ ae(k) + ab(e(k) − e(k − 1)) ≤ umax , (19) which, geometrically, is all a, ab pairs between and on two lines in the a − ab plane. Let us now assume that the a, ab pair is updated at each sampling time, then the boundary of the allowed (a, ab) pairs will be the intersection of the original (a, ab) region and the region dictated by (19). 17 4.1.3 Extension to PID and PID with Filtered D The discussion above applies to PD controllers. However, the extension to PID controllers and PID controllers with a low-pass filter on the D element is trivial. For example, assume the single-actuator case and a controller of the PID form whose D term is filtered by H(z), that is ! ki z + abH(z). C(z) = a 1 + z−1 (20) its output for the input sequence e(k) is ! ki z u(k) = a 1 + e(k) + abH(z)e(k) = ae1 (k) + abe2 (k). z−1 (21) where e1 (k) is the output of (1 + ki z/(z − 1)) operating on the sequence {e(k)} and e2 (k) is the output of H(z) operating on the sequence {e(k)}. Constraints of the form umin ≤ u(k) ≤ umax are again, geometrically, all a, ab pairs between and on two lines in the a − ab plane. 5 Extension to Uncertain Plants Assume that the plant pair, (P1 , P2 ), of the problem 1 stated in Section 2 is known to be one of a finite set of plant pairs, (P1m , P2m ), m = 1, .., n. It is required to find all (a, b) pairs that solve the problem 1 where the pair (P1 , P2 ) can be any member of the set. This (a, b) region will be the intersection of all (a, b) regions of the members of the set. Note that if this intersected region is empty, a PI feedback solution does not exist. As an example, consider the plant gain , s(1 + s/pole) P2 (s) = P1 (s)s. P1 (s) = for gain = [1, 3] and pole = [10, 12, 14, 16, 18, 20], (22) Fig. 7 shows the intersection as the shaded region for M = 1.46 and K = 1. The (a, b) pair corresponding to maximum a is (8.6 dB, 0.62). The extension of problem 2 in Section 2 to the case of an uncertain plant is similar, since its solution is based on the its reduction to problem 1. 18 40 30 20 a (dB) 10 0 −10 −20 −30 −40 0 1 2 3 b 4 5 6 Figure 7: Boundary curves of (a, b) regions for M = 1.46 and K = 1 for the plant set (22) . The intersection of all regions is the allowed region. 6 Discrete PI Controllers The problem stated here can be expressed in its discrete form as follows: The plant pair is (P1 (z), P2 (z)) and the open loop is L(z) = a (P1 (z) + bP2 (z)) . (23) Substituting z = esT into (23) or using the bilinear transformation translates the discrete problem into the the original continuous problem. 7 Design Methodology for PID Controllers In the previous sections, a design methodology of a PID controller whose three parameters are (a, b, ki ) was given, assuming the ki term is known (aki is the I term of the PID, see (5)). The solution was presented by two vectors, a(ω) and b(ω) for a chosen vector of frequencies 19 ω. The (a(ω), b(ω)) vectors lie on the boundary of the region of the (a, b) pairs which solve the problem. It was also claimed that the solution for practical optimization criteria lies on these vectors. Here an extension to design the triple (a, b, ki ) is proposed. The idea is to find the boundary of the (aki , bki ) regions for several ki values, and then apply an optimization criterion on all the vectors (aki , bki ) to extract the optimal one. The answer to the question of how best to choose the ki values for the search is based on the following observation: The PID controller is (if P2 6= P2 this is an approximation) ao ! ! ki /s ki 1 + + bs = ao (1 + bs) 1 + . s 1 + bs (24) Let (ao , bo ) denote the optimal solution for ki = 0 and ωo its lowest crossover frequency. Find the range of ki values whose phase contribution to (24) at ωo is between −45 deg and about −1 deg. That is, the ki values for which. ki /(jωo ) arg 1 + 1 + bjωo ! = −45 deg, −1 deg. (25) Use these two ki value as the largest and lowest value for the search on ki . Running on ki values which differ by factor of 1.1, it is expected to have about 25 values. Remark 7.1 The process of adding more terms, for example, notch filters, low-pass filters, lead-lag elements, etc., can be extended naturally. The only limitation is the computing effort. 7.1 Continuation of Example 1 This section evaluates the tradeoff between high frequency noise, that is the multiplication a · b, and low frequency sensitivity, that is the multiplication a · ki (this criterion was justified in Section 4). For ki = 0 the pair (a, b) = (94.2dB, 0.0061) gives the optimal performance for the maximum a criterion and the open-loop crossover frequency is 350 rad/sec. The phase of (25) is −45 deg at ki = 620 and −1.2 deg at ki = 40. This suggests searching in the range ki ∈ [40, 620]. Fig. 8 depicts the boundary of the allowed (aki , ab) pairs for different ki ’s. If it is assumed that the high frequency noise can be neglected, then the controller of 20 best performance has ki a = 137.55 dB, ab = 360 and ki = 160. Its open-loop Nichols plot is shown in Fig. 9. If it is assumed that the high frequency noise must be less than 180 deg, then the controller of best performance has ki a = 121.9 dB, ab = 180 and ki = 60. Its open-loop Nichols plot is presented in Fig. 10, showing that the solution touch the M, K bound. The price for decreasing the high frequency noise by 50 percent is 15.7 dB increase of low frequency sensitivity. 140 140 120 135 160180 100 80 60 ki ⋅ a (dB) 130 40 125 120 115 110 100 150 200 250 a⋅b 300 350 400 450 Figure 8: Example 1: Boundary curves of region of (aki , ab) values for M = 1.46 and K = 1, equivalent to 40 deg phase margin or greater and 10 dB gain margin or greater for several ki values marked on each curve (the (a, b) region for a given ki is on and below the curve). 7.2 Continuation of Example 2 This section evaluates the tradeoff between high frequency noise, that is the multiplication a · b, and low frequency sensitivity, that is the multiplication a · ki . For ki = 0 the pair (a, b) = (62.56dB, 0.0328) gives the optimal performance for the maximum a criterion and the open-loop crossover frequency is 50 rad/sec. Since the phase of (25) is −45 deg at ki = 70 21 30 70 80 20 100 Amplitude (dB) 110 10 130 150 180 0 −10 −20 −30 −270 2600 3000 −240 2200 −210 1900 1600 1400 210 240 290 340 390 460 540 630 730 860 1000 1200 −180 −150 Phase (deg) −120 −90 Figure 9: Example 1: Nichols plot for M = 1.46 and K = 1. Frequencies are marked in rad/sec. The open-loop transfer function must not enter the shaded region in order to satisfy the M and K constraint. and −1.2 deg at ki = 4, the search is in the range ki ∈ [4, 70]. Fig. 11 depicts the boundary of the allowed (aki , ab) pairs for different ki ’s. If it is assumed that the high frequency noise can be neglected, then the controller of best performance has ki a = 87.36 dB, ab = 52.1 and ki = 24. Its open-loop Nichols plot is shown in Fig. 12. If it is assumed that the high frequency noise must be less than 20 units, then the controller of best performance has ki · a = 65.7 dB, ab = 20 and ki = 8, and its open-loop Nichols plot is shown in Fig. 13. Here, the price for decreasing the high frequency noise from 52.1 to 20 is a 21.7 dB increase of low frequency sensitivity. 22 30 40 20 50 60 Amplitude (dB) 70 10 80 100 120 0 −10 −20 2500 3000 −30 −270 −240 2100 −210 1800 1500 1200 140 170 200 240 290 350 410 500 590 710 850 1000 −180 −150 Phase (deg) −120 −90 Figure 10: Example 1: Nichols plot for M = 1.46 and K = 1. Frequencies are marked in rad/sec. The open-loop transfer function must not enter the shaded region in order to satisfy the M and K constraint and ab ≤ 180. 8 Design Methodology for PID Controllers with LowPass on D Term In section 7 a design methodology of a PID controller (whose three parameters are a, b, ki ) was given. It was based on the design methodology for PD controllers search over ki . The extension to include a filter, H, on the D parameter of the PID is again by searching over both the ki and H(s). The idea is to choose the structure of the filter H(s), for example, H(s) = sH0 (s) where H0 (s) = p s+p or H0 (s) = p2 , s2 +ps+p2 and search over the parameter p. The question then is how best to choose the p values for the search. Since the reason for introducing the filter H0 (s) is to limit the sensor noise amplification of the D term and/or reduce high-frequency resonances, it is recommended to perform an iterative search on p as follows: Starting with very large p, measure the noise and if it is too large decrease p by a factor of 1.5. When reaching a satisfactory noise level a refined search can be conducted 23 90 20 24 28 32 16 85 12 8 80 6 75 ki ⋅ a (dB) 4 70 65 60 55 50 10 20 30 40 a⋅b 50 60 70 Figure 11: Example 2: Region of (aki , ab) values for M = 1.46 and K = 1, equivalent to 40 deg phase margin or greater and 10 dB gain margin or greater. around the satisfactory p. A reasonable range for this search on p for first or second order filters can be calculated as follows: If ω0 is the largest frequency where the open loop phase is −180 deg for a given ki where H0 (s) = 1, the search should not exceed about p = 10ω0 because at that value the low-pass filter effect on frequencies less than ω0 is neglected (less than 5◦ ). Remark 8.1 There exist control applications where the plant has high frequency resonance that must be attenuated because (i) if it is not attenuated the achievable closed-loop performance is restricted and (ii) the resonance might generate non-tolerable aliasing phenomena in discrete systems. This attenuation can be done using a notch filter or a low-pass filter on the D term or on both the D and P terms. The algorithm proposed here supports this kind of filter where H(s) can be applied either on D or on the D and P terms. 24 K (dB) 0 6 30 10 20 12 15 10 20 Amplitude (dB) 25 0 30 160 40 155 150 145 140 60 200 80 −10 135 100 300 −20 130 110 400 125 115 120 −30 600 −40 −270 −240 −210 −180 −150 −120 −90 Phase (deg) −60 −30 0 Figure 12: Example 2: Nichols plot for M = 1.46 and K = 1. Frequencies are marked in rad/sec. The open-loop transfer function must not enter the shaded region in order to satisfy the M and K constraint. 8.1 Continuation of Example 1 for Designing H(s) It is next of interest to evaluate the tradeoff between high frequency noise, that is a quantity proportional to the multiplication a · b by the sensor’s noise of the D term filtered by H(s). For simplicity, it is assumed that this noise is a · b · p and consider the tradeoff for ki = 100. The frequency ω0 is 1500 rad/sec, and thus the search is in the range p ∈ [15000, 1500]. Fig. 14 depicts the boundary of the allowed (aki , abp) pairs for different p’s. Clearly, using a low-pass filter with p = 5000 instead of p = 15000 decreases the noise by a factor of three, while decreasing the performance by 2.1 dB. If the optimal criterion is that the highfrequency noise must be less than 1.34 · 106 , then p = 5000 gives the best performance. Its controller parameters are ki · a = 30.9 dB, a · b · p = 1.34 · 106 and ki = 100. Its open-loop Nichols plot is shown in Fig. 15. 25 30 5 20 7 Amplitude (dB) 10 10 12 15 0 20 −10 25 30 40 160 150 155 145 60 200 −20 140 80 135 100 300 400 −30 130 110 125 115 120 600 800 −40 −270 −240 −210 −180 −150 −120 −90 Phase (deg) −60 −30 0 Figure 13: Example 2: Nichols plot for M = 1.46 and K = 1. Frequencies are marked in rad/sec. The open-loop transfer function must not enter the shaded region in order to satisfy the M and K constraint and ab ≤ 20. 9 9.1 Extension to Plants Given by Measured Data First Method If a plant identified at a list of frequencies is given and it is not possible to find a state-space model or the accuracy of a chosen model is not sufficiently adequate, it is still possible to design a controller. One option is to interpolate the plant pair(s) to correspond to a dense list of frequencies (spline etc.) and replace the derivatives appearing in (7) by a numerical derivative. 9.2 Second Method Define the splitting of P1 (jω) and P2 (jω) at s = jω into real and imaginary parts, P1 (jω) = A1 (ω) + jB1 (ω) P2 (jω) = A2 (ω) + jB2 (ω). 26 134 12000 15000 9000 7000 132 ki ⋅ a (dB) 130 128 5000 3000 2000 126 124 0 1 2 3 a⋅b⋅p 4 5 6 6 x 10 Figure 14: Region of (aki , abp) values for M = 1.46 and K = 1. Any (a, b) on the boundary region must satisfy |1 + L(jω)| = 1/M , from which we make the following observations: (i) The values of L(jω) for which |1 + L(jω)| = 1/M are L(jω) = a [A1 (ω) + bA2 (ω) + j(B1 (ω) + bB2 (ω))] = x + jy, (26) where (x, y) is any point on the circle (x − 1)2 + y 2 = M −2 or equivalently any x = −1 + cos θ/M and y = sin θ/M where θ ∈ [0, 2π], (ii) any such (x, y) satisfy |y/x| ≤ and x < 0 and (iii) solving (26) for b gives b= B1 x − A1 y B1 − A1 y/x = . A2 y − B2 x A2 y/x − B2 q 1/(M 2 − 1) (27) Based on the above three observations, the proposed design method is 1. Pick a dense list of y/x in the interval |y/x| ≤ q 1/(M 2 − 1). 2. Solve for b using (27). The sign of b dictates if it introduces a right or left half plane zero and the sign of a if it is positive or negative feedback, therefore the sign of a 27 30 50 60 20 70 Amplitude (dB) 80 100 10 110 130 160 0 −10 −20 −30 −270 2500 −240 2100 1800 −210 1500 1300 1100 940 180 220 260 300 350 420 490 580 680 800 −180 −150 Phase (deg) −120 −90 Figure 15: Nichols plot for M = 1.46 and K = 1. Frequencies are marked in rad/sec. The open-loop transfer function must not enter the shaded region in order to satisfy the M and K constraint. and b are a-priori given in order to have a left-half-plane zero and a negative feedback (assume both are positive). Therefore from all possible b values, pick only the positive b’s for which the sign of x, that is, of a(A1 (ω) + bA2 (ω)) is negative. 3. Substitute b in (6) to get the following quadratic equality on a h i a2 (A1 + bA2 )2 + (B1 + bB2 )2 + a [A1 + bA2 ] + 1 − 1/M 2 = 0 (28) and solve for a. 4. All the (a, b) pairs for which the closed-loop system is stable and (6) is satisfied lies on the boundary of the (a, b) region. 5. Repeat the above steps for all measured data points to get a list of controllers. Apply the optimal criterion on this list for finding the optimal solution. 28 The drawback of this technique compared to the one using a model is that the computation time is expected to be much longer. 9.3 Example Let the original plant pair be 1 −sT e , T = 0.001 sec. s2 P2 (s) = sP1 (s) P1 (s) = measured at 70 points equally spaced logarithmically in the range [3, 2500] rad/sec. It is assumed that the amplitude and phase of each plant are corrupted by uniformly distributed measurement noise of ±1 dB and ±10 deg. For this example 400 values are chosen for x + jy on the mentioned circle whose phases are equally spaced linearly. The five step algorithm described above can now be executed. Fig. 16 depicts points on the boundary of the allowed (a, b) pairs for K = 1. The maximum a occurs at (a, b) = (89.3723 dB, 0.0084), giving the controller designs corresponding to lowest sensitivity at low frequencies. Its open-loop Nichols plot is shown in Fig. 17. 10 Extension to Dual Loop Design The transfer function of the dual loop system of Fig. 18 is T (s) = C1 P1 C2 P2 . 1 + (1 + C1 P1 )C2 P2 (29) Its stability and margin properties depend on the open-loop transfer function L(s) = (1 + C1 P1 ) C2 P2 , (30) which can be written in the form L(s) = [1 + ki P1 (s)] a [P2 (s) + bP2 (s)H(s)] (31) where the outer loop controller C1 = ki and the inner loop controller C2 = a(1 + bH(s)). A design methodology for this structure is now straightforward. 29 92 90 88 86 a (dB) 84 82 80 78 76 74 72 0.006 0.009 0.012 0.015 b 0.018 0.021 0.024 Figure 16: Points on the boundary of the (a, b) allowed regions. 1. Design (a, b) assuming ki = 0 and some H(s) = H0 (s) (if inner loop is PI, H0 (s) = s). 2. Decide on the interval of ki to search over and redesign the triple (a, b, ki ). That is, for a given ki design (a, b) for (31) where P2 is replaced by P3 = P2 (1 + ki P1 (s)). The open-loop transfer function for designing (a, b) will then be a (P3 (s) + bP3 (s)H0 (s)) 3. Decide on the filter structure to be applied on H0 (s) (for example a low-pass, that is, p ) and the interval of its parameter (p in the example) to search over H(s) = H0 (s) s+p for a particular ki , then design a, b, ki , H(s). That is, for a given ki and H(s) design (a, b) for (31) where P2 is replaced by P3 = P2 (1 + ki P1 (s)). The open-loop transfer function for designing (a, b) will then be a (P3 (s) + bP3 (s)H(s)) 30 30 38 42 20 Amplitude (dB) 46 51 56 62 68 75 10 91 0 −10 2100 2500 2300 −20 −30 −270 −240 −210 1900 82 100 110 122 134148 163 180 219 198 241 266 293 356 323 392 433 477 526 639 776 579 704 943 856 1100 1000 1400 1300 1700 1500 −180 −150 Phase (deg) −120 −90 Figure 17: Nichols plot for M = 1.46 and K = 1. Frequencies are marked in rad/sec. The open-loop transfer function must not enter the shaded region in order to satisfy the M and K constraint. 11 Use for Smith Predictor A Smith predictor can be converted to a conventional feedback scheme whose loop transmission is L(s) = C(s) P (s)e−sT + Pe (s)(1 − e−sT ) where the plant is P (s)e−sT and the estimated non-delayed plant is Pe (s). It is required to find all controllers, C(s), satisfying specifications of the M, K form where P (s) is uncertain. This is a special case of the technique described herein. 31 r - C1 C2 - P2 y P1 Figure 18: Schematic plot of a dual loop feedback structure 12 12.1 Two More Application IMC Control Structure Assume that it is required to design a controller C(s) for the open-loop transfer function L(s) = C(s)P (s) 1 + P0 (s)C(s) where the plant P (s) can be a member of a finite set of plants and P0 (s) is known. The problem is to design C(s) such that the closed loop is stable and or equivalently 1 + −1 C(s)P (s) 1 + P0 (s)C(s) ≤ M; for s = jω, ∀ω ≥ 0, |1 + [P (s) + P0 (s)] C(s)| ≥ |1 + P0 (s)C(s)| /M ; for s = jω, ∀ω ≥ 0. (32) Assuming C(s) = a (1 + bH(s)), (32) is |1 + (P (s) + P0 (s))(a + abH(s))| ≥ |1 + P0 (s)(a + abH(s))| /M ; for s = jω, ∀ω ≥ 0, which can be manipulated to the form |1 + aP1 (s) + abP2 (s)| ≥ |1 + aP3 (s) + abP4 (s)| /M for s = jω, ∀ω ≥ 0 where P1 = P (s) + P0 (s), P2 = P1 H(s), P3 = P0 (s), P4 = P0 H(s). 32 (33) Using the notation (∗ denotes complex conjugate) Pa = P1 + P1∗ − (P3 + P3∗ )/M 2 Pab = P2 + P2∗ − (P4 + P4∗ )/M 2 Paa = P1 P1∗ − P3 P3∗ /M 2 Paabb = P2 P2∗ − P4 P4∗ /M 2 (33) is 1 − 1/M 2 + aPa + abPab + a2 bPaab + a2 b2 Paabb ≥ 0 for s = jω, ∀ω ≥ 0. The arguments following (6) for designing the pairs (a, b) can be applied on (33). That is, for an (a, b) pair which is on the boundary region of the allowed (a, b) values, there exists ω such that (33) is an equality. Moreover, since at that particular ω, (33) is minimum, its derivative (with respect to ω) at the same ω is zero, which gives a rational polynomial equation on b for a. Substituting this a into (33) gives a polynomial equation on b of order four, for each ω. 12.2 Third Plant and Frequency Dependent Sensitivity Specifications It is possible to replace (1) by adding P3 (s) to (1) L(s) = a (P1 (s) + bP2 (s)) + P3 (s). (34) Equation (2) for k = 1 will then be 1 + a (P1 1 ≤M + bP2 ) + P3 for s = jω, ∀ω ≥ 0, which can be written in the form U + a(U1 + bU2 ) + a2 (V1 + bV2 + b2 V3 ) = 0 for s = jω, ∀ω. 33 (35) where U = |1 + P3 |2 − 1/M 2 , U1 = (1 + P3 )P1∗ + (1 + P3∗ )P1 , U2 = (1 + P3 )P2∗ + (1 + P3∗ )P2 V1 = |P1 |2 , V2 = P1 P2∗ + P2 P1∗ , V3 = |P2 |2 . Taking the derivative of (35) and equating to zero gives U̇ + a(U̇1 + bU̇2 ) + a2 (V̇1 + bV̇2 + b2 V̇3 ) = 0 for s = jω, ∀ω ≥ 0. (36) Solving equations (35) and (36) for a gives a= −U̇ U1 + U U̇1 + −U̇ U2 + U U̇2 b U̇ V1 − U V̇1 + U̇ V2 − U V̇2 b + U̇ V3 − U V̇3 b2 . (37) Substituting (37) into (35) gives a fourth order polynomial equation for b whose coefficients are functions of ω. The design process to find all (a, b) that solve problem 1 (problem 2) for the open loop (34) is similar as for the open loop (1). Remark 12.1 The development herein allows the specification parameter M , that is, sensitivity and disturbance rejection specs, being a function of ω. Remark 12.2 Let us assume that the loop transmission is of the simplified load sharing structure L(s) = a (P1 (s) + bP2 (s)) + cP3 (s), where (a, b, c) are constants to be designed to satisfy given M, K constraints. By fixing c it is possible to use the above algorithm to find all (a, b) pairs. Running over a dense enough c’s will give the relevant (a, b, c) from which an optimal solution can be extracted. Clearly this algorithm can be extended to more than three plant and/or filters on the sensors. However, will be limited by computational efforts. 34 Remark 12.3 If L(s) is replaced by the more general expression of (a, b) L(s) = a (P1 (s)f (b, s) + P2 (s)g(b, s)) + P3 (s), and if f and g are rational polynomial in b then it can be shown that a can be written explicitly as a rational polynomial in b. The proposed design process will remain the same except that the polynomial equation (9) for b will be replaced by a higher order polynomial equation. 13 Extension to QFT The Quantitative Feedback Theory (QFT) [16] is a feedback design tool based on sequential loop shaping. In each step a one or two degree-of-freedom (DOF) single-input single-output (SISO) feedback problem is solved, i.e., a feedback controller is designed around an uncertain plant to satisfy frequency-dependent sensitivity specifications. The latter feedback problem is solved here to find a PID with filtered D (or a more complicated controller structure). Therefore, the design approach presented here can be extended for automated QFT design, and could include SISO, cascaded SISO, multi-input multi-output (MIMO), cascaded MIMO and many other control structures. 14 Conclusions In this paper explicit equations are provided for determining controllers of the classical form, i.e., PI, PID, and PID with D filtered, that simultaneously stabilize a given set of plants and satisfy gain margin constraints and a bound on the (complementary) sensitivity. The algorithm fits any plant dimension including pure delay, unstable plants, continuous plants, discrete plants, and plants given by measured data. The outcome of applying the algorithm is a list of controllers from which an optimal controller can be extracted for many practical optimization criteria. Moreover, tradeoffs among high frequency sensor noise, low frequency sensitivity, the parameters of the PID and the filter on D are directly presented by design graphs (a single plot suffices for a single 35 filter). Since the algorithm uses explicit equations, it can be executed very fast, and as such the controller design can be updated in near real-time to reflect changes in plant uncertainty and/or closed-loop specifications. References [1] W.K. Ho, C.C. Hang, and L.S. Cao. “Tuning of PID controllers based on gain and phase margin specifications”. Automatica, 31(3):497–502, 1995. [2] W.K. Ho, C.C. Hang, and J.H. Zhou. “Performance and gain and phase margins of wellknown PI tuning formulas”. IEEE Trans. Control Systems Technology, 3(2):245–248, 1995. [3] W.K. Ho, C.C. Hang, and J.H. Zhou. “Self-tuning PID control of a plant with underdamped response with specifications on gain and phase Margins”. IEEE Trans. Control Systems Technology, 5(4):446–452, 1997. [4] W.K. Ho, K.W. Lim, and W. Xu. “Optimal gain and phase margin tuning for PID controllers”. Automatica, 34(8):1009–1014, 1998. [5] J. Crowe and M.A. Johnson. “Towards autonomous PI control satisfying classical robustness specifications”. IEE Proc.-Control Theory Appl., 149(1):26–31, 2002. [6] P. Suchomski. “Robust PI and PID controller design in delta domain”. IEE Proc.Control Theory Appl., 148(5):350–354, 2001. [7] S. Ogawa. “PI controller tuning for robust performance”. IEEE IEEE Conference on Control Applications, Albany, NY, September 28-29, 1995. [8] E. Poulin and A. Pomerleau. “PI settings for integrating processes based on ultimate cycle information”. IEEE Transactions on Control Systems Technology, 7(4):509–511, 1999. 36 [9] T.J. Cavicchi. “Minimum return difference as a compensator design tool”. IEEE Trans. on Edu., 44(2):120–128, May 2001. [10] J. Crowe and M.A. Johnson. “Automated PI control tuning to meet clasical performance specifications using a phase locked loop identifier ”. Proceedings of the American Control Conference, Arlington, VA, June 25-27, 2001. [11] B. Kristiansson and B. Lennartson. “Robust and optimal tuning of PI and PID controllers”. IEE Proc.-Control Theory Appl., 149(1):17–25, 2002. [12] H. Panagopoulos, K.J. Astrom, and T. Hagglund. “Design of PI controllers based on non-convex optimization”. Automatica, 34(5):585–601, 1998. [13] H. Panagopoulos, K.J. Astrom, and T. Hagglund. “Design of PI controllers based on Constrained optimisation”. IEE Proc. Cont. Theory and Applications, 149(1):32–40, 2002. [14] K.S. Yeung, K.W. Wong, and K.L. Chen. “A non-trial-and-error method for lead-lag compensator design”. IEEE Trans. on Education, 41(1):76–80, Feb. 1998. [15] J. Guillermo, A.D. Silva, and Bhattacharyya. “New results on the synthesis of PID controllers”. IEEE Trans. on Aut. Cont., 47(2):241–252, Feb. 2002. [16] O. Yaniv. “Quantitative feedback design of linear and nonlinear control systems”. Kluwer Academic Publisher, 1999. [17] M. Seron and G. Goodwin. “Design limitations in linear filtering”. Proceedings of the 34th CDC, New Orleans, LA, Dec. 1995. [18] M. Seron, J. Braslavsky, and G.C. Goodwin (1997). Fundamental limitations in filtering and control. Springer-Verlag. 37