I Introduction
Coverage control is one of the typical problems in the research field of multirobot systems [4]. The coverage control problem considers the deployment of a network of mobile autonomous robots to optimally cover a specified area. Applications of coverage control involving multiple networked mobile robots (also referred to as a mobile sensor network) include search and rescue operations, surveillance, environmental monitoring, and exploration of hazardous/inaccessible regions. In many of these applications, an appropriate mobile robot of choice is a fixedwing UAV. Fixedwing UAVs can have great endurance in both flight time and range, able to stay in operation for many hours, and can be equipped with a range of different sensors.
The dynamic model of the robots must be considered when designing a distributed control algorithm to solve the coverage control problem. The pioneering work by Cortes et. al [4] considered singleintegrator robot dynamics. In [10], multiple singleintegrator robots covering the same partition of the region are considered. For robots with complex dynamics, e.g. fixedwing UAVs, unicycle models are a more suitable choice to capture the robot dynamics [18, 20]. However, since unicycle models have complex nonholonomic dynamics, control algorithms developed for singleintegrator robot models cannot be readily applied. Our recent work [13] has studied the problem of optimal coverage control of unicycle robots and designed the corresponding controller.
Along with the idea in [4], followup research works [17, 6, 3, 7, 2] mainly focus on continuoustime controller design considering practical constraints from sensing devices or robot dynamics/kinematics. It is worth mentioning that the information required for control is the relative position between the robots, because of which wireless communication might be neglected. However, a multirobot system benefits from information sharing within a wireless network in which each robot acts as a network node [15]. For example, 1) the external localization devices can provide more accurate position information; 2) the environment disturbance to the relative information sensing can be avoided. However, a wireless network is usually resourcelimited in the sense of communication bandwidth. Thus how to design resourceaware control algorithms with a limited number of information exchanges is crucial for applying distributed control algorithms in practice. This motivated the development of distributed eventtriggered control schemes, see, for example, [5, 22, 19, 12]. In an eventtriggered algorithm, the control and communication task is executed only when specific trigger conditions are met with respect to local system states. This approach significantly reduces the cost of communication resources since events are generated aperiodically and adaptively.
Eventbased coverage control is still a relatively new research topic. In [9], a distributed eventtriggered controller was designed for the Voronoi coverage problem. However, their considered robot dynamics are singleintegrators and Zeno behavior cannot be excluded. In [16], a selftriggered mechanism was proposed to achieve both guaranteed and dual guaranteed Voronoi coverage control. The work in [21, 1] follows a similar streamline of [16]. However, their proposed algorithm can be regarded as an extension of discretetime Lloyd descent, which means, continuoustime robot dynamics/kinematics cannot be involved.
In this work, we present distributed control algorithms for optimal coverage problems with unicycletype robots, whose forward speed is constrained as a constant. To help achieve the static coverage objective, and for explicit use in the control algorithm to be designed, we define a virtual rotation center for each robot. The eventbased scheduler computes an input mismatch according to the robots’ states and triggers the control actuation and communication as long as a defined norm of the input mismatch exceeds a statedependent threshold function. By using Lyapunov analysis, we show that the virtual rotation center for each robot asymptotically converges to a centroidal Voronoi tessellation, thus achieving the optimal coverage objective. Our proposed algorithm can also guarantee Zenofree triggering by showing a strictly positive lower bound of the interevent time interval. Meanwhile, we also propose a selftriggered algorithm to overcome the drawback that the eventtriggered algorithm requires continuous measurement of system states. The central idea is to estimate the next triggering time, by utilizing the certain bounds of the speed of the evolution states and the information of the threshold function. Hardware experiments have been conducted to illustrate the correctness of the proposed algorithms and demonstrate their performance.
The remainder of this paper is structured as follows: Section II introduces some preliminaries and provides a formal definition of the problem. Section III presents the eventtriggered and selftriggered control algorithms with detailed theoretical analysis. The designed algorithms are verified by experiments in Section IV. Finally, we conclude this paper in Section V.
Ii Preliminaries and Problem Statement
Iia Notation
The set of complex numbers is denoted by . The imaginary unit is . A complex number is denoted as , where and are its real and imaginary part, respectively. The complex conjugate of is denoted by . For , the scalar product is defined by . The norm of is defined as .
IiB Locational Optimization
This section is based on the results of Cortes et. al [4]. Consider a group of mobile robots, whose dynamics we define in the sequel, tasked with covering a convex polygon in , and let denote an arbitrary point in . A distribution density function is a map that represents a measure of information in . The location of the robot moving in the space is denoted by , and captures the position of all robots. Given a distribution density function that is known to all robots, we define a coverage performance function as
(1) 
The quantity can be considered as a quantitative measure of how poorly a sensor positioned at can sense the event of interest occurring at point .
The minimizing operation inside the integral of the above performance function Eq. (1) induces a Voronoi partition of the polygon . Formally, the Voronoi partition, is defined as follows:
(2) 
The set of regions is called the Voronoi diagram for the generators . Each Voronoi cell is convex. When two Voronoi regions and are adjacent (i.e., they share an edge), robot , with position , is called a neighbor of robot , with position , (and vice versa). The set of indexes of the robots which are Voronoi neighbors of is denoted by . According to the definition of the Voronoi partition, we have for any inside . It follows that, in (1) can be rewritten as
(3) 
The following lemma establishes an important fact regarding the performance function .
Lemma 1 (Lemma 2.1, [4])
The gradient of is given by
(4) 
It follows immediately from Lemma 1 that
For all , define the (generalized) mass , and centroid (or centre of mass) of the Voronoi partition as:
With these definitions, the gradient can now be expressed as
(5) 
Critical points of are those in which every robot is at the centroid of its Voronoi cell. A Voronoi configuration corresponding to critical points of is called a Centroidal Voronoi Tessellation. The objective of this paper is to design a distributed controller for each robot . Then, collectively, the robots can move into positions that establish a Centroidal Voronoi Tessellation.
IiC Unicycle Model with Constant Speed
We choose to model each robot as a unicycle. Unicycle dynamics are appropriate for capturing fixedwing UAVs or groundbased vehicles. The unicycle model for the robot, , is given as
where , are the coordinates of robot in the real plane and is the heading angle (i.e. the forward facing direction of the robot) at time . The forward velocity is by definition strictly positive. In this paper, we assume that it is fixed/constant/nonidentical, and cannot be designed as a control input. In practice, the cruising speed may be the most fuelefficient speed for the robot (which is desirable for long periods of surveillance) or optimal against some other performance measure. The control input is to be designed for steering the orientation of robot . When there is no risk of confusion, we drop the argument .
For analysis purposes, we express the position of robot , , in the complex plane using the complex notation . Then the above unicycle dynamics can be reformulated as
(6) 
In the complex plane, robot ’s instantaneous center of the circular orbit can be given by
(7) 
To help achieve the control objective, and for the explicit use in the control algorithm to be designed, we define for each robot a virtual center , as
(8) 
Here, is a nonzero constant. Differentiating both sides of (8), and substituting in (IIC), the dynamics of the virtual center can be written as:
(9) 
IiD Problem Statement
Given a convex polygon , suppose there are unicycle robots with dynamics given by (IIC), for . Let be the constant forward speed for robot , with not necessarily equal to for , and be the virtual center as defined in (8). Let
be the stacked column vector of all virtual centers
, i.e. . The objective is to design the control input to steer the virtual center of each unicycle robot to a desired Voronoi centroid so that the polygon can be covered optimally in the sense of minimizing the performance function(10) 
That is, we desire
(11) 
Once the virtual center has arrived at the centroid, i.e. (11) has been achieved, each robot will orbit about the centroid with the fixed angular speed . That is, for all , which when combined with the existing assumption that is constant, implies robot is executing a steadystate circular orbit. Since and are not necessarily equal for and , it follows that the robots’ steadystate orbit radii are not necessarily equal.
Liu et. al [13] proposed a continuous controller:
(12) 
where is a positive control gain. Building on this previous approach, we aim to design eventtriggered and selftriggered control algorithms to achieve optimal coverage, which should satisfy the following requirements:

The algorithm is distributed in the sense that only neighbor information is received for each robot to update the controller.

Zeno behavior should be completely excluded for each robot in implementing the control algorithm.

The selftriggered algorithm does not require any continuous measurement of the states.
The following lemma will later be used for stability analysis.
Lemma 2 (Lemma 3, [14])
Consider a continuously differentiable function . If there exist continuous functions and satisfying , then
(13) 
Furthermore, the following statements hold:

If and , then .

If and , then is bounded.
Remark 1
Since fixed wing UAVs can be set to work in different heights, collision avoidance is not a strict requirement here and subject to future work.
Iii Problem analysis and algorithm framework
Iiia EventTriggered Controller Design
Let the event time instants for robot be denoted as , where denoting the set of all nonnegative integers. In this paper, the execution rule is based on actuation errors rather than measurement errors. The control input mismatch for robot is defined as
(14) 
Every time an event is triggered, is reset to be equal to zero. The eventbased control input is described by
(15) 
where . For , is the last event time of robot . Each robot takes into account the last update value of each of its neighbors in its control law. According to the definition of the actuation error (14) we obtain
(16) 
We define an auxiliary variable
(17) 
We consider the following trigger function for each robot:
(19) 
where , , , with . The error term is reset to zero whenever , i.e., the event is triggered. We now present the main result of the eventtriggered control algorithm.
Theorem 1
Consider a group of n unicycletype robots with constant, nonidentical speeds modeled by (IIC) and driven by controller (15). The controller and the trigger function only require neighboring information to update. If each robot updates its input when the designed statedependent trigger function , then their virtual centers converge asymptotically to the set of centroidal Voronoi tessellation (local minimum equilibrium for the coverage performance function) on and no robot exhibits Zeno behavior.
See Appendix.
IiiB SelfTriggered Controller Design
The intuitive idea for a selftriggered algorithm is to estimate the next updating time instant, by using the bounds of the actuation error and the bounds of the comparison threshold. We first illustrate how to compute the bound of . Since the actuation error , the triggering rule can be rewritten as
(20) 
Note that between the eventtriggered control updates, the control input is held constant via the Zeroorder hold technique. This observation motivates us to provide an estimation for , if , using:
(21) 
and the time derivative of is expressed as follows:
where ; represents the update time instants of all the robot ’s neighbors after time instant . represents the latest update time instant for any robot ’s neighbors after time instant ; represent the latest update time instant among the robot ’s neighbors, which is the nearest to the time instant . Hence is the next time when the control input is updated. Thus, the triggering rule is equivalent to
With the auxiliary variable defined in (17), we have
Let , . Since , we have the triggering condition
(22) 
For , we have the positive interexecution time interval
(23) 
where . In the determination of the interexecution time, no continuous measurement of the neighbor’s states, and no continuous computation of the control input is needed. The explanation of the selftriggered rule for each robot can be summarized as: if no state of any neighbors is received in the time interval and there is a positive interexecution time interval such that the triggering condition is satisfied, then the next update time takes place at most time units after . In other words, . Otherwise, if the robot ’s control input is updated due to an update of one of its neighbors for , then the triggering condition needs to be rechecked and the next triggering time is new determined.
We also provide a pseudoalgorithm for illustrative purpose, see Algorithm 1. Here, we let represent the temporary selection for the next triggering time instant . At time instant , robot will measure all the neighbors’ states, send its own states to all the neighbors and its control input will be updated.
Applying the designed selftriggering rule, we have the following theorem:
Theorem 2
Consider a group of n unicycletype robots with constant, nonidentical speeds modeled by (IIC) and driven by the controller (15). If each robot decides when to update its control input according to Algorithm 1, then their virtual centers converge asymptotically to the set of centroidal Voronoi tessellation on and no robot exhibits Zeno behavior.
1) Stability analysis: This part is similar to the proof of the eventbased triggering theorem. The virtual centers of all unicycles will asymptotically converge to the set of centroidal Voronoi tessellations on .
2) Absence of Zeno behavior: When , there always exists a positive interexecution time , then we can conclude that there is no Zeno behavior in the system. When , it indicates that the control input has reached the desired value and the centroidal Voronoi tessellation is achieved.
Iv Experiments
In this section, the results of hardware experiments are provided to illustrate the performance of the proposed eventtriggered and selftriggered algorithms. A video is available in our supplementary materials.
Iva Experimental setup
The structure of our experimental setup is illustrated in Fig. 1. The system comprises a Qualisys multicamera system, a remote workstation and four Arduino mobile rovers. The Qualisys multicamera system provides high precision position and orientation information for the ground robots with up to 300Hz refresh rate. The remote workstation is a Lenovo ThinkPad laptop (Intel i56200U CPU and 8GB RAM), running Ubuntu 16.04 and robot operating system (ROS) kinetic. The mobile robots used in our experiment are Arduino mobile rover with WiFi access, which is a differentially driven robot^{1}^{1}1The complete description of the Arduino mobile rover is referred to Arduino Engineering Kit.. The remote workstation and the Arduino mobile rovers are communicating in a WiFi network, with an ASUS RTAC1750 router.
Our control framework is twolayer. The lower layer runs on the Arduino mobile rover, in which the program interprets the input commands (forward speed and angular speed) to the respective rotational speeds of the two wheels and uses PID controllers to track them. The upper layer runs on the remote workstation, which consists of four ROS nodes. Each ROS node communicates with its neighbors to locally compute the Voronoi partitions (according to [8]) and the eventtriggered and selftriggered control input (15). Then the control commands are transmitted to the Arduino mobile rovers via UDP protocol.
We provide two separate hardware experiments to demonstrate the performances of both eventtriggered and selftriggered algorithms applied in a fourunicycle group. In both experiments, the coverage area is rectangular in the size of . The density function is assumed to be in the experiments. The angular frequency defined in (8) is selected as for all robots. The robots’ forward speeds are set as for all . The selected values of the forward speed and angular speed meet the hardware constraints of the Arduino mobile rover. The initial positions and initial orientations of the robots are manually chosen such that the initial virtual centers locate inside the coverage region.
IvB Experimental results
The experimental results of the eventtriggered controller is shown in Fig. 2, from which one can see that the optimal coverage objective has been successfully achieved. All virtual centers move asymptotically to the set of Centroidal Voronoi Tessellation. All robots move in a circular orbit concerning their virtual center. The trajectories of different robots are represented by solid lines with different colors. We note that the depicted trajectories are the raw data from Qualisys. The evolution of the eventtriggered error and the comparison threshold in (19) is shown in Fig. 3. When the value of the error reaches the threshold, the error is reset to zero and an event is triggered. The control input is updated according to Theorem 1. The red line represents the evolution of the error. It stays below the designed threshold which is shown by the blue line in Fig. 3.
The second experiment illustrates the performance of the selftriggered algorithm. Due to the page limit, we omit the figure about the trajectories of the robots, since it is quite similar to the eventtriggered case. The selftriggered control law can guarantee that the interevent time intervals are lower bounded by a strictly positive constant. Thus, the Zeno behavior is excluded, which can be observed from Fig. 4.
From both experiments, it is observed that the optimal coverage objective can be achieved. The asynchronous feature of both the eventtriggered and selftriggered algorithms are verified.
V Conclusion
In this work, we develop event/selftriggered algorithms for coverage control problems with a group of unicycletype robots to facilitate the efficient usage of the network resource. We firstly propose an eventbased control algorithm, which generates events and control updates when the actuation error diverges to a designed threshold. Zeno behavior can be completely excluded by showing that strictly positive interevent time intervals exist. Then we propose a selftriggered control algorithm to relax the strong assumption that continuous measurement is required for each robot, in which the core idea is to provide an estimation for the next update time instant based on the state and control value at the latest update time. Hardware experiments have been conducted to verify the correctness and performance of our proposed algorithms.
Appendix
The proof is divided into two parts. In the first part, the stability of the system (18) will be analyzed. In the second part, we will show Zeno behavior is excluded. 1) Stability analysis: By using Lem.1 and Eq.(5), the time derivative of the performance function (10) along the trajectory of system (18), is
Because , and are strictly positive, if ,, then for all . Because , it is evident that . Each robot updates its input when , then we have
where is the angle between the vectors and , and .
Note that we can rewrite the performance function (10) as follows (see [4] for more details):
(24) 
where
is the polar moment of inertia of the Voronoi cell
about its centroid . Define(25) 
Then we have
(26) 
Define as the set of for which . We consider the following two cases: 1) ; 2) .
Case 1: . Then we have
(27) 
means . Then from Eq.(12) it is concluded that , which implies . The vector changes its direction with angular frequency . Therefore is nonconstant but is constant.
It is to verify that the set is not the equilibrium of the system.
Case 2: .
Let
Then we can rewrite the Eq.(26) as follows:
(28) 
(29) 
(30) 
By applying Lem.2, we can conclude that
Since is the mass of the Voronoi cell , which is positive, then we have
2) Absence of Zeno behavior:
Definition 1
A solution is said to have a nonvanishing dwell time if there exists such that
(31) 
In other words, the existence of a lower bound for interexecution time intervals is to be proved. Thus it can guarantee the system does not exhibit Zeno behavior. For any , and any , consider the time interval . From the definition of in Eq.(14) and the fact that in the time interval is a constant, we observe the time derivative of satisfies
(32) 
From Eq.(12), we have
then we have
Define the following auxiliary variables:
The system dynamics are assumed to satisfy the following properties:

P(1) There exists a scalar constant such that .

P(2) There exists positive constants for each robot such that .
From Eq.(12), we obtain
(33) 
Then from the assumed properties P(1) and P(2), we have that is upper bounded by a positive value. It is straightforward to see that the term is bounded.
The time derivative of the centroid of the Voronoi cell is given by
(34) 
(35) 
From Eq.(18) we have
(36) 
According to the trigger condition we have . Together with the assumed properties we have that is upper bounded. Analysis similar to .
We note that the work [11] provided the analytic solutions of the partial derivative and . We refer the readers to [11] for more details.
In this paper, we consider the convex polygon in the planar case and that the area the robots need to cover is bounded. So the area of each Voronoi cell is bounded. It is evident that the integration area, in other words, the boundary of the Voronoi cell is bounded. Thus, and are bounded. Then we have
(37) 
The term is bounded. Then we obtain that is bounded. From the above conclusions, it is straightforward to conclude that is bounded. Define a positive constant , which represents the upper bound of . Then, we obtain
It follows that
(38) 
for and for any . Recall the trigger function Eq.(19), and the control input mismatch is reset to zero at . It follows that the next event time is determined by the changing rates of and the threshold . It is evident that
Comments
There are no comments yet.