Introduction

Nowadays, the network control system (NCS) has attracted much interest because it is easy to install and has high flexibility [1,2,3]. On the other hand, the bandwidth, and the computing capabilities of NCS are limited. Hence, in order to reduce the computational burden and enhance the limited communication resources, event-triggered control (ETC) schemes have been widely concerned [4, 5]. Fundamentally, the event-triggered control scheme samples the system’s output and performs the control action whenever a specific event exceeds a defined threshold. There are two types of event-triggered control schemes: continuous event-triggered control (CETC) scheme and periodic event-triggered control (PETC) scheme. Based on CETC, dedicated analog hardware is needed to continuously check the event condition, which is difficult in digital implementations [6,7,8,9,10,11]. Hence, to make be more suited for practical implementations, PETC only checks the event condition periodically at explicit sampling instances [12,13,14].

Recently, the ETC has been developed for nonlinear model-based control systems to improve its ability to deal with the limited resources of NCS. In this context, H∞ ETC is introduced for vehicle active suspension systems under linear fraction uncertainties [15]. In [12], a predictor-based PETC is developed for nonlinear uncertain systems with input delay, adaptive PETC output-feedback control is used to control switched nonlinear systems [13], and a nonlinear NCS with a PETC is developed in [14]. A modified repetitive PETC with equivalent input disturbance for linear systems subject to unknown disturbance was proposed in [16]. In [17], T-S fuzzy model is used to approximate the nonlinear system with a repetitive control based on a PETC. The sliding-mode control (SMC) approaches for nonlinear systems have been developed using ETC schemes [18, 19]. It is noteworthy that the common features in most of the above-mentioned results are presented on the basis of the dynamic equations of the system known in advance. However, the system dynamics in real applications are complex and therefore it is difficult to obtain the precise dynamic equations of the systems. Therefore, several results of ETC approaches based on data-driven control methods have been emergence.

Basically, the data-driven control (DDC) schemes are constructed directly using input–output (I/O) measured data (online or offline) [20, 21]. Based on this concept, many strategies have been presented, such as dynamic programming [22], iterative feedback tuning [23, 24], iterative learning control [6, 9], virtual reference feedback tuning [25], and model free adaptive control (MFAC) [26,27,28,29,30]. Among them, the MFAC scheme has attracted a lot of attention in controlling nonlinear systems with unknown dynamics [31]. This scheme replaces the global nonlinear model with a sequence of dynamic equivalent linearized time-varying data models which are constructed at each current operating point using a time-varying term known as the pseudo-partial derivative (PPD). The online dynamic linearization model (DLM) can be accomplished in three different methods: full-form dynamic linearization (FFDL), partial-form dynamic linearization (PFDL), and compact-form dynamic linearization (CFDL) [26, 31, 32]. Consequently, based on the MFAC framework, the ETC approaches have been established for nonlinear systems [33]. Regarding the effectiveness of MFAC when working with unidentified systems, an ETC technique uses the estimated weight of the neural network to estimate the pseudo-gradient vector has been presented [34]. In [9], a low computation cost MFAC triggering approach is proposed where the MFAC with adaptive iterative learning control based on ETC is constructed for nonlinear systems.

Over the past decades, due to the capability of fuzzy reasoning and the learning abilities of neural networks, the fuzzy neural network (FNN) has become an effective approach in the modeling and control of nonlinear processes [35,36,37,38,39]. One of the developments of the fuzzy theory, the intuitionistic fuzzy (IF) theory includes the membership function and non-membership function in describing confusion [40]. Using this concept would get more flexibility and then more realistic results in several applications. Consequently, IF has been used in medical applications [41], control, and synchronization of chaotic systems [42, 43]. In [44] an adaptive IF neural network (IFNN) has been proposed for the control and synchronization of chaotic systems. Type-2 IFNN for regression problems has been proposed in [45].

Based on the above discussion, in this paper, a discrete event triggered MFAC using an IFNN for nonlinear systems is developed. In this proposed scheme, the IFNN is developed as an approximation tool for the time-varying PPD in the MFAC approach in both the partial and compact forms. Based on the discrete event-triggering framework to save system resources and reduce the computation time, the proposed MFAC using the IFNN is developed. Here, two PETC mechanisms are investigated; the first one tests the event-triggered condition at the fixed sampling period of the controlled systems whereas the second one examines the condition at certain instants depending on a predetermined period to save system resources even more. Using the backpropagation algorithm, the updating of the parameters of the IFNN is provided when the event-triggered condition is satisfied. On the basis of the Lyapunov theory and the BIBO method, sufficient conditions for the convergence and the stability of the proposed scheme are derived. In order to investigate the effectiveness of the proposed MFAC-PETC, two simulation examples including the CSTR system and heat exchanger system are given. Moreover, the proposed controllers are validated practically in a real-time application via the speed control for a shunt direct current (DC) motor. In the end, we can summarize the contribution of this article as follows:

  1. (i)

    Developing the IFNN as an approximator tool in the MFAC approach for nonlinear systems using the PFDL and the CFDL.

  2. (ii)

    Combining two PETC methods with the proposed MFAC based on the IF approximator to save system resources and reduce the computation time.

  3. (iii)

    Extracting the conditions that guarantee the convergence of the training process of the IFNN approximator and the stability of the proposed data-driven control system.

  4. (iv)

    The practical validation of the proposed scheme by means of the speed control of a DC motor.

The rest of this paper is organized as follows. In "MFAC scheme", the MFAC based on both PFDL and CFDL is explored. The proposed MFAC based on an IFNN including the network structure and the adaptive update laws is presented in "MFAC based on IFNN". In "Event-triggered MFAC scheme", the MFAC with the periodic event-triggered output scheme is described. The stability analysis is studied in "Convergence and stability analysis". In "Simulation results", simulation and practical results are introduced to demonstrate the performance of the proposed control scheme. Finally, the conclusions are summarized in “Conclusion”.

MFAC scheme

Consider a discrete-time nonlinear single-input single-output (SISO) system given in the following general form:

$$\begin{aligned} y\left( {k~ + ~1} \right)~ &= ~f~\Bigg( y\left( k \right),y\left( {k - 1} \right), \ldots ,~y\left( {k~{-}~n_{y} } \right),\\ & \quad ~u\left( k \right),u\left( {k - 1} \right) \ldots ,~u\left( {k~ - ~n_{u} } \right) \Bigg) \end{aligned}$$
(1)

where, \(u(k)\) and \( y(k) \in R \) stand to the control input and the system output at the time instant \(k\), respectively. The two unknown orders of the above nonlinear system are represented by two unknown positive integers \({n}_{y}, {n}_{u}\) with an unknown nonlinear function \(f (.)\). For system (1), the following assumptions are defined.

Assumption 1.

The partial derivatives of nonlinear function \(f (.)\in R\) related to all variables are continuous.

Assumption 2.

System (1) satisfies the generalized Lipschitz condition which states that \(\left|\Delta y\left(k + 1\right)\right|\le s\Vert \Delta U\left(k\right)\Vert \) and \(\Vert \Delta U\left(k\right)\Vert \ne 0\) for any \(k\), where \(s\) is a positive constant, \(\Delta y\left(k + 1\right)= y\left(k + 1\right)- y\left(k\right), \Delta U\left(k\right)= {\left[\Delta u\left(k\right), \Delta u\left(k-1\right),\dots \Delta u\left(k-L+1\right)\right]}^{T},\) \(\Delta u(k-i)=u(k-i)-u(k-i-1)\) and \(i=\mathrm{0,1},\dots ., L-1\), where \(L>0\) is called control input length constant of linearization.

Remark 1

It is worth noting that assumptions 1 and 2 are acceptable and reasonable from the perspective of practical applications. Assumption 1 is a standard constraint of controller design for typical nonlinear systems and Assumption 2 is a linear-like constraint that guarantees that the rate of change of the system output has an upper bound limitation with bounded change in the control input. For example, the output speed changes of a dc motor cannot go to infinity if the changes in the input voltage to its drive circuit are bounded. Also, many practical systems such as pressure, refrigeration, and temperature control can satisfy the above two assumptions [32].

Based on the assumptions mentioned above, system (1) can be linearized into the following form [32].

$$ \hat{y}\left( {k + 1} \right) = y\left( k \right) + \Phi^{T} \left( k \right)\Delta U\left( k \right), $$
(2)

where \(\Phi \left(k\right)\) is the bounded pseudo-partial derivative (PPD) function. PPD is a slowly changed time-varying parameter that can be estimated at every sample to approximate the system attitude in a linear dynamic form. This function can be established using only the historical I/O measurement data of the closed-loop system. Generally speaking, this linearization form does not require any type of system parameter identification or structural information of the controlled system [34]. Based on the PPD approximation, different forms for the dynamic linearized model given in (2) including the CFDL and PFDL are defined. For the CFDL method, the PPD \(\Phi (k)\) is given as a scalar value \({\phi }_{1}\left(k\right)\) and then model (2) becomes:

$$ \hat{y}\left( {k + 1} \right) = y\left( k \right) + \phi_{1} \left( k \right)\Delta u\left( k \right). $$
(3)

On the other side, the PPD value for the PFDL for model (2) is given as a vector:

$$ \Phi \left( k \right) = \left[ {\phi_{1} \left( k \right),\phi_{2} \left( k \right), \ldots \phi_{L} \left( k \right)} \right]^{T} ,\; \| \Phi \left( k \right) \| < s , $$
(4)

where \(L\) could be chosen as an integer in the range \(L=2\) to \(L= {n}_{y}+{n}_{u}\) [32]. It is noted that, the CFDL is simpler and faster when compared with the PFDL but with some reduction in the accuracy of the dynamic linearization. Moreover, the CFDL is a PFDL in case of \(L=1\).

Based on the linearized model (2), the control laws of the MFAC based on both the CFLD and PFDL are defined as below [32]:

$$ u\left( k \right) = u\left( {k - 1} \right) + \frac{{p_{1} \phi_{1} \left( k \right)\left( {y^{*} \left( {k + 1} \right) - y\left( k \right)} \right)}}{{\lambda + \left| {\phi_{1} \left( k \right)} \right|^{2} }} $$
(5)
$$ u\left( k \right) = u\left( {k - 1} \right) + \frac{{p_{1} \phi_{1} \left( k \right)\left( {y^{*} \left( {k \!+\! 1} \right) \!-\! y\left( k \right)} \right) \!-\! \phi_{1} \left( k \right)\mathop \sum \nolimits_{i = 2}^{L} p_{i} \phi_{i} \left( k \right)\Delta u\left( {k \!-\! i \!+\! 1} \right)}}{{\lambda + \left| {\phi_{1} \left( k \right)} \right|^{2} }}, $$
(6)

where \(p={[{p}_{1},\dots,{p}_{L}]}^{T}\) is a step-size vector, \({p}_{i} \,\epsilon\, (\mathrm{0,1}]\), \({y}^{*}\left(k\right)\) is the desired output, \(\lambda > 0\) is the weighting factor, \(\left|{\phi }_{1}\left(k\right)\right|>\varepsilon \) at each sampling instant \(k\), and \(\varepsilon \) is a positive constant.

Actually, the control laws (5) and (6) cannot be implemented because the elements of \(\Phi \)(k) are unknown and time-varying parameters. Thus, the IFNN has developed to estimate the PPD function within the MFAC approach in the next section.

MFAC based on IFNN

To solve the MFAC problem (6), each element of \(\Phi \left(k\right)\) can be approximated by the following form:

$${\widehat{\phi }}_{m}\left(k\right)={\mathcal{F}}_{m}(z,W)$$
(7)

where \(z\in {\mathcal{R}}^{n}\) is the input vector and \(W\) are the approximation weights. In this work, the nonlinear function \({\mathcal{F}}_{m}\left(.\right)\) has been estimated using an intuitionistic fuzzy logic system in the neural network structure as described in the following sub-section followed by the adaptive law of the network weights.

Structure of IFNN

To approximate the nonlinear function (7), an IFNN with two inputs and multi outputs has been developed as shown in Fig. 1. This network consists of four layers and the function of each layer is illustrated as follows.

Fig. 1
figure 1

Layers structure of IFNN


Layer 1 (Input layer): this layer only accepts the input vector of the network. Here, it consists of two nodes such that \(z=[\Delta y(k) \ \Delta u(k)]\).


Layer 2 (Fuzzification layer): this layer includes two groups of nodes. The first one represents the membership function part and the output of each node in this group can be calculated as:

$${h}_{i,j}\left(z\right)={e}^{\frac{-0.5{({z}_{j}-{cm}_{i,j})}^{2}}{{dm}_{i,j}^{2}} } i=1,\dots, N, j=1, 2$$
(8)

where \(N\) stands to the number of membership functions nodes for each input, \({cm}_{i,j}\) and \({dm}_{i,j}\) are the center and the width of the membership function, respectively. Besides, the second group represents the non-membership function part, and the output for each node is defined as:

$${v}_{i,j}\left(z\right)={e}^{\frac{-0.5{({z}_{j}-{cn}_{i,j})}^{2}}{{dn}_{i,j}^{2}}} i=1,\dots, N, j=1, 2$$
(9)

For this layer, the necessary condition for the intuitionistic fuzzy logic has been considered [42, 43]. This condition is defined as:

$$\begin{aligned} & 0 \le h_{i,j} \left( z \right) + v_{i,j} \left( z \right) \le 1,\; h_{i,j} \left( z \right),\\ & v_{i,j} \left( z \right) \in \left[ {0,1} \right], i = 1,.., N\;{\text{and}}\;j = 1, 2. \end{aligned}$$
(10)

Layer 3 (Rule layer): this layer is composed of two groups and each group with \(N\) nodes. The output for each node for the first group is the rule firing strength for the membership function part which can be calculated using the product operation:

$${hr}_{i}\left(k\right)=\prod_{j=1}^{2}{h}_{i,j} \left(z\right)$$
(11)

Similarly, the nodes in the second group represent the rule firing strength for the non-membership function part and can be expressed as:

$${vr}_{i}\left(k\right)=\prod_{j=1}^{2}{v}_{i,j} \left(z\right)$$
(12)

Layer 4 (Output layer): in this layer, the \({m}^{\rm th}\) output of the IFNN based on the center of area (COA) method is defined as:

$$ \hat{\phi }_{m} \left( k \right) = \frac{{\mathop \sum \nolimits_{i = 1}^{n} \left( {W_{{M,\left( {i,m} \right)}} hr_{i} \left( k \right) - W_{{N,\left( {i,m} \right)}} vr_{i} \left( k \right)} \right)}}{{\mathop \sum \nolimits_{i = 1}^{n} \left( {hr_{i} \left( k \right) - vr_{i} \left( k \right)} \right)}},\;{\text{where}}\;m = \left\{ {1,2, \ldots ,L} \right\}, $$
(13)

\({W}_{M},{W}_{N}\) are the membership output weights and non-membership output weights, respectively. Thus, for \(L=1\), the IFNN is an approximator for the PPD in the CFDL. Generally, the estimation of the output of DLM can be defined as follows:

$$\begin{aligned} &\hat{y}\left( {k + 1} \right) = y\left( k \right) + {\hat{\Phi }}^{T} \left( k \right){\Delta }U\left( k \right),\;{\text{where}}\\ &{\hat{\Phi }}\left( k \right) = \left[ {\hat{\phi }_{1} \left( k \right),\hat{\phi }_{2} \left( k \right), \ldots \hat{\phi }_{L} \left( k \right)} \right]^{T} .\end{aligned} $$
(14)

Updating laws

To derive the updating laws of the parameters of IFNN approximator for the PPD vector, the following cost function is defined:

$$E\left(k\right)=\frac{1}{2}{{e}_{p}(k)}^{2}=\frac{1}{2}{\left(y\left(k\right)-\widehat{y}\left(k\right)\right)}^{2},$$
(15)

where \({e}_{p}(k)\) is the modeling error between the actual output \(y\left(k\right)\) and the DLM output \(\widehat{y}\left(k\right)\) at the sampling instant \(k\). Hence, the free parameters of IFNN including the output weights (i.e., \({W}_{M},{W}_{N}\)), the membership function parameters (i.e., \(cm ,\) \(dm\)) and the non-membership function (i.e., \(cn,\) \(dn\)) can be updated according to the gradient of descent method as below.

The updating law for the output weights can be given as:

$${\Delta W}_{M(i,m)}\left(k\right)=-\eta \frac{\partial E\left(k\right)}{\partial {W}_{M\left(i,m\right)}\left(k\right)}=-\eta \frac{\partial E\left(k\right)}{\partial \widehat{y}\left(k\right)} \frac{\partial \widehat{y}\left(k\right)}{\partial {\widehat{\phi }}_{m}(k)}\frac{\partial {\widehat{\phi }}_{m}(k)}{\partial {W}_{M(i,m)}\left(k\right)}$$
(16)
$${\Delta W}_{N(i,m)}\left(k\right)=-\eta \frac{\partial E\left(k\right)}{\partial {W}_{N\left(i,m\right)}\left(k\right)}=-\eta \frac{\partial E\left(k\right)}{\partial \widehat{y}\left(k\right)} \frac{\partial \widehat{y}\left(k\right)}{\partial {\widehat{\phi }}_{m}(k)}\frac{\partial {\widehat{\phi }}_{m}(k)}{\partial {W}_{N(i,m)}\left(k\right)}.$$
(17)

From (13) to (15), we have:

$$\begin{aligned} {{\Delta }}W_{{M,\left( {i,m} \right)}} \left( k \right) &= - \eta e_{p} \left( k \right){{\Delta }}u\left( {k - m + 1} \right)\\ & \quad \times \frac{{hr_{i} \left( k \right)}}{{\mathop \sum \nolimits_{{i = 1}}^{N} \left( {hr_{i} \left( k \right) - vr_{i} \left( k \right)} \right)}} \end{aligned}$$
(18)
$$\begin{aligned} {{\Delta }}W_{{N,\left( {i,m} \right)}} \left( k \right) &= - \eta e_{p} \left( k \right){{\Delta }}u\left( {k - m + 1} \right)\\ & \quad \times \frac{{vr_{i} \left( k \right)}}{{\mathop \sum \nolimits_{{i = 1}}^{N} \left( {hr_{i} \left( k \right) - vr_{i} \left( k \right)} \right)}} \end{aligned}$$
(19)

where \(\eta >0\), is the step size of the steepest descent algorithm. For the membership function parameters, the updating laws are:

$$ \Delta cm_{{i,j}} \left( k \right) = - \eta \frac{{\partial E\left( k \right)}}{{\partial cm_{{i,j}} \left( k \right)}} = - \eta \frac{{\partial E\left( k \right)}}{{\partial \hat{y}\left( k \right)}}~\frac{{\partial \hat{y}\left( k \right)}}{{\partial \hat{\phi }_{m} \left( k \right)}}\frac{{\partial \hat{\phi }_{m} \left( k \right)}}{{\partial hr_{i} \left( k \right)}}\frac{{\partial hr_{i} \left( k \right)}}{{\partial h_{{i,j}} \left( z \right)}}\frac{{\partial h_{{i,j}} \left( z \right)}}{{\partial cm_{{i,j}} \left( k \right)}} $$
(20)
$$ \Delta dm_{{i,j}} \left( k \right) = - \eta \frac{{\partial E\left( k \right)}}{{\partial dm_{{i,j}} \left( k \right)}} = - \eta \frac{{\partial E\left( k \right)}}{{\partial \hat{y}\left( k \right)}}~\frac{{\partial \hat{y}\left( k \right)}}{{\partial \hat{\phi }_{m} \left( k \right)}}\frac{{\partial \hat{\phi }_{m} \left( k \right)}}{{\partial hr_{i} \left( k \right)}}\frac{{\partial hr_{i} \left( k \right)}}{{\partial h_{{i,j}} \left( z \right)}}\frac{{\partial h_{{i,j}} \left( z \right)}}{{\partial dm_{{i,j}} \left( k \right)}} $$
(21)

From (8) to (15), the above laws can be calculated by:

$$\begin{aligned} \Delta cm_{{i,j}} \left( k \right) &= - \eta e_{p} \left( k \right){{\Delta }}u\left( {k - m + 1} \right)~ \\ & \quad \times \frac{{W_{{M,\left( {i,m} \right)}} \left( k \right)}}{{\mathop \sum \nolimits_{{i = 1}}^{N} \left( {hr_{i} \left( k \right) - vr_{i} \left( k \right)} \right)}}{\text{~}}\frac{{hr_{i} \left( k \right)}}{{h_{{i,j}} \left( z \right)}}{\text{~}}\frac{{\partial h_{{i,j}} \left( z \right)}}{{\partial cm_{{i,j}} \left( k \right)}} \end{aligned}$$
(22)
$$\begin{aligned} \Delta dm_{{i,j}} \left( k \right) &= - \eta e_{p} \left( k \right)\Delta u\left( {k - m + 1} \right)~ \\ & \quad \times \frac{{W_{{M,\left( {i,m} \right)}} \left( k \right)}}{{\mathop \sum \nolimits_{{i = 1}}^{N} \left( {hr_{i} \left( k \right) - vr_{i} \left( k \right)} \right)}}~\frac{{hr_{i} \left( k \right)}}{{h_{{i,j}} \left( z \right)}}~\frac{{\partial h_{{i,j}} \left( z \right)}}{{\partial dm_{{i,j}} \left( k \right)}} \end{aligned}$$
(23)

Similarly, the updating laws for the non-membership function parameters can be given as:

$$\begin{aligned} \Delta cn_{{i,j}} \left( k \right) = & - \eta e_{p} \left( k \right)\Delta u\left( {k - m + 1} \right)\\ &\frac{{W_{{N,\left( {i,m} \right)}} \left( k \right)}}{{\mathop \sum \nolimits_{{i = 1}}^{N} \left( {hr_{i} \left( k \right) - vr_{i} \left( k \right)} \right)}}\\ &\frac{{vr_{i} \left( k \right)}}{{v_{{i,j}} \left( z \right)}}\,\frac{{\partial v_{{i,j}} \left( z \right)}}{{\partial cn_{{i,j}} \left( k \right)}}\end{aligned} $$
(24)
$$\begin{aligned} \Delta dn_{{i,j}} \left( k \right) &= - \eta e_{p} \left( k \right)\Delta u\left( {k - m + 1} \right)~ \\ & \quad \times \frac{{W_{{N,\left( {i,m} \right)}} \left( k \right)}}{{\mathop \sum \nolimits_{{i = 1}}^{N} \left( {hr_{i} \left( k \right) - vr_{i} \left( k \right)} \right)}}~\frac{{vr_{i} \left( k \right)}}{{v_{{i,j}} \left( z \right)}}~\frac{{\partial v_{{i,j}} \left( z \right)}}{{\partial dn_{{i,j}} \left( k \right)}} \end{aligned}$$
(25)

Event-triggered MFAC scheme

In this section, a periodic event-triggering control mechanism is established with the proposed MFAC based on the IFNN. Figure 2 presents the proposed MFAC-IFNN-PETC, where the IFNN is used to estimate the PPD of the MFAC which is combined with the PETC in the sensor-to-controller transmission channel. In view of the PETC, the signal transmission from the sensor to the controller is executed only when the following condition is satisfied.

$$ k_{{j + 1}} = k_{j} + {\text{min}}\left\{ {k > k_{j} ~|\left| {y\left( {k_{j} } \right) - y\left( k \right)} \right| \ge \delta } \right\},\;j~ = ~1,2,3, \ldots, $$
(26)

where \({k}_{j}\) is the transmission instant; and \(\delta >0\) is the triggering parameter. The discrete event-triggering condition (26) shows that the next triggering instant \({k}_{j+1}\) is influenced not only by the variation of the system's output, but also by the given triggering parameter \(\delta \), so it reduces the number of transmission instants.

Fig. 2
figure 2

The block diagram of the proposed MFAC-IFNN-PETC. (where \({q}^{-1}\) is the back shift operator)

According to (26), a discrete event function can be defined as:

$$P\left({k}_{j},k,\delta \right)=\left|y\left({k}_{j}\right)-y\left(k\right)\right|-\delta $$
(27)

For every given set of triggering parameters, the measurement output will be sent to the controller only if \(P({k}_{j},k,\delta )\ge 0\) is true. Otherwise, the controller will continue to use the most recent incoming data due to the influence of the hold block in Fig. 2.

Now, we can define:

$$\overline{y }\left(k\right)=y\left({k}_{j}\right), { k}_{j}\le k\le {k}_{j+1}$$
(28)

where \(\overline{y }(k)\) is the most recent event-triggered data until the next arrives.

Hence, the event-triggering error is given by:

$${e(k)}_{\mathrm{ETC}}=\overline{y }\left(k\right)-y(k)$$
(29)

Accordingly, the event triggering condition can be formulated as:

$$\left|{e\left(k\right)}_{\mathrm{ETC}}\right|\ge \delta $$
(30)

Thus, based on the event triggering mechanism, the model free control laws given in (5) and (6) can be modified as:

$$u\left(k\right)=u\left(k-1\right)+\frac{{p}_{1}{\widehat{\phi }}_{1}\left(k\right)\left({y}^{*}\left(k+1\right)-\overline{y }\left(k\right)\right)}{\lambda +{|{\widehat{\phi }}_{1}\left(k\right)|}^{2}}$$
(31)
$$\begin{aligned}&u\left(k\right)=u\left(k-1\right)\\ & +\frac{{p}_{1}{\widehat{\phi }}_{1}\left(k\right)\left({y}^{*}\left(k+1\right)-\overline{y }\left(k\right)\right)-{\widehat{\phi }}_{1}\left(k\right)\sum_{i=2}^{L}{p}_{i}{\widehat{\phi }}_{i}\left(k\right)\Delta u(k-i+1)}{\lambda +{|{\widehat{\phi }}_{1}\left(k\right)|}^{2}}\end{aligned}$$
(32)

Moreover, the adaptation of the IFNN approximator given in (1625) will be only executed at the triggering instants.

In summary, the steps of the proposed MFAC based on IFNN in the event triggering form are given in Algorithm (1).

figure a

Algorithm (1)

It was remarking that the triggering condition in Algorithm (1) is measured at each sampling instant. Thus, to make the proposed controller algorithm with a low computation burden, a modified triggering method is developed. In this method, the event-triggered condition is tested after a number \(Q\) of sampling moments have passed to save system resources even more. The value of \(Q\) is selected as an integer number such that the following inequality is held:

$$1<Q< \frac{{n}_{k}}{2},$$
(33)

where \({n}_{k}\) is the number of samples which is chosen within the controlled system time constant. Here, the discrete event-triggering condition (26) will be modified to

$${k}_{j+1}={k}_{j}+\mathrm{min}\{k>{k}_{j} |\left|y\left({k}_{j}\right)-y\left(kQ\right)\right|\ge \delta \}$$
(34)

As a result, the steps of the proposed MFAC scheme based on the modified triggering condition are described in Algorithm (2).

figure b

Algorithm (2)

Remark 2

For Algorithm 1, the initial weights of the IFNN are chosen as small random values, and \(\uplambda \) is chosen according to theorem 2 \({\uplambda >\uplambda }_{\mathrm{min}}\). The event condition threshold \(\updelta \) is chosen as a small value greater than zero or as a percentage of the error between the current value of the output and the most recent incoming data, [46]. Moreover, the window of samples \(Q\) is chosen according to (33).

Convergence and stability analysis

In this section, the convergence of the updating laws of the IFNN parameters and the closed loop stability of the proposed algorithm are investigated.

Theorem 1.

Assuming an IFNN with the structure given in Fig. 1to approximate the \(\Phi (k)\) in the dynamic linearized model given in (3). For any given input vector, the training process of the IFNN is convergent if the learning rate \(\eta \) in the updating laws (1625) of the network satisfies the following condition:

$$0< \eta <\frac{2}{{\left[\zeta \left(k\right)\right]}^{T}\zeta \left(k\right)}$$
(35)

where:

$$\zeta \left(k\right)=\left[\begin{array}{cc}\frac{{\partial e}_{P}\left(k\right) }{\partial {W}_{M}\left(k\right)}& \begin{array}{ccc}\frac{{\partial e}_{P}\left(k\right) }{\partial {W}_{N}\left(k\right)} & \frac{{\partial e}_{P}\left(k\right) }{\partial cm\left(k\right)}& \begin{array}{ccc}\frac{{\partial e}_{P}\left(k\right) }{\partial cn\left(k\right)}& \frac{{\partial e}_{P}\left(k\right) }{\partial dm\left(k\right)}& \frac{{\partial e}_{P}\left(k\right) }{\partial dn\left(k\right)}\end{array}\end{array}\end{array}\right].$$
(36)

Proof:

Define the Lyapunov function with respect to DLM output error as the cost function defined in (15). Hence, we have:

$$V\left(k\right)=E(k)=0.5{e}_{p}^{2}\left(k\right)$$
(37)

Then, the change of Lyapunov function can be computed as:

$$\Delta V\left(k+1\right)=V\left(k+1\right)-V\left(k\right)=0.5{e}_{p}^{2}\left(k+1\right)-0.5{e}_{p}^{2}\left(k\right).$$
(38)

By:

$${e}_{P}\left(k+1\right)={e}_{P}\left(k\right)+{\Delta e}_{P}\left(k\right).$$
(39)

So (38) can be given as:

$$ {{\Delta }}V\left( {k + 1} \right) = {{\Delta }}e_{P} \left( k \right)(e_{P} \left( k \right) + 0.5{{\Delta }}e_{P} \left( k \right)) $$
(40)

According to the first-order Taylor expansion, the change of the training error can be expressed in term of the incrementing rate of IFNN weights as:

$${\Delta e}_{P}\left(k\right)\cong {\left[\frac{{\partial e}_{P}\left(k\right) }{\partial \psi \left(k\right)}\right]}^{T}\Delta \psi \left(k\right)$$
(41)

where \(\psi \left(k\right){=} {\left[\begin{array}{cc}{W}_{M}\left(k\right)& \begin{array}{ccc}{W}_{N}\left(k\right)& cm\left(k\right)& \begin{array}{ccc}cn\left(k\right)& dm\left(k\right)& dn\left(k\right)\end{array}\end{array}\end{array}\right]}^{T}\) and \(\Delta \psi \left(k\right)\) is defined as:

$$\Delta \psi \left(k\right)=- \eta \frac{\partial E\left(k\right)}{\partial \psi \left(k\right)}=- \eta \frac{\partial E\left(k\right)}{{\partial e}_{P}\left(k\right)}\frac{{\partial e}_{P}\left(k\right)}{\partial \psi \left(k\right)}$$
(42)

Hence, using (37), (42) can be rewritten as:

$$\Delta \psi \left(k\right)=- \eta {e}_{P}\left(k\right)\frac{{\partial e}_{P}\left(k\right)}{\partial \psi \left(k\right)}$$
(43)

So, (41) can be rewritten as,

$${\Delta e}_{P}\left(k\right)\cong - \eta {e}_{P}\left(k\right){\left[\frac{{\partial e}_{P}\left(k\right) }{\partial \psi \left(k\right)}\right]}^{T}\frac{{\partial e}_{P}\left(k\right)}{\partial \psi \left(k\right).}$$
(44)

Then, the change of the Lyapunov function in (40) can be reformulated as:

$$ \begin{aligned} \Delta V\left( {k + 1} \right) = &- \eta e_{p}^{2} \left( k \right)\left[ {\frac{{\partial e_{P} \left( k \right)}}{{\partial \psi \left( k \right)}}} \right]^{T} \frac{{\partial e_{P} \left( k \right)}}{{\partial \psi \left( k \right)}}\\ &\left( {1 - 0.5\eta \left[ {\frac{{\partial e_{P} \left( k \right)}}{{\partial \psi \left( k \right)}}} \right]^{T} \frac{{\partial e_{P} \left( k \right)}}{{\partial \psi \left( k \right)}}} \right)\end{aligned} $$
(45)

By defining \(\zeta \left(k\right)=\frac{{\partial e}_{P}\left(k\right)}{\partial \psi \left(k\right)}\), we have:

$$\Delta V\left(k+1\right)=- \eta {e}_{p}^{2}\left(k\right){\left[\zeta \left(k\right)\right]}^{T}\zeta \left(k\right) \left(1-0.5\eta {\left[\zeta \left(k\right)\right]}^{T}\zeta \left(k\right)\right)$$
(46)

Then, the condition of \(\Delta V\left(k+1\right)\) is negative when

$$\eta >0\, \mathrm{and}\, \left(1-0.5\eta {\left[\zeta \left(k\right)\right]}^{T}\zeta \left(k\right)\right)>0$$
(47)

Finally, the convergence of the IFNN approximator in the MFAC scheme is guaranteed if the range of the learning rate \(\eta \) is

$$0< \eta <\frac{2}{{\left[\zeta \left(k\right)\right]}^{T}\zeta \left(k\right)}$$
(48)

Remark 3.

In condition (35), \({\left[\upzeta \left(\mathrm{k}\right)\right]}^{\mathrm{T}}\upzeta \left(\mathrm{k}\right)\) can be considered as \({\Vert \upzeta \left(\mathrm{k}\right)\Vert }^{2}\), hence this condition can be rewritten as follows:

$$ 0 < \eta < \frac{2}{{\upzeta \left( k \right)^{2} }} $$

where \(\Vert \upzeta \left(\mathrm{k}\right)\Vert \) \(\mathrm{is \, the \, Euclidean \, norm \, of \, }\upzeta \left(\mathrm{k}\right)^{2}.\) Hence, to guarantee to select of the learning rate η satisfying the given condition, the learning rate at any instant t can be set as follows:

$$\eta (\mathrm{t})=\eta (0)\frac{2}{{G}_{\mathrm{max}}\left(\mathrm{t}\right).}$$

where \(\upeta (0)\) is a small positive number < 1, and \({G}_{\mathrm{max}}\left(t\right)=\mathrm{max}\left({\Vert \upzeta \left(k\right)\Vert }^{2}, {G}_{\mathrm{max}}\left(t-1\right)\right).\)

To study the tracking error convergence for the closed loop system based on the proposed MFAC, the following theorem is given.

Theorem 2.

For a constant regulator \({y}^{*}\left(k+1\right)\), the MFAC methods (31)and (32) regulate the nonlinear system (1) that meets Assumptions 1, 2, and there is \({\lambda >\lambda }_{\mathrm{min}}\), the tracking error \(e(k)\) is uniformly ultimately bounded, and the ultimate bound is defined by the event-triggering error \({e(k)}_{\mathrm{ETC}}\).

Proof:

Let's start with the MFAC in the PFDL form given in (32). According to the definition of the tracking error given by:

$$e\left(k\right)={y}^{*}\left(k+1\right)-y\left(k\right)$$
(49)

By subtracting the event triggering error defined in (29) from (49), we have:

$${y}^{*}\left(k+1\right)-\overline{y }\left(k\right)= e\left(k\right)-{e\left(k\right)}_{\mathrm{ETC}.}$$
(50)

By using (50), the control law defined (32) can be reformulated as:

$$\begin{aligned}&u\left(k\right)=u\left(k-1\right)\\ & +\frac{{p}_{1}{\widehat{\phi }}_{1}\left(k\right)\left(e(k)\!-\!{e(k)}_{ETC}\right)\!-\!{\widehat{\phi }}_{1}\left(k\right)\sum_{i=2}^{L}{p}_{i}{\widehat{\phi }}_{i}\left(k\right)\Delta u(k\!-\!i\!+\!1)}{\lambda +{|{\widehat{\phi }}_{1}\left(k\right)|}^{2}}\end{aligned}$$
(51)

From (51), we have:

$$\Delta U\left(k\right)=u\left(k\right)- u\left(k-1\right)=\frac{{p}_{1}{\widehat{\phi }}_{1}\left(k\right)\left(e(k)-{e(k)}_{ETC}\right)-{\widehat{\phi }}_{1}\left(k\right)\sum_{i=2}^{L}{p}_{i}{\widehat{\phi }}_{i}\left(k\right)\Delta u(k-i+1)}{\lambda +{|{\widehat{\phi }}_{1}\left(k\right)|}^{2}}$$
(52)

By using the dynamic linearization form defined in (2) and (52), \(\Delta y\left(k+1\right)\) can be given as:

$$\Delta y\left(k+1\right)=\frac{{\Vert \Phi (k)\Vert p}_{1}{\widehat{\phi }}_{1}\left(k\right)\left(e(k)-{e(k)}_{ETC}\right)-{\Vert \Phi (k)\Vert \widehat{\phi }}_{1}\left(k\right)\sum_{i=2}^{L}{p}_{i}{\widehat{\phi }}_{i}\left(k\right)\Delta u(k-i+1)}{\lambda +{|{\widehat{\phi }}_{1}\left(k\right)|}^{2}}$$
(53)

For a constant \({y}^{*}\left(k+1\right)\) and by using the tracking error defined in (49), we can write:

$$e\left(k+1\right)-e\left(k\right)={y}^{*}\left(k+2\right)-y\left(k+1\right)-{y}^{*}\left(k+1\right)+y\left(k\right)=-\Delta y\left(k+1\right)$$
(54)

Hence, we have

$$e\left(k+1\right)=e\left(k\right)-\Delta y\left(k+1\right)$$
(55)

By substituting from (52) in (55), we obtain:

$$ e\left( {k + 1} \right) = \left( {1 - \frac{{\left\| {{\Phi }\left( k \right)} \right\|p_{1} \hat{\phi }_{1} \left( k \right)}}{{\lambda + \left| {\hat{\phi }_{1} \left( k \right)} \right|^{2} }}} \right)e\left( k \right) + \frac{{{\Phi }\left( k \right)p_{1} \hat{\phi }_{1} \left( k \right)e\left( k \right)_{ETC} }}{{\lambda + \left| {\hat{\phi }_{1} \left( k \right)} \right|^{2} }} + \frac{{\left\| {{\Phi }\left( k \right)} \right\|\hat{\phi }_{1} \left( k \right)\mathop \sum \nolimits_{i = 2}^{L} p_{i} \hat{\phi }_{i} \left( k \right)\Delta u\left( {k - i + 1} \right)}}{{\lambda + \left| {\hat{\phi }_{1} \left( k \right)} \right|^{2} }}. $$
(56)

From (56), we can write as:

$$ \left| {e\left( {k + 1} \right)} \right| = \left| {1 - \frac{{\left\| {{\Phi }\left( k \right)} \right\|p_{1} \hat{\phi }_{1} \left( k \right)}}{{\lambda + \left| {\hat{\phi }_{1} \left( k \right)} \right|^{2} }}} \right|\left| {e\left( k \right)} \right| + \left| {\frac{{\left\| {{\Phi }\left( k \right)} \right\|p_{1} \hat{\phi }_{1} \left( k \right)}}{{\lambda + \left| {\hat{\phi }_{1} \left( k \right)} \right|^{2} }}} \right|\left| \delta \right| + \left| {\frac{{\left\| {{\Phi }\left( k \right)} \right\|\hat{\phi }_{1} \left( k \right)}}{{\lambda + \left| {\hat{\phi }_{1} \left( k \right)} \right|^{2} }}} \right|\left| {\mathop \sum \limits_{i = 2}^{L} p_{i} \hat{\phi }_{i} \left( k \right)\Delta u\left( {k - i + 1} \right)} \right|. $$
(57)

By assuming \({\lambda }_{min}=\frac{{s}^{2}}{4},\) where \(s\) is defined in Assumption 2, using the inequality defined in (58) for the denominator of (57), the inequality defined in (59) is given for a bounded value \({M}_{1}>0\).

$${a}^{2}+{b}^{2}\ge 2ab$$
(58)
$$0{<M}_{1}\le \left|\frac{\Vert \Phi \left(k\right)\Vert {\widehat{\phi }}_{1}\left(k\right)}{\lambda +{\left|{\widehat{\phi }}_{1}\left(k\right)\right|}^{2}}\right|\le \left|\frac{s{\widehat{\phi }}_{1}\left(k\right)}{2\sqrt{\lambda }{\widehat{\phi }}_{1}\left(k\right)}\right|<\frac{s}{2\sqrt{{\lambda }_{\mathrm{min}}}}=1$$
(59)

Then, there exists a constant \(\beta{<}1\) such that \(\bigg|1-\frac{{p}_{1}\Vert \Phi \left(k\right)\Vert {\widehat{\phi }}_{1}\left(k\right)}{\lambda +{\left|{\widehat{\phi }}_{1}\left(k\right)\right|}^{2}}\bigg|\le 1-{p}_{1}{M}_{1}=\beta \), so (57) can be rewritten as:

$$\left|e(k+1)\right|\le \beta \left|e\left(k\right)\right|+{p}_{1}{M}_{1}\left|\delta \right|+{M}_{1}\left|\sum_{i=2}^{L}{p}_{i}{\widehat{\phi }}_{i}\left(k\right)\Delta u(k-i+1)\right|$$
(60)

According to that PPD has an upper limit \(\overline{\Phi }\), and \({p}_{i} \epsilon \left(\mathrm{0,1}\right],\) the last term of (60) can be:

$$ \left| {\mathop \sum \limits_{i = 2}^{L} p_{i} \hat{\phi }_{i} \left( k \right)\Delta u\left( {k - i + 1} \right)} \right| \le (\max p_{i} )_{{i\epsilon \left\{ {2,n} \right\}}} \left| {\mathop \sum \limits_{i = 2}^{L} \hat{\phi }_{i} \left( k \right)\Delta u\left( {k - i + 1} \right)} \right| \le \left( {{\text{max }}\hat{\phi }_{i} } \right)_{{i\epsilon \left\{ {2,n} \right\}}} \left| {\mathop \sum \limits_{i = 2}^{L} \Delta u\left( {k - i + 1} \right)} \right| \le {\overline{\Phi }}\left| {\mathop \sum \limits_{i = 2}^{L} \Delta u\left( {k - i + 1} \right)} \right| $$
(61)

When the control signal may flip from \({U}_{\mathrm{max}}\) to \({-U}_{\mathrm{max}}\), it gives the maximum\(\Delta u(k-i+1)\). Hence, there is a bounded value \({M}_{2}\) where:

$$0<{M}_{2}\le \left|\sum_{i=2}^{L}{p}_{i}{\widehat{\phi }}_{i}\left(k\right)\Delta u\left(k-i+1\right)\right|\le 2\overline{\Phi }\left(L-1\right){ U}_{\mathrm{max}.}$$
(62)

So (60) can be redefined as:

$$\left|e(k+1)\right|\le \beta \left|e\left(k\right)\right|+{M}_{1}\left(\left|\delta \right|+{M}_{2}\right)$$
(63)

Based on (63), we have:

$$ \begin{gathered} \left| {e\left( k \right)} \right| \le \beta \left| {e\left( {k - 1} \right)} \right| + M_{1} \left( {\left| \delta \right| + M_{2} } \right) \hfill \\ \left| {e\left( {k - 1} \right)} \right| \le \beta \left| {e\left( {k - 2} \right)} \right| + M_{1} \left( {\left| \delta \right| + M_{2} } \right) \hfill \\ \qquad \qquad \quad \vdots \vdots \vdots \hfill \\ \left| {e\left( 2 \right)} \right| \le \beta \left| {e\left( 1 \right)} \right| + M_{1} \left( {\left| \delta \right| + M_{2} } \right). \hfill \\ \end{gathered} $$
(64)

As a result, we can write:

$$ \begin{aligned} &\left| {e\left( {k + 1} \right)} \right| \le \beta^{2} \left| {e\left( {k - 1} \right)} \right| + \beta M_{1} \left( {\left| \delta \right| + M_{2} } \right) + M_{1} \left( {\left| \delta \right| + M_{2} } \right) \hfill \\ &\le \beta^{3} \left| {e\left( {k - 2} \right)} \right| + \beta^{2} M_{1} \left( {\left| \delta \right| + M_{2} } \right) \\ &\quad+ \beta M_{1} \left( {\left| \delta \right| + M_{2} } \right) + M_{1} \left( {\left| \delta \right| + M_{2} } \right) \hfill \\ & \qquad \qquad \quad \vdots \vdots \vdots \hfill \\ &\le \beta^{k} \left| {e\left( 1 \right)} \right| + \beta^{k - 1} M_{1} \left( {\left| \delta \right| + M_{2} } \right) + \beta^{k - 2} M_{1} \left( {\left| \delta \right| + M_{2} } \right) \ldots\\ &\quad + \beta M_{1} \left( {\left| \delta \right| + M_{2} } \right) + M_{1} \left( {\left| \delta \right| + M_{2} } \right). \hfill \\ \end{aligned} $$
(65)

Hence,

$$\left|e\left(k+1\right)\right|\le {\beta }^{k}\left|e\left(1\right)\right|+\frac{{M}_{1}\left(\left|\delta \right|+{M}_{2}\right)}{1-\beta }$$
(66)

Based on \(\beta {<}1\), as \(k\) increases, the part \({\beta }^{k}\to 0\). Thus, it yields:

$${\left|e\left(k+1\right)\right|}_{k\to \infty }\le \frac{{M}_{1}\left(\left|\delta \right|+{M}_{2}\right)}{1-\beta }$$
(67)

Accordingly, we can see that the tracking error is bound. Finally, since both \({y}^{*}(k)\) and \(e(k)\) are bounded, the system output \(y (k)\) is bounded too.

In a similar manner, for the MFAC in the CFDL form given in (31), the above sequence can be used. Hence, (57) can be rewritten as:

$$\left|e\left(k+1\right)\right|=\left|1-\frac{{p}_{1}{\phi }_{1}\left(k\right){\widehat{\phi }}_{1}\left(k\right)}{\lambda +{\left|{\widehat{\phi }}_{1}\left(k\right)\right|}^{2}}\right|\left|e\left(k\right)\right|+\left|\frac{{p}_{1}{\phi }_{1}\left(k\right){\widehat{\phi }}_{1}\left(k\right)}{\lambda +{\left|{\widehat{\phi }}_{1}\left(k\right)\right|}^{2}}\right|\left|\delta \right|$$
(68)

By using (59), (68) can be rewritten as:

$$\left|e\left(k+1\right)\right|\le \beta \left|e\left(k\right)\right|+{M}_{1}\left|\delta \right|$$
(69)

Then:

$$\left|e\left(k+1\right)\right| \le {\beta }^{k}\left|e\left(1\right)\right|+{\beta }^{k-1}{M}_{1}\left|\delta \right|+\dots \beta {M}_{1}\left|\delta \right|+{M}_{1}\left|\delta \right|$$
(70)
$$\left|e\left(k+1\right)\right|\le {\beta }^{k}\left|e\left(1\right)\right|+\frac{{M}_{1}\left|\delta \right|}{1-\beta }$$
(71)
$${\left|e\left(k+1\right)\right|}_{k\to \infty }=\frac{{M}_{1}\left|\delta \right|}{1-\beta }$$
(72)

Finally, we can conclude that the BIBO stability of the proposed algorithm is guaranteed, and the proof is completed.

It's worth mentioning that when the MFAC algorithm has no event-triggered transmission scheme \(\delta =0\), the tracking error (72) of the system is reduced to zero.

Simulation results

In this section, the proposed IFNN-MFAC technique is tested using two simulation examples: the control problem of CSTR and the regulation problem of a steam-water heat exchanger system. The proposed MFAC is implemented in the compact and the partial dynamic linearization forms (i.e., CFDL and PDLF). Moreover, each form is established in the event triggering mechanism according to Algorithm (1) and Algorithm (2). Thus, four controllers are considered here. These controllers are abbreviated as below:

  • The CFDL-IFNN-MFAC-Event-1 denotes to the proposed MFAC in the CFDL form based on the event-triggering mechanism given in Algorithm (1).

  • The CFDL-IFNN-MFAC-Event-2 denotes to the proposed MFAC in the CFDL form based on the event-triggering mechanism given in Algorithm (2).

  • The PFDL-IFNN-MFAC-Event-1 denotes to the proposed MFAC in the PFDL based on the event-triggering mechanism given in Algorithm (1).

  • The PFDL-IFNN-MFAC-Event-2 denotes to the proposed MFAC in the PFDL based on the event-triggering mechanism given in Algorithm (2).

Besides, the comparison between the developed controllers is performed using the performance indices; the root mean squared error (RMSE), integral of squared error (ISE), and integral of absolute error (IAE) criteria for evaluating the performance of the proposed techniques. These indices are defined as:

$$\mathrm{RMSE}=\sqrt{\frac{1}{{N}_{s}}\sum_{k=1}^{{N}_{s}}{({y}^{*}\left(k\right)-y\left(k\right))}^{2}}$$
(73)
$$\mathrm{ISE}={\int }_{0}^{\infty }{\left[e(t)\right]}^{2}\mathrm{d}t$$
(74)
$$\mathrm{IAE}={\int }_{0}^{\infty }\left|e(t)\right|\mathrm{d}t$$
(75)

where \({N}_{s}\) is the number of the samples.

Example 1:

CSTR system.

The dynamics of the considered CSTR system is described by the following equations [34]:

$$ \begin{aligned}& x_{1} \left( {k + 1} \right) = x_{1} \left( k \right) + \left[ { - x_{1} \left( k \right) + D_{1} \left( {1 - x_{1} \left( k \right)} \right)e^{A\left( k \right)} } \right] \times 0.05 \\ & x_{2} \left( {k + 1} \right) = x_{2} \left( k \right) + \left[ - x_{2} \left( k \right) + B_{2} D_{1} \left( {1 - x_{1} \left( k \right)} \right)e^{A\left( k \right)}\right.\\ &\qquad \qquad \qquad \left. - D_{2} \left( {x_{2} \left( k \right) - u\left( k \right)} \right) \right] \times 0.05 + d\left( k \right) \\ & y\left( k \right) = x_{1} \left( k \right), \\ \end{aligned} $$
(76)

\({x}_{1}\left(k\right),{x}_{2}\left(k\right)\) are the system states; y\((k)\) is the output of the system; \({D}_{1}=0.036, { D}_{2}=25.2,{ B}_{1}= 28.5,\) \({B}_{2}=21.5\) are scalar parameters of the system; \(A\left(k\right)=\frac{{B}_{1}{x}_{2}\left(k\right)}{{B}_{1}+{x}_{2}\left(k\right)}\) and \(d\left(k\right)=0.01\mathrm{cos}\left(0.05k\right)\mathrm{cos}({x}_{1}\left(k\right))\) are time varying parameters of the system. It should be noted that the proposed control schemes do not use any system information, such as linear or nonlinear features, system order, and so on. The system model (73) is solely used to generate the necessary I/O data and is not used in the controller design process. The proposed controllers are performed by using IFNN has the following hyperparameter \(N=5, cm={[0.20 \ 0.40 \ 0.06 \ 0.81]}^{T},cn={\left[1.4 \ 1.6 \ {-\,0.6} \ {-\,0.4} \ {-\,0.2}\right]}^{T},{d}_{m}=20, { and\ d}_{n}=1\). The CFDL-IFNN-MFAC law (31) is implemented with \({p}_{1}=1,\mathrm{ and }\,\lambda =0.06\), on the other side; the PFDL-IFNN-MFAC (32) is implemented with \(L=3,{p}_{1}={p}_{2}={p}_{3}=1, \text{ and } \lambda =0.04\). For the event-triggering Algorithm (2), the parameter \(Q\) is set to 8. Two simulation cases are performed to demonstrate the performance of the proposed control schemes with the CSTR system.


Case 1: Tracking response for a square wave reference. In this task, the developed controllers are applied to the chemical reactors such that, the desired system output is given by:

$${y}^{*}\left(k+1\right)=\left\{\begin{array}{ll}0.6,& \quad k<500\\ 0.2,& \quad 500\le k<1000\\ 0.6,& \quad 1000\le k<1500\\ 0.2, & \quad k\ge 300\end{array}\right.$$
(77)

CFDL results: Figure 3 shows the tracking performances of the output using CFDL-IFNN-MFAC-Event-1 and CFDL-IFNN-MFAC-Event-2 and Fig. 4 depicted the obtained control signals for the two controllers. The inter-event intervals can be seen in Figs. 5, 6. It is clear that the system response under the CFDL-IFNN-MFAC-Event-1 is faster and smoother than CFDL-IFNN-MFAC-Event-2.

Fig. 3
figure 3

Tracking response of the CSTR system using CFDL-IFNN-MFAC-Event-1 and CFDL-IFNN-MFAC-Event-2 (case: 1)

Fig. 4
figure 4

Control signals for CFDL-IFNN-MFAC-Event-1 and CFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 1)

Fig. 5
figure 5

Inter-event intervals for CFDL-IFNN-MFAC-Event-1 with the CSTR system (case: 1)

Fig. 6
figure 6

Inter-event intervals for CFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 1)

PFDL results: Figure 7 shows the tracking performances of the output using both PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 and Fig. 8 shows the control signals for the two controllers. The inter-event intervals can be seen in Figs. 9, 10. The system response under the PFDL-IFNN-MFAC-Event-1 has smaller overshoots and is faster than PFDL-IFNN-MFAC-Event-2.

Fig. 7
figure 7

Tracking response of the CSTR system using PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 (case: 1)

Fig. 8
figure 8

Control signals for PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 1)

Fig. 9
figure 9

Inter-event intervals for PFDL-IFNN-MFAC-Event-1 with the CSTR system (case: 1)

Fig. 10
figure 10

Inter-event intervals for PFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 1)

In this case, it is shown clearly in Figs. 3 and 7 that the response of CSTR under the CFDL/PFDL-IFNN-MFAC-Event-1 is faster with smaller overshoots than CFDL/PFDL-IFNN-MFAC-Event-2. The inter-event intervals in Figs. 5, 6 and Figs. 9, 10 show that the second algorithm when combined with the MFAC in the CFDL-IFNN-MFAC-Event-2 and PFDL-IFNN-MFAC-Event-2 lead to a noticeable reduction in the number of events and the minimum inter-event interval is determined by the value of the parameter \({Q}\).

Case 2: Tracking response under time-varying system parameters for a step reference. In this case, the proposed controllers are tested with time-varying system parameters to investigate the adaptation property of the proposed controller. During this simulation case,\(d(k)\) at time instant \(k\) is given by:

$$d\left(k\right)=\left\{\begin{array}{c}0.01\mathrm{cos}\left(0.05k\right)\mathrm{cos}\left({x}_{1}\left(k\right)\right) \ 0 \le k<1300\\ 0.01\mathrm{cos}\left(0.05k\right)\mathrm{cos}\left({x}_{1}\left(k\right)\right)+1 \ k\ge 1300.\end{array}\right.$$
(78)

CFDL results The results of the second simulation case are illustrated in Figs. 11 and the obtained control signals for the two controllers are depicted in Fig. 12. The inter-event intervals of the two control schemes are shown in Figs. 13, 14.

Fig. 11
figure 11

Tracking response of the CSTR system using CFDL-IFNN-MFAC-Event-1 and CFDL-IFNN-MFAC-Event-2 (case: 2)

Fig. 12
figure 12

Control signals for CFDL-IFNN-MFAC-Event-1 and CFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 2)

Fig. 13
figure 13

Inter-event intervals for CFDL-IFNN-MFAC-Event-1 with the CSTR system (case: 2)

Fig. 14
figure 14

Inter-event intervals for CFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 2)

The control performance with time-varying parameters is quite satisfactory and the system response under the CFDL-IFNN-MFAC-Event-1 is faster and smoother than CFDL-IFNN-MFAC-Event-2.

PFDL results: Figure 15 shows the tracking performances of the output using both PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 and Fig. 16 shows the control signals for the two controllers. The inter-event intervals can be seen in Figs. 17, 18.

Fig. 15
figure 15

Tracking response of the CSTR system using PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 (case: 2)

Fig. 16
figure 16

Control signals for PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 2)

Fig. 17
figure 17

Inter-event intervals for PFDL-IFNN-MFAC-Event-1 with the CSTR system (case: 2)

Fig. 18
figure 18

Inter-event intervals for PFDL-IFNN-MFAC-Event-2 with the CSTR system (case: 2)

In case 2, it is obvious that the CFDL/PFDL-IFNN-MFAC-Event-1 controller can deal with the time-varying system parameters and overcomes their effect in a shorter time than the CFDL/PFDL-IFNN-MFAC-Event-2. The number of events is reduced when using the second algorithm and the minimum inter-event interval is determined by the value of the parameter \(Q\).

The performance indices for the proposed controllers are shown in Table 1 which shows that the tracking performance of CFDL/PFDL-IFNN-MFAC-Event-1 and Event-2 methods are not as good as the traditional fixed periodic sampling MFAC schemes where weights are updated periodically. The CFDL/PFDL-IFNN-MFAC-Event-1 gives a faster response with a smaller overshoot when compared with the CFDL/PFDL-IFNN-MFAC-Event-2 but the second algorithm has a significant reduction in the computational burden, energy consumption, and communication resources.

Table 1 The RMSE, ISE and IAE indices for CSTR using the proposed controllers

Figure 19 shows that out of 2000 sample instants, the first case had a total of 405/394 events in the case of CFDL/PFDL-IFNN-MFAC-Event-1 and 125/122 when the CFDL/PFDL-IFNN-MFAC-Event-2 are applied. In comparison to a standard periodic sampled discrete-time control, it exhibits the efficiency of these schemes in reducing the number of transmissions I/O data over the network. When compared to the controller in [34] in case (1), which uses neural network ETC-MFAC and takes a total of 884 events, it is clear that the proposed controllers provide better performance in terms of system resource saving than the controller presented in [34]. We must notice that case (2) is not valid in [34].

Fig. 19
figure 19

Comparison of computational load between MFAC, MFAC-Event-1, and MFAC-Event-2 for CSTR

Example 2:

A steam-water heat exchanger.

In this example, the PFDL-IFNN-MFAC and the CFDL-IFNN-MFAC are used to control a steam-water heat exchanger to validate the proposed MFAC-PETC methods. A Hammerstein model may be used to express the heat exchanger dynamics, which can be written as [34]:

$${G}_{H}\left(z\right)=\frac{y(z)}{{N}_{u}(z)}=\frac{1.2z-0.1}{{z}^{2}-0.6z+0.1}$$
(79)
$${N}_{u}=1.5u-1.5{u}^{2}+0.5{u}^{.3}$$
(80)

The proposed controllers are performed by using IFNN has the following parameters \(N=5, \ cm={[0.20 \ 0.40 \ 0.06 \ 0.81]}^{T}, \ cn={\left[1.4 \ 1.6 \ {-\,0.6} \ {-\,0.4} \ {-\,0.2} \right]}^{T},{d}_{m}=10,{ and\, d}_{n}=2.5\). The CFDL-IFNN-MFAC law (31) is implemented with \({p}_{1}=1,\mathrm{ and }\,\lambda =0.6\), on the other side; the PFDL-IFNN-MFAC (32) is implemented with \(L=3,{p}_{1}={p}_{2}={p}_{3}=1, \mathrm{and}\, \lambda =0.4\). For the event-triggering Algorithm (2), the parameter \(Q\) is set to 2. Two simulation cases are introduced to demonstrate the performance of the proposed control schemes. Due to there being no observed difference between the response of the CFDL-IFNN-MFAC-Event-1 and the PFDL-IFNN-MFAC-Event-1 with the second example, only the results of PFDL-IFNN-MFAC-Event-1 and CFDL/PFDL-IFNN-MFAC-Event-2 are presented here.

Case 1: Tracking response for a set-point change. In this case, the desired trajectory to be tracked is defined as:

$${y}^{*}\left(k+1\right)=\left\{\begin{array}{ll}1,& \quad k<100\\ 2,& \quad 100\le k<200\\ 3.5,& \quad 200\le k<300\\ 1.5,& \quad k\ge 300.\end{array}\right.$$
(81)

Figure 20 shows the tracking performances of the output using PFDL-IFNN-MFAC-Event-1 and CFDL/ PFDL-IFNN-MFAC-Event-2 and Fig. 21 shows the obtained control signals for the controllers. The inter-event intervals can be seen in Figs. 22, 23. In this case, it is shown clearly that the response under the PFDL -IFNN-MFAC-Event-1 and Event-2 are faster but with greater overshoots than CFDL-IFNN-MFAC-Event-2.

Fig. 20
figure 20

Tracking response of the heat exchanger using the proposed controllers (case: 1)

Fig. 21
figure 21

Control signals of the heat exchanger using the proposed controllers (case: 1)

Fig. 22
figure 22

Inter-event intervals for PFDL-IFNN-MFAC-Event-1 (case: 1)

Fig. 23
figure 23

Inter-event intervals for PFDL-IFNN-MFAC-Event-2 (case: 1)

Case 2: Tracking response under external output disturbance In this case, the proposed controllers are tested under 15% external disturbance added to the system output at \(k=150\) as shown in Fig. 24, 25. The inter-event intervals are shown in Figs. 26, 27.

Fig. 24
figure 24

Tracking response of the heat exchanger using the proposed controllers (case: 2)

Fig. 25
figure 25

Control signals of the heat exchanger using the proposed controllers (case: 2)

Fig. 26
figure 26

Inter-event intervals for PFDL-IFNN-MFAC-Event-1 (case: 2)

Fig. 27
figure 27

Inter-event intervals for PFDL-IFNN-MFAC-Event-2 (case: 2)

In case 2, it is obvious that the PFDL-IFNN-MFAC-Event-1 and Event-2 controllers can deal with the time-varying system parameters and overcome their effect in a shorter time than the CFDL-IFNN-MFAC-Event-2.

The simulation results show that PFDL-IFNN-MFAC-Event-1 and Event-2 gives faster response with smaller errors and lower number of events when compared with the CFDL-IFNN-MFAC-Event-2 as shown in Table 2, so the PFDL-IFNN-MFAC has a better performance when deal with nonlinear heat exchanger. As mentioned before the first algorithm gives faster response with smaller overshot when compared with the second algorithm but the second algorithm have a significant reduction in the number of events as shown in Fig. 28.

Table 2 The RMSE, ISE, and IAE for heat exchanger using the proposed controllers
Fig. 28
figure 28

Comparison of computational load between MFAC, MFAC-Event-1, and MFAC-Event-2 for heat exchanger

In Fig. 28, comparison between fixed periodic sampling MFAC, and the proposed MFAC-PETC is shown, significance saving in the number of computational load and transmission data over the network. Furthermore, the comparison with the controller in [34] which takes a total of 124 events in case 1, it is clear that the proposed controllers provide better performance in terms of system resources saving than the controller presented in [34]. This will significantly reduce the communication cost. We must notice that case (2) is not valid in [34].

Practical results

In this subsection, the proposed controllers are applied on a real system. The real system is a shunt-wound DC machine (\(0.1 KW\)). This machine contains two DC motors connected to each other, one for controlling the rotation speed and the other works as a DC generator. The speed of the first motor is controlled by varying the armature voltage. A tacho-generator with an output voltage of \(1V/1000\) \(r.p.m\) is used for the speed measurement. A drive circuit with input varies from \(0 {\text{ to }} 10 \, V\) is used as an actuator. The controller is interfaced to the system through a Mega Arduino. The experimental set-up for the real system application is depicted in Fig. 29. In the following experiments, the proposed CFDL/PFDL-IFNN-MFAC is tested via the speed control of the DC machine.

Fig. 29
figure 29

Actual view of the practical system

To investigate the controller performance with a real-time application, two experiments are considered. In the experiments, the PFDL-IFNN-MFAC (32) is used with \(L=3,{p}_{1}={p}_{2}={p}_{3}=1,\lambda =0.15\), and the PPD vector uses IFNN with \(cm={[0.20 \ 0.40 \ 0.06 \ 0.81]}^{T},cn={\left[1.4 \ 1.6\ {-\,0.6} \ {-\,0.4} \ {-\,0.2}\right]}^{T},N=5,{d}_{m}=1,{d}_{n}=1.5,W\left(0\right)=0.01rand\times {I}_{3\times 10}\). The triggering parameter is chosen \(\delta =0.06\) and for the second algorithm \(Q=10\).


Experiment 1: Tracking response for set-point change. In this experiment, the desired reference is step with different levels \(1 V\) (i.e., \(1000 \, \mathrm{r}.\mathrm{p}.\mathrm{m}\)) during the first \(500\) samples, then \(1.5 V\)(i.e.,\(1500 \, \mathrm{r}.\mathrm{p}.\mathrm{m}\)) during the second \(500\) samples, then \(2 V\) (i.e., \(2000 \, \mathrm{r}.\mathrm{p}.\mathrm{m}\)) during the third \(500\) samples, and then \(1.5 V\) (i.e., \(1500 \, \mathrm{r}.\mathrm{p}.\mathrm{m}\)) within the last \(500\) samples. The tracking performance and control signal of the DC machine based on the PFDL-IFNN-MFAC-Event-1, and PFDL-IFNN-MFAC-Event-2 are shown in Figs. 30, 31. It is clear that the system response under the PFDL-IFNN-MFAC-Event-1 is faster than PFDL-IFNN-MFAC-Event-2.

Fig. 30
figure 30

The speed response using PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 (Experiment 1)

Fig. 31
figure 31

The control signal applied to the motor drive using the proposed controllers (Experiment 1)


Experiment 2: Tracking response under external output disturbance. This experiment is performed to examine the tracking performance of the proposed controller in the presence of load changes. This experiment is conducted using a desired speed = 1000 \(\mathrm{r}.\mathrm{p}.\mathrm{m}\) (i.e., \(1 V\)). The load change is applied at sampling instant \(k=700\). Figures 32 and 33 show the speed response, and the control signal for this experiment, respectively. It is clear that the two control algorithms can control the speed of the real system with satisfactory performance. PFDL-IFNN-MFAC-Event-2 gives slower response compared with the PFDL-IFNN-MFAC-Event-1 but with significant reduction in the computation and communication resources.

Fig. 32
figure 32

The speed response using PFDL-IFNN-MFAC-Event-1 and PFDL-IFNN-MFAC-Event-2 (Experiment 2)

Fig. 33
figure 33

The control signal applied to the motor drive with the proposed controllers (Experiment 2)

For comparison the CFDL-IFNN-MFAC (31) is used with \(L=1,{p}_{1}=1,\lambda =0.2\), and the PPD uses IFNN with \(cm={[0.2 \ 0.4 \ 0.6 \ 0.8 \ 1]}^{T},cn={\left[1.4 \ 1.6\ {-\,0.6} \ {-\,0.4} \ {-\,0.2}\right]}^{T},\) \(W\left(0\right)=0.01rand\times {I}_{1\times 10}\), \(N=5,{d}_{m}=1,{d}_{n}=1.5\). The triggering parameter is chosen \(\delta =0.06\) and for the second algorithm\(Q=10\).

Table 3 and Fig. 34 show the results of both the CFDL-IFNN-MFAC-Event-1 and Event-2 and PFDL-IFNN-MFAC-Event-1 and Event-2 for the two experiments. The practical results show that the PFDL-IFNN-MFAC gives better results when compared with the CFDL-IFNN-MFAC and also shows the significance reduction in the computational load and data transmission over the network when using the second algorithm which supports the previous simulation results.

Table 3 The RMSE, ISE, and IAE for the DC motor using the proposed controllers
Fig. 34
figure 34

Comparison of computational load between MFAC, MFAC-Event-1, and MFAC-Event-2 for the DC motor

Conclusion

This paper has developed an MFAC-PETC based on IFNN for controlling nonlinear systems. The proposed technique uses the MFAC based on historical I/O data only to establish an approximate model of the nonlinear system, where the MFAC creates a series of equivalent local dynamic linearization data models at each operating point of the closed-loop system. The equivalent dynamic-linearization model at each sample is estimated using the IFNN based on the I/O measurement data of the controlled plant. Two DLT methods; CFDL and PFDL are used in this paper. Two periodic event-triggering control mechanisms have been used to save communication resources and reduce computational burden and energy consumption. The BIBO and Lyapunov stability is studied to prove that the stability of the whole closed-loop system is guaranteed via the proposed controllers in the presence of external disturbance and time-varying system parameters. The simulation and the practical results reveal the effectiveness and flexibility of the proposed technique.