Copyright il:l IFAC 12th Triennial World Congress, Sydney, Australia, 1993
FUZZY ANTI-RESET WINDUP FOR PID CONTROLLERS A. Hansson*, P. Gruber** and J. TOdtll** *Department of Automatic Control, LuNi lflStiJute ofTechllOlogy, LuNi, Sweden **Corporate Research and Development, Landis ilIId Gyr Betriebs A.G., CH·6301 ZUG, Switzerland
Abstract In this paper anti windup schemes for PID controller. are proposed that consider not only actuator constraints but also process .tate con.trainb. The .cheme. are fuzzy generalizations and combinations of the traditional conditional integration anti windup .chemes. Keywords Anti·Reset Windup, Fuzzy Control, PID Control, Conditional Integration
1. INTRODUCTION
result in windup detoriation of performance. In this paper two fuzzy anti windup schemes for PID controllers are proposed, which consider not only actuator non-linearities but also other process state-constraints.
Wind up is an inherent problem in design of controllers for industrial processes. The reason for this are not only actuator constraints, but also other kinds of constraints in the processes. In order to cope with these type of non-linearities, the designmethod must either consider the non-linearities directly-non-linear design, see e.g. Kosut (1983), or the design method has to be adjusted with some more or less ad hoc fix-anti windup, see e.g. Glattfelder et al. (1983).
The proposed schemes may be seen as generalizations of some of the so called conditional integration methods, see Rundqwist (1991). There the rate of change of the integrator state is set to zero when some condition is fulfilled. Here the idea is to only decrease the rate of change of the integrator state. The idea of modifying the rate of change of the integrator state based on the control error has been implemented e.g. by Honeywell in the TDC 2000 algorithm, Honeywell (1976) . Here fuzzy logic will be used to utilize not only the control error but also the control signal saturation for the modification. The idea of using fuzzy logic to make this type of modifications, but for other purposes, has been described in Dote (1991). For sake of simplicity only PID controllers will be discussed. However, the idea to decrease the rate of change of the integrator state can easily be extended to more complex controllers.
Most controllers in industry are of PID-type. Thus it is of importance to have good tuning algorithms for these controllers, see Astrom and Hagglund (1988). Different schemes have been proposed in the literature. One way to deal with the non-linearities is to use some non-linear design such as e.g. optimal non-linear control. However, this is often computationally expensive, modeldemanding and gives little insight into the relation between model and controller, i.e. the mapping between model and controller is usually not easy to understand . Thus most of the schemes used are linear. Common to most of these schemes are that the controller is tuned around a certain operational point such that the performance is reasonable for small changes in the reference value and load disturbances. Most PID controllers are also equipped with some sort of anti windup. This anti wind up is normally designed to prevent the integrator state in the controller to become too large when large disturbances or changes in reference value cause the actuator to saturate, see Rundqwist (1991) for a good survey. However, this saturation of the actuator is usually only one of many non-linearities in an industrial process that can interfere with the linear controller and
2. CONDITIONAL INTEGRATION METHODS The idea in anti wind up schemes is to modify the integration in the PID controller when some condition is true . The reason for this is that the integrator state may become too large if the control error is large for a longer period of time due to state or actuator constraints. Consider the 917
3. THE FUZZY SCHEMES
following description of the PID controller
P(s)
bYr(s) - Y(s)
l(s)
s1i E(s)
A brief summary of fuzzy control can be found in e.g. Kickert and van Nauta Lemke (1976) . It will now be shown how the fuzzy scheme for the integral time proposed in Dote (1991) may be obtained.
1
(1)
- STd
D(s)
1 + STd / N Y (s)
V(s)
K [P(s)
+ l(s) + D(s)]
The rules for the fuzzy scheme inspired by Scheme 1) above are
where Y(s) is the measurement signal, Yr(s) is the reference value, E(s) = Yr(s) - Y(s) is the control error and V(s) is the computed non-saturated control signal, and where P(s), l(s) and D(s) are the proportional, integrator and derivative parts of the PID controller respectively. Thus it is 1( If) that is modified by an anti wind up scheme.
1) If ES then KIN 2) If EL then KIZ where ES, KIN, EL, and KIZ means lel is small, Ki is nominal , lel is large, and Ki is zero respectively. Introduce the membership functions exp( -aiel) 1 - exp( -aiel)
One subclass of anti windup methods are the conditional integration methods. These are in Rundqwist (1991) classified into five different categories as follows
for ES and EL, where a is some positive constant . Further let
1) Stop integrating when the control error is large, i.e. when lel > eo.
I, 0, { 1, 0,
2) Stop integrating when the controller saturates . 3) Stop integrating when the controller saturates and the control error has the same sign as the control signal. 5) Stop integrating and assign a predetermined or computed value to the integrator state when a specified condition is true . Notice that not all schemes above may be generalized from actuator constraints to general state constraints, since in the general case it is not only the controller saturation that has to be considered but also the state saturation, and this is usually not measurable directly. Thus when designing anti windup schemes for general state constraints it is not possible to base the scheme only on the saturation of the control signal, but information also from e.g. the control error signal has to be considered . This makes schemes such as Scheme 1) interesting. The equation for the integrator equation in the PID controller above may be written
= K .e(t) •
Ki Ki
= Kil.Om
Ki
=0
Ki
#
Ki,m,
(4)
#0
be the membership functions for KIN and KIZ, where Ki om is the nominal value of K i , i.e. the value of Ki that results from the design of the PID controller when not taking the constraints into account. Then using the max-min-inference rule introduced in Zadeh (1973), and taking as value of Ki the mean of the resulting membership function will give
4) Limit the integrator state to io .
di(t) dt
(3)
Il-Es(e) . Kr OfI'l + Il-EL(e) ·0 Il-Es(e) + Il-EL{e)
(5)
Kr orr, exp( -aiel)
The scheme for 1i is thus given by
1i(e)
= TI'OfI'l exp(alel)
(6)
where T['0Tn is the nominal integration time. Since T['om is the integral time chosen in the design of the PID controller when the constraints are neglected, there is only one parameter, a, to tune for the fuzzy anti windup scheme . Further notice that the expression for Ti (e) is gi ven explicitly. Thus the implementation of the scheme will be computation ally cheap. In Dote (1991) also the proportional gain of the controller is chosen to be a function of the control error by means of fuzzy logic. The reason for this is that the scheme is proposed for a servo system without any saturations to get a quick step response with no overshoot . Thus windup is not considered, and the interpretion as anti windup scheme is not present. Since no fuzzy anti windup scheme is reported in the literature, the proposition of using fuzzy anti wind up is believed to be novel.
(2)
where Ki = 1/1i . Thus Scheme 1) may be interpreted as changing the value of Ki from a nominal value to zero. The schemes presented below will instead modify this value to some strictly positive value. First a generalization of Scheme 1) will be considered. Then combinations of schemes 1) and 3) will be discussed in order to take care of windup due to not only state constraints but also due to actuator constraints. 918
4. THE DOUBLE TANK PROCESS
When combining Scheme 1) with Scheme 3) the following rules for the fuzzy scheme have to be considered
To see how the new schemes behave with respect to process limitations not only on the actuator signal but also on the states whithin the process a double tank process will be considered. The state limitations are due to the finite volumes of the tanks. The double-tank process has been described in Astrom and l>stberg (1986). After a linearization the transfer function from pump voltage-input to the level in the lower tank, measured in volt, is given by
1) If ES then KIN 2) If EL then KIZ 3) If VNEU and SEESV then KIZ 4) If VEU or SENESV then KIN where VNEU, SEESV, VEU, and SENESV means v =I u, sign(e) = sign(v), v = u, and sign(e) =I sign( v) respectively, and where v is the computed control signal and u the saturated control signal. Introduce the membership functions J.'VEU(U, v) { J.'VNEU(U, v)
exp( -f3lu - vI) 1 - exp( -f3lu - vI)
for VEU and VNEU, where constant . Further let J.'SEEsv(e, v)
={
I, 0,
(13) For a linearization at about 50% of maximum level the parameters are given by a = 0.015s- 1 and 13 = 0.05s- 1 . A good design for control of the process with the PID controller in (1) is given by the parameters the parameters K 5, Tt = 40 s, Td = 15 s, N = 5 and b = 0.3. This will give an overshoot of 10%, and dominating closed loop complex-conjugated poles with natural frequency 0.046 and relative damping 0.56, Rundqwist (1991) .
(7)
13 is some positive
sign( e) sign( e)
= sign( v)
=I sign( v)
=
(8)
and 1, J.'SENEsv(e, v) = { 0,
sign( e) =I sign( v) sign( e) = sign( v)
The simulations performed consist of two set point changes, one input load disturbance of -5 V and a measurement noise of 0.02 sin t V. The load disturbance occurs at t = 600 s and the measurement noise at t = 900 s. Scheme 1) of Section 2 has been simulated for the values eo = 4.0 and eo = 4.5 respectively. There is a stationary control error for eo = 4.0. For eo = 4.5 the second step response and the load disturbance cause large overshoots. Further the upper tank saturates. Scheme 4) in Section 2 was in Rundqwist (1991) rated one of the two best of the conditional integration schemes. It has been simulated for io = 20. It has a stationary control error. In order to remove this io has to be increased . However, this would cause the upper tank to saturate, since the upper tank is on the limit to saturate for io = 20 . Scheme 3) in Section 2 was in Rundqwist (1991) rated as the best of the conditional integration schemes. This scheme is simulated in Figure 1. It is seen that the second step response causes a large overshoot . Further the upper tank saturates. However , the load disturbance is handled better than in any other of the previous schemes. The tracking scheme, i.e.
(9)
be the membership functions for SEESV and SENESV. Then using the max-min-inference rule introduced in Zadeh (1973), and taking as value of Ki the mean of the resulting membership function will after several manipulations give
Ki =
Kf""' exp( -ode I) 1 - exp( -f3lu - vI) + exp( -aiel)
(10)
if sign(e) = sign(v) and f3lu - vi> aiel, and
K nom exp( -/3Iu Ki = 1 _ exp( -aiel) if sign( e)
-
vI)
+ exp( -f3lu _
vI)
(11)
= sign( v) and f3lu - v I < a le I, and finally Ki=
K n om • 2 - exp( -aiel)
(12)
if sign(e) -:j:. sign(v). As is seen above this scheme is also given in an explicit form . Further there are only two tuning parameters, a and 13. Thus the implementation will be computationally cheap, and the tuning will be easy. In this scheme the rate of change of the integrator state will be small also when the actuator saturates, i.e. when U =I v. Further from (12) the rate of change will not be decreased below Kf""' /2, when sign(e) =I sign( v) . This will prevent overshoots due to load disturbances.
di
K
1
dt
Tt
Tt
-=-e+-(u - v)
(14)
is in Rundqwist (1991) rated to be the best scheme of all anti wind up schemes considered in Rundqwist (1991) . This scheme is simulated in Figure 2 with the "optimal" choise of Tt = JTtTd = 24.5, where it is seen that the second step response causes a large overshoot . Further 919
I
and f3 = 2 is simulated in Figure 4. It is seen that this scheme outperforms all other schemes considered.
:r· · -·-
10
( ----
r ~'
0
0
10 Refe~nce Si naJ 400
200
600
800
1000
1200
1400
..,.
1600
.
Timclo
.
40 ~_~U,-"... ~nar,..",IOd:,-C",on""",lroI~5i!&!.'naI,.l,-", ('JO'!';lid""-')''''''"",-,In"",.~ra",lO,,-r",5,. ...,..."(",cdaJ ...hcd""",d)~_......
i '" !
..... --_ ..... -----------_._-_ ... _-----------
/1'- .•..
400
20
10 ...... - •.•. - .••
400
600
800
1000
1200
rTank Level
do~
~ -. . , .
600
800
1200
1000
1400
1600
Timc/&
~r------
200
l.owerTank Level solid and U
j
30
o o
~bed
--7==~m~.~_'~
40
1400
1600
TimeIa
1
Fig. 1. Simulation of the conditional integration scheme 3) of Section 2.1.
o
o
15R.cfarenceSi nal dubed LowcrTankLcvcl lolid andU
1200
1400
lcd Control Si nal (wlid), and Integrator Stale (dubed) _ _ . una&Cl
~.~~~--~-.
200
400
600
800
1000
1200
1400
1600
TimeIa
Fig. 2. Simulation of the tracking scheme in [7] with T, = 24.5.
1200
1400
1600
10 Rc(cnmccSi n.aJ
~.hcd
ASTROM, K. and T. HXGGLUNU (1988): Automatic Thning of PID Controllers . ISA, Research, Triangle Park, NC. ASTliOM, K. and A.-D. OSTHERG (1986): "A modern teaching laboratory for process control." IEEE Contr. Sys. Mag., 6:5, pp. 37-42 . DOTE, Y. (1991) : "Stability analysis of variable-structured pi controller by fuzzy logic for servo system." In Proceedings of the 30th CDC, pp . 1217-1218. GLATTVELDEIt, A., W. SCIIAUFELIJlo:RGER, and J. TOI),l'LI (1983): "Diskrde proportional-integral-differential regler mit anti-windup massnahmen ." Bulletin ASSPA/SGAZeitschri(t,3:1 and 2, pp. 12-22 and 19-28. HONEYWEI.I. (1976): "Algorithm tdc 2000-technical data." Technical Report Reference CB-10-03, Honeywell Inc., U.S.A. KICKEItT, W. and H. VAN NAUTA LEMKE (1976): "Ap_ plication of a fuzzy controller in " warm water plant." Automatica, 12, pp. 301-308. KOSUT, R. L. (1983): "Design of linear systems with saturating linear control and bounded states." IEEE Trans . Aut. Contr., AC-28, pp. 121-124. RUNDQWIST, L. (1991): "Anti-reset windup for pid controllers." Technical Report TFRT-1033, Department of Automatic Control, Lund Instiutute of Technology, Lund, Sweden. PhD Thesis . ZA()EH , L. (1973): "Outline of a new approach to the analysis of complex systems and decission processes." IEEE Trans. Systems, Man and Cybernetics, SMC3(1), pp . 28-44.
LuwerTank Level .olid and lJ le,T.ok Level dolLed
~-- ---
200
400
600
800
1000
1200
1400
1600
Tunc"
-'--------"'---'---__'---.____.. ____--'-__ 200
400
600
800
1000
1200
~L
__
1_
=
6. REFERENCES
the upper tank saturates. The first fuzzy scheme of Section 3 with Q 0.15 is simulated in Figure 3. There is no overshoot for the second
o
1000
It has been seen that the proposed schemes are easy to tune, since they have only one or two parameters to adjust, and since these parameters directly influence the rate of change of the integrator state in the controller. Further simulations have demonstrated that the second fuzzy scheme of Section 3 is superior to all other schemes considered for the double tank process.
10 / .• - .•... . ... _
o
800
5. CONCLUSIONS
1600
Ft •/_/nmnmnnm j o o
600
=
1000
u
400
Fig. 4. Simulation of the fuzzy conditional integration scheme in Section 2.3 with ex 0.3 and (3 2.
10
40
200
Time./a
rTanltL.evcl doued
~
1600
Timc/I
Fig. 3. Simulation of the fuzzy conditional integration scheme in Section 2.2 with ex = 0.15.
step response. The load disturbance causes an overshoot. This was handled better by Scheme 3), since this scheme utilizes the information of the saturation of the control signal. Further there is no saturation of the upper tank for the fuzzy scheme. The second fuzzy scheme of Section 3 with Q = 0.3
920