Formation Tracking Control and Obstacle Avoidance of Unicycle-Type Robots Guaranteeing Continuous Velocities
Next Article in Journal
An Instance Segmentation and Clustering Model for Energy Audit Assessments in Built Environments: A Multi-Stage Approach
Next Article in Special Issue
Path Planning for Autonomous Mobile Robots: A Review
Previous Article in Journal
Random Beam-Based Non-Orthogonal Multiple Access for Low Latency K-User MISO Broadcast Channels
Previous Article in Special Issue
Biped Walking Based on Stiffness Optimization and Hierarchical Quadratic Programming
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Formation Tracking Control and Obstacle Avoidance of Unicycle-Type Robots Guaranteeing Continuous Velocities

by
Jose Bernardo Martinez
1,
Hector M. Becerra
1,* and
David Gomez-Gutierrez
2,3
1
Centro de Investigación en Matemáticas (CIMAT), Jalisco S/N, Guanajuato, Gto. 36023, Mexico
2
Multi-agent Autonomous Systems Lab, Intel Labs, Intel Tecnología de México, Av. del Bosque 1001, Zapopan, Jalisco 45019, Mexico
3
Tecnologico de Monterrey, Escuela de Ingeniería y Ciencias, Av. General Ramón Corona 2514, Zapopan, Jalisco 45201, Mexico
*
Author to whom correspondence should be addressed.
Sensors 2021, 21(13), 4374; https://doi.org/10.3390/s21134374
Submission received: 31 March 2021 / Revised: 18 June 2021 / Accepted: 22 June 2021 / Published: 26 June 2021
(This article belongs to the Special Issue Autonomous Mobile Robots: Real-Time Sensing, Navigation, and Control)

Abstract

:
In this paper, we addressed the problem of controlling the position of a group of unicycle-type robots to follow in formation a time-varying reference avoiding obstacles when needed. We propose a kinematic control scheme that, unlike existing methods, is able to simultaneously solve the both tasks involved in the problem, effectively combining control laws devoted to achieve formation tracking and obstacle avoidance. The main contributions of the paper are twofold: first, the advantages of the proposed approach are not all integrated in existing schemes, ours is fully distributed since the formulation is based on consensus including the leader as part of the formation, scalable for a large number of robots, generic to define a desired formation, and it does not require a global coordinate system or a map of the environment. Second, to the authors’ knowledge, it is the first time that a distributed formation tracking control is combined with obstacle avoidance to solve both tasks simultaneously using a hierarchical scheme, thus guaranteeing continuous robots velocities in spite of activation/deactivation of the obstacle avoidance task, and stability is proven even in the transition of tasks. The effectiveness of the approach is shown through simulations and experiments with real robots.

1. Introduction

Wheeled mobile robots have been one of the most studied robotic platforms due to their applicability and motion capabilities. In the field of multi-agent systems (MAS), control schemes for collaborative wheeled robots have been developed for environmental sensing [1], task allocation for search and rescue [2], coverage control for precision agriculture [3] and object transportation [4], among others. For such applications, different control protocols have been reported in the literature, using centralized methods that depend on a global coordinate system as a first attempt, e.g., [5,6]. In these works, a virtual structure approach is used, where the complete formation is treated as a single rigid body and the motion of the formation is prespecified, i.e., given the trajectory of the formation centroid in global coordinates, the desired motion of each robot is obtained and an individual feedback controller corrects deviations.
Decentralized or distributed control methods are more robust to failures since only local interactions between agents of a network are required [7,8]. Consensus theory has become an essential tool to develop distributed control protocols [9]; the control laws based on consensus rely on the relative state of connected agents (neighbors) in a network. The problem of formation control aims to drive multiple agents to achieve prescribed constraints on their states [10]. In distributed approaches, the formation control is addressed by using relative measurements without relying on global coordinates. Several works have addressed the formation control for a group of nonholonomic mobile robots as a consensus problem by introducing some constant deviations for the relative states. For instance, distributed control schemes to stabilize a group of robots to achieve the desired formation in both position and orientation simultaneously are proposed in [11,12]. A control scheme that generates circular motion around virtual positions to define the desired formation is proposed in [13].
The formation tracking problem for nonholonomic robots has also been addressed using distributed schemes following the same approach based on consensus [9,14]. The aim is that the group of robots moves synchronized by tracking a reference trajectory, usually time-varying [15]. The leader-following configuration is common in the formation tracking problem, where one of the agents acts as a leader [16] or a virtual leader can be defined [17]. Due to the nonholonomic motion constraints of unicycle-type robots, dynamic feedback linearization of the kinematic model has been used to propose nonsingular control laws for the robot position, for instance, in [18]. This kind of linearization has the issue that all the robots’ linear velocities must be non-null. The forward motion of a formation has also been treated in [19] using a two-stage approach. Formation tracking of both position and orientation has been proposed to achieve asymptotic convergence in [20] or globally uniformly ultimately bounded stability in [21]. Other works, as [22,23], have proposed a state transformation to linearize the model of the robots and a distributed observer to estimate the leader’s trajectory. Then, each follower tracks the estimated trajectory using an individual controller. All the previously referred works assume that the group of robots moves in an environment without obstacles and that collisions between agents do not occur.
The capability to deal with fixed obstacles and avoid collisions is essential during the motion of a formation of nonholonomic robots [24]. A distributed collision-free formation control scheme for nonholonomic robots based on potential fields is proposed in [25]. The same problem of formation and the heading consensus is addressed in [26] using a hybrid switching control law. In general, both collision and obstacle avoidance capabilities become more important when the whole formation moves tracking the desired trajectory imposed by a leader. In the work [27], a rotational and repulsive force-based approach is proposed, which is evaluated in V-shape and circular formations. The work [28] addresses formation tracking with multiple leaders, where the team of leaders and followers are fully independent, and only the followers have collision avoidance capability. A control law with prescribed transient and steady-state performance is proposed in [29]. The collision avoidance between the followers is introduced as inequality constraints in the prescribed performance controller. These kinds of constraints are typically used in model predictive control to avoid collisions, which has also been used in formation tracking [30], with the disadvantage of the computational cost to solve the optimization problem. Other works, such as [31], focus on maintaining a rigid formation, for instance, a regular polygon, and the formation is scaled to navigate in an environment with obstacles.
The formation tracking control with obstacle avoidance can be seen as a two-task problem. Most of the described literature addresses the problem by switching between two control laws, one dedicated to the formation task and the other committed to avoiding collisions/obstacles. In [32], a multi-region control scheme for formation tracking with obstacle avoidance and connectivity preservation is proposed. In that work, a different control law is applied depending on the detection of an obstacle within concentric regions around each agent. Therefore, only one task/objective is taken into account at each time instant. In robotics, it is known that the task-function approach [33] allows the design of control laws to deal with problems involving several contradictory objectives. Although the task-function approach has been mainly used for the control of robot manipulators [34], there are examples of its application for triangular formation control of 3D vehicles [35] and formation control of unicycle-type robots [36,37,38]. Nevertheless, all the aforementioned works that have used null-space projectors to solve the formation control of nonholonomic robots are centralized control schemes relying on global measurements. We have presented preliminary results of a priority task-based distributed formation control (without tracking) to deal with obstacles for holonomic robots in the conference work [39].
In this paper, we propose to tackle the two-tasks problem of distributed formation tracking control and obstacle avoidance for unicycle-type robots, in particular differential-drive robots, in the framework of a hierarchical task-based control approach. Static feedback linearization is used to compute the robot velocities for each robot from the motion of a control point. The distributed formation control is addressed as a consensus problem of virtual agents, related to the real agents’ position by desired displacements, such that if the virtual agents achieve consensus, the real agents reach the desired formation. Obstacle avoidance becomes the task with higher priority when an obstacle is within a given security distance. An obstacle can be another agent, such that collisions between agents are avoided, or a fixed object in the environment. Since a security radius is defined for the nearest obstacle to each agent, the method assumes that the obstacles are convex and it is able to deal with polygonal obstacles. The main contributions of this work are the following:
  • The proposed control scheme is fully distributed since it is based on consensus, valid for connected communication topologies, scalable for a large number of robots, and generic to define the desired formation. The computation of the robots’ velocities depends only on relative information of neighboring agents and local measurements to avoid obstacles. Neither a global coordinate system nor a map of the environment is required. The leader is able to track any smooth time-parameterized reference, also avoiding obstacles if needed. The leader is part of the formation, interacting with all the followers, with the advantage that the leader also adapts its motion if the followers perform avoidance actions. Existing approaches of formation tracking with obstacle avoidance are valid for specific formation shapes [27]; the leaders and followers are independent and only the followers can perform collision avoidance [28,29]; some methods focus on rigid-body formation by scaling it to avoid obstacles [31]; and some approaches are computationally costly [30].
  • A task function is proposed for the distributed formation tracking, and it is combined with an obstacle avoidance task using a hierarchical scheme to solve both tasks simultaneously, which to the authors’ knowledge has not been done before in a distributed scheme. The proposed scheme guarantees continuity of the robots’ control inputs when both tasks transit to be activated or deactivated. The stability of both task function errors is proven even in the transition of tasks. Given that the control law’s design is based on the kinematics of a control point for each agent, the proposed control scheme can be easily extended for formation tracking of holonomic agents as UAVs. Existing approaches that are based on the hierarchical task-based approach tackle only the formation control (without tracking) [39] in a centralized fashion [36,37,38]. Moreover, most of the formation schemes with obstacle avoidance are discontinuous switching approaches, e.g., [24,26,32], or require a careful tuning of the weight of the different terms of both tasks [25,27].
  • The proposed approach is evaluated through realistic simulations using a dynamic simulator in environments with obstacles and in real experiments with differential-drive robots. Few works on distributed formation control of nonholonomic robots have reported results in real robots, e.g., [5,13,22], but none of them solve the formation tracking with obstacle avoidance.
As a summary, we highlight some advantages of the proposed scheme with respect to different existing approaches. One classical approach is the artificial potential-based approach, which is used in [25]. With respect to that work, our approach does not require to predefine the desired position or trajectory of the whole team of robots, nor to know a map of the environment to build the potential functions. Our control law is not a direct sum of controllers for each task that might cancel in the case of conflicting tasks, but a convex combination of control laws for each task is proposed in our control scheme. Another kind of approach is the formulation of a consensus problem to solve the formation problem as in [26]. We also formulate the formation control as a consensus problem, but we extend the formulation to formation tracking where the group of robots is guided by a leader. In our case, heading consensus is naturally achieved because the group of nonholonomic robots follows a common trajectory. The main advantage of our approach is that we integrate the obstacle avoidance task using priorities and smooth transitions to avoid a hybrid switching control law, guaranteeing stability of both tasks and continuity of the robot velocities. A third kind of approach is the one based on optimization methods, as the model predictive control in [30]. Unlike that work, our approach relies on consensus using relative information between agents and is not needed to precompute the reference trajectory of each follower from the one of the leader. We provide a formal stability proof for both formation and obstacle avoidance tasks, which is not trivial in an optimization-based formulation. We also use feedback linearization of a control point, which has no singularity issues in comparison to a dynamic extension where the control law becomes singular when the robot has null translational velocity. Besides, the MPC-based approach implicitly has a computational cost to solve a quadratic programming problem in a preview horizon. In the same vein, works as [40], that uses distributed optimization for a split and merge strategy of a formation in dynamic environments, suffer from the computational burden. In that strategy, the robots compute locally optimal parameters for the formation to remain within the convex neighborhood of the robots via sequential convex programming. A low level local planner is used to generate the individual robot motion. With respect to that work, the novelty of our approach is that it directly provides the robot velocities without relying on a high level planning strategy. The control scheme presented in [41] is close to ours, however, that work addresses the rendezvous problem in environments with obstacles unlike the formation tracking that we tackle. Besides that important difference, the referred approach consists of a high level strategy that is executed relying on a low level control law and ours directly provides the robot velocities. Moreover, the novelty of our approach with respect to that method is the guarantee of continuity of the robot velocities, which is not the case of the referred work since sudden changes of orientation might occur in the robot trajectories. We consider the generation of smooth velocities important to improve the accuracy of the position control when the robots are modeled at kinematic level. Due to robot and actuator dynamics, discontinuous velocity commands cannot be exactly realized by a vehicle. Moreover, the transient to converge to the new command may lead to collisions. Sudden fast motions are not convenient in practice since the sensing capabilities of the robots might deteriorate, in our case the distance measurement might introduce noise for sudden motions.
The rest of the paper is structured as follows. Section 2 describes the model of a unicycle-type robot, and some considerations to control it. It also recalls some results on graph theory and the task-function approach. In Section 3, the problem of formation tracking for differential-drive robots with obstacle avoidance is formulated, and the proposed control scheme is detailed. Section 4 presents the performance of the proposed approach through simulations and real experiments. Finally, some concluding remarks and future work ideas are presented in Section 5.

2. Preliminaries

In this section, we will present the model considered for each agent of the network of robots and the basics on graph and consensus theory that are used in the control law’s design.

2.1. Model of the Robots

Let N = { R 1 , R 2 , , R N } be a set of unicycle-type robots, in particular differential-drive robots (DDRs), moving on the x y -plane with pose q i = [ x i , y i , θ i ] T , i { 1 , , N } . The kinematic model for each robot, according to Figure 1, is given by:
x ˙ i y ˙ i θ ˙ i = cos ( θ i ) 0 sin ( θ i ) 0 0 1 v i ω i , i { 1 , , N } ,
where [ x i , y i ] are the coordinates of the position of the center of rotation of the i-th robot, θ i the orientation with respect to the x-axis, v i is the translational velocity and ω i the angular velocity.
We are interested that the team of robots can achieve formation just for position, not orientation. It is known that is not possible to control the robot position p i = [ x i , y i ] T , seen as output vector, using an static feedback linearization [42]. Then, we will consider α i as control point, which is a point out of the wheels axis as in Figure 1. For simplicity, the point α i is chosen shifted by a distance d > 0 along the longitudinal axis passing over point p i of the robot. The distance d is such that the point α i is inside the robot periphery. The coordinates of the point α i are given by
α i = α x i α y i = x i + d cos ( θ i ) y i + d sin ( θ i ) .
The time-derivative of the point α i (2) is as follows
α ˙ x i α ˙ y i = M i ( θ i ) v i ω i ,
where the decoupling matrix M i ( θ i ) is given by
M i ( θ i ) = cos ( θ i ) d sin ( θ i ) sin ( θ i ) d cos ( θ i ) ,
and for each robot R i is not singular, since d e t ( M i ( θ i ) ) = d 0 . Then, the control point coordinates can be driven as desired by the robot velocities and the orientation angle remains as zero-dynamics of the system (1). However, it is known that such dynamics is stable when the control point is driven to a constant position or tracks a time-varying reference [42].

2.2. Graph and Consensus Theory

In this section, we present some notations and preliminaries about graph and consensus theory that is extensively presented, for instance, in [7,9].
In a network of agents, consensus means to reach an agreement on a certain quantity of interest that depends on the state of all agents in the network. In consensus theory, a network of agents is typically modeled as a graph G , which consists of a vertex set V ( G ) and an edge set E ( G ) . An edge is denoted by i j and j i denotes that the vertex i and vertex j are neighbors. The neighbors of vertex i in a graph G is denoted by N i ( G ) = { j : j i E ( G ) } .
The adjacency matrix A = [ a i j ] R N × N of a graph with N vertices is a square matrix with entries a i j corresponding to the weight of the edge i j ; when i is not adjacent to j then a i j = 0 . The Laplacian matrix of G is L ( G ) = Δ A where Δ = d i a g ( d 1 , , d N ) with d i = j = 1 N a i j .
A graph G is connected if there is a path between any two vertices, otherwise it is disconnected. If the graph G is connected, then the Laplacian matrix has an eigenvalue λ 1 ( L ) = 0 with algebraic multiplicity one, associated to the eigenvector 𝟙 N = [ 1 1 ] T , i.e., ker ( L ( G ) ) = { x : x 1 = = x N } . For undirected graphs the Laplacian matrix L is positive semidefinite and symmetric.
In this work, we will consider a multi-agent system (MAS) composed of N differential-drive robots (DDRs) modeled as in the previous section and with an associated graph G modeling the network’s connectivity. Given the expression of the dynamics to be controlled (3), it can be treated as decoupled single-integrator dynamics expressed in general form as
x ˙ i ( t ) = u i , i { 1 , , N } ,
where x i , u i ( t ) R 2 are the state and auxiliary control input of agent i, respectively. The network dynamics for the agents (5) can be written in vector form as
x ˙ ( t ) = u ( t ) ,
with x ( t ) = [ x 1 ( t ) T , , x N ( t ) T ] T R 2 N and u ( t ) = [ u 1 ( t ) T , , u N ( t ) T ] T R 2 N .
According to [7], the consensus error for agent i with respect to its neighbors is defined as
e c i ( t ) = j N i a i j ( x j ( t ) x i ( t ) ) , i { 1 , , N } .
If this error is zero for all the agents, it is accomplished that x i = x j for all i, j E ( G ) , i j . The individual consensus error (7) can be expressed in matrix form as
e c ( t ) = [ e c 1 ( t ) T , , e c N ( t ) T ] T = ( L I 2 ) x ( t ) R 2 N ,
where ⊗ denotes the Kronecker product and I 2 is the identity matrix of size 2.

2.3. Hierarchical Task-Based Control Approach

Let us consider one agent of the form (5) with state q R n and a differential mapping, denoted by X ( q ) R m , between a task space and the state space, which models a task to be performed by the agent. When addressing a regulation problem not a tracking one, it is desired that the task reaches a constant value X d by enforcing the convergence to zero of the error function
e ( q ) = X ( q ) X d R m .
The time-derivative of (9) is given by
e ˙ = J ( q ) q ˙ ,
being J ( q ) R m × n a Jacobian matrix. In (10), q ˙ can be seen as the vector of control inputs, and to find it out, the Moore–Penrose pseudoinverse of the Jacobian matrix can be used as follows
q ˙ = J + ( q ) e ˙ ,
with J + ( q ) = J T ( q ) ( J ( q ) J T ( q ) ) 1 R n × m . The task space control approach is valid if the dimension of the task space is less than or equal to the dimension of the state space of the agent m n [43]. The desired dynamics of the task error function is as follows
e ˙ = λ e ,
with λ > 0 , such that exponential convergence of the task function to its desired value is guaranteed by using the vector of control inputs
q ˙ = λ J + ( q ) e ( q ) .
Since we address the problem that a group of DDRs reaches a desired formation avoiding collisions/obstacles when needed, two tasks must be carried out simultaneously. The hierarchical task-based approach introduced in [33] allows two tasks to be solved as good as possible, in the sense that the solution of the task with higher priority is guaranteed and the solution of the task with lower priority is subject to the former [36,44,45].
The hierarchical task-space approach requires the formulation of some projectors. Following [44], the null space projector of the i-th task, considered the priority task, is computed as
N i = I n J i + ( q ) J i ( q ) R n × n .
As an example, consider two tasks X 1 and X 2 , where X 1 has the highest priority. According [36,44], the total control action is given by
q ˙ = q ˙ 1 + N 1 q ˙ 2 ,
where q ˙ 1 = λ 1 J 1 + ( q ) e 1 ( q ) R n is the input computed individually from X 1 and q ˙ 2 = λ 2 J 2 + ( q ) e 2 ( q ) R n is the input obtained from X 2 .
It is common that initially a system only has to solve one task by using the control inputs vector (13), and in some moment the system requires to solve more than one task. Then, in the case of two tasks the control inputs vector must switch from (13) to (15) and eventually the system returns to solve only the initial task.

3. Problem Formulation and Proposed Solution

Let N be a set of DDRs as described in Section 2.1. Consider that there exists a finite set of obstacles in the environment. The agents themselves can be obstacles for the others or there may be fixed obstacles in the environment.
The problem addressed in this work is to design a control law for each agent u i = γ ( α i , N i ) , i = { 1 , , N } to achieve:
  • Asymptotic tracking of a predefined smooth trajectory m ( t ) by the leader, for instance, considered as the robot R 1
    lim t ( α 1 ( t ) m ( t ) ) = 0 ,
    where α 1 ( t ) is the position of the control point of the leader.
  • Asymptotic convergence to a desired formation by the follower agents, i.e.,
    lim t a i j ( α i ( t ) α j ( t ) ) = Δ i j = c o n s t . , i , j { 1 , , N } , i j ,
    where Δ i j denotes desired constant offsets between agents to make that the desired formation has a fixed-predefined form.
  • Obstacle avoidance between agents and with respect to any fixed object in the environment, always maintaining a safety distance σ , i.e., the condition
    α i α o i > σ
    must be accomplished, where α o i is the position of the nearest obstacle to the i-th agent.
To solve the enunciated problem, the following assumptions are considered:
  • Each robot has omnidirectional capability to measure distance and only the nearest obstacle is considered to avoid it at a time.
  • The obstacles are considered convex since a circumference that must not be trespassed is defined around the nearest point on an obstacle from each robot.
  • The communication topology for the group of robots is considered connected.
  • The robots velocities are available for their neighbors and they are communicated according to the communication topology.
The described problem requires to solve two tasks, the formation tracking and the obstacle avoidance. We will use the hierarchical task-based formulation to guarantee that both tasks are adequately accomplished. Most of the time, the formation tracking task is active, but both task must be solved simultaneously when obstacles are close to an agent. The formulation of each task is presented in the following sections.

3.1. Task of Obstacle Avoidance

Every robot R i must avoid collisions with obstacles (either fixed obstacles or other agents). This task is activated when α i α o i σ , such that the agents must always maintain a safety distance σ to the obstacles and has priority over the formation tracking. To meet this objective, the task x 1 i = ρ ( α i ) is defined as the relative distance from the robot position α i to the position α o of the nearest obstacle as
ρ ( α i ) = α i α o i R .
Given the assumption of sensing capabilities of the robots, the distance ρ ( α i ) can be measured by each robot R i and thus, the global position of the obstacle is not required. Thus, the following error function is defined
e o i = ρ ( α i ) σ R .
The dynamics of the error is given by:
e ˙ o i = J o i ( α i ) α ˙ i ,
where
J o i ( α i ) = ( α i α o i ) T ρ ( α i ) R 1 × 2 .
As desired dynamics for (21) we want to have
e ˙ o i = λ e o i ,
with λ > 0 . Solving for α i , the feedback control law for obstacle avoidance is given by
α ˙ i = λ J o i + ( α i ) e o i ,
where J o i + ( α i ) = J o i T ( α i ) ( J o i ( α i ) J o i T ( α i ) ) 1 .

3.2. Task of Agents’ Formation

The formation control problem is addressed in this work as a consensus problem in order to achieve a distributed and scalable formulation. Consider a set of N DDRs connected through a communication network such that each one exchanges information with a set of neighbors. We will consider dynamics for each DDR as in (3)
α ˙ i = M i ( θ i ) u i ( t ) , i { 1 , , N } .
Agents’ formation can be achieved by consensus of a virtual network [26]. We will specify the desired formation as a set of fixed translation vectors z i R 2 with respect to an arbitrary common reference frame, thus the position α i of the i-th agent is related to the position α v i of the virtual agent by
α v i = α i + z i , R 2 , i { 1 , , N } ,
such that if the virtual agents reach the same value, i.e., α v i * = α v * R 2 , i { 1 , , N } , then the real agents will reach the desired formation given by the vectors z i . Notice that the network of virtual agents has the same Laplacian matrix than the original network and the virtual agent’s dynamics is given by
α ˙ v i = α ˙ i = M i ( θ i ) u i ( t ) .
The consensus error for the virtual agent i with respect to its neighbors is
e v i = j N i ( a i j ( α v j α v i ) ) R 2 ,
and the consensus error vector is
e v = e v 1 T , e v 2 T , , e v N T T = ( L I 2 ) α v R 2 N ,
with α v = [ α v 1 T , α v 2 T , , α v N T ] T . Applying control inputs of the form u i ( t ) = M i 1 ( θ i ) e v i to the systems (25), the virtual agents will reach consensus and consequently the real agents will reach the desired formation specified by the vectors z i .
As consensus can be reached for the virtual agents’ state, such that each virtual agent reaches the position α v * , this allows us to formulate a secondary task x 2 i = α v i in the hierarchical task-based approach to solve the formation control with obstacle avoidance. Thus, the error of the consensus task (29) can be rewritten as
e v = α v ( 𝟙 N α v * ) R 2 N .
Thus, the corresponding time-derivative of the consensus task is given by
e ˙ v = J v ( α v ) α ˙ v ,
where J v ( α v ) = I N J v i ( α v i ) . Since J v i ( α v i ) = I 2 , then the whole Jacobian matrix of the consensus task is J v ( α v ) = I 2 N R 2 N × 2 N . In the sequel, we will not denote the dependence of the Jacobians from α v . In the following sections, we will use this formulation of consensus of virtual agents to propose a formation tracking control law for a group of DDRs.

Formation Tracking Control Law

Let us address the problem where a leader robot R 1 have to track a predefined time-varying trajectory m ( t ) and the followers must follow the leader in formation (equivalently the virtual agents follow the leader in consensus), first assuming that no avoidance actions are required. The following distributed control protocol is proposed to solve this problem:
u 1 = M 1 1 ( θ 1 ) γ ( α 1 m ) + m ˙ k j N 1 a 1 j ( α v 1 α v j ) ,
u i = M i 1 ( θ i ) 1 | N i | j N i a i j α ˙ j k ( α v i α v j ) , i { 2 , , N } ,
where M i 1 ( θ i ) is the inverse of the decoupling matrix associated to each robot, m ˙ is the velocity of the desired trajectory, γ is the tracking control gain and k is the formation control gain.
The vector of position error for the whole MAS, seen as a new task function error, is given by
e r = α v r R 2 N ,
where r = ( m + z 1 ) T , 1 | N 2 | j N 2 a 2 j α v j T , 1 | N 3 | j N 3 a 3 j α v j T , , 1 | N N | j N N a N j α v j T T and z 1 is the relative constant displacement vector assigned to the leader in the formation. The dynamics of the error (34) are given by
e ˙ r = J r α ˙ v r ˙ R 2 N ,
with r ˙ = m ˙ T , 1 | N 2 | j N 2 a 2 j α ˙ v j T , 1 | N 3 | j N 3 a 3 j α ˙ v j T , , 1 | N N | j N N a N j α ˙ v j T T and J r = I 2 N , where for each agent J r i = I 2 .
Since the velocities of the virtual agents depend directly on the control input and the decoupling matrix, we rewrite (35) as
e ˙ r = M ( θ ) u r ˙ ,
with u = [ u 1 T , u 2 T , , u N T ] T and M ( θ ) = d i a g ( M 1 ( θ 1 ) , , M N ( θ N ) ) .
Theorem 1.
Consider an MAS of N unicycle-type robots with position dynamics of the control point as in (3), under a connected communication graph G , and related to the virtual agents’ position according to (26). The leader robot knows a continuously differentiable reference trajectory m ( t ) . Then, for control parameters γ > 0 and k > 0 of the distributed protocol (32) and (33), each component of the error function e r (34) convergences asymptotically to zero. Therefore, the leader’s position converges to the desired trajectory and the followers converge to the specified formation around the leader.
Proof. 
First, we rewrite the control inputs (32) and (33) in terms of the errors as follows
  • For the leader
    u 1 = M 1 1 ( θ 1 ) γ e r 1 + m ˙ k j N 1 a 1 j ( α v 1 α v j ) .
  • For the followers
    u i = M i 1 ( θ i ) 1 | N i | j N i a i j α ˙ v j k e r i i { 2 , , N } .
Then, the control inputs in vector form are given by
u = M 1 ( θ ) K e r + r ˙ d ,
where K = diag ( γ , γ , k , k , k , , k ) R 2 N × 2 N and d = [ k j N 1 a 1 j ( α v 1 α v j ) T , 0 , 0 , , 0 ] T R 2 N .
By introducing the control input (37) in the dynamics of the system errors (36) to get the closed loop dynamics, it is obtained
e ˙ r = K e r d .
By expanding (38) we obtain the error dynamics of the leader and the followers
e ˙ r 1 = γ e r 1 + k j N 1 a 1 j ( α v j α v 1 ) ,
e ˙ r i = k e r i i { 2 , , N } .
On the one hand, the second term of the leader’s error dynamics (39) is the consensus error of the leader with respect to its neighbor followers, i.e., e v 1 of (29). On the other hand, the dynamics of () that represents the consensus errors for the agents { 2 , , N } clearly have asymptotic stability to zero. Then, according (34) and (29), at steady state we have
e r i = e v i = α v i 1 | N i | j N i a i j ( α v j ) = 0 i { 2 , , N } .
Since e v 1 depends on the first row of the Laplacian matrix as given by (29) and that row is linearly dependent on the rest of rows of the matrix, e v i = 0 for i { 2 , , N } implies that e v 1 = 0 . Therefore, the second term of (39) vanishes as the time elapses and also the tracking error e r 1 converges asymptotically to zero. Then the virtual followers achieve consensus, and consequently, the real robots achieve the desired formation defined by the displacement vectors z i according (26), tracking the leader in formation. □
The previous theorem demonstrates the stability of the multi-agent system in closed loop with the control protocol that solves the formation tracking task. In the next section, this result will be integrated into a protocol that also includes the obstacle avoidance task.

3.3. Hierarchical Combination of Formation Tracking and Obstacle Avoidance Tasks

The problem formulated in Section 3 can be addressed by following the task-based approach described in Section 2.3. When an obstacle is detected, an avoidance action must be performed with higher priority over the formation tracking, but taking into account both tasks simultaneously. However, the direct switching between the formation tracking control law ((32) and (33)) and a control law combining both tasks generates discontinuous robot velocities. To alleviate this issue, we propose the use of a smooth transition as presented in [45]. Then, the velocities for each robot that combines the obstacle avoidance task, denoted by subscript o, as primary task, and DDRs formation tracking, denoted by subscript r, as secondary task is given by
u i = M i 1 ( θ i ) ( α ˙ o i + α ˙ r | o i ) , i { 1 , , N } ,
where
α ˙ o i = J o i + e ˙ o i , α ˙ r | o i = ( J r i N o i ) + ( e ˙ r i + r ˙ i J r i J o i + e ˙ o i ) , e ˙ o i = h ( t ) e ˙ o i + ( 1 h ( t ) ) J o i J r i + e ˙ r i ,
with N o i = I 2 J o i + J o i R 2 × 2 , J o i as in (22) and J r i = I 2 as stated below of (35), e ˙ o i as in (23) and e ˙ r i as in (39) and (40). The transition function h ( t ) is a smooth bounded function such that 0 h ( t ) 1 and increases from 0 to 1 (activated) when an obstacle is detected within the safety distance σ . Its value is h ( t ) = 1 while the obstacle is within the safety distance and decreases from 1 to 0 (deactivated) when the obstacle leaves the safety distance. The duration of the transition function is fixed by the user and is the same value for both activation and deactivation. Thus, the use of the transition function yields continuity of the computed robots velocities. In the sequel we will denote h ( t ) = h .
In the following theorem, the stability of the control law for both obstacle avoidance and formation tracking tasks is proven. All the expressions in the theorem are presented in vector form, however, the approach keeps distributed as given by the individual control law (42) for each agent.
Theorem 2.
Consider an MAS of N unicycle-type robots with position dynamics of the control point as in (3), under a connected communication graph G , and related to the virtual agents’ position according to (26). The leader robot knows a continuously differentiable reference trajectory m ( t ) . Then, for control parameters γ > 0 , k > 0 and λ > 0 of the distributed protocol expressed in vector form
u = M 1 ( θ ) ( α ˙ o + α ˙ r | o ) ,
where α ˙ o = J o + e ˙ o , α ˙ r | o = ( J r N o ) + ( e ˙ r + r ˙ J r J o + e ˙ o ) , e ˙ o = h e ˙ o + ( 1 h ) J o J r + e ˙ r , both the formation tracking error e r and the obstacle avoidance error e o convergence to zero asymptotically when both tasks are active, i.e., with 0 < h 1 . The terms of (43) are as follows: e ˙ r given by (38), e ˙ o = λ e o R N , with e o = [ e o 1 , e o 2 , , e o N ] T , ( J r N o ) + = d i a g ( ( J r 1 N o 1 ) + , , ( J r N N o N ) + ) , J o + = d i a g ( J o 1 + , , J o N + ) , N o = d i a g ( N o 1 , , N o N ) , where the individual entries have been defined below (42).
Proof. 
Let us consider the following extended error function
e = e r e o .
Consider a Lyapunov function candidate given by
V = 1 2 e T e ,
whose time-derivative is given by
V ˙ = e T e ˙ .
Using the open-loop dynamics of e ˙ r and e ˙ o for the whole network to compute V ˙ , we have the former given by (35). Expanding the obstacle task error for the N agents, we get
e ˙ o = J o α ˙ = d i a g ( J o 1 , , J o N ) α ˙ ,
where J o R N × n N . Now, we have
V ˙ = e r T e o T J r J o α ˙ v r ˙ 0 .
Considering that α ˙ v = M ( θ ) u according to (27) and introducing the hierarchical task-based control protocol (43), then
V ˙ = e r T e o T Ψ r ˙ 0 ,
where
Ψ = Ψ 1 Ψ 2 = J r ( J o + e ˙ o ) + J r ( ( J r N o ) + ( e ˙ r + r ˙ J r J o + e ˙ o ) ) J o ( J o + e ˙ o ) + J o ( ( J r N o ) + ( e ˙ r + r ˙ J r J o + e ˙ o ) ) .
Expanding the expressions using e ˙ o as in (43), we have
Ψ 1 = J r J o + [ h e ˙ o + ( 1 h ) J o J r + e ˙ r ] + J r ( J r N o ) + { e ˙ r + r ˙ J r J o + [ h e ˙ o + ( 1 h ) J o J r + e ˙ r ] } , Ψ 2 = J o J o + [ h e ˙ o + ( 1 h ) J o J r + e ˙ r ] + J o ( J r N o ) + { e ˙ r + r ˙ J r J o + [ h e ˙ o + ( 1 h ) J o J r + e ˙ r ] } .
Given the known properties J o J o + = I N , J o N o = 0 N × 2 N , N o = N o T , and N o N o = N o , the following holds
J o ( J r N o ) + = J o N o T ( N o N o T ) 1 = J o N o ( N o N o T ) 1 = 0 N × 2 N ,
( J r N o ) + = ( J r N o ) T ( ( J r N o ) ( J r N o ) T ) 1 = N o ( N o N o T ) 1 = I 2 N .
Thus, Ψ 1 and Ψ 2 are simplified as follows
Ψ = Ψ 1 Ψ 2 = e ˙ r + r ˙ ( 1 h ) J o e ˙ r + h e ˙ o .
Introducing the closed-loop dynamics (38) and e ˙ o = λ e o in (53), the time-derivative of the Lyapunov function, is given by
V ˙ = e r T e o T P e r e o d 0 ,
where
P = ( K I 2 ) 0 2 N × N ( 1 h ) J o ( K I 2 ) λ h I N .
The eigenvalues of matrix P depend on the values λ > 0 , 0 < h ( t ) 1 and the matrix K , which is defined as K = diag ( γ , γ , k , k , k , , k ) R 2 N × 2 N , where γ > 0 is the tracking gain and k > 0 is the consensus gain. Therefore, the matrix P is positive definite. As in the case without obstacle avoidance of the Theorem 1, d only affects the dynamics of the tracking error e r 1 and represents the consensus error of the leader with respect to its neighbors. Given the positive definiteness of the matrix P , the rest of the consensus errors e r i , i { 2 , , N } altogether with the evasion error e o have asymptotic stability to zero. As shown below (41), the effect of d vanishes as the time elapses and the tracking error also converges asymptotically to zero. Consequently, the leader tracks the time-varying reference, the virtual followers reach consensus to the leader position (respectively the robots achieve the desired formation around the leader) and the robots perform obstacle avoidance when needed. □
The previous theorem guarantees the stability of the multi-agent system in closed loop with the distributed control protocol that solves both the formation tracking and obstacle avoidance tasks and provides continuity of the computed robot velocities. Since we are modeling the robots at kinematic level, the generation of smooth velocities is important to improve the accuracy of the position control. It is well known that due to robot and actuator dynamics (masses and rotational inertias), velocity commands with discontinuous profile cannot be exactly realized by a vehicle.
From our point of view, the proposed approach has two limitations. (1) Connectivity of the communication model is very important to guarantee convergence of the consensus error; however, connectivity can be easily lost when the robots move in cluttered environments. Although our scheme does not consider an explicit handling of connectivity, the consensus control law favors the maintenance of it. Nevertheless, there are no theoretical guarantees that connectivity is preserved in the current formulation. We consider that the approach can be extended to include an additional task dedicated to contribute in the velocities’ computation to move the group of robots preserving connectivity, such that the control law might be a combination of the solution of three tasks. (2) The proposed approach is considered as a sensor-based reactive navigation method that works properly not only for circular (strongly convex) obstacles but also for unknown convex polygonal obstacles of different forms. Nevertheless, our approach is not able to deal with non-convex obstacles. We consider that the proposed approach offers a good compromise between effectiveness and required information to solve the formation tracking problem in cluttered environments without the need of a high level global planner.

4. Evaluation of the Proposed Scheme

In this section, we present results of implementing the proposed distributed control law, first in the dynamic simulator Gazebo with a group of TurtleBots 3 Burger (Robotis Inc., Lake Forest, CA, USA) and then, with real robots using the Robot Operating System (ROS) in both cases. The simulations are presented for two different cases: a 4-agent system where the predefined trajectory to follow was a quadrifolium curve and a 10-agent system that had to follow a circular predefined trajectory. Results in an environment with unknown polygonal obstacles are also shown.
In the implementation, the distance d to define the control point (2) for all the robots was set to 10 cm. Besides, the transition function is h ( t ) = 1 2 1 cos π ( t t 0 ) ( t f t 0 ) , where t 0 was set to the current time value ( t 0 = t ) at the instant that a DDR crossed the security distance of an obstacle, t f = t 0 + t d with t d the duration of the transition function that was set to 0.8 s for both activation and deactivation. The sampling time in the simulations was set to 25 ms. Since the formation tracking control law requires knowing the velocities of the neighboring robots in the formation, we used estimated values taken from the velocities computed by the control law in one sampling time before the current time. This aspect could be improved as future work by using, for instance, an estimation of the velocities given by an exact differentiator [46] of the robots positions, or a distributed observer as in [47], although in the last case only estimation of the leader’s state would be needed.

4.1. A 4-Agent System

The results to implement the distributed control law (42) for a 4-agent system ( N = 4 ) are presented in this section. We considered the network with undirected communication topology described by the graph of Figure 2a and the desired formation of Figure 2b. We set a i j = 1 for connected agents and initial conditions q x ( 0 ) = 0 , 2 , 3 , 1 T , q y ( 0 ) = 0 , 1.8 , 1 , 0.8 T and q θ ( 0 ) = 0 , 0.6 , 1.14 , 0 T for agents 1 to 4, respectively. The reference trajectory had a duration of τ = 200 s and was given by m ( t ) = 4 [ sin ( 4 π t / τ ) cos 2 π t / τ , sin ( 4 π t / τ ) sin 2 π t / τ ] T . There was a fixed obstacle in the environment, in particular a column in the position α o = 0 , 2 T , and the security distance for it and between robots was set to σ = 0.6 m. The displacement vectors to define the desired formation were z 1 = 1.5 [ cos ( 3 π / 2 ) , sin ( 3 π / 2 ) ] T , z 2 = 1.5 [ cos ( 2 π ) , sin ( 2 π ) ] T , z 3 = 1.5 [ cos ( π / 2 ) , sin ( π / 2 ) ] T and z 4 = 1.5 [ cos ( π ) , sin ( π ) ] T , for agents R 1 to R 4 respectively, with respect to the formation center. The control gains were set to γ = 1 , λ = 0.8 and k = 0.1 for tracking, evasion and consensus, respectively.
The results of the formation tracking with obstacle avoidance for the 4-agent MAS are presented in Figure 3, Figure 4 and Figure 5. A video of this experiment can be seen in the link https://drive.google.com/file/d/1SEDzs_H3UoK7Y2TqMTGHMZ5M3Q16p86q/view (accessed on 24 June 2021). Figure 3 shows snapshots of the motion of the robots in an environment with a fixed obstacle in the form of a column. The images on the left correspond to the initial position of the DDRs in an arbitrary configuration; the images at the center present an intermediate position where one of the DDRs was avoiding the obstacle, and the images on the right show that the desired formation was effectively reached despite that the four agents had to avoid the obstacle in some moment during their motion. This can be appreciated in Figure 4a, where the trajectory followed by each robot and the obstacle position with its security distance are depicted. Since the obstacle was at the center of the environment, the trajectories of the four agents passed close to the obstacle and the robots had to avoid it in different moments. Figure 4b shows the trajectories of the virtual agents (variables α v i ) during the experiment. The initial virtual positions are marked with × and the final positions with a circle, which appears as a single one around coordinates ( 0.3 , 0.5 ) . This demonstrates that consensus of the virtual agents was finally achieved although not all the time these agents moved in consensus due to the transients introduced by the obstacle avoidance task. In Figure 5, it is shown that every robot activated the multitask control (42) at least one time during the experiment and the time interval that such control was active was different for each robot.
Figure 6a shows the evolution in time of the tracking error for the leader R 1 . The leader avoided the obstacle slightly after time 140 s, which was evident in the rapid but continuous change of the tracking error. In other times of the experiment, as around 50 s and 90 s, the effect can be seen of the evasions performed by the followers that affected the tracking error of the reference by the leader; after a transient the tracking error decreased toward zero. The consensus errors of the virtual MAS for coordinates x and y are shown in Figure 6b,c, respectively. Consensus was achieved in both coordinates in around 45 s for the first time, but after that, the agent R 3 performed an evasion motion and the consensus error increased for a while, to asymptotically decrease to zero around 90 s. Thus, this effect appeared always that one of the agents avoided an obstacle, due to the use of local information of the network.
The profiles of the control inputs (robot velocities) of each agent are shown in Figure 7a,b, for the linear and angular velocities, respectively. During the first seconds, some important changes were appreciated in the angular velocities due to the DDRs having to align their orientation to the one imposed by the reference trajectory of the leader. It can be seen that all the velocities were the same when the virtual agents are in consensus (the robots move in formation), for instance around 40 s and 85 s. As expected, the evasion actions yielded changes on the velocities evolution, mainly among the follower agents, for instance, the robot R 3 avoided the fixed obstacle around the time 45 s; it yielded an important change in the velocities of R 2 and R 4 and less for the leader R 1 since the tracking of the reference had a higher weight for the leader’s dynamics ( γ > k ). Notice that the profiles of velocities were continuous all the time thanks to the use of the smooth transition function h ( t ) .

4.2. A 10-Agent System

As a second experiment, we considered a 10-agent system in a network with undirected communication topology described by the graph of Figure 8a, with the leader R 1 as the root. Figure 8b presents the desired formation. We set a i j = 1 for connected agents and initial conditions q x ( 0 ) = 5 , 4 , 6 , 3.5 , 5.5 , 7 , 3 , 4.5 , 6.5 , 7.5 T , q y ( 0 ) = ( 0 ) 𝟙 N and q θ ( 0 ) = ( π / 2 ) 𝟙 N for agents 1 to 10, respectively. The reference trajectory was a circle given by m ( t ) = [ 5 cos ( 2 π t / τ ) , 5 sin ( 2 π t / τ ) ] T , with τ = 180 s. There were five fixed obstacles in the environment, represented as columns with different diameters in the positions α o 1 = 3.5 , 2.5 T , α o 2 = 6 , 2.5 T , both with associated security distance σ 1 = 0.4 , α o 3 = 2 , 2.5 T , α o 4 = 0 , 5.8 T , both with security distance σ 2 = 0.5 and α o 5 = 1 , 5.3 T with σ 3 = 0.6 . The displacement vectors to define the desired formation were z 1 = [ 0 , 1 ] T , z 2 = [ 0.5 , 0.5 ] T , z 3 = [ 0.5 , 0.5 ] T , z 4 = [ 1 , 0 ] T , z 5 = [ 0 , 0 ] T , z 6 = [ 1 , 0 ] T , z 7 = [ 1.5 , 0.5 ] T , z 8 = [ 0.5 , 0.5 ] T , z 9 = [ 0.5 , 0.5 ] T and z 10 = [ 1.5 , 0.5 ] T , for R 1 to R 10 respectively, with respect to the formation center. The control gains were set to γ = 1 , λ = 0.85 and k = 0.35 for tracking, evasion and consensus, respectively.
The results to implement the proposed distributed control law for the 10-agent MAS are presented in Figure 9, Figure 10, Figure 11, Figure 12 and Figure 13. One can see a video of this experiment in the link https://drive.google.com/file/d/1KoZ4JlW9-lwD5kWcmxN5LNCiIsVQxOZ2/view (accessed on 24 June 2021). Some snapshots of this experiment are shown in Figure 9; the group of robots initiated forming a line and they navigated in the specified triangular formation while obstacles were avoided when needed. The trajectories followed by the robots and the obstacle position with its security distance are depicted in Figure 10a, where one can observe several evasion actions of different agents to avoid collisions with the fixed obstacles and between robots. The trajectories of the virtual agents (variables α v i ) for this experiment are presented in Figure 10b. It can be seen that the circular trajectory imposed by the leader was well tracked by the 10 agents except when evasion actions were performed, however, after a transient the group of robots returned to consensus. The final consensus value reached when the leader trajectory ended in 180 s was the point ( 5 , 1 ) marked with a circle.
In the case of the 10-agent system, due to the number of robots and the number of fixed obstacles, many more evasion actions were performed in comparison to the 4-agent experiment. Figure 11 shows the transition function along the simulation time for each robot. All the agents activated the multitask control (42) at least one time during the experiment to avoid collisions with the fixed obstacles whether only one agent had the transition function activated or to avoid other agents whether more than one agent had in high value the transition function. For instance, the leader avoided a fixed obstacle around time 50 s and agents R 4 and R 7 avoided each other around time 22 s.
Figure 12a presents the tracking error for the leader R 1 along the experiment. There was an initial transient since the leader did not initiate over the reference trajectory. In the time intervals from 22 s to 63 s and from 98 s to 165 s, it is clear the effect of the evasion actions performed by the followers that affected the tracking of the reference by the leader, however the tracking error converged to zero after those transients. In the same time intervals could be observed transients due to the evasion actions over the consensus errors of the virtual MAS for coordinates x and y, presented in Figure 12b,c, respectively. Nevertheless, the consensus errors converged asymptotically to zero after the transients due to evasions and they were null at the final position where the leader stopped at time 180 s. Figure 13 shows the linear and angular velocities of all the robots. As expected, in the same time intervals where evasion actions were performed, the velocities had important changes but they returned to be all the same value during the intervals where the whole group moved in the desired formation, as around 80 s and from 170 s to the end. Furthermore, the velocities were continuous all the time since the function h ( t ) defined for each robot generated a smooth transition between the control laws of Theorem 1 and the one of Theorem 2.

4.3. Environments with Unknown Polygonal Obstacles

This section presents results of simulations in a different kind of environment in comparison with the previous sections where circular obstacles were considered. In this case, we had a cluttered environment with large irregular obstacles with polygonal shapes. This result was implemented in MATLAB for a rapid prototyping of onboard sensors, since we simulated a scanning range finder for each robot, which allows the robots the detection of the nearest obstacle. When an obstacle was detected within the security distance σ = 0.25 the obstacle avoidance task was activated. The simulation setup corresponded to five robots and three obstacles of different shapes. The connectivity graph was circular and the desired formation specified by displacement vectors was a pentagon. The robot R 3 was the leader, which had to track a linear trajectory starting and finishing in the coordinates ( 4 , 7 ) and ( 11 , 2 ) , respectively. This reference trajectory of the leader continued by following a sinusoidal cycle to finally reach the coordinate ( 15 , 2 ) . Figure 14 shows the trajectories of the control points of each robot starting from arbitrary positions marked with asterisks. It can be seen that the robots avoided the obstacles in the environment and achieved the desired formation as a pentagon. The reference of the leader is depicted as a dash-dotted line trespassing the pentagonal obstacle. The leader effectively avoided this obstacle and returned to track the reference. Figure 15 shows the continuous velocities of the control points ( α i ) of each robot in the x and y coordinates. The reference trajectory of the leader was designed to start and finish motionless for each part of it. Thus, the linear part of the reference finished in 7 s while the sinusoidal part was performed from 7 to 11 s. After that, the velocities became null and the formation stopped since there was no consensus error among the virtual agents.

4.4. Experiments with Real Robots

In this section, the proposed approach was evaluated in experiments with real robots using a group of three DDRs, integrated by a Pioneer 3DX (used as the leader agent) and two TurtleBots 2 (used as the followers). The gains were set to γ = 0.8 , λ = 0.8 and k = 0.12 for tracking, evasion and consensus, respectively. The desired formation was triangular, specified by the displacement vectors z 1 = [ 0 , 0 ] T , z 2 = 0.7 [ cos ( π / 4 ) , cos ( π / 4 ) ] T and z 3 = 0.7 [ cos ( 3 π / 4 ) , sin ( 3 π / 4 ) ] T , with respect to the leader’s R 1 position. The considered graph was undirected and connected, such that each robot has communication with the other two. Each robot was connected via WiFi to a computer where the velocity commands were computed in a distributed way using ROS. Each agent published its computed velocities and also read the computed controls published by its neighbors at a sampling rate of 0.025 ms. The position of each robot and the obstacles position in the environment were obtained from an Optitrack Motion Capture System.

4.4.1. Linear Trajectory

As a first experiment, the leader performed the tracking of a linear trajectory, which was given by m ( t ) = x , λ x + b T , where x = ( p x 0 p x τ ) ( 1 + cos ( π t / τ ) ) / 2 + p x τ with τ = 30 s, λ = ( p y τ p y 0 ) / ( p x τ p x 0 ) , b = λ p x 0 + p y i and ( p x 0 , p y 0 ) , ( p x τ , p y τ ) were the initial and final coordinates of the trajectory, respectively. Besides, a fixed obstacle was at the position α o = 0.91 , 0.12 T with security distance σ = 0.4 .
The results of this experiment are presented in Figure 16, Figure 17 and Figure 18 and the corresponding video can be seen in the link https://drive.google.com/file/d/1RVNe52Gh6gmc2AtGyeuERfKY54dixHz-/view (accessed on 24 June 2021). Figure 16 shows some snapshots of the video with the initial configuration at the top left and the final formation at the bottom right. Some intermediate positions are presented where one of the DDRs was avoiding the obstacle and also caused the others to move. This was clear in the trajectories of the robots as given by the motion capture system that can be observed in Figure 17a. The position of the obstacle is also shown with its security distance depicted as a red circle. Figure 17b shows the trajectories of the virtual agents computed from the position of the robots and the displacement vectors z i . One can observe that the robots moved in formation until R 3 had to avoid the obstacle, which generated a reaction over the motion of R 2 and a small effect on the leader R 1 . At time 30 s, the virtual agents reached consensus close to the coordinate ( 1.1 , 2 ) , which was the final point of the reference of the leader.
The evolution of the tracking errors for the leader R 1 with respect to time is shown in Figure 18a. One can observe an initial transient and a maximum error slightly after the middle of the time, which was expected given the form of the reference trajectory with maximum velocity in the middle of the trajectory. After that middle point, the errors in both coordinates were reduced to reach low final values. The effect of the obstacle avoidance performed by R 3 could be appreciated around time 18 s with a smooth change in the x-coordinate of the tracking error. Figure 18b,c show the profiles of the computed robot velocities (linear and angular, respectively) for each agent. An initial transient was appreciated during the first 5 s and after that, the velocities evolved very close each other until the robot R 3 performed an evasion around time 18 s. This action yielded a larger change in the velocities of R 3 than for R 2 and had a low effect in the leader’s velocities. The use of the transition function h ( t ) allowed the proposed scheme to compute continuous velocities along the experiment.

4.4.2. Circular Trajectory

As a second experiment, we considered a circular trajectory, which was parameterized as m ( t ) = 1.1 cos ( 2 π t / τ ) , sin ( 2 π t / τ ) T , with τ = 70 s, such that the radius of the circle was 1.1 m and the trajectory started at the coordinate (1.1,0) and returns to the same point in τ s. Besides, a fixed obstacle was at the position α o = 0.6 , 2.0 T , with security distance σ = 0.55 .
Figure 19, Figure 20 and Figure 21 present the results of this experiment and the corresponding video can be seen in the link https://drive.google.com/file/d/1bJZBO7dByTipDryC0XqHJurHE4f-d_i1/view?usp=sharing (accessed on 24 June 2021). Some snapshots of the video are presented in Figure 19. The initial configuration of the MAS is the image at the top left and the final formation is at the bottom right. Some intermediate positions are presented; in particular we show the evasion of the fixed obstacle, which causes a deviation of the three robots to later recover the trajectory. Figure 20a depicts the trajectories of the robots and shows how the robot R 2 performed the evasion when it overstepped the security region. The effect of the obstacle avoidance is also observed in Figure 20b, where the trajectories of the virtual agents are shown. They moved in consensus until the robot R 2 deviated to evade the obstacle. In this case, the deviation of the evading robot was more significant than in the previous experiment and then the three robots deviated in a similar way. At the end of the trajectory, at 70 s, the virtual agents returned to consensus close to the the final point ( 1.1 , 0 ) of the leader’s reference.
Figure 21a shows the evolution of the tracking errors for the leader R 1 with respect to time. After the initial transient, the errors remained at low values and they had a second transient due to the effect of the obstacle avoidance around time 53 s. Both coordinates were affected in this case, but at the end the errors converged asymptotically to zero as proven in Theorem 2. The consensus errors of the virtual MAS for coordinates x and y are shown in Figure 21b,c, respectively. The consensus errors were also maintained at low values and they increased around time 53 s due to the evasion task initiated by robot R 3 . The avoidance task finished around time 65 s and then the consensus errors converged to reach a low value that allowed the MAS to return to the desired formation. Since the robot velocities depended on the errors shown in these figures, the proposed scheme provided continuous velocities along the experiment thanks to the smooth switching of control laws.

5. Conclusions and Discussion

In this paper, we have proposed a distributed control scheme to solve the problem of position formation of a group of differential-drive robots while tracking a predefined trajectory guided by a leader, all moving in an environment with obstacles. The obstacles can be the agents themselves or fixed objects in the environment. The proposed scheme is valid for connected communication topologies. A hierarchical task-based scheme has been introduced for the formation tracking problem with obstacle avoidance. Thus, whether a robot is close to an obstacle at a given distance, the task with higher priority is devoted to avoid the obstacle and the task with lower priority is the formation tracking, and whether no robots are near to the obstacles only the formation tracking control is executed.
We have formulated an adequate task function for the formation tracking and has been combined to solve both tasks simultaneously when needed, guaranteeing continuity of the velocities computed by the control law, independently of the activation/deactivation of the obstacle avoidance task. The proposed control scheme only needs relative information between neighboring agents and local measurements to avoid obstacles, in such a way that neither a global coordinate system nor a map of the environment are required. The convergence of the proposed control scheme to the formation tracking in spite of the execution of evasion actions is proven theoretically and its effectiveness is validated through realistic simulations and experiments using real robots.
As future work, we want to extend the proposed hierarchical scheme to include more tasks, for instance connectivity maintenance (focused on preserve the initial connected graph or guarantee the maintenance of a connected graph regardless of changes in the communication topology), consider more than one leader and different formations in sub-groups, as well as the implementation of the approach for long-distance navigation experiments in more general environments with complex obstacles. To do so, we will focus on developing experimental work relying only on local measurements using onboard sensing, such as laser range finders or depth cameras mounted on the robots, instead of a global positioning system.

Author Contributions

Conceptualization, H.M.B.; methodology, H.M.B. and J.B.M.; software, J.B.M.; validation, H.M.B. and J.B.M.; formal analysis, H.M.B., J.B.M. and D.G.-G.; investigation, H.M.B. and D.G.-G.; resources, H.M.B.; writing—original draft preparation, H.M.B., J.B.M. and D.G.-G.; visualization, H.M.B. and J.B.M.; supervision, H.M.B.; funding acquisition, H.M.B. and D.G.-G. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded in part by Intel Corporation.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

The authors would like to thank Eng. Antonio Sanchez Medel for his technical support in the realization of the experiments reported in this work.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Fan, F.; Wu, G.; Wang, M.; Cao, Q.; Yang, S. Multi-Robot Cyber Physical System for Sensing Environmental Variables of Transmission Line. Sensors 2018, 18, 3146. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  2. Queralta, J.P.; Taipalmaa, J.; Can Pullinen, B.; Sarker, V.K.; Nguyen Gia, T.; Tenhunen, H.; Gabbouj, M.; Raitoharju, J.; Westerlund, T. Collaborative Multi-Robot Search and Rescue: Planning, Coordination, Perception, and Active Vision. IEEE Access 2020, 8, 191617–191643. [Google Scholar] [CrossRef]
  3. Davoodi, M.; Velni, J.M.; Li, C. Coverage Control with Multiple Ground Robots for Precision Agriculture. Mech. Eng. 2018, 140, 4–8. [Google Scholar] [CrossRef] [Green Version]
  4. Recker, T.; Heinrich, M.; Raatz, A. A Comparison of Different Approaches for Formation Control of Nonholonomic Mobile Robots regarding Object Transport. Procedia CIRP 2021, 96, 248–253. [Google Scholar] [CrossRef]
  5. Ailon, A.; Zohar, I. Control Strategies for Driving a Group of Nonholonomic Kinematic Mobile Robots in Formation Along a Time-Parameterized Path. IEEE ASME Trans. Mechatron. 2012, 17, 326–336. [Google Scholar] [CrossRef]
  6. Ghommam, J.; Mehrjerdi, H.; Saad, M.; Mnif, F. Formation path following control of unicycle-type mobile robots. Robot. Auton. Syst. 2010, 58, 727–736. [Google Scholar] [CrossRef]
  7. Olfati-Saber, R.; Murray, R.M. Consensus problems in networks of agents with switching topology and time-delays. IEEE Trans. Autom. Control. 2004, 49, 1520–1533. [Google Scholar] [CrossRef] [Green Version]
  8. Olfati-Saber, R.; Fax, J.A.; Murray, R.M. Consensus and cooperation in networked multi-agent systems. Proc. IEEE 2007, 95, 215–233. [Google Scholar] [CrossRef] [Green Version]
  9. Ren, W.; Beard, R.W. Distributed Consensus in Multi-Vehicle Cooperative Control; Springer: Berlin/Heidelberg, Germany, 2008. [Google Scholar]
  10. Oh, K.K.; Park, M.C.; Ahn, H.S. A survey of multi-agent formation control. Automatica 2015, 53, 424–440. [Google Scholar] [CrossRef]
  11. Montijano, E.; Cristofalo, E.; Schwager, M.; Sagues, C. Distributed Formation Control of Nnon-Holonomic Robots without a Global Reference Frame. In Proceedings of the 2016 IEEE International Conference on Robotics and Automation (ICRA), Stockholm, Sweden, 16–21 May 2016; pp. 5248–5254. [Google Scholar]
  12. Roza, A.; Maggiore, M.; Scardovi, L. A Smooth Distributed Feedback for Formation Control of Unicycles. IEEE Trans. Autom. Control 2019, 64, 4998–5011. [Google Scholar] [CrossRef]
  13. Sun, Z.; de Marina, H.G.; Seyboth, G.S.; Anderson, B.D.O.; Yu, C. Circular Formation Control of Multiple Unicycle-Type Agents With Nonidentical Constant Speeds. IEEE Trans. Control Syst. Technol. 2019, 27, 192–205. [Google Scholar] [CrossRef]
  14. Ren, W.; Sorensen, N. Distributed coordination architecture for multi-robot formation control. Robot. Auton. Syst. 2008, 56, 324–333. [Google Scholar] [CrossRef]
  15. Ren, W. Multi-vehicle consensus with a time-varying reference state. Syst. Control Lett. 2007, 56, 474–483. [Google Scholar] [CrossRef]
  16. Kwon, J.; Chwa, D. Hierarchical Formation Control Based on a Vector Field Method for Wheeled Mobile Robots. IEEE Trans. Robot. 2012, 28, 1335–1345. [Google Scholar] [CrossRef]
  17. Chu, X.; Peng, Z.; Wen, G.; Rahmani, A. Decentralised consensus-based formation tracking of multiple differential drive robots. Int. J. Control 2017, 90, 2461–2470. [Google Scholar] [CrossRef]
  18. Liu, T.; Jiang, Z.P. Distributed formation control of nonholonomic mobile robots without global position measurements. Automatica 2013, 49, 592–600. [Google Scholar] [CrossRef]
  19. Peng, X.; Sun, Z.; Guo, K.; Geng, Z. Mobile Formation Coordination and Tracking Control for Multiple Nonholonomic Vehicles. IEEE ASME Trans. Mechatron. 2020, 25, 1231–1242. [Google Scholar] [CrossRef] [Green Version]
  20. Saradagi, A.; Muralidharan, V.; Krishnan, V.; Menta, S.; Mahindrakar, A.D. Formation Control and Trajectory Tracking of Nonholonomic Mobile Robots. IEEE Trans. Control Syst. Technol. 2018, 26, 2250–2258. [Google Scholar] [CrossRef]
  21. Yan, L.; Ma, B. Practical Formation Tracking Control of Multiple Unicycle Robots. IEEE Access 2019, 7, 113417–113426. [Google Scholar] [CrossRef]
  22. Ning, B.; Han, Q.L.; Lu, Q. Fixed-Time Leader-Following Consensus for Multiple Wheeled Mobile Robots. IEEE Trans. Cybern. 2020, 50, 4381–4392. [Google Scholar] [CrossRef]
  23. González-Sierra, J.; Aranda-Bricaire, E.; Rodríguez-Cortés, H.; Santiaguillo-Salinas, J. Formation tracking for a group of differential-drive mobile robots using an attitude observer. Int. J. Control 2021, 94, 89–102. [Google Scholar] [CrossRef]
  24. Listmann, K.D.; Masalawala, M.V.; Adamy, J. Consensus for Formation Control of Nonholonomic Mobile Robots. In Proceedings of the 2009 IEEE International Conference on Robotics and Automation, Kobe, Japan, 12–17 May 2009; pp. 3886–3891. [Google Scholar]
  25. Poonawala, H.A.; Satici, A.C.; Eckert, H.; Spong, M.W. Collision-Free Formation Control with Decentralized Connectivity Preservation for Nonholonomic-Wheeled Mobile Robots. IEEE Trans. Control Netw. Syst. 2015, 2, 122–130. [Google Scholar] [CrossRef]
  26. Jin, J.; Gans, N. Collision-free formation and heading consensus of nonholonomic robots as a pose regulation problem. Robot. Auton. Syst. 2017, 95, 25–36. [Google Scholar] [CrossRef]
  27. Dang, A.D.; La, H.M.; Nguyen, T.; Horn, J. Formation control for autonomous robots with collision and obstacle avoidance using a rotational and repulsive force–based approach. Int. J. Adv. Robot. Syst. 2019, 16, 1729881419847897. [Google Scholar] [CrossRef]
  28. Yu, H.; Shi, P.; Lim, C.C.; Wang, D. Formation control for multi-robot systems with collision avoidance. Int. J. Control 2019, 92, 2223–2234. [Google Scholar] [CrossRef]
  29. Dai, S.; He, S.; Chen, X.; Jin, X. Adaptive Leader–Follower Formation Control of Nonholonomic Mobile Robots With Prescribed Transient and Steady-State Performance. IEEE Trans. Ind. Inform. 2020, 16, 3662–3671. [Google Scholar] [CrossRef]
  30. Kamel, M.A.; Zhang, Y. Decentralized Leader-Follower Formation Control with Obstacle Avoidance of Multiple Unicycle Mobile Robots. In Proceedings of the 2015 IEEE 28th Canadian Conference on Electrical and Computer Engineering (CCECE), Halifax, NS, Canada, 3–6 May 2015; pp. 406–411. [Google Scholar]
  31. Wang, Z.; Wang, L.; Zhang, H.; Chen, Q.; Liu, J. Distributed regular polygon formation control and obstacle avoidance for non-holonomic wheeled mobile robots with directed communication topology. IET Control Theory Appl. 2020, 14, 1113–1122. [Google Scholar] [CrossRef]
  32. Wang, Y.; Wang, D.; Zhu, S. Formation tracking of multi-vehicle systems in unknown environments using a multi-region control scheme. Int. J. Control 2017, 90, 2760–2771. [Google Scholar] [CrossRef]
  33. Samson, C.; Borgne, M.L.; Espiau, B. Robot Control: The Task Function Approach, 1st ed.; Oxford Engineering Science Series; Oxford University Press: New York, NY, USA, 1991; Volume 22. [Google Scholar]
  34. Obregon-Flores, J.; Arechavaleta, G.; Becerra, H.M.; Morales-Diaz, A. Predefined-Time Robust Hierarchical Inverse Dynamics on Torque-Controlled Redundant Manipulators. IEEE Trans. Robot. 2021, 37, 962–978. [Google Scholar] [CrossRef]
  35. Rosales, C.; Leica, P.; Sarcinelli-Filho, M.; Carelli, R. 3D Formation Control of Autonomous Vehicles Based on Null-Space. J. Intell. Robot. Syst. 2016, 84, 453–467. [Google Scholar] [CrossRef]
  36. Antonelli, G.; Arrichiello, F.; Chiaverini, S. Experiments of Formation Control With Multirobot Systems Using the Null-Space-Based Behavioral Control. IEEE Trans. Control Syst. Technol. 2009, 17, 1173–1182. [Google Scholar] [CrossRef]
  37. Arechavaleta, G.; Morales-Díaz, A.; Pérez Villeda, H.; Castelán, M. Hierarchical Task-Based Control of Multirobot Systems with Terminal Attractors. IEEE Trans. Control Syst. Technol. 2017, 25, 334–341. [Google Scholar] [CrossRef]
  38. Acosta, J.F.; González de Rivera, G.; Andaluz, V.H.; Garrido, J. Multirobot Heterogeneous Control Considering Secondary Objectives. Sensors 2019, 19, 4367. [Google Scholar] [CrossRef] [Green Version]
  39. Trujillo, M.A.; Becerra, H.M.; Gómez-Gutiérrez, D.; Ruiz-León, J.; Ramírez-Treviño, A. Priority task-based formation control and obstacle avoidance of holonomic agents with continuous control inputs. IFAC-PapersOnLine 2018, 51, 216–222. [Google Scholar] [CrossRef]
  40. Zhu, H.; Juhl, J.; Ferranti, L.; Alonso-Mora, J. Distributed Multi-Robot Formation Splitting and Merging in Dynamic Environments. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 9080–9086. [Google Scholar]
  41. Kim, J. Distributed Rendezvous of Heterogeneous Robots with Motion-Based Power Level Estimation. J. Intell. Robot. Syst. 2020, 100, 1417–1427. [Google Scholar] [CrossRef]
  42. Becerra, H.M.; Colunga, J.A.; Romero, J.G. Simultaneous convergence of position and orientation of wheeled mobile robots using trajectory planning and robust controllers. Int. J. Adv. Robot. Syst. 2018, 15. [Google Scholar] [CrossRef] [Green Version]
  43. Siciliano, B. Kinematic control of redundant robot manipulators: A tutorial. J. Intell. Robot. Syst. 1990, 3, 201–212. [Google Scholar] [CrossRef]
  44. Antonelli, G.; Arrichiello, F.; Chiaverini, S. The null-space-based behavioral control for autonomous robotic systems. Intell. Serv. Robot. 2008, 1, 27–39. [Google Scholar] [CrossRef]
  45. Lee, J.; Mansard, N.; Park, J. Intermediate Desired Value Approach for Task Transition of Robots in Kinematic Control. IEEE Trans. Robot. 2012, 28, 1260–1277. [Google Scholar] [CrossRef]
  46. Aldana-López, R.; Gómez-Gutiérrez, D.; Trujillo, M.A.; Navarro-Gutiérrez, M.; Becerra, H.M. A predefined-time first-order exact differentiator based on time-varying gains. Int. J. Robust Nonlinear Control 2021, 31, 5510–5522. [Google Scholar] [CrossRef]
  47. Miao, Z.; Liu, Y.H.; Wang, Y.; Yi, G.; Fierro, R. Distributed Estimation and Control for Leader-Following Formations of Nonholonomic Mobile Robots. IEEE Trans. Autom. Sci. Eng. 2018, 15, 1946–1954. [Google Scholar] [CrossRef]
Figure 1. Scheme of a differential-drive mobile robot and definition of the control point α .
Figure 1. Scheme of a differential-drive mobile robot and definition of the control point α .
Sensors 21 04374 g001
Figure 2. The 4-agent system. (a) Connected graph used in the simulations. (b) Specified formation in the dynamic simulator Gazebo.
Figure 2. The 4-agent system. (a) Connected graph used in the simulations. (b) Specified formation in the dynamic simulator Gazebo.
Sensors 21 04374 g002
Figure 3. The 4-agent system. Snapshots of the DDRs motion in the simulation. (a) Initial position. (b) Intermediate position. (c) Final position. (d) Upper view of initial position. (e) Upper view of intermediate position. (f) Upper view of final position.
Figure 3. The 4-agent system. Snapshots of the DDRs motion in the simulation. (a) Initial position. (b) Intermediate position. (c) Final position. (d) Upper view of initial position. (e) Upper view of intermediate position. (f) Upper view of final position.
Sensors 21 04374 g003
Figure 4. The 4-agent system. Trajectories of the DDRs. (a) Trajectories of the real agents. (b). Trajectories of the virtual agents.
Figure 4. The 4-agent system. Trajectories of the DDRs. (a) Trajectories of the real agents. (b). Trajectories of the virtual agents.
Sensors 21 04374 g004
Figure 5. The 4-agent system. Task transition functions for each agent.
Figure 5. The 4-agent system. Task transition functions for each agent.
Sensors 21 04374 g005
Figure 6. The 4-agent system. Error functions of the formation tracking. (a) Tracking errors of the leader. (b) Consensus errors in the x-axis. (c) Consensus errors in the y-axis.
Figure 6. The 4-agent system. Error functions of the formation tracking. (a) Tracking errors of the leader. (b) Consensus errors in the x-axis. (c) Consensus errors in the y-axis.
Sensors 21 04374 g006
Figure 7. The 4-agent system. Control inputs (velocities) of the DDRs. (a) Linear velocities. (b) Angular velocities.
Figure 7. The 4-agent system. Control inputs (velocities) of the DDRs. (a) Linear velocities. (b) Angular velocities.
Sensors 21 04374 g007
Figure 8. The 10-agent system. (a) Connected graph used in the simulations. (b) Specified formation in the dynamic simulator Gazebo.
Figure 8. The 10-agent system. (a) Connected graph used in the simulations. (b) Specified formation in the dynamic simulator Gazebo.
Sensors 21 04374 g008
Figure 9. The 10-agent system. Snapshots of the DDRs motion in the simulation. (a) Initial position. (b) Intermediate position. (c) Final position. (d) Upper view of initial position. (e) Upper view of intermediate position. (f) Upper view of final position.
Figure 9. The 10-agent system. Snapshots of the DDRs motion in the simulation. (a) Initial position. (b) Intermediate position. (c) Final position. (d) Upper view of initial position. (e) Upper view of intermediate position. (f) Upper view of final position.
Sensors 21 04374 g009
Figure 10. The 10-agent system. Trajectories of the DDRs. (a) Trajectories of real agents. (b) Trajectories of virtual agents.
Figure 10. The 10-agent system. Trajectories of the DDRs. (a) Trajectories of real agents. (b) Trajectories of virtual agents.
Sensors 21 04374 g010
Figure 11. The 10-agent system. Task transition function activation.
Figure 11. The 10-agent system. Task transition function activation.
Sensors 21 04374 g011
Figure 12. The 10-agent system. Error functions of the formation tracking. (a) Tracking errors of the leader. (b) Consensus errors in the x-axis. (c) Consensus errors in the y-axis.
Figure 12. The 10-agent system. Error functions of the formation tracking. (a) Tracking errors of the leader. (b) Consensus errors in the x-axis. (c) Consensus errors in the y-axis.
Sensors 21 04374 g012aSensors 21 04374 g012b
Figure 13. The 10-agent system. Control inputs (velocities) of the DDRs. (a) Linear velocities. (b) Angular velocities.
Figure 13. The 10-agent system. Control inputs (velocities) of the DDRs. (a) Linear velocities. (b) Angular velocities.
Sensors 21 04374 g013
Figure 14. Environment with polygonal obstacles. Trajectories of five robots dealing with irregular unknown obstacles.
Figure 14. Environment with polygonal obstacles. Trajectories of five robots dealing with irregular unknown obstacles.
Sensors 21 04374 g014
Figure 15. Environment with polygonal obstacles. Velocities of the control points of each robot.
Figure 15. Environment with polygonal obstacles. Velocities of the control points of each robot.
Sensors 21 04374 g015
Figure 16. Three-agent system linear trajectory. Snapshots of the robots motion in the experiment. The initial configuration is at the top left and the final formation is at the bottom right. Intermediate positions when an obstacle is avoided are shown.
Figure 16. Three-agent system linear trajectory. Snapshots of the robots motion in the experiment. The initial configuration is at the top left and the final formation is at the bottom right. Intermediate positions when an obstacle is avoided are shown.
Sensors 21 04374 g016
Figure 17. Three-agent system linear trajectory. (a) Trajectories of real agents. (b) Trajectories of virtual agents.
Figure 17. Three-agent system linear trajectory. (a) Trajectories of real agents. (b) Trajectories of virtual agents.
Sensors 21 04374 g017
Figure 18. Three-agent system linear trajectory. (a) Tracking errors of the leader. (b) Linear velocities. (c) Angular velocities.
Figure 18. Three-agent system linear trajectory. (a) Tracking errors of the leader. (b) Linear velocities. (c) Angular velocities.
Sensors 21 04374 g018
Figure 19. Three-agent system circular trajectory. Snapshots of the robots motion in the experiment. The initial configuration is at the top left and the final formation is at the bottom right. Intermediate positions when an obstacle is avoided are shown.
Figure 19. Three-agent system circular trajectory. Snapshots of the robots motion in the experiment. The initial configuration is at the top left and the final formation is at the bottom right. Intermediate positions when an obstacle is avoided are shown.
Sensors 21 04374 g019
Figure 20. Three-agent system circular trajectory. (a) Trajectories of real agents. (b) Trajectories of virtual agents.
Figure 20. Three-agent system circular trajectory. (a) Trajectories of real agents. (b) Trajectories of virtual agents.
Sensors 21 04374 g020
Figure 21. Three-agent system circular trajectory. Error functions of the formation tracking. (a) Tracking errors of the leader. (b) Consensus errors in the x-axis. (c) Consensus errors in the y-axis.
Figure 21. Three-agent system circular trajectory. Error functions of the formation tracking. (a) Tracking errors of the leader. (b) Consensus errors in the x-axis. (c) Consensus errors in the y-axis.
Sensors 21 04374 g021
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Martinez, J.B.; Becerra, H.M.; Gomez-Gutierrez, D. Formation Tracking Control and Obstacle Avoidance of Unicycle-Type Robots Guaranteeing Continuous Velocities. Sensors 2021, 21, 4374. https://doi.org/10.3390/s21134374

AMA Style

Martinez JB, Becerra HM, Gomez-Gutierrez D. Formation Tracking Control and Obstacle Avoidance of Unicycle-Type Robots Guaranteeing Continuous Velocities. Sensors. 2021; 21(13):4374. https://doi.org/10.3390/s21134374

Chicago/Turabian Style

Martinez, Jose Bernardo, Hector M. Becerra, and David Gomez-Gutierrez. 2021. "Formation Tracking Control and Obstacle Avoidance of Unicycle-Type Robots Guaranteeing Continuous Velocities" Sensors 21, no. 13: 4374. https://doi.org/10.3390/s21134374

APA Style

Martinez, J. B., Becerra, H. M., & Gomez-Gutierrez, D. (2021). Formation Tracking Control and Obstacle Avoidance of Unicycle-Type Robots Guaranteeing Continuous Velocities. Sensors, 21(13), 4374. https://doi.org/10.3390/s21134374

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