Next Article in Journal
Sculling Compensation Algorithm for SINS Based on Two-Time Scale Perturbation Model of Inertial Measurements
Next Article in Special Issue
Textile Concentric Ring Electrodes for ECG Recording Based on Screen-Printing Technology
Previous Article in Journal
Hierarchical Discriminant Analysis
Previous Article in Special Issue
Improving Odometric Accuracy for an Autonomous Electric Cart
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

New Control Paradigms for Resources Saving: An Approach for Mobile Robots Navigation

Departamento de Informática y Automática, Universidad Nacional de Educación a Distancia, Juan del Rosal 16, Madrid 28040, Spain
*
Author to whom correspondence should be addressed.
Sensors 2018, 18(1), 281; https://doi.org/10.3390/s18010281
Submission received: 16 December 2017 / Revised: 8 January 2018 / Accepted: 11 January 2018 / Published: 18 January 2018
(This article belongs to the Special Issue State-of-the-Art Sensors Technology in Spain 2017)

Abstract

:
In this work, an event-based control scheme is presented. The proposed system has been developed to solve control problems appearing in the field of Networked Control Systems (NCS). Several models and methodologies have been proposed to measure different resources consumptions. The use of bandwidth, computational load and energy resources have been investigated. This analysis shows how the parameters of the system impacts on the resources efficiency. Moreover, the proposed system has been compared with its equivalent discrete-time solution. In the experiments, an application of NCS for mobile robots navigation has been set up and its resource usage efficiency has been analysed.

Graphical Abstract

1. Introduction

In recent years, Networked Control Systems (NCS) have been gaining importance in the control community [1]. NCS are distributed architectures composed of controllers, sensors that can obtain information from the environment, actuators for acting on them, and a communication network that connects all the elements to achieve a common goal. Therefore, NCS is a field which includes different disciplines such as control theory, communications, software engineering and computer science. Typical applications where these control systems are being used are: space or terrestrial explorations, factory automation, remote diagnostics and troubleshooting, hazardous environments, experimental facilities, mobile robots, multi-vehicles networks, aircraft, manufacturing plant monitoring, nursing homes or hospitals, tele-robotics, tele-operation, etc.
The elements of an NCS system are called the agents. These elements use a communication network to exchange the information between them. Depending on the application where the NCS is used, this network can be deployed using wireline or wireless technology. These communication networks use digital technology to transmit the information which has constraints in delays and limited bandwidth. The information packaging and the constraints due to the limited resources of the network produce undesirable effects such as packet losses, variable delays and signal quantization issues among others. These effects may disturb the stability and performance of the system [2].
Therefore, reducing the traffic in the network is a critical aspect. If the number of packets is decreased can be guaranteed a predictable bandwidth, and at the same time, the analysis of the delays of the network is simplified [3]. As a conclusion, an important issue in the design of these control systems is to implement protocols for transmitting the sensor signals, the state of the system and the control information in a more effective way.
Some researchers have investigated the timing issues in NCS [4]. In traditional approaches, the controllers are used under the assumption of perfect communication, and then, the Maximum Allowable Transfer Interval (MATI) between two subsequent message transmissions that ensures closed loop stability under a network protocol is determined. Try Once Discard (TOD) and Round Robin (RR) are protocols implemented based on this philosophy. On the other hand, the MATI protocol is often deployed in a centralized way, therefore, it is not practical for systems of large-scale.
Other proposals have achieved an important reduction of network resources usage without a significant loss of performance. Two approaches have been raised: Model-Based Networked Control Systems (MBNCS) and Event-Based Control (EBC). The basics of the MBNCS have been developed in [5,6], and they have been considered in networks of coupled systems in [7] using periodic communication. Another approach to deal with this problem has been built on an event-based feedback scheme in NCS [8,9,10,11]. In event-based control systems, the agent information is broadcast only when some measures of the state error cross a specified level (the event threshold). This control scheme is decentralized in the sense that an agent can broadcast its state using the local information and in an asynchronous way.
In an EBC system, the impact of noise in the sensors increases the number of events and therefore a degradation of the performance. If the disturbance is known or can be modeled, the controller can be properly set to reduce its effects. However, in most applications it is difficult either to estimate the noise level or to have a reliable model. In these cases, it becomes a hard work to tune the controller in a proper way. In [12,13] these problems have been investigated where a new control scheme has been proposed which are dynamically adjusted depending on the conditions of the environment. In both proposals, the algorithms work with an estimation of the noise previously calculated. In [14], the estimation of the noise and the tune of the controller is made in real time.
The EBC strategies have been widely used to control dynamical processes while decreasing considerably the number of packets that the sensors have to send to the controller over the network. In [15] the events based on state errors have been investigated. In [16,17,18], similar proposals have been analysed to apply in networked interconnected systems. In these works, the use of a zero-order hold (ZOH) in the controller is a common feature. In [19], an event-triggering in networked systems with probabilistic sensor and actuator fault has been investigated to reduce the computation load. An overview on sampled-data-based event-triggered control and filtering for networked systems has been presented in [20]. In this research, a deep investigation of the sampled data-based event-triggered scheme has been made. In general, the event-based control architectures can be a good solution for the systems with limited resources and they could be a more efficient control scheme than the classical ones [21,22].
In this paper, a new event-based control architecture based on a simple event-based control scheme for NCS environments is presented. Making use of the control strategy implemented a full analysis of different resource consumption is carried out. The use of bandwidth, computational load and energy resources are analysed. Several methods and methodologies to measure the efficiency in the resources consumption are also proposed. The main contributions of this work are the models development of resource consumption and their parametrization. Finally, the ideas presented in this work are applied to an NCS mobile robots system to solve the navigation problem.
The paper is organized as follows. Section 2 presents an overview of the event-based control. In Section 3, the principles of sampling criteria are described. In Section 4, the proposed control strategy is presented. Section 5 shows the resource usage in the proposed system. Section 6 presents the experimental results. Finally, the conclusions and future work are discussed in Section 7.

2. Event-Based Control Overview

The event-based control has motivated the interest of the control community in the last few years, multiple control architectures and new applications have been propossed based on these ideas. In [23], an event-driven sampling method called the area-triggered method has been proposed. In this scheme, sensor data are sent only when the integral of the differences between the current sensor value and the last transmitted one is greater than a given threshold. The proposed system reduces the data transmission rate and also improves the estimation performance in comparison with the conventional time-driven technique. In [24], a greenhouse climate is controlled by an event-based control system. The system is based on a network of wireless sensors to control the low frequency dynamics of the environment. In this case, the control actions are calculated by considering the events that produce the external disturbances. The proposed system increases the actuators life and allows cost savings by minimizing the wear while maintaining a good performance. In [25], an event-based sampling according to a constant energy of sampling error is investigated. The defined criterion is suitable for applications where the energy of the sampling error should be bounded (e.g., in greenhouse climate monitoring and control or in building automation). Finally, in [26], a fault isolation filter to apply on discrete-time networked control systems based on a particular form of the Kalman filter is proposed. The scheme makes an efficient use of the resources with a good estimation of failures and its effect on the performance. The sampled-data-based event-triggered control schemes is another emerging event-based control technique. The reliable control design for networked control system under event-triggered scheme is investigated in [19]. The key idea of this work is that only the newly sampled sensor measurements that violate specified triggering condition will be transmitted to the controller. The main advantage of this approach is that the proposed event-triggered scheme only needs a supervision of the system state in discrete instants and there is no need to retrofit the existing system. Finally, in [20], an overview and a deep investigation on sampled-data-based event-triggered control and filtering for networked systems has been done. Compared with some existing event-triggered and self-triggered schemes, a sampled-data-based event-triggered scheme can ensure a positive minimum inter-event time and make it possible to jointly design suitable feedback controllers and event-triggered threshold parameters.
In event-based control systems, information is exchanged between the elements (controller, sensors and actuators) depending on the state of the system [27]. When the system variables exceed a certain level an event is generated in the system and the control actions are executed. This means that the activity of the controller and the use of resources to communicate the different elements are restricted to the time intervals in which a control action must inevitably be taken to guarantee the system specifications.
In Figure 1, the basic scheme of an event-based control strategy is presented [28,29].
The control scheme is composed of an event detector, an observer, and a control signal generator. The event detector generates an output signal when an event occurs, it happens when the error signal crosses a threshold. When an events occurs, the observer is updated and it passes the information to the control signal generator. With this information, the control signal generator generates the input signal to control the process. An important aspect of this strategy is that the observer and the control signal generator works in open loop between events.
This control architecture combines feedback and feedforward strategies. When an event is generated there is a feedback action. On the other hand, the feedforward actions happen when the actuators are driven by the control signal generator in open loop between events.

3. Event-Based Sampling Schemes

Different sampling criteria have been proposed in the event-based control schemes [27]. In the event-based sampling methods, the system acts only when the variables of the plant are in transient state. In the steady state the system does not act and some resources can be saved. On the other hand, in discrete time schemes the sampling is executed periodically (with the period T = 1 / f s where f s is the sampling frequency) and it does not depend on the state of the system (Figure 2a).
Send-on-delta and integral criterion are the most widely used techniques in event-based control schemes. In the following sections, these methods will be defined and their effectiveness will be discussed.

3.1. Send-On-Delta

The send-on-delta sampling algorithm is the most natural signal-dependent strategy; in the literature, it is also known as level-crossing or deadbands sampling. In the send-on-delta technique, the sensors do not broadcast a new message if the signal remains within a certain level of confidence e ¯ S (resolution) (Figure 2b). The sampling criterion is defined as
| y ( t ) y ( t k ) | e ¯ S
The ratio of events that the send-on-delta algorithm generates can not be calculated in a general way, but its average value N S may be estimated by the following expression [30,31]:
N S = 1 Δ t ¯
where Δ t ¯ is the mean period between events considering the analysis interval ( t 0 , t n )
In the send-on-delta algorithm, an event occurs when
| y ( t k ) y ( t k 1 ) | = e ¯ S , k = 1 , 2 , , n
and the interval time between the events k 1 and k is expressed as
Δ t k = t k t k 1 = e ¯ S | y ˙ ( t k ) | ¯
where | y ˙ ( t k ) | ¯ is defined as
| y ˙ ( t k ) | ¯ = 1 Δ t k t k t k + 1 | y ˙ ( t ) | d t
at this point, the mean period between events Δ t ¯ can be defined as
Δ t ¯ = k = 1 n Δ t k n
in [31], the following relationship has been proven
Δ t ¯ = e ¯ S | y ˙ ( t ) | ¯
where | y ˙ ( t ) | ¯ was defined as
| y ˙ ( t ) | ¯ = 1 t n t 0 t 0 t n | y ˙ ( t ) | d t
taking Equations (2) and (7) into account, the mean rate of events N S can be written as
N S = | y ˙ ( t ) | ¯ e ¯ S
In this case, the ratio of events N S in the system depends on two parameters:
  • the resolution e ¯ S of the sampling (the event threshold); and
  • the mean of the absolute value of the first time-derivative | y ˙ ( t ) | ¯ during the analysis interval.
As presented in Equation (9), the message rate in the send-on-delta strategy is a trade off between the resolution e ¯ S and the average slope of the signal y ( t ) .

3.2. Integral Criterion

There are some reasons to apply the event-based integral criterion in control systems. This method has a high efficiency for sampling burst signals. Likewise, this technique is a good solution in applications where a critical problem of sampling process is the accuracy of approximation of a continuous-time signal by a sequence of discrete-time samples. In this algorithm, the sampling criterion (Figure 2c) is defined by Equation (10), where e ¯ I is the resolution of the method:
t k t | y ( t ) y ( t k ) | d t e ¯ I
then, the mean rate of events N I can be estimated as follows [32]:
The system generates an event when the following condition is satisfied
t k t k + 1 | y ( t ) y ( t k ) | d t = e ¯ I
taking into account the time interval between the events k and k + 1 ( Δ t k = t k + 1 t k ), in [32], it has been demonstrated that the mean period between events considering the interval ( t 0 , t n ) is
Δ t ¯ = k = 1 n Δ t k n = 2 e ¯ I | y ˙ ( t ) | ¯
where | y ˙ ( t ) | ¯ is defined by
| y ˙ ( t ) | ¯ = 1 t n t 0 t 0 t n | y ˙ ( t ) | d t
Finally, the mean rate of events N I based on the integral criterion strategy can be expressed as:
N I = 1 Δ t ¯ = | y ˙ ( t ) | ¯ 2 e ¯ I
Taking Equation (14) into account, the mean rate of events depends on the mean of the square root of the signal derivative absolute value and the resolution e ¯ I used in the algorithm

3.3. Effectiveness of Event-Based Sampling

To study how effective the presented sampling algorithms are, they will be compared with periodic sampling strategies. In the send-on-delta algorithm, the mean rate of events N S was estimated in Equation (9). If the periodic sampling algorithm is considered, the sampling period T can be obtained by Equation (15) where the accuracy of the algorithm is e ¯ P
T = e ¯ P | y ˙ ( t ) | m a x
Now, the ratio of samples N P can be calculated as
N P = 1 T = | y ˙ ( t ) | m a x e ¯ P
If the send-on-delta is compared with the periodic sampling considering the same resolution for both methods ( e ¯ S = e ¯ P ), the following equation is obtained
N S N P = | y ˙ ( t ) | ¯ | y ˙ ( t ) | m a x
In this case, N S = N P if y ( t ) is a linear signal, for the rest of the continuous-time signal N S < N P is fulfilled. The last expression implies that the send-on-delta is more efficient than the periodic sampling algorithm.
Taking into account the integral criterion, the number of samples in the periodic sampling strategy is given by (see [32]):
N P = 2 e ¯ P | y ˙ ( t ) | m a x
If both methods (event-based and periodic) have the same accuracy ( e ¯ I = e ¯ P ), the following equation is obtained from Equations (14) and (18):
N I N P = | y ˙ ( t ) | ¯ | y ˙ ( t ) | m a x
which shows that for the integral criterion the event-based strategy is more efficient than the periodic sampling N I < N P in a general way.
It can be concluded that the event-based sampling algorithms are more efficient than the periodic strategies. It means that the event-based solution generates less events than the periodic sampling scheme.

4. NCS Control Architectures

In this section, two NCS schemes are discussed. First, the classical discrete-time architecture is presented, and then the event-based solution proposed in this work is investigated in detail. In these NCS, the agents (the controller and the remote node) are connected by a wireless network.
The basic scheme of a discrete-time NCS is presented in Figure 3a. The signals u [ n ] (control signal) and y [ n ] (sensor signal) are sampled with the frequency f s . The signal u [ n ] is sent to remote node over the communication channel C h 1 ( t ) . In the remote node, this information is used to act over the actuators. The signal y [ n ] is sent to the controller over the C h 2 ( t ) . Finally, the controller calculates u [ n ] considering the reference signal w [ n ] and y [ n ] . Therefore, this architecture exchanges information over the communication channels every period of time defined by T = 1 / f s . When the plant is in a steady state, it is not necessary to interchange information between the elements of the system because the plant does not need new control actions. However, in this scheme, the communication channels C h 1 ( t ) and C h 2 ( t ) , the controller, the actuators and the sensors are busy every period of time T.
The proposed event-based NCS is presented in Figure 3b. As mentioned above, the proposed system follows the basic principles of an event-based control system, being the evaluation of the consumption of resources the main objective of this work. The system is composed of a controller, an event generator (EG) and a memory block (M). In the EG the signals, y [ n ] and w [ n ] are compared. If the difference between these signals crosses the event threshold e ¯ , the system generates an event k and the signal e [ n k ] (error signal) is sent to the controller. Different methods can be applied to produce events, in [21], a review of these methodologies is presented. In a general way, the event threshold e ¯ is defined as a constant value. This parameter can be defined as a function of the noise in the sensors or as a function of other relevant variables of the process to generate the events in a more accuracy way. In [12,14], these ideas have been explored. Therefore, the event threshold has to be set as a trade off between the accuracy of the system and the number of events. The communication channel C h 2 ( t ) is used to send the signal e [ n k ] to the controller. In this case, the RF channel is occupied only when the EG generates events. On the other hand, when the signals w [ n ] and y [ n ] are very similar, the plant/process is in a steady state. In this case, no events occur in the system and the channel C h 2 ( t ) is free. When the signal u [ n k ] arrives in the remote node it is stored in the memory M. Therefore, every time the system generates an event, the memory is updated with a new value. In the periods of time between events, the information stored in the memory is used to control the remote node. Besides, when an event is generated in the system, the controller receives the signal e [ n k ] and it calculates the signal u [ n k ] . Afterwards, this control signal is sent to the remote node via C h 1 ( t ) . As result of this, the communication resources C h 1 ( t ) and C h 2 ( t ) are used only when the system is generating events.
In general, the communication channels C h 1 ( t ) and C h 2 ( t ) use Industrial, Scientific and Medical (ISM) bands which are not exclusive and many agents may be using them at the same time. When other devices are using the same channel, the interferences, the packet dropouts and an excessive delay in the network could affect the performance of the control system. To avoid these effects, a free channel in the radio link between the remote node and the controller has to be selected. For example, if the 2.4 GHz band is used, there are around 126 available channels so there is a high probability of finding interference-free channels in the wireless network.
As a conclusion, the proposed event-based solution has three main advantages:
  • The RF channels are busy only when the system generates events, see Figure 3c.
  • The controller does not need to compute control signals when the plant is in the steady state.
  • The system is protected from Zeno phenomenons. In the proposed control scheme the events are generated in the system only at certain instants of time (Figure 3c). This behaviour sets a minimum time interval between events defined by 1 / f s . This is a typical mechanism to avoid the Zeno phenomenons in the event-based control systems [33].
In a practical way, to compare the responses of both NCS architectures (discrete-time and event-based), some conditions must be imposed:
  • The clocks of the systems are synchronized (Figure 3c). This implies that the events and the samples in the system are generated at the same instant of time.
  • The accuracy of both systems has to be the same. In this case, the event threshold has to be set up considering the sampling frequency of the discrete-time system and the sampling criterion in the event-based one.

5. Resources Usage

To measure the performance of a control system, the Integral Absolute Error I A E is applied. This criterion is widely used in continuous-time and discrete-time control systems. The I A E calculates the difference between the output of the system ( y ( t ) for continuous-time or y [ n ] for discrete-time) and the reference signal ( w ( t ) or w [ n ] ) by the following equations:
I A E = t 0 t | w ( t ) y ( t ) | d t I A E = n 0 n | w [ n ] y [ n ] |
Therefore, the analysed system has a good performance if the I A E is small.
Another way to evaluate the performance of a control system is by the Integral Absolute Error compared to Periodic loop I A E P . This criterion is mainly used in event-based control systems [34,35]. This indicator compares the output of the event-based system y e v e [ n ] with the output of its equivalent discrete-time system y [ n ] , as presented in Equation (21).
I A E P = n 0 n | y e v e [ n ] y [ n ] |
Although the I A E P is a good criterion to measure the performance of an event-based control system, in practice, many researchers [36,37,38,39,40] use the ratio of events N N . This parameter calculates the activity of an event-based control system versus an equivalent discrete-time control system, the ration of events is given by:
N N = N e v e N p e r
where N e v e is the number of events in the analysed system and N p e r the number of samples in the equivalent discrete-time system. In this case, the number of events can be defined as N e v e = N S Δ T for the send-on-delta algorithm and N e v e = N I Δ T for the integral criterion, where Δ T is the analysis period. In the same way, the number of samples is defined as N p e r = N P Δ T (see Section 3). In this context, if N N < 1 the event-based system has less activity than the equivalent discrete-time system and consequently, it uses less resources. As was previously analysed, the event-based sampling criteria generate less events than the periodic sampling techniques using the same resolution in both methods. It means that N P N E V E (where N E V E = N S if the send-on-delta is used or N E V E = N I if the integral criterion is used (see Equations (17) and (19)). If the analysis period Δ T is taken into account, it can be written N e v e = N E V E Δ T and N p e r = N P Δ T , then the ratio of events is given as:
N N = N e v e N p e r = N E V E N P
where 0 N N 1 .
Using the event efficiency η N , this can be expressed as:
η N = ( 1 N N ) 100
In a general way, if the resolutions in the sampling methods are the same, the activity of the event-based control systems is more efficient than the discrete-time solutions ( 0 % η N 100 % ).
In this work, to analyse the resources usage efficiency, the ratio N R is defined as follows
N R = ( R ) e v e ( R ) d i s
where R indicates which resource is analysed, ( R ) e v e is the usage of the resource R in the event-based control system and ( R ) d i s denotes the usage of the same resource in the equivalent discrete-time control system. In the same way, the efficiency in the usage of the resource R can be expressed as
η R = ( 1 N R ) 100
In the following sections, the usage efficiency of the resources of the control system such as bandwidth, computational load and energy are investigated.

5.1. Bandwidth Usage

The model depicted in Figure 4a has been used to analyse the bandwidth usage.
The information in the uplink direction is p U L = l bits and in the downlink is p D L = m bits. The analysis period Δ T is considered. In this interval time, the discrete-time system generates N p e r samples and the event-based system N e v e events. Then, the bandwidth usage, defined as the number of bits transmitted per second, can be written for the discrete-time system by
( B W U L ) d i s = l N p e r Δ T ; ( B W D L ) d i s = m N p e r Δ T
and for the event-based solution is given by
( B W U L ) e v e = l N e v e Δ T ; ( B W D L ) e v e = m N e v e Δ T
where B W U L and B W D L represent the bandwidth usage in the uplink and in the downlink direction, respectively.
The bandwidth usage ratio for the uplink N B W U L and for the downlink N B W D L can be expressed by the following equations
N B W U L = ( B W U L ) e v e ( B W U L ) d i s = N e v e N p e r = N N
N B W D L = ( B W D L ) e v e ( B W D L ) d i s = N e v e N p e r = N N
considering N B W U L = N B W D L , the bandwidth usage ratio for both directions N B W can be defined as
N B W = N e v e N p e r = N N
and the bandwidth usage efficiency is given by
η B W = η N
As Equation (32) shows, the bandwidth usage efficiency is the same as the event efficiency.

5.2. Computational Load Reduction

To obtain a model of the computational load in the analysed control systems, the scheme depicted in Figure 5 has been used.
The control algorithm is composed of two elements: the algorithm in the controller and the algorithm in the remote node. In the remote node, the algorithm is divided in two blocks, the control algorithm and the polling algorithm. The polling block is used to get the measures from the sensors and in the event-based solution it also generates the events. In the controller, n o C operations are executed each time the algorithm is run. On the other hand, in the remote node, n o R operations are executed in the control algorithm either n o P d when the discrete-time solution is used or n o P e when the event-based technique is selected.
Taking into account the previous assumptions, the computational load in the discrete-time system ( C L ) d i s and in the event-based control system ( C L ) e v e considering the analysis period Δ T can be expressed by
( C L ) d i s = ( n o C + n o R + n o P d ) N p e r Δ T
( C L ) e v e = ( n o C + n o R ) N e v e + n o P e N p e r Δ T
then, the computational load ratio N C L is given by
N C L = ( C L ) e v e ( C L ) d i s = ( n o C + n o R ) N N + n o P e n o C + n o R + n o P d
and the computational load efficiency can be written as
η C L = ( 1 N C L ) 100
In general, if N N increases, the efficiency η C L decreases. If the computational load of the polling algorithms is smaller than the control algorithms ( n o P d < < ( n o C + n o R ) and n o P e < < ( n o C + n o R ) ), N C L N N and η C L η N . On the other hand, when the load of the polling algorithms increases, the computational load ratio ( N C L 1 ) and the event-based control system does not have efficiency in computational load η C L 0 % . As a conclusion, the computational load efficiency of the system has a high dependence on the computational load of the polling algorithms.
From a practical point of view, to evaluate the computational burden of the system a simple procedure has to be followed. First, it is necessary to distinguish which part of the algorithm is executed periodically and which one is executed eventually when the events occur in the system. Then, the parameters n o C , n o R , n o P d and n o P e can be obtained doing a high level analysis of the control algorithm. In Section 6.3.2 and in Appendix A, this procedure has been applied in the application used as practical example in this work.

5.3. Energy Consumption

In this section, the energy efficiency of the presented event-based control system is investigated. In Figure 6, the simplified energy model of the system is depicted.
The electric power in the controller can be obtained adding up the power that the modem needs to transmit and receive the information P M C and the power in the rest of the system of the controller P R C . When the discrete-time system is considered, the power of the controller is given by
P C d i s = P M C N p e r + P M C 1 β β
where β is the power ratio defined by
β = P M C P M C + P R C
Using the same argument, the power of the controller when the event-based architecture is used can be written as
P C d i s = P M C N e v e + P M C 1 β β
Taking into account the analysis period Δ T , the energy usage in the discrete-time controller ( E C ) d i s and for the event-based controller ( E C ) e v e are given by the following equations
( E C ) d i s = P M C N p e r + P M C 1 β β Δ T
( E C ) e v e = P M C N e v e + P M C 1 β β Δ T
and the energy ratio in the controller N E C can be expressed as
N E C = ( E C ) e v e ( E C ) d i s = N e v e β + ( 1 β ) N p e r β + ( 1 β )
and the energy efficiency in the controller can be written as
η E C = ( 1 N E C ) 100
Using the same reasoning in the remote node, the energy usage in the discrete-time implementation ( E R ) d i s and in the event-based solution ( E R ) e v e can be written as
( E R ) d i s = P M R N p e r + P M R 1 γ γ Δ T
( E R ) e v e = P M C N e v e + P M C 1 γ γ Δ T
where γ = P M R P M R + P R R . Then, the energy ratio in the remote system is defined by
N E R = ( E R ) e v e ( E R ) d i s = N e v e γ + ( 1 γ ) N p e r γ + ( 1 γ )
and the energy efficiency in the remote node can be written as
η E R = ( 1 N E R ) 100
If the power of the modem in the controller is high ( β 1 ), the efficiency in energy usage in the proposed event-based system is the event efficiency N E C N N and η E C η N . On the other hand, when the power of this device is low ( β 0 ), the system is not energy efficient, N E C 1 and η E C 0 % . Similar conclusions can be obtained in the remote node considering the parameter γ . In conclusion, the power of the modems determines the energy efficiency of the proposed event-based control scheme.

6. Experimental Results

To check the ideas presented in this work, a test laboratory to investigate wireless control systems has been developed (Figure 7). In this platform, the controller has been implemented in a laptop and the remote nodes are the mobile robots. For this purpose, mOway mobile robots [41] have been used. Using this platform, an analysis of the behaviour of the event-based control schemes presented in this paper is carried out as well as a comparison with their equivalent discrete-time implementation.
The control algorithms have been programmed in C++ for the controller and in the mOway World environment for the robots (Figure 7a). A radio link interface is used to communicate the controller and the robots (Figure 7b). Finally, other applications such as the Tracker, the Matlab/Simulink and some scripts in the controller can be used to analyse the experimental results (Figure 7c).
The structure and components of the robots are depicted in Figure 8. The robots have four infra-red obstacle sensors with a maximum range of 3 cm and a sensor to measure the battery level (Figure 8a). The wireless communication system (robot RF interface (Figure 8b), and PC RF interface (Figure 8c)) works in the worldwide ISM frequency band at 2.400–2.4835 GHz and uses GFSK modulation. In the system 126 channels can be configured, the rate for each channel is 2 Mbps. The angular speeds of the wheels can be varied from 0 to 10.9 rad/s and their geometrical parameters L = 6.6 cm (distance between wheels) and r = 1.6 cm (radius of the wheels).
To analyse the event-based control architecture proposed in this work and its resources usage efficiency, some experiments have been set up. In these experiments robot navigation algorithms will be checked in the laboratory. In the following sections, the proposed navigation algorithms, their implementation in the system and the experimental results will be analysed in detail.

6.1. Navigation Algorithms

In navigation applications for mobile robots, the algorithms such as Go To Goal (GTG), Obstacle Avoidance (OA) and Wall Following (WF) are widely used [42,43,44,45,46]. In these applications, it is also critical to define a precise positioning mechanism to guarantee the convergence of the navigation algorithm [47,48].
In this work, the behaviour and the resource usage of the OA and WF algorithms are investigated in the proposed event-based control architecture. To define the navigation algorithms, the position and the orientation of the obstacle sensors have to be taken into account (Figure 9a). The variables that contain the measurements of the sensors are defined by two indexes as follows: l l lateral left, f l front left, f r front right and l r lateral right. The parameter b l stores the battery level. In the actuators, the linear speeds of the wheels are s l speed left and s r speed right. Finally, the parameter r n (robot number) identifies the robot in the platform.
The sensor information y = ( r n , l l , f l , f r , l r , b l ) and the control signals u = ( s l , s r ) are sent and received by the RF interface, as shown in Figure 9b.
The architecture of the algorithm in the robots is depicted in Figure 10.
The orange arrows represent the discrete-time implementation. The green ones are used for the event-based solution. The discrete-time algorithm works as follows:
  • The navigation speed v n is assigned to s l and s r .
  • The speeds s l and s r are applied to the actuators.
  • The sensors group gets the information from the sensors.
  • The sensor information y is sent to the controller.
  • The control signals u are received from the controller.
  • Finally, the speeds are applied to the robot wheels.
In the event-based solution, Steps 4 and 5 are executed only if the event condition is fulfilled. Furthermore, depending on which algorithm is executing (OA or WF) the event condition will be different. In the following subsections, these aspects and the controller algorithm will be defined in detail.

6.1.1. Obstacles Avoidance Algorithm

In the event-based implementation of the OA algorithm, the event condition is given by
if ( ( f l > e ¯ O A )   OR   ( f r > e ¯ O A )   OR ( l l > e ¯ O A )   OR   ( l r > e ¯ O A ) ) { e v e n t = t r u e } else { e v e n t = f a l s e }
where e ¯ O A is the event threshold. As shown in Equation (48), if any of the obstacle sensors ( f l , f r , l l , l r ) exceeds the value of the event threshold ( e ¯ O A ), an event is generated in the system and the robot sends the sensor information to the controller. The value of the event threshold determines the accuracy of the algorithm and the number of the events that the robot generates. If the threshold value is high, the number of events decreases at the same time as the accuracy of the algorithm does. On the other hand, there will be an inverse behaviour when the value of the event threshold decreases.
The algorithm in the controller is shown in Figure 11 and in Equation (49). In this case, the same algorithm is use for the two implementations (discrete-time and event-based).
if ( C 1 ) { ω = 40 % , v = v n } else if ( C 2 OR C 3 OR C 4 ) { ω = 20 % , v = v n } else if ( C 5 OR C 6 OR C 7 ) { ω = 20 % , v = v n } else if ( C 8 ) { ω = 0 % , v = 0 } else ( C 9 ) { ω = 0 % , v = v n }
where conditions C 1 C 9 are defined by Equations (50)–(58)
if ( l l = 0 AND f l > 0 AND f r > 0 AND l r = 0 ) { C 1 = t r u e }
if ( l l = 0 AND f l > 0 AND f r = 0 AND l r = 0 ) { C 2 = t r u e }
if ( l l > 0 AND f l = 0 AND f r = 0 AND l r = 0 ) { C 3 = t r u e }
if ( l l > 0 AND f l > 0 AND f r = 0 AND l r = 0 ) { C 4 = t r u e }
if ( l l = 0 AND f l = 0 AND f r > 0 AND l r = 0 ) { C 5 = t r u e }
if ( l l = 0 AND f l = 0 AND f r = 0 AND l r > 0 ) { C 6 = t r u e }
if ( l l = 0 AND f l = 0 AND f r > 0 AND l r > 0 ) { C 7 = t r u e }
if ( l l > 0 AND f l > 0 AND f r > 0 AND l r > 0 ) { C 8 = t r u e }
if ( l l = 0 AND f l = 0 AND f r = 0 AND l r = 0 ) { C 9 = t r u e }
In Figure 11, the orange arrows represent the discrete-time solution and the green arrows the proposed event-based control algorithm. This algorithm is parametrized by the linear speed v and the angular speed ω . Theses magnitudes are transformed into wheel speeds s l and s r by
s l = v ω L 2 ω m a x
s r = v + ω L 2 ω m a x
where ω is expressed as a percentage of the angular speed and ω m a x is the maximum angular speed of the robot. Notice that, in this control algorithm, condition C 9 is only executed in the discrete-time implementation.
As presented in Figure 11, the algorithm receives from the robot the sensor information ( f l , f r , l l , l r ). In the discrete-time implementation, this information is received every period of time T = 1 / f s and in the event-based solution when an event is generated in the robot. Depending on the values of the sensors (conditions C 1 to C 9 ), different control actions are taken. In this implementation, ω > 0 represents a turn of the robot to the left, on the contrary ω < 0 does the robot turns to the right. For example, if the right sensors detect an obstacle (the conditions C 5 OR C 6 OR C 7 is fulfilled) the robot must turn to the left. In this case, the control law is defined as ω = 20 % (turn to left) and v = v n (maintain constant linear velocity).

6.1.2. Wall Following Algorithm

Two variants of the WF algorithm are usually implemented: clockwise (CW) or counter-clockwise (CCW) [45]. In this work, the second option has been selected. The event condition in the algorithm is defined by
if ( ( f l > 0 )   OR   ( a b s ( l l w ) > e ¯ W F ) { e v e n t = t r u e } else { e v e n t = f a l s e }
where e ¯ W F represents the event-threshold and the parameter w represents the target distance between the robot and the wall. As presented in Equation (61), if there is an obstacle in front of the robot ( f l > 0 ) or the distance from the robot to the wall exceeds the event threshold ( a b s ( l l w ) > e ¯ W F ), an event is generated in the robot.
The controller algorithm, which is the same in both architectures (discrete-time and event-based), is defined by
if ( ( f l > 0 ) { s l = v n , s r = 0 } else   { s l = ( l l w ) v w + v n , s r = v n }
where v w represents the approach speed to the wall. In this case, the control law is the same for both implementations (discrete-time and event-based). In this algorithm, when there is an obstacle in front of the robot ( f l > = 0 ), the left wheel rotates with a constant speed ( s l = v n ) and the right wheel stops ( s r = 0 ). In any other situation, the speed of the right wheel remains constant ( s r = v n ) and the right wheel is modulated according to v w to maintain a constant distance w to the wall.

6.2. System Activity

In this work, two experiments have been set up, the OA algorithm has been checked in experiment 1 and the FW in experiment 2. In both experiments, the discrete-time architecture was implemented in robot number 1 ( r n = 1 ) and the event-based one in robot number 2 ( r n = 2 ).
The discrete-time system works with a sampling frequency of 10 Hz, and the event-based system uses the send-on-delta sampling method. The obstacles sensors have a maximum change rate ( m c r ) of 3 cm/s. To compare the efficiency of both systems (discrete-time and event-based), they must have the same accuracy. In other words, the precision of the discrete-time system e ¯ P has to be the same as e ¯ S (see Section 3.3). In this case, e ¯ P = m c r / f s and e ¯ S is defined as e ¯ O A for the OA algorithm and as e ¯ W F for the WF algorithm. Taking into account the previous assumptions, the event thresholds were set up to e ¯ O A = e ¯ W F = e ¯ P = m c r / f s = 0.3 cm.
The parameters of the algorithms are presented in Table 1 and Table 2.
In the experiments, the responses of the systems were analysed during fifteen minutes ( Δ T = 15 min). To analyse the activity of the control scheme, the number of samples N p e r in the discrete-time system and the number of events N e v e in the proposed architecture have been measured.
In Figure 12 and Figure 13, some snapshots of the experiment are shown. In both experiments, the robots show a stable behaviour. The control scheme solve the navigation problem in the discrete-time solution r n = 1 as in the event-based implementation r n = 2 .
In Figure 14, the activity of the systems is presented.
In both experiments, the number of samples N p e r in the discrete-time architecture is the same (Figure 14a,b). On the other hand, the number of events N e v e is always smaller than the number of samples N p e r in Equation (17) (Figure 14c,d), as demonstrated in Section 3.3. In this case, the event efficiency η N for the 15 min experiment is 63 % for the OA and 17 % for WF algorithm, as presented in Figure 14e,f and in Table 3.

6.3. Resource Efficiency

In this section, the RF bandwidth, the computational load and the energy consumption in both architectures have been analysed. At the same time, the experimental results are discussed.

6.3.1. RF bandwidth

In each sensor and in each actuator, the transmitted information is a 8 bit code. Taking into account this assumption, the RF uplink (from controller to robot) uses 16 bits and the RF downlink (from robot to controller) needs 48 bits to send a packet of information (see Figure 10). Some additional bits also have to be included to manage the radio interface. In this case, the downlink is the critical link because it needs most of the bandwidth.
The downlink (DL) bandwidth for the two experiments is depicted in Figure 15a,b.
As demonstrated in Section 5.1, the efficiency in the bandwidth usage η B W (Figure 15e,f) is the same as the event efficiency η N (32) (Figure 15c,d). The average bandwidths for each architecture ( ( B W ¯ D L ) d i s , ( B W ¯ D L ) e v e ), the bandwidth usage ratio N B W and the bandwidth usage efficiency η B W are presented in Table 4.
Taking into account these results, the bandwidth efficiency is 63% for the OA algorithm and 17% for the WF one.

6.3.2. Computational Load

To estimate the computational load in both experiments, a high level analysis of the algorithms has been performed. In Table 5, the number of operations for each algorithm is presented.
The parameters n o C , n o R , n o P d and n o P e have been calculated taking into account the high level representation of the algorithms of the robots and the controllers (see Figure 5 and Appendix A). Considering Table 5 and the activity of the system ( N p e r and N e v e ), the computational load for each experiment can be calculated by Equations (33)–(35).
The results for experiments 1 and 2 are depicted in Figure 16.
In experiment 1, the computational load is lower in the event-based implementation than in the discrete-time one (Figure 16a,c). In this case, the computational load efficiency η C L reaches 24% (Figure 16e and Table 6). On the other hand, in experiment 2, the computational load in the event-based solution is higher than the discrete-time one (Figure 16b,d). In this case, the computational load efficiency is −19% (Figure 16f and Table 6).
As discussed in Section 5.2, the computational load has a high dependence on the ratio of events N N and the polling algorithms. In these experiments, the polling algorithms have a small computational load (see Table 5), but the ratio of events is very large especially in the WF algorithm (see Table 3). This is the main reason why the efficiency in WF algorithm is negative. Therefore, the proposed system does not present good results for computational load in the WF algorithm. In this case, the solution could be to modify the event threshold e ¯ W F to improve the efficiency with the inconvenience of reducing the accuracy of the system.

6.3.3. Energy Consumption

In these experiments, the controller has been implemented in a laptop with Windows OS. In this system, it is very complicated to measure the consumed energy by the controller and therefore this consumption has not been considered. On the other hand, in the mOway robot measuring this energy is easy by using the battery level sensor b l .
The results of the experiments are depicted in Figure 17.
As shown in Figure 17a,b, when both experiments end, the battery level in the proposed event-based architecture is higher than in the discrete-time implementation, which means that the proposed system uses less energy than the classical discrete-time solution. The energy used in the robot can be estimated in the discrete-time solution as
( E R ) d i s = 100 % ( B a t t e r y ( % ) ) d i s
and in the event-based architecture by
( E R ) e v e = 100 % ( B a t t e r y ( % ) ) e v e
where ( B a t t e r y ( % ) ) d i s denotes the level of battery measured in sensor b l for the discrete-time solution and ( B a t t e r y ( % ) ) e v e for the event-based one.
In these experiments, the energy ratio in the robot can be obtained directly by N E R = ( E R ) e v e ( E R ) d i s and energy efficiency by η E R = ( 1 N E R ) 100 . The results are presented in Figure 17c,d and Table 7.
In this case, the energy efficiency is 31% for experiment 1 and 14% for experiment 2. The energy consumed by the robot could be directly obtained using the measures of the sensor b l and this has allowed to calculate the energy efficiency directly. On the other hand, using the model developed in Section 5.3, the power ratio γ can be obtained. In these experiments γ < 1 % , this means that the modem of the robot consumes less than 1% of the robots energy. This value is extremely small because the modem has very little power (< 1 mW) and consequently a short range (less than 20 m).
As analysed previously, if the power of the modem increases, the efficiency also increases. In these examples, if the power of the modem is increased (e.g., 100 mW which implies a range of 1 km, γ = 63 % ) the efficiency in the OA algorithm increases from 31% to 62% and in the WF algorithm from 14% to 17%.

7. Conclusions and Future Work

The event-based control architectures presented in this work can be an alternative to the classical discrete-time control systems. The features of these new control schemes help to manage the resources of the system under optimal conditions because they present high efficiency in the resource usage. In a general way, by using a sampling criterion such as the send-on-delta or the integral criterion, the activity of the presented solution can be reduced. In this paper, some new methods have been proposed to analyse the resources usage and the criteria to minimize their consumption. Thus, it can be concluded that these new schemes use fewer resources such as bandwidth, computational load and energy than the classical ones. The ideas presented in this work have been applied to an NCS for mobile robots as a practical approach. The navigation problem was solved using this new control paradigm and it has been compared with a classical discrete-time solution. Finally, the experimental results have demonstrated the stability and the efficiency in the resources usage of the proposed event-based control architecture if it is compared with classical control schemes.
In this work, the effects of the delays, the packet dropouts and the packet disorders in the network have not been analysed. To avoid these undesirable effects that the network produces in the proposed control system a free RF channel is selected to communicate the robots and the controller. This reduces the interference that other agents using the same frequency can produce. To improve the proposed system, a logic-like trigger [49] or other similar ideas could be applied in a simple way. To apply these methods, two main aspects must be previously developed. First, it is necessary to find a stochastic model of the mobile robots. Then, an exhaustive analysis of the network with different levels of congestion must be performed. With this model, an estimation of the delay between the packets and the volume of the disordered packets can be obtained. Finally, once these models have been developed a network-based H∞ filtering using a logic jumping-like trigger could be applied.
As a future work, the proposed strategy and the ideas presented in this paper will be analysed in systems such as Unmanned Aerial Vehicles (UAVs), Autonomous Underwater Vehicles (AUVs) or Legged Mobile Robots (LMRs). Furthermore, new strategies to ensure the stability and the efficiency of these systems will be investigated.

Acknowledgments

This work was supported in part by the UNED project GID2016-6-1, the Spanish Ministry of Economy and Competitiveness under Projects DPI2014-55932-C2-2-R and ENE2015-64914-C3-2-R and FEDER funds.

Author Contributions

Rafael Socas designed the system, performed the experiments, analysed the results and prepared the first draft of the manuscript. Raquel Dormido performed the theoretical conception and planning of the system. The manuscript was revised and modified by Sebastián Dormido.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Pseudocodes of Control Algorithms

In this appendix, the pseudocodes of the following algorithms are presented:
  • Algorithm 1: Code for the discrete-time robot, which is used for Obstacle Avoidance and Wall Following navigation algorithms.
  • Algorithm 2: Code for the event-based robot, which is used for Obstacle Avoidance and Wall Following navigation algorithms.
  • Algorithm 3: Code for the Obstacle Avoidance navigation algorithm, which is used in both architectures (discrete-time and event-based).
  • Algorithm 4: Code for the Wall Following navigation algorithm, which is used in both architectures (discrete-time and event-based).
Algorithm A1 Pseudocode in the discrete-time robot
  • assign   s l v n
  • assign   s r v n
  • while ( true ) do
  • {
  • 1: assign left wheel speed s l
  • 2: assign right wheel speed s r
  • 3: measure obstacle front left sensor f l
  • 4: measure obstacle front right sensor f r
  • 5: measure obstacle lateral left sensor l l
  • 6: measure obstacle lateral right sensor l r
  • 7: measure battery level b l
  • 8: transmit sensor information ( r n , f l , f r , l l , l r , b l )
  • 9: receive control information ( s l , s r )
  • }
Algorithm A2 Pseudocode in the event-based robot
  • assign   s l v n
  • assign   s r v n
  • while ( true ) do
  • {
  • 1: assign left wheel speed s l
  • 2: assign righ twheel speed s r
  • 3: measure obstacle front left sensor f l
  • 4: measure obstacle front right sensor f r
  • 5: measure obstacle lateral left sensor l l
  • 6: measure obstacle lateral right sensor l r
  • 7: measure battery level b l
  • 8: if ( event condition = = true )
  •  {
  • event _ code ( )
  •  }
  • else
  •  {
  •  9: assign   s l v n
  •  10: assign   s r v n
  •  }
  • }
  • event _ code ( )
  • {
  • 1: transmit sensor information ( r n , f l , f r , l l , l r , b l )
  • 2: receive control information ( s l , s r )
  • 3: return ( )
  • }
Algorithm A3 Pseudocode of the OA algorithm in the controller
  • 1: receive obstacle sensor information ( f l , f r , l l , l r )
  • 2: check condition C 1
  • 3: check conditions C 2 , C 3 , C 4
  • 4: check conditions C 5 , C 6 , C 7
  • 5: check condition C 8
  • 6: check condition C 9 // only in the discrete-time scheme
  • 7: calculate ω
  • 8: calculate v
  • 9: transform ( ω , v ) to s l
  • 10: transform ( ω , v ) to s r
  • 11: transmit control information ( s l , s r )
Algorithm A4 Pseudocode of the FW algorithm in the controller
  • 1: receive obstacle sensor information ( f l , f r , l l , l r )
  • 2: check condition ( f l > 0 )
  • 3: calculate s l
  • 4: calculate s r
  • 5: transmit control information ( s l , s r )

References

  1. Guinaldo, M.; Sánchez, J.; Dormido, S. Control en red basado en eventos: De lo centralizado a lo distribuido. Revista Iberoamericana de Automática e Informática Industrial RIAI 2017, 14, 16–30. [Google Scholar] [CrossRef]
  2. Mansano, R.K.; Godoy, E.P.; Porto, A.J. The Benefits of Soft Sensor and Multi-Rate Control for the Implementation of Wireless Networked Control Systems. Sensors 2014, 14, 24441–24461. [Google Scholar] [CrossRef] [PubMed]
  3. Roohi, M.H.; Ghaisari, J.; Izadi, I.; Saidi, H. Discrete-time event-triggered control for wireless networks: Design and network calculus analysis. In Proceedings of the 2015 International Conference on Event-Based Control, Communication, and Signal Processing (EBCCSP), Krakow, Poland, 17–19 June 2015; pp. 1–8. [Google Scholar]
  4. Cloosterman, M.B.; Hetel, L.; Van de Wouw, N.; Heemels, W.; Daafouz, J.; Nijmeijer, H. Controller synthesis for networked control systems. Automatica 2010, 46, 1584–1594. [Google Scholar] [CrossRef]
  5. Montestruque, L.A.; Antsaklis, P.J. State and output feedback control in model-based networked control systems. In Proceedings of the 41st IEEE Conference on Decision and Control, Las Vegas, NV, USA, 10–13 December 2002; Volume 2, pp. 1620–1625. [Google Scholar]
  6. Montestruque, L.A.; Antsaklis, P.J. On the model-based control of networked systems. Automatica 2003, 39, 1837–1843. [Google Scholar] [CrossRef]
  7. Sun, Y.; El-Farra, N.H. Quasi-decentralized model-based networked control of process systems. Comput. Chem. Eng. 2008, 32, 2016–2029. [Google Scholar] [CrossRef]
  8. Tabuada, P. Event-triggered real-time scheduling of stabilizing control tasks. IEEE Trans. Autom. Control 2007, 52, 1680–1685. [Google Scholar] [CrossRef]
  9. Wang, X.; Lemmon, M.D. Event-triggering in distributed networked control systems. IEEE Trans. Autom. Control 2011, 56, 586–601. [Google Scholar] [CrossRef]
  10. Garcia, E.; Antsaklis, P.J. Decentralized model-based event-triggered control of networked systems. In Proceedings of the 2012 American Control Conference (ACC), Montreal, QC, Canada, 27–29 June 2012; pp. 6485–6490. [Google Scholar]
  11. Guinaldo, M.; Dimarogonas, D.V.; Johansson, K.H.; Sánchez, J.; Dormido, S. Distributed event-based control strategies for interconnected linear systems. IET Control Theory Appl. 2013, 7, 877–886. [Google Scholar] [CrossRef]
  12. Romero, J.A.; Pascual, N.J.; Peñarrocha, I.; Sanchis, R. Event-Based PI controller with adaptive thresholds. In Proceedings of the 2012 4th International Congress on Ultra Modern Telecommunications and Control Systems and Workshops (ICUMT), St. Petersburg, Russia, 3–5 October 2012; pp. 219–226. [Google Scholar]
  13. Molin, A.; Hirche, S. Adaptive event-triggered control over a shared network. In Proceedings of the 2012 IEEE 51st IEEE Conference on Decision and Control (CDC), Maui, HI, USA, 10–13 December 2012; pp. 6591–6596. [Google Scholar]
  14. Socas, R.; Dormido, S.; Dormido, R. Event-based controller for noisy environments. In Proceedings of the 2014 Second World Conference on Complex Systems (WCCS), Agadir, Morocco, 10–12 November 2014; pp. 280–285. [Google Scholar]
  15. Anta, A.; Tabuada, P. To sample or not to sample: Self-triggered control for nonlinear systems. IEEE Trans. Autom. Control 2010, 55, 2030–2042. [Google Scholar] [CrossRef]
  16. Wang, X.; Lemmon, M.D. Event-triggering in distributed networked systems with data dropouts and delays. In International Workshop on Hybrid Systems: Computation and Control; Springer: Berlin, Germany, 2009; pp. 366–380. [Google Scholar]
  17. Mazo, M.; Tabuada, P. Decentralized event-triggered control over wireless sensor/actuator networks. IEEE Trans. Autom. Control 2011, 56, 2456–2461. [Google Scholar] [CrossRef]
  18. Dimarogonas, D.V.; Johansson, K.H. Event-triggered control for multi-agent systems. In Proceedings of the 48th IEEE Conference on Decision and Control, 2009 Held Jointly with the 2009 28th Chinese Control Conference, Shanghai, China, 15–18 December 2009; pp. 7131–7136. [Google Scholar]
  19. Liu, J.; Yue, D. Event-triggering in networked systems with probabilistic sensor and actuator faults. Inf. Sci. 2013, 240, 145–160. [Google Scholar] [CrossRef]
  20. Zhang, X.M.; Han, Q.L.; Zhang, B.L. An overview and deep investigation on sampled-data-based event-triggered control and filtering for networked systems. IEEE Trans. Ind. Inform. 2017, 13, 4–16. [Google Scholar] [CrossRef]
  21. Dormido, S.; Sánchez, J.; Kofman, E. Muestreo, control y comunicación basados en eventos. Revista Iberoamericana de Automática e Informática Industrial RIAI 2008, 5, 5–26. [Google Scholar] [CrossRef]
  22. Socas, R.; Dormido, S.; Dormido, R. Event-based control strategy for the guidance of the Aerosonde UAV. In Proceedings of the 2015 European Conference on Mobile Robots (ECMR), Lincoln, UK, 2–4 September 2015; pp. 1–6. [Google Scholar]
  23. Nguyen, V.H.; Suh, Y.S. Networked estimation with an area-triggered transmission method. Sensors 2008, 8, 897–909. [Google Scholar] [CrossRef] [PubMed]
  24. Pawlowski, A.; Guzman, J.L.; Rodríguez, F.; Berenguel, M.; Sánchez, J.; Dormido, S. Simulation of greenhouse climate monitoring and control with wireless sensor network and event-based control. Sensors 2009, 9, 232–252. [Google Scholar] [CrossRef] [PubMed]
  25. Miskowicz, M. Efficiency of event-based sampling according to error energy criterion. Sensors 2010, 10, 2242–2261. [Google Scholar] [CrossRef] [PubMed]
  26. Li, S.; Sauter, D.; Xu, B. Fault isolation filter for networked control system with event-triggered sampling scheme. Sensors 2011, 11, 557–572. [Google Scholar] [CrossRef] [PubMed]
  27. Sánchez, J.; Visioli, A.; Dormido, S. Event-based PID control. In PID Control in the Third Millennium; Springer: Berlin, Germany, 2012; pp. 495–526. [Google Scholar]
  28. Åström, K.J. Event based control. Anal. Des. Nonlinear Control Syst. 2008, 3, 127–147. [Google Scholar]
  29. Lunze, J.; Lehmann, D. A state-feedback approach to event-based control. Automatica 2010, 46, 211–215. [Google Scholar] [CrossRef]
  30. Miskowicz, M. Send-on-delta concept: An event-based data reporting strategy. Sensors 2006, 6, 49–63. [Google Scholar] [CrossRef]
  31. Miskowicz, M. Analytical approximation of the uniform magnitude-driven sampling effectiveness. In Proceedings of the 2004 IEEE International Symposium on Industrial Electronics, Ajaccio, France, 4–7 May 2004; Volume 1, pp. 407–410. [Google Scholar]
  32. Miskowicz, M. Asymptotic effectiveness of the event-based sampling according to the integral criterion. Sensors 2007, 7, 16–37. [Google Scholar] [CrossRef]
  33. Zhu, W.; Jiang, Z.P. Event-based leader-following consensus of multi-agent systems with input time delay. IEEE Trans. Autom. Control 2015, 60, 1362–1367. [Google Scholar] [CrossRef]
  34. Vasyutynskyy, V.; Kabitzsch, K. Simple PID control algorithm adapted to deadband sampling. In Proceedings of the 2007 ETFA. IEEE Conference on Emerging Technologies and Factory Automation, Patras, Greece, 25–28 September 2007; pp. 932–940. [Google Scholar]
  35. Otanez, P.G.; Moyne, J.R.; Tilbury, D.M. Using deadbands to reduce communication in networked control systems. In Proceedings of the 2002 American Control Conference, Anchorage, AK, USA, 8–10 May 2002; Volume 4, pp. 3015–3020. [Google Scholar]
  36. Miskowicz, M. Improving the performance of the networked control system using event-triggered observations. PDS’2004 2004, 37, 53–58. [Google Scholar] [CrossRef]
  37. Pawlowski, A.; Guzmán, J.L.; Rodríguez, F.; Berenguel, M.; Sánchez, J.; Dormido, S. The influence of event-based sampling techniques on data transmission and control performance. In Proceedings of the 2009 ETFA 2009. IEEE Conference on Emerging Technologies & Factory Automation, Mallorca, Spain, 22–25 September 2009; pp. 1–8. [Google Scholar]
  38. Lian, F.L.; Yook, J.K.; Tilbury, D.M.; Moyne, J. Network architecture and communication modules for guaranteeing acceptable control and communication performance for networked multi-agent systems. IEEE Trans. Ind. Inform. 2006, 2, 12–24. [Google Scholar] [CrossRef]
  39. Nguyen, V.H.; Suh, Y.S. A modified multirate controller for networked control systems with a send-on-delta transmission method. In Advanced Intelligent Computing Theories and Applications. With Aspects of Theoretical and Methodological Issues; Springer: Berlin, Germany, 2007; pp. 304–315. [Google Scholar]
  40. Yook, J.K.; Tilbury, D.M.; Soparkar, N.R. Trading computation for bandwidth: Reducing communication in distributed control systems using state estimators. IEEE Trans. Control Syst. Technol. 2002, 10, 503–518. [Google Scholar] [CrossRef]
  41. Valera, A.; Soriano, A.; Vallés, M. Plataformas de Bajo Coste para la Realización de Trabajos Prácticos de Mecatrónica y Robótica. Revista Iberoamericana de Automática e Informática Industrial RIAI 2014, 11, 363–376. [Google Scholar] [CrossRef]
  42. Siegwart, R.; Nourbakhsh, I.R.; Scaramuzza, D. Introduction to Autonomous Mobile Robots; MIT Press: Cambridge, MA, USA, 2011. [Google Scholar]
  43. Nehmzow, U. Robot Behaviour: Design, Description, Analysis and Modelling; Springer Science & Business Media: Berlin, Germany, 2008. [Google Scholar]
  44. Nehmzow, U. Mobile Robotics: A Practical Introduction; Springer Science & Business Media: Berlin, Germany, 2012. [Google Scholar]
  45. Socas, R.; Dormido, S.; Dormido, R.; Fabregas, E. Event-based control strategy for mobile robots in wireless environments. Sensors 2015, 15, 30076–30092. [Google Scholar] [CrossRef] [PubMed]
  46. Socas, R.; Dormido, S.; Dormido, R. Optimal Threshold Setting for Event-Based Control Strategies. IEEE Access 2017, 5, 2880–2893. [Google Scholar] [CrossRef]
  47. Socas, R.; Dormido, S.; Dormido, R.; Fábregas, E. 3D positioning algorithm for low cost mobile robots. In Proceedings of the 2015 12th International Conference on Informatics in Control, Automation and Robotics (ICINCO), Colmar, France, 21–23 July 2015; Volume 2, pp. 5–14. [Google Scholar]
  48. Socas, R.; Dormido, S.; Dormido, R.; Fabregas, E. Improving the 3D positioning for low cost mobile robots. In Proceedings of the Informatics in Control, Automation and Robotics 12th International Conference, Colmar, France, 21–23 July 2015; Revised Selected Papers. Springer: Berlin, Germany, 2016; pp. 97–114. [Google Scholar]
  49. Zhang, X.M.; Han, Q.L. Network-based H∞ filtering using a logic jumping-like trigger. Automatica 2013, 49, 1428–1435. [Google Scholar] [CrossRef]
Figure 1. Basic scheme of an event-based control system. Solid arrows represents continuous signal and dashed arrows represents event-based signals.
Figure 1. Basic scheme of an event-based control system. Solid arrows represents continuous signal and dashed arrows represents event-based signals.
Sensors 18 00281 g001
Figure 2. Sampling strategies: (a) periodic sampling; (b) send-on-delta; and (c) integral criterion.
Figure 2. Sampling strategies: (a) periodic sampling; (b) send-on-delta; and (c) integral criterion.
Sensors 18 00281 g002
Figure 3. NCS control schemes: (a) discrete-time; (b) event-based; and (c) time diagrams. The samples represent the activity of the discrete-time system; for the event-based solution, the activity is represented by the events.
Figure 3. NCS control schemes: (a) discrete-time; (b) event-based; and (c) time diagrams. The samples represent the activity of the discrete-time system; for the event-based solution, the activity is represented by the events.
Sensors 18 00281 g003
Figure 4. Bandwidth utilization model: (a) control architecture; and (b) time diagrams for discrete-time and event-based schemes.
Figure 4. Bandwidth utilization model: (a) control architecture; and (b) time diagrams for discrete-time and event-based schemes.
Sensors 18 00281 g004
Figure 5. Computational resources model.
Figure 5. Computational resources model.
Sensors 18 00281 g005
Figure 6. Energy model for the controller and for the remote node.
Figure 6. Energy model for the controller and for the remote node.
Sensors 18 00281 g006
Figure 7. Laboratory for the experiments: (a) development module; (b) mobile robots environment; and (c) analysing tools.
Figure 7. Laboratory for the experiments: (a) development module; (b) mobile robots environment; and (c) analysing tools.
Sensors 18 00281 g007
Figure 8. Robot platform: (a) components and sensor distribution; (b) robot wireless interface; and (c) PC wireless interface.
Figure 8. Robot platform: (a) components and sensor distribution; (b) robot wireless interface; and (c) PC wireless interface.
Sensors 18 00281 g008
Figure 9. Sensors and actuators of the mOway robot: (a) position and orientation of the IR obstacle sensors ( f l , f r , l l , l r ), the battery sensor ( b l ), and the wheel actuators ( s l , s r ); and (b) flow diagram for the communication between sensors, actuators and the RF interface.
Figure 9. Sensors and actuators of the mOway robot: (a) position and orientation of the IR obstacle sensors ( f l , f r , l l , l r ), the battery sensor ( b l ), and the wheel actuators ( s l , s r ); and (b) flow diagram for the communication between sensors, actuators and the RF interface.
Sensors 18 00281 g009
Figure 10. Robot control algorithm. The orange arrows represent the discrete-time solution and the green arrows the event-based implementation. The blocks with continuous arrows are executed each period of time T and the blocks with dotted arrows when an event is generated in the system.
Figure 10. Robot control algorithm. The orange arrows represent the discrete-time solution and the green arrows the event-based implementation. The blocks with continuous arrows are executed each period of time T and the blocks with dotted arrows when an event is generated in the system.
Sensors 18 00281 g010
Figure 11. Obstacles avoidance algorithm in the controller. The blocks with orange arrows are executed in the discrete-time implementation and those with green arrows in the event-based one.
Figure 11. Obstacles avoidance algorithm in the controller. The blocks with orange arrows are executed in the discrete-time implementation and those with green arrows in the event-based one.
Sensors 18 00281 g011
Figure 12. Snapshots of experiment 1. Positions of the robots at: (a) t = 0 min; (b) t = 5 min; (c) t = 10 min; and (d) t = 15 min.
Figure 12. Snapshots of experiment 1. Positions of the robots at: (a) t = 0 min; (b) t = 5 min; (c) t = 10 min; and (d) t = 15 min.
Sensors 18 00281 g012
Figure 13. Snapshots of experiment 2. Positions of the robots at: (a) t = 0 min; (b) t = 5 min; (c) t = 10 min; and (d) t = 15 min.
Figure 13. Snapshots of experiment 2. Positions of the robots at: (a) t = 0 min; (b) t = 5 min; (c) t = 10 min; and (d) t = 15 min.
Sensors 18 00281 g013
Figure 14. Activity of the systems: number of samples N p e r (a,b); number of events N e v e (c,d); and event efficiency η N (e,f).
Figure 14. Activity of the systems: number of samples N p e r (a,b); number of events N e v e (c,d); and event efficiency η N (e,f).
Sensors 18 00281 g014
Figure 15. Bandwidth efficiency: (a,b) download bandwidth, where orange line represents the discrete-time architecture and the green line the event-based architecture; (c,d) event efficiency η N ; and (e,f) download bandwidth efficiency η B W .
Figure 15. Bandwidth efficiency: (a,b) download bandwidth, where orange line represents the discrete-time architecture and the green line the event-based architecture; (c,d) event efficiency η N ; and (e,f) download bandwidth efficiency η B W .
Sensors 18 00281 g015
Figure 16. Computational load: (a,b) Computational load in the discrete-time implementation, where the bottom bars represent the controller and the top bars the robot; (c,d) computational load in the event-based implementation, where the bottom bars represent the controller and the top bars the robot; and (e,f) event efficiency η N (black line) and computational load efficiency η C L (pink line).
Figure 16. Computational load: (a,b) Computational load in the discrete-time implementation, where the bottom bars represent the controller and the top bars the robot; (c,d) computational load in the event-based implementation, where the bottom bars represent the controller and the top bars the robot; and (e,f) event efficiency η N (black line) and computational load efficiency η C L (pink line).
Sensors 18 00281 g016
Figure 17. Energy consumption: (a,b) battery level, where the orange line represents the battery level in the discrete-time robot, and the green line in the event-based robot; and (c,d) event efficiency η N (black line) and robot energy efficiency η C L (pink line).
Figure 17. Energy consumption: (a,b) battery level, where the orange line represents the battery level in the discrete-time robot, and the green line in the event-based robot; and (c,d) event efficiency η N (black line) and robot energy efficiency η C L (pink line).
Sensors 18 00281 g017
Table 1. Experiment 1: obstacles avoidance algorithm.
Table 1. Experiment 1: obstacles avoidance algorithm.
Architecture rn v n (cm/s) e ¯ OA (cm)
Discrete-time112-
Event-based2120.3
Table 2. Experiment 2: wall following algorithm.
Table 2. Experiment 2: wall following algorithm.
Architecture rn v n (cm/s)w (cm) v w (1/s) e ¯ WF (cm)
Discrete-time1121.5--
Event-based2121.560.3
Table 3. Algorithm activity by architecture, number of samples, number of events, ratio of events and event efficiency.
Table 3. Algorithm activity by architecture, number of samples, number of events, ratio of events and event efficiency.
Algorithm N per N eve N N η N
Obstacles Avoidance954435480.3763%
Wall Following954478890.8317%
Table 4. Bandwidth efficiency.
Table 4. Bandwidth efficiency.
Algorithm ( BW ¯ DL ) dis ( BW ¯ DL ) eve N BW η BW
Obstacles Avoidance509 bps189 bps0.3763%
Wall Following509 bps421 bps0.8317%
Table 5. Algorithm operations.
Table 5. Algorithm operations.
a) OA Algorithm
Architecture no C (ops) no R (ops) no Pd (ops) no Pe (ops)
Discrete-time1145-
Event-based1110-3
b) WF Algorithm
Architecture no C (ops) no R (ops) no Pd (ops) no Pe (ops)
Discrete-time545-
Event-based510-3
Table 6. Computational load efficiency.
Table 6. Computational load efficiency.
Algorithm ( CL ¯ ) dis ( CL ¯ ) eve N CL η CL
Obstacles Avoidance12,725 ops/min9674 ops/min0.7624%
Wall Following8907 ops/min10,570 ops/min1.19−19%
Table 7. Energy efficiency.
Table 7. Energy efficiency.
Algorithm ( ER ) dis ( ER ) eve N ER η ER
Obstacles Avoidance18.09%12.48%0.6931%
Wall Following19.18%16.56%0.8614%

Share and Cite

MDPI and ACS Style

Socas, R.; Dormido, R.; Dormido, S. New Control Paradigms for Resources Saving: An Approach for Mobile Robots Navigation. Sensors 2018, 18, 281. https://doi.org/10.3390/s18010281

AMA Style

Socas R, Dormido R, Dormido S. New Control Paradigms for Resources Saving: An Approach for Mobile Robots Navigation. Sensors. 2018; 18(1):281. https://doi.org/10.3390/s18010281

Chicago/Turabian Style

Socas, Rafael, Raquel Dormido, and Sebastián Dormido. 2018. "New Control Paradigms for Resources Saving: An Approach for Mobile Robots Navigation" Sensors 18, no. 1: 281. https://doi.org/10.3390/s18010281

APA Style

Socas, R., Dormido, R., & Dormido, S. (2018). New Control Paradigms for Resources Saving: An Approach for Mobile Robots Navigation. Sensors, 18(1), 281. https://doi.org/10.3390/s18010281

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop