# Energy-Efficient Control for an Unmanned Ground Vehicle in a Wireless Sensor Network

Authors: José Alcaina; Ángel Cuenca; Julián Salt; Minghui Zheng; Masayoshi Tomizuka
Journal: Journal of Sensors
 (2019)

---

## Abstract

In this paper, an energy-efficient control solution for an Unmanned Ground Vehicle (UGV) in a Wireless Sensor Network is proposed. This novel control approach integrates periodic event-triggered control, packet-based control, time-varying dual-rate Kalman filter-based prediction techniques, and dual-rate control. The systematic combination of these control techniques allows the UGV to track the desired path preserving performance properties, despite (i) existing scarce data due to the reduced usage of the wireless sensor device, which results in less number of transmissions through the network and, hence, bandwidth and battery saving; (ii) appearance of some wireless communication problems such as time-varying delays, packet dropouts, and packet disorder; and (iii) coping with a realistic scenario where external disturbance and sensor noise can arise. The main benefits of the control solution are illustrated via simulation.


---

## Body

## 1. Introduction

A Wireless Sensor Network (WSN) [1, 2] can be defined as a group of sensors for monitoring and recording system conditions, which are wirelessly transferred to a central location. In recent years, the development of smart sensors has led WSNs to gain worldwide attention. Some trending applications on WSNs are target tracking [3, 4], health monitoring [5, 6], and environment exploration [7, 8]. Smart sensor nodes are low-power devices equipped with one or more sensors, a digital processor, memory, a power module, a wireless communication module, and an actuator. Sensors of differing nature (mechanical, optical, magnetic, etc.) may be attached to the sensor node to measure system variables. Since memory of the sensor nodes is limited, the wireless communication enables transferring of the measured data to a base station (e.g., a laptop), which is usually provided with powerful processing and storage capabilities. In this way, the base station may be able to compute complex control algorithms.Differently from traditional networks, a WSN has its own design and resource constraints. Resource constraints include short communication range, a limited amount of energy (which is supplied by battery), low bandwidth, and limited processing and storage capabilities (being not capable of running complex control algorithms). As sensor nodes operate on limited battery power, and data transmission is very expensive in terms of energy consumption [9], a central aspect in WSNs is the optimization of communication in order to reduce energy usage. In other words, one of the main aims in WSNs is to get efficient reliable wireless communications in order to maximize network lifetime. This aspect has been widely treated in the literature therein from different points of view. In general, three main techniques are typically used [10]: duty cycling, data-driven approaches, and mobility. Duty cycling allows nodes to assume a low-power, idle state whenever they are not transmitting or receiving (see, e.g., in [11, 12]). Data-driven approaches are designed to reduce the amount of sampled and transmitted data (see, e.g., [13, 14]). Mobility is focused on minimizing the communication distance and altering traffic flow (see, e.g., [15, 16]). In the present paper, a novel data-driven approach based on the systematic combination of periodic event-triggered control, packet-based control, time-varying dual-rate Kalman filter-based prediction techniques, and dual-rate control is proposed. As a data-driven approach, the control solution enables the reduction of the sensor node usage, which implies less packet deliveries and, hence, battery and bandwidth saving. This reduction of the resource utilization can be reached while preserving performance properties when tracking a desired target. In addition, the control proposal is able to guarantee reliable packet delivery by dealing with some wireless communication problems such as network-induced delays, packet dropouts, and packet disorder. Finally, the control approach is also able to cope with realistic scenarios, where external disturbance and sensor noise can arise.In periodic event-triggered control (PETC) [17, 18], system data are transferred only when output variables satisfy certain event conditions, which are periodically evaluated. Compared to the traditional time-triggered control, PETC enables further reduction of resource utilization such as bandwidth and energy consumption [19, 20]. As the controller (located at the base station) is provided with less system data, event-based state prediction techniques must be additionally included in order to estimate the nonavailable data and keep performance properties. Both continuous-time (see, e.g., [17]) and discrete-time (see, e.g., [21]) frameworks are found in the literature on PETC. In this paper, the last case is adopted by integrating a time-varying dual-rate Kalman filter with a dual-rate controller.Regarding event-based state prediction techniques, different approaches address this aspect in the literature, for instance, distributed event-triggered filtering in [13, 14, 22], a model-based predictor in [18, 23], and time-varying Kalman filters in [24–26]. Following this line of research on time-varying Kalman filters, in this paper, a time-varying dual-rate Kalman filter (TVDRKF) is used in order to provide nonavailable data and compute an h-step ahead state prediction stage. The nature of this filter is (i) dual-rate, due to the consideration of a slow-rate state correction stage along with a fast-rate prediction stage, and (ii) time-varying, because the correction stage is carried out in a nonuniform fashion as a consequence of the event-triggered sampling scheme. Unlike [26], the Kalman filter is now integrated in a WSN, where communication problems such as network-induced delays and packet dropouts can appear. Hence, the TVDRKF is able to estimate the nonavailable data not only due to the event-triggering sampling but also due to the packet dropouts. In addition, the TVDRKF is also able to compensate for the time-varying network-induced delays. To cope with both problems, the integration of packet-based control strategies in the control solution is needed.Packet-based control [27, 28] is a technique which enables decrease of the communication rate by simultaneously sending a set of data in each transmission. In our work, this strategy is useful not only for resource-saving purposes but also for complementing the TVDRKF, since the controller (located at the base station, including the TVDRKF) is allowed to send a set of h-step ahead control signal estimations in a packet through the network to the actuator (located at the sensor node). The computation of the control signal estimations is carried out from the set of h-step ahead state predictions obtained by the TVDRKF and following a delay-free control algorithm. This is a relevant aspect of this work, since, for implementation purposes, the round-trip time delay is not required to be measured and compensated for, which makes the solution applicable to a wide range of WSNs where the time delay is difficult to measure. In this way, at the actuator, when no packet arrives, estimated control actions received in the previous transmission are applied to the plant, without being influenced by the time-varying network-induced delay. When the packet arrives after the delay, the estimated control signal is replaced with the actual one. The difference between actual and estimated control signals should be negligible, since (i) an accurate system model is assumed and (ii) although a realistic scenario is considered, where possible external disturbance and measurement noise can arise, these aspects are faced by the TVDRKF. To the best of the authors’ knowledge, the working mode of the proposed control algorithm is novel in this kind of frameworks.In dual-rate control [29–31], a slower sensing rate in comparison to a faster actuation can be assumed. The event-triggered conditions at the sensor node are periodically evaluated at the slow rate. Despite sensing in this way, the fast actuation enables achieving acceptable control properties. In addition, dual-rate control techniques provide twofold benefits: (i) to lessen the amount of transmissions through the network, which results in energy and bandwidth saving, and (ii) to elude packet disorder, selecting the sampling period to be larger than the largest round-trip time delay. As a statistical distribution for the network-induced delay is assumed to be known [32], the largest delay can be easily found. In the present work, due to the broad knowledge of PID controllers in academic and industrial environments, a dual-rate PID control scheme is considered. The estimated disturbance signal obtained by the TVDRKF is used to finally tune the PID control signal.In order to show the potential of the ideas posed in this work, the control solution is employed in the context of a popular control application, that of Unmanned Ground Vehicles (UGVs). In fact, the large number of UGV applications such as target tracking, inspection, and mapping has attracted the attention of the scientific community (see, e.g., [33, 34]). In our work, a target tracking application in a WSN is developed, where the Pure Pursuit path tracking algorithm [35, 36] is used in order to make the UGV follow a predefined path approximately. The algorithm computes velocity commands from velocity estimations provided by the TVDRKF. The UGV chosen will be a differential robot.In summary, the main contribution of the present work is the development of a novel and complete approach for WSNs, where a TVDRKF, a dual-rate controller, and a Pure Pursuit path tracking algorithm are systematically brought together in a PETC scenario in order to considerably lessen resource usage (energy and bandwidth), and dealing with some wireless communication problems and disturbance and noise, while keeping satisfactory control properties.Finally, the work is structured as follows. Section2 presents the energy-efficient control solution. Section 3 introduces the event-triggered conditions and control structures used in the control solution. Section 4 presents some cost indexes to analyze the trade-off between control performance and resource utilization. In Section 5, a realistic application of the control solution to UGVs is simulated and its effectiveness validated, via a simulation tool known as TrueTime [37], which is based on MATLAB/Simulink®. Section 6 summarizes the main conclusions of the paper.


## 2. Problem Scenario

The energy-efficient control solution taken into account in this work is illustrated in Figure1. The control system presents two components: the sensor node, where the sensor, actuator, and plant are included, and the base station, where the control algorithm is implemented. In both components, some trigger mechanisms are used to decide when the data is going to travel through the network. The wireless network connects both sides and introduces some communication problems such as time-varying delays, packet dropouts, and packet disorder. In the next subsections, these problems are formally described and the working mode of the control structure is presented.Figure 1
An energy-efficient control system for a WSN.


### 2.1. Time-Varying Network-Induced Delays, Packet Dropouts, and Packet Disorder

As said in the previous section, dual-rate control is used in the proposed approach. Then, two different periods are considered:T as the actuation period and NT as the sensing period, with N∈ℕ+ being the multiplicity between the two periods of the dual-rate control scheme [30]. Let us, respectively, denote .kT and .kNT as a T-period and an NT-period signal or variable, where k∈ℕ are iterations at the corresponding period. For a packet sampled at instant kNT, being effectively sent (i.e., the trigger conditions hold) and not lost, the round-trip time delay is defined as
(1)τkNT=τsc,kNT+τca,kNT+τc,kNT,with τsc,kNT being the sensor-to-controller network-induced delay, τca,kNT the controller-to-actuator delay, and τc,kNT a computation time delay. As a local clock is assumed to govern the different devices located at the sensor node, they can be completely synchronized. As a consequence, in order to measure the round-trip time delay, no additional time-stamping techniques and synchronization are needed. The delay can be measured by subtracting packet sending and receiving times. Note that, although a shared clock can be supposed in some WSN applications (as in this work), it might be hard to satisfy for other applications, for example, in distributed wireless sensor nodes, where an option may be to synchronize nodes [38].To avoid packet disorder, in this work, it is strictly necessary to know the maximum round-trip time delayτmax=maxτkNT such that τmax<NT. This condition may be relaxed by taking advantage of the Kalman filter-based estimation techniques used in this work but additionally requiring the implementation of time-stamping techniques to detect the disorder. From off-line experiences on the WSN, the statistical distribution of the round-trip time delay can be obtained and, hence, τmax. Since, in the present work, UDP is used as the transport layer protocol, the delay distribution may be approximated as a generalized exponential distribution [39]. The consequent probability density function can be expressed as follows:
(2)PτkNT=1ϕe−τkNT−η/ϕ,ifτkNT≥η,0,ifτkNT<η,with the variance of the delay being VτkNT=ϕ2 and its expected value being EτkNT=ϕ+η. The median of the delay may be a viable choice for η, and ϕ can be deduced from η and an experimental value of EτkNT.As is well-known, if UDP is used as the transport layer protocol, packet dropouts may appear. Since this phenomenon is basically random [32], it can be modeled as a Bernoulli distribution [40]. Let us, respectively, indicate the possible sensor-to-controller and controller-to-actuator packet dropouts by means of dsc,kNT and dca,kNT. In the present work, both cases are contemplated as a Bernoulli process, whose probability of dropout is, respectively, given by psc and pca:
(3)psc=Prdsc,kNT=0∈0,1,(4)pca=Prdca,kNT=0∈0,1.


### 2.2. Control Structure

Next, the two components (sensor node and base station) and the signals involved in the energy-efficient control system are detailed.As shown in Figure1, the sensor node includes a UGV as the plant to be controlled, which is composed of two motors (for the right and left wheels) and is subject to noise vkT and disturbance dkT signals. The control action to be applied to the right and left motors is u^r,u^lkT. The output to be sensed is the rotational velocity of both motors wr,wlkNT. This output is sent to the base station when the periodic event-triggered condition defined at the sensor device holds.The base station includes the control algorithm, which integrates a time-varying dual-rate Kalman filter (TVDRKF), a Pure Pursuit path tracking algorithm (which receives the desired path from the reference generator), and a dual-rate controller. In addition, an event-triggered condition is defined in order to decide when the control signal is sent to the actuator located at the sensor node. This condition is assessed only when a sampled output is received from the sensor. Thus, unlike the condition included at the sensor, the condition defined at the base station is not periodically evaluated.Next, the proposed scenario is described (more details can be found in Section3):
(i)
When the periodic event-triggered condition is satisfied at the sensor, a new outputwr,wlkNT is sent to the base station. If no dropout occurs in the sensor-to-controller link, dsc,kNT=1, the output is received at the base station after a delay τsc,kNT. Then, the control algorithm computes the number of NT periods elapsed between the previous and current outputs that are received by the base station. Let us name this amount of NT periods as the multiplicity m of the TVDRKF, which relates the sensing rate 1/NT to the receiving rate at the base station 1/N¯T, where N¯=mN, with N being the multiplicity of the dual-rate sampled-data system. Since the data pattern received by the base station follows a nonuniform scheme, the value m and, in consequence, N¯ are time-varying
(ii)
FromN¯, the gain KN¯ of the TVDRKF can be calculated in order to perform the correction of the estimator, resulting in the estimate of the state, x^k∣kT, where, in general, the notation x^i∣jT will be used to define the estimate of the state xiT based on the sensed process output up to time instant j, being j≤i
(iii)
Fromx^k∣kT, the estimated, corrected output w^r,w^lkNT and a set of N-estimated values inside the period NT for the disturbance signal that affects each motor d^r,d^lkT,d^r,d^lk+1T,⋯,d^r,d^lk+N−1T can be obtained. The set of estimated values of the disturbance will be later used by the dual-rate controller to finally tune the control action
(iv)
Fromw^r,w^lkNT, and xref,yref,θrefkNT, which is the path reference, the Pure Pursuit path tracking algorithm calculates the rotational velocity command (dynamic reference) w^r,ref,w^l,refkNT
(v)
Fromw^r,w^lkNT and w^r,ref,w^l,refkNT, the dual-rate controller is utilized to generate the set of N current, estimated control actions u^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T in order to achieve the desired control performance. The control signal is finally tuned by means of the set of N-estimated values of the disturbance d^r,d^lkT,d^r,d^lk+1T,⋯,d^r,d^lk+N−1T in order to compensate for the actual ones dkT,dk+1T,⋯,dk+N−1T (where a unique signal is considered for both motors)
(vi)
Fromu^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T and the model of the plant, the TVDRKF’s prediction stage can be carried out, giving x^k+N∣kT. Then, the next estimated output w^r,w^lk+1NT and the next set of estimated disturbances d^r,d^lk+NT,d^r,d^lk+N+1T,⋯,d^r,d^lk+2N−1T can be calculated. From the estimated output, and taking into account the next path reference xref,yref,θrefk+1NT, the Pure Pursuit algorithm gets the next dynamic reference w^r,ref,w^l,refk+1NT. Finally, the dual-rate controller is able to compute the next set of N control actions u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+2N−1T from the estimated output, the dynamic reference, and the set of estimated disturbances. By means of this h-step ahead prediction algorithm, a set of hN future, estimated values of the control signal u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+hN−1T can be computed
(vii)
When the event-triggered condition at the base station is satisfied, the current control signalu^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T and the hN future ones u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+hN−1T are sent to the actuator in a packet. If no dropout occurs in the controller-to-actuator link, dca,kNT=1, the whole set of control actions is received at the sensor node after a delay τca,kNT. Therefore, the actuator injects the current control action u^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T and the future ones u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+hN−1T while no new packet is received for the hNT future periods. In each NT period, the actuation occurs at uniformly spaced instants kNT+lT,l=0,1,⋯,N−1, under Zero Order Hold (ZOH) conditions (i.e., u^r,u^lkT is applied at kNT, u^r,u^lk+1T is injected at kNT+T, and so on, up to u^r,u^lk+N−1T, which is actuated at kNT+N−1T). That results in a uniform actuation pattern 0,T,⋯,N−1T inside the sensor period NT. In conclusion, the working mode is to use estimated control actions when no new actual ones are received by the sensor node and is to replace the estimations with the actual actions when the packet is received. As external disturbance and measurement noise are faced by the TVDRKF, and an accurate system model is assumed, estimated and actual values are usually very similar


## 2.1. Time-Varying Network-Induced Delays, Packet Dropouts, and Packet Disorder

As said in the previous section, dual-rate control is used in the proposed approach. Then, two different periods are considered:T as the actuation period and NT as the sensing period, with N∈ℕ+ being the multiplicity between the two periods of the dual-rate control scheme [30]. Let us, respectively, denote .kT and .kNT as a T-period and an NT-period signal or variable, where k∈ℕ are iterations at the corresponding period. For a packet sampled at instant kNT, being effectively sent (i.e., the trigger conditions hold) and not lost, the round-trip time delay is defined as
(1)τkNT=τsc,kNT+τca,kNT+τc,kNT,with τsc,kNT being the sensor-to-controller network-induced delay, τca,kNT the controller-to-actuator delay, and τc,kNT a computation time delay. As a local clock is assumed to govern the different devices located at the sensor node, they can be completely synchronized. As a consequence, in order to measure the round-trip time delay, no additional time-stamping techniques and synchronization are needed. The delay can be measured by subtracting packet sending and receiving times. Note that, although a shared clock can be supposed in some WSN applications (as in this work), it might be hard to satisfy for other applications, for example, in distributed wireless sensor nodes, where an option may be to synchronize nodes [38].To avoid packet disorder, in this work, it is strictly necessary to know the maximum round-trip time delayτmax=maxτkNT such that τmax<NT. This condition may be relaxed by taking advantage of the Kalman filter-based estimation techniques used in this work but additionally requiring the implementation of time-stamping techniques to detect the disorder. From off-line experiences on the WSN, the statistical distribution of the round-trip time delay can be obtained and, hence, τmax. Since, in the present work, UDP is used as the transport layer protocol, the delay distribution may be approximated as a generalized exponential distribution [39]. The consequent probability density function can be expressed as follows:
(2)PτkNT=1ϕe−τkNT−η/ϕ,ifτkNT≥η,0,ifτkNT<η,with the variance of the delay being VτkNT=ϕ2 and its expected value being EτkNT=ϕ+η. The median of the delay may be a viable choice for η, and ϕ can be deduced from η and an experimental value of EτkNT.As is well-known, if UDP is used as the transport layer protocol, packet dropouts may appear. Since this phenomenon is basically random [32], it can be modeled as a Bernoulli distribution [40]. Let us, respectively, indicate the possible sensor-to-controller and controller-to-actuator packet dropouts by means of dsc,kNT and dca,kNT. In the present work, both cases are contemplated as a Bernoulli process, whose probability of dropout is, respectively, given by psc and pca:
(3)psc=Prdsc,kNT=0∈0,1,(4)pca=Prdca,kNT=0∈0,1.


## 2.2. Control Structure

Next, the two components (sensor node and base station) and the signals involved in the energy-efficient control system are detailed.As shown in Figure1, the sensor node includes a UGV as the plant to be controlled, which is composed of two motors (for the right and left wheels) and is subject to noise vkT and disturbance dkT signals. The control action to be applied to the right and left motors is u^r,u^lkT. The output to be sensed is the rotational velocity of both motors wr,wlkNT. This output is sent to the base station when the periodic event-triggered condition defined at the sensor device holds.The base station includes the control algorithm, which integrates a time-varying dual-rate Kalman filter (TVDRKF), a Pure Pursuit path tracking algorithm (which receives the desired path from the reference generator), and a dual-rate controller. In addition, an event-triggered condition is defined in order to decide when the control signal is sent to the actuator located at the sensor node. This condition is assessed only when a sampled output is received from the sensor. Thus, unlike the condition included at the sensor, the condition defined at the base station is not periodically evaluated.Next, the proposed scenario is described (more details can be found in Section3):
(i)
When the periodic event-triggered condition is satisfied at the sensor, a new outputwr,wlkNT is sent to the base station. If no dropout occurs in the sensor-to-controller link, dsc,kNT=1, the output is received at the base station after a delay τsc,kNT. Then, the control algorithm computes the number of NT periods elapsed between the previous and current outputs that are received by the base station. Let us name this amount of NT periods as the multiplicity m of the TVDRKF, which relates the sensing rate 1/NT to the receiving rate at the base station 1/N¯T, where N¯=mN, with N being the multiplicity of the dual-rate sampled-data system. Since the data pattern received by the base station follows a nonuniform scheme, the value m and, in consequence, N¯ are time-varying
(ii)
FromN¯, the gain KN¯ of the TVDRKF can be calculated in order to perform the correction of the estimator, resulting in the estimate of the state, x^k∣kT, where, in general, the notation x^i∣jT will be used to define the estimate of the state xiT based on the sensed process output up to time instant j, being j≤i
(iii)
Fromx^k∣kT, the estimated, corrected output w^r,w^lkNT and a set of N-estimated values inside the period NT for the disturbance signal that affects each motor d^r,d^lkT,d^r,d^lk+1T,⋯,d^r,d^lk+N−1T can be obtained. The set of estimated values of the disturbance will be later used by the dual-rate controller to finally tune the control action
(iv)
Fromw^r,w^lkNT, and xref,yref,θrefkNT, which is the path reference, the Pure Pursuit path tracking algorithm calculates the rotational velocity command (dynamic reference) w^r,ref,w^l,refkNT
(v)
Fromw^r,w^lkNT and w^r,ref,w^l,refkNT, the dual-rate controller is utilized to generate the set of N current, estimated control actions u^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T in order to achieve the desired control performance. The control signal is finally tuned by means of the set of N-estimated values of the disturbance d^r,d^lkT,d^r,d^lk+1T,⋯,d^r,d^lk+N−1T in order to compensate for the actual ones dkT,dk+1T,⋯,dk+N−1T (where a unique signal is considered for both motors)
(vi)
Fromu^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T and the model of the plant, the TVDRKF’s prediction stage can be carried out, giving x^k+N∣kT. Then, the next estimated output w^r,w^lk+1NT and the next set of estimated disturbances d^r,d^lk+NT,d^r,d^lk+N+1T,⋯,d^r,d^lk+2N−1T can be calculated. From the estimated output, and taking into account the next path reference xref,yref,θrefk+1NT, the Pure Pursuit algorithm gets the next dynamic reference w^r,ref,w^l,refk+1NT. Finally, the dual-rate controller is able to compute the next set of N control actions u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+2N−1T from the estimated output, the dynamic reference, and the set of estimated disturbances. By means of this h-step ahead prediction algorithm, a set of hN future, estimated values of the control signal u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+hN−1T can be computed
(vii)
When the event-triggered condition at the base station is satisfied, the current control signalu^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T and the hN future ones u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+hN−1T are sent to the actuator in a packet. If no dropout occurs in the controller-to-actuator link, dca,kNT=1, the whole set of control actions is received at the sensor node after a delay τca,kNT. Therefore, the actuator injects the current control action u^r,u^lkT,u^r,u^lk+1T,⋯,u^r,u^lk+N−1T and the future ones u^r,u^lk+NT,u^r,u^lk+N+1T,⋯,u^r,u^lk+hN−1T while no new packet is received for the hNT future periods. In each NT period, the actuation occurs at uniformly spaced instants kNT+lT,l=0,1,⋯,N−1, under Zero Order Hold (ZOH) conditions (i.e., u^r,u^lkT is applied at kNT, u^r,u^lk+1T is injected at kNT+T, and so on, up to u^r,u^lk+N−1T, which is actuated at kNT+N−1T). That results in a uniform actuation pattern 0,T,⋯,N−1T inside the sensor period NT. In conclusion, the working mode is to use estimated control actions when no new actual ones are received by the sensor node and is to replace the estimations with the actual actions when the packet is received. As external disturbance and measurement noise are faced by the TVDRKF, and an accurate system model is assumed, estimated and actual values are usually very similar


## 3. Energy-Efficient Control Solution Design

Next, each component of the control system is defined in detail.


### 3.1. Plant Modeling

Considering state-space representation, the model of the plant at sampling periodT takes this form:
(5)xp,k+1T=Apxp,kT+Bpu^kT+BpdkT,ykT=Cpxp,kT+vkT,where, for the sake of simplicity, let us name
(i)
ykT as the measurement, that is, the rotational velocity either for the right motor wr,kT or for the left motor wl,kT
(ii)
u^kT as the control signal, regardless of the motor (u^r,kT or u^l,kT)In addition,vkT is the measurement noise, dkT is the disturbance signal, xp,kT is the process state (regardless of the motor), and Ap, Bp, and Cp are matrices with suitable dimensions.UsingZ-transform at period T, the input-output plant model for the control signal (input) and the measurement (output) is represented as a discrete-time transfer function:
(6)Gpz=YTzUTz,with z being the T-unit operator.Given a broadband noisew~kT, the disturbance dkT can be generated through the following dynamics:
(7)xd,k+1T=Adxd,kT+Bdw~kT,dkT=Cdxd,kT,where xd,kT is the disturbance state and Ad, Bd, and Cd are matrices with proper dimensions. Considering (5) and (7), the system can be augmented as follows:
(8)xp,k+1Txd,k+1T=ApBpCd0Adxp,kTxd,kT+Bp0u^kT+0Bdw~kT,ykT=Cp0xp,kTxd,kT+vkT,dkT=0Cdxp,kTxd,kT.Assuming the following notation:(9)A=ApBpCd0Ad,B=Bp0,Bw~=0Bd,C=Cp0,C¯=0Cd,xkT=xp,kTxd,kT,the augmented system in (8) can be expressed as
(10)xk+1T=AxkT+Bu^kT+Bw~w~kT,ykT=CxkT+vkT,dkT=C¯xkT,that admits a lifted representation [41] such as
(11)xk+NT=ANxkT+∑c=0N−1AN−1−cBu^k+cT+∑c=0N−1AN−1−cBw~w~k+cT,ykT=CxkT+vkT,which can be equivalently seen as a dual-rate sampled-data system, where the output at period NT, ykNT, is obtained from a sequence of inputs at period T, u^kT,u^k+1T,⋯,u^k+N−1T.


### 3.2. Event-Triggered Conditions

Let us denoteβkNT∈0,1 as the scheduling variable at the sensor. When βkNT=1, the sensor data ykNT is transmitted, and when βkNT=0, no transmission is carried out. The variable y¯kNT is used to store the latest sensor data in such a way that
(12)y¯kNT=βkNTykNT+1−βkNTy¯k−1NT,fork∈ℕ≥1,where y¯0NT=y0NT. By means of a discrete-time version of the so-called mixed triggered mechanism [42] based on the process output ykNT, the periodic event-triggered condition at the sensor can be implemented. In this way, the measurement ykNT is sent to the base station through the network (i.e., βkNT=1) when
(13)y¯k−1NT−ykNT2>σsykNT2+δs,fork∈ℕ≥1,where y¯0NT=y0NT and σs and δs are positive constants. Note that usually, σs is chosen to take values close to zero or even zero (in any case, smaller than one) [43].Whenβk=1, the control algorithm calculates the control signal u^kT,u^k+1T,⋯,u^k+hN−1T. Let us denote γk∈0,1 as the scheduling variable for the control signal. When γk=1, the signal is transmitted, and when γk=0, no transmission is carried out. The variable u^¯kT is used to store the first value u^kT of the last sent control signal in such a way that
(14)u^¯kT=γku^kT+1−γku^¯k−1T,fork∈ℕ≥1,where u^¯0T=u^0T. By means of the following mixed triggered mechanism, the control signal is transmitted to the sensor node:
(15)u^¯k−1T−u^kT2>σcu^kT2+δc,fork∈ℕ≥1,where u^¯0T=u^0T and σc and δc are positive constants. As previously commented with regard to the choice of σs, note that typically σc is chosen to be less than one.Observe that the feedback loop is only closed from sensor node to base station and back to sensor node, when the conditions (13) and (15) hold (and, hence, βk=γk=1). If one of them is not satisfied (i.e., βk=0 or γk=0), then the control signal is not updated. Nevertheless, the future control actions u^k+NT,⋯,u^k+hN−1T, which were previously sent, can be used by the actuator in order to keep satisfactory control properties.


### 3.3. Time-Varying Dual-Rate Kalman Filter

Consideringw~kT and vkT as zero-mean white noises for the single-rate system in (10), the best linear estimation for xkT in the sense of mean square error is provided by the conventional Kalman filter [44]. When different rates are involved in the control system, a multirate Kalman filter containing corrections and predictions [45] is required. In our work, dual-rate control and periodic event-triggered control (PETC) are integrated in order to save system resources (energy and bandwidth). As a consequence of using PETC, not all the measurements are sent to the base station, which results in a time-varying dual-rate Kalman filter (TVDRKF) [24–26]. From Extended State Observer (ESO) [46] and multirate Kalman filter [45, 47] techniques, the proposed TVDRKF is able to estimate the plant measurement and disturbance, following a nonuniform dual-rate scheme.Taking into account (13), the outputs sampled at the slow rate 1/NT arrive at the base station at a slower rate 1/N¯T in a nonuniform fashion. The multiplicity m=N¯/N of the TVDRKF was previously introduced in Section 2. It can be now enunciated from the previous output received by the base station y¯k−1NT (which was sampled in time, say, klsNT) and the current received output y¯kNT=ykNT. Hence,
(16)m=k−kls.Due to the nonuniform nature of the pattern,m and in consequence N¯ will be time-varying. From the current received output, the TVDRKF can perform the correction (and filtering) stage and then the hN-step ahead state predictions at the fast rate 1/T. In order to do it, the lifted representation in (11) can be taken, replacing N with N¯=mN.From the notationx^i∣jT introduced in Section 2, which is used to denote the estimate of the state xiT based on the output previously sensed at instant j, the correction and prediction stages of the TVDRKF can be designed as follows (illustrated in Figure 2):
(i)
Correction stage: when a new measurement ykNT c is available at time kNT, it can be used to make correction for the prediction x^k∣kNT. Expressing this stage at period T results in
(17)x^k∣kT=x^k∣k−N¯T+KN¯ykT−Cx^k∣k−N¯T,where, from multirate Kalman filter design techniques, the time-varying KN¯ can be calculated:
(18)KN¯=Mk+1CtCMk+1Ct+V−1,Mk+1=AN¯MkAN¯t+We−AN¯MkCtCMkCt+V−1CMkCtAN¯t,where ·t denotes transpose function, V=Covv, and
(19)We=Cov∑c=0N¯−1AN¯−1−cBw~w~k+c=Covwe=Ewewet=∑c=0N¯−1AN¯−1−cBw~W∑c=0N¯−1AN¯−1−cBw~t,where E· denotes the expectation and W=Covw~.
(ii)
Prediction stage: when no new measurement is available between the previous sensed output ykNT and the next sensed output yk+mNT (or, equivalently at period T, between the previous sensed output ykT and the next sensed output yk+N¯T), the best estimates x^k+lkT,l=1,⋯,hN, are obtained from the open-loop dynamic-based prediction:
(20)x^k+lkT=Alx^kkT+∑c=0l−1Al−1−cBu^k+cT,where h must be defined to fulfill hN≥N¯max, with N¯max being the maximum value of N¯. This definition ensures the computation of TVDRKF’s correction stage, since the required ahead state x^k+N¯kT will be available. Moreover, from (20), the set of hN-estimated outputs and disturbances (regardless of the motor) can be calculated:
(21)y^k+lT=Cx^k+lkT,d^k+lT=Cx^k+lkT.Figure 2
Structure of the time-varying dual-rate Kalman filter.


### 3.4. Pure Pursuit Path Tracking Algorithm

From the desired kinematic referencexref,yref,θrefkNT and the plant output generated by the TVDRKF at period NT, y^kNT, which is composed of corrected estimations obtained when measurements are received by the base station (i.e., when the condition (13) holds and, hence, βk=1), the Unmanned Ground Vehicle (UGV) is able to infer its current position using a path tracking algorithm. In this work, Pure Pursuit via odometry technique is chosen. Basically, the Pure Pursuit algorithm tries to determine the velocity and turning conditions at every time interval so that the UGV follows a prescribed trajectory [48]. Odometry is the simplest way for dead reckoning implementation, which is a method used to compute the vehicle’s current position from a previous position, knowing additionally in advance the robot speed and path in a certain period of time. Odometry is usually based on motor rotation considering their encoder measurements.The path tracking algorithm generates the dynamic reference based on the rotational velocity for both wheels, i.e.,w^r,ref,w^l,refkNT≡y^ref,kNT, in order to properly reach the next point of the desired trajectory. The UGV path tracking is composed of a set of h future dynamic references y^ref,kNT,y^ref,k+1NT,⋯,y^ref,k+hNT. In order to establish these references, the trajectory that must be followed by the UGV is required to be known in advance. This task is developed by the reference generator, which is in charge of providing the Pure Pursuit algorithm with the sequence of h-step ahead kinematic references xref,yref,θrefkNT,xref,yref,θrefk+1NT,⋯,xref,yref,θrefk+hNT.


#### 3.4.1. Differential Kinematics

While direct kinematics specifies the positions that the UGV is able to reach by giving the wheel speed, differential kinematics establishes relations between motion (velocity) in joint space and motion (linear/angular velocity) in task space (e.g., Cartesian space). A two-wheel UGV rotates with respect to a point located in some place of the axis, which is shared by the two wheels. This point is known as Instantaneous Rotation Center (IRC), that is, the point with zero velocity at a particular instant of time in a body undergoing planar movement. IRC varies according to wheel speed variations.Each wheel follows a trajectory with the same rotational velocityωR with respect to the IRC. This fact implies that the linear velocity of the wheels are
(22)vr=ωRR+l2,(23)vl=ωRR−l2,where vr and vl are, respectively, the linear velocity for the right and left motors, l is the distance between the two wheels, and R is the distance between the IRC and the middle point of the distance between the wheels. Therefore,
(24)R=l2⋅vl+vrvr−vl,and the rotational velocity of the robot ωR is
(25)ωR=vr−vll.


#### 3.4.2. Path Tracking Algorithm

The Pure Pursuit algorithm is based on the computation of the curvatureγ¯ that a vehicle must adopt from its current position (x,y) to a target position (x+∆x,y+∆y). As depicted in Figure 3, for this purpose, a circle of radius r that joints both points is defined. The center of the circle is placed in x+∆x+d. In addition, the distance to the target point is L. Therefore, it is possible to express
(26)r=Δx+d,L2=Δx2+Δy2,being the curvature
(27)γ¯=Δx2+Δy22Δx,and the so-called Pure Pursuit control law:
(28)k¯=1γ¯=2ΔxL2.Figure 3
Circumference between the current point and the target point.As can be seen, the control lawk¯ is proportional to the lateral shift and inversely proportional to the square of L. Assuming robot coordinates for the current position (xR,yR) and for the target, reference position (xR,ref,yR,ref), and the angle θR as the current vehicle heading, the Pure Pursuit control law k¯ can be expressed as follows:
(29)k¯=2yR,ref−yRcosθR−xR,ref−xRsinθRxR,ref−xR2+yR,ref−yR2.For a desired linear velocityvref, the rotational velocity reference wref can be calculated as
(30)ωref=vrefk¯.The path tracking algorithm requires determining one point located at a minimum distance from the current point, i.e., the so-called Look Ahead Distance (LAD), not considering the nearest points in the prescribed trajectory. This procedure avoids a severe correction, and hence, it leads to a soft movement.Finally, these are the steps to be followed when the main loop of the Pure Pursuit algorithm is implemented (depicted in more detail in Figure4):
(1)
UGV rotational and linear velocity calculation from system output estimations and corrections provided by the TVDRKF at periodNT (i.e., calculation of ωR,kNT and vR,kNT, respectively, from w^r,kNT and w^l,kNT,that is, y^kNT). This is obtained from (22), where R+l/2≈r, with r being the wheel radius, and (25):
(31)vr,kNT=w^r,kNTr,vl,kNT=w^l,kNTr,vR,kNT=vr,kNT+vl,kNT2,ωR,kNT=vr,kNT−vl,kNTl.
(2)
UGV position and orientation computation in the time periodNT:
(32)xR,kNT=xR,k−1NT+vR,kNTNTcosθR,k−1NT+ωR,kNTNT,(33)yR,kNT=yR,k−1NT+vR,kNTNTsinθR,k−1NT+ωR,kNTNT,(34)θR,kNT=θR,k−1NT+ωR,kNTNT,for k∈ℕ≥1, where xR,0NT,yR,0NT, and θR,0NT are the initial position and orientation.
(3)
Generation of the future reference for the robot,xR,ref,yR,refkNT: from the desired kinematic reference and the Look Ahead Distance (LAD), the nearest point to the future path tracking that is located far away from the LAD is calculated
(4)
Control law computation: fromxR,ref,yR,refkNT and xR,yR,θRkNT, the control law k¯ is computed at period NT by using (29), and then, ωrefNT is calculated for each wheel by using (30) and from a desired vrefNT Finally, from these data, w^r,ref,w^l,refkNT≡y^ref,kNT can be calculated:
(35)w^r,refkNT=vrefNT+ωrefNTbr,w^l,refkNT=vrefNT−ωrefNTbr.Figure 4
Structure of the Pure Pursuit path tracking algorithm.


### 3.5. Dual-Rate Controller

In this work, in order to reach the desired control performance, a dual-rate controller is used. FromNT-period signals such as the dynamic reference y^ref,kNT generated by the Pure Pursuit path tracking algorithm and the estimated, corrected output y^kNT obtained by the TVDRKF, the dynamic dual-rate controller computes N control actions at period T for each wheel, UkT=u^kT,u^k+1T,⋯,u^k+N−1T. This control signal is finally tuned by adding the disturbance estimations generated by the TVDRKF at period T, d^kT,d^k+1T,⋯,d^k+N−1T. Following this operation mode for the next h dynamic references and outputs, y^ref,k+1NT,⋯,y^ref,k+hNT and y^k+1NT,⋯,y^k+hNT, respectively, and the next hN disturbances d^k+NT,⋯,d^k+hN−1T, the set of future control actions u^k+NT,⋯,u^k+hN−1T can be obtained.Different alternatives can be followed to design a dual-rate controller (see, e.g., in [29, 30]). In this case, the model-based dual-rate controller design described in [29] is chosen, where the structure of the controller includes (see in Figure 5) the following:
(i)
a slow-rate subcontrollerG1NTzN=u1,kNT/ekNT
(ii)
a digital holdHNT,Tz=u1,kT/u1,kNTT
(iii)
a fast-rate subcontrollerG2Tz=UkT/u1,kTwhere the input of G1NTzN is the error signal ekNT=y^ref,kNT−y^kNT, and note that the output of G1NTzN (i.e., u1,kNT) is expanded u1,kNTT before being injected to the digital hold HNT,Tz. The expanded operation implies filling the slow-rate signal with zeros at the fast-rate instants (more details can be found in [29]). Then, the digital hold obtains its output u1,kT by means of
(36)HNT,Tz=1−z−N1−z−1,which in conclusion results in the subcontroller output u1,kNT repeated N times. From the consideration of Ms as the desired closed-loop control performance of the original continuous-time system design, the subcontrollers G1NTzN and G2Tz will be designed as follows:
(37)G1NTzN=11−MzN,(38)G2Tz=MzGpz,where Gpz was presented in (6) and comes from the discretization of the continuous-time plant model at period T under ZOH conditions and Mz and MzN are the discretization of Ms at periods T and NT, respectively, using ZOH techniques as well. This procedure leads to a behavior that perfectly matches Ms in the sample points at period NT, but sometimes (if NT is too large), it can introduce a ripple between samples. The way to overcome this ripple is also described in [29], and it is based on modifying the fast-rate subcontroller design in this way:
(39)G2Tz=GRz1+GRzGpz,with GRz being the discrete-time version at period T of the original continuous-time controller design. By using (39), the dual-rate controller does not cancel the numerator of the process transfer function Gpz, avoiding the ripple.Figure 5
Structure of the dual-rate controller.


## 3.1. Plant Modeling

Considering state-space representation, the model of the plant at sampling periodT takes this form:
(5)xp,k+1T=Apxp,kT+Bpu^kT+BpdkT,ykT=Cpxp,kT+vkT,where, for the sake of simplicity, let us name
(i)
ykT as the measurement, that is, the rotational velocity either for the right motor wr,kT or for the left motor wl,kT
(ii)
u^kT as the control signal, regardless of the motor (u^r,kT or u^l,kT)In addition,vkT is the measurement noise, dkT is the disturbance signal, xp,kT is the process state (regardless of the motor), and Ap, Bp, and Cp are matrices with suitable dimensions.UsingZ-transform at period T, the input-output plant model for the control signal (input) and the measurement (output) is represented as a discrete-time transfer function:
(6)Gpz=YTzUTz,with z being the T-unit operator.Given a broadband noisew~kT, the disturbance dkT can be generated through the following dynamics:
(7)xd,k+1T=Adxd,kT+Bdw~kT,dkT=Cdxd,kT,where xd,kT is the disturbance state and Ad, Bd, and Cd are matrices with proper dimensions. Considering (5) and (7), the system can be augmented as follows:
(8)xp,k+1Txd,k+1T=ApBpCd0Adxp,kTxd,kT+Bp0u^kT+0Bdw~kT,ykT=Cp0xp,kTxd,kT+vkT,dkT=0Cdxp,kTxd,kT.Assuming the following notation:(9)A=ApBpCd0Ad,B=Bp0,Bw~=0Bd,C=Cp0,C¯=0Cd,xkT=xp,kTxd,kT,the augmented system in (8) can be expressed as
(10)xk+1T=AxkT+Bu^kT+Bw~w~kT,ykT=CxkT+vkT,dkT=C¯xkT,that admits a lifted representation [41] such as
(11)xk+NT=ANxkT+∑c=0N−1AN−1−cBu^k+cT+∑c=0N−1AN−1−cBw~w~k+cT,ykT=CxkT+vkT,which can be equivalently seen as a dual-rate sampled-data system, where the output at period NT, ykNT, is obtained from a sequence of inputs at period T, u^kT,u^k+1T,⋯,u^k+N−1T.


## 3.2. Event-Triggered Conditions

Let us denoteβkNT∈0,1 as the scheduling variable at the sensor. When βkNT=1, the sensor data ykNT is transmitted, and when βkNT=0, no transmission is carried out. The variable y¯kNT is used to store the latest sensor data in such a way that
(12)y¯kNT=βkNTykNT+1−βkNTy¯k−1NT,fork∈ℕ≥1,where y¯0NT=y0NT. By means of a discrete-time version of the so-called mixed triggered mechanism [42] based on the process output ykNT, the periodic event-triggered condition at the sensor can be implemented. In this way, the measurement ykNT is sent to the base station through the network (i.e., βkNT=1) when
(13)y¯k−1NT−ykNT2>σsykNT2+δs,fork∈ℕ≥1,where y¯0NT=y0NT and σs and δs are positive constants. Note that usually, σs is chosen to take values close to zero or even zero (in any case, smaller than one) [43].Whenβk=1, the control algorithm calculates the control signal u^kT,u^k+1T,⋯,u^k+hN−1T. Let us denote γk∈0,1 as the scheduling variable for the control signal. When γk=1, the signal is transmitted, and when γk=0, no transmission is carried out. The variable u^¯kT is used to store the first value u^kT of the last sent control signal in such a way that
(14)u^¯kT=γku^kT+1−γku^¯k−1T,fork∈ℕ≥1,where u^¯0T=u^0T. By means of the following mixed triggered mechanism, the control signal is transmitted to the sensor node:
(15)u^¯k−1T−u^kT2>σcu^kT2+δc,fork∈ℕ≥1,where u^¯0T=u^0T and σc and δc are positive constants. As previously commented with regard to the choice of σs, note that typically σc is chosen to be less than one.Observe that the feedback loop is only closed from sensor node to base station and back to sensor node, when the conditions (13) and (15) hold (and, hence, βk=γk=1). If one of them is not satisfied (i.e., βk=0 or γk=0), then the control signal is not updated. Nevertheless, the future control actions u^k+NT,⋯,u^k+hN−1T, which were previously sent, can be used by the actuator in order to keep satisfactory control properties.


## 3.3. Time-Varying Dual-Rate Kalman Filter

Consideringw~kT and vkT as zero-mean white noises for the single-rate system in (10), the best linear estimation for xkT in the sense of mean square error is provided by the conventional Kalman filter [44]. When different rates are involved in the control system, a multirate Kalman filter containing corrections and predictions [45] is required. In our work, dual-rate control and periodic event-triggered control (PETC) are integrated in order to save system resources (energy and bandwidth). As a consequence of using PETC, not all the measurements are sent to the base station, which results in a time-varying dual-rate Kalman filter (TVDRKF) [24–26]. From Extended State Observer (ESO) [46] and multirate Kalman filter [45, 47] techniques, the proposed TVDRKF is able to estimate the plant measurement and disturbance, following a nonuniform dual-rate scheme.Taking into account (13), the outputs sampled at the slow rate 1/NT arrive at the base station at a slower rate 1/N¯T in a nonuniform fashion. The multiplicity m=N¯/N of the TVDRKF was previously introduced in Section 2. It can be now enunciated from the previous output received by the base station y¯k−1NT (which was sampled in time, say, klsNT) and the current received output y¯kNT=ykNT. Hence,
(16)m=k−kls.Due to the nonuniform nature of the pattern,m and in consequence N¯ will be time-varying. From the current received output, the TVDRKF can perform the correction (and filtering) stage and then the hN-step ahead state predictions at the fast rate 1/T. In order to do it, the lifted representation in (11) can be taken, replacing N with N¯=mN.From the notationx^i∣jT introduced in Section 2, which is used to denote the estimate of the state xiT based on the output previously sensed at instant j, the correction and prediction stages of the TVDRKF can be designed as follows (illustrated in Figure 2):
(i)
Correction stage: when a new measurement ykNT c is available at time kNT, it can be used to make correction for the prediction x^k∣kNT. Expressing this stage at period T results in
(17)x^k∣kT=x^k∣k−N¯T+KN¯ykT−Cx^k∣k−N¯T,where, from multirate Kalman filter design techniques, the time-varying KN¯ can be calculated:
(18)KN¯=Mk+1CtCMk+1Ct+V−1,Mk+1=AN¯MkAN¯t+We−AN¯MkCtCMkCt+V−1CMkCtAN¯t,where ·t denotes transpose function, V=Covv, and
(19)We=Cov∑c=0N¯−1AN¯−1−cBw~w~k+c=Covwe=Ewewet=∑c=0N¯−1AN¯−1−cBw~W∑c=0N¯−1AN¯−1−cBw~t,where E· denotes the expectation and W=Covw~.
(ii)
Prediction stage: when no new measurement is available between the previous sensed output ykNT and the next sensed output yk+mNT (or, equivalently at period T, between the previous sensed output ykT and the next sensed output yk+N¯T), the best estimates x^k+lkT,l=1,⋯,hN, are obtained from the open-loop dynamic-based prediction:
(20)x^k+lkT=Alx^kkT+∑c=0l−1Al−1−cBu^k+cT,where h must be defined to fulfill hN≥N¯max, with N¯max being the maximum value of N¯. This definition ensures the computation of TVDRKF’s correction stage, since the required ahead state x^k+N¯kT will be available. Moreover, from (20), the set of hN-estimated outputs and disturbances (regardless of the motor) can be calculated:
(21)y^k+lT=Cx^k+lkT,d^k+lT=Cx^k+lkT.Figure 2
Structure of the time-varying dual-rate Kalman filter.


## 3.4. Pure Pursuit Path Tracking Algorithm

From the desired kinematic referencexref,yref,θrefkNT and the plant output generated by the TVDRKF at period NT, y^kNT, which is composed of corrected estimations obtained when measurements are received by the base station (i.e., when the condition (13) holds and, hence, βk=1), the Unmanned Ground Vehicle (UGV) is able to infer its current position using a path tracking algorithm. In this work, Pure Pursuit via odometry technique is chosen. Basically, the Pure Pursuit algorithm tries to determine the velocity and turning conditions at every time interval so that the UGV follows a prescribed trajectory [48]. Odometry is the simplest way for dead reckoning implementation, which is a method used to compute the vehicle’s current position from a previous position, knowing additionally in advance the robot speed and path in a certain period of time. Odometry is usually based on motor rotation considering their encoder measurements.The path tracking algorithm generates the dynamic reference based on the rotational velocity for both wheels, i.e.,w^r,ref,w^l,refkNT≡y^ref,kNT, in order to properly reach the next point of the desired trajectory. The UGV path tracking is composed of a set of h future dynamic references y^ref,kNT,y^ref,k+1NT,⋯,y^ref,k+hNT. In order to establish these references, the trajectory that must be followed by the UGV is required to be known in advance. This task is developed by the reference generator, which is in charge of providing the Pure Pursuit algorithm with the sequence of h-step ahead kinematic references xref,yref,θrefkNT,xref,yref,θrefk+1NT,⋯,xref,yref,θrefk+hNT.


### 3.4.1. Differential Kinematics

While direct kinematics specifies the positions that the UGV is able to reach by giving the wheel speed, differential kinematics establishes relations between motion (velocity) in joint space and motion (linear/angular velocity) in task space (e.g., Cartesian space). A two-wheel UGV rotates with respect to a point located in some place of the axis, which is shared by the two wheels. This point is known as Instantaneous Rotation Center (IRC), that is, the point with zero velocity at a particular instant of time in a body undergoing planar movement. IRC varies according to wheel speed variations.Each wheel follows a trajectory with the same rotational velocityωR with respect to the IRC. This fact implies that the linear velocity of the wheels are
(22)vr=ωRR+l2,(23)vl=ωRR−l2,where vr and vl are, respectively, the linear velocity for the right and left motors, l is the distance between the two wheels, and R is the distance between the IRC and the middle point of the distance between the wheels. Therefore,
(24)R=l2⋅vl+vrvr−vl,and the rotational velocity of the robot ωR is
(25)ωR=vr−vll.


### 3.4.2. Path Tracking Algorithm

The Pure Pursuit algorithm is based on the computation of the curvatureγ¯ that a vehicle must adopt from its current position (x,y) to a target position (x+∆x,y+∆y). As depicted in Figure 3, for this purpose, a circle of radius r that joints both points is defined. The center of the circle is placed in x+∆x+d. In addition, the distance to the target point is L. Therefore, it is possible to express
(26)r=Δx+d,L2=Δx2+Δy2,being the curvature
(27)γ¯=Δx2+Δy22Δx,and the so-called Pure Pursuit control law:
(28)k¯=1γ¯=2ΔxL2.Figure 3
Circumference between the current point and the target point.As can be seen, the control lawk¯ is proportional to the lateral shift and inversely proportional to the square of L. Assuming robot coordinates for the current position (xR,yR) and for the target, reference position (xR,ref,yR,ref), and the angle θR as the current vehicle heading, the Pure Pursuit control law k¯ can be expressed as follows:
(29)k¯=2yR,ref−yRcosθR−xR,ref−xRsinθRxR,ref−xR2+yR,ref−yR2.For a desired linear velocityvref, the rotational velocity reference wref can be calculated as
(30)ωref=vrefk¯.The path tracking algorithm requires determining one point located at a minimum distance from the current point, i.e., the so-called Look Ahead Distance (LAD), not considering the nearest points in the prescribed trajectory. This procedure avoids a severe correction, and hence, it leads to a soft movement.Finally, these are the steps to be followed when the main loop of the Pure Pursuit algorithm is implemented (depicted in more detail in Figure4):
(1)
UGV rotational and linear velocity calculation from system output estimations and corrections provided by the TVDRKF at periodNT (i.e., calculation of ωR,kNT and vR,kNT, respectively, from w^r,kNT and w^l,kNT,that is, y^kNT). This is obtained from (22), where R+l/2≈r, with r being the wheel radius, and (25):
(31)vr,kNT=w^r,kNTr,vl,kNT=w^l,kNTr,vR,kNT=vr,kNT+vl,kNT2,ωR,kNT=vr,kNT−vl,kNTl.
(2)
UGV position and orientation computation in the time periodNT:
(32)xR,kNT=xR,k−1NT+vR,kNTNTcosθR,k−1NT+ωR,kNTNT,(33)yR,kNT=yR,k−1NT+vR,kNTNTsinθR,k−1NT+ωR,kNTNT,(34)θR,kNT=θR,k−1NT+ωR,kNTNT,for k∈ℕ≥1, where xR,0NT,yR,0NT, and θR,0NT are the initial position and orientation.
(3)
Generation of the future reference for the robot,xR,ref,yR,refkNT: from the desired kinematic reference and the Look Ahead Distance (LAD), the nearest point to the future path tracking that is located far away from the LAD is calculated
(4)
Control law computation: fromxR,ref,yR,refkNT and xR,yR,θRkNT, the control law k¯ is computed at period NT by using (29), and then, ωrefNT is calculated for each wheel by using (30) and from a desired vrefNT Finally, from these data, w^r,ref,w^l,refkNT≡y^ref,kNT can be calculated:
(35)w^r,refkNT=vrefNT+ωrefNTbr,w^l,refkNT=vrefNT−ωrefNTbr.Figure 4
Structure of the Pure Pursuit path tracking algorithm.


## 3.4.1. Differential Kinematics

While direct kinematics specifies the positions that the UGV is able to reach by giving the wheel speed, differential kinematics establishes relations between motion (velocity) in joint space and motion (linear/angular velocity) in task space (e.g., Cartesian space). A two-wheel UGV rotates with respect to a point located in some place of the axis, which is shared by the two wheels. This point is known as Instantaneous Rotation Center (IRC), that is, the point with zero velocity at a particular instant of time in a body undergoing planar movement. IRC varies according to wheel speed variations.Each wheel follows a trajectory with the same rotational velocityωR with respect to the IRC. This fact implies that the linear velocity of the wheels are
(22)vr=ωRR+l2,(23)vl=ωRR−l2,where vr and vl are, respectively, the linear velocity for the right and left motors, l is the distance between the two wheels, and R is the distance between the IRC and the middle point of the distance between the wheels. Therefore,
(24)R=l2⋅vl+vrvr−vl,and the rotational velocity of the robot ωR is
(25)ωR=vr−vll.


## 3.4.2. Path Tracking Algorithm

The Pure Pursuit algorithm is based on the computation of the curvatureγ¯ that a vehicle must adopt from its current position (x,y) to a target position (x+∆x,y+∆y). As depicted in Figure 3, for this purpose, a circle of radius r that joints both points is defined. The center of the circle is placed in x+∆x+d. In addition, the distance to the target point is L. Therefore, it is possible to express
(26)r=Δx+d,L2=Δx2+Δy2,being the curvature
(27)γ¯=Δx2+Δy22Δx,and the so-called Pure Pursuit control law:
(28)k¯=1γ¯=2ΔxL2.Figure 3
Circumference between the current point and the target point.As can be seen, the control lawk¯ is proportional to the lateral shift and inversely proportional to the square of L. Assuming robot coordinates for the current position (xR,yR) and for the target, reference position (xR,ref,yR,ref), and the angle θR as the current vehicle heading, the Pure Pursuit control law k¯ can be expressed as follows:
(29)k¯=2yR,ref−yRcosθR−xR,ref−xRsinθRxR,ref−xR2+yR,ref−yR2.For a desired linear velocityvref, the rotational velocity reference wref can be calculated as
(30)ωref=vrefk¯.The path tracking algorithm requires determining one point located at a minimum distance from the current point, i.e., the so-called Look Ahead Distance (LAD), not considering the nearest points in the prescribed trajectory. This procedure avoids a severe correction, and hence, it leads to a soft movement.Finally, these are the steps to be followed when the main loop of the Pure Pursuit algorithm is implemented (depicted in more detail in Figure4):
(1)
UGV rotational and linear velocity calculation from system output estimations and corrections provided by the TVDRKF at periodNT (i.e., calculation of ωR,kNT and vR,kNT, respectively, from w^r,kNT and w^l,kNT,that is, y^kNT). This is obtained from (22), where R+l/2≈r, with r being the wheel radius, and (25):
(31)vr,kNT=w^r,kNTr,vl,kNT=w^l,kNTr,vR,kNT=vr,kNT+vl,kNT2,ωR,kNT=vr,kNT−vl,kNTl.
(2)
UGV position and orientation computation in the time periodNT:
(32)xR,kNT=xR,k−1NT+vR,kNTNTcosθR,k−1NT+ωR,kNTNT,(33)yR,kNT=yR,k−1NT+vR,kNTNTsinθR,k−1NT+ωR,kNTNT,(34)θR,kNT=θR,k−1NT+ωR,kNTNT,for k∈ℕ≥1, where xR,0NT,yR,0NT, and θR,0NT are the initial position and orientation.
(3)
Generation of the future reference for the robot,xR,ref,yR,refkNT: from the desired kinematic reference and the Look Ahead Distance (LAD), the nearest point to the future path tracking that is located far away from the LAD is calculated
(4)
Control law computation: fromxR,ref,yR,refkNT and xR,yR,θRkNT, the control law k¯ is computed at period NT by using (29), and then, ωrefNT is calculated for each wheel by using (30) and from a desired vrefNT Finally, from these data, w^r,ref,w^l,refkNT≡y^ref,kNT can be calculated:
(35)w^r,refkNT=vrefNT+ωrefNTbr,w^l,refkNT=vrefNT−ωrefNTbr.Figure 4
Structure of the Pure Pursuit path tracking algorithm.


## 3.5. Dual-Rate Controller

In this work, in order to reach the desired control performance, a dual-rate controller is used. FromNT-period signals such as the dynamic reference y^ref,kNT generated by the Pure Pursuit path tracking algorithm and the estimated, corrected output y^kNT obtained by the TVDRKF, the dynamic dual-rate controller computes N control actions at period T for each wheel, UkT=u^kT,u^k+1T,⋯,u^k+N−1T. This control signal is finally tuned by adding the disturbance estimations generated by the TVDRKF at period T, d^kT,d^k+1T,⋯,d^k+N−1T. Following this operation mode for the next h dynamic references and outputs, y^ref,k+1NT,⋯,y^ref,k+hNT and y^k+1NT,⋯,y^k+hNT, respectively, and the next hN disturbances d^k+NT,⋯,d^k+hN−1T, the set of future control actions u^k+NT,⋯,u^k+hN−1T can be obtained.Different alternatives can be followed to design a dual-rate controller (see, e.g., in [29, 30]). In this case, the model-based dual-rate controller design described in [29] is chosen, where the structure of the controller includes (see in Figure 5) the following:
(i)
a slow-rate subcontrollerG1NTzN=u1,kNT/ekNT
(ii)
a digital holdHNT,Tz=u1,kT/u1,kNTT
(iii)
a fast-rate subcontrollerG2Tz=UkT/u1,kTwhere the input of G1NTzN is the error signal ekNT=y^ref,kNT−y^kNT, and note that the output of G1NTzN (i.e., u1,kNT) is expanded u1,kNTT before being injected to the digital hold HNT,Tz. The expanded operation implies filling the slow-rate signal with zeros at the fast-rate instants (more details can be found in [29]). Then, the digital hold obtains its output u1,kT by means of
(36)HNT,Tz=1−z−N1−z−1,which in conclusion results in the subcontroller output u1,kNT repeated N times. From the consideration of Ms as the desired closed-loop control performance of the original continuous-time system design, the subcontrollers G1NTzN and G2Tz will be designed as follows:
(37)G1NTzN=11−MzN,(38)G2Tz=MzGpz,where Gpz was presented in (6) and comes from the discretization of the continuous-time plant model at period T under ZOH conditions and Mz and MzN are the discretization of Ms at periods T and NT, respectively, using ZOH techniques as well. This procedure leads to a behavior that perfectly matches Ms in the sample points at period NT, but sometimes (if NT is too large), it can introduce a ripple between samples. The way to overcome this ripple is also described in [29], and it is based on modifying the fast-rate subcontroller design in this way:
(39)G2Tz=GRz1+GRzGpz,with GRz being the discrete-time version at period T of the original continuous-time controller design. By using (39), the dual-rate controller does not cancel the numerator of the process transfer function Gpz, avoiding the ripple.Figure 5
Structure of the dual-rate controller.


## 4. Cost Indexes for Control Performance and Resource Usage

In this section, certain cost indexes closely related to control performance and resource usage will be presented. By means of these indexes, the energy-efficient control proposal may be compared with the conventional time-triggered control strategy. Regarding control performance, similar to [49], these three cost indexes will be used:
(i)
J1, which is based on the ℓ2-norm and with a goal to provide a measure about how accurately the path is followed:
(40)J1=∑k=1lmin1≤k′≤lxR,kNT−xref,k′NT2+yR,kNT−yref,k′NT2,where l is the number of iterations required by the UGV to reach the final point of the path; xR,yRkNT is the current UGV position, which was defined in (32) and (33); and xref,yrefk′NT is the nearest kinematic position reference to the current UGV position
(ii)
J2, which is based on the ℓ∞-norm and is defined to know the maximum difference between the desired path and the current UGV position:
(41)J2=max1≤k≤lmin1≤k′≤lxR,kNT−xref,k′NT2+yR,kNT−yref,k′NT2,
(iii)
J3, which measures the total amount of time (in seconds) elapsed to arrive at the final destination:
(42)J3=lNT.To analyze the reduction of the resource usage in the energy-efficient control solution compared to the traditional time-triggered control, the cost indexJ4 is defined by making use of the number of transmitted packets (NoT) in each case: NoTEEC for the energy-efficient control and NoTTTC for the time-triggered control. In this way, J4 (in %) can be expressed as
(43)J4=NoTEECNoTTTC⋅100%.


## 5. Simulation Results via TrueTime

In this section, the main advantages of the energy-efficient control solution compared to the time-triggered one will be shown. The study will be focused on the trade-off between resource usage and control properties. The section is split into two parts. Firstly, important data used for the simulation will be presented (transfer function, delay distribution, control parameters, and so on). Secondly, the cost indexes introduced in Section 4 will be evaluated by means of a TrueTime application [37].


### 5.1. Application Data

Considering a similar model for both wheel motors, the model is described by means of this transfer function:(44)Gps=0.12760.1235s+1,where the output is in rad/s, and the input in V.From previous off-line experiences on this WSN framework [49], different round-trip time delay distributions, which can be modeled such as in (2), lead to considering a maximum time delay τmax slightly less than 200 ms. Then, as commented in Section 2.1, the sensor period is chosen as NT=0.2s in order to ensure no packet disorder. As it will be later detailed, in this case, choosing N=2 allows the UGV to accurately track the path.In this simulation, let us assume the packet dropout probability aspsc=0.1 and pca=0.3 in (3).The discrete-time controller design comes from the discretization at different periods of this continuous-time PID controller, which is designed following classical procedures [50, 51] and this typical configuration:
(45)ut=Kpet+1Ti∫0teτdτ,where Kp=6 and Ti=0.12 in order to achieve some specifications. The single-rate controllers are
(46)GrNTzN=6z+4z−1,(47)GrTz=6z−1z−1,The dual-rate controller is obtained by means of (37) and (39), bringing about
(48)G1NTzN=z2−0.4734z+0.05731z2−1.191z+0.1914,(49)G2Tz=6.576z2−5.78z+1.27z2−0.9578z+0.2394.The disturbance, which is defined at periodT as in (7), is
(50)Ad=0.99930.09994−0.01420.9985,(51)Bd=3.769⋅10−50.7535⋅10−3,Cd=01⋅105.The time-varying dual-rate Kalman filter (TVDRKF) is designed considering the augmented state resulting from the consequent state-space realization (5) for (44) and from the disturbance (50).The positive constants in (13) and (15) for the event-triggered conditions will be, respectively δs=0.01 and σs=0 and δc=0.5 and σc=0.Finally, the reference to be followed includes a sequence of four right angles.


### 5.2. TrueTime Simulation and Cost Function Evaluation

Starting from a time-triggered single-rate control scenario with neither noise nor disturbance and neither time-varying delays nor packet dropouts and using the controller at periodNT=0.2s in (46), some performance worsening is observed when the UGV tries to track the path (depicted in Figure 6) compared to the single-rate version at period T=0.1s in (47) (shown in Figure 7). Let us consider the performance reached at period T as the nominal, desired one. Taking into account the dual-rate controller in (48) and (49), the time-triggered dual-rate control system is able to maintain a satisfactory control performance, very similar to the nominal one (as shown in Figure 8). But, including time-varying delays and packet dropouts, the performance is clearly worsened, becoming unstable (see in Figure 9).Figure 6
Time-triggered single-rate control at periodNT (no noise, no disturbance, no delays, and no dropouts).Figure 7
Time-triggered single-rate control at periodT (no noise, no disturbance, no delays, and no dropouts). Nominal performance.Figure 8
Time-triggered dual-rate control (no noise, no disturbance, no delays, and no dropouts).Figure 9
Dual-rate time-triggered control (no noise and no disturbance but with delays and dropouts).If the TVDRKF is incorporated into the time-triggered dual-rate control system, where packet-based control is also integrated, the performance is clearly improved (illustrated in Figure10), being very similar to the nominal one, despite additionally including both measurement noise and external disturbance. Figure 11 shows that the disturbance estimation accurately follows the actual disturbance.Figure 10
Time-triggered dual-rate control, with TVDRKF, and packet-based control (noise, disturbance, delays, and dropouts).Figure 11
Disturbance estimation by TVDRKF.Finally, event-triggered conditions are added to the WSN, and then, the system becomes a periodic event-triggered dual-rate control system. The performance obtained is similar to that reached by the time-triggered version of the system (see in Figure12), but now a clear reduction of the number of transmitted packets is achieved, which leads to reducing resource usage (bandwidth, energy).Figure 12
Periodic event-triggered dual-rate control, with TVDRKF, and packet-based control (noise, disturbance, delays, and dropouts).To analyze the previous conclusions in more detail, the cost indexes presented in Section 4 are calculated for each scenario. Table1 shows these results, where each scenario is represented by the following letters:
(i)
a: time-triggered single-rate control scenario at periodNT
(ii)
b: time-triggered single-rate control scenario at periodT
(iii)
c: time-triggered dual-rate control scenario
(iv)
d: time-triggered dual-rate control scenario, adding TVDRKF, and packet-based control
(v)
e: periodic event-triggered dual-rate control scenario, with TVDRKF, and packet-based controlTable 1
Cost indexes.
Index
a
b
c
d
e
J1
1671.8
1043.4
1029.9
1030.0
1184.4
J2
44.55
38.76
44.33
44.33
44.97
J3
22.4 s
22.0 s
22.0 s
22.0 s
22.0 s
J4
50%
100%
50%
48.18%
26.13%As previously commented, the desired, nominal performance is presented by scenario b, and hence,J1, J2, and J3 show the reference values to carry out the comparison. As expected, scenario a shows the worst J1, since the desired trajectory is inaccurately followed by the UGV. Scenarios c and d show a similar J1 than scenario b (even 1% better). Scenario e worsens this index J1 by around 13%. Regarding index J2, it is worsened by around 16% by every scenario compared to the nominal performance. However, J3 presents the same value for cases c, d, and e, being 1% worse for scenario a. Finally, as expected, J4 presents the worst case in scenario b, being 50% reduced compared with scenarios a and c because of the network sampling being two times slower and even a bit more than 50% of the reduction (around 52%) in scenario d, due to the additional packet dropouts. Scenario e reaches the best value for index J4 with around 75% of reduction.As a summary, the proposed control approach is able to significantly reduce resource usage (around 75%) while keeping satisfactory control properties, which is only worsened by around 15% on average, and despite the existence of wireless communication problems such as time-varying delays and packet dropouts.


## 5.1. Application Data

Considering a similar model for both wheel motors, the model is described by means of this transfer function:(44)Gps=0.12760.1235s+1,where the output is in rad/s, and the input in V.From previous off-line experiences on this WSN framework [49], different round-trip time delay distributions, which can be modeled such as in (2), lead to considering a maximum time delay τmax slightly less than 200 ms. Then, as commented in Section 2.1, the sensor period is chosen as NT=0.2s in order to ensure no packet disorder. As it will be later detailed, in this case, choosing N=2 allows the UGV to accurately track the path.In this simulation, let us assume the packet dropout probability aspsc=0.1 and pca=0.3 in (3).The discrete-time controller design comes from the discretization at different periods of this continuous-time PID controller, which is designed following classical procedures [50, 51] and this typical configuration:
(45)ut=Kpet+1Ti∫0teτdτ,where Kp=6 and Ti=0.12 in order to achieve some specifications. The single-rate controllers are
(46)GrNTzN=6z+4z−1,(47)GrTz=6z−1z−1,The dual-rate controller is obtained by means of (37) and (39), bringing about
(48)G1NTzN=z2−0.4734z+0.05731z2−1.191z+0.1914,(49)G2Tz=6.576z2−5.78z+1.27z2−0.9578z+0.2394.The disturbance, which is defined at periodT as in (7), is
(50)Ad=0.99930.09994−0.01420.9985,(51)Bd=3.769⋅10−50.7535⋅10−3,Cd=01⋅105.The time-varying dual-rate Kalman filter (TVDRKF) is designed considering the augmented state resulting from the consequent state-space realization (5) for (44) and from the disturbance (50).The positive constants in (13) and (15) for the event-triggered conditions will be, respectively δs=0.01 and σs=0 and δc=0.5 and σc=0.Finally, the reference to be followed includes a sequence of four right angles.


## 5.2. TrueTime Simulation and Cost Function Evaluation

Starting from a time-triggered single-rate control scenario with neither noise nor disturbance and neither time-varying delays nor packet dropouts and using the controller at periodNT=0.2s in (46), some performance worsening is observed when the UGV tries to track the path (depicted in Figure 6) compared to the single-rate version at period T=0.1s in (47) (shown in Figure 7). Let us consider the performance reached at period T as the nominal, desired one. Taking into account the dual-rate controller in (48) and (49), the time-triggered dual-rate control system is able to maintain a satisfactory control performance, very similar to the nominal one (as shown in Figure 8). But, including time-varying delays and packet dropouts, the performance is clearly worsened, becoming unstable (see in Figure 9).Figure 6
Time-triggered single-rate control at periodNT (no noise, no disturbance, no delays, and no dropouts).Figure 7
Time-triggered single-rate control at periodT (no noise, no disturbance, no delays, and no dropouts). Nominal performance.Figure 8
Time-triggered dual-rate control (no noise, no disturbance, no delays, and no dropouts).Figure 9
Dual-rate time-triggered control (no noise and no disturbance but with delays and dropouts).If the TVDRKF is incorporated into the time-triggered dual-rate control system, where packet-based control is also integrated, the performance is clearly improved (illustrated in Figure10), being very similar to the nominal one, despite additionally including both measurement noise and external disturbance. Figure 11 shows that the disturbance estimation accurately follows the actual disturbance.Figure 10
Time-triggered dual-rate control, with TVDRKF, and packet-based control (noise, disturbance, delays, and dropouts).Figure 11
Disturbance estimation by TVDRKF.Finally, event-triggered conditions are added to the WSN, and then, the system becomes a periodic event-triggered dual-rate control system. The performance obtained is similar to that reached by the time-triggered version of the system (see in Figure12), but now a clear reduction of the number of transmitted packets is achieved, which leads to reducing resource usage (bandwidth, energy).Figure 12
Periodic event-triggered dual-rate control, with TVDRKF, and packet-based control (noise, disturbance, delays, and dropouts).To analyze the previous conclusions in more detail, the cost indexes presented in Section 4 are calculated for each scenario. Table1 shows these results, where each scenario is represented by the following letters:
(i)
a: time-triggered single-rate control scenario at periodNT
(ii)
b: time-triggered single-rate control scenario at periodT
(iii)
c: time-triggered dual-rate control scenario
(iv)
d: time-triggered dual-rate control scenario, adding TVDRKF, and packet-based control
(v)
e: periodic event-triggered dual-rate control scenario, with TVDRKF, and packet-based controlTable 1
Cost indexes.
Index
a
b
c
d
e
J1
1671.8
1043.4
1029.9
1030.0
1184.4
J2
44.55
38.76
44.33
44.33
44.97
J3
22.4 s
22.0 s
22.0 s
22.0 s
22.0 s
J4
50%
100%
50%
48.18%
26.13%As previously commented, the desired, nominal performance is presented by scenario b, and hence,J1, J2, and J3 show the reference values to carry out the comparison. As expected, scenario a shows the worst J1, since the desired trajectory is inaccurately followed by the UGV. Scenarios c and d show a similar J1 than scenario b (even 1% better). Scenario e worsens this index J1 by around 13%. Regarding index J2, it is worsened by around 16% by every scenario compared to the nominal performance. However, J3 presents the same value for cases c, d, and e, being 1% worse for scenario a. Finally, as expected, J4 presents the worst case in scenario b, being 50% reduced compared with scenarios a and c because of the network sampling being two times slower and even a bit more than 50% of the reduction (around 52%) in scenario d, due to the additional packet dropouts. Scenario e reaches the best value for index J4 with around 75% of reduction.As a summary, the proposed control approach is able to significantly reduce resource usage (around 75%) while keeping satisfactory control properties, which is only worsened by around 15% on average, and despite the existence of wireless communication problems such as time-varying delays and packet dropouts.


## 6. Conclusions

The proposed energy-efficient control solution for a UGV in a WSN enables lessening the amount of transmissions through the network, which results in bandwidth and battery saving, despite keeping a satisfactory system performance. The solution integrates dual-rate control, periodic event-triggered control, packet-based control, and time-varying dual-rate Kalman filter-based prediction techniques. Additionally, the approach deals with wireless communication problems (such as time-varying delays, packet dropouts, and packet disorder) and copes with a realistic scenario, where measurement noise and external disturbance can occur.



---

*Source: 7085915-2019-10-07.xml*