*Article* **An Optimized Triggering Algorithm for Event-Triggered Control of Networked Control Systems**

**Sunil Kumar Mishra <sup>1</sup> , Amitkumar V. Jha <sup>1</sup> , Vijay Kumar Verma 2, Bhargav Appasani <sup>1</sup> , Almoataz Y. Abdelaziz <sup>3</sup> and Nicu Bizon 4,5,6,\***


**Abstract:** This paper presents an optimized algorithm for event-triggered control (ETC) of networked control systems (NCS). Initially, the traditional backstepping controller is designed for a generalized nonlinear plant in strict-feedback form that is subsequently extended to the ETC. In the NCS, the controller and the plant communicate with each other using a communication network. In order to minimize the bandwidth required, the number of samples to be sent over the communication channel should be reduced. This can be achieved using the non-uniform sampling of data. However, the implementation of non-uniform sampling without a proper event triggering rule might lead the closed-loop system towards instability. Therefore, an optimized event triggering algorithm has been designed such that the system states are always forced to remain in stable trajectory. Additionally, the effect of ETC on the stability of backstepping control has been analyzed using the Lyapunov stability theory. Two case studies on an inverted pendulum system and single-link robot system have been carried out to demonstrate the effectiveness of the proposed ETC in terms of system states, control effort and inter-event execution time.

**Keywords:** backstepping control; event-triggered control; Lyapunov stability theorem; networked control system; nonlinear system

#### **1. Introduction**

In recent years, event-triggered control (ETC) has become a prominent topic of research due to the benefits offered by it as compared to the networked control system (NCS). The analog-to-digital (A/D) and digital-to-analog (D/A) conversion of the plant data is essential in the NCS to make the plant and controller signals compatible with the communication channel. This further needs the sampling and hold circuit for the plant data. Periodic sampling utilizes a fixed bandwidth on the communication channel and was preferred in the past for implementing the NCS. This, however, increases the cost of the system. In several control applications (e.g., chemical processes which take a longer time to settle), it is not needed to send the output data of the plant to the controller at fixed time intervals. The time interval between the samples can be varied (also called the aperiodic sampling of data) depending on the specific system events. Whenever the quantization error reaches beyond an acceptable limit, an event is triggered to sample the output data. Thereafter, a new control command is computed and the plant control input is updated. This control command is kept on hold until a new event is triggered and this process repeats. In this

**Citation:** Mishra, S.K.; Jha, A.V.; Verma, V.K.; Appasani, B.; Abdelaziz, A.Y.; Bizon, N. An Optimized Triggering Algorithm for Event-Triggered Control of Networked Control Systems. *Mathematics* **2021**, *9*, 1262. https:// doi.org/10.3390/math9111262

Academic Editor: M. Victoria Otero-Espinar

Received: 5 May 2021 Accepted: 27 May 2021 Published: 31 May 2021

**Publisher's Note:** MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

**Copyright:** © 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).

manner, the number of samples can be reduced significantly without disturbing the desired plant performance.

#### *1.1. Literature Review*

A plethora of research works have been published on this topic. Some of the original ETC studies were focused on the PID controller, which due to its basic configuration is still one of the commonly used controllers in industrial applications. In [1], a simple event-based PID control scheme was proposed, where the aim was to control the level of the upper or lower tank with the pump signal as the control signal. Another event-based PID controller was proposed in [2], where the objective was to control the angular velocity of a DC-motor. However, the emphasis has moved in the past 10 years toward ETC for optimized, adaptive and nonlinear controllers. That is because of the nonlinear nature of the control schemes. The nonlinear system has to be linearized to construct the linear controllers, which may lead to optimum performance. In [3], a critic neural network (NN) was used to approximate the cost and an actor neural network was used to approximate the optimal event-triggered controller. The controller stability was ensured by Lyapunov stability analysis. Again in [4], an approximation-based event-triggered control of multi-input multi-output uncertain nonlinear continuous-time systems was presented that included weight update law for aperiodic tuning of the NN weights at triggered instants to reduce the computation. In [5], the effects of bounded disturbances on the integral-based event-triggered control systems with observer-based output feedbacks were studied. In [6], a robust adaptive fuzzy control for a class of uncertain nonlinear systems via an event-triggered control strategy to reduce communication burden had been proposed, and results were demonstrated on a robot manipulator. In [7], the event-triggered function under the conditions of limited network bandwidth resources and the incomplete observability of the state of the system was considered. Then, denial-of-service (DoS) attacks that occur on the network transmission channel were applied using observer-based event-triggered control.

It is well known that the ETC can provide efficient utilization of resources by decreasing the sample size, which in turn reduces the overall bandwidth requirement of the communication channel. However, the ETC technique may lead the system towards instability if it is not driven by a suitable event triggering algorithm. Many triggering algorithms for the ETC scheme have been proposed in recent times, with impractical applications in wireless networks [8], robotics [9] and power systems [10].

A detailed review of these earlier techniques in the area of ETC has been published in [11], whereas a detailed review of several control techniques developed till recently could be found in [12]. Recently, ETC schemes that use a sliding mode controller (SMC) have been proposed for linear and nonlinear systems. In [13], a robust stabilization of a linear time-invariant system using an SMC with the self-triggering strategy was proposed. The self-triggering technique does not require additional dedicated hardware for continuous state measurement to determine the next possible triggering instant. In [14], robust stabilization for a class of nonlinear systems subject to external disturbances using an ETC-based SMC was proposed. Similarly, in [15], a global event-triggering realization of an SMC was proposed for linear systems under the effect of uncertainties. While the ETC–SMC scheme reduces the control updates considerably, the SMC itself is plagued by chattering.

The ETC schemes other than SMC have also been demonstrated in many studies [16–22]. In [16], it was explained how self-triggering rules could be deduced from the developed event-triggered strategies. The stabilization of nonlinear systems using event-triggered output feedback controllers was presented by [17], which guarantees an asymptotic stability property and enforces a minimum amount of time between two consecutive transmission instants. In [18], an event-driven tracking control algorithm for a marine vessel, based on the backstepping method, was proposed. In [19], adaptive event-triggered control of nonlinear continuous time systems in the strict feedback form is presented. An adaptive model and an associated event-triggered controller were designed by using the

backstepping method. The backstepping method proposed by [18] was limited to marine vessels only, whereas [19] focused upon a neural network-based adaptive event-triggered backstepping controller scheme. In [20], both the parameter estimator and the controller were aperiodically updated only at the event-sampled instants, and an adaptive event sampling condition was designed to determine the event sampling instants. The system in [20] was not considered in a very generalized form of nonlinear system in strict-feedback form. An event-triggered nonlinear control based on the backstepping controller of an oscillating water column ocean wave energy plant was proposed by [21,22]. The second order nonlinear plant dynamics were considered in [21], whereas several wave energy plants were considered in [22] for forming an array of ocean energy plants, which also included an NCS.

In recent years, there has been a main focus on nonlinear systems while designing ETC [23–32]. In [23], a user-adjustable event-triggered mechanism based on the sampled state vectors and backstepping techniques for a nonlinear system was developed to determine the sampling state instants using the negative definite property of the derivatives of Lyapunov functions. In [24], event-triggered adaptive control for a class of nonlinear systems in Brunovsky form was considered. In [25], the considered nonlinear system contained not only unknown system parameters, but the nonlinear functions with no requirement to be globally Lipschitz. It was claimed to be in contrast to most of the existing results in the area. In [26], time-varying external disturbances were considered apart from the conditions given in [25], and the ETC was designed which can dynamically compensate for both errors caused by disturbances and the sampled-data implementation of the controller. In [27], the feedback linearization approach was applied to design the ETC for a nonlinear system, whereas [28] considered both the disturbances and transmission delays while designing the ETC scheme. In [29], an ETC scheme with nonlinear model predictive control was designed for an unmanned aerial vehicle. In [30], a self-learning robust ETC scheme was proposed for nonlinear interconnected systems subject to uncertainty. A fuzzy logic-based ETC–SMC was designed for a nonlinear system in [31]. In [32], a fractional order system was controlled using a fractional order controller where the controller interacted using a communication network. The above-mentioned studies have maintained the closed-loop stability of the systems but not considered the optimized event triggering parameters. The non-optimized event triggering parameters affect the closed-loop performance of the system significantly. Additionally, some classes of nonlinear systems have been considered in the studies discussed above. Most of the systems considered have restricted the system order. Hence, an optimized event-triggered control for a generalized nonlinear system is to be designed to accommodate different practical nonlinear systems. It is also to be noted that the backstepping controller is free from the chattering problem which predominantly exists in the SMC [20–22].

#### *1.2. Main Contributions*

Based on the literature review, this paper contributes two novel concepts to the NCS: (i) the design of an ETC scheme for an NCS wherein the NCS consists of a *nth* order nonlinear plant (or generalized nonlinear system) in strict-feedback form, a backstepping controller, and a communication channel; and (ii) the selection of the optimum value of event triggering parameter *α* to attain the best possible outcome of ETC as compared to the conventional approach. Firstly, a backstepping controller has been designed using the conventional approach and then it has been extended to ETC. The closed-loop asymptotic stability of the system is ensured while deriving the triggering rule for the backstepping controller. Next, the particle swarm optimization (PSO) technique [33] has been applied to obtain the optimum value of event triggering parameter *α*. In this regard, a fitness function consisting of error in system states and the number of triggering pulses are defined, wherein *α* has been chosen as an unknown parameter.

Two case studies on the inverted pendulum system [34] and a single-link robot system [20] are considered for demonstration purposes. Simulations are performed in MAT-

LAB software for these two nonlinear systems in strict-feedback form. Additionally, the analysis of a control system with different values and optimum values of event triggering parameter *α* is presented to show the effectiveness of the proposed ETC scheme.

The remaining sections are arranged in the following order: Section 2 gives an overview of the ETC scheme for the NCS and defines the control problem. In Section 3, the ETC using a backstepping controller has been developed. Section 4 discusses the simulation results, followed by the conclusion in Section 5.

#### **2. Description of ETC for NCS and Control Problem Statement**

The block diagram of an NCS with a backstepping controller, *nth* order nonlinear plant, communication network, and event triggering section is shown in Figure 1. The output of the plant first passes through a triggering section where non-uniform sampling is performed. Next, it is sent to the backstepping controller using the communication channel and a control command is computed. The control command then passes through the communication channel. It is further processed using zero-order-hold (ZOH) and given to the plant. It is obvious that there will be a quantization error in system states due to the sampling and hold of plant output data. This quantization error is taken as the criterion for event triggering, which then governs the sample and hold switch function.

**Figure 1.** Block diagram of ETC for NCS.

Consider a generalized *nth* order nonlinear system in strict-feedback form as:

$$\begin{array}{l}\dot{\mathbf{x}}\_{i} = f\_{i}(\mathbf{x}\_{1}, \mathbf{x}\_{2}, \dots, \mathbf{x}\_{i}) + g\_{i}(\mathbf{x}\_{1}, \mathbf{x}\_{2}, \dots, \mathbf{x}\_{i}) \cdot \mathbf{x}\_{i+1} \\\dot{\mathbf{x}}\_{n} = f\_{n}(\mathbf{x}\_{1}, \mathbf{x}\_{2}, \dots, \mathbf{x}\_{n}) + g\_{n}(\mathbf{x}\_{1}, \mathbf{x}\_{2}, \dots, \mathbf{x}\_{n}) \cdot \mathbf{u} \end{array} \tag{1}$$

where *n* ≥ 2, *xi* corresponds to system states and *i* = 1, 2, ... , *n* − 1; *u* is the control input to the plant. The *fi*(*x*1, *x*2,..., *xi*), *fn*(*x*1, *x*2,..., *xn*) and *gi*(*x*1, *x*2,..., *xi*), ... , *gn*(*x*1, *x*2,..., *xn*) are the nonlinear functions dependent upon the system states. The control input *u*(*t*) is represented by *u* in the continuous time domain, but with ETC where sample and hold interface is involved, *u* is represented as *uk*, where *k* represents the *k*th triggering instant for *k* = 1, 2, 3, . . . , ∞.

For simplicity of representation, the system in Equation (1) can be written as:

$$\begin{aligned} \dot{x}\_i &= f\_i + \mathcal{g}\_i \cdot \mathbf{x}\_{i+1} \\ \dot{\mathbf{x}}\_{\text{ll}} &= f\_{\text{n}} + \mathcal{g}\_{\text{n}} \cdot \mathbf{u} \end{aligned} \qquad \begin{aligned} \dot{\mathbf{x}}\_{\text{l}} &= \mathbf{g}\_{\text{l}} + \mathbf{g}\_{\text{n}} \cdot \mathbf{u} \end{aligned} \tag{2}$$

where *gi* = 0; for *i* = 1, 2, ... , *n*. Here, it is also assumed that the time derivatives of *fi* and *gi* do exist for all time, *t*. The system states in the vector form are defined as:

$$X = \begin{bmatrix} \mathbf{x}\_1 & \mathbf{x}\_2 & \dots & \mathbf{x}\_n \end{bmatrix} \tag{3}$$

#### **3. Design of Backstepping Controller and ETC Scheme**

#### *3.1. Backstepping Controller Design*

Initially, we derive a backstepping control law using the conventional approach and then a triggering rule for implementing ETC is designed. In the backstepping controller, a step by step design method is followed. The error components for system states can be defined as:

$$\begin{aligned} \widetilde{\mathbf{x}}\_{i} &= \mathbf{x}\_{id} - \mathbf{x}\_{i} \\ \widetilde{\mathbf{x}}\_{n+1} &= \mathbf{x}\_{(n+1)d} - \boldsymbol{\mu} \end{aligned} \quad \text{for } i = 1, 2, \dots, n \end{aligned} \tag{4}$$

where *x1d* is the reference trajectory for system state *x*<sup>1</sup> and *x*2*d*, *x*3*d*, ... , *x*(*<sup>n</sup>* <sup>−</sup> 1)*d*, *xnd* are the virtual control inputs for corresponding system states, and:

$$
\mu = \mathfrak{x}\_{(n+1)d} - \widetilde{\mathfrak{X}}\_{n+1} \tag{5}
$$

Here, we define the error variable *<sup>x</sup><sup>n</sup>*+<sup>1</sup> additionally to maintain the uniformity of all the error variables of system states. This can also be called the virtual control input for actual control input *u*, as given in Equation (5).

The first order derivative of *<sup>i</sup>*th error variable *<sup>x</sup><sup>i</sup>* is given by:

$$
\dot{\tilde{\mathbf{x}}}\_{i} = \dot{\mathbf{x}}\_{id} - \dot{\mathbf{x}}\_{i} = \dot{\mathbf{x}}\_{id} - f\_{i} - \mathbf{g}\_{i} \cdot \mathbf{x}\_{i+1} \tag{6}
$$

Now, we add and subtract the *gi*.*x*(*i*+1)*<sup>d</sup>* term into Equation (7) as:

$$\begin{array}{c} \dot{\widetilde{\mathbf{x}}}\_{i} = \dot{\mathbf{x}}\_{id} - f\_{i} - \mathbf{g}\_{i} \cdot \mathbf{x}\_{i+1} + \mathbf{g}\_{i} \cdot \mathbf{x}\_{(i+1)d} - \mathbf{g}\_{i} \cdot \mathbf{x}\_{(i+1)d} \\\ = \dot{\mathbf{x}}\_{id} - f\_{i} + \mathbf{g}\_{i} \cdot \widetilde{\mathbf{x}}\_{i+1} - \mathbf{g}\_{i} \cdot \mathbf{x}\_{(i+1)d} \end{array} \tag{7}$$

Define the *i*th virtual control law *x*(*i*+1)*d*,

$$\mathbf{x}\_{(i+1)d} = \mathbf{g}\_i^{-1} \left[ \dot{\mathbf{x}}\_{id} - f\_i + k\_i \cdot \tilde{\mathbf{x}}\_i \right] \tag{8}$$

Such that, .

$$
\widetilde{\mathfrak{X}}\_{\widetilde{l}} = -k\_{\widetilde{l}} \cdot \widetilde{\mathfrak{X}}\_{\widetilde{l}} + \underline{g}\_{\widetilde{l}} \cdot \widetilde{\mathfrak{X}}\_{\widetilde{l}+1} \tag{9}
$$

where *ki* > 0 for *i* = 1, 2, . . . , *n.*

Next, define the control law as:

$$\mu = \lg^{-1}\left[\dot{\mathbf{x}}\_{nd} - f\_n + k\_n \cdot \widetilde{\mathbf{x}}\_n\right] + (\phi\_n)^{-1} \left\{\sum\_{i=1}^{n-1} \phi\_i\right\} + \eta \phi\_n \tag{10}$$

where *<sup>η</sup>* is a positive constant and *<sup>η</sup>* > 0. Additionally, *<sup>φ</sup><sup>i</sup>* <sup>=</sup> *gi*·*<sup>x</sup><sup>i</sup>*·*<sup>x</sup><sup>i</sup>*+<sup>1</sup> and *<sup>φ</sup><sup>n</sup>* <sup>=</sup> *gn*·*<sup>x</sup><sup>n</sup>*.

After substituting the *<sup>x</sup>*(*n*+1)*<sup>d</sup>* and *<sup>u</sup>* in Equation (5), the error variable *<sup>x</sup><sup>n</sup>*+<sup>1</sup> can be written as:

$$\widetilde{\mathfrak{X}}\_{n+1} = -\left(\phi\_n\right)^{-1} \left\{ \sum\_{i=1}^{n-1} \phi\_i \right\} - \eta \phi\_n \tag{11}$$

**Theorem 1.** *Consider a nonlinear system in strict-feedback form (Equation (2)) and the error dynamics (Equation (9)). Then, the virtual control law (Equation (8)) and backstepping control law (Equation (10)) ensure that all the equilibrium points, <sup>x</sup><sup>i</sup> for <sup>i</sup>* <sup>=</sup> 1, 2, ... , *n, are globally asymptotically stable. Therefore, the closed-loop system states, xi, are bounded.*

**Proof.** In order to prove the global asymptotic stability of a nonlinear system in strictfeedback form (Equation (2)) and the error dynamics (Equation (9)), we define a positive definite function *V*(*t*) as a Lyapunov function candidate as follows:

$$V(t) = \frac{1}{2} \sum\_{i=1}^{n} \tilde{\mathbf{x}}\_i^2 \tag{12}$$

As per Lyapunov stability theory, if the *V*(*t*) is a positive definite function and its first order derivative . *<sup>V</sup>*(*t*) is a negative definite, then *<sup>x</sup><sup>i</sup>* will be of converging nature and will be globally asymptotically stable. The Lyapunov function candidate in Equation (13) will then become a Lyapunov function. Hereafter, in the next few steps, it will be proved that . *V*(*t*) is negative definite function.

The first order time derivative of Equation (12) is given as:

$$\dot{V}(t) = \sum\_{i=1}^{n} \widetilde{\mathbf{x}}\_{i} \cdot \dot{\widetilde{\mathbf{x}}}\_{i} \tag{13}$$

Substituting Equation (9) into Equation (13) as:

$$\dot{V}(t) = -\sum\_{i=1}^{n} k\_i \cdot \widetilde{\mathbf{x}}\_i^2 + \sum\_{i=1}^{n} g\_i \cdot \widetilde{\mathbf{x}}\_i \cdot \widetilde{\mathbf{x}}\_{i+1} \tag{14}$$

$$\Rightarrow \dot{V}(t) = \dot{V}\_1(t) + \dot{V}\_2(t) \tag{15}$$

Here, we choose, .

*<sup>V</sup>*1(*t*) <sup>=</sup> <sup>−</sup> ∑*<sup>n</sup> <sup>i</sup>*=<sup>1</sup> *ki*·*<sup>x</sup>*<sup>2</sup> *<sup>i</sup>* for *ki* > 0 (16)

And .

$$\dot{V}\_2(t) = \sum\_{i=1}^{n} \mathbf{g}\_i \cdot \widetilde{\mathbf{x}}\_i \cdot \widetilde{\mathbf{x}}\_{i+1} \tag{17}$$

$$\Rightarrow \dot{V}\_2(t) = \sum\_{i=1}^{n-1} g\_i \cdot \widetilde{\mathbf{x}}\_i \cdot \widetilde{\mathbf{x}}\_{i+1} + g\_n \cdot \widetilde{\mathbf{x}}\_n \cdot \widetilde{\mathbf{x}}\_{n+1} \tag{18}$$

$$\Rightarrow \dot{V}\_2(t) = \sum\_{i=1}^{n-1} \phi\_i + \phi\_n \cdot \widetilde{x}\_{n+1} \tag{19}$$

In Equation (19), substituting the error variable *<sup>x</sup><sup>n</sup>*+<sup>1</sup> from Equation (11), we then have:

$$
\dot{V}\_2(t) = -\eta \phi\_n^2 \Rightarrow \dot{V}\_2(t) \le 0 \tag{20}
$$

where *η* > 0.

Therefore, after combining the results of Equations (16) and (20) into Equation (15), we have: .

$$\dot{V}(t) = -\sum\_{i=1}^{n} k\_i \cdot \widetilde{\mathbf{x}}\_i^2 - \eta \phi\_n^2 \le 0 \tag{21}$$

Equation (21) is negative definite and, hence, the Lyapunov function candidate defined in Equation (12) has now become the Lyapunov function and Theorem 1 is proved. -

**Remark 1.** *Theorem 1 implies that the control law in Equation (10) will result in* lim *<sup>t</sup>*→∞*<sup>x</sup><sup>i</sup>* <sup>→</sup> 0, *for i* = 1, 2, ... , *n. Next, from Equation (4), if* lim *<sup>t</sup>*→∞*<sup>x</sup><sup>i</sup>* <sup>→</sup> <sup>0</sup> *then lim <sup>t</sup>*→<sup>∞</sup>*xi* <sup>→</sup> *xid , for <sup>i</sup>* <sup>=</sup> 1, 2, ... , *n. Hence, it can be concluded that if <sup>x</sup><sup>i</sup> is globally asymptotically stable around the origin as <sup>t</sup>* <sup>→</sup> <sup>∞</sup>*, then xi would be globally asymptotically stable around xid as t* → ∞*. Therefore, as per Theorem 1, the nonlinear system (Equation (2)) would always lead towards global asymptotic stability with the control input defined by Equation (10).*

#### *3.2. ETC Scheme with Backstepping Controller*

As shown in Figure 1, the nonlinear system state vector, *X*(*t*), is first sent to the sampling block where it is discretized and is represented by *X*(*tk*). Additionally, the reference variable, *x*1*d*, is discretized into *x*1*d*(*tk*). Then, *X*(*tk*) and *x*1*d*(*tk*) are sent to the controller via the communication channel and the controller output, *u*(*tk*), which is in discrete form, is calculated. Next, the controller output, *u*(*tk*), is sent back to the nonlinear system again via the same communication channel, and after passing through the ZOH block, it is converted into continuous form, i.e., *uk*(*t*). Hence, *uk*(*t*) given by Equation (23) is not a discrete signal, but it is a continuous signal. However, *uk*(*t*) would not be exactly similar to the original continuous control signal *u* (*t*) due to the quantization error created

by the sample and hold circuit. Due to ETC implementation, the system dynamics given by Equation (2) can be rewritten as:

$$\begin{aligned} \dot{\boldsymbol{x}}\_{i} &= f\_{i} + \boldsymbol{g}\_{i} \cdot \boldsymbol{\varkappa}\_{i+1} \\ \dot{\boldsymbol{x}}\_{n} &= f\_{n} + \boldsymbol{g}\_{n} \cdot \boldsymbol{u}\_{k} \end{aligned} \quad \text{ }\tag{22}$$

The designed control law in Equation (10) ensures the asymptotic stability of the closed-loop system in continuous time. Now, in this section, the backstepping control law (in Equation (10)) would be converted into ETC law, which is given as:

$$\mu\_k = \mathcal{g}\_{nk}^{-1} \left[ \dot{\mathbf{x}}\_{nk} - f\_{nk} + k\_n \cdot \widetilde{\mathbf{x}}\_{nk} \right] + \left( \phi\_{nk} \right)^{-1} \left\{ \sum\_{i=1}^{n-1} \phi\_{ik} \right\} + \eta \phi\_{nk} \tag{23}$$

where *k* represents the sample number.

Therefore, all time dependent variables in the control law of Equation (10) are replaced by suffix *k* to represent ETC. Next, the virtual control law from Equation (8) can be recalled as:

$$\mathbf{x}\_{(i+1)d} = \mathbf{g}\_i^{-1} \left[ \dot{\mathbf{x}}\_{id} - f\_i + k\_i \cdot \tilde{\mathbf{x}}\_i \right] \quad \text{for } i = 1, 2, \dots, n - 1 \tag{24}$$

and because of the effect of the ETC implementation, the virtual control law can be written as:

$$\boldsymbol{\alpha}\_{(n+1)dk} = \mathbf{g}\_{nk}^{-1} \left[ \dot{\boldsymbol{x}}\_{ndk} - f\_{nk} + k\_n \cdot \widetilde{\boldsymbol{x}}\_{nk} \right] \tag{25}$$

The error dynamics of Equation (9) due to ETC implementation can now be rewritten as:

$$\begin{aligned} \dot{\tilde{\boldsymbol{x}}}\_{i} &= -k\_{i} \cdot \tilde{\boldsymbol{x}}\_{i} + \boldsymbol{g}\_{i} \cdot \tilde{\boldsymbol{x}}\_{i+1} \\ \dot{\tilde{\boldsymbol{x}}}\_{n} &= -k\_{n} \cdot \tilde{\boldsymbol{x}}\_{n} + \boldsymbol{g}\_{n} \cdot \tilde{\boldsymbol{x}}\_{(n+1)k} \end{aligned} \quad \text{for } i = 1, 2, \dots, n-1 \tag{26}$$

Additionally, Equation (11), due to ETC implementation, can be written as:

$$\widetilde{\boldsymbol{x}}\_{(n+1)k} = -\left(\phi\_{nk}\right)^{-1} \left\{ \sum\_{i=1}^{n-1} \phi\_{ik} \right\} - \eta \phi\_{nk} \tag{27}$$

The virtual control law in Equation (27) creates a quantization error in the system states and subsequently affects its stability. Therefore, we define a quantization error due to ETC as follows:

$$\mathcal{Z}\_i = \phi\_i - \gamma \phi\_{ik} \quad \text{for } i = 1, 2, \dots, n - 1 \tag{28}$$

where *γ* = *φnφ*−<sup>1</sup> *nk* .

The *ξ<sup>i</sup>* in Equation (28) is the quantization error created during the sample and hold process of the closed-loop system. Due to non-uniform sampling, there might be an undesired time interval between two sampling instants. It may lead the closed-loop system towards instability unless there is a mechanism to limit the quantization error within the permissible range of operation. Hence, we place an upper bound on ∑*n*−<sup>1</sup> *<sup>i</sup>*=<sup>1</sup> |*ξi*| such that,

$$\sum\_{i=1}^{n-1} |\xi\_i| = \sum\_{i=1}^{n-1} |\phi\_i - \gamma \phi\_{ik}| \le \alpha\_\prime \,\,\forall \, t \ge 0 \tag{29}$$

or,

$$\left(\sum\_{i=1}^{n-1} |\xi\_i|\right)\_{\max} = a \tag{30}$$

where the upper bound *α* is a non-zero positive constant and, hence, we refer to it as a triggering parameter.

Next, we also place a lower bound on *φnφnk* such that,

$$
\phi\_n \phi\_{nk} \ge \frac{\alpha}{\eta'} \quad \forall \ t \ge 0 \tag{31}
$$

**Remark 2.** *During the implementation of the event triggering algorithm, if φnφnk* < *α*/*η then the virtual control law (Equations (24) and (25) and backstepping control law (Equation (23)) would fail to ensure the semiglobal asymptotic stability of the error variables, <sup>x</sup><sup>i</sup> and closed-loop system states, xi for i* = 1, 2, ... , *n. It is therefore necessary to maintain φnφnk* ≥ *α*/*η*, ∀ *t* ≥ 0*. The region of attraction exists as long as the conditions: (i)* ∑*n*−<sup>1</sup> *<sup>i</sup>*=<sup>1</sup> |*ξi*| ≤ *α*, ∀ *t* ≥ 0 *and (ii) φnφnk* ≥ *α*/*η*, ∀ *t* ≥ 0*, are satisfied.*

In order to ensure the stability of the closed-loop system with ETC, the upper boundedness on ∑*n*−<sup>1</sup> *<sup>i</sup>*=<sup>1</sup> *ξ<sup>i</sup>* as defined by Equations (29) and (30) and the necessary condition, *φnφnk* ≥ *α*/*η* ∀ *t* ≥ 0, must be maintained. Therefore, a triggering algorithm has been designed and is described in Algorithm 1. If the condition given in Algorithm 1 is satisfied, then the system will trigger an event which will send the new sample to the controller. The control command will then be computed and sent back to the nonlinear system after passing through the communication network and ZOH block. If the condition given in Algorithm 1 is not satisfied, then the previous control command will remain in the nonlinear system input.

**Algorithm 1.** Event Triggering Algorithm

**if** ∑*n*−<sup>1</sup> *<sup>i</sup>*=<sup>1</sup> |*ξi*| ≥ *α or φnφnk* ≤ *α*/*η (i) an event is triggered* (*ytrig*(*t*) = 1) *and (ii) control command is updated* **else** *(i) no event triggering* (*ytrig*(*t*) = 0) *and (ii) control command is on hold at its previous value* **end**

Next, the stability analysis of the closed-loop system with ETC law is again performed using the Lyapunov stability theory. In this regard, Theorem 2 is described next, followed by its proof.

**Theorem 2.** *Consider a nonlinear system in strict-feedback form (Equation (2)), and the error dynamics due to ETC (Equation (26)). Then, the virtual control law (Equations (24) and (25), backstepping control law (Equation (23)) and event triggering algorithm (Algorithm 1) ensure that all the equilibrium points, <sup>x</sup><sup>i</sup> for <sup>i</sup>* <sup>=</sup> 1, 2, ... , *n, are semiglobally asymptotically stable with region of attraction-*∑*n*−<sup>1</sup> *<sup>i</sup>*=<sup>1</sup> |*ξi*| ≤ *α and φnφnk* ≥ *α*/*η. Therefore, the closed-loop system states, xi, are bounded.*

**Proof.** It is again required to revisit the Lyapunov function candidate (Equation (12)) to analyze the effect of non-uniform sampling and ETC implementation on the system stability. The derivative of the Lyapunov function candidate from Equation (13) is recalled here as: .

$$\dot{V}(t) = \sum\_{i=1}^{n} \widetilde{\mathbf{x}}\_{i} \dot{\widetilde{\mathbf{x}}}\_{i} = \sum\_{i=1}^{n-1} \widetilde{\mathbf{x}}\_{i} \dot{\widetilde{\mathbf{x}}}\_{i} + \widetilde{\mathbf{x}}\_{n} \dot{\widetilde{\mathbf{x}}}\_{n} \tag{32}$$

Substituting Equation (26) into Equation (32), we have:

$$\dot{V}(t) = -\sum\_{i=1}^{n} k\_i \cdot \widetilde{\mathbf{x}}\_i^2 + \sum\_{i=1}^{n-1} \phi\_i + \phi\_n \cdot \widetilde{\mathbf{x}}\_{(n+1)k} \tag{33}$$

Here, Equation (33) can be divided into two parts as . *<sup>V</sup>*1(*t*) and . *V*2(*t*). . *V*1(*t*) is independent of ETC law and reduces to Equation (16). . *<sup>V</sup>*2(*t*) is dependent on *<sup>x</sup>*(*n*+1)*<sup>k</sup>* and can be written as: .

$$\dot{V}\_{\mathcal{Z}}(t) = \sum\_{i=1}^{n-1} \phi\_i + \phi\_n \cdot \widetilde{\boldsymbol{x}}\_{(n+1)k} \tag{34}$$

Putting the expression of *<sup>x</sup>*(*n*+1)*<sup>k</sup>* from Equation (27) into Equation (34), we have:

$$\dot{V}\_2(t) = \sum\_{i=1}^{n-1} \phi\_i + \phi\_n \cdot \left[ - (\phi\_{nk})^{-1} \left\{ \sum\_{i=1}^{n-1} \phi\_{ik} \right\} - \eta \phi\_{nk} \right] \tag{35}$$

$$\Rightarrow \dot{V}\_2(t) = -\eta \phi\_n \phi\_{nk} + \sum\_{i=1}^{n-1} \left(\phi\_i - \gamma \phi\_{ik}\right) \tag{36}$$

where *<sup>γ</sup>* <sup>=</sup> *<sup>φ</sup>n*·*φ*−<sup>1</sup> *nk* .

Equation (36) can further be simplified by substituting Equation (28) as:

$$\dot{V}\_2(t) = -\eta \phi\_n \phi\_{nk} + \sum\_{i=1}^{n-1} \xi\_i \tag{37}$$

While implementing the ETC scheme, two conditions arise due to sampling. **Condition 1.** At sampling instants, e.g., at *t* = *tk* and *t* = *tk*+1, we have:

$$
\phi\_i = \phi\_{ik} \quad \text{for } i = 1, \ 2, \ \dots, n \tag{38}
$$

Therefore, Equation (38) implies that:

$$\sum\_{i=1}^{n-1} \xi\_i = 0 \text{ and } \gamma = 1 \tag{39}$$

Therefore, Equation (37) reduces to the following form:

$$
\dot{V}\_2(t) = -\eta \phi\_n^2 \Rightarrow \dot{V}\_2(t) \le 0 \tag{40}
$$

which is same as Equation (20) and further results in Equation (21), and implies that the system states would always lead towards asymptotic stability.

**Condition 2.** Between any two consecutive sampling instants, e.g., *tk* < *Tk* < *tk*+1, we have:

$$
\phi\_i \neq \phi\_{ik} \quad \text{for } i = 1, 2, \dots, n \tag{41}
$$

Therefore, Equation (41) implies that:

$$\sum\_{i=1}^{n-1} \xi\_i \neq 0 \text{ or } \sum\_{i=1}^{n-1} |\xi\_i| > 0 \tag{42}$$

and *γ* = 1.

Next, we can further simplify Equation (37) as:

$$\dot{V}\_2(t) \le -\eta \phi\_n \phi\_{nk} + \left(\sum\_{i=1}^{n-1} |\tilde{\xi}\_i|\right)\_{\text{max}}\tag{43}$$

Substituting Equation (30) into Equation (43) as:

$$
\dot{V}\_2(t) \le -\eta \phi\_n \phi\_{nk} + \alpha \tag{44}
$$

$$\Rightarrow \dot{V}\_2(t) \leq -\eta \left(\phi\_n \phi\_{nk} - \frac{\alpha}{\eta}\right) \tag{45}$$

Substituting Equation (31) in Equation (45), we get:

$$
\dot{V}\_2(t) \le 0 \tag{46}
$$

Now, Equation (46) along with Equation (16) is converted to the following form:

$$\dot{V}(t) \le -\sum\_{i=1}^{n} k\_i \cdot \widetilde{x}\_i^2 \le 0 \tag{47}$$

From Equations (40) and (47), it can be concluded that the Lyapunov function candidate defined by Equation (12) is now a Lyapunov function and the closed-loop system with

the ETC scheme is semi-globally asymptotically stable. Hence, Theorem 2 is proved for both Condition 1 and Condition 2. -

#### *3.3. Design of Optimized Event Triggering Algorithm*

As given in Algorithm 1, it is also very important to choose triggering parameter *α* very carefully so that both the objectives of attaining desired system performance and of sending a minimum number of samples over the communication network are achieved successfully. A numerical analysis of the need for an optimum value of triggering parameter *α* is presented in Section 4. In order to optimize *α*, a fitness function consisting of error in system states and the number of triggering pulses is defined wherein *α* has been chosen as an unknown parameter. This can be seen in Figure 2 wherein the output of the nonlinear system, i.e., *X*(*t*), and the output of the triggering block, i.e., *ytrig*(*t*), are given as an input to the fitness function block. The fitness function is given as:

$$J\_{fit}(t) = \int\_0^{T\_s} \{t \cdot ||X(t)|| + |y\_{trig}(t)|\} dt \tag{48}$$

where *X*(*t*) is the Euclidean norm, and its mathematical expression is given as:

$$\|X(t)\| = \sqrt{\mathbf{x}\_1^2 + \mathbf{x}\_2^2 + \dots + \mathbf{x}\_n^2} \tag{49}$$

**Figure 2.** Block diagram for optimizing triggering parameter *α* based on PSO (offline tuning).

The *ytrig*(*t*), represents the triggering pulses which actually drive the sample and hold circuit. The *ytrig* always toggles between 0 and 1. The *ytrig*(*t*) = 1 means that the switches in *AS* and *ZOH* blocks (in Figure 1) are closed, whereas the switches are opened for *ytrig*(*t*) = 0.

*Jfit*(*t*) in Equation (48) is the summation of two fitness functions as: (i) integral time norm of system states, i.e., *X*(*t*) and (ii) integral absolute of triggering function, i.e., *ytrig*(*t*). The reason for multiplying time with *X*(*t*) is that in the transient phase of the simulation, the errors in the system state are high, whereas in the steady state stage the errors become very low. Hence, in the final stage of simulation, if the time is multiplied with *X*(*t*), then the errors become significant for optimization purposes. However, the time is not multiplied to " "*ytrig*(*t*) " " because the triggering pulses will always jump between 0 and 1 for the whole simulation period. The total simulation run-time has been chosen to be *Ts*.

Next, an optimization algorithm is required to minimize *Jfit*(*t*) for obtaining the best possible value of triggering parameter *α*. In this regard, the PSO algorithm [33] has been used due to its simplicity and popularity. It should be noted that any other optimization algorithm could also be used to optimize *α*. However, optimization in itself is a very big research area and a large number of optimization tools have been developed. Hence, the focus of this paper is not on developing optimization techniques, but on applying them for an event-triggered control.

Next, we consider two case studies on a single-link robot system and an inverted pendulum system to demonstrate the proposed ETC scheme for an NCS.

#### *3.4. Case Study 1: Stabilization of Inverted Pendulum System*

The inverted pendulum system, a nonlinear and unstable system, is widely used in laboratories to implement and validate new ideas emerging in control engineering. In this case study, we have considered the balancing control of the inverted pendulum system to demonstrate the proposed control scheme of event triggering.

The dynamics of the inverted pendulum system [34] can be written as:

$$\left((M+m)\ddot{\mathbf{x}} + ml\cos\theta\ddot{\theta} - ml\sin\theta\,\dot{\theta}^2\right) = F\_{\mathbf{x}}\tag{50}$$

$$
\cos \theta \ddot{\mathbf{x}} - \mathbf{g} \sin \theta = 0 \tag{51}
$$

where *θ* is the pendulum angle (rad) and |*θ*| < *π*/2; *M* is the mass of the cart (kg); m is the mass of the pendulum rod (kg); *x* is the cart position (m); *l* is the distance from the pivot to the mass center of the pendulum; *Fx* is the force applied on the cart (N); and *g* is the gravitational constant (N/kg).

From Equations (50) and (51), it can be concluded that the angle dynamics are independent of cart position and can be written as:

$$\ddot{\theta} = \frac{(M+m)g\sin\theta - ml\sin\theta\cos\theta\,\dot{\theta}}{Ml+ml\sin^2\theta} - \frac{\cos\theta\,F\_X}{Ml+ml\sin^2\theta} \tag{52}$$

Equation (52) can be written in state space form as follows:

$$\dot{\mathbf{x}}\_1 = \frac{\dot{\mathbf{x}}\_1 - \mathbf{x}\_2}{M + ml\sin^2\mathbf{x}\_1} - \frac{\cos\mathbf{x}\_1}{M + ml\sin^2\mathbf{x}\_1} - \frac{\cos\mathbf{x}\_1}{M + ml\sin^2\mathbf{x}\_1} \cdot \mu \tag{53}$$

where *x1 = θ*; *u=Fx*. Additionally, comparing Equation (53) with Equation (2) we get: *<sup>n</sup>* <sup>=</sup> 2; *<sup>f</sup>*<sup>1</sup> <sup>=</sup> 0; *<sup>g</sup>*<sup>1</sup> <sup>=</sup> 1; *<sup>f</sup>*<sup>2</sup> <sup>=</sup> (*M*+*m*)*g sinx*1−*ml sinx*<sup>1</sup> *cosx*<sup>1</sup> *<sup>x</sup>*<sup>2</sup> 2 *Ml*+*ml sin*2*x*<sup>1</sup> ; and *<sup>g</sup>*<sup>2</sup> <sup>=</sup> <sup>−</sup> *cosx*<sup>1</sup> *Ml*+*ml sin*2*x*<sup>1</sup> .

Now, the backstepping control law *u* from Equation (11) can be written as:

$$u = g\_2^{-1} \left[ \dot{x}\_{2d} - f\_2 + k\_2 \cdot \widetilde{\mathbf{x}}\_2 \right] + \left( \phi\_2 \right)^{-1} \left\{ \phi\_1 + \eta \phi\_2^2 \right\} \tag{54}$$

where *<sup>φ</sup>*<sup>1</sup> <sup>=</sup> *<sup>g</sup>*1.*<sup>x</sup>*1.*<sup>x</sup>*<sup>2</sup> and *<sup>φ</sup>*<sup>2</sup> <sup>=</sup> *<sup>g</sup>*2.*<sup>x</sup>*2, and after solving for *<sup>x</sup>*1*<sup>d</sup>* = 0, we obtain:

$$\begin{array}{c} \phi\_1 = \mathfrak{x}\_1 (k\_1 \mathfrak{x}\_1 + \mathfrak{x}\_2) \\ \phi\_2 = \frac{\cos \mathfrak{x}\_1}{Ml + ml \sin^2 \mathfrak{x}\_1} (k\_1 \mathfrak{x}\_1 + \mathfrak{x}\_2) \end{array} \tag{55}$$

Therefore, the final expression for *u* can be written as:

$$\begin{array}{c} \mathfrak{u} = \frac{Ml + ml\sin^{2}\mathbf{x}\_{1}}{\cos\mathbf{x}\_{1}}[(1 + k\_{1}k\_{2})\mathbf{x}\_{1} + (k\_{1} + k\_{2})\mathbf{x}\_{2}] \\ + \frac{(M + m)\mathfrak{g}\sin\mathbf{x}\_{1} - ml\sin\mathbf{x}\_{1}\cos\mathbf{x}\_{2}}{\cos\mathbf{x}\_{1}} \\ + \frac{\eta\cos\mathbf{x}\_{1}}{Ml + ml\sin^{2}\mathbf{x}\_{1}}(k\_{1}\mathbf{x}\_{1} + \mathbf{x}\_{2}) \end{array} \tag{56}$$

Next, for implementing the event-triggered control, Equation (56) can be expressed as:

$$\begin{array}{c} \mathfrak{U}\_{k} = \frac{Ml + ml\sin^{2}\mathbf{x}\_{1k}}{\cos\mathbf{x}\_{1k}} \left[ (1 + k\_{1}k\_{2})\mathbf{x}\_{1k} + (k\_{1} + k\_{2})\mathbf{x}\_{2k} \right] \\ + \frac{(M + m)g\sin\mathbf{x}\_{1k} - ml\sin\mathbf{x}\_{1k}\cos\mathbf{x}\_{1k}\mathbf{x}\_{2k}^{2}}{\cos\mathbf{x}\_{1k}} \\ + \frac{\eta\cos\mathbf{x}\_{1k}}{Ml + ml\sin^{2}\mathbf{x}\_{1k}}(k\_{1}\mathbf{x}\_{1k} + \mathbf{x}\_{2k}) \end{array} \tag{57}$$

Additionally, the error due to event-triggered control can be expressed as:

$$\sum\_{i=1}^{n-1} |\xi\_i| = |\xi\_1| = |\phi\_1 - \gamma \phi\_{1k}| \tag{58}$$

$$\Rightarrow |\xi\_1| = |\phi\_1 - \gamma \phi\_{1k}|\tag{59}$$

$$\Rightarrow |\tilde{\zeta}\_1| = \left| \phi\_1 - \frac{\phi\_2}{\phi\_{2k}} \phi\_{1k} \right| \tag{60}$$

Substituting Equation (55) into Equation (60), we obtain:

$$|\tilde{\xi}\_1| = |k\_1 \mathbf{x}\_1 + \mathbf{x}\_2| \cdot |\mathbf{x}\_1 - \Delta \cdot \mathbf{x}\_{1k}| \tag{61}$$

where Δ = *cosx*<sup>1</sup> *cosx*1*<sup>k</sup>* . *Ml*+*ml sin*2*x*1*<sup>k</sup> Ml*+*ml sin*2*x*<sup>1</sup> .

In Equation (61), at triggering instants, |*ξ*1| = 0 and the closed-loop system becomes asymptotically stable in the same manner as it is without ETC. Otherwise, |*ξ*1| = 0 and the closed-loop system leads towards instability. In order to avoid this, the condition given in Algorithm 1 is forced on the control law of Equation (57).

#### *3.5. Case Study 2: Stabilization of Single-Link Robot System*

The dynamics of a single-link robot system have been adopted from [20] and are given as follows:

$$J\dot{y} + 0.5mgl\sin(y) = u\tag{62}$$

where *<sup>J</sup>* is the inertia, *<sup>y</sup>* is the angle position of the link, . *<sup>y</sup>* is the angle velocity of the link, .. *y* is the angle acceleration of the link, *g* = 9.8 m/s<sup>2</sup> is the acceleration due to gravity, *l* is the length of the link, m is the mass of the link, and *u* is the control force of the link.

We denote *<sup>x</sup>*<sup>1</sup> <sup>=</sup> *<sup>y</sup>* and *<sup>x</sup>*<sup>2</sup> <sup>=</sup> .. *y* and, hence, Equation (62) can be rewritten as:

$$\dot{\mathbf{x}}\_1 = \mathbf{x}\_2 \begin{array}{c} \dot{\mathbf{x}}\_1 = \mathbf{x}\_2 \\ -\frac{0.5mgl}{\int} \sin(\mathbf{x}\_1) + \frac{1}{\int} u \end{array} \tag{63}$$

Comparing Equation (63) with Equation (2), we have: *n* = 2; *f*<sup>1</sup> = 0; *g*<sup>1</sup> = 1; *<sup>f</sup>*<sup>2</sup> <sup>=</sup> <sup>−</sup>0.5*mgl <sup>J</sup>* sin(*x*1); *<sup>g</sup>*<sup>2</sup> <sup>=</sup> <sup>1</sup> *J* .

Now, the backstepping control law *u* from Equation (11) can be rewritten as:

$$\mu = g\_2^{-1} \left[ \dot{\mathbf{x}}\_{2d} - f\_2 + k\_2 \cdot \widetilde{\mathbf{x}}\_2 \right] + (\phi\_2)^{-1} \left\{ \phi\_1 + \eta \phi\_2^2 \right\} \tag{64}$$

where *<sup>φ</sup>*<sup>1</sup> <sup>=</sup> *<sup>g</sup>*1·*<sup>x</sup>*<sup>1</sup>·*<sup>x</sup>*<sup>2</sup> and *<sup>φ</sup>*<sup>2</sup> <sup>=</sup> *<sup>g</sup>*2·*<sup>x</sup>*2, and after solving for *<sup>x</sup>*1*<sup>d</sup>* = 0, we obtain:

$$\begin{aligned} \phi\_1 &= \mathfrak{x}\_1 (k\_1 \mathfrak{x}\_1 + \mathfrak{x}\_2) \\ \phi\_2 &= -\frac{1}{\mathsf{T}} (k\_1 \mathfrak{x}\_1 + \mathfrak{x}\_2) \end{aligned} \qquad\tag{65}$$

Therefore, the final expression for *u* can be written as:

$$\mathbf{u} = -J[(1 + k\_1 k\_2)\mathbf{x}\_1 + (k\_1 + k\_2)\mathbf{x}\_2] + 0.5 mgl \sin \mathbf{x}\_1 + \frac{\eta}{J}(k\_1 \mathbf{x}\_1 + \mathbf{x}\_2) \tag{66}$$

Next, for implementing the event-triggered control, Equation (66) can be expressed as:

$$u\_k = -f[(1+k\_1k\_2)\mathbf{x}\_{1k} + (k\_1+k\_2)\mathbf{x}\_{2k}] + 0.5mgl\sin\mathbf{x}\_{1k} + \frac{\eta}{f}(k\_1\mathbf{x}\_{1k} + \mathbf{x}\_{2k})\tag{67}$$

Additionally, the error due to event-triggered control can be expressed as:

$$\sum\_{i=1}^{n-1} |\mathfrak{f}\_i| = |\mathfrak{f}\_1| = |\phi\_1 - \gamma \phi\_{1k}| = \left| \phi\_1 - \frac{\phi\_2}{\phi\_{2k}} \phi\_{1k} \right| \tag{68}$$

Substituting Equation (65) into Equation (68), we obtain:

$$|\mathcal{G}\_1| = |k\_1 \mathbf{x}\_1 + \mathbf{x}\_2| \cdot |\mathbf{x}\_1 - \mathbf{x}\_{1k}| \tag{69}$$

Here, Equation (69) will be utilized for implementing the event triggering algorithm as given in Algorithm 1.

In order to study the robustness of the proposed control scheme for a single-link robot system, we have applied an external disturbance signal in the actuator/control signal *u*k. Therefore, the new control signal is represented as:

$$\mathbf{u}\_{k} = -\mathbf{J}[(1+k\_{1}k\_{2})\mathbf{x}\_{1k} + (k\_{1}+k\_{2})\mathbf{x}\_{2k}] + 0.5mgl\sin\mathbf{x}\_{1k} + \frac{\eta}{J}(k\_{1}\mathbf{x}\_{1k} + \mathbf{x}\_{2k}) + \delta\tag{70}$$

where *δ* is the external disturbance signal and is represented as:

$$
\delta = 0.5 \sin(10t) \tag{71}
$$

#### **4. Simulation Results**

In this section, we have performed simulations using MATALB software for implementing the ETC scheme on an inverted pendulum and single-link robot system. In ETC, suppose that the *kth* triggering instant is *tk* and the next triggering instant is defined by *tk+*1, then the inter event execution time, *Tk*, is represented as:

$$T\_k = t\_{k+1} - t\_k \tag{72}$$

where *Tk* ≥ *Tmin*. The *Tmin* is the lower bound on *Tk* and *Tmin* = 1*ms*. The *Tmin* = 1*ms* is also the sampling time set for running the simulations in MATLAB software. If *Tk* < *Tmin*, then many sampling instants will not be captured by the MATLAB processor. Hence, the minimum inter-event execution time, *Tk*, will always be greater than or equal to *Tmin*. If the *Tmin* is reduced below 1 ms, then the computation time increases significantly. However, with high-speed computers, the *Tmin* can be reduced to values below 1 ms as well. The upper bound on *Tk* is governed by an event triggering mechanism which has been developed in Section 3.

#### *4.1. Case Study 1: Stabilization of Inverted Pendulum System*

The simulation results for the stabilization of the inverted pendulum system have been obtained using parameters given in Table 1. Table 2 presents an analysis of the inverted pendulum system for different values of triggering parameter *α*. It is observed that for lower values of the *α*, the value of fitness function *Jfit*(*t*) is very high, whereas the lowest number of samples is needed to be sent to the controller. On the increase in *α* value, the *Jfit*(*t*) starts decreasing, whereas the number of samples goes on increasing. However, after a certain value of *α*, both the *Jfit*(*t*) and number of samples start increasing. Hence, it is required to find the optimum value of *α* so that both the fitness function *Jfit*(*t*) and number of samples are at the minimum level.

The *Jfit*(*t*) is further minimized using the PSO algorithm and an optimized value of *α* is obtained. The simulation parameters taken for running the PSO algorithm are as follows: (i) number of iterations = 50, (ii) number of particles = 20 and (iii) total simulation period *Ts* = 20*s*. The other PSO parameters have been taken from Mishra and Chandra et al. (2014). Now, the optimized value of *α* is given in the bottom row of Table 2. The value of fitness function *Jfit*(*t*) is 0.8369, which is the minimum among all fitness values given in Table 2. The number of samples needed is 501, which is very low if we compare it with a periodic sampling of 1 ms. If *Ts* = 20*s* then it would require 20,001 samples in case of periodic sampling.

**Table 1.** Inverted Pendulum System and Controller Parameters.



**Table 2.** Fitness Function and Number of Samples for Inverted Pendulum System.

Next, the inverted pendulum system performance has been evaluated by analyzing the behavior of its system states, control effort and inter-event execution time waveforms, which are shown Figures 3–5. Two situations of norm of system states, *X*(*t*), for *<sup>α</sup>* = <sup>10</sup>−<sup>2</sup> (very high) and *<sup>α</sup>* = 0.998 × <sup>10</sup>−<sup>6</sup> (optimized), are shown in Figure 3. For a relatively higher value of *α* as shown in Figure 3a, the system states have very poor performance, while the number of samples is 211. For the optimized case as shown in Figure 3b, the system states performance is very satisfactory, whereas the number of samples needed is just 501.

(**b**) for ߙ ൌ ͲǤͻͻͺ ൈ ͳͲି (optimized)

**Figure 3.** Inverted pendulum system states, *X*.

(**b**) for ߙ ൌ ͲǤͻͻͺ ൈ ͳͲି (optimized)

**Figure 4.** Control effort, *u*k.

(**b**) for ߙ ൌ ͲǤͻͻͺ ൈ ͳͲି (optimized)

**Figure 5.** Inter event execution time, *Tk*.

Similarly, in Figure 4, the control effort waveforms are shown for *α* = 10−<sup>2</sup> (very high) and *<sup>α</sup>* = 0.998 × <sup>10</sup>−<sup>6</sup> (optimized). Again, the performance of the optimized case is superior to the case of Figure 4a. Hence, it can be said that minimum control effort could be maintained with a very low number of samples as well. The inter-event execution time, *Tk*, waveforms are shown in Figure 5. It is already explained that the lowest number of triggering samples is required in the optimized case.

#### *4.2. Case Study 2: Stabilization of Single-Link Robot System*

We will now discuss the simulation results of the single-link robot system. The simulation results for the stabilization of the single-link robot system have been obtained using parameters given in Table 3. Table 4 presents an analysis of the single-link robot system for different values of triggering parameter *α*. It is observed that for lower values of the *α*, the value of fitness function *Jfit*(*t*) is very high, whereas the lowest number of samples needed to be sent to the controller. On the increase in *α* value, the *Jfit*(*t*) starts decreasing, whereas the number of samples goes on increasing. However, after a certain value of *α*, both the *Jfit*(*t*) and number of samples start increasing. Hence, it is required to find the optimum value of *α* so that both the fitness function *Jfit*(*t*) and number of samples are at the minimum level.




**Table 4.** Fitness Function and Number of Samples for Single-Link Robot.

The *Jfit*(*t*) is further minimized using the PSO algorithm, and an optimized value of *α* is obtained. The optimized value of *α* is given in the bottom row of Table 4. The value of fitness function *Jfit*(*t*) is 1.488, which is the minimum among all fitness values given in Table 4. The number of samples needed is 968, which is very low if we compare it with a periodic sampling of 1 ms. If *Ts* = 20*s* then it would require 20,001 samples in case of periodic sampling.

The simulation results for single-link robot system states, control effort and inter-event execution time waveforms are shown in Figures 6–8. Three situations of norm of system states, *X*(*t*), for *<sup>α</sup>* = <sup>10</sup>−<sup>2</sup> (very high), *<sup>α</sup>* = 1.001 × <sup>10</sup>−<sup>6</sup> (optimized) and *<sup>α</sup>* = 1.001 × <sup>10</sup>−<sup>6</sup> (optimized) with actuator disturbance, are shown in Figure 6. For a relatively higher value of *α* as in Figure 6a, the system states have very poor performance, while the number of samples is 521. For the optimized case in Figure 6b, the system states performance is better compared to the case of Figure 6a, and the number of samples needed is just 968. Next, in Figure 6c, the performance of the system states is slightly affected by the actuator disturbance. However, the states always remain in the stability region provided that the disturbance signal is bounded within a small range.

(**c**) for ߙ ൌ ͳǤͲͲͳ ൈ ͳͲି (optimized) with actuator disturbance

**Figure 6.** Single-link robot system states, *X*.

In Figure 7, the control effort waveforms are shown for *α* = 10−<sup>2</sup> (very high), *<sup>α</sup>* = 1.001 × <sup>10</sup>−<sup>6</sup> (optimized) and *<sup>α</sup>* = 1.001 × <sup>10</sup>−<sup>6</sup> (optimized) with actuator disturbance. Again, the performance of the optimized case (Figure 7b) is much better than that of Figure 7a. Hence, it can be said that minimum control effort could be maintained with an optimized triggering parameter. As shown in Figure 7c, a slightly high control effort is required to keep the system states in stable trajectory due to disturbance added in the actuator signal. However, it is important to notice that the proposed ETC scheme works absolutely fine for small disturbances. Figure 8 presents the inter-event execution time, *Tk*. The range of *Tk* is between 0.001 and 0.15 s for *α* = 10−<sup>2</sup> (very high), as shown in Figure 8a, whereas for *<sup>α</sup>* = 1.001 × <sup>10</sup>−<sup>6</sup> (optimized) it is between 0.001 and 0.28 s, as shown in Figure 8b. For the third case with actuator disturbance as shown in Figure 8c, the range of

*Tk* lies between 0.001 and 0.045 s. This is due to the fact that the number of control updates would increase when a continuous disturbance signal affects the actuator/control signal.

The chattering can also be observed in non-optimized event-triggered control cases (e.g., Figure 3a, Figure 4a, Figure 6a, and Figure 7a). The optimized event-triggered control cases do not show any chattering (e.g., Figure 3b, Figure 4b, Figure 6b, and Figure 7b).

(**c**) for ߙ ൌ ͳǤͲͲͳ ൈ ͳͲି (optimized) with actuator disturbance **Figure 7.** Control effort, *u*k.

(**c**) for ߙ ൌ ͳǤͲͲͳ ൈ ͳͲି (optimized) with actuator disturbance

**Figure 8.** Inter event execution time, *Tk*.

Finally, we consider the non-zero value of *x*1*d*, i.e., trajectory tracking control of the proposed scheme. The reference trajectory for this objective is considered as *x*1*<sup>d</sup>* = 0.1 sin(0.2*πt*). Next, the reference trajectory for the second system state is evaluated using the expression of Equation (8) for *i* = 1. Hence, the *x2d* is given as:

$$\mathbf{x}\_{2d} = \mathbf{g}\_1^{-1} \left[ \dot{\mathbf{x}}\_{1d} - f\_1 + k\_1 \cdot \widetilde{\mathbf{x}}\_1 \right] \tag{73}$$

Based on the above reference trajectories, *x*1*<sup>d</sup>* and *x*2*d*, the closed-loop system has been simulated and the results are shown in Figure 9. It should be noted that the closed-loop response shown in Figure 9 is obtained only for the optimized event-triggered control for *<sup>α</sup>* = 1.001 × <sup>10</sup>−6. All other cases have been described in Figures 7–9. As shown in the figure, the proposed controller forces the system states (in Figure 9a,b) to follow the desired trajectory very satisfactorily. Similarly, the control effort does not vary after 1 *s* duration (in Figure 9c). However, the inter-event time (in Figure 9d) has been reduced as compared to the previous cases. It is due to variable reference trajectories where a continuous control command update is required. In cases where the control command does not need regular updates, the number of data samples is minimized significantly. This has been demonstrated in the case of *x*1*<sup>d</sup>* = 0.

(**d**) Inter event execution time, *Tk*

**Figure 9.** Closed-loop response for trajectory tracking control using optimized event-triggered control.

#### **5. Conclusions**

This paper presented an ETC scheme for an NCS. Initially, a backstepping control law was designed for a nonlinear system in strict-feedback form. Thereafter, an optimized event triggering algorithm by assuring the closed-loop stability of the system was developed. Later, the proposed ETC scheme was implemented on two case studies of an inverted pendulum and single-link robot system. Next, the simulations were performed to verify the effectiveness of the proposed ETC scheme. The performance of the system states, control efforts, state error due to non-uniform sampling and event execution time interval was analyzed for both the nonlinear systems. The proposed ETC scheme can be applied to any generalized nonlinear system provided it is in the strict-feedback form. Another important contribution of this study is the optimized event triggering algorithm that helps the ETC to maintain the optimum performance of the nonlinear system with a reduced number of samples required to be sent over the communication channel. As compared to the non-optimized event triggering algorithm, the optimized event triggering algorithm takes more triggering pulses but provides very efficient tracking of state trajectories. The non-optimized event triggering parameter reduces the triggering samples but leads to the degradation of system performance, as shown in simulation results. The effects of a communication network for data transmission have not been taken into account in the present work, which might be the focus of future work.

**Author Contributions:** Conceptualization, S.K.M. and B.A.; methodology, S.K.M. and A.V.J.; software, S.K.M. and V.K.V.; validation, B.A. and A.V.J.; investigation, A.Y.A.; resources, V.K.V.; data curation, A.V.J.; writing—original draft preparation, S.K.M.; supervision, N.B.; project administration, B.A.; formal analysis, N.B.; funding acquisition, N.B.; visualization, N.B.; writing—review and editing, N.B.; figure and table, S.K.M. All authors have read and agreed to the published version of the manuscript.

**Funding:** There is no funding available for this research.

**Institutional Review Board Statement:** Not applicable.

**Informed Consent Statement:** Not applicable.

**Data Availability Statement:** Not applicable.

**Conflicts of Interest:** The authors declare no conflict of interest.

#### **References**

