1 Introduction

Presently, controllers with inherent intelligence are found to be recognized as a complementary to the conventional controllers in various industrial closed-loop control applications. Fuzzy logic controller (FLC) [1, 2] belongs to a class where intelligence of an expert is incorporated through appropriate framing of fuzzy rules [3]. Proper selection of scaling factors (SFs) [4] with duly chosen fuzzy rules plays a crucial role towards designing a FLC. Inappropriate choice of SFs for FLC may result unsatisfactory closed-loop performance. Till date, SFs [5, 6] are usually chosen through multiple attempts, i.e. by trial and error or based on optimization techniques [7, 8], which are not easy to deal with for obtaining the desirable closed-loop response, especially for processes with modelling error. Consequently, improperly tuned FLC may result unwanted oscillations during servo and load recovery phases which may lead to actuator saturation [9].

For restricting oscillations during set point tracking, fixed set point weighting (FSW) [10] is a well-accepted methodology for conventional PID controllers but it hardly offers any benefit during load recovery. In case of FSW, a fixed set point weighting factor (usually 0.4–0.6) [11] is incorporated with the proportional term of the PID controller [12]. It results lower overshoot but increased rise time due to relatively sluggish response. To mitigate such inadequacies of FSW, Hang and Cao [13] introduced variable set point weighting (VSW) where the set point weighting factor gets varied during set point tracking through three distinct values to restrict the overshoot without sacrificing the dynamic behaviour of the process. However, VSW technique [13] is incompetent to provide any improvement during load rejection phase. For higher-order linear and nonlinear processes, oscillations are truly intolerable during set point tracking and load recovery, especially in the presence of dead time. Set point weighting mechanism for nonlinear processes is reported in [14] by Mantz. Sree and Chidambaram [15] proposed integral square error (ISE)-based set point weighting scheme for unstable processes with zero. In case of integrating and time delayed unstable processes, overshoots are truly excessive, and hence, to alleviate such issues set point weighting methodologies are reported in [16, 17].

To ensure acceptable performance during transient phases, fuzzy logic-based set point weighting with conventional PID controller is proposed by Visioli [18] where the weighting factor for the proportional term is calculated with the help of fuzzy rules. Later, another effective weighting strategy known as dynamic set point weighting (DSW) for PID controllers is reported in [19, 20] where the weighting factor is varied depending on the current process operating conditions and hence capable of providing an overall performance enhancement. To overcome the limitation of improper tuning for fuzzy controller which results undesired oscillations during closed-loop operation, dynamic set point weighting (DSW) mechanism [21,22,23] is incorporated while designing the FLC. DSW technique is capable of ensuring lesser oscillations while tracking new set value and faster load recovery. However, the DSW methodology is not quite straightforward to employ in real-time applications.

Here, the idea of dynamic set point weighting is realized with the help of heuristic fuzzy rules. Knowledge of an experienced process operator is utilized for designing the fuzzy rule base which provides the suitable value for set point weighting factor depending on the current process operating conditions. A set of nine predefined fuzzy rules are framed here to provide the appropriate weighting factor (\(\beta_{{{\text{fu}}}}\)) for the fuzzy PID controller based on the current change of error (\(\Delta e\)) calculated from the recent process output. Superiority of the proposed fuzzy set point weighting mechanism for the fuzzy PID controller (FSWFPID) is established by comparing its performance with conventional fuzzy PID (FPID) [4] controllers as well as other performance augmentation schemes reported for FPID controllers like self-tuning fuzzy PID (STFPID) [24, 25], dynamic set point weighting fuzzy PID (DSWFPID) [21] and fuzzy sliding mode controllers (FSMC) [26,27,28]. Superiority of the proposed FSWFPID is verified for integrating second-order and higher-order linear and nonlinear processes as they provide large oscillations in the presence of dead time. To have quantitative performance estimation for the reported controllers, a list of performance indices—percentage overshoot (%OS), rise time (tr), settling time (ts), integral absolute error (IAE), integral time absolute error (ITAE) and total variation in control action (TV)—are evaluated for each setting separately. In addition to closed-loop performance analysis, robustness of the proposed controller is also studied with parametric variations in dead time and in the presence of measurement noise. Apart from simulation study, real-time validation is made on a DC servo position control unit.

2 Proposed controller design

In this section, detailed structure of the proposed fuzzy rule-based set point weighted fuzzy PID controller (FSWFPID) is described. Figure 1a shows the block diagram of the FSWFPID with two inputs—weighted error (\(e_{{{\text{fw}}}}\)) and change of error (\({\Delta }e\)), and two outputs—normalized control action (\(u_{N}\)) and its incremental value (\({\Delta }u_{N}\)). For simplicity, fuzzy PI (FPI) and fuzzy PD (FPD) controllers are combined together to realize the fuzzy PID (FPID) controller. Benefit of this structure is that both FPI and FPD controllers share the common control rule base (CRB) and input SFs (\({\text{G}}_{e} ,{\text{ G}}_{\Delta e}\)), only the output SFs (\(G_{u} { },{ }G_{\Delta u}\)) are different. For the FPI, output SF is \(G_{\Delta u}\) whereas for the FPD it is \({ }G_{u}\). All the normalized inputs (\(e_{N} ,\Delta e_{N}\)) and outputs (\(u_{N} , {\kern 1pt} {\Delta }u_{N}\)) of FSWFPID are defined over the common normalized domain − 1– + 1. Two distinct sets of membership functions (MFs) with 7 and 5 input–output fuzzy sets are considered with 49 and 25 control rules. To avoid the need of any prior knowledge, both the control rule bases (CRB) consisting of 49 and 25 rules are designed with unbiased choice of MFs—symmetric triangles with equal base and 50% overlap with adjacent MFs as shown in Fig. 1b and d, respectively. Corresponding rule surfaces are shown in Fig. 1c and e which are found to be highly nonlinear in nature. Here, uN is the normalized output of FPD and the same is also considered as the incremental normalized output (ΔuN) for FPI.

Fig. 1
figure 1

a Block diagram of the proposed fuzzy PID controller with fuzzy set point weighting (FSWFPID) b 7 MFs for input (\(e_{N} {,}\,{\Delta }e_{N}\)) and output (\(u_{N} {,}\,{\Delta }u_{N}\)) variables c Control surface with 49 rules d 5 MFs for input (\(e_{N} {,}\,{\Delta }e_{N}\)) and output (\(u_{N} {,}\,{\Delta }u_{N}\)) variables e Control surface with 25 rules

In case of proposed fuzzy controller Mamdani type fuzzy inferencing [4] is employed. It is observed that the design method of a typical Mamdani fuzzy controller [1] is similar as sliding mode fuzzy controller where the diagonal form of CRB is treated as sliding (switching) line and the magnitude of specific positive or negative fuzzy value of control action (u) is determined on the basis of the distance between its corresponding state vector \(\left( e \right)\) and the sliding line. Hence, the control rule bases (CRB) of the proposed fuzzy controller (with 49 and 25 rules) are designed following the concept of sliding mode principle [29]. This rule generation technique is quite simple and straightforward. Consequent part of the entire rule base can easily be obtained through a simple calculation based on their respective position in the rule table using the following principle—with seven fuzzy partitions of the universe of discourse related to input (\(e,\Delta e\)) and output (\(\Delta u,u\)) variables, we have 7 fuzzy sets, i.e. \(N = 7\) and these fuzzy sets can be termed as: − 3 (NB), − 2 (NM), − 1 (NS), 0 (ZE), 1 (PS), 2 (PM), 3(PB). Similarly, with five fuzzy partitions, i.e.\({ }N = 5\), fuzzy sets can be termed as: − 2 (NB), − 1 (NS), 0 (ZE), 1 (PS), 2 (PB).

2.1 Fuzzy rule generation

Fuzzy PID (FPID) controller can be realized by parallel operation of FPI and FPD controllers which share the common control rule base (CRB), and is designed with 49 and 25 ‘If-Then’ rules as shown in Fig. 2a and b, respectively. For FPI controller, rules have the form ‘If \(e\) is \(E\) and \({\Delta }e\) is \({\Delta }E\) Then \({\Delta }u\) is \({\Delta }U\)’ and similarly, for PD type FLC (FPD) the rules have the form ‘If \(e\) is \(E\) and \({\Delta }e\) is \({\Delta }E\) Then \(u\) is \(U\)’. Fuzzy partitions are recognized with term sets {NB, NM, NS, ZE, PS, PM, PB} as shown in Fig. 1b. Fuzzy sets corresponding to \(e_{N} ,\Delta e_{N}\) and \({\Delta }u_{N} {\text{ or }}u_{N} { }\) may be indexed as \(i,{ }j,\) and \(k\), respectively, where \(i,{ }j,\) and \(k\) have index values \(\left( {{-}N + 1} \right)/2,\left( {{-}N + 3} \right)/2, \ldots \ldots . - 1,{ }0,{ }1, \ldots ..,{ }\left( {N - 3} \right)/2,{ }\left( {N - 1} \right)/2\) for \(N\) (odd) number of fuzzy partitions. Consequently, a rule \(R_{{\left( {i{ }j{, }k} \right)}}\) is framed for the input combination of fuzzy sets \(i\) and \(j\) (antecedent) with the output fuzzy set \(k\) (consequent), obtained by the following relation:

$$ \begin{gathered} {\text{If}}\left| {\left\{ {\mu_{e} \left( i \right) + \mu_{\Delta e} \left( j \right)} \right\}} \right| < \left( {\frac{N - 1}{2}} \right){\text{Then }}R_{\mu } \left[ {e\left( i \right),\Delta e\left( j \right)} \right] = \left\{ {\mu_{e} \left( i \right) + \mu_{\Delta e} \left( j \right)} \right\} \hfill \\ {\text{Else If }}\left| {\left\{ {\mu_{e} \left( i \right) + \mu_{\Delta e} \left( j \right)} \right\}} \right| \ge \left( {\frac{N - 1}{2}} \right){\text{Then }}R_{\mu } \left[ {e\left( i \right),\Delta e\left( j \right)} \right] = {\text{Sgn}}\left\{ {\mu_{e} \left( i \right) + \mu_{\Delta e} \left( j \right)} \right\}\left( {\frac{N - 1}{2}} \right). \hfill \\ \end{gathered} $$
(1)
Fig. 2
figure 2

Rule bases for computation of \(\Delta u/u\) with a 49 rules, b 25 rules, and the corresponding rule generation schemes

As an example, due to 7 fuzzy partitions (\(N{ } = { }7\)) for a given input combination\(\left( {e_{N} {,}\,{\Delta }e_{N} } \right){ = }\left( {{\text{PM,}}\,{\text{NB}}} \right)\), i.e. \(\left( {i,{ }j} \right){ } = { }\left( {2,{ } - 3} \right)\) the output fuzzy set according to Eq. (1) is given by \(k{ } = { }i{ } + { }j{ } = { }2{ } + { }\left( { - 3} \right){ } = { } - 1\), i.e. NS \(\left( {{\text{as }}\left| {i + j} \right| < \left( {\frac{N - 1}{2}} \right)} \right).\) Therefore, the corresponding rule is \(R_{{\left( {i{ }j,{ }k} \right)}} = R_{{\left( {2 - 3,{ } - 1} \right)}} = R_{{\left( {{\text{PM NB}},{\text{NS}}} \right)}}\): ‘If \(e\) is PM and \({\Delta }e\) is NB Then \(\Delta u\,{\text{or}}\,u\) is NS’. Considering another input combination (\(e_{N} ,\Delta e_{N}\)) = (PB, PB), i.e. (\(i,{ }j\)) = (3, 3) the output fuzzy set \(k = {\text{Sgn}}\left\{ {\mu_{{\text{e}}} \left( i \right) + \mu_{{{\Delta e}}} \left( j \right)} \right\}\left( {\frac{N - 1}{2}} \right) = \frac{7 - 1}{2} = 3\), i.e. PB \( \left( {{\text{as}}\left| {i + j} \right| \ge \frac{N - 1}{2}} \right)\). Hence, the corresponding rule is \({ }R_{{\left( {i{ }j,{ }k} \right)}} = R_{{\left( {3{ }3,{ }3} \right)}} = R_{{\left( {{\text{PB PB}},{\text{PB}}} \right)}}\): ‘If \(e\) is PB and \({\Delta }e\) is PB Then \(\Delta u\,{\text{or}}\,u\) is PB’. Hence, 49 fuzzy rules with 7 fuzzy partitions (i.e. for \( N = 7\)) are depicted in Fig. 2a. Likewise, with five fuzzy partitions (i.e. for \(N = 5\)) 25 rules may be framed [21] as shown in Fig. 2b.

2.2 Realization of the proposed controller

Figure 1a shows the block diagram of the proposed controller where the input variables are weighted error (\(e_{{{\text{fw}}}}\)) and change of error (\({\Delta }e\)) with SFs \(G_{e} \) and \(G_{\Delta e} { }\)

$$ e_{N} = G_{e} e_{{{\text{fw}}}} = G_{e} \left( {y_{{{\text{fu}}}} - y} \right), $$
(2)
$$ \Delta e_{N} = { }G_{\Delta e} \Delta e = G_{\Delta e} \left( {e\left( k \right) - e\left( {k - 1} \right)} \right){. } $$
(3)

In Eq. (2), the weighted error \(e_{{{\text{fw}}}}\) is \(\left( {y_{{{\text{fu}}}} - y} \right)\) where \(y_{{{\text{fu}}}}\) is the fuzzy rule-based weighted set point (Fig. 3). The weighted error \(e_{{{\text{fw}}}}\) is normalized (\(e_{N}\)) through multiplication with the input scaling factor \( G_{e}\). Similarly, in Eq. (3) \(\Delta e_{N}\) is obtained by multiplying \({\Delta }e\) with \(G_{\Delta e}\) and both the normalized inputs (\(e_{N} ,\Delta e_{N}\)) are fed to the fuzzy inference block. Similarly, output variables (\(u,\Delta u\)) are given by

$$ u = G_{u} u_{N} , $$
(4)
$$ \Delta u = G_{\Delta u} \Delta u_{N} , $$
(5)
$$ u\left( k \right) = u\left( {k - 1} \right) + \Delta u\left( k \right). $$
(6)
Fig. 3
figure 3

9 MFs for input variable (\({\Delta }e\)) and output variable (\(\beta_{{{\text{fu}}}}\))

For realizing the control action of FPI, additional integrator block is required as shown in Fig. 1a. Fuzzy PID control action (\(u_{{{\text{FPID}}}}\)) is obtained by combining the weighted outputs of FPI (\(u_{{{\text{FPI}}}}\)) and FPD (\(u_{{{\text{FPD}}}}\)) as given by Eq. (7).

$$ u_{{{\text{FPID}}}} = u_{{{\text{FPI}}}} + u_{{{\text{FPD}}}} . $$
(7)

For the FPI, incremental control output can be expressed by

$$ \Delta u_{{{\text{FPI}}}} \left( K \right) = G_{\Delta u} f\left( {e_{N} ,\Delta e_{N} } \right) = G_{\Delta u} f\left( {G_{e} e,G_{\Delta e} \Delta e} \right) $$
(8)

The nonlinear function \(f\) denotes the rule base mapping between input–output variables. Similarly, for the fuzzy PD controller (FPD) approximated linear expression of the controller output can be written as

$$ \Delta u_{{{\text{FPD}}}} \left( k \right) = G_{{\text{u}}} { }f\left( {G_{e} { }e,{ }G_{\Delta e} { }\Delta e} \right). $$
(9)

Now, if ∆t is the sampling interval then from Eq. (7) approximated linear expression of the control signal for the fuzzy PID controller (FPID) [21] at a time instant n can be written as

$$ u_{{{\text{FPID}}}} \left( n \right) = u_{{{\text{FPI}}}} \left( n \right) + u_{{{\text{FPD}}}} \left( n \right) = \mathop \sum \limits_{j = 1}^{n} \left\{ {G_{\Delta u} G_{e} { }e\left( j \right),G_{\Delta u} G_{\Delta e} { }\Delta e\left( j \right)} \right\}\Delta t + \{ G_{u} G_{e} { }e\left( n \right),G_{u} G_{\Delta e} { }\Delta e\left( n \right)\} . $$
(10)

Now, for the proposed FSWFPID, both the error signals are involved in Eq. (10) of fuzzy PI and fuzzy PD controllers, control action is computed based on fuzzy rules with set point weighting mechanism and hence it can be expressed as.

$$ u_{{{\text{FPID}}}} \left( n \right) = \mathop \sum \limits_{j = 1}^{n} [G_{\Delta u} G_{e} \left\{ {\beta_{{{\text{fu}}}} \left( j \right)y_{r} - y\left( j \right)} \right\},G_{\Delta u} G_{\Delta e} { }\Delta e\left( j \right)]\Delta t + [G_{u} G_{e} { }\left\{ {{\upbeta }_{{{\text{fu}}}} \left( n \right)y_{r} - {\text{y}}\left( n \right)} \right\},G_{u} G_{\Delta e} { }\Delta e\left( n \right)]. $$
(11)
$$ {\text{or }}u_{{{\text{FPID}}}} \left( n \right) = \mathop \sum \limits_{j = 1}^{n} G_{\Delta u} G_{e} \left[ {\left\{ {y_{{{\text{fu}}}} \left( j \right) - y\left( j \right)} \right\} + { }\Delta e\left( j \right)} \right]\Delta t + G_{u} G_{e} { }\left[ {\left\{ {y_{{{\text{fu}}}} \left( n \right) - y\left( n \right)} \right\} + { }\Delta e\left( n \right)} \right]. $$
(12)

In Eq. (11), \({\text{y}}_{{\text{r}}}\) is the set point and \(\beta_{{{\text{fu}}}} { }\) is the weighting factor which is computed with the help of 9 fuzzy rules as shown in Table 1. MFs are realized by 9 symmetric triangles having equal base and 50% overlap defined over the normalized range [− 1, + 1] and meaning of the input–output linguistic variables for MFs are listed in Table 2. Fuzzy rule-based weighting factor \(\beta_{{{\text{fu}}}}\) is calculated based on the current value of normalized change of error (\(\Delta e_{N}\)). To calculate the appropriate value of the weighting factor, the weighting parameter is added (Fig. 1a) to a constant value (unity) and the resulting weighting factor is employed to obtain the weighted set point as given by Eq. (13)

$$ y_{{{\text{fu}}}} \left( k \right) = \beta_{{{\text{fu}}}} \left( k \right) \times y_{r} . $$
(13)
Table 1 Nine fuzzy rules
Table 2 Meaning of the linguistic variables used in fuzzy inference system

3 Control strategy

The objective of the proposed FSWFPID is to ascertain that the oscillations must remain within the acceptable limit for an initially designed fuzzy controller. To achieve this goal, weighting factor \(\beta_{{{\text{fu}}}} { }\) gets varied online depending on the current change of error (\({\Delta }e\)) of the process variable. For better understanding of the online weighting mechanism, a typical closed-loop response depicting set point change followed by load disturbance along with its corresponding variation of \({\Delta }e\) and \(\beta_{{{\text{fu}}}} { }\) is shown in Fig. 4.

  1. (i)

    Subsequent to a unit step change as input, controlled variable will be smaller than the set value, i.e. \(y < y_{r}\) and process output is moving towards the set value as shown by the arrowhead at the operating point A of Fig. 4. Under such operating condition, proportional action of the fuzzy controller should be reduced to restrict the possible overshoot in the subsequent operating phase. Here, \({\Delta }e_{r}\) is negative, hence \(\beta_{{{\text{fu}}}} < 1.0\) which results the weighted set point \(y_{{{\text{fu}}}} < y_{r}\) as depicted in Table 3, i.e.\(\left( {y_{{{\text{fu}}}} - y_{ } } \right) < \left( {y_{r} - y} \right)\), thereby resulting weaker proportional action for FSWFPID compared to conventional FPID. Thus, the proposed scheme is capable of producing appropriate control action required to reduce the possible subsequent overshoot.

  2. (ii)

    As the controlled variable exceeds the desired value (point B of Fig. 4), i.e. \(y > y_{r}\) and is moving further away from it, proportional action of the controller should strengthen up to restrict this diverging nature of the controlled variable. Consequently, control action should be strong enough to bring the controlled variable quickly back to its desired value. Under such circumstances, \({\Delta }e_{r}\) is negative, so \(y_{{{\text{fu}}}} < y_{r}\) as \(\beta_{{{\text{fu}}}} < 1.0\) (i.e.\({ }\left( {y_{{{\text{fu}}}} - y_{ } } \right) > \left( {y_{r} - y} \right)\)) as the current controlled variable gets further separated from \(y_{{{\text{fu}}}}\) than the deviation from \({ }y_{r}\). Hence, the resultant proportional action of FSWFPID becomes stronger than FPID which provides faster convergence of the process by restricting further deviation of the controlled variable.

  3. (iii)

    After having overshoot, as process variable is moving rapidly towards the set point, there is a possibility of large undershoots in subsequent duration. Such situation is depicted by point C of Fig. 4 where \({\text{ y}} > y_{r}\). Under such circumstances, strength of proportional action for fuzzy controller needs to be reduced to restrict the possible undershoots. Here, \({\Delta }e_{r}\) is positive resulting \(\beta_{{{\text{fu}}}} > 1.0 \) and hence \(y_{{{\text{fu}}}} > y_{r}\) and \({ }\left( {y_{{{\text{fu}}}} - y_{ } } \right) < \left( {y_{r} - y} \right)\). Therefore, FSWFPID results relatively softer proportional action which helps to reduce undershoots compared to the conventional FPID in subsequent operating phase.

  4. (iv)

    During downward movement of the controlled variable as shown by the point D of Fig. 4 where the process is moving away from the set value, required control action from the fuzzy controller should be dominant enough to restrict the possible undershoot. In such situation, \({\Delta }e_{r}\) is positive which results \(\beta_{{{\text{fu}}}} > 1.0\), hence \(y_{{{\text{fu}}}} > y_{r}\) and \({ }\left( {y_{{{\text{fu}}}} - y_{ } } \right) > \left( {y_{r} - y} \right)\). Hence, the resultant proportional action of FSWFPID will be stronger than FPID and the overall control action becomes more aggressive to restrict the possible undershoots in the subsequent phases.

Fig. 4
figure 4

Typical closed-loop response under set point change and subsequent load variation with change of error (\({\Delta }e\)) and weighting factor (\(\beta_{{{\text{fu}}}}\))

Table 3 Variation of weighting factor and related control action

Hence, from the above discussions it is quite evident that the proposed fuzzy rule-based set point weighting mechanism for fuzzy PID controller (FSWFPID) is capable of providing suitable variation of control action which is expected to enhance the closed-loop performance of an initially tuned conventional fuzzy PID controller (FPID) during both the set point tracking and load rejection phases.

4 Performance analysis

In this section, performance of the proposed controller is evaluated through simulation study as well as real-time experimentation. Five well-known linear and nonlinear process models [12, 13, 18, 19, 20, 21, 24, 27, 28 and 29] are considered in the simulation study. The performances of the proposed FSWFPID are compared with conventional FPID and other reported fuzzy controllers, i.e. STFPID [24, 25] and DSWFPID [21]. In addition, performance comparison is also made with fuzzy sliding mode control (FSMC) [26,27,28]. FSMC has proved its robustness against variation in process dynamics and external disturbances. The sliding surface of FSMC is considered in Eq. (14) where \(\gamma\) is the surface parameter.

$$ s = \dot{e} + \gamma e{.} $$
(14)

Each process model is tested with same step set point change as well as impulse/step load disturbance. For comparison, percentage overshoot (%OS), rise time \(\left( {t_{r} } \right)\), settling time \(\left( {t_{s} } \right)\), integral absolute error (IAE), integral time absolute error (ITAE) and total variantion in control action (TV) are considered as performance indices. To establish the robustness of the proposed scheme same set of SFs, MFs and control rule bases are considered for all processes with separate values of dead time. In all cases, Mamdani type inferencing and centroid method of defuzzification is employed. For the neumerical integration Runga–Kutta fourth-order method [30] is considered and sampling time is taken as 0.1 s. Identical setting is also adopted during real-time evaluation with Quanser QUBE-Servo 2 [31] during servo tracking as well as load variations. Here, it is to mention that FSMC technique is basically PD controller by nature and hence suitable only for integrating processes.

4.1 Simulation study

4.1.1 Model I: Integrating second-order plus dead time (ISOPDT) process [12, 18,19,20,21]

Integrating second-order plus dead time (ISOPDT) model is considered as given by Eq. (15)

$$ G_{1} \left( s \right) = \frac{{Ke^{ - Ls} }}{{s\left( {{\uptau }s + 1} \right)}}. $$
(15)

This process is also known as marginally stable process as one of its poles is at the origin and the presence of the dead time results difficulty in controlling the system. Here, \(K\) is open-loop gain, \(\tau\) is the time constant, and \(L\) is the dead time. For simplicity, both the open-loop gain \(\left( K \right)\) and the time constant \(\left( \tau \right)\) are considered to be unity and four different values of dead time (\(L = 0.05{\text{s}},{ }0.1{\text{s}},{ }0.2{\text{s}},{ }0.3{\text{s}}\)) are considered during simulation study. Dead time \(L = 0.05{\text{s}}\) is considered as nominal dead time and then it is varied as \(L = 0.1{\text{s}},{ }0.2{\text{s}},{ }0.3{\text{s }}\) for evaluating the robustness of the tuned controller (for the nominal model). Closed-loop performance of the proposed FSWFPID is analysed in comparison with conventional fuzzy PID (FPID), self-tuning fuzzy PID (STFPID) [24] and dynamic set point weighting-based fuzzy PID (DSWFPID) [21] controllers. In all cases, control rule bases of the fuzzy controllers are considered to be identical, consisting of 49 and 25 rules. Figure 5a and b depict the closed-loop responses during set point tracking and load recovery phases with dead time \(L =\) 0.05 s and \(L =\) 0.3 s, respectively, involving 49 control rules. Similarly, Fig. 6a and b represent the closed-loop responses for \(L =\) 0.05 s and \(L =\) 0.3 s with 25 control rules. Tables 4 and 5 contain the performance indices in terms of percentage overshoot (%OS), rise time \(\left( {t_{r} } \right)\), settling time \(\left( {t_{s} } \right)\), integral absolute error (IAE), integral time absolute error (ITAE) and total variantion in control action (TV) during closed-loop operation with 49 and 25 control rules, respectively. From the responses (Fig. 5a, b) and the listed performance indices (Table 4) it is found that overshoot has been entirely eliminated in case of our proposed FSWFPID with 49 control rules. In addition, considerable performance enhancement has also been observed during load recovery phase compared to FPID, STFPID and DSWFPID. Here, it is to note that performance enhancement is obtained in case of our proposed FSWFPID with lesser control effort as depicted by the smaller values of TV in comparison with other fuzzy PID controllers. Superior closed-loop performance is also reported by the proposed FSWFPID with 25 control rules as depicted in Fig. 6a and b for \(L =\) 0.05 s and \(L =\) 0.3 s, and related performance indices are listed in Table 5. Moreover, to substantiate the supremacy of the proposed controller, its performance (Eq. (12)) is compared with fuzzy sliding mode controller and the related responses and control actions are depicted in Fig. 7a and b for \(L =\) 0.05 s and \(L =\) 0.3 s with 49 rules. Similarly, closed-loop responses with 25 rules are depicted in Fig. 8a and b and all the related performance indices are listed in Table 6. The variation of weighting factor for DSWFPID and FSWFPID with 49 and 25 rules for Model I with dead time \(L =\) 0.3 s are shown in Fig. 9a and b, respectively. Based on the responses and performance indices, it is found that the proposed FSWFPID offers improved set point tracking and good load regulation compared to FPID, STFPID, DSWFPID and FSMC even in the presence of parametric uncertainties.

Fig. 5
figure 5

Responses and control actions for Model I using 49 rules during set point response and with load variation for a \(L = 0.05\) s, b \(L = 0.3\) s

Fig. 6
figure 6

Responses and control actions for Model I using 25 rules during set point response and with load variation for a \(L = 0.05\) s, b \(L = 0.3\) s

Table 4 Performance analysis for Model I
Table 5 Performance analysis for Model I
Fig. 7
figure 7

Comparison among responses and control actions with FSMC for Model I using 49 rules during set point response and with load variation for a \(L = 0.05\) s, b \(L = 0.3\) s

Fig. 8
figure 8

Comparison among responses and control actions for Model I with FSMC using 25 rules during set point response and with load variation for a \(L = 0.05\) s, b \(L = 0.3\) s

Table 6 Performance analysis for Model I
Fig. 9
figure 9

Variation of weighting factor corresponding to closed-loop responses provided by DSWFPID and FSWFPID for Model I with a 49 rules and b 25 rules

4.1.2 Model II: Second-order plus dead time (SOPDT) process [12, 13, 18, 24]

A typical SOPDT process model is given by Eq. (16)

$$ G_{2} \left( s \right) = \frac{{ke^{{ - {\text{L}}s}} }}{{\left( {s + 1} \right)^{2} }}{ }{\text{.}} $$
(16)

During simulation study four different values of dead time (i.e. \(L = 0.05{\text{s}},0.1{\text{s}},0.2{\text{s}},0.3{\text{s }}\)) are considered where \(L = 0.1{\text{s}}\) is considered as nominal dead time and rest three perturbed values of dead times are considered for evaluating the robustness of the controller. Closed-loop responses along with their respective control actions with 49 rules are evaluated for \(L = 0.1{\text{s}}\) and \(L = 0.3{\text{s }}\) as shown in Fig. 10a and b, respectively. Related performance indices are listed in Table 7. Likewise, the responses for \(L = 0.1{\text{s}}\) and \(L = 0.3{\text{s }}\) with 25 rules are depicted in Fig. 11a and b, and the corresponding performance indices are shown in Table 8. From the listed values of performance indices, it is quite evident that the proposed FSWFPID is capable of restricting the initial overshoot and the load recovery is relatively faster than FPID, STFPID and DSWFPID with superior control effort.

Fig. 10
figure 10

Responses and control actions for Model II using 49 rules during set point response and with load variation for a \(L = 0.1\) s, b \(L = 0.3{\text{s}}\)

Table 7 Performance analysis for Model II
Fig. 11
figure 11

Responses and control actions for Model II using 25 rules during set point response and with load variation for a \(L = 0.1\) s, b \(L = 0.3\) s

Table 8 Performance analysis for Model II

4.1.3 Model III: Integrating fifth-order plus dead time process [32,33,34]

$$ G_{3} \left( s \right) = \frac{{Ke^{{ - {\text{L}}s}} }}{{s\left( {\tau s + 1} \right)^{4} }}. $$
(17)

Here, we consider a fifth-order integrating plus dead time process model with unity time constant \(\left( \tau \right)\) and dead time \(L = 0.3{\text{s}},0.5{\text{s and }}0.7{\text{s}}\) where \(L = 0.5{\text{s}}\) is chosen as the nominal dead time. Closed-loop performance of the proposed FSWFPID controller is analysed in comparison with the other reported controllers (FPID and STFPID) and in all cases the input and output scaling factors of the fuzzy controllers are considered to be identical with similar control rule bases consisting of 49 and 25 rules. Figure 12a and b depicts the closed-loop responses with 49 control rules for L = 0.3 s and 0.5 s. Similarly, Fig. 13a and b shows the responses with 25 rules for L = 0.5 s and 0.7 s. Performance indices for the proposed controller along with FPID and STFPID controller are listed in Tables 9 and 10 for 49 rules and 25 rules, respectively. Closed-loop responses with the proposed FSWFPID and a well-known FSMC technique for L = 0.3 s and 0.5 s with identical 49 rules are depicted in Fig. 14a and b. Similarly, responses with 25 rules are shown in Fig. 15a and b. Performance indices for the proposed controller along with FSMC are listed in Table 11. From the closed-loop responses and performance indices, it is found that the performance of the proposed FSWFPID controller is quite satisfactory with minimum overshoot and smaller IAE and ITAE values compared to FPID and STFPID. Here, it is to mention that the tuning parameters are not easy to calculate for DSWFPID with this fifth-order model.

Fig. 12
figure 12

Responses and control actions for Model III using 49 rules during set point response and with load variation for a \(L = 0.3\) s, b \(L = 0.05\) s

Fig. 13
figure 13

Responses and control actions for Model III using 25 rules during set point response and with load variation for a \(L = 0.05\) s, b \(L = 0.7\) s

Table 9 Performance analysis for Model III
Table 10 Performance analysis for Model III
Fig. 14
figure 14

Comparison among responses and control actions for Model III with FSMC using 49 rules during set point response and with load variation for a \(L = 0.3\) s, b \(L = 0.05\) s

Fig. 15
figure 15

Comparison among responses and control actions for Model III with FSMC using 25 rules during set point response and with load variation for a \(L = 0.3\) s, b \(L = 0.05\) s

Table 11 Performance analysis for Model III

4.1.4 Model IV: Second-order nonlinear process model [24]

$$ \frac{{{\text{d}}^{2} {\text{y}}}}{{{\text{dt}}^{2} }} + 0.3y\frac{{{\text{dy}}}}{{{\text{dt}}}} = u\left( {t - L} \right). $$
(18)

Performance of the reported controllers along with the proposed FSWFPID are also verified for a second-order nonlinear process as given by Eq. (18) for dead time \( L = 0.2{\text{s}}. \) Parametric variations are considered for evaluating the performances robustness with \(L = 0.05{\text{s}},0.1{\text{s and }}0.3{\text{s}}\) with the same controller settings for the nominal model. Closed-loop responses with 49 rules for \(L = 0.2{\text{s and }}0.3{\text{s }}\) are shown in Fig. 16a and b, respectively, for the conventional FPID, STFPID and DSWFPID controllers. Corresponding performance indices are depicted in Table 12. Similar set of responses with 25 rules are shown in Fig. 17a and b and the related performance indices are listed in Table 13. Performance comparison is also made with FSMC as shown in Fig. 18a and b using 49 rules with \( L = 0.1{\text{s and }}0.3{\text{s}}\). Similarly, responses with 25 rules are depicted in Fig. 19a and b and the related performance indices are listed in Table 14. Here, it is note that FSWFPID results zero overshoot and considerable performance enhancement is observed (substantiated by smaller IAE and ITAE values) during load recovery phases compared to FPID, STFPID, DSWFPID and FSMC. Furthermore, total exerted control effort as given by TV value is also found to be smaller for FSWFPID.

Fig. 16
figure 16

Responses and control actions for Model IV using 49 rules during set point response and with load variation for a \(L = 0.2\) s, b \(L = 0.3\) s

Table 12 Performance analysis for Model IV
Fig. 17
figure 17

Responses and control actions for Model IV using 25 rules during set point response and with load variation for a \(L = 0.2\) s, b \(L = 0.3\) s

Table 13 Performance analysis for Model IV
Fig. 18
figure 18

Comparison among responses and control actions for Model IV with FSMC using 49 rules during set point response and with load variation for a \(L = 0.1\) s, b \(L = 0.3\) s

Fig. 19
figure 19

Comparison among responses and control actions for Model IV with FSMC using 25 rules during set point response and with load variation for a \(L = 0.1\) s, b \(L = 0.3\) s

Table 14 Performance analysis for Model IV

4.1.5 Model V: Third-order nonlinear process model

$$ \frac{{{\text{d}}^{3} {\text{y}}}}{{{\text{dt}}^{3} }} + \frac{{{\text{d}}^{2} {\text{y}}}}{{{\text{dt}}^{2} }} + 0.5y\frac{{{\text{dy}}}}{{{\text{dt}}}} = u\left( {t - L} \right). $$
(19)

Performance of FSWFPID is also demonstrated for a third-order nonlinear process as given by Eq. (19) with dead time \( L = 0.1{\text{s}},0.2{\text{s and }}0.3{\text{s}}\). Dead time \(L = 0.2{\text{s}}\) is chosen as the nominal dead time and consequently ± 50% perturbations are incorporated to justify the robustness of the proposed controller. Its responses along with their respective control actions for \(L = 0.2{\text{s and }}0.3{\text{s}}\) with 49 are shown in Fig. 20a and b and with 25 rules are shown in Fig. 21a and b, respectively. Here, closed-loop responses for the proposed controller are compared with conventional FPID, STFPID and DSWFPID controllers. Closed-loop performance comparison is also made with FSMC for \(L = 0.2{\text{s and }}0.3{\text{s}}\) and is shown in Figs. 22 and 23, respectively, with 49 rules and 25 rules. Related performance indices are listed in Table 15 for 49 rules and Table 16 for 25 rules. Superiority of FSWFPID is also observed for this third-order nonlinear model in terms of smaller overshoot and faster settling in comparison with FPID, STFPID, DSWFPID and FSMC. Acceptable robustness of the proposed FSWFPID is also substantiated under parametric uncertainities of the nonlinear process model.

Fig. 20
figure 20

Responses and control actions for Model V using 49 rules during set point response and with load variation for a \(L = 0.2\) s, b \(L = 0.3\) s

Fig. 21
figure 21

Responses and control actions for Model V using 25 rules during set point response and with load variation for a \(L = 0.2\) s, b \(L = 0.3\) s

Fig. 22
figure 22

Comparison among responses and control actions for Model V with FSMC using 49 rules during set point response and with load variation for a \(L = 0.2\) s, b \(L = 0.3\) s

Fig. 23
figure 23

Comparison among responses and control actions for Model V with FSMC using 25 rules during set point response and with load variation for a \(L = 0.2\) s, b \(L = 0.3\) s

Table 15 Performance analysis for Model V
Table 16 Performance analysis for Model V

4.2 Real-time experimentation

In addition to the simulation study, performance of FSWFPID along with FPID, STFPID and DSWFPID is evaluated on a PC-based servo position control system QUBE-Servo 2 by Quanser [31]. It is a compact rotary servo unit with inbuilt DAQ to perform a range of servo control experiments. During experimentation, the QUBE-Servo 2 has been configured with the QFLEX 2 module which allows control by a computer via USB connection. An easily attachable inertia (0.6 × 10 − 6 kg-m2) disc is driven by a direct drive 18 V brushed DC motor. Rotary encoders (2048 lines/revolution) are used to measure the angular position of the disc and the angular velocity of the motor can also be measured.

Connection between the different system components on the QUBE-Servo 2 is illustrated in Fig. 24a and the snapshot of the experimental setup is depicted in Fig. 24b. Motor and encoders are connected to the encoder input (EI) of the data acquisition (DAQ) block. The analog output (AO) channel is connected to the power amplifier which drives the DC motor. The DAQ analog input (AI) channel is connected to the PWM amplifier. The DAQ can be interfaced to the PC via USB link in the QFLEX 2 USB. All the reported fuzzy controllers along with FSWFPID are designed with the help of MATLAB–Simulink for their performance evaluation on QUBE-Servo 2. For position control, open-loop transfer function of the motor is given by

$$ G_{\theta } \left( s \right) = \frac{{26.5{\text{ e}}^{ - 0.01s} }}{{s\left( {0.155s + 1} \right)}}. $$
(20)
Fig. 24
figure 24

a Block schematic for experimental setup of Quanser QUBE-Servo 2. b Snapshot of experimental setup of Quanser QUBE-Servo 2

Responses and the related control actions of all the reported fuzzy controllers with 49 control rules during set point tracking are shown in Fig. 25a and load rejection responses are provided in Fig. 25b. Similar set of responses with 25 control rules are depicted in Fig. 26a and b, respectively. Real-time responses clearly substantiate the improved performance of the proposed FSWFPID in comparison with STFPID and DSWFPID. Superiority of FSWFPID is also validated from the listed values of performance indices of Table 17. Overshoot is completely eliminated in case of our proposed FSWFPID. IAE and ITAE values are found to be smaller for the proposed controller than the other reported controllers (STFPID and DSWFPID). Noise sensitivity of FSWFPID is also evaluated with addition of a measurement noise. Substantial noise signal with power 0.01 is incorporated to assess the efficacy of the proposed FSWFPID controller in the presence of unwanted noise during closed-loop operation. Responses of the proposed FSWFPID for both 49 and 25 control rules in the presence of noise are depicted in Fig. 27a and b. From the responses of Fig. 27a and b, it is clear that the proposed FSWFPID has strong noise immunity and capable of exhibiting stable behaviour during both the transient and steady-state operating phases.

Fig. 25
figure 25

Responses and control actions for Quanser QUBE-Servo 2 using 49 rules during a set point tracking and b load recovery

Fig. 26
figure 26

Responses and control actions for Quanser QUBE-Servo 2 using 25 rules a during set point tracking and b load recovery

Table 17 Performance analysis for real-time experimentation with Quanser QUBE-Servo 2
Fig. 27
figure 27

Responses of Quanser QUBE-Servo 2 for STFPID, DSWFPID and FSWFPID along with noise signal for a 49 and b 25 control rules

5 Conclusion

Here, a simple but robust tuning scheme with fuzzy rule-based set point weighting technique is proposed for an initially designed fuzzy PID controller. The most important feature of the proposed controller is that its functioning methodology is independent of the process model. Performance of the proposed tuning strategy is validated with well-known linear and nonlinear process models. Instantaneous value of the set point weighting factor is obtained based on expert defined 9 fuzzy rules depending on the instantaneous process change of error. The proposed methodology is found to be quite effective to provide acceptable performance with minimum overshoot during set point tracking as well as acceptable load variation. Efficacy of the proposed methodology has been justified through simulation study and real-time experimentation. Robustness of the proposed controller has also been observed in the presence of measurement noise. In future scope, number of fuzzy rules for fuzzy set point weighting may be increased towards further enhancement of the fuzzy PID controller. Moreover, similar strategy may also be adopted for Type-2 fuzzy controller and intuitionistic fuzzy control in noisy environment.