1 Introduction

The high number of road accidents and deaths caused mainly by human error is one of the most serious issues facing many countries nowadays. Driver-assistance technologies are being fitted in today’s vehicles to help prevent accidents and to save lives. These technologies are becoming especially relevant with the appearance of autonomous vehicles [5, 7, 9].

The accurate knowledge of sideslip angle and roll angle is key for a proper design of advanced driver-assistance systems that improve the vehicle’s stability and handling [6, 8]. The problem is that these two variables cannot be measured directly through sensors installed in current series production vehicles due to their high cost. Therefore, many investigations are focused on the design of observers that allow their estimation by merging the information from sensors that are installed in the vehicles, and that are low-cost and easy to install. Signal filtering or state estimation is currently a fundamental research topic in the field of signal processing and system control. The aim of the filtering or estimation problem is to estimate the unknown states of a system from the information provided by the sensor signals. One of the most common methodologies is the use of Kalman filter-based observers. However, the Kalman filter is inapplicable when the characteristics of the signal noise are unknown. In addition, it is necessary to address the problem that vehicles have a strongly nonlinear behavior with a large number of uncertainties. In this case, the use of robust observers based on \(H_{\infty }\) or energy-to-peak is a good option.

Many of these observers are designed with the knowledge that both vehicle longitudinal speed and parameters, such as tire cornering stiffness, among others, are constant and known. Nevertheless, this is not true in vehicle system dynamics [19].

To deal with the first problem, i.e., variables that can be known through measurements, the most successful approaches used are based on polytopic linear-parameter-varying (LPV) [1, 32, 36, 38] and fuzzy Takagi–Sugeno (T-S) representations [22, 23, 25, 31]. In the polytopic LPV paradigm, the nonlinearity is described as a parameterized linear system. A polytopic LPV system is expressed by a polytopic model which is obtained by a combination of multiple linear time-invariant (LTI) models at the vertices of the operating region. In the fuzzy T-S paradigm, the nonlinearity is represented through fuzzy sets, fuzzy rules, and fuzzy membership functions. The main disadvantage of fuzzy T-S methodology is to correctly define the fuzzy sets, fuzzy rules, and fuzzy membership functions to make it work with a degree of accuracy.

To deal with the second problem, i.e., parameters that are unknown but bounded, uncertainties in model parameters are considered [35].

Some techniques previously used for the estimation of vehicle sideslip angle and roll angle are based on Kalman filters [11, 13] and robust filters [33, 35]. Other researchers attempt to overcome the nonlinearity problems using artificial intelligence (AI) techniques [2]. A drawback of only using AI techniques is that the estimates are greatly affected by the sensor noise. A combination of AI-based observers intended to obtain pseudo-measures with Kalman filters or robust observers has been proven to demonstrate good performance [3, 12]. One drawback of the previous studies is that they do not simultaneously estimate both angles.

On the other hand, the advanced driver-assistance systems require the installation of a large number of devices in the vehicles, such as sensors, actuators, and microprocessors, and a communication network that allows signals to be sent from one device to another. This implies the design of a very complex system with a high processing capacity, low energy consumption, and security in the transmission of information.

Moreover, there is a time delay in the sending of information between the different systems. This makes the design of networked control systems (NCS) [10, 16, 27, 30, 42] of special interest in vehicles. Currently, these NCSs have great advantages such as cost effectiveness, simple installation, high reliability, reduced weight, and power consumption [24]. Some research has taken place with the \({H}_{\infty }\)-based observer design for NCS with delay measurements and an event-triggered mechanism [18, 37, 40, 41].

However, the use of a communication network also raises problems. The sampling of information with a fixed period, which can result in the sending of unnecessary information, can cause a saturation of the network along with the finite property of network bandwidth resulting in network-induced delays [20]. To address this problem, a lot of research has been focused on the design of event-triggered systems, in which the task is carried out if the event-triggered condition is violated [14, 17, 29, 39]. In [14, 39], event-triggered dynamic output-feedback controllers for NCS are proposed. In [17], two design methods of dynamic output-feedback controller in event-triggered mechanism case with data quantization were studied. In [29], an event-triggered \({H}_\infty \) static output-feedback controller for active suspension systems with network-induced delays is implemented. Although various event-triggered \({H}_\infty \)-based controllers have been proposed in scientific literature, few studies have been devoted to the design of event-triggered \({H}_\infty \)-based observers. In [37], a distributed \({H}_\infty \) filtering for the active semi-vehicle suspension system with delay distribution-dependent scheme, stochastic sensor faults, and an event-triggering scheme is proposed. In [34], the fault detection problem has been transformed into an event-triggered \({H}_\infty \) filtering problem with uncertain parameters.

The novelty of this paper is the design of a Luenberger observer to simultaneously estimate both the vehicle sideslip and roll angles for a networked control system with networked transmission delay, based on an event-triggered communication scheme combined with neural networks (NN). The main advantages of the proposed method are: (1) The observed signals are obtained through sensors already installed in current series production vehicles. These signals are the yaw and roll rates obtained directly from an IMU sensor and the sideslip and roll angles obtained indirectly by means of an NN-based observer [21]. The latter are called ‘pseudo-measures’ and they are estimated from data measured by a steering wheel sensor, a GPS and an IMU sensor. (2) The proposed observer is able to address the problem of a strongly nonlinear system, such as a vehicle that typically exhibits uncertainties and time-varying characteristics. Some vehicle’s parameters are very sensitive to the change of road and drive conditions, such as the vehicle speed and the tire cornering stiffness. In addition, the method is extended to deal with external disturbances. (3) Finally, the proposed observer deals with the event-triggered NCSs, with signal communication delays, to reduce the data transmission. The observation data are used to design the triggering criterion to avoid assuming that the full state information is available.

The designed observer guarantees robust stability under event-triggered scheme with an acceptable level of performance.

This paper is organized as follows. Section 2 shows the vehicle model used for observer design. Section 3 describes the global architecture of the designed observer given the formulation to obtain the observer and weighting matrices that define the event-triggered \({H}_{\infty }\)-based observer. Section 4 shows both simulation and experimental results to prove the effectiveness of the designed observer with a discussion related to them. Finally, conclusions are given in Sect. 5.

2 Vehicle model for observer design

The vehicle model considered in this research includes both variables that are going to estimate [4]. The equations which define the LPV-based state-space vehicle model are:

$$\begin{aligned} \dot{\mathbf {x}} = {\mathbf {A}}\left( \mu \right) {\mathbf {x}} + {\mathbf {B}}_\delta \left( \mu \right) \delta + {\mathbf {B}}_u \left( \mu \right) {\mathbf {u}} + {\mathbf {B}}_w \left( \mu \right) {\mathbf {w}} \end{aligned}$$
(1)

where \({\mathbf {x}} = \left[ {\begin{array}{*{20}c} \beta &{} r &{} \phi &{} {{{\dot{\phi }}} } \\ \end{array} } \right] ^\mathrm{{T}}\) is the state vector given by the sideslip angle, \(\beta \), yaw rate, r, roll angle, \(\phi \), and roll rate, \({{\dot{\phi }}}\); \(\delta \) is the wheel steering angle; \({\mathbf {u}}=\left[ {\begin{array}{*{20}c} \Delta \delta &{} M_{\phi } \\ \end{array} } \right] ^\mathrm{{T}}\) is the input vector; \({\mathbf {w}} = \left[ {\begin{array}{*{20}c} \phi _r &{} \dot{p}_f &{} d \\ \end{array} } \right] ^\mathrm{{T}}\) is the disturbance vector given by the road bank angle \(\phi _r\), the x component of the angular velocity vector of the vehicle frame with respect to the inertial coordinates, \(\dot{p}_f\), and d is the system noise; and

$$\begin{aligned} \!\!\mathbf {A(\mu )}&{=}&\left[ \!\!{\begin{array}{*{20}c} { {-} \frac{{I_\mathrm{{eq}} \left( {C_{\alpha f} {+} C_{\alpha r} } \right) }}{{I_x mv_x }}} &{} { {-} \left( {1 {+} \frac{{I_\mathrm{{eq}} \left( {aC_{\alpha f} - bC_{\alpha r} } \right) }}{{I_x mv_x^2 }}} \right) } &{} {\frac{{h\left( {mgh {-} k_r } \right) }}{{I_x v_x }}} &{} { {-} \frac{{hb_r }}{{I_x v_x }}} \\ { - \frac{{\left( {aC_{\alpha f} - bC_{\alpha r} } \right) }}{{I_z }}} &{} { - \frac{{\left( {a^2 C_{\alpha f} + b^2 C_{\alpha r} } \right) }}{{I_z v_x }}} &{} 0 &{} 0 \\ 0 &{} 0 &{} 0 &{} 1 \\ { - \frac{{\left( {C_{\alpha f} + C_{\alpha r} } \right) h}}{{I_x }}} &{} { - \frac{{\left( {aC_{\alpha f} - bC_{\alpha r} } \right) h}}{{I_x v_x }}} &{} {\frac{{\left( {mgh - k_r } \right) }}{{I_x }}} &{} { - \frac{{b_r }}{{I_x }}} \\ \end{array} }\!\!\right] \\ {\mathbf {B}}_\delta (\mu )= & {} \left[ {\begin{array}{*{20}c} {\frac{{I_\mathrm{{eq}} C_{\alpha f} }}{{I_x mv_x }}} \\ {\frac{{aC_{\alpha f} }}{{I_z }}} \\ 0 \\ {\frac{{C_{\alpha f} h}}{{I_x }}} \\ \end{array} } \right] \\ {\mathbf {B}}_u (\mu )= & {} \left[ {\begin{array}{*{20}c} {\frac{{I_\mathrm{{eq}} C_{\alpha f} }}{{I_x mv_x }}} &{} 0 \\ {\frac{{aC_{\alpha f} }}{{I_z }}} &{} 0 \\ 0 &{} 0 \\ {\frac{{C_{\alpha f} h}}{{I_x }}} &{} {\frac{1}{{I_x }}} \\ \end{array} } \right] \\ {\mathbf {B}}_{w} (\mu )= & {} \left[ {\begin{array}{*{20}c} { - \frac{g}{{v_x }}} &{} 0 &{} 1 \\ 0 &{} 0 &{} 1 \\ 0 &{} 0 &{} 1 \\ 0 &{} { - 1} &{} 1 \\ \end{array} } \right] \end{aligned}$$

The description of parameters given in the previous matrices is shown in Table 1, and

$$\begin{aligned} \begin{aligned} C_{0}&=C_{\alpha f}+C_{\alpha r}\\ C_{1}&=a\cdot C_{\alpha f}-b\cdot C_{\alpha r}\\ C_{2}&=a\cdot C_{\alpha f}^{2}+b\cdot C_{\alpha r}^{2}\\ I_{\mathrm {eq}}&=I_{x}+m\cdot h^{2} \end{aligned} \end{aligned}$$
Table 1 Description of vehicle parameters

The cornering stiffnesses of tires vary strongly over time, but they cannot be measured online by sensors. To take into account their uncertainties, the vehicle model, given in Eq. (1), can be rewritten as:

$$\begin{aligned} \dot{{\mathbf {x}}}= & {} \left[ {{\mathbf {A}}\left( \mu \right) + \Delta {\mathbf {A}}\left( \mu \right) } \right] {\mathbf {x}} + \left[ {{\mathbf {B}}_\delta \left( \mu \right) + \Delta {\mathbf {B}}_\delta \left( \mu \right) } \right] \delta \nonumber \\&+ \left[ {{\mathbf {B}}_u \left( \mu \right) + \Delta {\mathbf {B}}_u \left( \mu \right) } \right] {\mathbf {u}} + {\mathbf {B}}_w \left( \mu \right) {\mathbf {w}} \end{aligned}$$
(2)

where

$$\begin{aligned} \Delta {\mathbf {A}} (\mu )= & {} \left[ {\begin{array}{*{20}c} { - \frac{{I_\mathrm{{eq}} \left( {\Delta C_{\alpha f} + \Delta C_{\alpha r} } \right) }}{{I_x mv_x }}} &{} { - \left( {\frac{{I_\mathrm{{eq}} \left( {a\Delta C_{\alpha f} - b\Delta C_{\alpha r} } \right) }}{{I_x mv_x^2 }}} \right) } &{} 0 &{} 0 \\ { - \frac{{\left( {a\Delta C_{\alpha f} - b\Delta C_{\alpha r} } \right) }}{{I_z }}} &{} { - \frac{{\left( {a^2 \Delta C_{\alpha f} + b^2 \Delta C_{\alpha r} } \right) }}{{I_z v_x }}} &{} 0 &{} 0 \\ 0 &{} 0 &{} 0 &{} 0 \\ { - \frac{{\left( {\Delta C_{\alpha f} + \Delta C_{\alpha r} } \right) h}}{{I_x }}} &{} { - \frac{{\left( {a\Delta C_{\alpha f} - b\Delta C_{\alpha r} } \right) h}}{{I_x v_x }}} &{} 0 &{} 0 \\ \end{array} } \right] \\ \Delta {\mathbf {B}}_\delta (\mu )= & {} \left[ {\begin{array}{*{20}c} {\frac{{I_\mathrm{{eq}} \Delta C_{\alpha f} }}{{I_x mv_x }}} \\ {\frac{{a\Delta C_{\alpha f} }}{{I_z }}} \\ 0 \\ {\frac{{\Delta C_{\alpha f} h}}{{I_x }}} \\ \end{array} } \right] \\ \Delta {\mathbf {B}}_u (\mu )= & {} \left[ {\begin{array}{*{20}c} {\frac{{I_\mathrm{{eq}} \Delta C_{\alpha f} }}{{I_x mv_x }}} &{} 0 \\ {\frac{{a\Delta C_{\alpha f} }}{{I_z }}} &{} 0 \\ 0 &{} 0 \\ {\frac{{\Delta C_{\alpha f} h}}{{I_x }}} &{} 0 \\ \end{array} } \right] \end{aligned}$$

where \(\Delta C_{\alpha f}\) and \(\Delta C_{\alpha r}\) represent the maximum uncertainties of \( C_{\alpha f}\) and \(C_{\alpha r}\), respectively. The uncertainties matrices can be rewritten as \(\Delta \mathbf{A} (\mu ) = \mathbf{E}_A (\mu ) \mathbf{M}_A \mathbf{F}_A\), \(\Delta \mathbf{B}_\delta (\mu ) = \mathbf{E}_{\mathbf{B}_\delta }(\mu ) \mathbf{M}_{\mathbf{B}_\delta } \mathbf{F}_{\mathbf{B}_\delta }\) and \(\Delta \mathbf{B}_u (\mu ) = \mathbf{E}_{\mathbf{B}_u } (\mu ) \mathbf{M}_{\mathbf{B}_u } \mathbf{F}_{\mathbf{B}_u }\), where

$$\begin{aligned} \mathbf{E}_A \left( \mu \right)= & {} \left[ {\begin{array}{*{20}c} { - \frac{{I_\mathrm{{eq}} \left( {\Delta C_{\alpha f} + \Delta C_{\alpha r} } \right) }}{{I_x mv_x }}} &{} { - \frac{{I_\mathrm{{eq}} \left( {a\Delta C_{\alpha f} - b\Delta C_{\alpha r} } \right) }}{{I_x mv_x^2 }}} &{} 0 &{} 0 \\ { - \frac{{\left( {a\Delta C_{\alpha f} - b\Delta C_{\alpha r} } \right) }}{{I_z }}} &{} { - \frac{{\left( {a^2 \Delta C_{\alpha f} + b^2 \Delta C_{\alpha r} } \right) }}{{I_z v_x }}} &{} 0 &{} 0 \\ 0 &{} 0 &{} 0 &{} 0 \\ { - \frac{{\left( {\Delta C_{\alpha f} + \Delta C_{\alpha r} } \right) h}}{{I_x }}} &{} { - \frac{{\left( {a\Delta C_{\alpha f} - b\Delta C_{\alpha r} } \right) h}}{{I_x v_x }}} &{} 0 &{} 0 \\ \end{array}} \right] \\ \mathbf{M}_A= & {} \left[ {\begin{array}{*{20}c} {N(t)} &{} 0 &{} 0 &{} 0 \\ 0 &{} {N(t)} &{} 0 &{} 0 \\ 0 &{} 0 &{} {N(t)} &{} 0 \\ 0 &{} 0 &{} 0 &{} {N(t)} \\ \end{array}} \right] ;\,\mathbf{F}_A = \mathbf{I}\\ \mathbf{E}_{\mathbf{B}_\delta } \left( \mu \right)= & {} \left[ {\begin{array}{*{20}c} {\frac{{I_\mathrm{{eq}} \Delta C_{\alpha f} }}{{I_x mv_x }}} \\ {\frac{{a\Delta C_{\alpha f} }}{{I_z }}} \\ 0 \\ {\frac{{\Delta C_{\alpha f} h}}{{I_x }}} \\ \end{array}} \right] ;\,\mathbf{M}_{\mathbf{B}_\delta } = N(t);\,\mathbf{F}_{\mathbf{B}_\delta } = \mathbf{I}\\ \mathbf{E}_{\mathbf{B}_u } \left( \mu \right)= & {} \left[ {\begin{array}{*{20}c} {\frac{{I_\mathrm{{eq}} \Delta C_{\alpha f} }}{{I_x mv_x }}} &{} 0 \\ {\frac{{a\Delta C_{\alpha f} }}{{I_z }}} &{} 0 \\ 0 &{} 0 \\ {\frac{{\Delta C_{\alpha f} h}}{{I_x }}} &{} 0 \\ \end{array}} \right] ;\,\mathbf{M}_{\mathbf{B}_u } = \left[ {\begin{array}{*{20}c} {N(t)} &{} 0 \\ 0 &{} {N(t)} \\ \end{array}} \right] ;\\ \mathbf{F}_{\mathbf{B}_u }= & {} \mathbf{I}\\ \left| {N(t)} \right|\le & {} 1 \end{aligned}$$

As longitudinal speed can be measured by real-time sensors and assuming that its varying range is \([v_{x, \max }\), \(v_{x, \min }]\), the following scheduled time-varying parameters are chosen \(\mu =[1/v_x\) \(1/v_x^2]\). In this research, the considered polytope is formed by two triangles, \(\mu _1 \mu _2 \mu _3\) and \(\mu _3 \mu _4 \mu _5\), so that, [38]:

$$\begin{aligned} \mu _1= & {} \left( {\frac{1}{{v_{x,\max } }},\frac{1}{{v_{x,\max } ^2 }}} \right) \\ \mu _2= & {} \left( {\frac{{\left( {v_{x,\max } + 3v_{x,\min } } \right) }}{{4v_{x,\max } v_{x,\min } }},\frac{1}{{2v_{x,\max } v_{x,\min } }} + \frac{1}{{2v_{x,\max } ^2 }}} \right) \\ \mu _3= & {} \left( {\frac{{\left( {v_{x,\max } + v_{x,\min } } \right) }}{{2v_{x,\max } v_{x,\min } }},\frac{{\left( {v_{x,\max } + v_{x,\min } } \right) ^2 }}{{4v_{x,\max } ^2 v_{x,\min } ^2 }}} \right) \\ \mu _4= & {} \left( {\frac{{\left( {3v_{x,\max } + v_{x,\min } } \right) }}{{4v_{x,\max } v_{x,\min } }},\frac{1}{{2v_{x,\max } v_{x,\min } }} + \frac{1}{{2v_{x,\min } ^2 }}} \right) \\ \mu _5= & {} \left( {\frac{1}{{v_{x,\min } }},\frac{1}{{v_{x,\min } ^2 }}} \right) \end{aligned}$$
Fig. 1
figure 1

Structure of the event-triggered \({H}_{\infty }\) observer for an NCS

Depending on the longitudinal speed value, the LPV-based state-space vehicle model can be rewritten for each triangle,

if \(v_{x} < \frac{{2v_{x,\max } v_{x,\min } }}{{\left( {v_{x,\max } + v_{x,\min } } \right) }}\) then

$$\begin{aligned} \dot{\mathbf {x}}= & {} \sum \limits _{i = 1}^3 \alpha _i \left( \left( {{\mathbf {A}}_i + \Delta {\mathbf {A}}_i } \right) {\mathbf {x}} + \left( {{\mathbf {B}}_{i,\delta } + \Delta {\mathbf {B}}_{i,\delta } } \right) \delta \right. \nonumber \\&\left. + \left( {{\mathbf {B}}_{i,u} + \Delta {\mathbf {B}}_{i,u} } \right) {\mathbf {u}} + {\mathbf {B}}_{i,w} {\mathbf {w}} \right) \end{aligned}$$
(3)

else

$$\begin{aligned} \dot{\mathbf {x}}= & {} \sum \limits _{i = 3}^5 {{\bar{\alpha }}} _i \left( \left( {{\mathbf {A}}_i + \Delta {\mathbf {A}}_i } \right) {\mathbf {x}} + \left( {{\mathbf {B}}_{i,\delta } + \Delta {\mathbf {B}}_{i,\delta } } \right) \delta \right. \nonumber \\&\left. + \left( {{\mathbf {B}}_{i,u} + \Delta {\mathbf {B}}_{i,u} } \right) {\mathbf {u}} + {\mathbf {B}}_{i,w} {\mathbf {w}} \right) \end{aligned}$$
(4)

end

where

$$\begin{aligned} \alpha _1&\! {=}\!&1 {-} \alpha _2 {-} \alpha _3\\ \alpha _2&\!{=}\!&\frac{{\mu _x \left( {\mu _{3y} {-} \mu _{1y} } \right) {-} \mu _y \left( {\mu _{3x} {-} \mu _{1x} } \right) {-} \mu _{1x} \left( {\mu _{3y} {-} \mu _{1y} } \right) + \mu _{1y} \left( {\mu _{3x} {-} \mu _{1x} } \right) }}{{\left( {\mu _{2x} {-} \mu _{1x} } \right) \left( {\mu _{3y} {-} \mu _{1y} } \right) {-} \left( {\mu _{2y} {-} \mu _{1y} } \right) \left( {\mu _{3x} {-} \mu _{1x} } \right) }}\\ \alpha _3&\!{=}\!&\frac{{\mu _x \left( {\mu _{2y} {-} \mu _{1y} } \right) {-} \mu _2 \left( {\mu _{2x} {-} \mu _{1x} } \right) - \mu _{1x} \left( {\mu _{2y} {-} \mu _{1y} } \right) {-} \mu _{1y} \left( {\mu _{2x} {-} \mu _{1x} } \right) }}{{\left( {\mu _{3x} {-} \mu _{1x} } \right) \left( {\mu _{2y} {-} \mu _{1y} } \right) - \left( {\mu _{3y} {-} \mu _{1y} } \right) \left( {\mu _{2x} {-} \mu _{1x} } \right) }}\\ {{\bar{\alpha }}}_3&\!{=}\!&1 {-} {{\bar{\alpha }}} _4 {-} {{\bar{\alpha }}} _5\\ {{\bar{\alpha }}}_4&\!{=}\!&\frac{{\mu _x \left( {\mu _{5y} {-} \mu _{3y} } \right) {-} \mu _y \left( {\mu _{5x} {-} \mu _{3x} } \right) {-} \mu _{3x} \left( {\mu _{5y} - \mu _{3y} } \right) {-} \mu _{3y} \left( {\mu _{5x} {-} \mu _{3x} } \right) }}{{\left( {\mu _{4x} {-} \mu _{3x} } \right) \left( {\mu _{5y} - \mu _{3y} } \right) - \left( {\mu _{4y} {-} \mu _{3y} } \right) \left( {\mu _{5x} {-} \mu _{3x} } \right) }}\\ {{\bar{\alpha }}} _5&\!{=}\!&\frac{{\mu _x \left( {\mu _{4y} {-} \mu _{3y} } \right) {-} \mu _y \left( {\mu _{4x} {-} \mu _{3x} } \right) {-} \mu _{3x} \left( {\mu _{4y} {-} \mu _{3y} } \right) {+} \mu _{3y} \left( {\mu _{4x} {-} \mu _{3x} } \right) }}{{\left( {\mu _{5x}{-}\mu _{3x} } \right) \left( {\mu _{4y} {-} \mu _{3y} } \right) - \left( {\mu _{5y}{-} \mu _{3y} } \right) \left( {\mu _{4x} {-} \mu _{3x} } \right) }} \end{aligned}$$

To generalize the problem, the developments will be carried out for the \(\mu _1 \mu _2 \mu _3\), that forms the polytope, and this same procedure will be repeated for the other triangle formed by the edges \(\mu _3 \mu _4 \mu _5\).

3 System description

Figure 1 shows the event-triggered \({H}_{\infty }\)-based observer scheme design. Through the vehicle-mounted sensors, such as GPS, IMU system, and steering wheel sensor, the signals of the longitudinal acceleration, \(a_{x}\), the lateral acceleration, \(a_{y}\), the steering wheel angle, \(\delta \), the longitudinal speed, \(v_{x}\), the yaw rate, r and the roll rate, \({{\dot{\phi }}}\), are obtained. These signals are initially introduced into an neural network (NN) block to estimate the pseudo-values of the slip angle, \(\beta _\mathrm{{NN}}\), and the roll angle, \(\phi _\mathrm{{NN}}\). A detailed description of the neural network designed to obtain these pseudo-values is shown in [21].

Considering the sampling time of the sensors installed in the vehicle and the calculation time of the pseudo-values (\(\beta _\mathrm{{NN}}\) and \(\phi _\mathrm{{NN}})\), the data of the steering wheel angle, \(\delta \), the longitudinal speed, \(v_{x}\), and the observation vector \(\mathbf{y}=[\beta _\mathrm{{NN}},\) r\(\phi _\mathrm{{NN}},\) \({{\dot{\phi }}}]^\mathrm{{T}}\), are sampled at every time step, h, so that \(i_{h}\) represents the sampled instants, where \(i = 1,\ldots ,N\). In order not to overload the network, an event-triggered criterion is adopted to determine whether this information is sent to the network or not, where \(i_{kh}\) denotes the triggered instants. If the event-triggered condition is violated, the data packet formed by \([\delta _{i_kh}\), \(v_{x,i_kh}\), \(\mathbf{y}_{i_kh}]\) is sent through the network to the \(H_{\infty }\)-based observer by entering a time delay, \(\eta _k\), with \(\eta _m \le \eta _k \le \eta _M\), where \(\eta _m\) is the minimum network delay that avoids the Zeno behavior effect and \(\eta _M\) is the maximum network delay. Therefore, the data packet sent, \([{{\bar{\delta }}}\), \({{\bar{v}}}_{x}\), \({\bar{{\mathbf{y}}}}]\), suffers a delay \(\eta \), such that, \( \eta _m \le \eta _k \le \eta < h + \eta _k \le h + \eta _M\).

3.1 Event-triggered scheme

To avoid network saturation, and considering that \(\mathbf{y}_{t-\eta }\) is the observation vector with a delay \(\eta \), the following event-triggered criterion is adopted [15, 29, 32]:

$$\begin{aligned} \mathbf{e}_y ^\mathrm{{T}} \Omega \mathbf{e}_y \le \varepsilon ^2 {\bar{{\mathbf{y}}}}^\mathrm{{T}} \Omega {\bar{{\mathbf{y}}}} \end{aligned}$$
(5)

where \(\varepsilon >0\) is a threshold, \(\Omega > 0\) is the weighting matrix, so that

$$\begin{aligned} \Omega =\sum \limits _{i = 1}^3 \alpha _i \Omega _i \end{aligned}$$

and \({\bar{{\mathbf{y}}}} =\mathbf{e_{y}} + \mathbf{y_{t - \eta }}\).

The observation vector error function is defined as \(\mathbf{e}_{y}=y_{i_kh}-y_{i_kh+lh}\), where \(\mathbf{y}_{i_kh}\) is the last transmitted packet and \(\mathbf{y}_{i_kh+lh}\) is the current transmitted packet. Substituting these values into Eq. (5) results in,

$$\begin{aligned}&\mathbf{e_y}^\mathrm{{T}} \Omega \mathbf{e_y} \le \varepsilon ^2 \left( {\mathbf{e_y} + \mathbf{y_{t - \eta }} } \right) ^\mathrm{{T}} \Omega \left( {\mathbf{e_y} + \mathbf{y_{t - \eta } }} \right) \end{aligned}$$
(6)
$$\begin{aligned}&\mathbf{e_{{y}}^\mathrm{{T}} \Omega \mathbf{e_{{y}}}} \le \varepsilon ^2 \left( {\mathbf{e_{{y}}} + \mathbf{Cx}_{t - \eta } } \right) ^\mathrm{{T}} \Omega \left( {\mathbf{e_{{y}}} + \mathbf{Cx}_{t - \eta } } \right) + \end{aligned}$$
(7)

Therefore, the data packet is transmitted if the condition given in Eq. (6) is not met.

3.2 Event-triggered observer model

In this paper, we have designed an observer based on event-triggered \({H}_{\infty }\) with the following structure:

$$\begin{aligned} \dot{\tilde{{\mathbf {x}}}}&= \sum \limits _{i = 1}^3 {\alpha _i \left[ {\left( {\mathbf{A}_i {{\tilde{\mathbf{x}}}} + \mathbf{B}_{i,\delta } \delta + \mathbf{B}_{i,u} \mathbf{u}} \right) + \mathbf{L}_i \left( {{\bar{{\mathbf{y}}}} - \tilde{{\mathbf {y}}}} \right) } \right] } \end{aligned}$$
(8a)
$$\begin{aligned} \tilde{{\mathbf {y}}}&= {\mathbf {C}} \tilde{{\mathbf {x}}} \end{aligned}$$
(8b)
$$\begin{aligned} {\bar{{\mathbf{y}}}}&= \mathbf{e_y} + \mathbf{y_{t - \eta }} \end{aligned}$$
(8c)

where \(L_i\) is the observation gain matrices. This observer must be calculated for the 2 triangles that form the polytope, \(\mu _1\mu _2\mu _3\) and \(\mu _3\mu _4\mu _5\), and whose edges have been defined in Sect. 2.

The state error vector is defined as follows, \(\mathbf{e}_x = \mathbf{x} - \tilde{{\mathbf {x}}}\), such that

$$\begin{aligned} {\dot{\mathbf {e}}}_x= & {} {\dot{\mathbf {x}}} - \dot{\tilde{{\mathbf {x}}}}\nonumber \\= & {} \sum \limits _{i = 1}^3 {\rho _i } \left( {\mathbf{A}_i \left( {\mathbf{x} - {{\tilde{\mathbf{x}}}}} \right) } \right. - \mathbf{L}_i \mathbf{Ce}_x + \Delta \mathbf{A}_i \mathbf{x} \nonumber \\&+ \Delta \mathbf{B}_{i,\delta } \delta + \Delta \mathbf{B}_{i,u} \mathbf{u} \nonumber \\&\left. +\mathbf{B}_{i,w} \mathbf{w} - \mathbf{L}_i \left[ {\mathbf{e}_y + \mathbf{C}\left( {\mathbf{x}_{t - d_t } - \mathbf{x}} \right) } \right] \right) \end{aligned}$$
(9)

Then, a new state vector is defined, \(\varvec{\xi }=[\mathbf{e_x}\), \(\mathbf{x}]^\mathrm{{T}}\), in this way:

$$\begin{aligned} {{{\dot{{\varvec{\xi }}}}} }= & {} \sum \limits _{i = 1}^3 \alpha _i \left[ \left( {\mathbf{A}_{0,i} + \Delta \mathbf{A}_{0,i} } \right) {{\varvec{\xi }} } + \mathbf{A}_{1,i} {{\varvec{\xi }}}_{t - \eta } \right. \nonumber \\&\left. + \mathbf{A}_{2,i} \mathbf{e_y} + \left( {\mathbf{A}_{3,i} + \Delta \mathbf{A}_{3,i} } \right) \mathbf{q} \right] \end{aligned}$$
(10)

where \(\mathbf{q}=[\delta \), \(\mathbf{u}\), \(\mathbf{w}]^\mathrm{{T}}\) and

$$\begin{aligned} \mathbf{A}_{0,i}= & {} \left[ {\begin{array}{*{20}c} {\left( {\mathbf{A}_i - \mathbf{L}_i \mathbf{C}} \right) } &{} {\mathbf{L}_i \mathbf{C}} \\ \mathbf{0} &{} {\mathbf{A}_i } \\ \end{array}} \right] ;\,\mathbf{A}_{1,i} = \left[ {\begin{array}{*{20}c} \mathbf{0} &{} {\mathbf{L}_i \mathbf{C}} \\ \mathbf{0} &{} \mathbf{0} \\ \end{array}} \right] \\ \mathbf{A}_{2,i}= & {} \left[ {\begin{array}{*{20}c} { - \mathbf{L}_i } \\ \mathbf{0} \\ \end{array}} \right] ;\,\mathbf{A}_{2,i} = \left[ {\begin{array}{*{20}c} \mathbf{0} &{} \mathbf{0} &{} {\mathbf{B}_{w,i} } \\ {\mathbf{B}_{\delta ,i} } &{} {\mathbf{B}_{u,i} } &{} {\mathbf{B}_{w,i} } \\ \end{array}} \right] \\ \Delta \mathbf{A}_{0,i}= & {} \left[ {\begin{array}{*{20}c} \mathbf{0} &{} {\Delta \mathbf{A}_i } \\ \mathbf{0} &{} {\Delta \mathbf{A}_i } \\ \end{array}} \right] \\= & {} \left[ {\begin{array}{*{20}c} \mathbf{0} &{} {\mathbf{E}_{A,i} } \\ \mathbf{0} &{} {\mathbf{E}_{A,i} } \\ \end{array}} \right] \left[ {\begin{array}{*{20}c} {\mathbf{M}_A } &{} \mathbf{0} \\ \mathbf{0} &{} {\mathbf{M}_A } \\ \end{array}} \right] \left[ {\begin{array}{*{20}c} {\mathbf{F}_A } &{} \mathbf{0} \\ \mathbf{0} &{} {\mathbf{F}_A } \\ \end{array}} \right] \\= & {} {\bar{{\mathbf{E}}}}_{A,i} {\bar{{\mathbf{M}}}}_A {\bar{{\mathbf{F}}}}_A\\ \Delta \mathbf{A}_{3,i}= & {} \left[ {\begin{array}{*{20}c} {\Delta \mathbf{B}_{\delta ,i} } &{} {\Delta \mathbf{B}_{u,i} } &{} \mathbf{0} \\ {\Delta \mathbf{B}_{\delta ,i} } &{} {\Delta \mathbf{B}_{u,i} } &{} \mathbf{0} \\ \end{array}} \right] \\= & {} \left[ {\begin{array}{*{20}c} {\Delta \mathbf{B}_{\delta ,i} } &{} {\Delta \mathbf{B}_{u,i} } &{} \mathbf{0} \\ {\Delta \mathbf{B}_{\delta ,i} } &{} {\Delta \mathbf{B}_{u,i} } &{} \mathbf{0} \\ \end{array}} \right] \left[ {\begin{array}{*{20}c} {\mathbf{M}_{B_\delta } } &{} \mathbf{0} &{} \mathbf{0} \\ \mathbf{0} &{} {\mathbf{M}_{B_u } } &{} \mathbf{0} \\ \mathbf{0} &{} \mathbf{0} &{} \mathbf{0} \\ \end{array}} \right] \\&\left[ {\begin{array}{*{20}c} {\mathbf{F}_{B_\delta } } &{} \mathbf{0} &{} \mathbf{0} \\ \mathbf{0} &{} {\mathbf{F}_{B_u } } &{} \mathbf{0} \\ \mathbf{0} &{} \mathbf{0} &{} \mathbf{0} \\ \end{array}} \right] \\= & {} {\bar{{\mathbf{E}}}}_B {\bar{{\mathbf{M}}}}_B {\bar{{\mathbf{F}}}}_B \end{aligned}$$

3.3 \({H}_{\infty }\) condition

The closed-loop system defined by Eq. (8) has \({H}_{\infty }\) performance with index \(\gamma \) if the following inequality is complied,

$$\begin{aligned} \left\| {{\mathbf {z}}_{}^\mathrm{{T}} {\mathbf {z}}} \right\| _2 < \gamma \left\| {{\mathbf {q}}_{}^\mathrm{{T}} {\mathbf {q}}} \right\| _2 \end{aligned}$$
(11)

where \(\mathbf{z}\) is the signal to be estimated and \(\gamma >0\) is the performance index. \(\mathbf{z}\) is chosen as:

$$\begin{aligned} \mathbf{z}=\mathbf{C_1} \xi \end{aligned}$$
(12)

The performance of proposed observer is evaluated by its estimation error, and then,

$$\begin{aligned} {\mathbf {C}}_1 = \left[ {\begin{array}{*{20}c} {{\mathbf {C}}_{11} } &{} {{\mathbf {C}}_{12} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {\mathbf {I}} &{} {\mathbf {0}} \\ \end{array} } \right] \end{aligned}$$
(13)

3.4 Event-triggered \({H}_{\infty }\)-based observer design

This section describes the event-triggered \({H}_{\infty }\)-based observer design. The problem of event-triggering \({H}_{\infty }\)-based observation with uncertain parameters is in finding the observer gains \(\mathbf{L}_i\) such that the following two conditions are satisfied:

  • When \(\mathbf{q(t)}=\mathbf{0}\), the system (10) is asymptotically stable.

  • Under zero initial condition, the inequality given by Eq. (11) holds for all nonzero \(\mathbf{q(t)} \in L_2[0,\infty ]\), where \(\gamma \) is the \({H}_{\infty }\) performance index.

Theorem

The event-triggered filter given by Eq. (8) is asymptotically stable and the control output z complies with a \({H}_\infty \) performance, if for given values of \(\eta _m>0\), \(\eta _M>\eta _m\), \(h>0\), \(\epsilon >0\), \(\gamma >0\), \(\rho _1>0\) and \(\rho _2>0\), there are parameters \(\upsilon _1>0\) and \(\upsilon _2>0\), defined positive symmetric matrices \(\mathbf{P_1=P_1^\mathrm{{T}}>0}\), \(\mathbf{P_2=P_2^\mathrm{{T}}>0}\), \(\mathbf{T_{1,i}=T_{1,i}^\mathrm{{T}}>0}\), \(\mathbf{T_{2,i}=T_{2,i}^\mathrm{{T}}>0}\), \(\mathbf{S_{1}=S_{1}^\mathrm{{T}}>0}\), \(\mathbf{S_2=S_2^\mathrm{{T}}>0}\), \({{\varvec{\Omega }}_\mathbf{i}={\varvec{\Omega }}_\mathbf{i}^\mathbf{T}>\mathbf{0}}\), and any matrices with appropriate dimensions \(\mathbf{M_i}\), y \(\mathbf{R}\), such that

$$\begin{aligned}&\left[ {\begin{array}{*{20}c} {{{\bar{\Sigma }}} _{11,i} } &{} {{{\bar{\Sigma }}} _{12,i} } &{} {{{\bar{\Sigma }}} _{13,i} } \\ \star &{} {{{\bar{\Sigma }}} _{22,i} } &{} {{{\bar{\Sigma }}} _{23,i} } \\ \star &{} \star &{} {{{\bar{\Sigma }}} _{33,i} } \\ \end{array} } \right] < {\mathbf {0}};\quad {\text {for }} i=1,\ldots ,3\end{aligned}$$
(14)
$$\begin{aligned}&\left[ {\begin{array}{*{20}c} {{\mathbf {S}}_2 } &{} {\mathbf {R}} \\ \star &{} {\mathbf {S}}_2 \\ \end{array} } \right] > {\mathbf {0}} \end{aligned}$$
(15)

where

$$\begin{aligned} {{\mathbf {P}} }= & {} \left[ {\begin{array}{*{20}c} {{\mathbf {P}}_1 } &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {{\mathbf {P}}_2 } \\ \end{array} } \right] \\ {{\bar{\Sigma }}} _{11,i}= & {} \left[ {\begin{array}{*{20}c} \Sigma _{11,i,1,1}&{} {{\bar{{\mathbf {A}}}}_{1,i} } &{} {{\mathbf {S}}_1 } &{} {\mathbf {0}} \\ \star &{} {{\bar{\Sigma }}} _{11,i,2,2} &{} {{\mathbf {S}}_2 + {\mathbf {R}}} &{} {{\mathbf {S}}_2 + {\mathbf {R}}^\mathrm{{T}} } \\ \star &{} \star &{} {{\mathbf {T}}_{2,i} - {\mathbf {T}}_{1,i} - {\mathbf {S}}_1 - {\mathbf {S}}_2 } &{} { - {\mathbf {R}}^\mathrm{{T}} } \\ \star &{} \star &{} \star &{} { - {\mathbf {T}}_{2,i} - {\mathbf {S}}_2 } \\ \end{array} } \right] \\ {{\bar{\Sigma }}} _{11,i,1,1}= & {} {{\bar{{\mathbf {A}}}}_{0,i} ^\mathrm{{T}} + {\bar{{\mathbf {A}}}}_{0,i} + {\mathbf {T}}_{1,i} - {\mathbf {S}}_1 }\\ {{\bar{\Sigma }}} _{11,i,2,2}= & {} { - 2{\mathbf {S}}_2 - {\mathbf {R}}^\mathrm{{T}} - {\mathbf {R}} + \varepsilon \Theta ^\mathrm{{T}} \Omega _i \Theta }\\ {{\bar{\Sigma }}} _{12,i}= & {} \left[ {\begin{array}{*{20}c} {{\bar{{\mathbf {A}}}}_{2,i} } &{} {{\bar{{\mathbf {A}}}}_{3,i} } &{} {{\mathbf {C}}_1 ^\mathrm{{T}} } &{} {\eta _m {\bar{{\mathbf {A}}}}_{0,i} ^\mathrm{{T}} } &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) {\bar{{\mathbf {A}}}}_{0,i} ^\mathrm{{T}} } \\ {\varepsilon \Theta ^\mathrm{{T}} \Omega _i } &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\eta _m {\bar{{\mathbf {A}}}}_{1,i} ^\mathrm{{T}} } &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) {\bar{{\mathbf {A}}}}_{1,i} ^\mathrm{{T}} } \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \end{array} } \right] \\ {{\bar{\Sigma }}} _{13,i}= & {} \left[ {\begin{array}{*{20}c} {{\hat{{\mathbf {E}}}}_{A,i} } &{} {\mu _1 {\bar{{\mathbf {F}}}}_A ^\mathrm{{T}} } &{} {{\hat{{\mathbf {E}}}}_{B,i} } &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \end{array} } \right] \\ {{\bar{\Sigma }}} _{22,i}= & {} \left[ {\begin{array}{*{20}c} {\varvec{\Omega }_{\mathbf {i}}+\epsilon \varvec{\Omega }_{\mathbf {i}}}&{} {\mathbf {0}} &{}{\mathbf {0}} &{} {\tau _m {\bar{{\mathbf {A}}}}^{T}_{2,i} } &{} {({{\bar{\eta }}} - \tau _m) {\bar{{\mathbf {A}}}}^{T}_{2,i} } \\ \star &{} { - \gamma ^2 {\mathbf {I}}} &{} {\mathbf {0}} &{} {\tau _m {\bar{{\mathbf {A}}}}^{T}_{3,i} } &{} {({{\bar{\eta }}} - \tau _m) {\bar{{\mathbf {A}}}}^{T}_{3,i} } \\ \star &{} \star &{} { -{\mathbf {I}}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \star &{} \star &{} \star &{} {\rho _1^2\mathbf {S_1} - 2\rho _1 {\mathbf {P}}} &{} {\mathbf {0}} \\ \star &{} \star &{} \star &{} \star &{} {\rho _2^2\mathbf {S_2} - 2\rho _2 {\mathbf {P}}} \\ \end{array} } \right] \\ {{\bar{\Sigma }}} _{23,i}= & {} \left[ {\begin{array}{*{20}c} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mu _2 {\bar{{\mathbf {F}}}}_{\mathbf {B}} ^\mathrm{{T}} } \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\eta _m {\hat{{\mathbf {E}}}}_{A,i} } &{} {\mathbf {0}} &{} {\eta _m {\hat{{\mathbf {E}}}}_\mathbf {B,i} } &{} {\mathbf {0}} \\ {\left( {{{\bar{\eta }}} - \eta _m } \right) {\hat{{\mathbf {E}}}}_{A,i} } &{} {\mathbf {0}} &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) {\hat{{\mathbf {E}}}}_\mathbf {B,i} } &{} {\mathbf {0}} \\ \end{array} } \right] \\ {{\bar{\Sigma }}} _{33,i}= & {} \left[ {\begin{array}{*{20}c} { - \mu _1 {\mathbf {I}}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \star &{} { - \mu _1 {\mathbf {I}}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \star &{} \star &{} { - \mu _2 {\mathbf {I}}} &{} {\mathbf {0}} \\ \star &{} \star &{} \star &{} { - \mu _2 {\mathbf {I}}} \\ \end{array} } \right] \\ {\bar{{\mathbf {A}}}}_{0,i}= & {} \left[ {\begin{array}{*{20}c} {\left( {{\mathbf {P}}_1 {\mathbf {A}}_i - {\mathbf {M}}_i {\mathbf {C}}} \right) } &{} {{\mathbf {M}}_i {\mathbf {C}}} \\ {\mathbf {0}} &{} {{\mathbf {P}}_2 {\mathbf {A}}_i } \\ \end{array} } \right] ;\,\,{\bar{{\mathbf {A}}}}_{1,i} \\= & {} \left[ {\begin{array}{*{20}c} {\mathbf {0}} &{} { - {\mathbf {M}}_i {\mathbf {C}}} \\ {\mathbf {0}} &{} {\mathbf {0}} \\ \end{array} } \right] \\ {\bar{{\mathbf {A}}}}_{2,i}= & {} \left[ {\begin{array}{*{20}c} { - {\mathbf {M}}_i } \\ {\mathbf {0}} \\ \end{array} } \right] ;\\ {\bar{{\mathbf {A}}}}_{3,i}= & {} \left[ {\begin{array}{*{20}c} {\mathbf {0}} &{} {\mathbf {0}} &{} {{\mathbf {P}}_1 {\mathbf {B}}_{w,i} } \\ {{\mathbf {P}}_2 {\mathbf {B}}_{i,\delta } } &{} {{\mathbf {P}}_2 {\mathbf {B}}_{i,u} } &{} {{\mathbf {P}}_2 {\mathbf {B}}_{i,w} } \\ \end{array} } \right] \\ {\hat{{\mathbf {E}}}}_{A,i}= & {} \left[ {\begin{array}{*{20}c} 0 &{} {{\mathbf {P}}_1 {\mathbf {E}}_{A,i} } \\ 0 &{} {{\mathbf {P}}_2 {\mathbf {E}}_{A,i} } \\ \end{array} } \right] ;\,\, {\hat{{\mathbf {E}}}}_{B,i} \\= & {} \left[ {\begin{array}{ccc} {{\mathbf {P}}_1 {\mathbf {E}}_{{\mathbf {B}}_{\delta ,i} } } &{} {{\mathbf {P}}_1 {\mathbf {E}}_{{\mathbf {B}}_{u,i} } } &{} 0 \\ {{\mathbf {P}}_2 {\mathbf {E}}_{{\mathbf {B}}_{\delta ,i} } } &{} {{\mathbf {P}}_2 {\mathbf {E}}_{{\mathbf {B}}_{u,i} } } &{} 0 \\ \end{array} } \right] \end{aligned}$$

The observation gain matrices can be calculated by \(\mathbf{L_i}=\mathbf{P_1^{-1}}{} \mathbf{M_i}\). The proposed method allows the inequalities in Theorem to be converted to the form of linear matrix inequalities, which can be solved by MATLAB LMI Toolbox. LMIs that are attractive formulations from the optimization point of view are a result of convexity. Besides, the chosen Lyapunov–Krasovskii functional provides a less conservative stability condition. This method is able to handle polytopic time-varying systems with the presence of norm-bounded terms.

Proof

We selected the following Lyapunov–Krasovskii functional as:

$$\begin{aligned} {\mathbf {V}}(t)={\mathbf {V}}_1 + {\mathbf {V}}_2 + {\mathbf {V}}_2 \end{aligned}$$
(16)

where

$$\begin{aligned} {\mathbf {V}}_1= & {} \varvec{\xi }^\mathrm{{T}} \mathbf {P}{\varvec{\xi }}\end{aligned}$$
(17)
$$\begin{aligned} {\mathbf {V}}_2= & {} \sum \limits _{i = 1}^3 \alpha _i \left[ \int \limits _{t - \eta _m }^t {\varvec{\xi }^\mathrm{{T}} {\mathbf {T}}_{1,i} \varvec{\xi }\hbox {d}s} + \int \limits _{t - {{\bar{\eta }}} }^{t - \eta _m } {\varvec{\xi }^\mathrm{{T}} {\mathbf {T}}_{2,i} \varvec{\xi }\hbox {d}s} \right] \end{aligned}$$
(18)
$$\begin{aligned} {\mathbf {V}}_3= & {} \eta _m \int \limits _{ - \eta _m }^0 {\int \limits _{t + \theta }^t {{\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_{1} {\dot{{\varvec{\xi }}} }\hbox {d}s\hbox {d}\theta } } + \left( {{{\bar{\eta }}} - \eta _m } \right) \nonumber \\&\int \limits _{ - {{\bar{\eta }}} }^{ - \eta _m } {\int \limits _{t + \theta }^t {{\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_{2} {\dot{{\varvec{\xi }}} }\hbox {d}s\hbox {d}\theta } } \end{aligned}$$
(19)

with \({{\bar{\eta }}}=h+\eta _M\).

Taking the time derivative of \(\mathbf{V (t)}\) yields,

$$\begin{aligned} \dot{\mathbf {V}}(t) = \dot{\mathbf {V}}_1 + \dot{\mathbf {V}}_2 + \dot{\mathbf {V}}_3 \end{aligned}$$
(20)

where

$$\begin{aligned} {\dot{\mathbf {V}}_1 }= & {} {{\dot{{\varvec{\xi }}} }^\mathrm{{T}} \mathbf {P}{\varvec{\xi }}+ \varvec{\xi }^\mathrm{{T}} \mathbf {P{{\dot{\xi }}} } } \nonumber \\= & {} \sum \limits _{i = 1}^3 \alpha _i \left[ \varvec{\xi }^\mathrm{{T}} \left( \left( {{\mathbf {A}}_{0,i} + \Delta {\mathbf {A}}_{0,i} } \right) ^\mathrm{{T}} {\mathbf {P}} \right. \right. \nonumber \\&\left. + {\mathbf {P}}\left( {{\mathbf {A}}_{0,i} + \Delta {\mathbf {A}}_{0,i} } \right) \right) \varvec{\xi }\nonumber \\&+ \varvec{\xi }^\mathrm{{T}} \mathbf {PA}_{1,i} \varvec{\xi }_{t - \eta } + \varvec{\xi }^\mathrm{{T}} \mathbf {PA}_{2,i} {\mathbf {e}} \nonumber \\&+ \varvec{\xi }^\mathrm{{T}} {\mathbf {P}}\left( {{\mathbf {A}}_{3,i} + \Delta {\mathbf {A}}_{3,i} } \right) {\mathbf {w}} + \nonumber \\&+ \varvec{\xi }_{t - \eta } ^\mathrm{{T}} {\mathbf {A}}_{1,i} ^\mathrm{{T}} \mathbf {P}\varvec{\xi } + {\mathbf {e}}^\mathrm{{T}} {\mathbf {A}}_{2,i} ^\mathrm{{T}} \mathbf {P}\varvec{\xi } \nonumber \\&\left. + {\mathbf {w}}^\mathrm{{T}} \left( {{\mathbf {A}}_{3,i} + \Delta {\mathbf {A}}_{3,i} } \right) ^\mathrm{{T}} \mathbf {P}{\varvec{\xi }} \right] \nonumber \\ \end{aligned}$$
(21)
$$\begin{aligned} \dot{\mathbf {V}}_2= & {} \sum \limits _{i = 1}^3 \alpha _i \left[ \varvec{\xi }^\mathrm{{T}} {\mathbf {T}}_{1,i} \varvec{\xi } + \varvec{\xi }_{t - \eta _m } ^\mathrm{{T}} \left( {{\mathbf {T}}_{2,i} - {\mathbf {T}}_{1,i} } \right) \varvec{\xi }_{t - \eta _m }\right. \nonumber \\&\left. - \varvec{\xi }_{t - {{\bar{\eta }}} } ^\mathrm{{T}} {\mathbf {T}}_{2,i} \varvec{\xi }_{t - {{\bar{\eta }}} } \right] \end{aligned}$$
(22)
$$\begin{aligned} {\dot{\mathbf {V}}_3 }= & {} \eta _m ^2 {\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_1 {\dot{{\varvec{\xi }}} } + \left( {{{\bar{\eta }}} - \eta _m } \right) ^2 {\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_2 {\dot{{\varvec{\xi }}} }\nonumber \\&- \eta _m \int \limits _{t - \eta _m }^t {{\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_1 {\dot{{\varvec{\xi }}} }\hbox {d}s} \nonumber \\&{ - \left( {{{\bar{\eta }}} - \eta _m } \right) \int \limits _{t - {{\bar{\eta }}} }^{t - \eta _m } {{\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_2 {\dot{{\varvec{\xi }}} }\hbox {d}s} } \end{aligned}$$
(23)

where \(\mathbf{P}=\mathbf{P}^\mathrm{{T}}>0\), \(\mathbf{T_{1,i}}=\mathbf{T_{1,i}}^\mathrm{{T}}>0\), \(\mathbf{T_{2,i}}=\mathbf{T_{2,i}}^\mathrm{{T}}>0\), \(\mathbf{S_{1}}=\mathbf{S_{1}}^\mathrm{{T}}>0\) and \(\mathbf{S_{2}}=\mathbf{S_{2}}^\mathrm{{T}}>0\).

Applying Lemmas 1 and 2 from [14] to Eq. (23), we obtain that

$$\begin{aligned}&- \eta _m \int \limits _{t - \eta _m }^t {{\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_1 {\dot{{\varvec{\xi }}} }\hbox {d}s} \nonumber \\&\quad \leqslant - \left( {\varvec{\xi } - \varvec{\xi }_{t - \eta _m } } \right) ^\mathrm{{T}} {\mathbf {S}}_1 \left( {\varvec{\xi } - \varvec{\xi }_{t - \eta _m } } \right) \end{aligned}$$
(24)
$$\begin{aligned}&- \left( {{{\bar{\eta }}} - \eta _m } \right) \int \limits _{t - {{\bar{\eta }}} }^{t - \eta _m } {{\dot{{\varvec{\xi }}} }^\mathrm{{T}} {\mathbf {S}}_2 {\dot{{\varvec{\xi }}} }\hbox {d}s} \nonumber \\&\quad \leqslant - \left( {\varvec{\xi }_{t - \eta _m } - \varvec{\xi }_{t - \eta } } \right) ^\mathrm{{T}} {\mathbf {S}}_2 \left( {\varvec{\xi }_{t - \eta _m } - \varvec{\xi }_{t - \eta } } \right) - \nonumber \\&\qquad - \left( {\varvec{\xi }_{t - \eta } - \varvec{\xi }_{t - {{\bar{\eta }}} } } \right) ^\mathrm{{T}} {\mathbf {S}}_2 \left( {\varvec{\xi }_{t - \eta } - \varvec{\xi }_{t - {{\bar{\eta }}} } } \right) + \nonumber \\&\qquad +\, \left( {\varvec{\xi }_{t - \eta _m } - \varvec{\xi }_{t - \eta } } \right) ^\mathrm{{T}} {\mathbf {R}}^\mathrm{{T}} \left( {\varvec{\xi }_{t - \eta } - \varvec{\xi }_{t - {{\bar{\eta }}} } } \right) +\nonumber \\&\qquad +\, \left( {\varvec{\xi }_{t - \eta } - \varvec{\xi }_{t - {{\bar{\eta }}} } } \right) ^\mathrm{{T}} {\mathbf {R}}\left( {\varvec{\xi }_{t - \eta _m } - \varvec{\xi }_{t - \eta } } \right) \end{aligned}$$
(25)

when

$$\begin{aligned} \left[ {\begin{array}{*{20}c} {{\mathbf {S}}_2 } &{} {{\mathbf {R}}^\mathrm{{T}} } \\ {\mathbf {R}} &{} {{\mathbf {S}}_2 } \\ \end{array} } \right] > 0 \end{aligned}$$
(26)

For the observer defined by Eq. (8), to be asymptotically stable with \({H}_{\infty }\) performance under the event-triggering condition, it is to satisfy

$$\begin{aligned}&\dot{\mathbf {V}}_1 + \dot{\mathbf {V}}_2 + \dot{\mathbf {V}}_3 -{\mathbf {e}}^\mathrm{{T}} \Omega {\mathbf {e}}\nonumber \\&\quad + \,\varepsilon ^2 \left( {{\mathbf {e}} + \varvec{\Theta \xi }_{t - \eta } } \right) ^\mathrm{{T}} \Omega \left( {{\mathbf {e}} + \varvec{\Theta \xi }_{t - \eta } } \right) \nonumber \\&\quad +\, \xi _t ^\mathrm{{T}} {\mathbf {C}}_1 ^\mathrm{{T}} {\mathbf {C}}_1 \xi _t - \gamma ^2 {\mathbf {q}}_{}^\mathrm{{T}} {\mathbf {q}} \le 0 \end{aligned}$$
(27)

where \(\Theta = \left[ {\begin{array}{*{20}c} {\mathbf {0}} &{} {\mathbf {C}} \\ \end{array} } \right] \).

Let \(\zeta = \left[ {\begin{array}{*{20}c} \varvec{\xi } &{} {\varvec{\xi }_{t - \eta } } &{} {\varvec{\xi }_{t - \eta _m } } &{} {\varvec{\xi }_{t - {{\bar{\eta }}} } } &{} {\mathbf {e}} &{} {\mathbf {w}} \\ \end{array} } \right] ^\mathrm{{T}}\), then Eq. (27) is rewritten as,

$$\begin{aligned} \Psi _0 + \Psi _1 ^\mathrm{{T}} {\mathbf {S}}_1 \Psi _1 + \Psi _2 ^\mathrm{{T}} {\mathbf {S}}_2 \Psi _2 < 0 \end{aligned}$$
(28)

where

$$\begin{aligned} \Psi _0= & {} \left[ {\begin{array}{*{20}c} {\Lambda _{11} } &{} {\Lambda _{12} } &{} {{\mathbf {S}}_1 } &{} 0 &{} {\Lambda _{15} } &{} {\Lambda _{16} } &{} {{\mathbf {C}}_1 ^\mathrm{{T}} } \\ \star &{} {\Lambda _{22} } &{} {{\mathbf {S}}_2 + {\mathbf {R}}} &{} {{\mathbf {S}}_2 + {\mathbf {R}}^\mathrm{{T}} } &{} {\Lambda _{25} } &{} 0 &{} 0 \\ \star &{} \star &{} {\Lambda _{33} } &{} { - {\mathbf {R}}^\mathrm{{T}} } &{} 0 &{} 0 &{} 0 \\ \star &{} \star &{} \star &{} {\Lambda _{44} } &{} 0 &{} 0 &{} 0 \\ \star &{} \star &{} \star &{} \star &{} {\Lambda _{55} } &{} 0 &{} 0 \\ \star &{} \star &{} \star &{} \star &{} \star &{} { - \gamma ^2 {\mathbf {I}}} &{} 0 \\ \star &{} \star &{} \star &{} \star &{} \star &{} \star &{} {\mathbf { - I}} \\ \end{array} } \right] \\ \Lambda _{11}= & {} \sum \limits _{i = 1}^3 \alpha _i \left[ \left( {{\mathbf {A}}_{0,i} + \Delta {\mathbf {A}}_{0,i} } \right) ^\mathrm{{T}} {\mathbf {P}} \right. \\&\left. + {\mathbf {P}}\left( {{\mathbf {A}}_{0,i} + \Delta {\mathbf {A}}_{0,i} } \right) + {\mathbf {T}}_{1,i} - {\mathbf {S}}_1 \right] \\ \Lambda _{12}= & {} \sum \limits _{i = 1}^3 \alpha _i {\left[ {\mathbf {PA}_{1,i} } \right] };\,\,\Lambda _{15} = \sum \limits _{i = 1}^3 \alpha _i {\left[ {\mathbf {PA}_{2,i} } \right] }\\ \Lambda _{16}= & {} \sum \limits _{i = 1}^3 \alpha _i {\left[ {{\mathbf {P}}\left( {{\mathbf {A}}_{3,i} + \Delta {\mathbf {A}}_{3,i} } \right) } \right] }\\ \Lambda _{22}= & {} \sum \limits _{i = 1}^3 \alpha _i {\left[ { - 2{\mathbf {S}}_2 - {\mathbf {R}}^\mathrm{{T}} - {\mathbf {R}} + \varepsilon \Theta ^\mathrm{{T}} \Omega _i \Theta } \right] }\\ \Lambda _{25}= & {} \sum \limits _{i = 1}^3 \alpha _i {\left[ {\varepsilon \Theta ^\mathrm{{T}} \Omega _i } \right] }\\ \Lambda _{33}= & {} \sum \limits _{i = 1}^3 \alpha _i {\left[ {\left( {{\mathbf {T}}_{2,i} - {\mathbf {T}}_{1,i} } \right) - {\mathbf {S}}_1 - {\mathbf {S}}_2 } \right] }\\ \Lambda _{44}= & {} \sum \limits _{i = 1}^3 \alpha _i {\left[ { - {\mathbf {T}}_{2,i} - {\mathbf {S}}_2 } \right] };\,\,\Lambda _{55} = \sum \limits _{i = 1}^3 \alpha _i {\left[ { - \Omega _i + \varepsilon \Omega _i } \right] }\\ \Psi _1= & {} {\eta _m \left[ {\begin{array}{*{10}c} {\sum \limits _{i = 1}^3 {\alpha _i \left( {{\mathbf {A}}_{0,i} + \Delta {\mathbf {A}}_{0,i} } \right) } }&{\sum \limits _{i = 1}^3 {\alpha _i {\mathbf {A}}_{1,i} } }&{\mathbf {0}}&{\mathbf {0}}&{\sum \limits _{i = 1}^3 {\alpha _i {\mathbf {A}}_{2,i} } }&\end{array} } \right. }\\&{\left. \sum \limits _{i = 1}^3 {\alpha _i \left( {{\mathbf {A}}_{3,i} + \Delta {\mathbf {A}}_{3,i} } \right) } \right] } \\ \Psi _2= & {} { \left( {{{\bar{\eta }}} - \eta _m } \right) \left[ {\begin{array}{*{20}c} {\sum \limits _{i = 1}^3 {\alpha _i \left( {{\mathbf {A}}_{0,i} + \Delta {\mathbf {A}}_{0,i} } \right) } } &{} {\sum \limits _{i = 1}^3 {\alpha _i {\mathbf {A}}_{1,i} } } &{} {\mathbf {0}} &{} {\mathbf {0}} &{} \\ \end{array} } \right. }\\&\sum \limits _{i = 1}^3 {\alpha _i {\mathbf {A}}_{2,i} } {\left. \sum \limits _{i = 1}^3 {\alpha _i \left( {{\mathbf {A}}_{3,i} + \Delta {\mathbf {A}}_{3,i} } \right) } \right] } \end{aligned}$$

Considering the event-triggering condition (7), from Eqs. (20)–(26), we obtain

$$\begin{aligned}&\dot{\mathbf {V}} + {\mathbf {z}}^\mathrm{{T}} {\mathbf {z}} - \gamma ^2 {\mathbf {q}}^\mathrm{{T}} {\mathbf {q}} \nonumber \\&\quad \leqslant \varvec{\zeta }^\mathrm{{T}} \left( {\varvec{\psi }_0 + \varvec{\psi }_1 ^\mathrm{{T}} {\mathbf {S}}_1 \varvec{\psi }_1 + \varvec{\psi }_2 ^\mathrm{{T}} {\mathbf {S}}_2 \varvec{\psi }_2 } \right) \varvec{\zeta } \end{aligned}$$
(29)

Under zero initial condition, integrating the inequality in Eq. (29) from \(\hbox {t}=0\) to \(t=\infty \) yields \(\left\| {{\mathbf {z}}^\mathrm{{T}} {\mathbf {z}}} \right\| _2 < \gamma \left\| {{\mathbf {q}}^\mathrm{{T}} {\mathbf {q}}} \right\| _2 \), which means that the event-triggering \({H}_{\infty }\)-based observer performance is guaranteed.

Similarly, if \(\mathbf{q}(t)\)=0, we have \(\dot{\mathbf {V}} \leqslant {\mathbf {0}}\) which means the system is asymptotically stable.

Applying the Schur complement to inequality (28), we obtain

$$\begin{aligned} \left[ {\begin{array}{*{20}c} {\Psi _0 } &{} {\Psi _1 ^\mathrm{{T}} } &{} {\Psi _2 ^\mathrm{{T}} } \\ \star &{} { - {\mathbf {S}}_1 ^{ - 1} } &{} 0 \\ \star &{} \star &{} { - {\mathbf {S}}_2 ^{ - 1} } \\ \end{array} } \right] < 0 \end{aligned}$$
(30)

Equation (30) can be rewritten,

$$\begin{aligned} \sum \limits _{i = 1}^3 {\left[ {\begin{array}{*{20}c} {\Psi _{0,i} } &{} {\Psi _{1,i} ^\mathrm{{T}} } &{} {\Psi _{2,i} ^\mathrm{{T}} } \\ \star &{} { - {\mathbf {S}}_1 ^{ - 1} } &{} 0 \\ \star &{} \star &{} { - {\mathbf {S}}_2 ^{ - 1} } \\ \end{array} } \right] } < 0 \end{aligned}$$
(31)

The above inequality is obeyed, if the following condition is met for each of the terms,

$$\begin{aligned} {\left[ {\begin{array}{*{20}c} {\Psi _{0,i} } &{} {\Psi _{1,i} ^\mathrm{{T}} } &{} {\Psi _{2,i} ^\mathrm{{T}} } \\ \star &{} { - {\mathbf {S}}_1 ^{ - 1} } &{} 0 \\ \star &{} \star &{} { - {\mathbf {S}}_2 ^{ - 1} } \\ \end{array} } \right] } < 0;\quad \hbox {for } i=1,\ldots ,3 \end{aligned}$$
(32)

Pre- and post-multiplying Eq. (32) by \(diag\left\{ {{\mathbf {I}},{\mathbf {P}},{\mathbf {P}}}\right\} \) and noting that [14, 39]

$$\begin{aligned} - \mathbf {PS}^{ - 1} {\mathbf {P}} \leqslant \rho _{}^2 {\mathbf {S}} - 2\rho {\mathbf {P}} \end{aligned}$$
(33)

Eq. (32) can be rewritten as,

$$\begin{aligned} \left[ {\begin{array}{*{20}c} {\Psi _{0,i} } &{} {\Psi _{1,i} ^\mathrm{{T}} {\mathbf {P}}} &{} {\Psi _{2,i} ^\mathrm{{T}} {\mathbf {P}}} \\ \star &{} {\rho _1^2 {\mathbf {S}}_1 - 2\rho _1^{} {\mathbf {P}}} &{} 0 \\ \star &{} \star &{} {\rho _2^2 {\mathbf {S}}_2 - 2\rho _2^{} {\mathbf {P}}} \\ \end{array} } \right] < 0 \end{aligned}$$
(34)

The above LMI contains terms that are a function of the variable \(\left| {N(t)} \right| \le 1\). To eliminate such a variable, we use Lemma 1 from [35] such that the LMI given by (34) is transformed to,

$$\begin{aligned} \left[ {\begin{array}{*{20}c} { \Sigma _{11,i} } &{} { \Sigma _{12,i} } &{} { \Sigma _{13,i} } \\ \star &{} { \Sigma _{22,i} } &{} { \Sigma _{23,i} } \\ \star &{} \star &{} { \Sigma _{33,i} } \\ \end{array} } \right] < 0 \end{aligned}$$
(35)

where

$$\begin{aligned} \Sigma _{11,i}= & {} \left[ {\begin{array}{*{20}c} \Sigma _{11,i,1,1} &{} {\mathbf {PA}_{1,i} } &{} {{\mathbf {S}}_1 } &{} {\mathbf {0}} \\ \star &{} {\Sigma _{11,i,2,2} } &{} {{\mathbf {S}}_2 + {\mathbf {R}}} &{} {{\mathbf {S}}_2 + {\mathbf {R}}^\mathrm{{T}} } \\ \star &{} \star &{} {{\mathbf {T}}_{2,i} - {\mathbf {T}}_{1,i} - {\mathbf {S}}_1 - {\mathbf {S}}_2 } &{} { - {\mathbf {R}}^\mathrm{{T}} } \\ \star &{} \star &{} \star &{} { - {\mathbf {T}}_{2,i} - \mathbf {S_2 } } \\ \end{array}} \right] \\ \Sigma _{11,i,1,1}= & {} {\mathbf {A}}_{0,i} ^\mathrm{{T}} {\mathbf {P}} + \mathbf {PA}_{0,i} + {\mathbf {T}}_{1,i} - {\mathbf {S}}_1 ;\,\,\Sigma _{11,i,2,2} = - 2{\mathbf {S}}_2 - {\mathbf {R}}^\mathrm{{T}} - {\mathbf {R}} + \varepsilon \Theta ^\mathrm{{T}} \Omega _i \Theta \\ \Sigma _{12,i}= & {} \left[ {\begin{array}{*{20}c} {\mathbf {PA}_{2,i} } &{} {\mathbf {PA}_{3,i} } &{} {{\mathbf {C}}_1 ^\mathrm{{T}} } &{} {\eta _m {\mathbf {A}}_{0,i} ^\mathrm{{T}} {\mathbf {P}}} &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) {\mathbf {A}}_{0,i} ^\mathrm{{T}} {\mathbf {P}}} \\ {\varepsilon \Theta ^\mathrm{{T}} \Omega _i } &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\eta _m {\mathbf {A}}_{1,i} ^\mathrm{{T}} {\mathbf {P}}} &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) {\mathbf {A}}_{1,i} ^\mathrm{{T}} {\mathbf {P}}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \end{array} } \right] \\ \Sigma _{13,i}= & {} \left[ {\begin{array}{*{20}c} {\mathbf {P}{{\bar{\mathbf {E}}}}_{A,i} } &{} {\mu _1 {\bar{{\mathbf {F}}}}_A ^\mathrm{{T}} } &{} {\mathbf {P}{{\bar{\mathbf {E}}}}_\mathbf {B,i} } &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \end{array} } \right] \\ \Sigma _{22,i}= & {} \left[ {\begin{array}{*{20}c} { - \Omega _i + \varepsilon \Omega _i } &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\eta _m {\mathbf {A}}_{2,i} ^\mathrm{{T}} {\mathbf {P}}} &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) {\mathbf {A}}_{2,i} ^\mathrm{{T}} {\mathbf {P}}} \\ \star &{} { - \gamma ^2 {\mathbf {I}}} &{} {\mathbf {0}} &{} {\eta _m {\mathbf {A}}_{3,i} ^\mathrm{{T}} {\mathbf {P}}} &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) {\mathbf {A}}_{3,i} ^\mathrm{{T}} {\mathbf {P}}} \\ \star &{} \star &{} { - {\mathbf {I}}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \star &{} \star &{} \star &{} {\rho _1^2 {\mathbf {S}}_1 - 2\rho _1^{} {\mathbf {P}}} &{} {\mathbf {0}} \\ \star &{} \star &{} \star &{} \star &{} {\rho _2^2 {\mathbf {S}}_2 - 2\rho _2^{} {\mathbf {P}}} \\ \end{array} } \right] \\ \Sigma _{23,i}= & {} \left[ {\begin{array}{*{20}c} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mu _2 {\bar{{\mathbf {F}}}}_{\mathbf {B}} ^\mathrm{{T}} } \\ {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ {\eta _m \mathbf {P}{{\bar{\mathbf {E}}}}_{A,i} } &{} {\mathbf {0}} &{} {\eta _m \mathbf {P}{{\bar{\mathbf {E}}}}_\mathbf {B,i} } &{} {\mathbf {0}} \\ {\left( {{{\bar{\eta }}} - \eta _m } \right) \mathbf {P}{{\bar{\mathbf {E}}}}_{A,i} } &{} {\mathbf {0}} &{} {\left( {{{\bar{\eta }}} - \eta _m } \right) \mathbf {P}{{\bar{\mathbf {E}}}}_\mathbf {B,i} } &{} {\mathbf {0}} \\ \end{array} } \right] \\ \Sigma _{33,i}= & {} \left[ {\begin{array}{*{20}c} { - \mu _1 {\mathbf {I}}} &{} {\mathbf {0}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \star &{} { - \mu _1 {\mathbf {I}}} &{} {\mathbf {0}} &{} {\mathbf {0}} \\ \star &{} \star &{} { - \mu _2 {\mathbf {I}}} &{} {\mathbf {0}} \\ \star &{} \star &{} \star &{} { - \mu _2 {\mathbf {I}}} \\ \end{array} } \right] \end{aligned}$$

By assuming that the positive-definite matrix \(\mathbf{P}\) has the following structure,

$$\begin{aligned} {{\mathbf {P}} }= \left[ {\begin{array}{*{20}c} {{\mathbf {P}}_1 } &{} {\mathbf {0}} \\ {\mathbf {0}} &{} {{\mathbf {P}}_2 } \\ \end{array} } \right] \end{aligned}$$

and \({\mathbf {M}}_i = {\mathbf {P}}_1 {\mathbf {L}}_i\), inequality given by Eq. (14) is obtained.

Therefore, the proof is completed. \(\square \)

3.5 Disk region definition

To enable the observer given by Eq. (8) to have an adequate transient response, its eigenvalues must be restricted to a disk (rc) with radius r and center located at \((-c, 0)\). This condition is complied, if the following LMI is defined, such that

$$\begin{aligned}&\left[ {\begin{array}{*{20}c} { - r \cdot {\mathbf {P}}_1 } &{} {\left( {{\mathbf {P}}_1 {\mathbf {A}}_{0i} + \Delta {\mathbf {A}}_{0,i} - {\mathbf {M}}_i {\mathbf {C}}} \right) + c \cdot {\mathbf {P}}_1 } \\ \star &{} { - r \cdot {\mathbf {P}}_1 } \\ \end{array} } \right] \nonumber \\&\quad < 0;\quad \hbox {for } i=1,\ldots ,3 \end{aligned}$$
(36)

Applying Lemma 1 from [35] to eliminate the uncertainty term \({\Delta {\mathbf {A}}_{0,i} }\), the above LMI is transformed to

$$\begin{aligned}&\left[ {\begin{array}{*{20}c} { - r \cdot {\mathbf {P}}_1 } &{} {\left( {{\mathbf {P}}_1 {\mathbf {A}}_{0i} - {\mathbf {M}}_i {\mathbf {C}}} \right) + c \cdot {\mathbf {P}}_1 } &{} {{\mathbf {P}}_1 {\bar{{\mathbf {E}}}}_{A,i} } &{} 0 \\ \star &{} { - r \cdot {\mathbf {P}}_1 } &{} 0 &{} {\mu _3 {\bar{{\mathbf {F}}}}_A ^\mathrm{{T}} } \\ \star &{} \star &{} { - \mu _3 {\mathbf {I}}} &{} 0 \\ \star &{} \star &{} \star &{} { - \mu _3 {\mathbf {I}}} \\ \end{array} } \right] \nonumber \\&\quad < 0 ;\quad \hbox {for } i=1,\ldots ,3 \end{aligned}$$
(37)

4 Results and discussion

To test the effectiveness of the designed observer, both simulations were carried out using the vehicle dynamics software TruckSim\(^{\textregistered }\) and experimental results with a real instrumented van.

In this research work, the longitudinal speed, \(v_x\), has been limited to the following interval [2, 20] m/s. The parameter values of the vehicle model used for the observer design given by Eq. (8) are shown in Table 2.

Table 2 Values of vehicle parameters
Table 3 Minimum \({H}_\infty \) performance index, \(\gamma ^2\), for different values of h, \(\eta _m\) and \(\epsilon ^{2}\)

Considering the most restrictive triangle formed by vertices, \(\mu _1\mu _2\mu _3\), and letting \(\eta _m=5\) ms and disk region (80,80), the minimum \(H_\infty \) performance index, \(\gamma ^2\), for different event-triggering conditions, \(\epsilon ^{2}\), maximum networks delay, \(\eta _M\), and sampling period, h, is depicted in Table 3. It can be seen that the \(\gamma ^2\) increases with the increase of h, \(\eta _M\) and \(\epsilon ^2\).

To prove the effectiveness of the proposed methodology, the following 4 cases have been considered for values of \(h=15\) ms, \(\eta _m=5\) ms and \(\eta _M=20\) ms:

  • Case 1 Estimation of the sideslip angle, \(\beta _\mathrm{{NN}}\), and the roll angle, \(\phi _\mathrm{{NN}}\), using only the neural network described in [21].

  • Case 2 Estimation of the sideslip angle, \(\beta _2\), and the roll angle, \(\phi _{2}\), using the event-triggered \({H}_{\infty }\)-based observer defined in Eq. (8) and using the yaw rate, r, and the roll rate, \({{\dot{\phi }}}\) as observed measures. These measurements are obtained directly from the vehicle-mounted IMU sensor; therefore, \(\mathbf {C11} = \left[ {\begin{array}{*{20}c} 0 &{} 1 &{} 0 &{} 1 \\ \end{array} } \right] \) and \({\mathbf {C}} = \left[ {\begin{array}{*{20}c} 0 &{} 1 &{} 0 &{} 0 \\ 0 &{} 0 &{} 0 &{} 1 \\ \end{array} } \right] \). The observer gain and the event-triggered weighting matrices obtained for each of the polytope triangles are:

    • Triangle with edges \(\mu _1\mu _2\mu _3\): For values of \(\gamma ^2=100\), \(\rho _1=0.5\), \(\rho _2=0.5\), \(\varepsilon ^2=0.001\), and disk region (90, 90),

      $$\begin{aligned}&\Omega _1 = \left[ {\begin{array}{*{20}c} {77.482} &{} {63.359} \\ \star &{} {271.421} \\ \end{array} } \right] ;\\&\Omega _2 = \left[ {\begin{array}{*{20}c} {920.184} &{} {377.618} \\ \star &{} {1765.332} \\ \end{array} } \right] \\&\Omega _3 = \left[ {\begin{array}{*{20}c} {55.652} &{} {15.013} \\ \star &{} {69.346} \\ \end{array} } \right] ;\\&{\mathbf {L}}_1 = \left[ {\begin{array}{*{20}c} {-0.341} &{} {{-1.118}} \\ {{37.163}} &{} {{58.431}} \\ {{-1.780}} &{} {{-3.026}} \\ {{ 41.529}} &{} {{ 110.421}} \\ \end{array} } \right] \\&{\mathbf {L}}_2 = \left[ {\begin{array}{*{20}c} {{ -0.568}} &{} {{ 1.149}} \\ {{ 26.454 }} &{} {{ 16.086}} \\ {{-1.288 }} &{} {{-3.560 }} \\ {{ 37.732}} &{} {{ 136.969}} \\ \end{array} } \right] \\&{\mathbf {L}}_3 = \left[ {\begin{array}{*{20}c} {{9.271}} &{} {{1.265 }} \\ {{-58.967 }} &{} {{8.755 }} \\ {{ -0.884}} &{} {{-3.208 }} \\ {{ 43.829}} &{} {{ 124.929}} \\ \end{array} } \right] \end{aligned}$$
    • Triangle with edges \(\mu _3\mu _4\mu _5\): For values of \(\gamma ^2=15\), \(\rho _1=0.5\), \(\rho _2=0.5\), \(\varepsilon ^2=0.001\), and disk region (100, 100),

      $$\begin{aligned}&\Omega _3 = \left[ {\begin{array}{*{20}c} {351.803} &{} {-18.680} \\ \star &{} {1317.342 } \\ \end{array} } \right] \\&\Omega _4 = \left[ {\begin{array}{*{20}c} {1160.396} &{} {39.419} \\ \star &{} {1348.761} \\ \end{array} } \right] \\&\Omega _5 = \left[ {\begin{array}{*{20}c} {286.583} &{} {229.939} \\ \star &{} {1263.867} \\ \end{array} } \right] \\&{\mathbf {L}}_3 = \left[ {\begin{array}{*{20}c} {{11.662}} &{} {{2.163}} \\ {{-92.398 }} &{} {{-5.219 }} \\ {{-0.237 }} &{} {{-0.227 }} \\ {{ 29.987}} &{} {{18.873 }} \\ \end{array} } \right] \\&{\mathbf {L}}_4 = \left[ {\begin{array}{*{20}c} {{24.414 }} &{} {{-6.739 }} \\ {{ -131.423}} &{} {{30.797}} \\ {{-0.259 }} &{} {{-0.239 }} \\ {{35.714 }} &{} {{ 11.228}} \\ \end{array} } \right] \\&{\mathbf {L}}_5 = \left[ {\begin{array}{*{20}c} {{52.925 }} &{} {{-18.791 }} \\ {{-190.056 }} &{} {{ 67.819}} \\ {{-0.239 }} &{} {{-0.210 }} \\ {{49.742 }} &{} {{2.983 }} \\ \end{array} } \right] \end{aligned}$$
  • Case 3 Estimation of the sideslip angle, \(\beta _3\), and the roll angle, \(\phi _{3}\), using the \({H}_{\infty }\)-based observer without event-triggered condition defined in Eq. (8) and using the pseudo-slip angle, \(\beta _\mathrm{{NN}}\), the yaw rate, r, the pseudo-roll angle, \(\phi _\mathrm{{NN}}\), and the roll rate, \({{\dot{\phi }}}\) as observed measures. The pseudo-measures of the sideslip and roll angles are obtained from the NN module. Therefore, \({\mathbf {C}} = {\mathbf {I}}_{4\times 4}\). The observer gain matrices obtained for each of the polytope triangles are:

    • Triangle with edges \(\mu _1\mu _2\mu _3\): For values of \(\gamma ^2=500\), \(\rho _1=1\), \(\rho _2=1\), \(\varepsilon ^2=0.001\), and disk region (130, 130),

      $$\begin{aligned} {\mathbf {L}}_1= & {} \left[ {\begin{array}{*{20}c} {{6}{.942}} &{} {{ - 2}{.070}} &{} {{ - 101}{.059}} &{} {{ - 2}{.848}} \\ {{ - 21}{.988}} &{} {{12}{.220}} &{} {{170}{.350}} &{} {{ - 8}{.097}} \\ {{0}{.856}} &{} {{ - 0}{.045}} &{} {{15}{.310}} &{} {{ - 0}{.290}} \\ {{ - 16}{.719}} &{} {{1}{.9125}} &{} {{ - 279}{.608}} &{} {{29}{.315}} \\ \end{array} } \right] \\ {\mathbf {L}}_2= & {} \left[ {\begin{array}{*{20}c} {{13}{.810}} &{} {{ - 2}{.823}} &{} {{ - 106}{.258}} &{} {{ - 5}{.938}} \\ {{11}{.675}} &{} {{14}{.733}} &{} {{287}{.131}} &{} {{11}{.968}} \\ {{0}{.445}} &{} {{ - 0}{.083}} &{} {{22}{.960}} &{} {{ - 0}{.301}} \\ {{ - 52}{.523}} &{} {{4}{.208}} &{} {{ - 265}{.192}} &{} {{35}{.582}} \\ \end{array} } \right] \\ {\mathbf {L}}_3= & {} \left[ {\begin{array}{*{20}c} {{ - 9}{.702}} &{} {{6}{.153}} &{} {{ - 83}{.234}} &{} {{ - 3}{.399}} \\ {{97}{.550}} &{} {{ - 50}{.134}} &{} {{170}{.927}} &{} {{ - 1}{.877}} \\ {{0}{.757}} &{} {{ - 0}{.112}} &{} {{18}{.373}} &{} {{ - 0}{.465}} \\ {{ - 54}{.177}} &{} {{18}{.259}} &{} {{ - 301}{.154}} &{} {{37}{.549}} \\ \end{array} } \right] \end{aligned}$$
    • Triangle with edges \(\mu _3\mu _4\mu _5\): For values of \(\gamma ^2=40\), \(\rho _1=1\), \(\rho _2=1\), \(\varepsilon ^2=0.001\), and disk region (90, 90),

      $$\begin{aligned} {\mathbf {L}}_3= & {} \left[ {\begin{array}{*{20}c} {{ - 9}{.892}} &{} {{7}{.203}} &{} {{ - 26}{.068}} &{} {{0}{.924}} \\ {{93}{.252}} &{} {{ - 63}{.417}} &{} {{13}{.860}} &{} {{ - 1}{.127}} \\ {{0}{.026}} &{} {{ - 0}{.143}} &{} {{6}{.345}} &{} {{ - 0}{.138}} \\ {{ - 27}{.567}} &{} {{18}{.892}} &{} {{ - 167}{.154}} &{} {{12}{.008}} \\ \end{array} } \right] \\ {\mathbf {L}}_4= & {} \left[ {\begin{array}{*{20}c} {{ - 22}{.205}} &{} {{17}{.260}} &{} {{ - 43}{.679}} &{} {{ - 1}{.506}} \\ {{132}{.495}} &{} {{ - 94}{.691}} &{} {{18}{.669}} &{} {{6}{.500}} \\ {{0}{.077}} &{} {{ - 0}{.153}} &{} {{6}{.170}} &{} {{ - 0}{.121}} \\ {{ - 38}{.306}} &{} {{25}{.907}} &{} {{ - 166}{.523}} &{} {{11}{.890}} \\ \end{array} } \right] \\ {\mathbf {L}}_5= & {} \left[ {\begin{array}{*{20}c} {{ - 50}{.206}} &{} {{37}{.669}} &{} {{ - 56}{.772}} &{} {{ - 5}{.501}} \\ {{187}{.612}} &{} {{ - 141}{.285}} &{} {{24}{.634}} &{} {{17}{.446}} \\ {{0}{.066}} &{} {{ - 0}{.164}} &{} {{6}{.087}} &{} {{ - 0}{.117}} \\ {{ - 52}{.919}} &{} {{37}{.192}} &{} {{ - 165}{.487}} &{} {{9}{.449}} \\ \end{array} } \right] \end{aligned}$$
  • Case 4 (proposed methodology) Estimation of the sideslip angle, \(\beta _4\), and the roll angle, \(\phi _4\), using the event-triggered \(H_{\infty }\)-based observer defined in Eq. (8) and using the pseudo-slip angle, \(\beta _\mathrm{{NN}}\), the yaw rate, r, the pseudo-roll angle, \(\phi _\mathrm{{NN}}\), and the roll rate, \({{\dot{\phi }}}\) as measures observed. The pseudo-measurements of the sideslip and roll angles are obtained from the NN module. Therefore, \({\mathbf {C}} = {\mathbf {I}}_{4\times 4}\). The observer gain and the event-triggered weighting matrices obtained for each of the polytope triangles are:

    • Triangle with edges \(\mu _1\mu _2\mu _3\): For values of \(\gamma ^2=365.5\), \(\rho _1=0.1\), \(\rho _2=1\), \(\varepsilon ^2=0.001\), and disk region (80, 80),

      $$\begin{aligned}&\Omega _1 = \left[ {\begin{array}{*{20}c} {{479.217}} &{} {{-55.234 }} &{} {{-4583.541 }} &{} {{-137.372 }} \\ \star &{} {{22.882268 }} &{} {{ 103.501}} &{} {{34.602 }} \\ \star &{} \star &{} {{103708.221 }} &{} {{2343.151 }} \\ \star &{} \star &{} \star &{} {{215.447 }} \\ \end{array} } \right] \\&\Omega _2 = \left[ {\begin{array}{*{20}c} {{4593.791 }} &{} {{-230.577 }} &{} {{-19077.116 }} &{} {{-734.016 }} \\ \star &{} {{322.356 }} &{} {{2029.718 }} &{} {{206.904 }} \\ \star &{} \star &{} {{641226.804}} &{} {{13608.116 }} \\ \star &{} \star &{} \star &{} {{ 875.631}} \\ \end{array} } \right] \\&\Omega _3 = \left[ {\begin{array}{*{20}c} {{1012.524 }} &{} {{54.266 }} &{} {{4331.939}} &{} {{ -183.459}} \\ \star &{} {{ 61.775}} &{} {{828.010 }} &{} {{ 92.238}} \\ \star &{} \star &{} {{41619.384 }} &{} {{1239.625 }} \\ \star &{} \star &{} \star &{} {{420.275 }} \\ \end{array} } \right] \\&{\mathbf {L}}_1 = \left[ {\begin{array}{*{20}c} {{ 17.501}} &{} {{-5.136}} &{} {{-88.192 }} &{} {{-6.402 }} \\ {{-45.027 }} &{} {{18.839 }} &{} {{-258.892 }} &{} {{ -11.374}} \\ {{ 2.013}} &{} {{-0.687 }} &{} {{ 21.595}} &{} {{-1.283 }} \\ {{-54.108 }} &{} {{ 24.657 }} &{} {{-243.702 }} &{} {{67.466 }} \\ \end{array} } \right] \\&{\mathbf {L}}_2 = \left[ {\begin{array}{*{20}c} {{16.312 }} &{} {{-3.271 }} &{} {{-119.808 }} &{} {{-9.498 }} \\ {{31.235 }} &{} {{ -2.036}} &{} {{-352.613 }} &{} {{5.800 }} \\ {{-0.723 }} &{} {{-0.309}} &{} {{ 56.101}} &{} {{-0.527 }} \\ {{-54.974 }} &{} {{ 16.390}} &{} {{-363.613 }} &{} {{62.324}} \\ \end{array} } \right] \\&{\mathbf {L}}_3 = \left[ {\begin{array}{*{20}c} {{-16.505}} &{} {{7.723 }} &{} {{-50.425}} &{} {{-4.330}} \\ {{138.352 }} &{} {{-56.374 }} &{} {{-57.251 }} &{} {{ -6.259}} \\ {{1.533 }} &{} {{-0.350}} &{} {{28.568}} &{} {{-1.506}} \\ {{-58.980 }} &{} {{23.643 }} &{} {{-592.710 }} &{} {{55.960}} \\ \end{array} } \right] \end{aligned}$$
    • Triangle with edges \(\mu _3\mu _4\mu _5\): For values of \(\gamma ^2=40\), \(\rho _1=0.1\), \(\rho _2=1\), \(\varepsilon ^2=0.001\), and disk region (80, 80),

      $$\begin{aligned} \Omega _3= & {} \left[ {\begin{array}{*{20}c} {{852.055}} &{} {{-165.944 }} &{} {{-106.670 }} &{} {{167.924 }} \\ \star &{} {{140.484200}} &{} {{-89.814}} &{} {{ -60.100}} \\ \star &{} \star &{} {{34071.175}} &{} {{538.080 }} \\ \star &{} \star &{} \star &{} {{814.393}} \\ \end{array} } \right] \\ \Omega _4= & {} \left[ {\begin{array}{*{20}c} {{1490.043}} &{} {{-21.843 }} &{} {{-110.914 }} &{} {{-190.907 }} \\ \star &{} {{494.610 }} &{} {{ 60.076}} &{} {{88.615 }} \\ \star &{} \star &{} {{ 33479.493}} &{} {{448.285 }} \\ \star &{} \star &{} \star &{} {{889.740}} \\ \end{array} } \right] \\ \Omega _5= & {} \left[ {\begin{array}{*{20}c} {{ 829.123}} &{} {{171.058 }} &{} {{-62.722}} &{} {{-60.858}} \\ \star &{} {{252.527 }} &{} {{29.126 }} &{} {{172.370 }} \\ \star &{} \star &{} {{33629.670}} &{} {{456.683}} \\ \star &{} \star &{} \star &{} {{ 684.182}} \\ \end{array} } \right] \\ {\mathbf {L}}_3= & {} \left[ {\begin{array}{*{20}c} {{-12.943 }} &{} {{9.373}} &{} {{ -14.584}} &{} {{2.686}} \\ {{121.895}} &{} {{-83.666}} &{} {{-176.212}} &{} {{ -20.020}} \\ {{0.127}} &{} {{-0.159}} &{} {{7.827}} &{} {{0.055}} \\ {{-41.173}} &{} {{27.596}} &{} {{49.260}} &{} {{ 12.920}} \\ \end{array} } \right] \\ {\mathbf {L}}_4= & {} \left[ {\begin{array}{*{20}c} {{ -25.264}} &{} {{20.931 }} &{} {{ -90.592}} &{} {{-2.097 }} \\ {{ 159.016}} &{} {{-120.273}} &{} {{ 139.739}} &{} {{3.781 }} \\ {{0.054 }} &{} {{ -0.129}} &{} {{8.425 }} &{} {{0.099 }} \\ {{ -50.131 }} &{} {{ 33.535}} &{} {{ -5.792}} &{} {{ 9.430}} \\ \end{array} } \right] \\ {\mathbf {L}}_5= & {} \left[ {\begin{array}{*{20}c} {{-57.100 }} &{} {{45.763 }} &{} {{-54.923}} &{} {{ -0.612}} \\ {{205.405 }} &{} {{-170.225}} &{} {{ 107.593}} &{} {{17.436 }} \\ {{ 0.080}} &{} {{-0.138 }} &{} {{8.280}} &{} {{0.075}} \\ {{-60.578 }} &{} {{ 43.656}} &{} {{ 13.870}} &{} {{ 8.922}} \\ \end{array} } \right] \end{aligned}$$

The results obtained are shown below.

Fig. 2
figure 2

Steering wheel angle for the sine sweep maneuver at 40 km/h

Fig. 3
figure 3

Simulation results: sideslip angle for the sine sweep maneuver at 40 km/h

Fig. 4
figure 4

Simulation results: roll angle for the sine sweep maneuver at 40 km/h

4.1 Simulation results

The simulation results were carried out using the TruckSim\(^{\textregistered }\) software with a van model experimentally validated from a real Mercedes Sprinter van that is suitably instrumented. Vargas-Melendez et al. [28] present a description of how the process validating the simulation model was carried out. A sine sweep maneuver at 40 km/h was simulated with a steering wheel angle profile during 100 s as shown in Fig. 2. To simulate the real behavior of the sensors, white Gaussian noise is added to the observed signals, the longitudinal speed, \(v_x\), the steering wheel angle, \(\delta \), the longitudinal acceleration, \(a_x\), the lateral acceleration, \(a_y\), the yaw rate, r, and the roll rate, \({{\dot{\phi }}}\), with zero mean and variances of 0.01 km/h, 0.01\(^{\circ }\), 0.01 g’s, 0.01 g’s, 0.01\(^{\circ }\)/s, and 0.01\(^{\circ }\)/s, respectively.

In Figs. 3 and 4, the values obtained for each of the cases described above are shown together with the data obtained from the TruckSim\(^{\textregistered }\) vehicle model (Ground Truth). To quantify the results, the values of the maximum absolute error, the root-mean-square error (RMSE), and the normalized root-mean-square deviation (NRMSD) of each of the case studies are shown in Table 4. From the maximum errors obtained, it can be seen that the estimator based only on NN is strongly affected by the noise in the signals obtained from the sensors. As for the event-triggered \(H_{\infty }\)-based observer that uses only the yaw rate, r, and the roll rate, \({{\dot{\phi }}}\), (Case 2), it is noted that the errors of the estimated values of both sideslip angle, \(\beta \), and roll angle, \(\phi \), are higher than those obtained in Case 4, with the exception of the maximum absolute error. This improvement is mainly observed in the estimation of the roll angle, \(\phi \), because its value is obtained from the integration of the roll rate, \({{\dot{\phi }}}\), which causes an accumulation of the error.

Table 4 Simulation results for a sine sweep maneuver at 40 km/h: errors
Fig. 5
figure 5

Simulation results: release instants

Table 5 Simulation results for a DLC maneuver at 70 km/h and a J-turn maneuver at 60 km/h: errors

Figure 5 plots only the release instants for the cases with an event-triggered condition, Case 2 and Case 4. For Case 2, in which the observed measures are the yaw rate, r, and the roll rate, \({{\dot{\phi }}}\), only \(51\%\) of the sampling signals will be sent to the event-triggered \({H}_\infty \)-based observer. For Case 4, in which the observed signals are the pseudo-sideslip angle, \(\beta _\mathrm{{NN}}\), yaw rate, r, pseudo-roll angle, \(\phi _\mathrm{{NN}}\), and the roll rate, \({{\dot{\phi }}}\), the percentage of the sampling signals which will be sent to the event-triggered \({H}_\infty \)-based observer is increased until \(86\%\).

Fig. 6
figure 6

Experimental results: Mercedes Sprinter

Fig. 7
figure 7

Experimental results: wheel steering angle for the real maneuver

Fig. 8
figure 8

Experimental results: longitudinal speed for the real maneuver

Table 6 Experimental results: errors

Table 5 shows the maximum absolute error and RMSE for other severe maneuvers, such a double lane change (DLC) at 70 km/h and J-Turn with a wheel steering angle of 60\(^{\circ }\) at 60 km/h. As can be seen, in comparison with the previous sine swipe maneuver, similar results were obtained. Additionally, a reduction of the information, equaling \(43.7\%\) and \(95\%\) for a DLC maneuver and a J-turn, respectively, sent to the network was obtained for the Case 4. For Case 2, this reduction is \(17.2\%\) and \(94.7\%\), respectively.

Fig. 9
figure 9

Experimental results: sideslip angle for the real maneuver

Fig. 10
figure 10

Experimental results: roll angle for the real maneuver

By designing an event-triggered \({H}_\infty \)-based observer, we achieve a reduction in the sending of signals through the network. By comparing the observers defined in Case 3 and Case 4, i.e., without and with an event-triggered condition, respectively, we can see that very similar errors are obtained. Therefore, it can be stated that, to reduce the traffic in the network, it is advantageous to use an event-triggered condition in the observer’s design.

4.2 Experimental results

The event-triggered \(H_{\infty }\)-based observer has also been validated by experimental results. An instrumented Mercedes Sprinter van (Fig. 6) was used with a steering wheel sensor from Kistler that provides the wheel steering angle signal, \(\delta \), an IMU sensor from Racelogic located at the van’s center of gravity, which provides the signals of the longitudinal acceleration, \(a_x\), the lateral acceleration, \(a_y\), the yaw rate, r, and the roll rate, \({{\dot{\phi }}}\), and a dual GPS antenna from Racelogic. The dual GPS antenna was placed transversely to the vehicle’s direction of travel to provide the values of the sideslip angle, \(\beta \), and roll angle, \(\phi \), which are taken as ground truth to test the effectiveness of the observer design. The GPS antennas also provide the signal of the longitudinal speed, \(v_x\). The maneuver carried out is shown in Fig. 7, and it consists of a combination of a straight line maneuver, J-turn maneuvers, and slalom maneuvers with a longitudinal speed profile as shown in Fig. 8.

Figures 9 and 10 show the estimated sideslip angle, \(\beta \), and the estimated roll angle, \(\phi \), respectively, for each of the cases defined previously and their real values (ground truth). As in the simulation results, the experimental results have been quantified through the maximum absolute error (Max. error), the root-mean-square error (RMSE), and the normalized root-mean-square deviation (NRMSD). Their values are shown in Table 6. In general terms, it can be seen, as in the simulation results, that using a \(H_{\infty }\)-based observer in combination with the NN reduces the errors obtained (Case 3 and Case 4), especially the maximum absolute error, compared with the case using only the NN-based estimator (Case 1). In addition, it is noted that if only the yaw rate, r, and the roll rate, \({{\dot{\phi }}}\), are considered as observable signals (Case 2), the errors obtained in the estimation of the roll angle, \(\phi \), are larger for the reason previously indicated in Sect. 4.1. Therefore, it is advantageous to use of the pseudo-values to reduce the errors in the estimation process. In addition, we have compared the cases without any event-triggered condition (Case 3) and with an event-triggered condition (Case 4), and it is observed that the errors obtained are very similar in both cases.

In relation to the event-triggered condition, Fig. 11 shows the release time for Case 2 and Case 4. In both cases, a reduction of approximately \(54\%\) of the information sent to the network has been achieved. These results show the advantage of designing an observer with an event-triggered condition.

Fig. 11
figure 11

Experimental results: release instants

5 Conclusion

In this paper, an event-triggered \(H_{\infty }\)-based observer was designed to simultaneously estimate the values of the sideslip angle, \(\beta \), and roll angle, \(\phi _\mathrm{{NN}}\), which uses the pseudo-measurements of the sideslip angle, \(\beta _\mathrm{{NN}}\), and the roll angle, \(\phi \), obtained previously from an NN-based observer as observed signals. Additionally, the designed observer takes into account the time needed for the signal to be sent through the network to the designed observer.

The results obtained indicate that an observer can be designed to simultaneously estimate both the sideslip angle, \(\beta \), and the roll angle, \(\phi \), from values provided by sensors already installed on current series production vehicles, and therefore without increasing their cost.

Finally, it can be concluded that obtaining pseudo-measurements and their subsequent filtering mainly in these variables, which are obtained by integration, as is the case of the roll angle, \(\phi \), allows a reduction of the error in its estimation. Finally, the incorporation of an event-triggered condition in the observer’s design manages to reduce the amount of information sent to the network and, therefore, a reduction of its saturation. In the results presented, a reduction of between \(14\%\) and \(95\%\) has been achieved, depending on the maneuver.

Based on the presented results, other event-triggered mechanisms will be studied such as integral-based event-triggered conditions in order to further reduce the use of the communication network [25, 26]. Besides, it will be worth designing the observer taking into account sensor failures.