You are on page 1of 6

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 29, NO.

6, NOVEMBER 1999

587

Fuzzy Logic Based Set-Point Weight Tuning of PID Controllers


Antonio Visioli
AbstractIn this paper, a novel methodology, based on fuzzy logic, for the tuning of proportional-integral-derivative (PID) controllers is presented. A fuzzy inference system is adopted to determine the value of the weight that multiplies the set-point for the proportional action, based on the current output error and its time derivative. In this way, both the overshoot and the rise time in set-point following can be reduced. The values of the proportional gain and the integral and derivative time constant are determined according to the well-known ZieglerNichols formula so that a good load disturbance attenuation is also assured. The methodology is shown to be effective for a large range of processes and is valuable to be adopted in industrial settings since it is intuitive, it requires only a small extra computational effort, and it is robust with regard to parameter variations. The tuning of the parameters of the fuzzy module can be easily done by hand or by means of an autotuning procedure based on genetic algorithms. Index TermsFuzzy logic, genetic algorithms, PID controllers, set-point weighting, tuning.

I. INTRODUCTION It is well-known that, despite many sophisticated control theories and techniques that have been devised in the last decades, proportional-integral-derivative (PID) controllers are still the most adopted in practical cases. In fact, due to their simple structure, PID controllers are relatively easy to tune and their use is well understood by a great majority of industrial practitioners and automatic control designers. In addition, they can provide acceptable performances for a large range of processes, so that other controllers are unlikely to achieve the same cost/benet ratio. It is also well-known that PID controllers are particularly adequate for processes whose dynamics can be effectively modeled by a rst or second order system. Unfortunately, real systems have, in general, signicant characteristics such as high-order, nonlinearities, dead-time, etc. and they can be affected by noise, load disturbances and other environmental conditions that cause parameter variations and sudden modications of the model structure. It appears how, in this context, the tuning the controller parameters is a crucial issue. For this reason, many tuning formulae have been proposed in the literature [1] and they meet different requirements such as set-point following, attenuation of load disturbance, rejection of noise, and so on. Among the tuning methods, the most employed in industrial settings is still the ZieglerNichols one
Manuscript received November 7, 1998; revised July 24, 1999. This work was supported in part by MURST. This paper was recommended by Associate Editor A. Kandel. The author is with the Dipartimento di Elettronica per lAutomazione, University of Brescia, I-25123 Brescia, Italy. Publisher Item Identier S 1083-4427(99)08768-8.

[2] which provides a good load disturbance attenuation but also a large overshoot and settling time, so that the values of the parameters are often subsequently rened in accordance with the operators experience. In order to deal with these situations, it would be useful to increase the capabilities of PID controllers, without complicating their structure too much and in such a way that the industrial knowledge would be still fully exploited. Fuzzy logic has been recognized to be very appropriate in implementing the operators experience in the design of control systems. Especially for this reason, it has been widely adopted in the last decade [3], and some applications to PID controllers have also been devised, in order to increase the setpoint following performances. Tzafestas and Papanikopoulos proposed an approach in which the performance of the PID is enhanced by slightly changing the values of the proportional, integral and derivative coefcients (which are determined by classical tuning procedures) on the basis of a fuzzy matrix that contains, in condensed rule form, the experience of a humancontroller [4]. He et al. devised a methodology that consists of parameterizing a ZieglerNichols-like formula by a single parameter and then self-tuning this parameter by means of an on-line fuzzy inference mechanism [5]. Zhao et al. developed a fuzzy gain scheduling scheme where PID parameters are determined on the basis of fuzzy rules, depending on the value of the error signal and its time derivative or difference [6]. However, for these approaches, it is not clear how to set the parameters of the fuzzy inference systems, and the complexity of the resulting overall control scheme may increase in such a way that they are no longer worthy of being used in practical cases. Moreover, their effectiveness in attenuating the load disturbances has not been shown. In this paper, a novel methodology based on the fuzzication of the set-point weighting is presented. The idea of multiplying the set-point value for the proportional action by a constant parameter less than one is effective in reducing the overshoot but has the drawback of increasing the rise time. To achieve both the aims of reducing the overshoot and decreasing the rise time, a fuzzy module can be used to modify the weight depending on the current output error and its time derivative. The three classical parameters of the PID are tuned according to the Ziegler-Nichols method, so that a good load disturbance attenuation is assured. The parameters of the fuzzy module can be easily tuned by hand, since the action it provides is intuitive, or an automatic tuning procedure can be implemented by means of genetic algorithms, which have already been demonstrated to be effective in the tuning of the parameters of the fuzzy inference systems [7].

10834427/99$10.00 1999 IEEE

Authorized licensed use limited to: University of Houston. Downloaded on June 2, 2009 at 08:02 from IEEE Xplore. Restrictions apply.

588

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 29, NO. 6, NOVEMBER 1999

Fig. 2. Overall control scheme of the PID with fuzzy set-point weighting. Fig. 1. The 2 DOF scheme of the PID controller with set-point weighting.

The paper is organized as follows. In Section II the overall methodology is presented and in Section III a practical tuning procedure is proposed. The genetic algorithms based autotuning procedure is exposed in Section IV. Simulation results are presented in Section V, whilst a detailed discussion is provided in Section VI. Conclusions are drawn in the last section. II. PID TUNING WITH FUZZY SET-POINT WEIGHTING The PID controller has the following well-known standard form in the time domain (1)

Fig. 3. Membership functions for the two inputs e and e of the fuzzy _ inference system.

Fig. 4. Membership functions for the output f of the fuzzy inference system.

where system error; control variable; proportional gain; derivative time constant; integral time constant. We can also write (1) as (2) and The where it is obviously typical tuning problem consists of selecting the values of these three parameters, and many different methods have been proposed in the literature in order to meet different control specications such as set-point following, load disturbance attenuation, robustness with respect to model uncertainties and rejection of measurement noise. Using the ZieglerNichols formula generally results in a good load disturbance attenuation but also in a large overshoot and settling time for a step response, that might not be acceptable for a number of generally highlights processes. Increasing the analog gain these two aspects. An effective way to cope with this problem is to weight the set-point for the proportional action by means [1] so that we get of a constant (3) In this way a simple two-degrees where of freedom scheme is implemented; one part of the controller is devoted to the attenuation of load disturbances, and the other to the set-point following as shown in Fig. 1, where the following transfer functions are indicated:

However, the use of set-point weighting generally leads to an increase in the rise time since the effectiveness of the proportional action is somewhat reduced. This signicant drawback can be avoided by using a fuzzy inference system to depending on the current determine the value of the weight and its time derivative The value of the system error idea, in a few words, is simply that has to be increased when to has to be the convergence of the process output speeded up, and decreased when the divergence trend of from has to be slowed down. For the sake of simplicity, the methodology is implemented in such a way that the output of the fuzzy module is added to a constant parameter resulting in a coefcient that multiplies the set-point. The overall control scheme is shown in Fig. 2. The two inputs of the fuzzy inference system, the system error and its derivative are scaled by two coefcients, and respectively, in order to match the range on which the membership functions are dened. Five triangular membership functions (see Fig. 3) are dened for each input while nine triangular membership functions (see Fig. 4) over are dened for the output, which is scaled the range The rule matrix (Fig. 5) is based on the by a coefcient MacvicarWhelan matrix [8]. The meaning of the linguistic variables is explained in Table I.

Authorized licensed use limited to: University of Houston. Downloaded on June 2, 2009 at 08:02 from IEEE Xplore. Restrictions apply.

VISIOLI: SET-POINT WEIGHT TUNING OF PID CONTROLLERS

589

Fig. 6. Example of a vertex translation for the two inputs of the fuzzy inference system.

Fig. 5. Basic rule table of the fuzzy inference system. TABLE I MEANING OF THE LINGUISTIC VARIABLES IN THE FUZZY INFERENCE SYSTEM

module, with respect to a determined objective function. In the case of the fuzzication of the set-point weight, having xed equal to the inverse of the amplitude of the the value of step of the set-point, we search for the values of and the position of the membership functions in order to minimize the value of the integrated absolute error (4) Specically, we search for the optimal position of all the peaks of the membership functions but keep the extreme and the central ones xed for the sake of simplicity. The vertexes of the bases are accordingly translated, as shown in Fig. 6. In order to limit the search space, we can impose the symmetry between the membership functions around zero, both for the two inputs and the output. The procedure consists of evaluating a series of step responses in order to permit the genetic algorithm to converge to the optimal solution. By choosing a suitable and a suitable lower bound upper bound for the value of (which can be simply and empirically for the value of evaluated), it is guaranteed, from a practical point of view, that the system will never be unstable. It has to be stressed that the rigorous study of the stability for a general fuzzy based control system is a very hard task and it is still an open problem in the literature. However, from a practical point of view, the problem can be addressed with the presence of a supervisor which is able to detect an unstable response [11] and take the necessary corrective actions (for example, set the control variable to zero) [6]. Finally, it is worth stressing that by choosing other objective functions, different design specications can be satised, e.g., a step response with the minimum overshoot can be obtained. V. SIMULATION RESULTS Five groups of systems, with different values for the parameters, have been chosen in order to test the effectiveness of the methodology. The following transfer functions with the indicated values of the parameters have been considered: (5) (6)

III. PRACTICAL TUNING PROCEDURE Having determined the value of the three parameters and by means of the ZieglerNichols step response or frequency response method, it remains to assign the values of the and and subsequently to other parameters modify the peak values of the membership functions and the rules according to the typical practical procedure for the fuzzy can simply be chosen as the controllers [9]. The value of inverse of the amplitude of the step of the set-point. For the and then keep others, a practical procedure is to set (starting from while increasing the value of in order to normalize accordingly modifying the value of the input as long as the performance improves. Then, this until procedure can be iterated with decreasing values of no better results are achieved. At the end, the peak values of the membership functions have to be tuned, especially to limit oscillations of the system output, by increasing the action of the fuzzy module when the output of the system is close to the set-point but its derivative is still high. Finally, the rules may also be modied to improve the response, although often in practical cases this is not necessary. IV. GENETIC ALGORITHMS BASED AUTOTUNING PROCEDURE By automatic tuning we generally mean a method where the controller is tuned automatically on demand from a user (one shot tuning) [1]. This functionality is important in an industrial environment and it has been implemented in many commercial controllers, although it is not always used in practice. Genetic algorithms [10] have been recently successfully adopted in the optimization of fuzzy controllers (see, e.g., [7]). The idea is to search for the optimal values of the parameters of the fuzzy

(7) (8)

Authorized licensed use limited to: University of Houston. Downloaded on June 2, 2009 at 08:02 from IEEE Xplore. Restrictions apply.

590

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 29, NO. 6, NOVEMBER 1999

Fig. 7. Step response for G1 (s);  = 0:8:

Fig. 8. Step response for G2 (s):

(9) (10) The unit step response was simulated with Matlab and Simulink for all the processes. A comparison between the responses obtained with the classical ZieglerNichols method, a xed value of the weight and a fuzzied was made by evaluating the integrated absolute error (4). The value of the xed weight was calculated with a simple iterative procedure while the parameters of as the value that minimizes the fuzzy inference system were determined, according to the procedure described in Section IV, by means of the Genetic Algorithm Optimization Toolbox made by Houck et al. [12]. Specically, the chromosome was encoded in a real-valued string where the values of the oating point numbers are within the variables upper and lower bounds [13]. The normalized geometric ranking [14] was chosen as the selection function while a combination of simple, arithmetic and heuristic crossover was adopted as the crossover function. Finally, the uniform mutation, nonuniform mutation, multinonuniform mutation and boundary mutation were involved in the genetic algorithm. Plots of the step responses in the three cases are reported in Figs. 712 only for few plants, for the sake of brevity. The It has to be noted that no saturations input step starts at have been set on the control variable in order to view the full potentialities of the different control schemes. It is obvious, looking at the results, that the use of the fuzzy weighting results in a stronger action by the actuators. However, xing a saturation level implies only that the rise time increases, but the high performance of the response is preserved. In order to see how the fuzzy inference system modies the weight depending on the current system error and its time derivative, an example of the value of for the unit step response of is shown in Fig. 13. Note system Resulting values of for all the considered that for the systems are in Table II. The lower value of the fuzzy set-point weighting scheme is due to the fact that the

Fig. 9. Step response for G3 (s); T = 10; L = 0:8:

Fig. 10. Step response for G4 (s):

rise time decreases whilst the overshoot does not signicantly increase with respect to the xed This can be deduced by examining Tables III and IV where the values of the overshoot (%) and rise time (s) are reported for the three controllers, respectively. In order to verify the load attenuation capabilities of the proposed controller, a step of amplitude equal to three was

Authorized licensed use limited to: University of Houston. Downloaded on June 2, 2009 at 08:02 from IEEE Xplore. Restrictions apply.

VISIOLI: SET-POINT WEIGHT TUNING OF PID CONTROLLERS

591

TABLE II VALUE OF I AE WITH ZIEGLERNICHOLS TUNING ONLY, USING A FIXED WEIGHT b AND A FUZZIFIED WEIGHT b

Fig. 11.

Step response for

G5 (s); L

= 0:

TABLE III VALUE OF OVERSHOOT (%) WITH ZIEGLERNICHOLS TUNING ONLY, USING A FIXED WEIGHT b AND A FUZZIFIED WEIGHT b

Fig. 12.

Step response for

G6 (s):

TABLE IV VALUE OF RISE TIME (IN SECONDS) WITH ZIEGLERNICHOLS TUNING ONLY, USING A FIXED WEIGHT b AND A FUZZIFIED WEIGHT b

Fig. 13.

Fuzzied weight

for

G3 (s); T

= 10;

= 0:8:

added to the input of the different considered processes once the output had attained the steady-state value. Then, the integrated absolute error was calculated starting from the time of application of the disturbance, i.e., the following index has been determined: (11)

A comparison between the values of for the classic ZieglerNichols tuning and the fuzzy set-point weighting scheme is shown in Table V. Obviously, the presence of a xed set-point weight does not alter the load disturbance performances obtained with the ZieglerNichols tuning. It appears the nonlinearity due to the fuzzy set-point weighting somehow generally improves the load attenuation capabilities of the PID controller.

Authorized licensed use limited to: University of Houston. Downloaded on June 2, 2009 at 08:02 from IEEE Xplore. Restrictions apply.

592

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 29, NO. 6, NOVEMBER 1999

TABLE V VALUE OF IAEd FOR THE RESPONSE OF THE LOAD DISTURBANCE USING ZIEGLERNICHOLS TUNING ONLY AND A FUZZIFIED WEIGHT b

VII. CONCLUSIONS A novel method based on the fuzzication of the set-point weight has been proposed for the tuning of PID controllers. The approach has been shown to be very effective in the setpoint following for a large number of processes, whilst the load disturbance attenuation performances obtained by the use of the ZieglerNichols formula are preserved or improved. The devised control structure seems to be particularly appropriate to be adopted in industrial settings, since it requires a small computational effort, it is easily tuned and it is compatible with a classical PID controller; that is, it consists of a module that can be added or excluded without modifying the parameters of the existing PID. ACKNOWLEDGMENT

VALUE OF

IAE WITH ZIEGLER-NICHOLS PARAMETERS INCREASED BY 20%

TABLE VI

The author would like to acknowledge an anonymous reviewer for providing a detailed correction of the paper. REFERENCES
[1] K. Astr m and T. H gglund, PID Controllers: Theory, Design and o a Tuning. New York: ISA, 1995. [2] J. G. Ziegler and N. B. Nichols, Optimum setting for automatic controllers, ASME Trans., 1942, pp. 759768. [3] S. G. Tzafestas, Fuzzy systems and fuzzy expert control: An overview, Knowl. Eng. Rev., vol. 9, no. 3, pp. 229268, 1994. [4] S. G. Tzafestas and N. P. Papanikolopoulos, Incremental fuzzy expert PID control, IEEE Trans. Ind. Electron., vol. 37, no. 5, pp. 365371, 1990. [5] S.-Z. He, S. Tan, and F.-L. Xu, Fuzzy self-tuning of PID controllers, Fuzzy Sets Syst., vol. 2, pp. 3746, 1993. [6] Z.-Y. Zhao, M. Tomizuka, and S. Isaka, Fuzzy gain scheduling of PID controllers, IEEE Trans. Syst., Man, Cybern., vol. 23, no. 5, pp. 13921398, 1993. [7] A. Homaifar and E. McCormick, Simultaneous design of membership functions and rule sets for fuzzy controllers using genetic algorithms, IEEE Trans. Fuzzy Syst., vol. 3, no. 2, pp. 129139, 1995. [8] P. J. Macvicar-Whelan, Fuzzy sets for man-machine interaction, Int. J. Man-Mach. Stud., vol. 8, pp. 687697, 1976. [9] L. Zheng, A practical guide to tune of Proportional and Integral (PI) like fuzzy controllers, in Proc. IEEE Int. Conf. Fuzzy Systems, New Orleans, LA, 1992, pp. 633640. [10] J. H. Holland, Genetic algorithms and the optimal allocations of trials, SIAM J. Comput., vol. 2, pp. 88105, 1973. [11] J. Gertler and H.-S. Chang, An instability indicator for expert control, IEEE Contr. Syst. Mag., vol. 9, pp. 1417, 1986. [12] C. Houck, J. Joines, and M. Kay, A genetic algorithm for function optimization: A Matlab implementation, NCSU-IE TR 95-09, 1995. Data Structures Evolution [13] Z. Michalewicz, Genetic Algorithms Programs. Berlin, Germany: Springer-Verlag, 1994. [14] J. Joines and C. Houck, On the use of nonstationary penalty functions to solve constrained optimization problems with genetic algorithms, in Proc. IEEE Int. Symp. Evolutionary Computation, Orlando, FL, 1994, pp. 579-584.

VI. DISCUSSION The use of the fuzzy set-point weighting, in conjunction with the ZieglerNichols method for the tuning of the proportional gain and the integral and derivative time constants, leads to a signicant improvement in the step response and preserves the good performances in the attenuation of the load disturbance assured by the ZieglerNichols formula. It can be shown that the approach is also robust with respect to the controller parameter variations, in the sense that the ZieglerNichols parameters can be quite different from their nominal values without impairing performances. As an example, the value of in the case that all the ZieglerNichols parameters are increased by 20% is reported in Table VI. It can be noticed how the results are similar to the nominal case. It turns out that the application of the methodology is further simplied, since no great attention has to be paid in the initial tuning phase. can be increased in order to Moreover, the analog gain provide a better load disturbance attenuation. Hence, the proposed approach seems to be particularly appropriate to be adopted in industrial environments, since it requires only a small computational effort, it is easy to apply, intuitive, and robust. Furthermore, the fuzzication of the weight can be easily excluded from the overall control when the operator has no scheme by simply xing interest in applying it.

Antonio Visioli received the Laurea degree in electronic engineering from the University of Parma, Parma, Italy, in 1995 and the Ph.D. degree in applied mechanics from the University of Brescia, Brescia, Italy, in 1999. His Ph.D. dissertation was on control strategies for industrial robot manipulators. Currently, he is Assistant Professor of automatic control with the Department of Electronics for Automation, University of Brescia. His research interests include industrial robot control and trajectory planning, system inversion based control and PID control.

Authorized licensed use limited to: University of Houston. Downloaded on June 2, 2009 at 08:02 from IEEE Xplore. Restrictions apply.

You might also like