Fuzzy Sets and Systems 56 (1993) 37-46 North-Holland
37
Fuzzy self-tuning of PID controllers Shi-Zhong He 1, Shaohua Tan Feng-Lan Xu: Department of Electrical Engineering, National University of Singapore, 10 Kent Ridge Crescent, Singapore 0511
Pei-Zhuang Wang 3 Institute of System Science, National University of Singapore, Heng Mui Keng Terrace, Kent Ridge, Singapore 0511 Received August 1992 Revised October 1992
Abstract." This paper presents a novel fuzzy self-tuning PID control scheme for regulating industrial processes. The essential idea of the scheme is to parameterize a Ziegler-Nichols-like tuning formula by a single parameter a, then to use an on-line fuzzy inference mechanism to self-tune the parameter. The fuzzy tuning mechanism, with process output error and error rate as its inputs, adjusts c~ in such a way that it speeds up the convergence of the process output to a set-point Yr, and slows down the divergence trend of the output from Yr. A comparative simulation study on various processes, including a second-order process, processes with long dead-time and non-minimum phase processes, shows that the performance of the new scheme improves considerably, in terms of set-point and load disturbance responses, over the PID controllers well-tuned using both the classical Ziegler-Nichols formula and the more recent Refined Ziegler-Nichols formula.
Keywords: Fuzzy self-tuning; fuzzy control; adaptive control.
1. Introduction
Despite the advent of many sophisticated control theories and techniques, the majority of industrial processes nowadays are still regulated by PID controllers. This status quo not just indicates the cautious attitude of the practicing Correspondence to: Shaohua Tan, Department of Electrical Engineering, National University of Singapore, 10 Kent Ridge Crescent, Singapore 0511. 1 On leave from Department of Automation, Tsinghua University, Beijing 100084, China. 2 On leave from Department of Electrical Engineering, Tsinghua University, Beijing 100084, China. 3 On leave from Department of Mathematics, Beijing Normal University, Beijing 100088, China.
world towards the new invention, it does reveal the rich potential of this extremely simple (almost primitive, perhaps, in the eyes of some control theorists) control strategy for meeting various specifications for a vast variety of industrial processes. A crucial issue in the PID control is the setting of the controller parameters, the so-called tuning problem. The conventional way to do the tuning is to study the mathematical models of processes, and try to come up with a simple tuning law that will establish a set of constant PID parameters based on the models. It is not hard to show theoretically that the PID is adequate for the processes modelled perfectly by linear first or second order systems. Tuning laws can easily be established in these cases. Unfortunately, real industrial processes can never be modelled perfectly as simply as the linear first and the second order systems. They may have such marked characteristics as high-order, dead-time, nonlinearity, etc., and may be affected by noise, load disturbance and other ambient conditions that cause parameter variation and sudden model structural change. The existing theories can no longer provide systematic and robust tuning laws for these complex situations. Thus, many of the PID tuning laws actually incorporate empirical evidences to compensate for the model complexity and variation. As can be expected, these tuning laws are often ad hoc in nature, and may only be useful for a certain class of processes or under certain conditions. A typical example of the model-based tuning laws is the famous Ziegler-Nichols tuning formula [15]. Apart from the fact that it may completely fail to tune the processes with, for example, relatively large dead-time, its tuning will have to be supplemented with purely experience-based fine-tuning to meet the response requirements. Along the line of empirical investigation and approximate analysis, the work on improving the PID tuning has been going on especially in the past decade. There has been attempt to revise
0165-0114/93/$06.00 © 1993--Elsevier Science Publishers B.V. All rights reserved
38
Shi-Zhong He et al. / Fuzzy self-tuning of PID controllers
the half-century-old Ziegler-Nichols formula to enhance its performance and applicability, resulting in the so-called Refined ZieglerNichols tuning formula [6]. These refinements, useful as they may be in improving certain aspects of the responses for certain processes, may perform worse for certain other processes. In a sense, they hit upon the delicate boundary of performance-process tradeoff, and the complexity may never allow a clear cut. Taking, as an example, the processes with long dead-time, if they are controlled by the PID plus the Ziegler-Nichols tuning, the first overshoot in the set-point response will be excessively high, which is considered unacceptable for many applications. The Refined Ziegler-Nichols formula can be employed in this case to reduce the overshoot. In doing so, however, the response time will be slowed down, sometimes considerably. Further, in the case of mild nonlinearities, it is hard to tell for a particular process if the original formula or its refinement should be used. All these may be contributed to the single fact of requiring the PID parameters to be fixed throughout the control. In other words, with fixed parameters, the controllers of a simple structure, such as the PID, cannot go beyond a certain limit in handling the model complexity and uncertainty. If we still insist on using the same controller structure, the controller parameter adaptation with time seems to be the only way to extend beyond the limit. Carrying on with the thought, a natural step ahead is to consider self-tuning PID control, which tunes the PID parameters on-line to adjust the controller actions for meeting the real-time need. This is precisely the direction pursued by a number of researchers [3, 10, 1]. The idea of the existing PID self-tuning schemes essentially follows that of the conventional self-tuning controllers, i.e., the tuning at any time instance is based on a structurally-fixed parameter-evolving process model produced by an on-line identification procedure. The momentary tuning itself will still have to be done by using some design formula, or just the Ziegler-Nichols formula. Thus, these schemes can be seen as trying to deal with the model complexity and uncertainty problem by localizing (on the time scale) the conventional tuning methods. Aside from the often-cited problem of high computational
demand, a major difficiency for the schemes seems to be that it does not change the model-based nature of non-adaptive PID controllers. By assuming a model, the consequent robustness issue still needs to be settled (even at localized time instances), which proves to be difficult. Further, because an a priori assumed model will have to be necessarily simple, it often cannot accommodate the structural disturbance, such as load disturbance on processes. If such a disturbance happens, the identified model will be highly inaccurate, leading to the momentarily degraded controller performances [7]. Against this backdrop, we propose to use a fuzzy inference based self-tuning scheme for PID controllers. The essence of the scheme is that at every time instance, the controller evaluates the trend of the controlled process output to detect the possible deviation from a prescribed course. If a deviation is found, an appropriate control action according to the nature of the deviation will be generated instantaneously to correct it. Compared to the existing model based selftuning schemes, our scheme is empirical based, and acts more like what we do when we, for example, try to steer a controller manually to keep the output of a process on a fixed course. Our own experience tells that a precise description of the process (in the form of a dynamical model) is often irrelevant for our steering actions. What is more important is the instant observations of the error, and subsequent rational actions for bringing it back to course. There are two key ideas in our scheme. First, the Ziegler-Nichols formula is parameterized by a single parameter a. This a is arranged so that its increase (decrease) will lead to the increase (decrease) in the proportional term and the decrease (increase) in both the integral and differential terms in the PID controller. Such an arrangement is intended to divert the trend of the process output using the knowledge of the qualitative relationship between the proportions of the PID feedbacks and the profiles of the process output. Secondly, the on-line tuning formula for a is a discrete dynamical equation driven by a fuzzy inference procedure. A simple fuzzy map is formed in such a way that it updates a in accordance with the current regulation error and error rate. Specifically, it speeds up the convergence of the process output to a set-point
Shi-ZhongHe et al. / Fuzzyself-tuningof PID controllers Yr, and slows down the divergence trend of the output from Yr. This is, in fact, the fuzzy adaptation mechanism we have used successfully in one of our early works on adaptive fuzzy controller [9]. Many forms of adaptive fuzzy control schemes exist, see [12,13,9]. Virtually all of these schemes are genuine fuzzy control schemes in the sense that the controllers are actually fuzzy, although the adaptation mechanisms may sometimes employ non-fuzzy tuning laws. The proposed fuzzy auto-tuning PID is different in nature from all these schemes in that it is a non-fuzzy controller tuned with a fuzzy inference mechanisms. Further, because of its connection with the Ziegler-Nichols formula, the proposed control scheme is not completely model-free. A simple initialization procedure will have to be used to obtain the ultimate gain and ultimate period of the process to be controlled in order to start the fuzzy adaptation. This limited degree of model dependence reflects the consideration that if certain information on the process can be acquired easily and directly, the control scheme should be able to make use of it. This is in sharp contrast to a genuine fuzzy controller, which are completely model-free and all the control rules are supposed to come directly from the experiences. Another rationale behind our scheme is that it is often hard to directly acquire the knowledge or possess direct human experiences for controlling a complex process. However, if the controller structure is fixed to be the PID control, then the experiences are narrowed down to more specialized experiences of choosing a few PID parameters. This latter problem has been under scrutiny for so long a time that there have been a great amount of knowledge and experiences accumulated on the subject. In this context, it seems more meaningful to keep the PID structure and let the self-tuning part be handled by the fuzzy logic approach. The main objective of the present paper is to propose this new type of fuzzy self-tuning control scheme, provide the details of the design procedure, and conduct a simulation analysis to compare the scheme with two tuning schemes, namely, the Ziegler-Nichols tuning and the Refined Ziegler-Nichols tuning. The general conclusion of the simulation analysis is that the
39
new fuzzy self-tuning PID controller outperforms the PID controllers tuned by the two fixed tuning laws. The paper is organized as follows. In Section 2, the new fuzzy self-tuning PID controller is described in detail, the exposition covers the basic structure of the controller, fuzzy tuner, as well as the initialization of the controller. The simulation analysis is carried out in Section 3 followed by Section 4, which contains further discussions and conclusions.
2. The controller and the fuzzy adaptation
Basic structure To begin with, we assume that the process to be controlled has single input u(t) and single output y(t), and the control objective is to bring the process output y(t) to a prescribed set-point Yr. The scheme can actually be extended to the tracking problems where y~ is a time-varying target output. However, this extension will not be discussed here to keep our exposition concise. As mentioned in the previous section, the fuzzy self-tuning PID controller consists of a standard PID controller and a fuzzy tuning mechanism used for the on-line adaptation of the PID parameters (Figure 1). The PID controller, which generates a control u(t) based on the closed-loop error e(t)= Yr- y(t), has the following standard form
u(t)= Kc[e(t)+ Tdde~t) +~ fe(t)dt ] ,
(1)
where Ko Td, T~ are, respectively, the proportional gain, the derivative time and the integral time of the controller, which are to be adjusted on-line. One of the key ideas of the control scheme is to parametrize the three PID parameters by a single parameter c~ as shown below Kc-- 1.2c~ku, 1 T~= 0.75 1--~-a t°,
Ta = 0.25T~,
(2)
where ku, tu are, respectively, the ultimate gain and the ultimate period of the underlying process, which will be determined shortly.
Shi-Zhong He et al. / Fuzzy self-tuning of PID controllers
40 f-
Fuzzy Self-tuning Mechanism
I I I I
]FuzzyAdaptatio~-----~ DPasrgm~oerrimZelda
I [-
m
_
_1
-
Yr
Controller
Process
Fig. 1. The basic structure of the fuzzy self-tuning PID controller.
The form of the parameterization is inspired by the Ziegler-Nichols formula, and in fact reduces to it when a = ½. Thus we can think of the controller as compensating the basic control of the Ziegler-Nichols by biasing all the parameters on-line in order to adjust the process output to a prescribed course. In what follows, both the fuzzy adaptation and the initialization will be discussed in detail.
Table 1. The fuzzy map from E and R to H H
E
R -3
-2
-1
0
1
2
3
-3 -3 -2 -2
-3 -2 -2 -1
-2 -2 -I -1
-2 -1 -1 0
-1 -1 0 1
-1 0 1 1
0 1 1 2
1
1
-1
0
1
1
2
2
2 3
-1 0
1 1
1 2
2 2
2 3
3 3
-3 -2 -1 0
0 1
Fuzzy adaptation As shown in Figure 1, the fuzzy self-tuning mechanism will generate an a(t) given the instant values of e(t) and O(t) at time t. It is composed of two parts: a fuzzy core and a conditional updating formula for a. The fuzzy core starts with fuzzifying e(t) and O(t) into two fuzzy variables E, respectively, R. To ensure a speedy fuzzy inference, both the range of interest for e(t) and that for ~(t) are covered by seven different fuzzy sets as shown below E = {NL, NM, NS, ZO, PS, PM, PL} R = {NL, NM, NS, ZO, PS, PM, PL},
(3)
where, as usual, the meanings of the acronyms used in (3) are, respectively, PL for positive large, PM for positive medium, PS for positive small, Z O for zero, NS for negative small, NM for negative medium, and N L for negative large. For ease of the notation, we shall assign the integers for the fuzzy sets as PL=3, NS=-I,
PM=2, NM=-2,
PS=I,
ZP=0,
NL=-3,
and denote the fuzzy sets by their corresponding numbers. The second part of the fuzzy core is the fuzzy mapping from E and R to H, where H is another fuzzy variable whose defuzzified version will be used for the later updating equation of a. The range of H similarly consists of seven fuzzy sets H = { - 3 , - 2 , - 1 , 0, 1, 2, 3},
(4)
and it is linked to E and R by a fuzzy map (a particular example that we shall use is given in Table 1). The fuzzy inference is the standard CRI procedure, hence all the fuzzy rules, such as those shown in Table 1, will be involved in every single inference. We also assume that the membership functions for all fuzzy sets have the following standard form 2
re(x) = e ( ~ ),
(5)
where xi, o- denote, respectively, the centre and the spread of each fuzzy set, and their choices are somehow subjective.
41
Shi-Zhong He et al. / Fuzzy self-tuning of PID controllers The last part of the fuzzy core is the defuzzification of H into a real variable h(t). For smooth opeation, we choose to use the centre of gravity method. After h(t) is obtained, it is used in the following recursive equation to update a c~(t + 1) = {a(t) + yh(t)(1 - a(t)) ( a ( t ) + vh(t)ce(t)
for ol(t) >0.5, for c~(t) ~<0.5,
(6)
where y is a positive constant used to modify the convergence rate of the updating formulae. The range of 7 is wide, and is typically chosen to be within the interval [0.2,0.6] for most of the processes. Note that a(0) is not arbitrary and has to be set at 0.5. It also follows from (6) that a(0) is a cut-off value whereby the two updating formulae switch from one to the other. Such an arrangement along with the fuzzy map guarantees the smooth and bounded (between 0 and 1) variation of ~, which in turn leads to smooth and bounded adaptation of the PID parameters. Initialization of the controller As the tuning formula involves the ultimate gain ku and the ultimate period tu, they will have to be determined prior to the use of the controller. This process is called initialization. Several methods for initializing the PID controllers are available. Because of its intuitive appeal and ease of operation, the relay feedback method proposed in [3, 5] is used to initialize the parameters of the fuzzy self-tuning PID controller. The method of relay feedback is based on the
fact that dynamical processes typically encountered in process control will exhibit limit cycle oscillation under relay feedback. The frequency of the limit cycle is approximately the ultimate frequency where the process has a phase lag of 180 °. The period of the oscillation tu is easily obtained by measuring the time between zero crossings. The amplitude may be determined by measuring the peak to peak values of the output. If d is the relay amplitude and a is the process output amplitude, the ultimate gain is approximately given by k.
=
4d --. na
(7)
The relay auto-tuner principle is shown in Figure 2. With both ku and tu in place, and with a(0) set to be 0.5, the initial values for the PID parameters naturally follow from (2) Kc = 0.6ku,
T~= 0.5tu,
Tj : 0.125tu,
which is precisely the Ziegler-Nichols formula. It is thus clear that except for the initialization where an implicit model assumption on the initial status of the process is made, our fuzzy self-tuning PID controller is a model-free control scheme. A close examination of both (2) and (8) shows that our adaptation scheme can be interpreted as using a single parameter to bias the PID controller parameters away from their ZieglerNichols settings in order to compensate for any inadequacy. This idea of adaptation should be contrasted with the conventional PID self-tuning schemes whereby at each time instance a
_•
Fuzzy Self-tuning
t Y~ ' C )
l-
•
PID
(8)
,Q~.~
• Process
Fig. 2. Block diagram of the relay auto-tuner.
y
42
Shi-Zhong He et al. / Fuzzy self-tuning of PID controllers
pre-specified process model will have to be identified, and the tuning either modifies ku and tu, or changes directly Kc, T~, Td based on the identified process model. To highlight their difference, we can think of the two types of adaptations as either elastic or plastic. The adaptation we have proposed is elastic in the sense that it only 'deforms' from a standard set of controller parameters (the Ziegler-Nichols in our case) to counter for the process complexity and variation. The 'deformation' may bounce back and forth causing all the controller parameters to vary around the standard set of controller parameters. Whereas the conventional way of adaptation is plastic in the sense that the 'deformation' of the controller parameters at every time instance is dictated by the identified model and thus irreversible unless the coefficients of the identified model are moving up and down around a standard set of coefficients, which is highly unlikely. It is in general difficult to tell which form of adaptation is superior. In the present context, however, the model-free nature of our elastic adaptation appears to be conceptually simpler and more efficient than the conventional model-based plastic adaptation. With the preceding design details of the new control scheme, let us provide a rough account of how it actually works. Note that this fuzzy self-tuning mechanism is the one that we proposed in one of our early works [9]. As being explained in [9], the essential idea of the adaptation is to provide appropriate c~ for several real-time scenarios defined on the profile of y in relation to Yr- Here we are only interested in four possible scenarios: y approaches to Yr
from above or below, and y diverts up and down away from Yr. When y approaches Yr from above or below, the combined effort of both the fuzzy map in Table 1 and the updating equations (6) will increase a, (2) will consequently ensure that such an increase will push Kc higher and Ti, Td lower, which in turn speeds up the approaching of y to Yr- Similarly, when y diverges up (or down) from Yr, c~ will be decreased, thus decreasing Kc and increasing T~, Td, consequently causing the divergence to be slowed down. Because there is only one parameter c~ involved, the rules for generating all the changes for the four possible scenarios are easy to form. Table 1 is only one example of appropriate fuzzy maps that can be used for the purpose. The construction of the kind of fuzzy map requires the analysis of response profiles and their relationships to c~, and is also affected by the rate of change we desire on a. The fuzzy map in Table 1 only effects a moderate a change rate. High rate of change tends to cause oscillatory behaviour, and thus is not always desirable. Theoretical verification of the preceding statements in the context of model complexity and uncertainty is not yet available, although such a verification is possible for a given simple process model. But this latter type of verification has specialized nature and does not illustrate our point. For the time being we mostly rely on the empiricial studies and simulation analysis for such a verification. Figure 3 is typical of the simulation results, which shows how c~ changes given the corresponding profile of y. This plot confirms that the particular updating formula (6) and the fuzzy map indeed modifies c~ as prescribed.
2 1.5 I 0.5 0
0
1
3
4
5
Time vs yp and alpha, yp(-), alpha(--) Fig. 3. The trend of o~ in relation to the process output y.
7
8
Shi-Zhong He et al. / Fuzzy self-tuning of" PID controllers"
self-tuning PID controller, Y2, Y3 are those of the PID controllers tuned using the Refined Ziegler-Nichols formula, respectively, the Ziegler-Nichols formula. We shall use the same notations for the rest of the simulation examples. Figure 4 clearly shows the remarkable set-point response performance of the fuzzy self-tuning controller over the other two controllers with shorter rise time, shorter settling time, and less overshoot. Observe that unlike normal fuzzy controllers where lowering thc overshoot is often at the expense of slowing down considerably the rise time, the new control scheme seems to reconcile these two requirements. The reason is roughly that the self-tuning nature of the controller allows the selection of different PID controllers for controlling the process at different stages of the responses. The controller is designed so that it picks up an appropriate PID controller at each stage. Figure 4 also shows that the improvement in the set-point response of the new controller is not at the cost of the load disturbance response, although there is no obvious improvement in the load disturbance response with respect to those by the other two controllers. For conventional controllers, these two responses tend to undo each other, leading to a compromised design in which none of the responses is at its best. The new control scheme seems to have provided yet another reconciliation towards this problem. As we shall see again in the later simulation examples, the fuzzy self-tuning PID controller tends to enhance the set-point response while keeping the load disturbance at an acceptable level.
3. Simulation analysis To cover typical kinds of common industrial processes, three groups of representative processes are chosen for our simulation analysis. For each of the latter two types of processes, different coefficients are set for the same process models just to reflect the severity of the time-delay or non-minimum phase characteristics. To evaluate the performance of the new fuzzy self-tuning PID controller, we compare its set-point as well as the load disturbance responses with the PID controllers tuned by the Ziegler-Nichols formula and the Refined Ziegler-Nichols formula. A second-order process
The first process is chosen to have the following simple second-order characteristics
G(s) =
k,, (T,s + 1)(~s + 1 )
43
(9)
The parameters of the process a r e kp = 1, T l = l and ~ = 0.5. The choice of the sampling time t~ is based on the process time constants T~, T2, and here we set ts to be 0.1. The new set-point y, is 1, and a static load disturbance is also introduced into the process at t = 20s. This process is regulated, separately, by the fuzzy self-tuning PID controller, and by the two PID controllers tuned using the Ziegler-Nichols formula, and the Refined Ziegler-Nichols tuning formula. The respective set-point responses and load disturbance responses are summerized in Figure 4, where y~ is the response of the fuzzy
Closed,-Loop Response of p,rocess
1.5r
0.5
0
~
i
I
i
i
i
i
i
0
5
10
15
20
25
30
35
40
yl(-), y2(-.) and y3(--) vs time Fig. 4. The set-point and load disturbance responses of the second-order process.
44
Shi-Zhong He et al. / Fuzzy self-tuning of PID controllers
, Closed-LoopResponse,ofprocess
1.5
s", 1 ~ V
-~r'~'''~ -
~~,,~,~--,---'
0.5
00
i
i
10
20
i
i
30 40 50 yl(-), y2(-.) and y3(--) vs time
i
i
60
70
Fig. 5. The set-point and load disturbance responses of the process with small dead-time. Figures 5 and 6 allow us to draw similar conclusions: The set-point response improves considerably while the load disturbance responses are either comparable to those obtained by the other two controllers (in the case of small dead-time), or only improves marginally (in the case of large dead-time). It is also interesting to observe that in both cases, the fuzzy self-tuning P I D controller acts m o r e like a further refined Ziegler-Nichols P I D control, capable of curbing the excessive overshoot.
Time-delay processes
The second simulation concerns time-delay processes of the following general form
G(S)
-
(10)
kpe-°ds
(Ts ~- 1) 2.
The two p a r a m e t e r s kp and T are all set to 1, and the dead-time 0d, however, will be set to two different values to examine the ability of the new controller in handling small or large dead-time. The sampling rate for the simulation remains to be 0.1. 0d is first chosen to be 2, corresponding to a relatively small dead-time. Yr is 1, and a static load disturbance is introduced at t = 35. The simulation results are shown in Figure 5. Note that the notations for the three response curves Yl, y2 and Y3 are the same as those used in the first simulation example. 0d is then set to be 6, corresponding to a relatively large dead-time. This time the static load disturbance is introduced at t = 55 to allow the process to settle down. The simulation results are summarized in Figure 6.
15
1
N o n - m i n i m u m p h a s e processes
The last simulation has to do with nonminimum phase processes. The general form of the process is given as kp(1 - ps) G(s) - -~ + ~ .
(11)
For the first process, the p a r a m e t e r s are chosen as follows; k p = l , T = I and p = 1 . 4 . Clearly, this process has a n o n - m i n i m u m phase zero at s = l i p = 3. The sampling rate is chosen to be
Close-Loop ae~pons~oe process, ; :,/'~.,
,,-~
_
~'."'--~..~_
0.5
00
10
i
i
20
30
i
i
i
i
40 50 60 70 yl(-), y2(-.) and y3(--) vs time
i
i
80
90
100
Fig. 6. The set-point and load disturbance responses of the process with large dead-time.
45
Shi-Zhong He et al. / Fuzzy self-tuning of PID controllers
Close-Loop Response of process
1.5
1
'/
,
,
.........
-°--
0 " 50
-0.5 0
5
10
15 20 25 yl(-), y2(-.) and y3(--) vs time
30
35
--
40
Fig. 7. The set-point and load disturbance responses of the first non-minimum phase process. 0.1, and the load disturbance is introduced t = 20. Figure 7 shows all the response curves. For the second n o n - m i n i m u m phase process, p is set to 2.5, both T and kp remain the same as in the previous process. The n o n - m i n i m u m phase zero in this case is at s = 3, much closer to the origin of the s-plane. All the simulation results for this process are shown in Figure 8. It follows from Figures 7 and 8 that while both the Ziergler-Nichols tuning and the Refined Ziegler-Nichols tuning cannot provide adequate control to the n o n - m i n i m u m phase processes, especially for the second one, the new scheme works r e m a r k a b l y well in both cases. Observe that the load disturbance responses also seem to improve considerably for these processes, thus contradicting the genral patterns observed in the preceding simulations. This, perhaps, should not be understood in terms of the i m p r o v e m e n t m a d e by the fuzzy self-tuning controller, in fact, its load disturbance is always acceptable (but not superior) for various kinds of processes. It should be understood in terms of the failure of the other P I D tuning schemes in providing an
1.5
acceptable level of control for certain difficult processes. The advantage of the new scheme becomes evident for controlling these processes.
4. Discussions
and conclusions
We have presented a detailed account of a fuzzy self-tuning P I D controller, its basic principle, design steps and simulation analysis. The performance of the new controller is c o m p a r e d favourably to those of the two existing conventional P I D tuning formulae. In a sense, the present work represents an extension of our early work where exactly the same adaptation mechanism is used to tune a set of fuzzy control rules [9]. In both works, our aim is to show that this so-called elastic adaptation can be used to great advantage in process control. One interesting feature of the present work is the combination of the conventional P I D controller with the fuzzy inference method. Combinations a m o n g other controllers and
CloseA,-LoopResponse of process
__ ,
0.50
05
" ' 0
.
5
.
10
.
. . . 20 25 yl(-), y2(-.) and y3(--) vs time 15
.
30
35
40
Fig. 8. Thc set-point and load disturbance responses of the second non-minimum phase process.
46
Shi-Zhong He et al. / Fuzzy self-tuning of PID controllers
mechanisms have led to encouraging results [14]. We believe that the idea of fuzzy control should go beyond the present limit of using CRI to pick up the fuzzy control rules. In fact, there is a great potential in using the fuzzy inference method as part of a control scheme, which assists the control formation rather than generates the control directly. There have been cases where the fuzzy logic is used along this line. A particular example we would like to mention is to use fuzzy logic to obtain an estimate of the so-called transient period useful for certain adaptive control scheme [8]. The present paper offers yet another non-trivial example of using fuzzy inference method as a self-tuning mechanism of a conventional controller. As the adaptation is a major part of any adaptive control scheme, the investigation along this line is certainly important in its own right, and may lead to high-performance adaptive control schemes.
References [1] K.J. ~,str6m and B. Wittenmark, Adaptive Control (Addison-Wesley, Reading, MA., 1989). [2] K.J. ,~str0m and T. Hagglund, Automatic tuning of PID controllers, Instrument Society of America, USA, 1988. [3] K.J. ,~str6m and T. H~igglund, An industrial adaptive PID controller, Proc. 1989 IFAC Symp. Adaptive System in Control and Signal Processing, 1989, pp. 293-298.
[4] C.C. Hang and K.J. ~str0m, Refinements of the Ziegler-Nichols tuning formula for PID auto-tuner, Proc. of ISA 88 Intern. Conf. and Exhibition, Houston, X., 1988, pp. 1021-1030. [5] C.C. Hang and K.J. Astr6m, Practical aspects of PID auto-tuners based on relay feedback, Proc. Intern. Syrup. Adaptive Control of Chemical Processes, Denmark, 1988, pp. 149-154. [6] C.C. Hang, K.J.A.strOm and W.K. Ho, Refinements of the Ziegler-Nichols tuning formula, lEE Proc. Part D 138 (1991) 111-118. [7] C.C. Hang, S.Z. He and T.H. Lee, The normal-modeinaction adaptive PID controller, Preprint 1992 IFAC Int. Symp. Adaptive Systems in Control and Signal Processing, France, 1992, pp. 133-138. [8] S.Z. He, C.C. Hang and T.H. Lee, Incorporating fuzzy logic into the normal-modeinaction adaptive PID controller, Proc. 1992 Singapore Intern. Conf. Intelli. Control Instru., Singapore, Vol. 2, 1992, pp. 1357-1362. [9] S.Z. He, S. Tan, C.C. Hang and P.Z. Wang, Design of an on-line rule-adaptive fuzzy control system, Proc. First IEEE Intern. Conf. Fuzzy Syst., San Diego, 1992, pp. 83-91. [10] H.S. Hoopes, W.K. Hawk and R.C. Lewis, A self-tuning controller, ISA Trans. 22 (1983) 49-58. [11] T.W. Kraus and T.J. Mayron, Self-tuning PID controllers based on a pattern recognition approach, Control Engineering, 1984, pp. 106-111. [12] T.J. Procyk and E.M. Mamdani, A linguistic selforganization process controller, Automatica 15 (1979) 15-30. [13] M. Sugeno, Industrial Applications of Fuzzy Control (North-Holland, Amsterdam, 1985). [14] S. Tan, A combined PID and neural control scheme for nonlinear dynamical systems, Proc. 1992 Singapore Intern. Conf. Intelli. Control Instru., Singapore, Vol. 1, 1992, pp. 377-383. [15] J.G. Ziegler and N.B. Nichols, Optimum setting for automatic controllers, Trans. A M S E 65 (1943) 433-444.